Datasheet

Table Of Contents
Table 507. IC_TXFLR
Register
Bits Name Description Type Reset
31:5 Reserved. - - -
4:0 TXFLR Transmit FIFO Level. Contains the number of valid data
entries in the transmit FIFO.
Reset value: 0x0
RO 0x00
IC_RXFLR Register
Description
I2C Receive FIFO Level Register This register contains the number of valid data entries in the receive FIFO buffer. It is
cleared whenever: - The I2C is disabled - Whenever there is a transmit abort caused by any of the events tracked in
IC_TX_ABRT_SOURCE The register increments whenever data is placed into the receive FIFO and decrements when
data is taken from the receive FIFO.
Table 508. IC_RXFLR
Register
Bits Name Description Type Reset
31:5 Reserved. - - -
4:0 RXFLR Receive FIFO Level. Contains the number of valid data
entries in the receive FIFO.
Reset value: 0x0
RO 0x00
IC_SDA_HOLD Register
Description
I2C SDA Hold Time Length Register
The bits [15:0] of this register are used to control the hold time of SDA during transmit in both slave and master mode
(after SCL goes from HIGH to LOW).
The bits [23:16] of this register are used to extend the SDA transition (if any) whenever SCL is HIGH in the receiver in either
master or slave mode.
Writes to this register succeed only when IC_ENABLE[0]=0.
The values in this register are in units of ic_clk period. The value programmed in IC_SDA_TX_HOLD must be greater than
the minimum hold time in each mode one cycle in master mode, seven cycles in slave mode for the value to be
implemented.
The programmed SDA hold time during transmit (IC_SDA_TX_HOLD) cannot exceed at any time the duration of the low
part of scl. Therefore the programmed value cannot be larger than N_SCL_LOW-2, where N_SCL_LOW is the duration of
the low part of the scl period measured in ic_clk cycles.
Table 509.
IC_SDA_HOLD
Register
Bits Name Description Type Reset
31:24 Reserved. - - -
23:16 IC_SDA_RX_HOLD Sets the required SDA hold time in units of ic_clk period,
when DW_apb_i2c acts as a receiver.
Reset value: IC_DEFAULT_SDA_HOLD[23:16].
RW 0x00
15:0 IC_SDA_TX_HOLD Sets the required SDA hold time in units of ic_clk period,
when DW_apb_i2c acts as a transmitter.
Reset value: IC_DEFAULT_SDA_HOLD[15:0].
RW 0x0001
RP2040 Datasheet
4.4. I2C 514