1
0
Fork 0
mirror of https://github.com/u-boot/u-boot.git synced 2025-04-19 11:24:42 +00:00
u-boot/drivers/i2c
Neil Armstrong 75db9ede12
i2c: Add support for Qualcomm Generic Interface (GENI) I2C controller
Add Support for the Qualcomm Generic Interface (GENI) I2C interface
found on newer Qualcomm SoCs.

The Generic Interface (GENI) is a firmware based Qualcomm Universal
Peripherals (QUP) Serial Engine (SE) Wrapper which can support multiple
bus protocols depending on the firmware type loaded at early boot time
based on system configuration.

It also supports the "I2C Master Hub" which is a single function Wrapper
that only FIFO mode I2C.

It replaces the fixed-function QUP Wrapper found on older SoCs.

The geni-se.h containing the generic GENI Serial Engine registers defines
is imported from Linux.

Only FIFO mode is implemented, neither SE DMA nor GPI DMA are implemented.

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
2024-04-23 13:29:32 +02:00
..
muxes spl: Ensure all SPL symbols in Kconfig have some SPL dependency 2022-07-07 09:29:08 -04:00
acpi_i2c.c dm: treewide: Rename ofdata_to_platdata() to of_to_plat() 2020-12-13 16:51:09 -07:00
acpi_i2c.h dm: treewide: Rename ofdata_to_platdata() to of_to_plat() 2020-12-13 16:51:09 -07:00
ast2600_i2c.c i2c:aspeed:support ast2600 i2c new register mode driver 2023-02-13 09:57:49 +01:00
ast2600_i2c.h i2c:aspeed:support ast2600 i2c new register mode driver 2023-02-13 09:57:49 +01:00
ast_i2c.c i2c: ast_i2c: Remove SCL direct drive mode 2022-07-19 13:46:28 +02:00
ast_i2c.h i2c: ast_i2c: Update to use standard enums for speed 2020-01-27 07:22:41 +01:00
at91_i2c.c treewide: Remove clk_free 2024-01-29 22:35:02 -05:00
at91_i2c.h common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
cros_ec_ldo.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
cros_ec_tunnel.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
davinci_i2c.c global: Move remaining CONFIG_SYS_* to CFG_SYS_* 2022-12-05 16:06:08 -05:00
davinci_i2c.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
designware_i2c.c treewide: Remove clk_free 2024-01-29 22:35:02 -05:00
designware_i2c.h stm32mp1: fix reference for STMicroelectronics 2022-06-17 14:12:27 +02:00
designware_i2c_pci.c i2c: designware_i2c: remove apparently redundant read of 'i2c, speeds' DT property 2023-04-11 06:43:33 +02:00
exynos_hs_i2c.c arm: samsung: Migrate a number of symbols to Kconfig 2022-06-28 17:04:37 -04:00
fsl_i2c.c i2c: fsl_i2c: fix m68k transferts 2023-04-11 06:51:56 +02:00
geni_i2c.c i2c: Add support for Qualcomm Generic Interface (GENI) I2C controller 2024-04-23 13:29:32 +02:00
i2c-cdns.c I2C: cdns: Fix broken retry mechanism on arbitration lost. 2023-06-05 06:54:25 +02:00
i2c-cortina.c dm: treewide: Rename ofdata_to_platdata() to of_to_plat() 2020-12-13 16:51:09 -07:00
i2c-cortina.h i2c: i2c-cortina: added CAxxxx I2C support 2020-07-09 06:02:44 +02:00
i2c-emul-uclass.c spl: Allow enabling SPL_OF_REAL and SPL_OF_PLATDATA at the same time 2023-10-17 20:50:52 -04:00
i2c-gpio.c common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
i2c-microchip.c treewide: Remove clk_free 2024-01-29 22:35:02 -05:00
i2c-uclass.c i2c: Bugfix in i2c_get_chip_by_phandle() 2023-11-27 18:54:56 -05:00
i2c-uniphier-f.c i2c: uniphier-f: correct error recovery 2023-01-06 08:14:19 -05:00
i2c-uniphier.c dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07:00
i2c-versatile.c i2c: Update for new sequence numbers 2020-12-18 20:32:21 -07:00
i2c_core.c global: Migrate CONFIG_SYS_I2C_DIRECT_BUS to CFG 2022-12-23 10:15:12 -05:00
ihs_i2c.c i2c: ihs: intel: Fix typo in comments (actual) 2022-05-10 06:47:13 +02:00
imx_lpi2c.c i2c: imx_lpi2c: Fix misuse the IS_ENABLED for DM clock 2023-04-11 06:45:29 +02:00
intel_i2c.c i2c: ihs: intel: Fix typo in comments (actual) 2022-05-10 06:47:13 +02:00
iproc_i2c.c common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
iproc_i2c.h drivers: i2c: add brcm iproc I2C driver support 2020-04-20 06:52:28 +02:00
Kconfig i2c: Add support for Qualcomm Generic Interface (GENI) I2C controller 2024-04-23 13:29:32 +02:00
lpc32xx_i2c.c global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
Makefile i2c: Add support for Qualcomm Generic Interface (GENI) I2C controller 2024-04-23 13:29:32 +02:00
meson_i2c.c dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07:00
mtk_i2c.c drivers: mediatek: Fix error handling in mtk_i2c_do_transfer 2023-09-22 15:54:39 -04:00
mv_i2c.c i2c: Remove CONFIG_I2C_MULTI_BUS 2022-12-22 10:31:48 -05:00
mv_i2c.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
mvtwsi.c sunxi: introduce NCAT2 generation model 2023-10-22 23:41:46 +01:00
mxc_i2c.c i2c: mxc_i2c: Use hex notation for the base address 2023-02-13 09:57:30 +01:00
npcm_i2c.c treewide: Remove clk_free 2024-01-29 22:35:02 -05:00
nx_i2c.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
ocores_i2c.c treewide: Remove clk_free 2024-01-29 22:35:02 -05:00
octeon_i2c.c global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
omap24xx_i2c.c common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
omap24xx_i2c.h i2c: omap: Update to use standard enums for speed 2020-01-27 07:23:26 +01:00
qup_i2c.c i2c: Add support for Qualcomm I2C driver 2023-02-10 12:50:00 -05:00
rcar_i2c.c i2c: rcar_i2c: Add R-Car Gen4 support 2023-04-07 17:13:27 +02:00
rcar_iic.c dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07:00
rk_i2c.c i2c: rockchip: De-initialize the bus after start bit failure 2023-06-05 06:52:46 +02:00
rz_riic.c i2c: rzg2l: Add I2C driver for RZ/G2L family 2024-02-28 18:42:27 +01:00
s3c24x0_i2c.c arm: samsung: Migrate a number of symbols to Kconfig 2022-06-28 17:04:37 -04:00
s3c24x0_i2c.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sandbox_i2c.c sandbox: i2c: Move priv into a header file 2021-01-05 12:24:41 -07:00
sh_i2c.c rmobile: Drop CONFIG_SH73A0 and associated code 2023-02-07 14:33:49 -05:00
soft_i2c.c global: Remove unused CONFIG defines 2023-01-20 12:27:06 -05:00
stm32f7_i2c.c treewide: Remove clk_free 2024-01-29 22:35:02 -05:00
sun6i_p2wi.c pinctrl: sunxi: remove GPIO_EXTRA_HEADER 2023-10-22 23:40:57 +01:00
sun8i_rsb.c pinctrl: sunxi: remove GPIO_EXTRA_HEADER 2023-10-22 23:40:57 +01:00
synquacer_i2c.c i2c: synquacer: SNI Synquacer I2C controller 2021-07-06 14:07:37 -04:00
tegra186_bpmp_i2c.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
tegra_i2c.c common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
xilinx_xiic.c dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07:00