[PATCH v6 0/4] i2c: npcm: read/write operation, checkpatch

Tyrone Ting
2024-10-11T05:52:39Z

This patchset includes the following fixes:

- Enable the target functionality in the interrupt handling routine
when the i2c transfer is about to finish.
- Correct the read/write operation procedure.
- Introduce a software flag to handle the bus error (BER) condition
which is not caused by the i2c transfer.
- Modify timeout calculation.
- Assign the client address earlier logically.
- Use an i2c frequency table for the frequency parameters assignment.
- Coding style fix.

The NPCM I2C driver is tested on NPCM750 and NPCM845 evaluation boards.

Addressed comments from:
- Andy Shevchenko : https://lore.kernel.org/lkml/CACD3sJYhAYV3zBse5ntF
sQmLV+TpLKtOiyyqgp3g8qeja54Ejw@mail.gmail.com/
- Andy Shevchenko : https://lore.kernel.org/lkml/ZwVcGu3YeJ6pI0sM
@black.fi.intel.com/
- Andy Shevchenko : https://lore.kernel.org/lkml/Zvv3ws1_jUMVnAAJ
@smile.fi.intel.com/

Changes since version 5:
- Correct "EAGAIN" to "-EAGAIN" in the commit message.
- Configure the bus->dest_addr by calling i2c_8bit_addr_from_msg()
and remove the I2C_M_RD flag when calling i2c_recover_bus().
- Fix the commit message which meets a too small wrapping limit.

Changes since version 4:
- Add more description for the codes.
- Modify the term "function" to "function()" in the commit message
and code comments.

Changes since version 3:
- Remove "Bug fixes" in the cover letter title.
- Modify the term "function" to "func()" in the commit message and
code comments.
- Correct the coding style.

Changes since version 2:
- Add more explanations in the commit message and code modification.
- Use lower character names for declarations.
- Remove Fixes tags in commits which are not to fix bugs.

Changes since version 1:
- Restore the npcm_i2caddr array length to fix the smatch warning.
- Remove unused variables.
- Handle the condition where scl_table_cnt reaches to the maximum value.
- Fix the checkpatch warning.

Charles Boyer (1):
i2c: npcm: Enable slave in eob interrupt

Tyrone Ting (3):
i2c: npcm: Modify timeout evaluation mechanism
i2c: npcm: Modify the client address assignment
i2c: npcm: use i2c frequency table

drivers/i2c/busses/i2c-npcm7xx.c | 428 ++++++++++++++++++++++++-------
1 file changed, 332 insertions(+), 96 deletions(-)

base-commit: 663bff1ddfe4ecbba3bcf4a74646bb388b1ad5b2
--
2.34.1