u-boot/drivers/i2c
Patrick Delaunay 1fd9eb68d6 i2c: stm32f7: move driver data of each instance in a privdata
Today all the I2C instance point on the same global
variable stm32_i2c_setup according the compatible: i2c_priv->setup =
pointer to the same driver data.

This patch changes this driver data (stm32f7_setup and stm32mp15_setup)
to a const struct and move the timing struct 'setup' as element of i2c
privdata, initialized in stm32_ofdata_to_platdata() with the driver
configuration data.

This patch solves issues when several I2C instance have not the same
clock source or not the same configuration: each timing setup is saved
is the I2C privdata.

Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2021-10-08 08:42:40 +02:00
..
muxes dm: define LOG_CATEGORY for all uclass 2021-07-06 10:38:03 -06: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
ast_i2c.c dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07: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 i2c: at91: fix crash when using 'i2c probe' 2021-02-21 06:05:08 +01: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 dm: i2c: use CONFIG_IS_ENABLED macro for DM_I2C/DM_I2C_GPIO 2021-02-21 06:08:00 +01: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 arm: Remove spear600 boards and the rest of SPEAr support 2021-07-07 22:22:42 -04:00
designware_i2c.h dm: treewide: Rename ofdata_to_platdata() to of_to_plat() 2020-12-13 16:51:09 -07:00
designware_i2c_pci.c i2c: desigware: Add an alias for Intel Apollo Lake 2021-01-30 14:25:41 -07:00
exynos_hs_i2c.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
fsl_i2c.c dm: i2c: use CONFIG_IS_ENABLED macro for DM_I2C/DM_I2C_GPIO 2021-02-21 06:08:00 +01:00
i2c-cdns.c i2c: i2c_cdns: Enable i2c clock 2021-02-23 14:56:59 +01: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 dm: define LOG_CATEGORY for all uclass 2021-07-06 10:38:03 -06:00
i2c-gpio.c i2c: i2c-gpio: Support the named GPIO binding 2021-08-22 11:03:55 +02:00
i2c-uclass.c i2c: add dm_i2c_reg_clrset 2021-08-22 10:52:53 +02:00
i2c-uniphier-f.c dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07: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 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
ihs_i2c.c dm: i2c: use CONFIG_IS_ENABLED macro for DM_I2C/DM_I2C_GPIO 2021-02-21 06:08:00 +01:00
imx_lpi2c.c dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07:00
intel_i2c.c i2c: Update for new sequence numbers 2020-12-18 20:32:21 -07:00
iproc_i2c.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
iproc_i2c.h drivers: i2c: add brcm iproc I2C driver support 2020-04-20 06:52:28 +02:00
Kconfig i2c: Create a new Kconfig for I2C 2021-07-28 14:29:37 -04:00
kona_i2c.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
lpc32xx_i2c.c lpc32xx: i2c: finish DM/OF code 2021-07-06 14:12:15 -04:00
Makefile pci: Drop DM_PCI 2021-09-13 18:23:13 -04:00
meson_i2c.c dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07:00
mv_i2c.c dm: i2c: use CONFIG_IS_ENABLED macro for DM_I2C/DM_I2C_GPIO 2021-02-21 06:08:00 +01: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 dm: i2c: use CONFIG_IS_ENABLED macro for DM_I2C/DM_I2C_GPIO 2021-02-21 06:08:00 +01:00
mxc_i2c.c dm: i2c: use CONFIG_IS_ENABLED macro for DM_I2C/DM_I2C_GPIO 2021-02-21 06:08:00 +01:00
nx_i2c.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
ocores_i2c.c riscv: Add missing sentinel in ocores_i2c.c 2021-09-07 10:34:29 +08:00
octeon_i2c.c octeon: Don't attempt to set the sequence number 2020-12-18 20:32:21 -07:00
omap24xx_i2c.c dm: i2c: use CONFIG_IS_ENABLED macro for DM_I2C/DM_I2C_GPIO 2021-02-21 06:08:00 +01:00
omap24xx_i2c.h i2c: omap: Update to use standard enums for speed 2020-01-27 07:23:26 +01:00
rcar_i2c.c dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07: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 dm: Rename U_BOOT_DRIVER_ALIAS to DM_DRIVER_ALIAS 2021-01-05 12:26:35 -07:00
s3c24x0_i2c.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05: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 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
soft_i2c.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
stm32f7_i2c.c i2c: stm32f7: move driver data of each instance in a privdata 2021-10-08 08:42:40 +02: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 dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07:00
xilinx_xiic.c dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07:00