We are working on a custom carrier board for the Jetson Nano platform. We are currently working on the firmware upgrade method and have run into a roadblock. We need to be able to update the device tree post product launch. Our platform does NOT have any USB interfaces. So we can’t connect a PC to the target to perform the firmware update. I have tried to reverse engineer the NVidia update scripts to replicate the device tree signing. Here is what I’ve tried:
./tegrahost --chip 0x21 --align test.dtb
./tegrahost --magicid DTB --appendsigheader test.dtb test.dtb_blheader
./tegrasign --key None --file test.dtb_blheader
./tegrahost --updatesigheader test_encrypt.dtb_blheader test.hash zerosbk
It seems to generate the correct files, although what looks like the signed key is different than the one I dump from the DTB partitions. How can I create a valid DTB partition on the PC WITHOUT connecting to the SOM?