# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
#                  ChangeSet    1.541   -> 1.542  
#       drivers/usb/host/ehci-q.c       1.12    -> 1.13   
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 02/04/22      [EMAIL PROTECTED]     1.542
# [PATCH] Re: PATCH: 2.5.8 ehci, submit errors
# 
# Oh, and for non-x86 platforms with interesting pci
# mapping, this tweak to one new routine would be
# important in a particular error path I've yet to see ... :)
# --------------------------------------------
#
diff -Nru a/drivers/usb/host/ehci-q.c b/drivers/usb/host/ehci-q.c
--- a/drivers/usb/host/ehci-q.c Mon Apr 22 14:28:10 2002
+++ b/drivers/usb/host/ehci-q.c Mon Apr 22 14:28:10 2002
@@ -426,23 +426,25 @@
                list_del (&qtd->qtd_list);
                if (unmapped != 2) {
                        int     direction;
+                       size_t  size;
 
                        /* for ctrl unmap twice: SETUP and DATA;
                         * else (bulk, intr) just once: DATA
                         */
-                       if (!unmapped++ && usb_pipecontrol (urb->pipe))
+                       if (!unmapped++ && usb_pipecontrol (urb->pipe)) {
                                direction = PCI_DMA_TODEVICE;
-                       else {
+                               size = sizeof (struct usb_ctrlrequest);
+                       } else {
                                direction = usb_pipein (urb->pipe)
                                        ? PCI_DMA_FROMDEVICE
                                        : PCI_DMA_TODEVICE;
+                               size = qtd->urb->transfer_buffer_length;
                                unmapped++;
                        }
                        if (qtd->buf_dma)
                                pci_unmap_single (ehci->hcd.pdev,
                                        qtd->buf_dma,
-                                       qtd->urb->transfer_buffer_length,
-                                       direction);
+                                       size, direction);
                }
                ehci_qtd_free (ehci, qtd);
        }

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to