|
@@ -65,6 +65,7 @@ static struct pci_device_id igb_pci_tbl[] = {
|
|
|
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_82576_NS), board_82575 },
|
|
|
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_82576_FIBER), board_82575 },
|
|
|
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_82576_SERDES), board_82575 },
|
|
|
+ { PCI_VDEVICE(INTEL, E1000_DEV_ID_82576_QUAD_COPPER), board_82575 },
|
|
|
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_82575EB_COPPER), board_82575 },
|
|
|
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_82575EB_FIBER_SERDES), board_82575 },
|
|
|
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_82575GB_QUAD_COPPER), board_82575 },
|
|
@@ -1375,6 +1376,16 @@ static int __devinit igb_probe(struct pci_dev *pdev,
|
|
|
if (rd32(E1000_STATUS) & E1000_STATUS_FUNC_1)
|
|
|
adapter->eeprom_wol = 0;
|
|
|
break;
|
|
|
+ case E1000_DEV_ID_82576_QUAD_COPPER:
|
|
|
+ /* if quad port adapter, disable WoL on all but port A */
|
|
|
+ if (global_quad_port_a != 0)
|
|
|
+ adapter->eeprom_wol = 0;
|
|
|
+ else
|
|
|
+ adapter->flags |= IGB_FLAG_QUAD_PORT_A;
|
|
|
+ /* Reset for multiple quad port adapters */
|
|
|
+ if (++global_quad_port_a == 4)
|
|
|
+ global_quad_port_a = 0;
|
|
|
+ break;
|
|
|
}
|
|
|
|
|
|
/* initialize the wol settings based on the eeprom settings */
|