summaryrefslogtreecommitdiffstats
path: root/e1000-ich9-montevina.patch
diff options
context:
space:
mode:
Diffstat (limited to 'e1000-ich9-montevina.patch')
-rw-r--r--e1000-ich9-montevina.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/e1000-ich9-montevina.patch b/e1000-ich9-montevina.patch
new file mode 100644
index 000000000..ec38a3902
--- /dev/null
+++ b/e1000-ich9-montevina.patch
@@ -0,0 +1,46 @@
+From 802e6d8c8477a553a677b23a247d6d2638e01958 Mon Sep 17 00:00:00 2001
+From: Dave Jones <davej@redhat.com>
+Date: Wed, 26 Oct 2011 13:31:47 -0400
+Subject: [PATCH] e1000e: ich9 montevina
+
+This only showed up in one SDV (Montevina).
+The PCIE slots don't seem to like network cards, so this is the only hope
+to get networking working. It's never going upstream, but it's low impact
+enough to carry just to keep those SDVs working.
+---
+ drivers/net/ethernet/intel/e1000e/ich8lan.c | 6 ++++++
+ drivers/net/ethernet/intel/e1000e/netdev.c | 1 +
+ 2 files changed, 7 insertions(+), 0 deletions(-)
+
+diff --git a/drivers/net/ethernet/intel/e1000e/ich8lan.c b/drivers/net/ethernet/intel/e1000e/ich8lan.c
+index 6a17c62..0e40975 100644
+--- a/drivers/net/ethernet/intel/e1000e/ich8lan.c
++++ b/drivers/net/ethernet/intel/e1000e/ich8lan.c
+@@ -452,6 +452,12 @@ static s32 e1000_init_phy_params_ich8lan(struct e1000_hw *hw)
+
+ /* Verify phy id */
+ switch (phy->id) {
++ case 0:
++ if (hw->adapter->pdev->device == 0x10be)
++ e_dbg("got 0 phy id, trying anyway");
++ /* Fall through to IGP03E1000 case below */
++ else
++ return -E1000_ERR_PHY;
+ case IGP03E1000_E_PHY_ID:
+ phy->type = e1000_phy_igp_3;
+ phy->autoneg_mask = AUTONEG_ADVERTISE_SPEED_DEFAULT;
+diff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c
+index a855db1..edac30b 100644
+--- a/drivers/net/ethernet/intel/e1000e/netdev.c
++++ b/drivers/net/ethernet/intel/e1000e/netdev.c
+@@ -6359,6 +6359,7 @@ static DEFINE_PCI_DEVICE_TABLE(e1000_pci_tbl) = {
+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_ICH9_IGP_M), board_ich9lan },
+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_ICH9_IGP_M_AMT), board_ich9lan },
+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_ICH9_IGP_M_V), board_ich9lan },
++ { PCI_VDEVICE(INTEL, 0x10be), board_ich9lan },
+
+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_ICH10_R_BM_LM), board_ich9lan },
+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_ICH10_R_BM_LF), board_ich9lan },
+--
+1.7.6.4
+