linux-hotplug.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* AirPrime 5220 1xEVDO PC Card
@ 2005-04-27 17:34 Ian Pilcher
  2005-04-27 18:00 ` Greg KH
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: Ian Pilcher @ 2005-04-27 17:34 UTC (permalink / raw)
  To: linux-hotplug

I have an AirPrime 5220 EVDO card from Verizon Wireless.  The good news
is that I basically works under Linux (http://www.ka9q.net/5220.html).
The bad news is that it's necessary to manually load the usbserial
module and create the device node.

Here is the dmesg output when I insert the card:

ohci_hcd: 2004 Feb 02 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI)
PCI: Enabling device 0000:03:00.0 (0000 -> 0002)
ohci_hcd 0000:03:00.0: OHCI Host Controller
PCI: Setting latency timer of device 0000:03:00.0 to 64
ohci_hcd 0000:03:00.0: irq 11, pci mem f8bf6000
ohci_hcd 0000:03:00.0: new USB bus registered, assigned bus number 4
hub 4-0:1.0: USB hub found
hub 4-0:1.0: 2 ports detected
ohci_hcd 0000:03:00.0: wakeup
usb 4-1: new full speed USB device using address 2
usb 4-1: device not accepting address 2, error -110
usb 4-0:1.0: Cannot enable port 1.  Maybe the USB cable is bad?
usb 4-1: new full speed USB device using address 4

As you can see, the OHCI module gets loaded properly, but the usbserial
module does not get loaded.

Here is the lspci output for the card:

03:00.0 USB Controller: Agere Systems (former Lucent Microelectronics)
                 USS-312 USB Controller (rev 10) (prog-if 10 [OHCI])
         Subsystem: Agere Systems (former Lucent Microelectronics)
                         USS-312 USB Controller
         Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
                         ParErr- Stepping- SERR- FastB2B-
         Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
                         <TAbort- <MAbort- >SERR- <PERR-
         Latency: 64 (750ns min, 21500ns max)
         Interrupt: pin A routed to IRQ 11
         Region 0: Memory at 40800000 (32-bit, non-prefetchable)
                         [size=4K]
         Capabilities: [50] Power Management version 2
                 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA
                                 PME(D0-,D1+,D2+,D3hot+,D3cold-)
                 Status: D0 PME-Enable- DSel=0 DScale=1 PME-

And here's what lsusb says about it:

Bus 004 Device 004: ID 0f3d:0112
Device Descriptor:
   bLength                18
   bDescriptorType         1
   bcdUSB               1.10
   bDeviceClass            0 (Defined at Interface level)
   bDeviceSubClass         0
   bDeviceProtocol         0
   bMaxPacketSize0        16
   idVendor           0x0f3d
   idProduct          0x0112
   bcdDevice            0.01
   iManufacturer           1 AirPrime, Incorporated
   iProduct                2 AirPrime CDMA Wireless PC Card
   iSerial                 0
   bNumConfigurations      1
   Configuration Descriptor:
     bLength                 9
     bDescriptorType         2
     wTotalLength           62
     bNumInterfaces          2
     bConfigurationValue     1
     iConfiguration          0
     bmAttributes         0xc0
       Self Powered
     MaxPower              100mA
     Interface Descriptor:
       bLength                 9
       bDescriptorType         4
       bInterfaceNumber        0
       bAlternateSetting       0
       bNumEndpoints           3
       bInterfaceClass       255 Vendor Specific Class
       bInterfaceSubClass    255 Vendor Specific Subclass
       bInterfaceProtocol    255 Vendor Specific Protocol
       iInterface              4 Data Interface
       Endpoint Descriptor:
         bLength                 7
         bDescriptorType         5
         bEndpointAddress     0x81  EP 1 IN
         bmAttributes            3
           Transfer Type            Interrupt
           Synch Type               none
           Usage Type               Data
         wMaxPacketSize     0x0010  bytes 16 once
         bInterval             128
       Endpoint Descriptor:
         bLength                 7
         bDescriptorType         5
         bEndpointAddress     0x8a  EP 10 IN
         bmAttributes            2
           Transfer Type            Bulk
           Synch Type               none
           Usage Type               Data
         wMaxPacketSize     0x0040  bytes 64 once
         bInterval               0
       Endpoint Descriptor:
         bLength                 7
         bDescriptorType         5
         bEndpointAddress     0x0b  EP 11 OUT
         bmAttributes            2
           Transfer Type            Bulk
           Synch Type               none
           Usage Type               Data
         wMaxPacketSize     0x0040  bytes 64 once
         bInterval               0
     Interface Descriptor:
       bLength                 9
       bDescriptorType         4
       bInterfaceNumber        1
       bAlternateSetting       0
       bNumEndpoints           2
       bInterfaceClass       255 Vendor Specific Class
       bInterfaceSubClass    255 Vendor Specific Subclass
       bInterfaceProtocol    255 Vendor Specific Protocol
       iInterface              4 Data Interface
       Endpoint Descriptor:
         bLength                 7
         bDescriptorType         5
         bEndpointAddress     0x82  EP 2 IN
         bmAttributes            2
           Transfer Type            Bulk
           Synch Type               none
           Usage Type               Data
         wMaxPacketSize     0x0040  bytes 64 once
         bInterval               0
       Endpoint Descriptor:
         bLength                 7
         bDescriptorType         5
         bEndpointAddress     0x05  EP 5 OUT
         bmAttributes            2
           Transfer Type            Bulk
           Synch Type               none
           Usage Type               Data
         wMaxPacketSize     0x0040  bytes 64 once
         bInterval               0
   Language IDs: (length=4)
      0409 English(US)

As you can see, bInterface class is set to 255 (Vendor Specific Class).
I assume that this is why the usbserial module isn't loaded.  When I
manually load usbserial, specifying the vendor and product, it works,
and I get the following dmesg output:

drivers/usb/serial/usb-serial.c: USB Serial support registered for
                 Generic
usbserial_generic 4-1:1.0: Generic converter detected
usb 4-1: Generic converter now attached to ttyUSB0
usbserial_generic 4-1:1.1: Generic converter detected
usb 4-1: Generic converter now attached to ttyUSB1
usbcore: registered new driver usbserial_generic
usbcore: registered new driver usbserial
drivers/usb/serial/usb-serial.c: USB Serial Driver core v2.0

I've also turned udev logging on, and the following entries appear in
the syslog:

udev[3626]: creating device node '/dev/<NULL>1'
udev[3624]: creating device node '/dev/<NULL>0'

Sure enough, my /dev directory now has:

crw-------  1 root root 0, 0 Apr 27 12:17 /dev/<NULL>0
crw-------  1 root root 0, 1 Apr 27 12:17 /dev/<NULL>1

Note that, ignoring the messed up names, the major device numbers are
incorrect.  I've verified this by symlinking /dev/modem to <NULL>0 and
attempting to make a connection; kppp reports that it can't open the
modem.  If I manually 'mknod /dev/ttyUSB0 c 188 0' and symlink
/dev/modem to ttyUSB0, I can connect with kppp.

So my questions (finally!):

1.  How can I get the hotplug system to load the usbserial module,
     specifying the vendor and product, when this card is inserted.
     I've tried adding "usbserial 0x0003 0x0f3d 0x0112 ..." to
     /etc/hotplug/usb.usermap, but it did not appear to have any
     effect.

2.  How can I get udev to create the proper device nodes when usbserial
     loads.

TIA!

-- 
====================================
Ian Pilcher                                        i.pilcher@comcast.net
====================================



-------------------------------------------------------
SF.Net email is sponsored by: Tell us your software development plans!
Take this survey and enter to win a one-year sub to SourceForge.net
Plus IDC's 2005 look-ahead and a copy of this survey
Click here to start!  http://www.idcswdc.com/cgi-bin/survey?id\x105hix
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2005-04-28 21:33 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-04-27 17:34 AirPrime 5220 1xEVDO PC Card Ian Pilcher
2005-04-27 18:00 ` Greg KH
2005-04-27 18:17 ` Greg KH
2005-04-28  0:57 ` Ian Pilcher
2005-04-28  2:47 ` David Brownell
2005-04-28  3:00 ` Matthew Dharm
2005-04-28  5:12 ` Greg KH
2005-04-28 12:26 ` Ian Pilcher
2005-04-28 20:47 ` Linas Vepstas
2005-04-28 21:33 ` Ian Pilcher

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).