Fuse bypass - What is it for?

Hi,

I see a partition defined for fuse bypass. What is the purpose of this partition? If the security fuses are written, does this partition allow you to override the verification check?

FBNAME FBTYPE sequential basic 2097152 0 0x8 0 % FBFILE Optional. Reserved for future use; removable.

[Note: I saw it mentioned as Fuse Bypass for Nano. Even though the same partition name is used for TX2, so it may not be used for fuse bypass, in which case my question is irrelevant]

Thanks
Rayees

hello rayees.shamsuddin,

fuses can be bypassed only on non-production devices.

this feature can be used to overwrite any writable fuses by adding offset and value in a configuration file, i.e. fuse_bypass.xml.
these will get stored in a fuse bypass partition during flashing, on code-boot, bootloader retrieves the offset and value of fuses from the fuse bypass partition and overwrites those fuses with values specified during flash.
this avoid the trouble of sending bypass files on each cold-boot
thanks

Would you please elaborate more on the fuse_bypass.xml file, how it can be defined and used for test purposes?

hello todorcolovmobile,

may I know what’s your actual use-case?
you may generate the fuse blob with --noburn commands in order to prepares fuseblob.tbz2,
thanks

At the moment I have issues with booting my Jetson Nano Developer Kit. Somehow I may have burned the fuses for SB with PKC in production mode. I keep the RSA key on safe location. This action should not have been supported, but I read this article latter - so I cannot flash the rest of the partitions signed with the PKC key nor boot it without SB PKC in normal non-secure NS mode.

  • I guess with the right fuse_bypass configuration I could be able to boot it without SB/PKC, right? Is there such sample fuse_bypass config available to bypass the SB with the PKC?

  • On the other hand, I’d like to test the SB with PKC for production module: can this be done on devkit device with fuse_bypass?

hello todorcolovmobile,

may I know which JetPack release you’re working with,
please initial another new forum thread for supporting your issue,
thanks

Hi,

I used L4T Version 32.5
hexdump -C cvm.bin
00000000 01 00 fc 00 78 0d 00 00 02 46 00 00 00 00 00 00 |…x…F…|
00000010 00 00 00 00 36 39 39 2d 31 33 34 34 38 2d 30 30 |…699-13448-00|
00000020 30 30 2d 32 30 30 20 46 2e 30 00 00 00 00 00 00 |00-200 F.0…|
00000030 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff |…|
00000040 ff ff ff ff 8e 1d e5 4b 04 00 31 34 32 31 39 31 |…K…142191|
00000050 39 30 34 34 34 33 35 00 00 00 00 00 00 00 00 00 |9044435…|
00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |…|
*
00000090 00 00 00 00 00 00 4e 56 43 42 1c 00 4d 31 00 00 |…NVCB…M1…|
000000a0 ff ff ff ff ff ff ff ff ff ff ff ff 8e 1d e5 4b |…K|
000000b0 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |…|
000000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |…|
*
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9f |…|
00000100

I’ve just opened a new Forum topic under:

  • if you with we can continue there

Thanks,