diff options
Diffstat (limited to 'drivers/net/e1000/e1000_main.c')
-rw-r--r-- | drivers/net/e1000/e1000_main.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index a525c95266f1..aad5373a8aeb 100644 --- a/drivers/net/e1000/e1000_main.c +++ b/drivers/net/e1000/e1000_main.c | |||
@@ -651,6 +651,7 @@ e1000_probe(struct pci_dev *pdev, | |||
651 | unsigned long mmio_start, mmio_len; | 651 | unsigned long mmio_start, mmio_len; |
652 | 652 | ||
653 | static int cards_found = 0; | 653 | static int cards_found = 0; |
654 | static int e1000_ksp3_port_a = 0; /* global ksp3 port a indication */ | ||
654 | int i, err, pci_using_dac; | 655 | int i, err, pci_using_dac; |
655 | uint16_t eeprom_data; | 656 | uint16_t eeprom_data; |
656 | uint16_t eeprom_apme_mask = E1000_EEPROM_APME; | 657 | uint16_t eeprom_apme_mask = E1000_EEPROM_APME; |
@@ -743,6 +744,15 @@ e1000_probe(struct pci_dev *pdev, | |||
743 | if ((err = e1000_check_phy_reset_block(&adapter->hw))) | 744 | if ((err = e1000_check_phy_reset_block(&adapter->hw))) |
744 | DPRINTK(PROBE, INFO, "PHY reset is blocked due to SOL/IDER session.\n"); | 745 | DPRINTK(PROBE, INFO, "PHY reset is blocked due to SOL/IDER session.\n"); |
745 | 746 | ||
747 | /* if ksp3, indicate if it's port a being setup */ | ||
748 | if (pdev->device == E1000_DEV_ID_82546GB_QUAD_COPPER_KSP3 && | ||
749 | e1000_ksp3_port_a == 0) | ||
750 | adapter->ksp3_port_a = 1; | ||
751 | e1000_ksp3_port_a++; | ||
752 | /* Reset for multiple KP3 adapters */ | ||
753 | if (e1000_ksp3_port_a == 4) | ||
754 | e1000_ksp3_port_a = 0; | ||
755 | |||
746 | if (adapter->hw.mac_type >= e1000_82543) { | 756 | if (adapter->hw.mac_type >= e1000_82543) { |
747 | netdev->features = NETIF_F_SG | | 757 | netdev->features = NETIF_F_SG | |
748 | NETIF_F_HW_CSUM | | 758 | NETIF_F_HW_CSUM | |