summaryrefslogtreecommitdiff
path: root/drivers/usb
diff options
context:
space:
mode:
authorAnderson Lizardo <anderson.lizardo@indt.org.br>2008-05-13 10:32:57 +0100
committerStephen Rothwell <sfr@canb.auug.org.au>2008-06-05 10:46:01 +1000
commitc8e15569eb46bf0c12689192772afdcfa2265ae4 (patch)
treed2b306341d67fa9794e377676bbd365dc301c3f6 /drivers/usb
parent85c27d780402a67fe35b147742711c92e6a80966 (diff)
WUSB: fix error path for wusb_set_dev_addr()
Error path for wusb_set_dev_addr() was handled incorrectly. Fix it by considering error only when return value is negative. Signed-off-by: Anderson Lizardo <anderson.lizardo@indt.org.br> Signed-off-by: David Vrabel <david.vrabel@csr.com>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/wusbcore/devconnect.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/usb/wusbcore/devconnect.c b/drivers/usb/wusbcore/devconnect.c
index 3eab00638280..386db5adcafa 100644
--- a/drivers/usb/wusbcore/devconnect.c
+++ b/drivers/usb/wusbcore/devconnect.c
@@ -239,8 +239,8 @@ static struct wusb_dev *wusbhc_cack_add(struct wusbhc *wusbhc,
"port %u\n", dev_addr, port_idx);
result = wusb_set_dev_addr(wusbhc, wusb_dev, dev_addr);
- if (result)
- return NULL;
+ if (result < 0)
+ return NULL;
}
wusb_dev->entry_ts = jiffies;
list_add_tail(&wusb_dev->cack_node, &wusbhc->cack_list);
@@ -1306,7 +1306,7 @@ int wusb_set_dev_addr(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev, u8 addr)
wusb_dev->addr = addr;
result = wusbhc->dev_info_set(wusbhc, wusb_dev);
- if (result)
+ if (result < 0)
dev_err(wusbhc->dev, "device %d: failed to set device "
"address\n", wusb_dev->port_idx);
else