Since SCL clock is derived, in order to change the SCL timing for any mode or to keep current I3C bus timing, the following procedure should be used:
- Disable the I3C controller by setting the
I3C_CTRL[31] DEV_EN bit to 0.
- Adjust I3C0_SCLK / MCU_I3C0_SCLK to the new frequency if necessary, avoiding any glitches during change.
- Reprogram the prescaler registers to achieve desired I3C timing.
- Enable the core by setting the I3C_CTRL[31]
DEV_EN bit to 1.