greybus: fix repeated input errors
I screwed up the error handling in a patch the other day. If we get
an error on an input URB we should not re-submit it.
Signed-off-by: Alex Elder <elder@linaro.org>
diff --git a/drivers/staging/greybus/es1-ap-usb.c b/drivers/staging/greybus/es1-ap-usb.c
index 12eb9b2..bd416b4 100644
--- a/drivers/staging/greybus/es1-ap-usb.c
+++ b/drivers/staging/greybus/es1-ap-usb.c
@@ -319,9 +319,10 @@
int retval;
if (status) {
- if (status != -EAGAIN)
- dev_err(dev, "urb svc in error %d (dropped)\n", status);
- goto exit;
+ if (status == -EAGAIN)
+ goto exit;
+ dev_err(dev, "urb svc in error %d (dropped)\n", status);
+ return;
}
/* We have a message, create a new message structure, add it to the
@@ -346,10 +347,10 @@
u8 *data;
if (status) {
- if (status != -EAGAIN)
- dev_err(dev, "urb cport in error %d (dropped)\n",
- status);
- goto exit;
+ if (status == -EAGAIN)
+ goto exit;
+ dev_err(dev, "urb cport in error %d (dropped)\n", status);
+ return;
}
/* The size has to be at least one, for the cport id */