(patch 7 of 8)

Hi,

Here's a patch for the usb rio500 driver against 2.2.20-pre2 that brings
it up to the same logic level that is in 2.4.5.

thanks,

greg k-h
diff -Nru a/drivers/usb/rio500.c b/drivers/usb/rio500.c
--- a/drivers/usb/rio500.c      Tue Jun 12 22:34:40 2001
+++ b/drivers/usb/rio500.c      Tue Jun 12 22:34:40 2001
@@ -40,6 +40,13 @@
 
 #include "rio500_usb.h"
 
+/*
+ * Version Information
+ */
+#define DRIVER_VERSION "v1.0.0"
+#define DRIVER_AUTHOR "Cesar Miquel <[EMAIL PROTECTED]>"
+#define DRIVER_DESC "USB Rio 500 driver"
+
 #define RIO_MINOR   64
 
 /* stall/wait timeout for rio */
@@ -121,16 +128,21 @@
                data = (void *) arg;
                if (data == NULL)
                        break;
-               if (copy_from_user(&rio_cmd, data, sizeof(struct RioCommand)))
-                       return -EFAULT;
-               if (rio_cmd.length > PAGE_SIZE)
-                       return -EINVAL;
+               if (copy_from_user(&rio_cmd, data, sizeof(struct RioCommand))) {
+                       retval = -EFAULT;
+                       goto err_out;
+               }
+               if (rio_cmd.length > PAGE_SIZE) {
+                       retval = -EINVAL;
+                       goto err_out;
+               }
                buffer = (unsigned char *) __get_free_page(GFP_KERNEL);
                if (buffer == NULL)
                        return -ENOMEM;
                if (copy_from_user(buffer, rio_cmd.buffer, rio_cmd.length)) {
+                       retval = -EFAULT;
                        free_page((unsigned long) buffer);
-                       return -EFAULT;
+                       goto err_out;
                }
 
                requesttype = rio_cmd.requesttype | USB_DIR_IN |
@@ -466,8 +478,7 @@
        release:        close_rio,
 };
 
-static struct
-usb_driver rio_driver = {
+static struct usb_driver rio_driver = {
        name:           "rio500",
        probe:          probe_rio,
        disconnect:     disconnect_rio,
@@ -481,6 +492,9 @@
                return -1;
 
        info("USB Rio support registered.");
+       info(DRIVER_VERSION " " DRIVER_AUTHOR);
+       info(DRIVER_DESC);
+
        return 0;
 }
 
@@ -498,5 +512,6 @@
 module_init(usb_rio_init);
 module_exit(usb_rio_cleanup);
 
-MODULE_AUTHOR("Cesar Miquel <[EMAIL PROTECTED]>");
-MODULE_DESCRIPTION("USB Rio 500 driver");
+MODULE_AUTHOR( DRIVER_AUTHOR );
+MODULE_DESCRIPTION( DRIVER_DESC );
+

Reply via email to