From: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx> Hi All, This patch series introduces support for I2C bus recovery in the RIIC driver, which is utilized in RZ series SoCs. The addition of bus recovery functionality enhances the reliability of the I2C interface by allowing it to recover from error conditions that might leave the bus in an unusable state. Alongside the bus recovery implementation, the series includes several cleanup and improvement patches that simplify and modernize the driver code. These include replacing `dev_err` calls with `dev_err_probe`, consistent usage of the `BIT` and `GENMASK` macros, leveraging devres helpers for reset management, and improving code readability by marking static data as `const`. v5->v6 - Swicthed to use `linux/bits.h` in patch 4/10 - Dropped `linux/bits.h` in patch 5/10 - Swicthed to use `linux/time.h` in patch 8/10 - Included RB/TB tags - Included I2C bus recovery patch v4->v5 - Only patch 1/10 was sent out to ML v3->v4 -> Created new patch 1/9 -> Dropped RB/TB tags from patch 8/9 -> Dropped `unsigned long` cast and updated the format specifier while printing bus frequency -> Included required headers -> Propogated the error v1->v2 - Fixed review comments and collected RB tags from Geert v1: https://lore.kernel.org/all/20241213175828.909987-1-prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx/ Cheers, Prabhakar Lad Prabhakar (10): i2c: riic: Introduce a separate variable for IRQ i2c: riic: Use dev_err_probe in probe and riic_init_hw functions i2c: riic: Use local `dev` pointer in `dev_err_probe()` i2c: riic: Use BIT macro consistently i2c: riic: Use GENMASK() macro for bitmask definitions i2c: riic: Make use of devres helper to request deasserted reset line i2c: riic: Mark riic_irqs array as const i2c: riic: Use predefined macro and simplify clock tick calculation i2c: riic: Add `riic_bus_barrier()` to check bus availability i2c: riic: Implement bus recovery drivers/i2c/busses/i2c-riic.c | 234 +++++++++++++++++++++++----------- 1 file changed, 162 insertions(+), 72 deletions(-) -- 2.43.0