embassy
embassy copied to clipboard
RP2040/235x: Add I2C bus lockup detection and async recovery implementation.
Various possibilities for bus-lock exist with the rp2040 and rp2350 i2c peripherals. The synopsis i2c peripheral is not included with the bus-clear option, meaning detection and recovery has to be implemented in software.
This change adds detection of these conditions to both blocking and async usage, and bit-banged automatic recovery for the async variants.