]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
realtek: pcs: rtl931x: drop sequence in favor of function
authorJonas Jelonek <jelonek.jonas@gmail.com>
Sat, 31 Jan 2026 18:31:50 +0000 (18:31 +0000)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 7 Feb 2026 23:35:19 +0000 (00:35 +0100)
Drop a register write sequence from the USXGMII setup for RTL931x in
favor of using a function that is already present. From the name, the
function initializes LEQ DFE. Though it's not yet clear what it exactly
does, this is already better then having a sequence with no explanation
somewhere in the code.

Apparently, when this code was added, the function wasn't present
but it's content was just added here as single usage.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21858
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
target/linux/realtek/files-6.12/drivers/net/pcs/pcs-rtl-otto.c

index a6bc37831e97b236bf2ee5f6dfcf3acc68d1b9a9..8b9f1a834ea37dc0edf13169c82a23f18ea16d74 100644 (file)
@@ -3580,18 +3580,7 @@ static int rtpcs_931x_sds_config_hw_mode(struct rtpcs_serdes *sds,
 
                        rtpcs_sds_write_bits(sds, 0x6, 0x2, 12, 12, 0);
                } else {
-                       rtpcs_sds_write_bits(sds, 0x2e, 0xd, 6, 0, 0x0);
-                       rtpcs_sds_write_bits(sds, 0x2e, 0xd, 7, 7, 0x1);
-
-                       rtpcs_sds_write_bits(sds, 0x2e, 0x1c, 5, 0, 0x1E);
-                       rtpcs_sds_write_bits(sds, 0x2e, 0x1d, 11, 0, 0x00);
-                       rtpcs_sds_write_bits(sds, 0x2e, 0x1f, 11, 0, 0x00);
-                       rtpcs_sds_write_bits(sds, 0x2f, 0x0, 11, 0, 0x00);
-                       rtpcs_sds_write_bits(sds, 0x2f, 0x1, 11, 0, 0x00);
-
-                       rtpcs_sds_write_bits(sds, 0x2e, 0xf, 12, 6, 0x7F);
-                       rtpcs_sds_write(sds, 0x2f, 0x12, 0xaaa);
-
+                       rtpcs_931x_sds_init_leq_dfe(sds);
                        rtpcs_931x_sds_rx_reset(sds);
 
                        rtpcs_sds_write(sds, 0x7, 0x10, op_code);