]> git.ipfire.org Git - thirdparty/openwrt.git/commit
realtek: rtl930x: Fix bringup of SFP modules 19582/head
authorHarshal Gohel <hg@simonwunderlich.de>
Fri, 25 Jul 2025 11:50:36 +0000 (13:50 +0200)
committerRobert Marko <robimarko@gmail.com>
Thu, 31 Jul 2025 19:57:28 +0000 (21:57 +0200)
commit656312f9b7ced02af374236decd050708d2b3cac
tree95cc0fed9c10cc50680bd6b0202cb518de2e9f43
parent1de1df1bea94547150f01006062358ebe68ae874
realtek: rtl930x: Fix bringup of SFP modules

The commit d2108c2c5896 ("realtek: enhance RTL930x SerDes/PLL/CMU
interoperability") removed a couple of commands for the bringup code.
One of these commands was necessary to bring up SFP modules correctly. This
one can also be found in the RTLSDK [1].

It is currently not 100% clear what this command does. But if it works
similar to the RTL8295 [2,3] (RTL8295_SDS0_ANA_MISC_REG00_REG), we could
assume that it could be the RX_ON and RX_EN bits.

[1] https://gitlab.com/olliver/openwrt/realtek_sdk/-/blob/0e2e45341a268147e3e935a8d0276b60787c1f57/loader/u-boot-2011.12/board/Realtek/switch/sdk/src/dal/longan/dal_longan_sds.c#L1104
[2] https://svanheule.net/realtek/mango/register/serdes_indrt_access_ctrl
[3] https://github.com/plappermaul/realtek-doc/blob/54589ff0afa70045abfdc71a3133aa55c76257bc/sources/rtk-dms1250/include/hal/phy/rtl8295_reg_def.h#L7726

Reported-by: Jan Fuchs <jf@simonwunderlich.de>
Fixes: d2108c2c5896 ("realtek: enhance RTL930x SerDes/PLL/CMU interoperability")
Signed-off-by: Harshal Gohel <hg@simonwunderlich.de>
Co-developed-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Signed-off-by: Sharadanand Karanjkar <sk@simonwunderlich.de>
Link: https://github.com/openwrt/openwrt/pull/19582
Signed-off-by: Robert Marko <robimarko@gmail.com>
target/linux/realtek/files-6.12/drivers/net/phy/rtl83xx-phy.c