Odmfuse.sh error

error.log (12.4 KB)
Orin_Reference_Fuse_Configuration_File_test.xml (2.9 KB)

on jetpack 5.0.2 (l4t_35.1) patched with secureboot_R35.1.0_aarch64.tbz2, run the below command to fuse Orin:

./odmfuse.sh --test -X /tmp/Orin_Reference_Fuse_Configuration_File_test.xml -i 0x23 jetson-agx-orin-devkit

report error, just like attached error.log shows.

hello liu.jialu,

do you have Orin device enter forced-recovery mode?
could you please… (1) try with --noburn options for confirmation, (2) remove -X commands for using fuse_config.

sure, the Orin device in forced-recovery mode.
and
(1) with --noburn, it’s error again, like attached error_noburn.log shows.
error_noburn.log (12.7 KB)

(2) according to the Burn Fuses with the Fuse Configuration file, the command should like this:
sudo ./odmfuse.sh -X <fuse_config> -i <chip_id> <target_config>
then how to remove -X option?

as error.log shows:
[ 0.7449 ] tegradevflash_v2 --oem platformdetails eeprom cvm /media/jaloo/4b30e570-5953-4e3f-bd28-3daec93ead76/jetpack_5.0.2/l4t_35.1/drivers/Linux_for_Tegra/bootloader/cvm.bin --chip 0x23 0
[ 0.7462 ] Error: Invalid option --chip
that is the reason?

i’m sorry that i missed “sudo”, but after add “sudo”, i got another error, like attached error_sudo_noburn.log shows:

sed: -e expression #72, char 21: unknown option to `s’
failed.

error_sudo_noburn.log (17.4 KB)

hello liu.jialu,

I forgot to mention you’ll need board info with --noburn options.
however, the process goes to access your target to read eeprom, i.e. Board ID(3701) version(500) sku(0000) revision(H.0).

did you back to test your origin commands by adding sudo?
for example, sudo ./odmfuse.sh --test -X /tmp/Orin_Reference_Fuse_Configuration_File_test.xml -i 0x23 jetson-agx-orin-devkit

sudo ./odmfuse.sh --test -X /tmp/Orin_Reference_Fuse_Configuration_File_test.xml -i 0x23 jetson-agx-orin-devkit
still report error
here is error_sudo_test.log
error_sudo_test.log (17.2 KB)

hello liu.jialu,

I’m curious why you’re not assign keys, such as, PKC, SBK…etc to odmfuse?
if you’re running test commands, you should also assign keys for fuse blob creation.

here’re steps to test image fusing for your reference,
>>ONLINE, which means you should have target board attached in RCM mode.
$ sudo ./odmfuse.sh -i 0x23 --test --auth NS -k rsa_priv-3k.pem -S sbk-256.key jetson-agx-orin-devkit

>>OFFLINE, it could create fuse blob without connections, you should given board info.
$ sudo FAB=500 BOARDID=3701 BOARDSKU=0000 BOARDREV=H.0 FUSELEVEL=fuselevel_production ./odmfuse.sh --noburn --auth NS -i 0x23 -k rsa_priv-3k.pem -S sbk-256.key jetson-agx-orin-devkit

according to the Jetson Security Doc omdfuse.sh (-X option) with Fuse Configuration File is officially now.

assign keys, such as, PKC, SBK…etc separately to odmfuse.sh is a Legacy Support? that’s it?

Burn Fuses with the Fuse Configuration file

Legacy Support of Secure Boot for Xavier SoC

hello liu.jialu,

that’s right, just a test approach to check whether you’re able to run fuse pipeline with old method

sudo ./odmfuse.sh -i 0x23 --test -k /tmp/rsa_priv.pem jetson-agx-orin-devkit

got the same error:

sed: -e expression #72, char 21: unknown option to `s’
failed.

attache file is the full log:
error_legacy.log (17.2 KB)

please help to have a on-board check, thanks.

my env: ubuntu 18.04 LTS, Jetpack_5.0.2(L4T_35.1)

hello liu.jialu,

since I don’t have Orin developer kit available currently,
I’m only able to test with offline approach. I can also repo this failure… sed: -e expression #72, char 21: unknown option to s’`

let me arrange resources to check this internally.
will update the status after we come out conclusions.
thanks