aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath9k/main.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2008-10-01 09:12:56 -0400
committerDavid S. Miller <davem@davemloft.net>2008-10-01 09:12:56 -0400
commitb262e60309e1b0eb25d300c7e739427d5316abb1 (patch)
treebf319d78c79bb5cb617ff0c8340c73aa349bba15 /drivers/net/wireless/ath9k/main.c
parent93c8b90f01f0dc73891da4e84b26524b61d29d66 (diff)
parent0523820482dcb42784572ffd2296c2f08c275a2b (diff)
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts: drivers/net/wireless/ath9k/core.c drivers/net/wireless/ath9k/main.c net/core/dev.c
Diffstat (limited to 'drivers/net/wireless/ath9k/main.c')
-rw-r--r--drivers/net/wireless/ath9k/main.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/net/wireless/ath9k/main.c b/drivers/net/wireless/ath9k/main.c
index 1ba18006f475..2caba4403167 100644
--- a/drivers/net/wireless/ath9k/main.c
+++ b/drivers/net/wireless/ath9k/main.c
@@ -204,8 +204,6 @@ static int ath_key_config(struct ath_softc *sc,
204 if (!ret) 204 if (!ret)
205 return -EIO; 205 return -EIO;
206 206
207 if (mac)
208 sc->sc_keytype = hk.kv_type;
209 return 0; 207 return 0;
210} 208}
211 209
@@ -1507,7 +1505,6 @@ static int ath9k_set_key(struct ieee80211_hw *hw,
1507 case DISABLE_KEY: 1505 case DISABLE_KEY:
1508 ath_key_delete(sc, key); 1506 ath_key_delete(sc, key);
1509 clear_bit(key->keyidx, sc->sc_keymap); 1507 clear_bit(key->keyidx, sc->sc_keymap);
1510 sc->sc_keytype = ATH9K_CIPHER_CLR;
1511 break; 1508 break;
1512 default: 1509 default:
1513 ret = -EINVAL; 1510 ret = -EINVAL;
@@ -1784,10 +1781,17 @@ static void ath_pci_remove(struct pci_dev *pdev)
1784{ 1781{
1785 struct ieee80211_hw *hw = pci_get_drvdata(pdev); 1782 struct ieee80211_hw *hw = pci_get_drvdata(pdev);
1786 struct ath_softc *sc = hw->priv; 1783 struct ath_softc *sc = hw->priv;
1784 enum ath9k_int status;
1787 1785
1788 if (pdev->irq) 1786 if (pdev->irq) {
1787 ath9k_hw_set_interrupts(sc->sc_ah, 0);
1788 /* clear the ISR */
1789 ath9k_hw_getisr(sc->sc_ah, &status);
1790 sc->sc_flags |= SC_OP_INVALID;
1789 free_irq(pdev->irq, sc); 1791 free_irq(pdev->irq, sc);
1792 }
1790 ath_detach(sc); 1793 ath_detach(sc);
1794
1791 pci_iounmap(pdev, sc->mem); 1795 pci_iounmap(pdev, sc->mem);
1792 pci_release_region(pdev, 0); 1796 pci_release_region(pdev, 0);
1793 pci_disable_device(pdev); 1797 pci_disable_device(pdev);