stm32 /stm32h5 /STM32H503 /I3C1 /I3C_DEVR0

Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text

Interpret as I3C_DEVR0

31 2827 2423 2019 1615 1211 87 43 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (DAVAL)DAVAL 0DA0 (B_0x0)IBIEN 0 (B_0x0)CREN 0 (B_0x0)HJEN 0 (B_0x0)AS0 (B_0x0)RSTACT 0 (RSTVAL)RSTVAL

HJEN=B_0x0, AS=B_0x0, IBIEN=B_0x0, RSTACT=B_0x0, CREN=B_0x0

Description

I3C own device characteristics register

Fields

DAVAL

dynamic address is valid (when the I3C is acting as target) When the I3C is acting as controller, this field can be written by software, for validating its own dynamic address, for example before a controller-role hand-off. When the I3C is acting as target, this field is asserted by hardware on the acknowledge of the broadcast ENTDAA CCC or the direct SETNEWDA CCC, and this field is cleared by hardware on the acknowledge of the broadcast RSTDAA CCC.

DA

7-bit dynamic address When the I3C is acting as controller, this field can be written by software, for defining its own dynamic address. When the I3C is acting as target, this field is updated by hardware on the reception of either the broadcast ENTDAA CCC or the direct SETNEWDA CCC.

IBIEN

IBI request enable (when the I3C is acting as target) This field is initially written by software when I3C_CFGR.EN=0, and is updated by hardware on the reception of DISEC CCC with DISINT=1 (i.e. cleared) and the reception of ENEC CCC with ENINT=1 (i.e. set).

0 (B_0x0): IBI request disabled

1 (B_0x1): IBI request enabled

CREN

controller-role request enable (when the I3C is acting as target) This field is initially written by software when I3C_CFGR.EN=0, and is updated by hardware on the reception of DISEC CCC with DISCR=1 (i.e. cleared) and the reception of ENEC CCC with ENCR=1 (i.e. set).

0 (B_0x0): controller-role request disabled

1 (B_0x1): controller-role request enabled

HJEN

hot-join request enable (when the I3C is acting as target) This field is initially written by software when I3C_CFGR.EN=0, and is updated by hardware on the reception of DISEC CCC with DISHJ=1 (i.e. cleared) and the reception of ENEC CCC with ENHJ=1 (i.e. set).

0 (B_0x0): hot-join request disabled

1 (B_0x1): hot-join request enabled

AS

activity state (when the I3C is acting as target) This read field is updated by hardware on the reception of a ENTASx CCC (enter activity state, with x=0-3):

0 (B_0x0): activity state 0

1 (B_0x1): activity state 1

2 (B_0x2): activity state 2

3 (B_0x3): activity state 3

RSTACT

reset action/level on received reset pattern (when the I3C is acting as target) This read field is used by hardware on the reception of a direct read RSTACT CCC in order to return the corresponding data byte on the I3C bus. This read field is updated by hardware on the reception of a broadcast or direct write RSTACT CCC (target reset action).

0 (B_0x0): no reset action

1 (B_0x1): first level of reset: the application software should either:

2 (B_0x2): second level of reset: the application software should issue a warm reset, also known as

3 (B_0x3): no reset action

RSTVAL

reset action is valid (when the I3C is acting as target) This read bit is asserted by hardware to indicate that the RTSACT[1:0] field has been updated on the reception of a broadcast or direct write RSTACT CCC (target reset action) and is valid. This field is cleared by hardware when the target receives a frame start. If RSTVAL=1: when the RSTF is asserted (and/or the corresponding interrupt if enabled), I3C_DEVR0.RSTACT[1:0] dictates the reset action to be performed by the software if any. If RSTVAL=0: when the RSTF is asserted (and/or the corresponding interrupt if enabled), the software should issue an I3C reset after a first detected reset pattern, and a system reset on the second one.

Links

()