zephyr/drivers/i2c
Tom Burdick 7b1349cfe6 stats: i2c: I2C stats
Adds the ability for I2C drivers to report synchronous transfer stats
using a I2C specific macro to define the device instance.

The macro creates a container for device_state which allows for per
instance device class common data structure to be used in the device
class api (ex: i2c.h). This is used to maintain per driver instance
stats for all i2c drivers. This is a reusable idea across other device
classes as desired.

Using Kconfig device class stats may be turned on/off individually
this way as well, in this case I2C_STATS.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2021-12-04 07:22:56 -05:00
..
slave drivers: i2c: slave: group into i2c static library 2021-08-17 06:06:03 -04:00
CMakeLists.txt drivers: i2c: introduce new Telink B91 I2C driver 2021-09-01 06:36:56 -04:00
i2c_b91.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_bitbang.c
i2c_bitbang.h
i2c_cc13xx_cc26xx.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_cc32xx.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_common.c
i2c_dw_registers.h
i2c_dw.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_dw.h
i2c_emul.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_esp32.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_gecko.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_gpio.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_handlers.c i2c: Add get_config to I2C API 2021-11-02 16:46:33 +01:00
i2c_imx.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_ite_it8xxx2.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_litex.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_ll_stm32_v1.c
i2c_ll_stm32_v2.c
i2c_ll_stm32.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_ll_stm32.h drivers/i2c: stm32: use new pinctrl API 2021-11-26 11:36:42 +01:00
i2c_lpc11u6x.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_lpc11u6x.h
i2c_mchp_xec_v2.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_mchp_xec.c
i2c_mcux_flexcomm.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_mcux_lpi2c.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_mcux.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_nios2.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_npcx_controller.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_npcx_controller.h i2c: npcx: Add get_config function 2021-11-02 16:46:33 +01:00
i2c_npcx_port.c i2c: npcx: Add get_config function 2021-11-02 16:46:33 +01:00
i2c_nrfx_twi.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_nrfx_twim.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_rcar.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_rv32m1_lpi2c.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_sam0.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_sam4l_twim.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_sam_twi.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_sam_twihs.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_sbcon.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_shell.c
i2c_sifive.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_tca9546a.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c_test.c stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
i2c-priv.h
Kconfig stats: i2c: I2C stats 2021-12-04 07:22:56 -05:00
Kconfig.b91 drivers: i2c: introduce new Telink B91 I2C driver 2021-09-01 06:36:56 -04:00
Kconfig.cc13xx_cc26xx
Kconfig.dw
Kconfig.esp32 driver: esp32: I2C code refactoring 2021-11-05 14:07:09 -04:00
Kconfig.gpio
Kconfig.i2c_emul
Kconfig.it8xxx2
Kconfig.litex
Kconfig.lpc11u6x
Kconfig.npcx
Kconfig.nrfx
Kconfig.rcar drivers: i2c: add Renesas R-Car driver 2021-07-14 20:58:50 -04:00
Kconfig.sam0
Kconfig.sbcon
Kconfig.sifive
Kconfig.stm32
Kconfig.tca9546a driver: i2c: Add TCA9546a I2C switch driver 2021-08-05 11:48:30 +02:00
Kconfig.test
Kconfig.xec Microchip: MEC172x: I2C driver 2021-08-25 13:07:45 -04:00