30.6.9 OTPC Header Register
Name: | OTPC_HR |
Offset: | 0x20 |
Reset: | 0x00000000 |
Property: | Read/Write |
Bit | 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | |
CHECKSUM[15:8] | |||||||||
Access | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Reset | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bit | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | |
CHECKSUM[7:0] | |||||||||
Access | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Reset | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bit | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | |
SIZE[7:0] | |||||||||
Access | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Reset | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
ONE | SECURE | INVLD[1:0] | LOCK | PACKET[2:0] | |||||
Access | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Reset | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bits 31:16 – CHECKSUM[15:0] Packet Checksum
When CHECKSUM is read as 0, the checksum has not been generated. It is still possible to modify the packet content.
When CHECKSUM is read as 0x33CC, the checksum has not been generated but has already some bit at 1. Locking the packet may fail.
When CHECKSUM is read as 0xA5A5, the checksum has been generated and the last check was successful. It is impossible to modify the packet content.
When CHECKSUM is read as 0xCC33, the packet header is corrupted.
When CHECKSUM is read as 0xFFFF, the entire packet is no longer valid. It is possible to modify the packet content and it is up to the software to program the payload to a different value if needed.
For all other values of CHECKSUM, the checksum has been generated and the last check failed to match the checksum written in the OTP. It is impossible to modify the packet content.
This field is not writeable and is set by the OTPC during a lock request.
Bits 15:8 – SIZE[7:0] Packet Size
This field represents the size of the packet payload.
This field is writeable only for new packets.
Bit 7 – ONE One
This field is set to 1 by hardware and is not writeable.
Bit 6 – SECURE Secure Packet
This field is writeable only through accesses done in the secure world, otherwise it is set to 0.
Value | Description |
---|---|
0 | The packet is not part of the secure world. |
1 | The packet is part of the secure world. |
Bits 5:4 – INVLD[1:0] Invalid Status
If set to value 3, this field indicates that the packet is not valid.
This field is not writeable and is set by the OTPC during an invalidation request.
Bit 3 – LOCK Lock Status
This field is not writeable and is set by the OTPC during a lock request.
Value | Description |
---|---|
0 | The packet is not locked. |
1 | The packet is locked. |
Bits 2:0 – PACKET[2:0] Packet Type
This field is writeable only for new packets.
Value | Name | Description |
---|---|---|
1 | REGULAR | Regular packet accessible through the user interface |
2 | KEY | Key packet accessible only through the Key Buses |
3 | BOOT_CONFIGURATION | Boot Configuration packet |
4 | SECURE_BOOT_CONFIGURATION | Secure Boot Configuration packet |
5 | HARDWARE_CONFIGURATION | Hardware Configuration packet |
6 | CUSTOM | Custom packet |