]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
e1000: add support for i226
authorMarjolaine Amate <marjolaine.amate@odyssee-systemes.fr>
Mon, 24 Jun 2024 19:15:32 +0000 (19:15 +0000)
committerTom Rini <trini@konsulko.com>
Fri, 5 Jul 2024 19:57:02 +0000 (13:57 -0600)
This patch adds support for Intel Foxville I226
devices LM,V,I,K in e1000 driver.

Signed-off-by: Marjolaine Amate <marjolaine.amate@odyssee-systemes.fr>
drivers/net/e1000.c
drivers/net/e1000.h
include/pci_ids.h

index 663d900eb099a093f70e909f51ce3c0937b78f4b..fcb205322c5a616ba58b9b5d4cecae18dd724b67 100644 (file)
@@ -107,6 +107,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) },
@@ -1568,6 +1574,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:
@@ -4842,6 +4854,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 */
@@ -4953,6 +4967,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);
index e1311126a3f996edcd6bc16988254ed34808d2cc..aa649328f5f2398b8caf93724c5bcc48f40d8082 100644 (file)
@@ -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
index f1886c3a7513233b656408329821a557d1c79645..834ec926b5224bb2f1116ebf7ae9d4a265b6c772 100644 (file)
 #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
 #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
 #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