summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/ath/ath9k/ahb.c
diff options
context:
space:
mode:
authorSujith <Sujith.Manoharan@atheros.com>2010-01-14 04:50:57 (GMT)
committerJohn W. Linville <linville@tuxdriver.com>2010-01-14 23:16:55 (GMT)
commit5e4ea1f0ed256382d6d839fbd7a5c7f1b99b6cb0 (patch)
tree1954c51af0ae909ed2bf586e8e5bc5e69aaddec3 /drivers/net/wireless/ath/ath9k/ahb.c
parent2f1f00fc9b477481ad5c63976385c345851fee3d (diff)
downloadlinux-5e4ea1f0ed256382d6d839fbd7a5c7f1b99b6cb0.tar.xz
ath9k: Fix panic on driver load
The device has to be marked as invalid before registering the ISR. HW initialization takes place after the ISR has been registered, and the invalid flag is eventually cleared in the ->stop() callback. Reported-by: Pavel Roskin <proski@gnu.org> Signed-off-by: Sujith <Sujith.Manoharan@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/ahb.c')
-rw-r--r--drivers/net/wireless/ath/ath9k/ahb.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/ahb.c b/drivers/net/wireless/ath/ath9k/ahb.c
index f24b1f4..9e62a56 100644
--- a/drivers/net/wireless/ath/ath9k/ahb.c
+++ b/drivers/net/wireless/ath/ath9k/ahb.c
@@ -121,6 +121,9 @@ static int ath_ahb_probe(struct platform_device *pdev)
sc->mem = mem;
sc->irq = irq;
+ /* Will be cleared in ath9k_start() */
+ sc->sc_flags |= SC_OP_INVALID;
+
ret = request_irq(irq, ath_isr, IRQF_SHARED, "ath9k", sc);
if (ret) {
dev_err(&pdev->dev, "request_irq failed\n");