(Originally posted in linux-usb-users, but this seems more appropriate 
for linux-usb-devel)

Recently I bought an IrDA USB dongle with Windows-only drivers. When I 
plugged
it in in Fedora 4, lsusb reported the following:

Bus 001 Device 005: ID 07c0:4200 Code Mercenaries Hard- und Software GmbH
Device Descriptor:
 bLength                18
 bDescriptorType         1
 bcdUSB               1.10
 bDeviceClass            0 (Defined at Interface level)
 bDeviceSubClass         0
 bDeviceProtocol         0
 bMaxPacketSize0         8
 idVendor           0x07c0 Code Mercenaries Hard- und Software GmbH
 idProduct          0x4200
 bcdDevice            0.00
 iManufacturer           1 KingSun Co,Ltd
 iProduct                2 USB to Irda
 iSerial                 0
 bNumConfigurations      1
 Configuration Descriptor:
   bLength                 9
   bDescriptorType         2
   wTotalLength           41
   bNumInterfaces          1
   bConfigurationValue     1
   iConfiguration          4 Usb to Irda
   bmAttributes         0x80
   MaxPower              100mA
   Interface Descriptor:
     bLength                 9
     bDescriptorType         4
     bInterfaceNumber        0
     bAlternateSetting       0
     bNumEndpoints           2
     bInterfaceClass       255 Vendor Specific Class
     bInterfaceSubClass     85
     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     0x0008  1x 8 bytes
       bInterval               1
     Endpoint Descriptor:
       bLength                 7
       bDescriptorType         5
       bEndpointAddress     0x02  EP 2 OUT
       bmAttributes            3
         Transfer Type            Interrupt
         Synch Type               None
         Usage Type               Data
       wMaxPacketSize     0x0008  1x 8 bytes
       bInterval               1

Now, I *know* this particular dongle is not supported in Linux. First, 
it announces
itself as a "255 Vendor Specific Class". Second, from what I understood 
from
irda-usb.c in the 2.6.18-rc2 sources, the endpoints announced by the 
dongle should
be both of type Bulk, and these ones are of type Interrupt. What I would 
like to
know is the following: is there any possibility that a (naive) replace 
of bulk-transfers
with interrupt transfers in irda-usb.c, used as a template for a new 
driver, could
possibly work to support this dongle, or is there a fundamental problem 
with
the bulk-interrupt issue that prevents this and forces a complete 
rewrite for a
new driver?

(currently downloading IrDA specs, but I thought I might as well ask 
this now)

Alex Villacís Lasso



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to