p54usb: Load firmware asynchronously
authorLarry Finger <Larry.Finger@lwfinger.net>
Sat, 17 Mar 2012 20:16:06 +0000 (21:16 +0100)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 9 Apr 2012 20:07:35 +0000 (16:07 -0400)
commit5612a508d11f81c1ca3290260f86328dfb55d513
tree8ff5d03365b9f7e7a0534c577d504b6bc757eabf
parenta9b9361dd5ef6c39703f2f0c8c18aa2e1f133fc5
p54usb: Load firmware asynchronously

Drivers that load firmware from their probe routine have problems with
the latest versions of udev as they get timeouts while waiting for user
space to start. The problem is fixed by using request_firmware_nowait()
and delaying the start of mac80211 until the firmware is loaded.

To prevent the possibility of the driver being unloaded while the
firmware loading callback is still active, a completion queue entry
is used.

Also, to simplify the firmware loading procedure, this patch removes
the old, unofficial and confusing fallback firmware names. However,
they are still supported! So any user - who is still using them -
is hereby advised to link/rename their old firmware filenames:
isl3890usb to isl3886usb
isl3887usb_bare to isl3887usb

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/p54/p54usb.c
drivers/net/wireless/p54/p54usb.h