DEVICE_CTRL

         
DWC_mipi_i3c control Register

This Register controls the transfer properties and disposition of controller's capabilities.


      
Module Instance Base Address Register Address
i_i3c_main_master__i3c_m_apb_slv__10da0000__DWC_mipi_i3c_block__SEG_L4_SP_i3c0_0x0_0x1000 0x10DA0000 0x10DA0000

Size: 32

Offset: 0x

Access: RW

Important: The value of a reserved bit must be maintained in software. When you modify registers containing reserved bit fields, you must use a read-modify-write operation to preserve state and prevent indeterminate system behavior.
Bit Fields
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16

ENABLE

RW 0x0

RESUME

RW 0x0

ABORT

RW 0x0

DMA_ENABLE

RW 0x0

Reserved_3

RO 0x0

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

Reserved_3

RO 0x0

HOT_JOIN_CTRL

RW 0x0

I2C_SLAVE_PRESENT

RW 0x0

Reserved_1

RO 0x0

IBA_INCLUDE

RW 0x0

DEVICE_CTRL Fields

Bit Name Description Access Reset
31 ENABLE
Controls whether or not DWC_mipi_i3c is enabled.
 - 1: Enables the DWC_mipi_i3c controller.
 - 0: Disables the DWC_mipi_i3c controller.

In Master mode of operation, software can disable DWC_mipi_i3c while it is active.
However, the controller may not get disabled immediately and is 'Disabled' after commands in the Command queue (if any) are executed leading to a STOP condition on the bus and Master FSM is in IDLE state (as indicated by PRESENT_STATE Register). 



RW 0x0
30 RESUME
DWC_mipi_i3c Resume

This bit is used to resume the controller after it goes to the halt state.


In the Master mode of operation, the controller goes to the halt state (as indicated in PRESENT_STATE Register) due to any type of error
in the transfer (the type of error is indicated by ERR_STATUS field in the RESPONSE_QUEUE_PORT register).

After the controller gones to the halt state, the application has to write 1'b1 to this bit to resume the controller.
This bit is auto-cleared once the controller resumes the transfers by initiating the next command.


RW 0x0
29 ABORT
DWC_mipi_i3c Abort

This bit is used in Master mode of operation. 

This bit allows the controller to relinquish the DWC_mipi_i3c bus before completing the issued transfer.

In response to an ABORT request, the controller issues the STOP condition after the complete
data byte is transferred or received.

This bit is auto-cleared once the transfer is aborted and the controller issues a 'Transfer Abort' interrupt.

RW 0x0
28 DMA_ENABLE
DMA Handshake Interface Enable

This bit is used to enable or disable the DMA Handshaking interface, and is applicable to both Master and Slave modes of operation. 

 - 1: Enables the DMA handshake control to interact with external DMA.

 - 0: The DMA handshake control has no significance.


RW 0x0
27:9 Reserved_3
Reserved bitfield added by Magillem
RO 0x0
8 HOT_JOIN_CTRL
Hot-Join ACK/NACK Control

This bit is used in master mode of operation. 

This bit acts as a global control to ACK/NACK the Hot-Join request from the devices. The DWC_mipi_i3c Master
 ACK/NACKs the Hot-Join request from other devices connected on the DWC_mipi_i3c bus, based on programming of this bit.
 - 0: ACK the Hot-join request.
 - 1: NACK and send broadcast CCC to disable Hot-Join.

Value Description
0x0 Ack Hot-Join requests
0x1 Nack and auto-disable Hot-Join request
RW 0x0
7 I2C_SLAVE_PRESENT
I2C Slave Present

This bit is used in master mode of operation. 

This bit indicates whether any Legacy I2C devices are present in the system.

In HDR mode, this field is used to select TSL over TSP in a mixed bus configuration.

Value Description
0x0 I2C Slave not present
0x1 I2C Slave present
RW 0x0
6:1 Reserved_1
Reserved bitfield added by Magillem
RO 0x0
0 IBA_INCLUDE
I3C Broadcast Address include

This bit is used in Master mode of operation.

This bit is used to include DWC_mipi_i3c broadcast address (0x7E) for private transfer.

Note: If DWC_mipi_i3c broadcast address is not included for the private transfers, In-band Interrupts (IBI)
driven from Slaves might not win address arbitration. Hence, the IBIs get delayed.
Value Description
0x0 I3C Broadcast Address is not included for Private Transfers
0x1 I3C Broadcast Address is included for Private Transfers
RW 0x0