]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
realtek: pcs: rtl930x: adjust initial vth_min value 22450/head
authorJonas Jelonek <jelonek.jonas@gmail.com>
Wed, 18 Mar 2026 10:24:19 +0000 (11:24 +0100)
committerRobert Marko <robimarko@gmail.com>
Sat, 21 Mar 2026 22:06:10 +0000 (23:06 +0100)
During RX calibration we use a vth_min value of 0 while the SDK always
uses a value of 1 [1]. While we do not know right now which effect this
really has, sync this to the SDK. In worst case we might have an
insufficient calibration result at the moment which usually might be
fine.

[1] https://github.com/plappermaul/realtek-doc/blob/82af3a36b7f65dbe2158fef3a9b71e7aab94315e/sources/rtk-dms1250/src/dal/longan/dal_longan_sds.c#L173

Suggested-by: Bevan Weiss <bevan.weiss@gmail.com>
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22450
Signed-off-by: Robert Marko <robimarko@gmail.com>
target/linux/realtek/files-6.12/drivers/net/pcs/pcs-rtl-otto.c

index ccaed497f97d715e709fabfbf1ccc005cd39fe94..506954ddab755c62730cf4f350e25f5d995ba281 100644 (file)
@@ -2144,7 +2144,7 @@ static void rtpcs_930x_sds_do_rx_calibration_1(struct rtpcs_serdes *sds,
 {
        /* From both rtl9300_rxCaliConf_serdes_myParam and rtl9300_rxCaliConf_phy_myParam */
        int tap0_init_val = 0x1f; /* Initial Decision Fed Equalizer 0 tap */
-       int vth_min       = 0x0;
+       int vth_min = 0x1;
 
        pr_info("start_1.1.1 initial value for sds %d\n", sds->id);
        rtpcs_sds_write(sds, 6,  0, 0);