diff options
author | David Vrabel <david.vrabel@csr.com> | 2009-08-25 11:41:06 -0400 |
---|---|---|
committer | David Vrabel <david.vrabel@csr.com> | 2009-08-26 07:39:29 -0400 |
commit | 0396c215f301e92677d1e9a064b405e31501dc1d (patch) | |
tree | a54229672abc6f244fcf184701b8a8bf98b70544 /drivers/uwb/hwa-rc.c | |
parent | a9e75a389254801ca160b72c6e221e5bb7e35df9 (diff) |
uwb: avoid radio controller reset loops
If a radio controller reset attempt occurs while a probe() or remove()
is in progress it fails and is retried endlessly, potentially preventing
the probe() or remove() from completing.
If a reset fails, sleep for a bit before retrying the reset. This
allows the probe()/remove() to complete.
Signed-off-by: David Vrabel <david.vrabel@csr.com>
Diffstat (limited to 'drivers/uwb/hwa-rc.c')
-rw-r--r-- | drivers/uwb/hwa-rc.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/uwb/hwa-rc.c b/drivers/uwb/hwa-rc.c index 9052bcb4f528..e7eeb63fab23 100644 --- a/drivers/uwb/hwa-rc.c +++ b/drivers/uwb/hwa-rc.c | |||
@@ -887,8 +887,7 @@ static int hwarc_post_reset(struct usb_interface *iface) | |||
887 | struct hwarc *hwarc = usb_get_intfdata(iface); | 887 | struct hwarc *hwarc = usb_get_intfdata(iface); |
888 | struct uwb_rc *uwb_rc = hwarc->uwb_rc; | 888 | struct uwb_rc *uwb_rc = hwarc->uwb_rc; |
889 | 889 | ||
890 | uwb_rc_post_reset(uwb_rc); | 890 | return uwb_rc_post_reset(uwb_rc); |
891 | return 0; | ||
892 | } | 891 | } |
893 | 892 | ||
894 | /** USB device ID's that we handle */ | 893 | /** USB device ID's that we handle */ |