alliedvision / linux_nvidia_jetson

Allied Vision CSI-2 camera driver for NVIDIA Jetson Systems.
103 stars 41 forks source link

Does this kernel see the qspi_mtd /dev/mtdblockX ? #36

Closed amarburg closed 2 years ago

amarburg commented 2 years ago

Hello,

I have a fork of this kernel which I am using on the AntMicro Nano baseboard. I have a particular hardware issue and I am hoping others working with this kernel (with the base Nano dev board?) might be able to confirm a particular functionality..

With the "default" 32.5.1 kernel installed by the SDK manager, Linux is able to initialize the qspi NOR flash, and it appears as /dev/mtdblock0

[    1.627226] qspi_mtd spi6.0: s25fs256s SSG 8 0 1000 2000000
[    1.627235] qspi_mtd spi6.0: s25fs256s (32768 Kbytes)
[    1.627245] qspi_mtd spi6.0: mtd .name = spi6.0, .size = 0x2000000 (32MiB) .erasesize = 0x00010000 (64KiB) .numeraseregions = 0
[    1.627462] 1 ofpart partitions found on MTD device spi6.0
[    1.627467] Creating 1 MTD partitions on "spi6.0":
[    1.627491] 0x000000000000-0x000002000000 : "Whole_flash0"

In my fork, as well as kernels built with the l4t-32.5.1 branch of this repo, the QSPI isn't initialized when running on my board:

[    2.751404] qspi_mtd spi6.0: unrecognized JEDEC id 000000

So the different could be in my hardware, although it works with the stock 32.5.1 kernel; or in my DTB?

I'm hoping someone can confirm that this kernel does see the qspi flash on their board (e.g. the Nano dev board)

amarburg commented 2 years ago

For what it's worth, I traced this to the following entry in by dtb:

gpio@2200000 {

    vsync-cam2-2 {
         gpio-hog;
        output-low;
        gpios = <CAM2_2_VSYNC 0>;
        label = "vsync-cam2-2";
        status = "okay";
    };
};

Why? No clue.