24.4.5.6.2 Response Data Structure

The Response Structure in Target is used to indicate the completion of the transmit command (Private Controller Read operation), the completion of the Controller Write operation (Private Controller Write operation) or the completion of Vendor Specific Write and Read CCC transfers.

Table 24-28. Response Data Structure
BitsNameMemory AccessDescription
31:28ERR_STATUSR

0: No Error

1: CRC error (controller writes in DDR mode)

2: Parity error (controller writes in both DDR and SDR modes)

3: Frame error (HDR mode controller writes)

6: Underflow/Overflow error

8: SDA is released from the stuck state after the prescribed amount of time defined by register I3CxRELSDATIM.

10: Controller early termination

27RX_RSPRTransaction Type

This field is used to identify the type of transaction:

0: Transmit Response

1: Receive Response

26:24TIDR

Transmit Transaction ID

This field is used as the identification tag for the transmit command.

NOTE: TID value '7' indicates the response is meant for vendor-specific CCCs or DEFSLVS CCC transfers.

23:16CCC_HDR_HEADERR

Command Code of CCC or HDR Command Code

8'h00 - SDR Private Transfer CCC Code - Vendor Specific CCCs

Others - HDR Command Code or, in the case of the Secondary Controller, whenever DEFSLV CCC is received, the DEFSLV CCC command code is reflected in this field. The application comes to know that this field reflects the CCC command code if the TID field is set to 3'b111.

15:8

Defining Byte/ MSB of Data

Length

R

Defining byte or MSB of data length

If the TID field is set to 3'b111, it indicates the defining byte value received for the vendor specific Directed Write/Read CCC transfers.

If the TID field is not set to 3'b111, it indicates the MSB of the data length in bytes of the Controller Write Transfer or the remaining length of the Controller Read Transfer.

7:0LSB of Data LengthR

If the TID field is not set to 3'b111, it indicates the data length in bytes of the Controller Write Transfer, or the remaining length of the Controller Read Transfer (Controller termination or Target underrun).

If the TID field is set to 3'b111, it indicates the data length received or transmitted in bytes for vendor-specific CCC transfers. In the case of DEFSLVS, which is indicated by the TID and RX_RESP fields all set to one, this field indicates the device count to the application.

Note: Target Data Length:The Data Length field in Response of a read/write transfer that has experienced any error (has the appropriate Error Status flag set in Response) does not accurately reflect the number of bytes sent or received before the occurrence of the error. Since the Error Handling flow recommends that the appropriate queues be Flushed, the Data length Reported has no particular significance.