I have a process where I install a custom kernel/DTB on an existing TX1 system that has been initially setup with the Jetpack install… Here’s my process-
I copy the kernel and DTB binaries over to the system, then I write the new kernel image to /boot and I install the DTB into /dev/mmcblk0p13 using ‘dd’, and then reboot.
This process works fine on R28.1, but it doesn’t work correctly on R28.2. First of all, I noticed that the DTB partition has changed to mmcblk0p14 on R28.2, so I tried writing it there instead. It still doesn’t work, and it appears that Tegraboot is complaining that the DTB is corrupted.
[0000.668] Bootloader DTB Load Address: 0x83000000
[0000.673] Loading NvTbootKernelDTB
[0000.767] Verifying NvTbootKernelDTB in OdmNonSecureSBK mode
[0000.807] NvTbootKernelDTB is corrupted!
[0000.811] Error in NvTbootLoadBinary: 0x14 !
[0000.815] Error is 14
I dumped a copy of the DTB partition from a working system for inspection with a hex editor, and I noticed 1024 bytes at the beginning before the actual DTB data starts. I don’t see this on the DTB partition from R28.1.
Is there some sort of header that needs to be added to the DTB binary in R28.2? I seem to be missing something here.