[08/21,staging] tm6000: Flesh out the IRQ callback.
Commit Message
This brings the IRQ callback implementation more in line with how other
drivers do it.
---
drivers/staging/tm6000/tm6000-video.c | 14 +++++++++++++-
1 files changed, 13 insertions(+), 1 deletions(-)
@@ -517,9 +517,21 @@ static void tm6000_irq_callback(struct urb *urb)
struct tm6000_core *dev = container_of(dma_q, struct tm6000_core, vidq);
int i;
- if (!dev)
+ switch (urb->status) {
+ case 0:
+ case -ETIMEDOUT:
+ break;
+
+ case -ECONNRESET:
+ case -ENOENT:
+ case -ESHUTDOWN:
return;
+ default:
+ tm6000_err("urb completion error %d.\n", urb->status);
+ break;
+ }
+
spin_lock(&dev->slock);
tm6000_isoc_copy(urb);
spin_unlock(&dev->slock);