Hello,
I have created a custom rootfs based on Ubuntu 20.04.4 and Jetpack 34.1.1.
Everything seems to be working except the access to the QSPI. The initrd created from the rootfs can see the QSPI and flash it, but the booted OS is not able to interact with it.
An excerpt of the bootlog:
[ 11.968028] qspi_mtd spi6.0: s25fs256s SSG 8 0 1000 2000000
[ 11.968038] qspi_mtd spi6.0: s25fs256s (32768 Kbytes)
[ 11.968046] qspi_mtd spi6.0: mtd .name = spi6.0, .size = 0x2000000 (32MiB) .erasesize = 0x00010000 (64KiB) .numeraseregions = 0
[ 12.110866] 1 fixed-partitions partitions found on MTD device spi6.0
[ 12.110931] Creating 1 MTD partitions on "spi6.0":
[ 12.110940] 0x000000000000-0x000002000000 : "Whole_flash0"
Changed /opt/nvidia/l4t-bootloader-config/nv-l4t-bootloader-config.sh to output the “info” line:
3668-100---1--jetson-xavier-nx-devkit-
Got update payload: /opt/ota_package/bl_update_payload
Fail to open metadata file
Init SMD partition failed!
Tegra User Block Device: /dev/disk/by-partlabel
Tegra Boot Block Device: /dev/mtdblock0
Get SPI boot device size failed
Publish Block Device Failed
/usr/sbin/nv_bootloader_payload_updater --print-ver failed.
Error. Cannot get valid version information
Exiting ...
nv_update_engine --disable-ab
Nvidia A/B-Redundancy Update tool Version 2.0
Fail to open metadata file
Init SMD partition failed!
Fail to open metadata file
Init SMD partition failed!
disabling A/B redundancy
Unable to find kernel cmdline paramater boot.slot_suffix=
Error: Disable A/B redundancy failed!
/etc/nv_boot_control.conf
TNSPEC 3668-200-0000-H.0-1-2-jetson-xavier-nx-devkit-external
COMPATIBLE_SPEC 3668-100---1--jetson-xavier-nx-devkit-
TEGRA_CHIPID 0x19
TEGRA_OTA_BOOT_DEVICE /dev/mtdblock0
TEGRA_OTA_GPT_DEVICE /dev/mtdblock0
On a system where it works the kernel commandline is:
console=ttyTCU0,115200 video=tegrafb earlycon=tegra_comb_uart,mmio32,0x0c168000 gpt rootfs.slot_suffix= usbcore.old_scheme_first=1 tegraid=19.1.2.0.0 maxcpus=6 boot.slot_suffix=_b boot.ratchetvalues=0.4.2 vpr_resize sdhci_tegra.en_boot_part_access=1 quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyTCU0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0
While it is like this on my system:
root=PARTUUID=496176e5-1f8b-43e6-bd37-2271bda3979f rw rootwait rootfstype=ext4 console=ttyTCU0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0
That looks a bit wrong to me?
/dev/mtdblock0 is missing, while /dev/mtd0 exists
I have also tried using the Sample Rootfs, applying binaries. But the result is the same. No /dev/mtdblock0
What could be the issue?