]> Zhao Yanbai Git Server - minix.git/commitdiff
e1000: add 82574L ethernet adapter (thx Niek for your comments)
authorErik van der Kouwe <erik@minix3.org>
Fri, 15 Oct 2010 08:53:22 +0000 (08:53 +0000)
committerErik van der Kouwe <erik@minix3.org>
Fri, 15 Oct 2010 08:53:22 +0000 (08:53 +0000)
commands/netconf/netconf.sh
drivers/e1000/e1000.c
drivers/e1000/e1000_pci.h
drivers/pci/pci_table.c
etc/system.conf

index 78064db4fda212bdb9f2ddca57339713ffb39057..9606e64ce307bf97fa0c6066c19bdde55c378113 100644 (file)
@@ -110,7 +110,9 @@ cards()
     card 5 "Realtek 8029 based card (also emulated by Qemu)" "10EC:8029"
     card 6 "NE2000, 3com 503 or WD based card (also emulated by Bochs)"
     card 7 "AMD LANCE (also emulated by VMWare and VirtualBox)" "1022:2000"
-    card 8 "Intel PRO/1000 Gigabit" "8086:100E" "8086:107C" "8086:10CD"
+    card 8 "Intel PRO/1000 Gigabit"                                   \
+           "8086:100E" "8086:107C" "8086:10CD" "8086:10D3"
+       
     card 9 "Attansic/Atheros L2 FastEthernet" "1969:2048"
     card 10 "DEC Tulip 21140A in VirtualPC" "1011:0009"
     card 11 "Different Ethernet card (no networking)"
index 90a1714287c1eb53a1f8ba6fd4ac683f90d07459..976e7dd0bb98e000f3a5f2741283ba63dfd632ed 100644 (file)
@@ -26,6 +26,7 @@ PRIVATE u16_t pcitab_e1000[] =
     E1000_DEV_ID_82540EM,
     E1000_DEV_ID_82541GI_LF,
     E1000_DEV_ID_ICH10_R_BM_LF,
+    E1000_DEV_ID_82574L,
     0,
 };
 
@@ -285,6 +286,7 @@ PRIVATE int e1000_probe(e1000_t *e, int skip)
             e->eeprom_read = eeprom_ich;
             break;
 
+       case E1000_DEV_ID_82574L:
        case E1000_DEV_ID_82541GI_LF:
            e->eeprom_done_bit = (1 << 1);
            e->eeprom_addr_off =  2;
@@ -320,7 +322,9 @@ PRIVATE int e1000_probe(e1000_t *e, int skip)
                panic("failed to map hardware registers from PCI");
     }
     /* Optionally map flash memory. */
-    if (pci_attr_r32(devind, PCI_BAR_3))
+    if (did != E1000_DEV_ID_82540EM &&
+       did != E1000_DEV_ID_82540EP &&
+       pci_attr_r32(devind, PCI_BAR_2))
     {
        if((e->flash = vm_map_phys(SELF,
          (void *) pci_attr_r32(devind, PCI_BAR_2), 0x10000)) == MAP_FAILED) {
index 0528aaa3a21183f76d5093bbc25d6748ff474d49..344c8b9ebee3cbea2d90994c32e0219dde83ca62 100644 (file)
 #define E1000_DEV_ID_PCH_M_HV_LC              0x10EB
 #define E1000_DEV_ID_PCH_D_HV_DM              0x10EF
 #define E1000_DEV_ID_PCH_D_HV_DC              0x10F0
+#define E1000_DEV_ID_82574L                   0x10D3
 #define E1000_DEV_ID_82576                    0x10C9
 #define E1000_DEV_ID_82576_FIBER              0x10E6
 #define E1000_DEV_ID_82576_SERDES             0x10E7
index 47d38a4768156e0f7c72b1e1f996c617d3dfb3d5..65d87587d328914746f7ead5d55cf3affaba85e3 100644 (file)
@@ -138,6 +138,7 @@ struct pci_device pci_device_table[]=
        { 0x8086, 0x1064, "Intel Corporation 82562 PRO/100 VE" },
        { 0x8086, 0x107C, "Intel PRO/1000 GT Desktop Adapter" },
        { 0x8086, 0x10CD, "Intel PRO/1000 Gigabit Network Connection" },
+       { 0x8086, 0x10D3, "Intel 82574L Gigabit Network Connection" },
        { 0x8086, 0x1209, "Intel EtherExpressPro100 82559ER" },
        { 0x8086, 0x1229, "Intel EtherExpressPro100 82557/8/9" },
        { 0x8086, 0x122D, "Intel 82437FX" },
index 0c28b59652b0fc1fe5aa6b16963591c1db45c7d7..8671583d8098d107600fa285a8ac6931bb010e0a 100644 (file)
@@ -599,6 +599,7 @@ service e1000
        pci device      8086/100e;
        pci device      8086/107c;
        pci device      8086/10cd;
+       pci device      8086/10d3;
        ipc
                SYSTEM pm rs log tty ds vm
                pci inet ;