]> git.karo-electronics.de Git - linux-beck.git/commit
USB: HWA: fix device probe failure
authorThomas Pugliese <thomas.pugliese@gmail.com>
Mon, 24 Jun 2013 19:26:35 +0000 (14:26 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 24 Jun 2013 23:20:43 +0000 (16:20 -0700)
commita899575191ba85a71401f2c8f36bec7b14487043
tree74070049b20ec44cf625db68ac62751e4b33cab0
parent6e6581e0a94758a4e69fab82407d39312eeff5c4
USB: HWA: fix device probe failure

This patch fixes a race condition that caused the HWA_HC interface probe
function to occasionally fail.  The HWA_HC would attempt to register
itself with the HWA_RC by searching for a uwb_rc class device with the
same parent device ptr.  If the probe function for the HWA_RC interface
had yet to run, the uwb_rc class device would not have been created
causing the look up to fail and the HWA_HC probe function to return an
error causing the device to be unusable.

The fix is for the HWA to delay registering with the HWA_RC until
receiving the command from userspace to start the wireless channel.  It
is the responsibility of userspace to ensure that the uwb_rc class
device has been created before starting the HWA channel.

Signed-off-by: Thomas Pugliese <thomas.pugliese@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/hwa-hc.c
drivers/usb/wusbcore/mmc.c
drivers/usb/wusbcore/pal.c
drivers/usb/wusbcore/reservation.c
drivers/usb/wusbcore/wusbhc.c
drivers/uwb/pal.c
drivers/uwb/uwb-internal.h