aboutsummaryrefslogtreecommitdiff
path: root/target/linux/realtek/files-5.15/drivers/net/dsa/rtl83xx/dsa.c
diff options
context:
space:
mode:
authorTobias Schramm <tobias@t-sys.eu>2024-02-04 16:28:07 +0100
committerSander Vanheule <sander@svanheule.net>2024-02-05 20:44:46 +0100
commit9daf4dff6bd2908040a281efc082ac09b3d25871 (patch)
treeeb910a2c9dcd265d8f22f96b5f1107388144e164 /target/linux/realtek/files-5.15/drivers/net/dsa/rtl83xx/dsa.c
parent9fe2412e62f894546cf99f03ca2b48231e83376a (diff)
realtek: 5.15: rtl93xx: add 1000Base-X and 10GBase-CR support on SerDes
This patch adds support for 1000Base-X and 10GBase-CR directly on the SerDes lanes of rtl93xx SoCs. This fixes SFP/SFP+ support on devices like the XSG1250-12. Signed-off-by: Tobias Schramm <tobias@t-sys.eu>
Diffstat (limited to 'target/linux/realtek/files-5.15/drivers/net/dsa/rtl83xx/dsa.c')
-rw-r--r--target/linux/realtek/files-5.15/drivers/net/dsa/rtl83xx/dsa.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/target/linux/realtek/files-5.15/drivers/net/dsa/rtl83xx/dsa.c b/target/linux/realtek/files-5.15/drivers/net/dsa/rtl83xx/dsa.c
index 759ca94e00..ff81a4c77b 100644
--- a/target/linux/realtek/files-5.15/drivers/net/dsa/rtl83xx/dsa.c
+++ b/target/linux/realtek/files-5.15/drivers/net/dsa/rtl83xx/dsa.c
@@ -811,8 +811,10 @@ static void rtl93xx_phylink_mac_config(struct dsa_switch *ds, int port,
sds_num = priv->ports[port].sds_num;
pr_info("%s SDS is %d\n", __func__, sds_num);
- if (sds_num >= 0 && state->interface == PHY_INTERFACE_MODE_10GBASER)
- rtl9300_serdes_setup(sds_num, state->interface);
+ if (sds_num >= 0 &&
+ (state->interface == PHY_INTERFACE_MODE_1000BASEX ||
+ state->interface == PHY_INTERFACE_MODE_10GBASER))
+ rtl9300_serdes_setup(port, sds_num, state->interface);
reg = sw_r32(priv->r->mac_force_mode_ctrl(port));
reg &= ~(0xf << 3);