Data Buffer Threshold Control Register (DWC_mipi_i3c_HCI_block.DATA_BUFFER_THLD_CTRL) – Offset d4
Data Buffer Threshold Control Register used to control thresholds that are triggering interrupts on specific
thresholds of Command, Response, Rx or Tx Data Buffer Queues.
| Bit Range | Default | Access | Field Name and Description |
| 31:27 | 0h | RO | Reserved |
| 26:24 | 1h | RW | (RX_START_THLD) Receive Start Threshold Value
When the controller is set up to initiate a read transfer, it waits until the programmed number of empty locations(or more) are available in its receive buffer before it initiates the read transfer on the I3C Interface.
The following configurable options are provided: - Store and Forward Mode: If the threshold value is set to buffer size, then the controller waits for one of the following to be true to initiate the read command: -- Entire Receive FIFO to be empty if the data length is more than buffer size -- The data length number of locations to be empty in the Receive FIFO if data length is smaller than the buffer size. - Threshold Mode: In this case, if the threshold value is less than buffer size, then the controller initiates the read command as soon as the programmed locations are empty in the Receive FIFO.
The supported values for RX_START_THLD are: - 000 - 1 - 001 - 4 - 010 - 8 - 011 - 16 - 100 - 32 - 101 - 64 - 110 - 128 - 111 - 256 |
| 23:19 | 0h | RO | Reserved |
| 18:16 | 1h | RW | (TX_START_THLD) Transfer Start Threshold Value
When the controller is set up to initiate a write transfer, it waits until the programmed number of entries (or more) are available in its transmit buffer before it initiates the write transfer on the I3C Interface.
The following configurable options are provided:
- Store and Forward Mode: If the threshold value is set to buffer size, then the controller waits for one of the following to be true to initiate the write command: -- Entire Transmit FIFO to be full if the data length is more than buffer size -- The data length number of locations are filled in the Transmit FIFO if data length is smaller than the buffer size. - Threshold Mode: In this case, if the threshold value is less than buffer size, then the controller initiates the write command as soon as the programmed locations are filled in the Transmit FIFO.
The supported values for TX_START_THLD are: - 000: 1 - 001: 4 - 010: 8 - 011: 16 - 100: 32 - 101: 64 - 110: 128 - 111: 256 |
| 15:11 | 0h | RO | Reserved |
| 10:8 | 4h | RW | (RX_BUF_THLD) Receive Buffer Threshold Value.
Controls the number of entries (or above) in the Receive FIFO that trigger the RX_THLD_STAT interrupt.
If the programmed value is greater than the buffer depth, then threshold is set to IC_RX_BUF_DEPTH. The supported values for RX_BUF_THLD are - 000: 1 - 001: 4 - 010: 8 - 011: 16 - 100: 32 - 101: 64 - 110: 128 - 111: 256 |
| 7:3 | 0h | RO | Reserved |
| 2:0 | 4h | RW | (TX_BUF_THLD) Transmit Buffer Threshold Value.
Controls the number of empty locations (or above) in the Transmit FIFO that trigger the TX_THLD_STAT interrupt.
If the programmed value is greater than the buffer depth, then threshold is set to IC_TX_BUF_DEPTH. The supported values for TX_BUF_THLD are - 000: 1 - 001: 4 - 010: 8 - 011: 16 - 100: 32 - 101: 64 - 110: 128 - 111: 256 |