forked from Minki/linux
rt2x00: allow txstatus_fifo w/o txstatus_tasklet
When DRIVER_REQUIRE_TXSTATUS_FIFO is set, intialize the txstatus_fifo, but initialize rt2x00dev->txstatus_tasklet only when both DRIVER_REQUIRE_TXSTATUS_FIFO and rt2x00dev->ops->lib->txstatus_tasklet are set. This allows the txstatus_fifo to be used by rt2800usb which does not use txstatus_tasklet. Signed-off-by: Johannes Stezenbach <js@sig21.net> Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
c4d6324421
commit
5235189c8e
@ -813,8 +813,7 @@ static int rt2x00lib_probe_hw(struct rt2x00_dev *rt2x00dev)
|
||||
/*
|
||||
* Allocate tx status FIFO for driver use.
|
||||
*/
|
||||
if (test_bit(DRIVER_REQUIRE_TXSTATUS_FIFO, &rt2x00dev->flags) &&
|
||||
rt2x00dev->ops->lib->txstatus_tasklet) {
|
||||
if (test_bit(DRIVER_REQUIRE_TXSTATUS_FIFO, &rt2x00dev->flags)) {
|
||||
/*
|
||||
* Allocate txstatus fifo and tasklet, we use a size of 512
|
||||
* for the kfifo which is big enough to store 512/4=128 tx
|
||||
@ -828,9 +827,10 @@ static int rt2x00lib_probe_hw(struct rt2x00_dev *rt2x00dev)
|
||||
return status;
|
||||
|
||||
/* tasklet for processing the tx status reports. */
|
||||
tasklet_init(&rt2x00dev->txstatus_tasklet,
|
||||
rt2x00dev->ops->lib->txstatus_tasklet,
|
||||
(unsigned long)rt2x00dev);
|
||||
if (rt2x00dev->ops->lib->txstatus_tasklet)
|
||||
tasklet_init(&rt2x00dev->txstatus_tasklet,
|
||||
rt2x00dev->ops->lib->txstatus_tasklet,
|
||||
(unsigned long)rt2x00dev);
|
||||
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user