Issue booting JP4.5.1 with factory image on NX

Currently my 4.5.1 SD factory image does not boot. Anecdotally, at some stage when doing updates to 4.5 from 4.4.x my bootloader or ROM seemed to require the kernel to be signed by a zero key. Anyhow this seems to be causing problems.

Looking at the boot console, the startup seemed to be looking for Image.sig which was my clue. Well, I thought I supplied one. I generated it with a command that went something like:

./l4t_sign_image.sh --file Image --chip 0x19

I copied the Image and Image.sig files to /boot. Things progressed a bit further but stalled:

[0004.340] I> L4T boot options
[0004.340] I> [1]: “primary kernel”
[0004.340] I> Enter choice:
[0007.341] I> Continuing with default option: 1
[0007.341] I> Loading kernel sig file from rootfs …
[0007.341] I> rootfs path: /sd/boot/Image.sig
[0007.354] I> Loading kernel binary from rootfs …
[0007.354] I> rootfs path: /sd/boot/Image
[0010.138] I> overload load_size to 34338824 (from 34338832)
[0010.161] I> Validate kernel …
[0010.162] I> T19x: Authenticate kernel (bin_type: 37), max size 0x5000000
[0010.474] I> Encryption fuse is not ON
[0010.491] I> No kernel-dtb binary path
[0010.491] I> A/B: bin_type (38) slot 0
[0010.492] I> Loading kernel-dtb from partition
[0010.492] E> Cannot find partition kernel-dtb
[0010.492] E> Cannot opåÿâá0<82>]W^Bj^P

Any hints?

Thanks in advance,

Les Wu

P.S. my nanos seem to boot the factory SD image just fine.

Hi,

There are few things that need to clarify

  1. We don’t know the background story of your case. But need to tell you that OTA method from jetpack does not support customized case. Thus, if you already done something on jetpack4.4, then it is expected to hit problem.

  2. I also don’t know what you’ve done to your card. Adding something to /boot should not cause the partition disappear.
    Thus, suggest you to directly flash with sdkmanager.

not sure what you are asking or saying. what is “OTA method from jetpack”. i’ve only ever used SD images but have done apt-updates over time.

right now, the pure factory image stalls during boot apparently looking for Image.sig in the boot console. i get a little bit further when i replace the kernel with a signed version of the stock kernel. apart from that the SD image is unadulterated JP4.5.1.

The ubuntu is not that smart enough to upgrade from jetpack4.4. to 4.5.1 when you use apt-get upgrade command.
That method/package is provided by NV and we call it OTA update.

https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/updating_jetson_and_host.html

Currently, as I said, we don’t know what you’ve done to make current situation. Thus, you can either tell us the whole
setup, which we call “story”, on your card and carrier board. For example, is this card purely from jp4.5.1 sdcard image? or it is upgraded from 4.4.1? Is it a custom board? or devkit? or you can just re-flash it with pure jp4.5.1 from sdkmanager.

as i stated repeatedly, the pure jp4.5.1 sdcard image does not work on my system. the console boot indicated that it was looking for Image.sig. it is a devkit.

does re-flashing from sdkmanager change anything apart from the sd card?

Yes, sdkmanager will flash the spi components on devkit. While the sdcard image may not.

Also, please always attach the full log.

If this is pure 4.5.1 image, then why mentioned 4.4x here?

Anecdotally, at some stage when doing updates to 4.5 from 4.4.x my bootloader or ROM seemed to require the kernel to be signed by a zero key. A

because the only time i saw the need to have a signed image kicked in with a 4.4.x update. i’m wondering if there is something on the rom, not the sd card, that got updated.

Please try sdkmanager first and share us the full log is issue is still there.

Also, I am not sure what was your original issue. The only log we have here is after you added some signed kernel to rootfs.

the signerd kernel was the signing of the factory kernel so no, i this isn’t some random kernel. it will take a bit to get the sdkmanager going. haven’t had to use that previously as i’ve been using sd images all along.

What I tried to say is even the original sdcard image should have signed kernel image inside. Thus I don’t understand why you still need to add it.

But anyway, trying sdkmanager shall resolve your problem.

OK, here is the upshot. I ultimately did in fact restore my NX with sdkmanager and a reflash of the operating system onto a fresh SD card. It appears that one of the apt-get upgrades is updating the PROM bootloading in a bad way leaving me with an unbootable system. At least I can recover.

Is there a mechanism/procedure that I can use that is limited to a reflash or update of the PROM on the NX?

There is no update from you for a period, assuming this is not an issue any more.
Hence we are closing this topic. If need further support, please open a new one.
Thanks

Sorry that I don’t quite understand what is “PROM” here, could you elaborate?