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 */