Hi,

Here's a patch for the sparc64 code against 2.5.2-pre9 that enables the
code to compile properly due to a patch that has been sent to Linus that
changes the field names of the usbdevfs_ctrltransfer structure to match
the USB spec names.

thanks,

greg k-h


diff -Nru a/arch/sparc64/kernel/ioctl32.c b/arch/sparc64/kernel/ioctl32.c
--- a/arch/sparc64/kernel/ioctl32.c     Sun Jan  6 12:18:36 2002
+++ b/arch/sparc64/kernel/ioctl32.c     Sun Jan  6 12:18:36 2002
@@ -3379,11 +3379,11 @@
 }
 
 struct usbdevfs_ctrltransfer32 {
-       __u8 requesttype;
-       __u8 request;
-       __u16 value;
-       __u16 index;
-       __u16 length;
+       __u8 bRequestType;
+       __u8 bRequest;
+       __u16 wValue;
+       __u16 wIndex;
+       __u16 wLength;
        __u32 timeout;  /* in milliseconds */
        __u32 data;
 };
@@ -3413,14 +3413,14 @@
        /* In usbdevice_fs, it limits the control buffer to a page,
         * for simplicity so do we.
         */
-       if (!uptr || kctrl.length > PAGE_SIZE)
+       if (!uptr || kctrl.wLength > PAGE_SIZE)
                return -EINVAL;
 
        kptr = (void *)__get_free_page(GFP_KERNEL);
 
-       if ((kctrl.requesttype & 0x80) == 0) {
+       if ((kctrl.bRequestType & 0x80) == 0) {
                err = -EFAULT;
-               if (copy_from_user(kptr, uptr, kctrl.length))
+               if (copy_from_user(kptr, uptr, kctrl.wLength))
                        goto out;
        }
 
@@ -3432,8 +3432,8 @@
        set_fs(old_fs);
 
        if (err >= 0 &&
-           ((kctrl.requesttype & 0x80) != 0)) {
-               if (copy_to_user(uptr, kptr, kctrl.length))
+           ((kctrl.bRequestType & 0x80) != 0)) {
+               if (copy_to_user(uptr, kptr, kctrl.wLength))
                        err = -EFAULT;
        }
 


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

Reply via email to