Message ID | 20241227115154.56154-1-prabhakar.mahadev-lad.rj@bp.renesas.com |
---|---|
Headers | show |
Series | i2c: riic: driver cleanup and improvements | expand |
Fri, Dec 27, 2024 at 11:51:53AM +0000, Prabhakar kirjoitti: > From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> > > Replace the hardcoded `1000000000` with the predefined `NANO` macro for > clarity. Simplify the code by introducing a `ns_per_tick` variable to > store `NANO / rate`, reducing redundancy and improving readability. ... > - brl -= t->scl_fall_ns / (1000000000 / rate); > - brh -= t->scl_rise_ns / (1000000000 / rate); > + ns_per_tick = NANO / rate; So, why NANO and not NSEC_PER_SEC? > + brl -= t->scl_fall_ns / ns_per_tick; > + brh -= t->scl_rise_ns / ns_per_tick;
Fri, Dec 27, 2024 at 11:10:22PM +0100, Andi Shyti kirjoitti: ... > > 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 > > merged to i2c/i2c-host. There are some comments, up to you how to proceed, they seem not to be any critical.
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Simplify and modernize the RIIC I2C driver with the following changes: 1. Refactor error handling in `riic_i2c_probe()` and `riic_init_hw()` by replacing `dev_err()` with `dev_err_probe()` and using a local `dev` pointer. 2. Use `BIT()` and `GENMASK()` macros for consistent and clear bit handling. 3. Manage reset lines with `devm_reset_control_get_exclusive()` to simplify resource handling. 4. Mark `riic_irqs` as `const` and simplify clock tick calculations with predefined macros. 5. Add `riic_bus_barrier()` to check bus availability and improve reliability. Lad Prabhakar (8): 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 drivers/i2c/busses/i2c-riic.c | 123 ++++++++++++++++++---------------- 1 file changed, 65 insertions(+), 58 deletions(-)