diff options
author | Larry Finger <Larry.Finger@lwfinger.net> | 2012-03-09 08:27:46 +0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-03-13 22:54:16 +0400 |
commit | 6b6fa5868eec26bdc6a83543cebb8cf832a2645a (patch) | |
tree | 71f845d127ec1ff121b8a336ead86c6a6ac1c1bb /drivers/net/wireless/b43/b43.h | |
parent | a3ea2c76b193be5794e0de6aff66e14c21b904f8 (diff) | |
download | linux-6b6fa5868eec26bdc6a83543cebb8cf832a2645a.tar.xz |
b43: Load firmware from a work queue and not from the probe routine
Recent changes in udev are causing problems for drivers that load firmware
from the probe routine. As b43 has such a structure, it must be changed.
As this driver loads more than 1 firmware file, changing to the asynchronous routine
request_firmware_nowait() would be complicated. In this implementation, the probe
routine starts a queue that calls the firmware loading routines.
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/b43/b43.h')
-rw-r--r-- | drivers/net/wireless/b43/b43.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/b43/b43.h b/drivers/net/wireless/b43/b43.h index 835462dc1206..67c13af6f206 100644 --- a/drivers/net/wireless/b43/b43.h +++ b/drivers/net/wireless/b43/b43.h @@ -932,6 +932,9 @@ struct b43_wl { /* Flag that implement the queues stopping. */ bool tx_queue_stopped[B43_QOS_QUEUE_NUM]; + /* firmware loading work */ + struct work_struct firmware_load; + /* The device LEDs. */ struct b43_leds leds; |