SWRZ108A November 2021 – January 2022 CC1312R7
I2C module master status bit is set late
Revision B
The I2C.MSTAT[0] bit is not set immediately after writing to the I2C.MCTRL register. This can lead an I2C master to believe it is no longer busy and continuing to write data.
Add four NOPs between writing to the MCTRL register and polling the MSTAT register.
The workaround is implemented in the TI-provided I2C Master driver (I2CCC26XX.c) and in the I2C driver Library APIs (driverlib/i2c.c).
The workaround is available in the SimpleLink™ CC13xx and CC26xx Software Development Kit (SDK).