I’m wondering if there is a way to define the version of device BUP from the userspace
During documentation research (1) , I find out that SMD (slot metadata) partition contain some variable named “version”, which is described as “version specifies the version number of the software in the slot.”.
I’m struggling to get more info about this “version” variable, but failing in all ways. nvbootctrl doesn’t show it, running strings and digging into hexdump over /dev/mmcblk0boot1 can’t help me to get a clue.
Basically, I just need any way to understand what BUP version is flashed. My BUP is custom one, so I can’t just look into nvidia-l4t-bootloader version
please execute l4t_generate_soc_bup.sh to create the customize BUP.
for TX2 series,
there are some partitions after the APP, such as the “mts-bootpack”. this partition’s address will be built into the MB1_BCT, and the MB1 will load it.
note, there’s an issue if you using -S command to flash the device, the APP partition’s size was changed, and then the followed “mts-bootpack” also will be changed accordingly.
in this case, you cannot create the BUP with the default setting, in other words, the address has changed. you may also use the customized BUP to update.
so, here show the roughly steps for your reference,
Download the r32.6.1 BSP packages
Use this package to generate the BUP, just running $ sudo ./l4t_generate_soc_bup.sh -p -S <size> t18x
Sorry, I probably didn’t explain it quite correctly so you didn’t understand me right.
I know how to generate BUP and how to flash it to the device.
I need to know is BUP blob itself is versioned or not?
If yes, where this information is stored, and how can I get it?
If no, then how can I get versions of flashed bootloader (U-boot) and DT (device tree) from userspace? What command (from Linux CLI) can show me version of device tree and U-boot?
please see Bootloader Update Payload Generator session for reference,
you may create a multi-spec BUP, that’s checking TNSPEC to use the appropriate binary, which included on your target, i.e. $ cat /etc/nv_boot_control.conf
you don’t need to check currently flashed device version if you’re creating a multi-spec BUP.
btw, there’s no versioned device tree, and the version of u-boot is only able to check via bootloader logs.