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?

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-users@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-users

Reply via email to