Hi,

I recently bought a TI MSP-FET430UIF and an EZ430-F2013.  I looked through
the mailing list, and found a kernel module for outside the kernel tree.
That didn't compile with the kernel I'm using (some function prototypes
have changed since the module was created), so I created the two attached
patches, based very much on the source I grabbed from the list.

Does anyone have a problem with me submitting these to the lkml?  I don't
want to stand on anyone's toes...

Cheers,

Rob

--- drivers/usb/serial/ti_usb_3410_5052.c.orig  2007-03-04 01:36:41.000000000 
+0000
+++ drivers/usb/serial/ti_usb_3410_5052.c       2007-03-04 01:49:07.000000000 
+0000
@@ -246,11 +246,20 @@
        { }
 };
 
-static struct usb_driver ti_usb_driver = {
-       .name                   = "ti_usb_3410_5052",
+static struct usb_driver ti_1port_driver = {
+       .name                   = "ti_usb_3410",
        .probe                  = usb_serial_probe,
        .disconnect             = usb_serial_disconnect,
        .id_table               = ti_id_table_combined,
+       .id_table               = ti_id_table_3410,
+       .no_dynamic_id =        1,
+};
+
+static struct usb_driver ti_2port_driver = {
+       .name                   = "ti_usb_5052",
+       .probe                  = usb_serial_probe,
+       .disconnect             = usb_serial_disconnect,
+       .id_table               = ti_id_table_5052,
        .no_dynamic_id =        1,
 };
 
@@ -371,15 +380,21 @@
        if (ret)
                goto failed_2port;
 
-       ret = usb_register(&ti_usb_driver);
+       ret = usb_register(&ti_1port_driver);
        if (ret)
-               goto failed_usb;
+               goto failed_1port_driver;
+
+       ret = usb_register(&ti_2port_driver);
+       if (ret)
+               goto failed_2port_driver;
 
        info(TI_DRIVER_DESC " " TI_DRIVER_VERSION);
 
        return 0;
 
-failed_usb:
+failed_2port_driver:
+       usb_deregister(&ti_1port_driver);
+failed_1port_driver:
        usb_serial_deregister(&ti_2port_device);
 failed_2port:
        usb_serial_deregister(&ti_1port_device);
@@ -392,7 +407,8 @@
 {
        usb_serial_deregister(&ti_1port_device);
        usb_serial_deregister(&ti_2port_device);
-       usb_deregister(&ti_usb_driver);
+       usb_deregister(&ti_1port_driver);
+       usb_deregister(&ti_2port_driver);
 }
 
 
--- drivers/usb/serial/ti_usb_3410_5052.h~      2007-01-10 19:10:37.000000000 
+0000
+++ drivers/usb/serial/ti_usb_3410_5052.h       2007-03-04 01:30:52.000000000 
+0000
@@ -27,7 +27,7 @@
 
 /* Vendor and product ids */
 #define TI_VENDOR_ID                   0x0451
-#define TI_3410_PRODUCT_ID             0x3410
+#define TI_3410_PRODUCT_ID             0xF430
 #define TI_5052_BOOT_PRODUCT_ID                0x5052  /* no EEPROM, no 
firmware */
 #define TI_5152_BOOT_PRODUCT_ID                0x5152  /* no EEPROM, no 
firmware */
 #define TI_5052_EEPROM_PRODUCT_ID      0x505A  /* EEPROM, no firmware */


Reply via email to