]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
e1000e: always set transmit descriptor control registers the same
authorBruce Allan <bruce.w.allan@intel.com>
Fri, 16 Dec 2011 00:46:01 +0000 (00:46 +0000)
committerJoe Jin <joe.jin@oracle.com>
Thu, 17 May 2012 07:03:14 +0000 (15:03 +0800)
The hardware erratum workaround where the TXDCTL register must be the same
setting for both queues should always be done.

(cherry picked from commit 56032be77c7eab50e2020247ffa35ca61850503f)
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Joe Jin <joe.jin@oracle.com>
drivers/net/e1000e/netdev.c

index ec1a9709fb3426842a408b3bbf2f1ee084f3dfbe..07150e49eb2e364df423c02fe310a47949a50fee 100644 (file)
@@ -2805,9 +2805,9 @@ static void e1000_configure_tx(struct e1000_adapter *adapter)
                 */
                txdctl |= E1000_TXDCTL_DMA_BURST_ENABLE;
                ew32(TXDCTL(0), txdctl);
-               /* erratum work around: set txdctl the same for both queues */
-               ew32(TXDCTL(1), txdctl);
        }
+       /* erratum work around: set txdctl the same for both queues */
+       ew32(TXDCTL(1), er32(TXDCTL(0)));
 
        /* Program the Transmit Control Register */
        tctl = er32(TCTL);