Response Data Structure

The I3CC returns the status of the Transfer command into the response queue with this data structure.

Table 9-62. Response Data Structure
BitField NameMemory AccessReset ValueDescription
31:28ERR_STATUSR0x0Response Error Status

Indicates the Response status, that is, either success or the error type encountered for the processed command.

Values:

  • 0x0: SUCCESS: Transfer successful, no error
  • 0x1: CRC: CRC Error
  • 0x2: PARITY: Parity Error
  • 0x3: FRAME: Frame Error
  • 0x4: ADDR_HEADER: Address Header Error
  • 0x5: NACK: Address NACK’ed or Dynamic Address Assignment NACK’ed
  • 0x6: OVL: Receive Overflow or Transfer Underflow Error
  • 0x7: RESERVED
  • 0x8: ABORTED: Aborted
  • 0x9: I2C_WR_DATA_NACK: NACK received for the I2C Write Data transfer
  • 0xA: NOT_SUPPORTED: Command with specific parameters not supported by the I3CC implementation (For example, specific Internal control codes are not supported)
  • 0xB–0xF: RESERVED
27:24TIDR0x0Command/Response Transaction ID

Transaction ID field is used as an identification tag for the command. This value matches one of commands sent on the bus.

Valid IDs are 0x0–0x7. Values 0x8–0xF are reserved.

23:16Reserved
15:0DATA_LENGTHR0x0Data Length / Device Count

For write transfers, this field represents the remaining data length of the transfer if the transfer is terminated early (remaining data length = requested data length - transferred data length).

For read transfers, this field represents the actual amount of data received in bytes.

For Address Assignment command, this field represents the remaining device count.