mbox series

[0/9] Add support for I2C bus recovery for riic driver

Message ID 20241213175828.909987-1-prabhakar.mahadev-lad.rj@bp.renesas.com
Headers show
Series Add support for I2C bus recovery for riic driver | expand

Message

Prabhakar Dec. 13, 2024, 5:58 p.m. UTC
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>

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`.

Cheers,
Prabhakar

Lad Prabhakar (9):
  i2c: riic: Replace dev_err with dev_err_probe in probe function
  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 | 222 ++++++++++++++++++++++++----------
 1 file changed, 155 insertions(+), 67 deletions(-)