OTP Revision Read/Write Message Description¶
This chapter provides information on System Firmware APIs for reading and writing Software Revision and Key Revision to/from eFuses.
The available APIs are listed below.
TISCI Message ID | Message Name | Available in GP | Avialable in HS-FS |
---|---|---|---|
0x9032 | TISCI_MSG_WRITE_SWREV | No | No |
0x9033 | TISCI_MSG_READ_SWREV | No | No |
0x9034 | TISCI_MSG_READ_KEYCNT_KEYREV | No | No |
0x9035 | TISCI_MSG_WRITE_KEYREV | No | No |
API Description¶
TISCI Message ID¶
TISCI_MSG_WRITE_SWREV (0x9032U)
Message to write SWREV values
struct tisci_msg_set_swrev_req
Request message to set swrev
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Standard TISCI header |
identifier | u8 | One of the entries from enum tisci_otp_revision_identifier |
value | u32 | Revision value (integer) to be bit encoded, and programmed |
This message can only be sent by the host that is tied to root of trust through the secure boardcfg extended otp extension
struct tisci_msg_set_swrev_resp
Response message after seting swrev
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Standard TISCI header |
TISCI_MSG_READ_SWREV - Read Software Revision¶
Important
System Firmware currently supports reading only SWREV Secure Board Config with this message
Usage:
Message Type | Normal |
Secure Queue Only? | Yes |
TISCI Message ID¶
TISCI_MSG_READ_SWREV (0x9033U)
Message to read SWREV values
struct tisci_msg_get_swrev_req
Request message to get swrev
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Standard TISCI header |
identifier | u8 | One of the entries from enum tisci_otp_revision_identifier (Current support only for OTP_REV_ID_SEC_BRDCFG) |
struct tisci_msg_get_swrev_resp
Response message to get swrev
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Standard TISCI header |
value | u32 | Decoded Software Revision value (integer) from efuses |
TISCI_MSG_READ_KEYCNT_KEYREV - Read Key Count and Key Revision¶
Usage:
Message Type | Normal |
Secure Queue Only? | Yes |
TISCI Message ID¶
TISCI_MSG_READ_KEYCNT_KEYREV (0x9034U)
Message to read KEYCNT and KEYREV
struct tisci_msg_get_keycnt_keyrev_req
Request message to get keycnt, keyrev
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Standard TISCI header |
struct tisci_msg_get_keycnt_keyrev_resp
Response message to get keycnt, keyrev
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Standard TISCI header |
keycnt | u32 | Keycount integer value |
keyrev | u32 | Keyrevision integer value |
TISCI Message ID¶
TISCI_MSG_WRITE_KEYREV (0x9035U)
Message to write KEYREV value
struct tisci_msg_set_keyrev_req
Request message to set keyrev
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Standard TISCI header |
value | u32 | Key Revision value (integer) to be bit encoded, and programmed |
cert_addr_lo | u32 | Lower 32 bit address (in LE format) of the Dual signed certificate |
cert_addr_hi | u32 | Higher 32 bit address (in LE format) of the Dual signed certificate |
This message can only be sent by the host that is tied to root of trust through the secure boardcfg extended otp extension
struct tisci_msg_set_keyrev_resp
Response message after setting keyrev
Parameter | Type | Description |
---|---|---|
hdr | struct tisci_header | Standard TISCI header |
OTP Revision Identifier¶
This enumeration is used in TISCI_MSG_WRITE_SWREV and TISCI_MSG_READ_SWREV
enum tisci_otp_revision_identifier
OTP Revision Identifiers
Enum | Value | Description |
---|---|---|
OTP_REV_ID_SBL | 0 | Sofware Revision SBL |
OTP_REV_ID_SYSFW | 1 | Software Revision SYSFW |
OTP_REV_ID_SEC_BRDCFG | 2 | Software Revision Secure Board Configuration |