For RTL8126: Tune RX descriptor fetch number to 20.
For RTL8127: Tune RX descriptor fetch number to 12.

Signed-off-by: Howard Wang <[email protected]>
---
 drivers/net/r8169/base/rtl8126a.c | 4 ++--
 drivers/net/r8169/base/rtl8127.c  | 2 +-
 drivers/net/r8169/r8169_compat.h  | 2 ++
 3 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/net/r8169/base/rtl8126a.c 
b/drivers/net/r8169/base/rtl8126a.c
index 047ef83587..58b1cc2664 100644
--- a/drivers/net/r8169/base/rtl8126a.c
+++ b/drivers/net/r8169/base/rtl8126a.c
@@ -14,12 +14,12 @@ hw_init_rxcfg_8126a(struct rtl_hw *hw)
 {
        switch (hw->mcfg) {
        case CFG_METHOD_69:
-               RTL_W32(hw, RxConfig, Rx_Fetch_Number_8 | RxCfg_pause_slot_en |
+               RTL_W32(hw, RxConfig, Rx_Fetch_Number_20 | RxCfg_pause_slot_en |
                        (RX_DMA_BURST_512 << RxCfgDMAShift));
                break;
        case CFG_METHOD_70:
        case CFG_METHOD_71:
-               RTL_W32(hw, RxConfig, Rx_Fetch_Number_8 | Rx_Close_Multiple |
+               RTL_W32(hw, RxConfig, Rx_Fetch_Number_20 | Rx_Close_Multiple |
                        RxCfg_pause_slot_en | (RX_DMA_BURST_512 << 
RxCfgDMAShift));
                break;
        }
diff --git a/drivers/net/r8169/base/rtl8127.c b/drivers/net/r8169/base/rtl8127.c
index 9e79255e3c..26c2cfd25b 100644
--- a/drivers/net/r8169/base/rtl8127.c
+++ b/drivers/net/r8169/base/rtl8127.c
@@ -14,7 +14,7 @@ hw_init_rxcfg_8127(struct rtl_hw *hw)
 {
        switch (hw->mcfg) {
        case CFG_METHOD_91:
-               RTL_W32(hw, RxConfig, Rx_Fetch_Number_8 | Rx_Close_Multiple |
+               RTL_W32(hw, RxConfig, Rx_Fetch_Number_12 | Rx_Close_Multiple |
                        RxCfg_pause_slot_en | (RX_DMA_BURST_512 << 
RxCfgDMAShift));
                break;
        }
diff --git a/drivers/net/r8169/r8169_compat.h b/drivers/net/r8169/r8169_compat.h
index 9163c7f59f..ab6a984a54 100644
--- a/drivers/net/r8169/r8169_compat.h
+++ b/drivers/net/r8169/r8169_compat.h
@@ -563,6 +563,8 @@ enum RTL_chipset_name {
 #define TX_DMA_BURST_16     0
 #define InterFrameGap       0x03    /* 3 means InterFrameGap = the shortest 
one */
 #define Rx_Fetch_Number_8  (1 << 30)
+#define Rx_Fetch_Number_12  (BIT_30 | BIT_29)
+#define Rx_Fetch_Number_20  (BIT_31 | BIT_29)
 #define Rx_Close_Multiple  (1 << 21)
 #define RxEarly_off_V2    (1 << 11)
 #define Rx_Single_fetch_V2 (1 << 14)
-- 
2.34.1

Reply via email to