Commit 0bf58eb1 authored by Tali Perry's avatar Tali Perry Committed by Wolfram Sang
Browse files

i2c: npcm: Add tx complete counter



tx_complete counter is used to indicate successful transaction count.
Similar counters for failed tx were previously added.

Signed-off-by: default avatarTali Perry <tali.perry1@gmail.com>
Signed-off-by: default avatarTyrone Ting <kfting@nuvoton.com>
Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
parent 288b2044
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -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;
}