mirror of
git://git.openwrt.org/openwrt/openwrt.git
synced 2026-01-22 19:52:11 -05:00
realtek: pcs: rtl931x: quit setup_serdes early on USXGMII mode
In rtpcs_931x_setup_serdes, quit early on USXGMII mode. This restores
the behaviour introduced in c18476d0c5 to prevent the current buggy
procedure to destroy a working configuration established by U-Boot
before.
Also include the valuable comment from the code to keep the information.
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20369
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
parent
a89d8acb5b
commit
8bdc3d1b56
@ -555,6 +555,18 @@ static int rtpcs_931x_setup_serdes(struct rtpcs_ctrl *ctrl, int sds,
|
||||
if (sds < 0 || sds > 13)
|
||||
return -EINVAL;
|
||||
|
||||
/*
|
||||
* TODO: USXGMII is currently the swiss army knife to declare 10G
|
||||
* multi port PHYs. Real devices use other modes instead. Especially
|
||||
*
|
||||
* - RTL8224 is driven in 10G_QXGMII
|
||||
* - RTL8218D/E are driven in (Realtek proprietary) XSGMII (10G SGMII)
|
||||
*
|
||||
* For now disable all USXGMII SerDes handling and rely on U-Boot setup.
|
||||
*/
|
||||
if (mode == PHY_INTERFACE_MODE_USXGMII)
|
||||
return -ENOTSUPP;
|
||||
|
||||
pr_info("%s: set sds %d to mode %d\n", __func__, sds, mode);
|
||||
val = rtpcs_sds_read_bits(ctrl, sds, 0x1F, 0x9, 11, 6);
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user