This patch adds support for Intel Foxville I226
devices LM,V,I,K in e1000 driver.

Signed-off-by: Marjolaine Amate <marjolaine.am...@odyssee-systemes.fr>
---
 drivers/net/e1000.c | 18 ++++++++++++++++++
 drivers/net/e1000.h |  2 ++
 include/pci_ids.h   |  7 +++++++
 3 files changed, 27 insertions(+)

diff --git a/drivers/net/e1000.c b/drivers/net/e1000.c
index 4e7ba66677..f9803b92b0 100644
--- a/drivers/net/e1000.c
+++ b/drivers/net/e1000.c
@@ -108,6 +108,12 @@ static struct pci_device_id e1000_supported[] = {
        { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 
PCI_DEVICE_ID_INTEL_80003ES2LAN_SERDES_DPT) },
        { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 
PCI_DEVICE_ID_INTEL_80003ES2LAN_COPPER_SPT) },
        { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 
PCI_DEVICE_ID_INTEL_80003ES2LAN_SERDES_SPT) },
+       { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_I226_K) },
+       { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_I226_LMVP) },
+       { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_I226_LM) },
+       { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_I226_V) },
+       { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_I226_IT) },
+       { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 
PCI_DEVICE_ID_INTEL_I226_UNPROGRAMMED) },
        { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 
PCI_DEVICE_ID_INTEL_I210_UNPROGRAMMED) },
        { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 
PCI_DEVICE_ID_INTEL_I211_UNPROGRAMMED) },
        { PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_I210_COPPER) },
@@ -1569,6 +1575,12 @@ e1000_set_mac_type(struct e1000_hw *hw)
        case E1000_DEV_ID_ICH8_IGP_M:
                hw->mac_type = e1000_ich8lan;
                break;
+       case PCI_DEVICE_ID_INTEL_I226_K:
+       case PCI_DEVICE_ID_INTEL_I226_LMVP:
+       case PCI_DEVICE_ID_INTEL_I226_LM:
+       case PCI_DEVICE_ID_INTEL_I226_V:
+       case PCI_DEVICE_ID_INTEL_I226_IT:
+       case PCI_DEVICE_ID_INTEL_I226_UNPROGRAMMED:
        case PCI_DEVICE_ID_INTEL_I210_UNPROGRAMMED:
        case PCI_DEVICE_ID_INTEL_I211_UNPROGRAMMED:
        case PCI_DEVICE_ID_INTEL_I210_COPPER:
@@ -4843,6 +4855,8 @@ static int e1000_set_phy_type (struct e1000_hw *hw)
                hw->phy_type = e1000_phy_igb;
                break;
        case I225_I_PHY_ID:
+       case I226_LM_PHY_ID:
+       case I226_I_PHY_ID:
                hw->phy_type = e1000_phy_igc;
                break;
                /* Fall Through */
@@ -4954,6 +4968,10 @@ e1000_detect_gig_phy(struct e1000_hw *hw)
                        match = true;
                if (hw->phy_id == I225_I_PHY_ID)
                        match = true;
+               if (hw->phy_id == I226_LM_PHY_ID)
+                       match = true;
+               if (hw->phy_id == I226_I_PHY_ID)
+                       match = true;
                break;
        default:
                DEBUGOUT("Invalid MAC type %d\n", hw->mac_type);
diff --git a/drivers/net/e1000.h b/drivers/net/e1000.h
index e1311126a3..aa649328f5 100644
--- a/drivers/net/e1000.h
+++ b/drivers/net/e1000.h
@@ -2421,7 +2421,9 @@ struct e1000_hw {
 #define BME1000_E_PHY_ID     0x01410CB0
 
 #define I210_I_PHY_ID          0x01410C00
+#define I226_LM_PHY_ID         0x67C9DC10
 #define I225_I_PHY_ID          0x67C9DCC0
+#define I226_I_PHY_ID          0x67C9DCD0
 
 /* Miscellaneous PHY bit definitions. */
 #define PHY_PREAMBLE                   0xFFFFFFFF
diff --git a/include/pci_ids.h b/include/pci_ids.h
index f1886c3a75..834ec926b5 100644
--- a/include/pci_ids.h
+++ b/include/pci_ids.h
@@ -2701,6 +2701,11 @@
 #define PCI_DEVICE_ID_INTEL_82441      0x1237
 #define PCI_DEVICE_ID_INTEL_82380FB    0x124b
 #define PCI_DEVICE_ID_INTEL_82439      0x1250
+#define PCI_DEVICE_ID_INTEL_I226_LM                    0x125b
+#define PCI_DEVICE_ID_INTEL_I226_V                     0x125c
+#define PCI_DEVICE_ID_INTEL_I226_IT                    0x125d
+#define PCI_DEVICE_ID_INTEL_I221_V                     0x125e
+#define PCI_DEVICE_ID_INTEL_I226_UNPROGRAMMED          0x125f
 #define PCI_DEVICE_ID_INTEL_I210_UNPROGRAMMED          0x1531
 #define PCI_DEVICE_ID_INTEL_I211_UNPROGRAMMED          0x1532
 #define PCI_DEVICE_ID_INTEL_I210_COPPER                        0x1533
@@ -2930,6 +2935,7 @@
 #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH2_ADDR_REV2  0x2db1
 #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH2_RANK_REV2  0x2db2
 #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH2_TC_REV2    0x2db3
+#define PCI_DEVICE_ID_INTEL_I226_K     0x3102
 #define PCI_DEVICE_ID_INTEL_82855PM_HB 0x3340
 #define PCI_DEVICE_ID_INTEL_IOAT_TBG4  0x3429
 #define PCI_DEVICE_ID_INTEL_IOAT_TBG5  0x342a
@@ -3001,6 +3007,7 @@
 #define PCI_DEVICE_ID_INTEL_UNC_R3QPI1 0x3c45
 #define PCI_DEVICE_ID_INTEL_JAKETOWN_UBOX      0x3ce0
 #define PCI_DEVICE_ID_INTEL_IOAT_SNB   0x402f
+#define PCI_DEVICE_ID_INTEL_I226_LMVP  0x5503
 #define PCI_DEVICE_ID_INTEL_5100_16    0x65f0
 #define PCI_DEVICE_ID_INTEL_5100_19    0x65f3
 #define PCI_DEVICE_ID_INTEL_5100_21    0x65f5
-- 
2.43.0

Reply via email to