openwrt/target/linux/realtek
Sven Eckelmann ea3d646a08 realtek: dsa: postpone probe due to deferred PHYs
PHY drivers might need access to NVMEM or the filesystem to load
calibration/initialization data. The driver will then return -EPROBE_DEFER
to signal to the device core that the probe should be retried multiple
times again in the 10s driver_deferred_probe_timeout.

But when the switch driver calls dsa_register_switch(), it needs to connect
the PHYs directly. As result, all PHYs without an driver will automatically
get the default driver (either `genphy_c45_driver` or `genphy_driver`)
assigned and initialized. But for PHYs with the additional initialization
data from NVMEM/fs, this will usually result in not working PHYs.

Since there are Realtek based boards with RTL826x PHYs and the new driver
loads the initialization/patch values from rootfs, it is necessary to check
in the beginning of the probe function whether the PHYs are ready and the
probing can continue.

If some driver is still without driver after the deferred probe period
ended, the loading will just continue and the generic PHY drivers will
still be used.

Closes: #22811
Co-authored-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Co-authored-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Link: https://github.com/openwrt/openwrt/pull/23075
Signed-off-by: Robert Marko <robimarko@gmail.com>
2026-04-27 10:36:23 +02:00
..
base-files realtek: rtl930x: add Hasivo S600WP-5GT-2SX-SE 2026-04-24 12:17:26 +02:00
dts realtek: rtl930x: add Hasivo S600WP-5GT-2SX-SE 2026-04-24 12:17:26 +02:00
files-6.18 realtek: dsa: postpone probe due to deferred PHYs 2026-04-27 10:36:23 +02:00
image realtek: rtl930x: add Hasivo S600WP-5GT-2SX-SE 2026-04-24 12:17:26 +02:00
patches-6.18 realtek: fix SMBus Rollball access 2026-04-26 09:51:09 +02:00
profiles
rtl838x realtek: drop support for 6.12 2026-04-11 20:59:10 +02:00
rtl839x realtek: drop support for 6.12 2026-04-11 20:59:10 +02:00
rtl930x realtek: drop support for 6.12 2026-04-11 20:59:10 +02:00
rtl930x_nand realtek: drop support for 6.12 2026-04-11 20:59:10 +02:00
rtl931x realtek: add generic support for Zyxel XS1930 lineup 2026-04-20 11:13:06 +02:00
rtl931x_nand realtek: drop support for 6.12 2026-04-11 20:59:10 +02:00
Makefile realtek: switch to 6.18 2026-04-11 20:59:10 +02:00
modules.mk kernel: mfd: Add Hasivo STC8 mfd 2026-03-01 18:47:27 +01:00