u-boot/drivers/i2c
Venkatesh Yadav Abbarapu 903eb12323 i2c: mux: Fix the crash when the i2c-arbitrator node is present
Observing the crash when we add the i2c-arbitrator node in the device
tree as per the DT bindings. The issue is with the child node of
i2c-arbitrator@72 i.e., i2c@f1950000->i2c-arbitrator@72->i2c-arb, as the
arbitrator uses the uclass of mux(UCLASS_I2C_MUX) and the mux uclass driver
checks for the "reg" property using the i2c_mux_child_post_bind() function,
if it won't find the "reg" property it will return -EINVAL which is leading
to the crash.
So, add the logic to check whether the  child node has the "reg" property,
if the "reg" property exists then read the "reg" and update the channel.

https://www.kernel.org/doc/Documentation/devicetree/bindings/i2c/i2c-arb.txt

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
2025-06-24 08:18:08 -06:00
..
muxes i2c: mux: Fix the crash when the i2c-arbitrator node is present 2025-06-24 08:18:08 -06:00
acpi_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
acpi_i2c.h dm: treewide: Rename ofdata_to_platdata() to of_to_plat() 2020-12-13 16:51:09 -07:00
adi_i2c.c i2c: Add support for ADI SC5XX-family I2C peripheral 2025-03-12 10:24:58 -06:00
ast2600_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
ast2600_i2c.h i2c:aspeed:support ast2600 i2c new register mode driver 2023-02-13 09:57:49 +01:00
ast_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06: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 Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
at91_i2c.h common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
cros_ec_ldo.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
cros_ec_tunnel.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
davinci_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06: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_pci.c xpl: Rename spl_phase() to xpl_phase() 2024-10-11 11:44:47 -06:00
designware_i2c.c i2c: designware_i2c Return -ETIMEDOUT for timeout errors 2025-06-02 11:02:58 +02:00
designware_i2c.h stm32mp1: fix reference for STMicroelectronics 2022-06-17 14:12:27 +02:00
exynos_hs_i2c.c i2c: samsung: Support platforms other than EXYNOS4 and EXYNOS5 2024-08-09 14:46:05 +02:00
fsl_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
geni_i2c.c i2c: Add support for Qualcomm Generic Interface (GENI) I2C controller 2024-04-23 13:29:32 +02:00
i2c_core.c i2c: Remove CFG_SYS_I2C_DIRECT_BUS 2024-08-13 06:23:15 +02:00
i2c-cdns.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
i2c-cortina.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
i2c-cortina.h i2c: i2c-cortina: added CAxxxx I2C support 2020-07-09 06:02:44 +02:00
i2c-emul-uclass.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
i2c-gpio.c i2c: i2c-gpio: add support for i2c-gpio,sda-output-only 2024-10-21 06:32:40 +02:00
i2c-microchip.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
i2c-uclass.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
i2c-uniphier-f.c i2c: uniphier-f: correct error recovery 2023-01-06 08:14:19 -05:00
i2c-uniphier.c drivers: i2c: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
i2c-versatile.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
ihs_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
imx_lpi2c.c i2c: imx_lpi2c: Support read transfers longer than 256 bytes 2024-08-09 14:46:49 +02:00
intel_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
iproc_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
iproc_i2c.h drivers: i2c: add brcm iproc I2C driver support 2020-04-20 06:52:28 +02:00
Kconfig drivers: i2c: Kconfig: Add CONFIG_SYS_I2C_OMAP24XX_REPEATED_START 2025-04-22 13:03:48 +02:00
lpc32xx_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
Makefile Kbuild: Always use $(PHASE_) 2025-04-11 12:16:44 -06:00
meson_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
mtk_i2c.c i2c: mediatek: remove duplicate entry in mt_i2c_regs_v1[] 2025-04-22 13:04:22 +02:00
mv_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06: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 Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
mxc_i2c.c i2c: mxc_i2c: Convert to use livetree API for fdt access 2024-10-25 09:07:39 -03:00
npcm_i2c.c treewide: Remove clk_free 2024-01-29 22:35:02 -05:00
nx_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
ocores_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
octeon_i2c.c global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
omap24xx_i2c.c i2c: omap24xx_i2c: support CONFIG for repeated start in DM_I2C xfer 2025-04-22 13:03:43 +02:00
omap24xx_i2c.h i2c: omap: Update to use standard enums for speed 2020-01-27 07:23:26 +01:00
qup_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
rcar_i2c.c drivers: i2c: Remove duplicate newlines 2024-07-22 10:53:05 -06:00
rcar_iic.c i2c: renesas: Fix R-Car spelling 2024-12-11 08:36:24 +01:00
rk_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
rz_riic.c i2c: rzg2l: include u-boot/schedule.h 2024-10-23 06:52:38 +02:00
s3c24x0_i2c.c i2c: samsung: Support platforms other than EXYNOS4 and EXYNOS5 2024-08-09 14:46:05 +02:00
s3c24x0_i2c.h i2c: samsung: Support platforms other than EXYNOS4 and EXYNOS5 2024-08-09 14:46:05 +02:00
sandbox_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
sh_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
soft_i2c.c i2c: Drop reference to SYS_I2C_INIT_BOARD 2024-08-13 06:14:36 +02:00
stm32f7_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
sun6i_p2wi.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
sun8i_rsb.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
synquacer_i2c.c i2c: synquacer: SNI Synquacer I2C controller 2021-07-06 14:07:37 -04:00
tegra186_bpmp_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
tegra_i2c.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00
xilinx_xiic.c Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet" 2024-05-20 13:35:03 -06:00