My goal is to enable arm secure boot feature on t113-s3 SoC. To do it, I need to burn a hash of a RSA2048 public key to efuse(One-time-programmable memory). My questions are:
- How is arm core connected to this efuses (another name Security ID/SID) and what it has to do with registers (if it has to do with them in a first place) ? (I understand that this is soc specific, but maybe someone knows about t113 or suggests a common way how this is done on other soc’s)
- How can I write (burn) to these efuses? Are there certain CPU commands to do this?
I am aware of two ways of burning efuse:
a. Connecting to a device via USB in a FEL mode or other tools that require USB connection (allwinner tools).
b. Burning during U-boot spl.
Since our PCB does not contain a physical USB port and mainline u-boot has not fuse writing support for t113-s3, I want to be able to write bare-metal code (and then possibly add it to u-boot) for burning these fuses.
Would appreciate any information on this topic. Maybe someone knows particularly about t113 SID map, that would be great!