[PATCH] e1000: narrow down the scope of the tipg timer tweak
authorJesse Brandeburg <jesse.brandeburg@intel.com>
Fri, 15 Dec 2006 09:38:32 +0000 (10:38 +0100)
committerJeff Garzik <jeff@garzik.org>
Tue, 26 Dec 2006 20:51:30 +0000 (15:51 -0500)
the driver has (ancient) code for messing with TIPG from the 82542 days.
Unfortunately this code was running on our current adapters and setting
TIPG for fiber to be +1 over the copper value.  This caused 1.45Mpps
to be sent instead of 1.487Mpps.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/net/e1000/e1000_main.c

index 0d7c458..e04f1ba 100644 (file)
@@ -1582,9 +1582,9 @@ e1000_configure_tx(struct e1000_adapter *adapter)
        }
 
        /* Set the default values for the Tx Inter Packet Gap timer */
-
-       if (hw->media_type == e1000_media_type_fiber ||
-           hw->media_type == e1000_media_type_internal_serdes)
+       if (adapter->hw.mac_type <= e1000_82547_rev_2 &&
+           (hw->media_type == e1000_media_type_fiber ||
+            hw->media_type == e1000_media_type_internal_serdes))
                tipg = DEFAULT_82543_TIPG_IPGT_FIBER;
        else
                tipg = DEFAULT_82543_TIPG_IPGT_COPPER;