b43: Use a threaded IRQ handler
Use a threaded IRQ handler to allow locking the mutex and sleeping while executing an interrupt. This removes usage of the irq_lock spinlock, but introduces a new hardirq_lock, which is _only_ used for the PCI/SSB lowlevel hard-irq handler. Sleeping busses (SDIO) will use mutex instead. Signed-off-by:Michael Buesch <mb@bu3sch.de> Tested-by:
Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by:
John W. Linville <linville@tuxdriver.com>
Showing
- drivers/net/wireless/b43/b43.h 8 additions, 15 deletionsdrivers/net/wireless/b43/b43.h
- drivers/net/wireless/b43/debugfs.c 16 additions, 37 deletionsdrivers/net/wireless/b43/debugfs.c
- drivers/net/wireless/b43/debugfs.h 2 additions, 1 deletiondrivers/net/wireless/b43/debugfs.h
- drivers/net/wireless/b43/dma.c 2 additions, 3 deletionsdrivers/net/wireless/b43/dma.c
- drivers/net/wireless/b43/main.c 172 additions, 147 deletionsdrivers/net/wireless/b43/main.c
- drivers/net/wireless/b43/phy_common.c 0 additions, 1 deletiondrivers/net/wireless/b43/phy_common.c
- drivers/net/wireless/b43/phy_common.h 1 addition, 2 deletionsdrivers/net/wireless/b43/phy_common.h
- drivers/net/wireless/b43/phy_g.c 0 additions, 7 deletionsdrivers/net/wireless/b43/phy_g.c
- drivers/net/wireless/b43/phy_g.h 1 addition, 2 deletionsdrivers/net/wireless/b43/phy_g.h
- drivers/net/wireless/b43/pio.c 2 additions, 3 deletionsdrivers/net/wireless/b43/pio.c
- drivers/net/wireless/b43/sysfs.c 0 additions, 3 deletionsdrivers/net/wireless/b43/sysfs.c
Loading
Please register or sign in to comment