diff options
-rw-r--r-- | drivers/net/e1000e/netdev.c | 28 |
1 files changed, 12 insertions, 16 deletions
diff --git a/drivers/net/e1000e/netdev.c b/drivers/net/e1000e/netdev.c index 589e54246ad2..18f076c01eea 100644 --- a/drivers/net/e1000e/netdev.c +++ b/drivers/net/e1000e/netdev.c | |||
@@ -2444,7 +2444,7 @@ void e1000e_reset(struct e1000_adapter *adapter) | |||
2444 | * For parts with AMT enabled, let the firmware know | 2444 | * For parts with AMT enabled, let the firmware know |
2445 | * that the network interface is in control | 2445 | * that the network interface is in control |
2446 | */ | 2446 | */ |
2447 | if ((adapter->flags & FLAG_HAS_AMT) && e1000e_check_mng_mode(hw)) | 2447 | if (adapter->flags & FLAG_HAS_AMT) |
2448 | e1000_get_hw_control(adapter); | 2448 | e1000_get_hw_control(adapter); |
2449 | 2449 | ||
2450 | ew32(WUC, 0); | 2450 | ew32(WUC, 0); |
@@ -2634,8 +2634,7 @@ static int e1000_open(struct net_device *netdev) | |||
2634 | * If AMT is enabled, let the firmware know that the network | 2634 | * If AMT is enabled, let the firmware know that the network |
2635 | * interface is now open | 2635 | * interface is now open |
2636 | */ | 2636 | */ |
2637 | if ((adapter->flags & FLAG_HAS_AMT) && | 2637 | if (adapter->flags & FLAG_HAS_AMT) |
2638 | e1000e_check_mng_mode(&adapter->hw)) | ||
2639 | e1000_get_hw_control(adapter); | 2638 | e1000_get_hw_control(adapter); |
2640 | 2639 | ||
2641 | /* | 2640 | /* |
@@ -2713,8 +2712,7 @@ static int e1000_close(struct net_device *netdev) | |||
2713 | * If AMT is enabled, let the firmware know that the network | 2712 | * If AMT is enabled, let the firmware know that the network |
2714 | * interface is now closed | 2713 | * interface is now closed |
2715 | */ | 2714 | */ |
2716 | if ((adapter->flags & FLAG_HAS_AMT) && | 2715 | if (adapter->flags & FLAG_HAS_AMT) |
2717 | e1000e_check_mng_mode(&adapter->hw)) | ||
2718 | e1000_release_hw_control(adapter); | 2716 | e1000_release_hw_control(adapter); |
2719 | 2717 | ||
2720 | return 0; | 2718 | return 0; |
@@ -4030,7 +4028,7 @@ static int e1000_resume(struct pci_dev *pdev) | |||
4030 | * is up. For all other cases, let the f/w know that the h/w is now | 4028 | * is up. For all other cases, let the f/w know that the h/w is now |
4031 | * under the control of the driver. | 4029 | * under the control of the driver. |
4032 | */ | 4030 | */ |
4033 | if (!(adapter->flags & FLAG_HAS_AMT) || !e1000e_check_mng_mode(&adapter->hw)) | 4031 | if (!(adapter->flags & FLAG_HAS_AMT)) |
4034 | e1000_get_hw_control(adapter); | 4032 | e1000_get_hw_control(adapter); |
4035 | 4033 | ||
4036 | return 0; | 4034 | return 0; |
@@ -4149,8 +4147,7 @@ static void e1000_io_resume(struct pci_dev *pdev) | |||
4149 | * is up. For all other cases, let the f/w know that the h/w is now | 4147 | * is up. For all other cases, let the f/w know that the h/w is now |
4150 | * under the control of the driver. | 4148 | * under the control of the driver. |
4151 | */ | 4149 | */ |
4152 | if (!(adapter->flags & FLAG_HAS_AMT) || | 4150 | if (!(adapter->flags & FLAG_HAS_AMT)) |
4153 | !e1000e_check_mng_mode(&adapter->hw)) | ||
4154 | e1000_get_hw_control(adapter); | 4151 | e1000_get_hw_control(adapter); |
4155 | 4152 | ||
4156 | } | 4153 | } |
@@ -4505,8 +4502,7 @@ static int __devinit e1000_probe(struct pci_dev *pdev, | |||
4505 | * is up. For all other cases, let the f/w know that the h/w is now | 4502 | * is up. For all other cases, let the f/w know that the h/w is now |
4506 | * under the control of the driver. | 4503 | * under the control of the driver. |
4507 | */ | 4504 | */ |
4508 | if (!(adapter->flags & FLAG_HAS_AMT) || | 4505 | if (!(adapter->flags & FLAG_HAS_AMT)) |
4509 | !e1000e_check_mng_mode(&adapter->hw)) | ||
4510 | e1000_get_hw_control(adapter); | 4506 | e1000_get_hw_control(adapter); |
4511 | 4507 | ||
4512 | /* tell the stack to leave us alone until e1000_open() is called */ | 4508 | /* tell the stack to leave us alone until e1000_open() is called */ |
@@ -4523,19 +4519,19 @@ static int __devinit e1000_probe(struct pci_dev *pdev, | |||
4523 | return 0; | 4519 | return 0; |
4524 | 4520 | ||
4525 | err_register: | 4521 | err_register: |
4526 | err_hw_init: | 4522 | if (!(adapter->flags & FLAG_HAS_AMT)) |
4527 | e1000_release_hw_control(adapter); | 4523 | e1000_release_hw_control(adapter); |
4528 | err_eeprom: | 4524 | err_eeprom: |
4529 | if (!e1000_check_reset_block(&adapter->hw)) | 4525 | if (!e1000_check_reset_block(&adapter->hw)) |
4530 | e1000_phy_hw_reset(&adapter->hw); | 4526 | e1000_phy_hw_reset(&adapter->hw); |
4527 | err_hw_init: | ||
4531 | 4528 | ||
4532 | if (adapter->hw.flash_address) | ||
4533 | iounmap(adapter->hw.flash_address); | ||
4534 | |||
4535 | err_flashmap: | ||
4536 | kfree(adapter->tx_ring); | 4529 | kfree(adapter->tx_ring); |
4537 | kfree(adapter->rx_ring); | 4530 | kfree(adapter->rx_ring); |
4538 | err_sw_init: | 4531 | err_sw_init: |
4532 | if (adapter->hw.flash_address) | ||
4533 | iounmap(adapter->hw.flash_address); | ||
4534 | err_flashmap: | ||
4539 | iounmap(adapter->hw.hw_addr); | 4535 | iounmap(adapter->hw.hw_addr); |
4540 | err_ioremap: | 4536 | err_ioremap: |
4541 | free_netdev(netdev); | 4537 | free_netdev(netdev); |