From: Matt Turner Date: Tue, 7 Nov 2017 22:13:30 +0000 (-0800) Subject: e1000e: Set HTHRESH when PTHRESH is used X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=b701cacdbcfb65a5ba38d9d4121c12a0a4eaa01a;p=linux.git e1000e: Set HTHRESH when PTHRESH is used According to section 12.0.3.4.13 "Receive Descriptor Control - RXDCTL" of the IntelĀ® 82579 Gigabit Ethernet PHY Datasheet v2.1: "HTHRESH should be given a non zero value when ever PTHRESH is used." In RXDCTL(0), PTHRESH lives at bits 5:0, and HTHREST lives at bits 13:8. Set only bit 8 of HTHREST as is done in e1000_flush_rx_ring(). Found by inspection. Signed-off-by: Matt Turner Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher --- diff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c index 9f18d39bdc8f7..5af93ce5acc61 100644 --- a/drivers/net/ethernet/intel/e1000e/netdev.c +++ b/drivers/net/ethernet/intel/e1000e/netdev.c @@ -3303,7 +3303,7 @@ static void e1000_configure_rx(struct e1000_adapter *adapter) if (adapter->flags & FLAG_IS_ICH) { u32 rxdctl = er32(RXDCTL(0)); - ew32(RXDCTL(0), rxdctl | 0x3); + ew32(RXDCTL(0), rxdctl | 0x3 | BIT(8)); } pm_qos_update_request(&adapter->pm_qos_req, lat);