diff options
Diffstat (limited to 'drivers/usb/host/ehci-q.c')
-rw-r--r-- | drivers/usb/host/ehci-q.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/usb/host/ehci-q.c b/drivers/usb/host/ehci-q.c index 4e4066c35a09..36ca5077cdf7 100644 --- a/drivers/usb/host/ehci-q.c +++ b/drivers/usb/host/ehci-q.c | |||
@@ -373,6 +373,17 @@ qh_completions (struct ehci_hcd *ehci, struct ehci_qh *qh) | |||
373 | retry_xacterr: | 373 | retry_xacterr: |
374 | if ((token & QTD_STS_ACTIVE) == 0) { | 374 | if ((token & QTD_STS_ACTIVE) == 0) { |
375 | 375 | ||
376 | /* Report Data Buffer Error: non-fatal but useful */ | ||
377 | if (token & QTD_STS_DBE) | ||
378 | ehci_dbg(ehci, | ||
379 | "detected DataBufferErr for urb %p ep%d%s len %d, qtd %p [qh %p]\n", | ||
380 | urb, | ||
381 | usb_endpoint_num(&urb->ep->desc), | ||
382 | usb_endpoint_dir_in(&urb->ep->desc) ? "in" : "out", | ||
383 | urb->transfer_buffer_length, | ||
384 | qtd, | ||
385 | qh); | ||
386 | |||
376 | /* on STALL, error, and short reads this urb must | 387 | /* on STALL, error, and short reads this urb must |
377 | * complete and all its qtds must be recycled. | 388 | * complete and all its qtds must be recycled. |
378 | */ | 389 | */ |
@@ -647,7 +658,7 @@ qh_urb_transaction ( | |||
647 | /* | 658 | /* |
648 | * data transfer stage: buffer setup | 659 | * data transfer stage: buffer setup |
649 | */ | 660 | */ |
650 | i = urb->num_sgs; | 661 | i = urb->num_mapped_sgs; |
651 | if (len > 0 && i > 0) { | 662 | if (len > 0 && i > 0) { |
652 | sg = urb->sg; | 663 | sg = urb->sg; |
653 | buf = sg_dma_address(sg); | 664 | buf = sg_dma_address(sg); |