zephyr/drivers/i2c
Tim Lin 159fa4888b ITE: drivers/i2c: Channel C/i2c2 cannot use FIFO mode
Sometimes, channel C may write wrong register to the target device.
This issue occurs when FIFO2 is enabled on channel C. The problem
arises because FIFO2 is shared between channel B and channel C.
FIFO2 will be disabled when data access is completed, at which point
FIFO2 is set to the default configuration for channel B.
The byte counter of FIFO2 may be affected by channel B. There is a
chance that channel C may encounter wrong register being written due
to the FIFO2 byte counter wrong write after channel B's write operation.

The current workaround is that channel C cannot use FIFO mode.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2023-08-04 10:45:48 +02:00
..
target drivers/i2c/target/eeprom_target: Add buffer mode callback function 2023-07-11 15:50:13 +02:00
CMakeLists.txt drivers: i2c: nrfx: Clean up driver instantiation 2023-07-25 13:41:51 +02:00
i2c-priv.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
i2c_andes_atciic100.c drivers: i2c: add error handling 2023-07-13 09:23:39 +02:00
i2c_andes_atciic100.h drivers: i2c: add thread-safe semaphore 2023-07-13 09:23:39 +02:00
i2c_b91.c i2c: Update API terminology 2022-06-29 17:51:31 +02:00
i2c_bitbang.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
i2c_bitbang.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
i2c_cc13xx_cc26xx.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
i2c_cc32xx.c drivers: i2c: cc32xx: enable I2C module clock 2023-06-17 07:55:43 -04:00
i2c_common.c i2c: Improve formatting of i2c dump function 2023-01-26 14:55:44 -05:00
i2c_dw.c drivers: i2c: i2c_dw: add bus mutex 2023-04-07 13:17:43 +02:00
i2c_dw.h drivers: i2c: i2c_dw: add bus mutex 2023-04-07 13:17:43 +02:00
i2c_dw_registers.h drivers: i2c: added slave support for DW 2022-02-21 19:42:07 -05:00
i2c_emul.c emul: Only add enabled DT nodes to bus emulators 2023-07-12 09:25:18 +02:00
i2c_esp32.c soc: xtensa,riscv: esp32xx: refactor folder structure 2023-07-25 18:12:33 +02:00
i2c_gd32.c treewide: Update clock control API usage 2023-04-05 10:55:46 +02:00
i2c_gecko.c i2c: Applied clang-format to i2c_gecko.c 2023-07-25 10:44:47 +02:00
i2c_gpio.c drivers: add mutex to the i2c-gpio driver. 2023-05-10 16:51:14 +09:00
i2c_handlers.c i2c: Update API terminology 2022-06-29 17:51:31 +02:00
i2c_ifx_cat1.c drivers: i2c: Add Infineon CAT1 i2c driver 2023-04-20 10:44:18 +02:00
i2c_ifx_xmc4.c driver: i2c: infineon: Adding XMC4 I2C driver 2023-07-11 09:43:19 +02:00
i2c_imx.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
i2c_ite_enhance.c ITE: drivers/i2c: Add I2C target driver used buffer mode 2023-07-11 15:50:13 +02:00
i2c_ite_it8xxx2.c ITE: drivers/i2c: Channel C/i2c2 cannot use FIFO mode 2023-08-04 10:45:48 +02:00
i2c_litex.c drivers: i2c: i2c_litex: Use LiteX HAL 2022-05-27 15:27:11 -07:00
i2c_ll_stm32.c stm32,i2c: Fix large I2C transactions on I2C V1 2023-06-20 10:43:36 +00:00
i2c_ll_stm32.h stm32,i2c: Fix large I2C transactions on I2C V1 2023-06-20 10:43:36 +00:00
i2c_ll_stm32_v1.c stm32,i2c: Fix large I2C transactions on I2C V1 2023-06-20 10:43:36 +00:00
i2c_ll_stm32_v2.c stm32,i2c: Fix large I2C transactions on I2C V1 2023-06-20 10:43:36 +00:00
i2c_lpc11u6x.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
i2c_lpc11u6x.h drivers: i2c: lpc11u6x: Remove DT_LABEL usage 2022-06-30 10:32:33 +02:00
i2c_mchp_mss.c drivers: i2c: add Microchip PolarFire SoC I2C driver 2023-06-23 12:31:36 -04:00
i2c_mchp_xec.c drivers: i2c: microchip: I2C reset fix 2023-05-05 16:16:01 +02:00
i2c_mchp_xec_v2.c drivers: i2c: microchip: I2C reset fix 2023-05-05 16:16:01 +02:00
i2c_mcux.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
i2c_mcux_flexcomm.c drivers: all: mcux: remove conditional support for pinctrl 2023-04-24 13:34:22 +02:00
i2c_mcux_lpi2c.c drivers: i2c_mcux: update to compatible with S32K344 2023-07-27 12:32:07 -05:00
i2c_nios2.c include: add missing kernel.h include 2022-10-11 18:05:17 +02:00
i2c_npcx_controller.c driver: npcx: i2c: add i2c target mode support for npcx i2c drivers 2023-05-25 16:32:07 -04:00
i2c_npcx_controller.h driver: npcx: i2c: add i2c target mode support for npcx i2c drivers 2023-05-25 16:32:07 -04:00
i2c_npcx_port.c driver: npcx: i2c: set a dedicated priority for the port driver 2023-05-26 14:08:12 -04:00
i2c_nrfx_twi.c drivers: i2c: nrfx: Clean up driver instantiation 2023-07-25 13:41:51 +02:00
i2c_nrfx_twim.c drivers: i2c: i2c_nrfx_twim: Utilize memory-region prop from devicetree 2023-07-26 09:36:31 +02:00
i2c_rcar.c treewide: Update clock control API usage 2023-04-05 10:55:46 +02:00
i2c_rtio.c i2c: Add RTIO support to the I2C API 2023-05-19 16:10:51 +02:00
i2c_rv32m1_lpi2c.c drivers: i2c: rv32m1: Fix compilation errors 2023-04-25 08:55:57 +00:00
i2c_sam0.c drivers: i2c: sam0: add support for I2C_MSG_RESTART 2023-03-09 09:22:02 +01:00
i2c_sam4l_twim.c treewide: Update clock control API usage 2023-04-05 10:55:46 +02:00
i2c_sam_twi.c treewide: Update clock control API usage 2023-04-05 10:55:46 +02:00
i2c_sam_twihs.c treewide: Update clock control API usage 2023-04-05 10:55:46 +02:00
i2c_sam_twihs_rtio.c i2c: SAM Add RTIO support for I2C 2023-05-19 16:10:51 +02:00
i2c_sbcon.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
i2c_sc18im704.c drivers: move to timepoint API 2023-07-25 09:12:26 +02:00
i2c_sc18im704.h drivers: i2c: Add NXP SC18IM704 I2C support 2023-04-03 20:02:51 +02:00
i2c_shell.c i2c: shell: Fix shell error output 2023-05-19 10:06:38 +02:00
i2c_sifive.c i2c: Update API terminology 2022-06-29 17:51:31 +02:00
i2c_smartbond.c drivers: i2c: Add driver for smartbond DA1469x device family 2023-04-07 10:09:37 -05:00
i2c_tca954x.c drivers: i2c: tca954x: Add build assert avoiding prio issues 2023-07-11 14:46:23 +02:00
i2c_test.c device: remove redundant init functions 2023-04-19 10:00:25 +02:00
i2c_xilinx_axi.c i2c: i2c_xilinx_axi: Fix armclang compile warning 2023-04-21 16:28:09 +02:00
i2c_xilinx_axi.h drivers: i2c: add Xilinx AXI I2C driver 2023-04-17 11:39:21 +02:00
Kconfig driver: i2c: infineon: Adding XMC4 I2C driver 2023-07-11 09:43:19 +02:00
Kconfig.andes_atciic100 drivers: i2c: add Andes atciic100 driver 2022-09-01 10:29:12 +02:00
Kconfig.b91 drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.cc13xx_cc26xx drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.dw i2c: Remove unncessary HAS_I2C_DW Kconfig symbol 2022-08-01 18:01:44 +02:00
Kconfig.esp32 drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.gd32 drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.gpio drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.i2c_emul emul: Make ESPI/I2C_EMUL depend on EMUL 2023-05-08 16:20:52 +02:00
Kconfig.ifx_cat1 drivers: i2c: Add Infineon CAT1 i2c driver 2023-04-20 10:44:18 +02:00
Kconfig.ifx_xmc4 driver: i2c: infineon: Adding XMC4 I2C driver 2023-07-11 09:43:19 +02:00
Kconfig.it8xxx2 ITE: drivers/i2c: Channel C/i2c2 cannot use FIFO mode 2023-08-04 10:45:48 +02:00
Kconfig.litex drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.lpc11u6x drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.mchp_mss drivers: i2c: add Microchip PolarFire SoC I2C driver 2023-06-23 12:31:36 -04:00
Kconfig.npcx driver: npcx: i2c: set a dedicated priority for the port driver 2023-05-26 14:08:12 -04:00
Kconfig.nrfx drivers: i2c: nrfx: Clean up driver instantiation 2023-07-25 13:41:51 +02:00
Kconfig.rcar drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.sam0 drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.sam_twihs i2c: SAM Add RTIO support for I2C 2023-05-19 16:10:51 +02:00
Kconfig.sbcon drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.sc18im704 drivers: i2c: Add NXP SC18IM704 I2C support 2023-04-03 20:02:51 +02:00
Kconfig.sifive drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.smartbond drivers: i2c: Add driver for smartbond DA1469x device family 2023-04-07 10:09:37 -05:00
Kconfig.stm32 drivers: i2c: stm32: Add I2C support for STM32C0-series 2023-05-24 16:40:07 +02:00
Kconfig.tca954x drivers: i2c: tca954x: Add build assert avoiding prio issues 2023-07-11 14:46:23 +02:00
Kconfig.test drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.xec drivers: i2c: Update drivers to use devicetree Kconfig symbol 2022-07-28 16:12:43 -05:00
Kconfig.xilinx_axi drivers: i2c: add Xilinx AXI I2C driver 2023-04-17 11:39:21 +02:00