Message ID | 20220517101142.28421-6-warp5tw@gmail.com |
---|---|
State | New |
Headers | show |
Series | i2c: npcm: Bug fixes timeout, spurious interrupts | expand |
On Tue, May 17, 2022 at 06:11:37PM +0800, Tyrone Ting wrote: > From: Tali Perry <tali.perry1@gmail.com> > > tx_complete counter is used to indicate successful transaction > count. > Similar counters for failed tx were previously added. > > Fixes: 56a1485b102e ("i2c: npcm7xx: Add Nuvoton NPCM I2C controller driver") > Signed-off-by: Tali Perry <tali.perry1@gmail.com> > Signed-off-by: Tyrone Ting <kfting@nuvoton.com> Applied to for-next, thanks! I dropped the Fixes tag, doesn't look like a bugfix to me.
Hi Wolfram: Thank you for your help and review. Wolfram Sang <wsa@kernel.org> 於 2022年5月21日 週六 下午1:52寫道: > > On Tue, May 17, 2022 at 06:11:37PM +0800, Tyrone Ting wrote: > > From: Tali Perry <tali.perry1@gmail.com> > > > > tx_complete counter is used to indicate successful transaction > > count. > > Similar counters for failed tx were previously added. > > > > Fixes: 56a1485b102e ("i2c: npcm7xx: Add Nuvoton NPCM I2C controller driver") > > Signed-off-by: Tali Perry <tali.perry1@gmail.com> > > Signed-off-by: Tyrone Ting <kfting@nuvoton.com> > > Applied to for-next, thanks! > > I dropped the Fixes tag, doesn't look like a bugfix to me. > Best Regards, Tyrone
diff --git a/drivers/i2c/busses/i2c-npcm7xx.c b/drivers/i2c/busses/i2c-npcm7xx.c index 489b4c8ad0ee..36f8aa7ab106 100644 --- a/drivers/i2c/busses/i2c-npcm7xx.c +++ b/drivers/i2c/busses/i2c-npcm7xx.c @@ -314,6 +314,7 @@ struct npcm_i2c { u64 rec_fail_cnt; u64 nack_cnt; u64 timeout_cnt; + u64 tx_complete_cnt; }; static inline void npcm_i2c_select_bank(struct npcm_i2c *bus, @@ -684,6 +685,8 @@ static void npcm_i2c_callback(struct npcm_i2c *bus, switch (op_status) { case I2C_MASTER_DONE_IND: bus->cmd_err = bus->msgs_num; + if (bus->tx_complete_cnt < ULLONG_MAX) + bus->tx_complete_cnt++; fallthrough; case I2C_BLOCK_BYTES_ERR_IND: /* Master tx finished and all transmit bytes were sent */ @@ -2223,6 +2226,7 @@ static void npcm_i2c_init_debugfs(struct platform_device *pdev, debugfs_create_u64("rec_succ_cnt", 0444, d, &bus->rec_succ_cnt); debugfs_create_u64("rec_fail_cnt", 0444, d, &bus->rec_fail_cnt); debugfs_create_u64("timeout_cnt", 0444, d, &bus->timeout_cnt); + debugfs_create_u64("tx_complete_cnt", 0444, d, &bus->tx_complete_cnt); bus->debugfs = d; }