u-boot/drivers/i2c
Samuel Holland 48457f7ab0 i2c: sun6i_p2wi: Initialize chips in .child_pre_probe
Chips attached to the P2WI bus require an initialization command before
they can be used. (Specifically, this switches the chip from I2C mode
to P2WI mode.) The driver does this in its .probe_chip hook, under the
assumption that .probe_chip is called during child probe. This is not
the case; .probe_chip is only called by dm_i2c_probe, which is intended
for use by board-level code, not for chips with OF nodes.

Since this initialization command must be run before a child chip can be
used, do it before probing each child.

Signed-off-by: Samuel Holland <samuel@sholland.org>
Acked-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2022-04-04 23:24:17 +01:00
..
muxes i2c: muxes: pca954x: add PCA9847 variant 2022-02-01 15:08:07 +05:30
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: add compatible with microchip,sam9x60-i2c 2022-01-13 11:44:07 +02: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 doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
designware_i2c.h doc: replace @return by Return: 2022-01-19 18:11:34 +01: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 Convert CONFIG_SYS_IMMR to Kconfig 2021-12-27 08:41:38 -05: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 treewide: Use OF_REAL instead of !OF_PLATDATA 2021-09-25 09:46:15 -06:00
i2c-gpio.c i2c: i2c-gpio: Support the named GPIO binding 2021-08-22 11:03:55 +02:00
i2c-microchip.c i2c: Add Microchip PolarFire SoC I2C driver 2021-12-02 16:43:51 +08:00
i2c-uclass.c i2c: fix always-true condition in i2c_probe_chip() 2022-03-23 07:27:37 +01: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 Convert CONFIG_SYS_I2C_EARLY_INIT to Kconfig 2021-08-30 14:10:07 -04:00
ihs_i2c.c i2c: Remove non-DM code from ihs_i2c.c 2021-08-30 14:10:07 -04: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: Add Microchip PolarFire SoC I2C driver 2021-12-02 16:43:51 +08: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 i2c: Add Microchip PolarFire SoC I2C driver 2021-12-02 16:43:51 +08: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 Convert CONFIG_SYS_I2C_SPEED et al to Kconfig 2021-08-30 14:10:07 -04: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 i2c: mvtwsi: Add compatible string for allwinner, sun4i-a10-i2c 2022-01-30 01:03:37 +00:00
mxc_i2c.c WS cleanup: remove excessive empty lines 2021-09-30 08:08:56 -04:00
nx_i2c.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
ocores_i2c.c i2c: ocores: Fix -Wint-to-pointer-cast warning 2021-10-20 10:59:09 +08:00
octeon_i2c.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
omap24xx_i2c.c ti: i2c: fix probe_chip() return value 2022-02-21 08:39:52 -05:00
omap24xx_i2c.h i2c: omap: Update to use standard enums for speed 2020-01-27 07:23:26 +01:00
rcar_i2c.c i2c: rcar_i2c: Enable configuring SCL rise and fall times 2021-09-28 06:34:14 +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 dm: Rename U_BOOT_DRIVER_ALIAS to DM_DRIVER_ALIAS 2021-01-05 12:26:35 -07:00
s3c24x0_i2c.c doc: replace @return by Return: 2022-01-19 18:11:34 +01: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 rcar: i2c: Migrate SYS_I2C_SH to Kconfig 2021-08-30 14:10:07 -04:00
soft_i2c.c i2c: Remove unused additional legacy soft i2c bus support 2021-08-30 14:10:06 -04:00
stm32f7_i2c.c i2c: stm32f7: compute i2cclk only one time 2021-10-08 08:42:41 +02:00
sun6i_p2wi.c i2c: sun6i_p2wi: Initialize chips in .child_pre_probe 2022-04-04 23:24:17 +01:00
sun8i_rsb.c i2c: sun8i_rsb: Only do non-DM pin setup for non-DM I2C 2022-04-04 23:24:16 +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 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