I'm tasked with creating a fuse map in preparation for securing an i.MX8M Plus device. As I've been diving through the fuses, I stumbled on some sections that seem to be typos (they exist in both the i.MX8M Plus TRM as well as the Security Manual, when the unsecured options exist in both).
For example, Fuse 0x420[10:0] is shown as UNIQUE_ID[42:0] and Number of Fuses is set to 43. How? Would this not be 11 bits of the Unique ID?
Also, the MAC addresses:
At 0x640[15:0] it's listed as MAC_0_ADDR[47:0] with the Number of Fuses set to 48, and
At 0x650[31:16] it's listed as MAC_1_ADDR[47:0] with the Number of Fuses also set to 48. How?
For the security SRK_HASH the total number of fuses is listed as 256 but the (24?) words allocated doesn't seem to line up? Is this where 3x SRK keys are stored?
Another example is the USB_VID/PID at 0x620[15:0]/[31:16]which shows USB_VID/PID[31:0] (32-bits) but as expected only 16 fuses are allocated (each)--clearly a typo.
Seems like lots of typos which concerns me for something that can easily brick our device.
My TRM is dated 6/2021 I'll look for a later version, but much of this is also replicated in the Security Manual (dated 4/2021). Can you please let me know if I need to request an updated Security Manual if 4/2021 is not the latest version?
Thanks.
Solved! Go to Solution.
1)for unique_id, the lower 32bits is from 0x420[32:0] and higher 32bits is from 0x430[32:0], for mac address,
MAC_1_ADDR is in 0x640[0:31] and 0x650[0:15]. MAC_2_ADDR is in 0x650[16:31] and 0x660[0:31].
2)Another example is the USB_VID/PID at 0x620[15:0]/[31:16]which shows USB_VID/PID[31:0] (32-bits) but as expected only 16 fuses are allocated (each)--clearly a typo.
>yes only 16bits each
1)for unique_id, the lower 32bits is from 0x420[32:0] and higher 32bits is from 0x430[32:0], for mac address,
MAC_1_ADDR is in 0x640[0:31] and 0x650[0:15]. MAC_2_ADDR is in 0x650[16:31] and 0x660[0:31].
2)Another example is the USB_VID/PID at 0x620[15:0]/[31:16]which shows USB_VID/PID[31:0] (32-bits) but as expected only 16 fuses are allocated (each)--clearly a typo.
>yes only 16bits each
Thank you for the feedback; I'll annotate my copy of the document to reflect those changes. I would have not guessed the MAC addresses as 0x660 was missing from the table but makes sense from the OCOTP banks.
Cheers,
Scott
Made a slight typo on security SRK --- it's only 8 words so that matches--I misread the ending register value...