Jetpack Flashing DTB only

In r24.2 updating the DTB was as simple as copying the new version to /boot/ on the TX and rebooting.

In r28.1 things got more complicated requiring you to put the board into recovery mode and re-flash the DTB partition using:

sudo ./flash.sh -r -k DTB jetson-tx1 mmcblk0p1

Now in r28.2 has this changed again? Flashing the DTB using the above command doesn’t update it anymore. I had to reflash the entire board just to get my new DTB in.

sudo ./flash.sh jetson-tx1 mmcblk0p1

I’m doing some clone backup and have not yet installed R28.2 to my TX1, but what do you see from:

sudo gdisk -l /dev/mmcblk0 | egrep -i '(dtb|device)'

Basically I believe the “-k DTB” is based on the GPT partition label (but it will probably be another day before I can check). If the label changed, then perhaps the new label would be used instead of “DTB”. In the TX2 this is label “kernel-dtb”, and differed from the TX1 under R28.1…if this turns out to be a migration towards a uniform naming convention, then perhaps it was nothing but a name change for the partition.

nvidia@tegra-ubuntu:~$ sudo gdisk -l /dev/mmcblk0 | egrep -i '(dtb|device)'
  14        29982754        29990945   4.0 MiB     0700  DTB

Below is the partition layout as reported by flash.sh, I tried flashing RP1 in addition to DTB, but still no luck.

*** PARTITION LAYOUT(24 partitions) ***
[     BCT] BH            0         8191       4.0MiB 
[     NVC] BH         8192        16383       4.0MiB nvtboot.bin
[     PPT] UH            0         4095       2.0MiB 
[     GP1] UH         4096         8191       2.0MiB 
[     APP] UH         8192     29368319   14336.0MiB system.img
[     TBC] UV     29368320     29372415       2.0MiB nvtboot_cpu.bin
[     EBT] UV     29372416     29380607       4.0MiB cboot.bin
[     BPF] UV     29380608     29384703       2.0MiB bpmp.bin
[     WB0] UV     29384704     29396991       6.0MiB warmboot.bin
[     RP1] UV     29396992     29405183       4.0MiB tegra210-jetson-tx1-p2597-2180-a01-devkit.dtb
[     TOS] UV     29405184     29417471       6.0MiB tos.img
[     EKS] UV     29417472     29421567       2.0MiB eks.img
[      FX] UV     29421568     29425663       2.0MiB 
[     BMP] UV     29425664     29687807     128.0MiB bmp.blob
[     SOS] UV     29687808     29728767      20.0MiB 
[     EXI] UV     29728768     29859839      64.0MiB 
[     LNX] UV     29859840     29990911      64.0MiB boot.img
[     DTB] UV     29990912     29999103       4.0MiB tegra210-jetson-tx1-p2597-2180-a01-devkit.dtb
[     NXT] UV     29999104     30003199       2.0MiB 
[     MXB] UV     30003200     30015487       6.0MiB 
[     MXP] UV     30015488     30027775       6.0MiB 
[     USP] UV     30027776     30031871       2.0MiB 
[     UDA] UV     30031872     61067263   15154.0MiB 
[     GPT] UH     61067264     61071359       2.0MiB

Here’s the full output of gdisk -l, it doesn’t seem to line up with what flash.sh thinks, is that because of the bootloader?

1              34        29360161   14.0 GiB    0700  APP
   2        29360162        29364257   2.0 MiB     0700  TBC
   3        29364258        29372449   4.0 MiB     0700  EBT
   4        29372450        29376545   2.0 MiB     0700  BPF
   5        29376546        29388833   6.0 MiB     0700  WB0
   6        29388834        29397025   4.0 MiB     0700  RP1
   7        29397026        29409313   6.0 MiB     0700  TOS
   8        29409314        29413409   2.0 MiB     0700  EKS
   9        29413410        29417505   2.0 MiB     0700  FX
  10        29417506        29679649   128.0 MiB   0700  BMP
  11        29679650        29720609   20.0 MiB    0700  SOS
  12        29720610        29851681   64.0 MiB    0700  EXI
  13        29851682        29982753   64.0 MiB    0700  LNX
  14        29982754        29990945   4.0 MiB     0700  DTB
  15        29990946        29995041   2.0 MiB     0700  NXT
  16        29995042        30007329   6.0 MiB     0700  MXB
  17        30007330        30019617   6.0 MiB     0700  MXP
  18        30019618        30023713   2.0 MiB     0700  USP
  19        30023714        30777310   368.0 MiB   0700  UDA

I do see partition “DTB”, so I’m not sure what should work for flash of dtb if the “-k DTB” no longer works. It’ll be another day or so before I can look…if someone else knows the correct flash for dtb in R28.2 TX1 please jump in!

Looks like adding

FDT /boot/dtb/tegra210-jetson-tx1-p2597-2180-a01-devkit.dtb

To /boot/extlinux/extlinux.conf let’s you update just by copying the dtb to /boot/dtb, so I’m going to do that for now.

Since much of that moved to the partitions you can’t expect the FDT entry to do as expected. There may be cases where it works, but mostly I’d be wary of using FDT/file. I do wish FDT would work in the same way it did in the past.

Oh, good to know