USB boot problems, update cboot?

We’ve been having problems for months where sometimes USB devices will suddenly stop booting on Xavier NX devices - but the devices are seen fine by the kernel if booted off the internal eMMC. The issue seems to be that cboot doesn’t like the device for some reason. On some devices, the boot becomes intermittent - it will succeed a number of times in a row, then fail a number of times in a row. We’ve also had failures with different types of devices - most frequently, Samsung FIT Plus 128GB USB flash drives, but also occasionally USB SSDs of higher quality as well.

I’ve seen in other posts that there is a patched cboot in r32.7.1 - but the release notes are nowhere to be found for 32.7.1, the link just goes to the Developer Guide.

Can someone please point me to the procedure for updating cboot on a Xavier NX 16GB with internal emmc? I want to make sure i’m trying the correct thing.


I am not sure what you want here.

You can build the new cboot and replace the cboot.bin in yoru L4T BSP. Then reflash the board.

I will suggest that sometimes devices not showing up depends on device tree. If you are booting to a different rootfs, it is also possible that boot might be using the device tree file from the “/boot” partition of the different partition than you expect (e.g., the eMMC versus USB SSD; the “/boot” probably exists on both, and if it chain loads, then the device with the “/boot” might not be the one you expect). Anyway, that is just a possibility; you can check if the device tree is the one from the partition you think it is by looking at any parameter in it which is different among the two partitions, e.g., a date stamp.

What I was hoping for here is a pointer to decent documentation on HOW to actually “build the new cboot and replace the cboot.bin” for r32.7.1 - the nvidia documentation search is horrible, and all the links in old posts that i’ve found are out of date and wind up pointing only to the front page of the developer guide because someone keeps moving docs around every couple of months without properly updating historical pointers. It’s really quite frustrating as a user of this site.

@linuxdev: no, this is definitely not it.

  1. Cboot source could be downloaded from here.
    Jetson Linux Archive | NVIDIA Developer

And there is a readme file in the cboot source to tell how to build.

  1. I am not sure how familiar you are with the BSP flash. For example, if you ever flashed your board with sdkmanager or Please tell us whether you tried those things before or not so that I can tell how to guide you here.

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