Bug 12212

Summary: add 5372:2303 to /drivers/usb/serial/pl2303
Product: Drivers Reporter: matthew.arnold-1
Component: USBAssignee: Greg Kroah-Hartman (greg)
Status: CLOSED CODE_FIX    
Severity: normal CC: alan
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.24-22-generic Subsystem:
Regression: No Bisected commit-id:

Description matthew.arnold-1 2008-12-13 00:29:04 UTC
Distro: Ubuntu 8.04.1
Problem: an unbranded USB-serial converter is not detected
Steps taken to resolve the problem: 
(unsuccessful) force usb-serial detection by adding (Debian?) udev rules - detects device but incorrectly defaults to generic which doesn't work
(successful) added vendor:product to pl2303 / recompile / insert module

Further info:
Windows drivers report "Cyber Logic" & "EPT Micro" as brands.
lsusb dump:
Bus 003 Device 002: ID 5372:2303  
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x5372 
  idProduct          0x2303 
  bcdDevice            3.00
  iManufacturer           1 Superial Technology Inc.
  iProduct                2 USB-Serial Controller
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           39
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x000a  1x 10 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
Device Status:     0x0000
  (Bus Powered)
Comment 1 Greg Kroah-Hartman 2008-12-13 00:56:53 UTC
On Sat, Dec 13, 2008 at 12:29:04AM -0800, bugme-daemon@bugzilla.kernel.org wrote:
> Problem: an unbranded USB-serial converter is not detected
> Steps taken to resolve the problem: 
> (unsuccessful) force usb-serial detection by adding (Debian?) udev rules -
> detects device but incorrectly defaults to generic which doesn't work
> (successful) added vendor:product to pl2303 / recompile / insert module

Can you send me the patch that you made, in the format described in
Documentation/SubmittingPatches, through email, and I will be able to
apply it and give you the proper credit.
Comment 2 matthew.arnold-1 2008-12-13 03:43:05 UTC
bugme-daemon@bugzilla.kernel.org wrote:
> http://bugzilla.kernel.org/show_bug.cgi?id=12212
>
>
>
>
>
> ------- Comment #1 from greg@kroah.com  2008-12-13 00:56 -------
> On Sat, Dec 13, 2008 at 12:29:04AM -0800, bugme-daemon@bugzilla.kernel.org
> wrote:
>   
>> Problem: an unbranded USB-serial converter is not detected
>> Steps taken to resolve the problem: 
>> (unsuccessful) force usb-serial detection by adding (Debian?) udev rules -
>> detects device but incorrectly defaults to generic which doesn't work
>> (successful) added vendor:product to pl2303 / recompile / insert module
>>     
>
> Can you send me the patch that you made, in the format described in
> Documentation/SubmittingPatches, through email, and I will be able to
> apply it and give you the proper credit.
>
>
>   
ok, I'm not at all familiar with kernel development but here's my 
contribution.
I got the idea from:
http://www.linuxquestions.org/questions/linux-hardware-18/obscure-usb-serial-adapter-368278/

This patch adds the "Superial" USB-Serial converter to pl2303 so that it 
is detected, by the correct driver.
Adds the relevant vendor:product (5372:2303) to the device tables in 
pl2303.c & pl2303.h.
The patch has been tested against 2.6.24-22-generic.

Signed-off-by: Matthew D Arnold <matthew.arnold-1[AT]uts.edu[DOT]au>


------------------------------------------------------------------------------------------
diff -uprN -X ./linux-source-2.6.24-vanilla/Documentation/dontdiff 
./linux-sourc
e-2.6.24-vanilla/drivers/usb/serial/pl2303.c 
./linux-source-2.6.24-patched/drive
rs/usb/serial/pl2303.c
--- ./linux-source-2.6.24-vanilla/drivers/usb/serial/pl2303.c    
2008-11-25 04:46
:05.000000000 +1100
+++ ./linux-source-2.6.24-patched/drivers/usb/serial/pl2303.c    
2008-12-13 21:52
:36.000000000 +1100
@@ -90,6 +90,7 @@ static struct usb_device_id id_table []
     { USB_DEVICE(HL340_VENDOR_ID, HL340_PRODUCT_ID) },
     { USB_DEVICE(YCCABLE_VENDOR_ID, YCCABLE_PRODUCT_ID) },
     { USB_DEVICE(SANWA_VENDOR_ID, SANWA_PRODUCT_ID) },
+    { USB_DEVICE(SUPERIAL_VENDOR_ID, SUPERIAL_PRODUCT_ID) },
     { }                    /* Terminating entry */
 };
 
diff -uprN -X ./linux-source-2.6.24-vanilla/Documentation/dontdiff 
./linux-sourc
e-2.6.24-vanilla/drivers/usb/serial/pl2303.h 
./linux-source-2.6.24-patched/drive
rs/usb/serial/pl2303.h
--- ./linux-source-2.6.24-vanilla/drivers/usb/serial/pl2303.h    
2008-11-25 04:46
:05.000000000 +1100
+++ ./linux-source-2.6.24-patched/drivers/usb/serial/pl2303.h    
2008-12-13 21:52
:09.000000000 +1100
@@ -116,3 +116,8 @@
 /* Sanwa KB-USB2 multimeter cable (ID: 11ad:0001) */
 #define SANWA_VENDOR_ID        0x11ad
 #define SANWA_PRODUCT_ID    0x0001
+
+/* "Superial" USB - Serial */
+#define SUPERIAL_VENDOR_ID    0x5372
+#define SUPERIAL_PRODUCT_ID    0x2303
+