1
0
Fork 0
forked from mirror/openwrt
openwrt/target/linux
Markus Stockhausen 8b969f7e27
realtek: mdio: drop realtek,smi-address property
A phy node in the dts has two properties:

- reg: the (overall) address of the phy
- realtek,smi-address: the address of the phy on its bus

This notation does not align with upstream. reg should be the address
of the phy on its bus. But where to get the overall address that is
needed for register writes to the hardware?

Luckily the mdio driver and the hardware design sync the ports and
phys (overall) addresses. Thus derive missing data from the dts port
nodes (below ethernet-ports). To realize this

- carve out the port mapping into a separate function to align with
  the upstream driver.
- do more sanity checks and catch more inconsistencies
- raise more/better errors via dev_err_probe()

With this commit all dts files must be rewritten as follows:

- if phy has no realtek,smi-address leave it as is
- if phy has realtek,smi-address, write that value into the reg
  property and drop realtek,smi-address.

Remark: This commit might bring some confusion about the phyXX and
phy@YY and <reg=YY> naming convention. To be somehow consistent with
the current port/phy identifiers from now on the dts will have:

- phyXX: where XX matches the port number
- phy@YY: where YY is the phy address on the mdio bus
- <reg=YY>: where YY is the phy address on the mdio bus

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/22236
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2026-03-21 22:26:02 +01:00
..
airoha airoha: backport some missing airoha_eth upstream patches 2026-03-20 13:21:24 +01:00
apm821xx Revert "apm821xx: rename pciex to pcie" 2026-02-10 14:54:23 +01:00
armsr kernel: lift CONFIG_REGULATOR_VEXPRESS 'not set' to generic 2026-02-28 10:12:15 +01:00
at91 kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
ath79 ath79: untag to cpu ports on qxwlan_e558-v2 2026-03-20 13:15:25 +01:00
bcm27xx kernel: refresh patches 2026-03-06 11:33:05 +01:00
bcm47xx kernel: bump 6.12 to 6.12.64 2026-01-15 01:22:47 +01:00
bcm53xx bcm53xx: mr26: fix nvmem MAC override 2026-03-11 12:13:14 +01:00
bcm4908 kernel: disable non layout u-boot,env 2025-11-28 01:20:33 +01:00
bmips Revert "bmips: huawei-hg556a-c: use nvmem for wifi eeprom" 2026-02-20 23:01:29 +01:00
d1 d1: Enable LED driver for D1 builds 2026-01-23 10:35:36 +01:00
econet econet: en7528: add missing flash partition for DASAN H660GM-A Generic 2026-03-01 17:36:01 +01:00
gemini gemini: add support for Teltonika RUT104 2026-02-17 11:27:22 +01:00
generic generic: backport new field_prep()/get() helper for non-const bitmask 2026-03-20 13:21:23 +01:00
imx imx: cortexa53: remove KSZ9477 static driver 2026-03-13 19:59:59 +01:00
ipq40xx ipq40xx: add CONFIG_NVMEM_BLOCK 2026-03-21 10:19:54 +01:00
ipq806x ipq806x: ap3935: fix uboot nvmem 2026-03-10 13:38:33 +01:00
ixp4xx ixp4xx: select the GPIO keys input package 2026-01-28 18:59:47 +01:00
kirkwood kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
lantiq lantiq: convert ralink,mtd-eeprom to nvmem 2026-03-19 11:01:43 +01:00
layerscape kernel: bump 6.12 to 6.12.71 2026-02-14 18:30:02 +01:00
loongarch64 loongarch64: set PREEMPT_NONE as default preemption model 2026-01-24 22:54:29 +01:00
malta malta: convert to Device macro image building 2026-02-11 00:08:34 +01:00
mediatek mediatek: update Tenda BE12 Pro support 2026-03-18 13:59:33 +08:00
microchipsw microchipsw: lan969x: tactical-1000: fix SFP I2C buses 2026-03-12 11:05:40 +01:00
mpc85xx mpc85xx: fix dtc warnings 2026-03-06 12:06:49 +01:00
mvebu mvebu: select CPU_LITTLE_ENDIAN 2026-03-16 01:00:22 +01:00
mxs kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
octeon kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
omap kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
pistachio kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
qoriq package: uboot-qoriq: fix T4240RDB u-boot selection 2026-01-12 13:59:30 +01:00
qualcommax qualcommax: ipq60xx: add Link NN6000v1/v2 support 2026-03-21 22:22:39 +01:00
qualcommbe generic: add CONFIG_REGULATOR_QCOM_LABIBB 2026-02-27 11:16:55 +01:00
ramips ramips: kernel: drop ip_fast_csum() dead loop fix 2026-03-20 21:55:20 +01:00
realtek realtek: mdio: drop realtek,smi-address property 2026-03-21 22:26:02 +01:00
rockchip kernel: bump 6.12 to 6.12.69 2026-02-07 17:20:33 +01:00
sifiveu kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
siflower treewide: constify mdio_bus 2026-03-13 19:56:20 +01:00
starfive kernel: refresh patches 2026-03-06 11:33:05 +01:00
stm32 kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
sunxi sunxi: add PineCube support 2026-03-21 16:43:47 +01:00
tegra kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
uml kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
x86 x86: base-files add support for Sophos 210r3 and 230r2 2026-02-12 23:55:29 +01:00
zynq kernel: lift CONFIG_REGULATOR_VEXPRESS 'not set' to generic 2026-02-28 10:12:15 +01:00
Makefile