What Linux supports native MTD for QSPI Flashing?

Xavier NX failed to boot after a QSPI
required upgrade for Jetpack 5. Following the prior posts on this topic, I was able to use the UART interface to display the boot messages; the boot was hanging on the QSPI due to a “slot not found”. Again, per the prior posts, I was able to interface the NX to a Linux RaspberryPi and use the “lsusb” to affirm that NX was visible. However, the Linux on the RaspberryPi did not have MTD enabled in the kernel so the flashing was not possible. My question is what version of Linux should be used on the host PC that has native MTD enabled in the kernel “out-of-the-box”?

Hi rayk,

Are you using AGX Xavier or Xavier NX?
The devkit or custom board?

What’s the Jetpack version in use?

Please share the full serial console log for further check.

Should be Linux kernel 4.x. (i.e. Ubuntu 18.04 of later release)

FYI, this is the AGX Xavier forum, not quite correct for Xavier NX. Within the Xavier NX line of products, if you have a developer’s kit (no eMMC), then the answers you are looking for will be quite different than if this is a commercial module on a third party carrier board (which will have eMMC).

Also, the RPi will work for watching logs and serial console without any problem, but if you are trying to actually flash QSPI from this, then it will fail (the flash software has a desktop PC architecture).

Thanks for the reply; I didn’t see that this was the AGX forum. WRT to the flashing software architecture, do you mean that it is x86 not ARM, thus needing an x86 Linux system?

It’s okay, I’ve moved your topic to correct category for Xavier NX.

Correct, you have to get a x86-64 Ubuntu host PC to flash Xavier NX.

Jetsons are arm64/aarch64, but in recovery mode the Jetson itself becomes a custom USB device. The custom driver used for flashing a recovery mode Jetson is designed to run on desktop PC (x86/amd64) architecture. The data being flashed is arm64, but the tools are not.

Jetsons do not have an actual hardware BIOS, and so this is why they need an external computer for flashing.

To close this and perhaps provide some additional useful information, I determined that Ubuntu Desktop does not have the necessary MTD device module available but Ubuntu Server does; modprobe is then, of course, used to load the mtd driver. Thanks for the assistance on this!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.