Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

ID 814346
Date 4/01/2024
Public
Document Table of Contents

5.8.6.6.2. I3C versus I2C Role Selection

The I3C slave controller can be selected as an I3C slave or as an I2C slave. During initial power-up, the I3C controller is in I2C mode as it does not have any dynamic address (DA) assigned to it. The mode changes to I3C only when a DA is assigned by any of dynamic address assignment procedure given in I3C Specification.

The mode again changes back to I2C when RSTDAA CCC is issued or on hardware reset. Once in I2C role, the Slave controller ignores all I3C related transfers like IBI, Hot-Join and all the CCCs. In I2C mode of operation, the clock stretching is not supported by slave controller. The spike filter required for I2C device should be present outside the controller interface and is not a part of the deliverable, only the control to enable or disable the spike filter is provided from the controller. Until the dynamic address is assigned either through ENTDAA or SETDASA CCC, the controller remains in I2C mode. Once the dynamic address is assigned and valid, then the controller switches to I3C mode.