NEC PCMCIA -> USB 2.0 card enumerates itself but not anything plugged into it

I

i336_

Guest
Hi everyone.

I recently purchased a (NEC-chipset-based) PCMCIA-USB2.0 adapter card for my laptop, which only has a single USB 1.1 port.

I am completely stumped by this card; it itself is detected fine, but nothing happens when I plug devices into it, although it is electrically "on": the power LED on one of my USB hubs lights up for a fraction of a second as the hub initialises, then turns back off as the hub figures out it's not connected to a "live" port.

In a nutshell:
  • I've installed the drivers from the supplied CD on Win98 and the card does initialize; my card reader happened to be handy at the time, and I could see the files on the CompactFlash card in it just fine.
  • I have an old PCMCIA network card lying around which I don't have the special cable for, but inserting this card autoloads the correct network driver, so I know that PCMCIA is configured and working correctly.
  • I'm using Slackware 12.2 with a 2.6.27.7 kernel; I know this isn't the newest, but I've stuck with this kernel because it's the oldest (smallest) kernel which supports my Wi-Fi dongle via the rt73usb driver, and this laptop has some kind of hardwre memory issue and refuses to work with more than 32MB of RAM. It also happens to be the official kernel release provided with Slackware 12.2 ;)
  • I compiled a 3.2.29 kernel a while ago to test the s3virge driver; that didn't work out so I switched back to 2.6.27.7, but I left 3.2.29 installed "just in case" I'd ever ned it (!) - I tried inserting the card while running that, and.... same outcome: no response. :mad:
If I boot the laptop with the card inserted, or insert the card "hot" and run 'pccardctl insert', both ohci_hcd and ehci_hcd spout messages I think most would connect with run-of-the-mill initialization. That said, nothing happens when I actually plug devices in, no matter what the device is.

Nothing happens. No HDD seeking, nothing in dmesg, nothing in /var/log/*, nothing printed to the screen with LogLevel set to 9 via Shift+SysRq+9. The most I've managed to do is "echo on > /sys/bus/pci/<I forget what>/usb4 (the USB 2.0 controller endpoint)/power/level", which (using the card reader again) makes the status LED go off, which I've learned :)P) means my card reader is initializing... then I get a bunch of initialization errors (I think error -110) in dmesg.

I've posted the output of dmesg, lspcmcia, lspci and lsusb below, as well as a link to my kernel .config.

The dmesg log traces bootup, card detection, connecting a card reader to the internal USB 1.1 port, and 'pccardctl eject'/'pccardctl insert'-cycling the card.

I should point out that 'lsusb' can sometimes hangup the terminal it runs from, although I haven't tracked down exactly what causes this. Note also that the first NEC USB controller listed in lsusb is the one built into the laptop (yes, an interesting coincidence :p); the last three (yes, all three) are what the card adds.

Finally, I've seen as I've variously browsed around that the card seems to enumerate to 5 ports for other people; it only physically has two, although I'm seeing 5 here as well.

dmesg: http://pastebin.com/qdwxsDty
A couple of (presumably) relevant lines (what does the last one mean?):
Code:
[ 7051.108230] pccard: CardBus card inserted into slot 0
[ 7051.120524] PCI: 0000:01:00.0 reg 10 32bit mmio: [0, fff]
[ 7051.132460] pci 0000:01:00.0: supports D1
[ 7051.143928] pci 0000:01:00.0: supports D2
[ 7051.155389] pci 0000:01:00.0: PME# supported from D0 D1 D2 D3hot
[ 7051.167159] pci 0000:01:00.0: PME# disabled
[ 7051.178904] PCI: 0000:01:00.1 reg 10 32bit mmio: [0, fff]
[ 7051.190891] pci 0000:01:00.1: supports D1
[ 7051.202621] pci 0000:01:00.1: supports D2
[ 7051.214297] pci 0000:01:00.1: PME# supported from D0 D1 D2 D3hot
[ 7051.225995] pci 0000:01:00.1: PME# disabled
[ 7051.237599] PCI: 0000:01:00.2 reg 10 32bit mmio: [0, ff]
[ 7051.249312] pci 0000:01:00.2: supports D1
[ 7051.260753] pci 0000:01:00.2: supports D2
[ 7051.272334] pci 0000:01:00.2: PME# supported from D0 D1 D2 D3hot
[ 7051.284239] pci 0000:01:00.2: PME# disabled
[ 7051.310973] ohci_hcd 0000:01:00.0: enabling device (0000 -> 0002)
[ 7051.328159] ohci_hcd 0000:01:00.0: PCI INT A -> Link[LNKC] -> GSI 11 (level, low) -> IRQ 11
[ 7051.341389] ohci_hcd 0000:01:00.0: setting latency timer to 64
[ 7051.360862] ohci_hcd 0000:01:00.0: OHCI Host Controller
[ 7051.393510] ohci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 2
[ 7051.409461] ohci_hcd 0000:01:00.0: irq 11, io mem 0x14000000
[ 7051.510536] usb usb2: configuration #1 chosen from 1 choice
[ 7051.528358] hub 2-0:1.0: USB hub found
[ 7051.544181] hub 2-0:1.0: 3 ports detected
[ 7051.763802] usb usb2: New USB device found, idVendor=1d6b, idProduct=0001
[ 7051.797015] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 7051.829214] usb usb2: Product: OHCI Host Controller
[ 7051.847506] usb usb2: Manufacturer: Linux 2.6.27.7 ohci_hcd
[ 7051.861542] usb usb2: SerialNumber: 0000:01:00.0
[ 7051.890418] ohci_hcd 0000:01:00.1: enabling device (0000 -> 0002)
[ 7051.939423] ohci_hcd 0000:01:00.1: PCI INT B -> Link[LNKC] -> GSI 11 (level, low) -> IRQ 11
[ 7051.954651] usb 2-1: new full speed USB device using ohci_hcd and address 2
[ 7051.970392] ohci_hcd 0000:01:00.1: setting latency timer to 64
[ 7051.985554] ohci_hcd 0000:01:00.1: OHCI Host Controller
[ 7052.016434] ohci_hcd 0000:01:00.1: new USB bus registered, assigned bus number 3
[ 7052.052346] ohci_hcd 0000:01:00.1: irq 11, io mem 0x14001000
[ 7052.171954] usb usb3: configuration #1 chosen from 1 choice
[ 7052.204885] hub 3-0:1.0: USB hub found
[ 7052.256301] hub 3-0:1.0: 2 ports detected
[ 7052.389705] usb usb3: New USB device found, idVendor=1d6b, idProduct=0001
[ 7052.431813] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 7052.450938] usb usb3: Product: OHCI Host Controller
[ 7052.467671] usb usb3: Manufacturer: Linux 2.6.27.7 ohci_hcd
[ 7052.484568] usb usb3: SerialNumber: 0000:01:00.1
[ 7052.516207] ehci_hcd 0000:01:00.2: enabling device (0000 -> 0002)
[ 7052.567936] ehci_hcd 0000:01:00.2: PCI INT C -> Link[LNKC] -> GSI 11 (level, low) -> IRQ 11
[ 7052.585872] ehci_hcd 0000:01:00.2: EHCI Host Controller
[ 7052.618421] ehci_hcd 0000:01:00.2: new USB bus registered, assigned bus number 4
[ 7052.678395] ehci_hcd 0000:01:00.2: irq 11, io mem 0x14002000
[ 7052.702206] ehci_hcd 0000:01:00.2: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
[ 7052.735436] usb usb4: configuration #1 chosen from 1 choice
[ 7052.775320] hub 4-0:1.0: USB hub found
[ 7052.828627] hub 4-0:1.0: 5 ports detected
[ 7053.064722] usb usb4: New USB device found, idVendor=1d6b, idProduct=0002
[ 7053.112341] usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 7053.130655] usb usb4: Product: EHCI Host Controller
[ 7053.148322] usb usb4: Manufacturer: Linux 2.6.27.7 ehci_hcd
[ 7053.166274] usb usb4: SerialNumber: 0000:01:00.2
[ 7056.969272] ohci_hcd 0000:01:00.0: Unlink after no-IRQ?  Controller is probably using the wrong IRQ.

lspcmcia -vvv: ("ready: no"?!)
Code:
Socket 0 Bridge:       [yenta_cardbus]     (bus ID: 0000:00:13.0)
    Configuration:    state: on    ready: no
            Voltage: 3.3V Vcc: 3.3V Vpp: 3.3V
            Available IRQs: 3, 4, 9, 10
            Available ioports:    --none--
            Available iomem:    --none--
  CardBus card -- see "lspci" for more information
Socket 1 Bridge:       [yenta_cardbus]     (bus ID: 0000:00:13.1)
    Configuration:    state: on    ready: no
            Available IRQs: 3, 4, 9, 10
            Available ioports:    --none--
            Available iomem:    --none--

lspci -vvv: http://pastebin.com/j0MHvkUv
Relevent sections follow.
Code:
00:13.0 CardBus bridge: Toshiba America Info Systems ToPIC97 (rev 07)
    Subsystem: Toshiba America Info Systems Satellite 4010
    Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=slow >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 0
    Interrupt: pin A routed to IRQ 11
    Region 0: Memory at 20010000 (32-bit, non-prefetchable) [size=4K]
    Bus: primary=00, secondary=01, subordinate=04, sec-latency=0
    Memory window 0: 10000000-13fff000 (prefetchable)
    Memory window 1: 14000000-17fff000
    I/O window 0: 00001000-000010ff
    I/O window 1: 00001400-000014ff
    BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt- PostWrite+
    16-bit legacy interface ports at 0001
    Kernel driver in use: yenta_cardbus
    Kernel modules: yenta_socket

00:13.1 CardBus bridge: Toshiba America Info Systems ToPIC97 (rev 07)
    Subsystem: Toshiba America Info Systems Satellite 4010
    Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=slow >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 0
    Interrupt: pin B routed to IRQ 11
    Region 0: Memory at 20011000 (32-bit, non-prefetchable) [size=4K]
    Bus: primary=00, secondary=05, subordinate=08, sec-latency=0
    Memory window 0: 18000000-1bfff000 (prefetchable)
    Memory window 1: 1c000000-1ffff000
    I/O window 0: 00001c00-00001cff
    I/O window 1: 00002000-000020ff
    BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt+ PostWrite+
    16-bit legacy interface ports at 0001
    Kernel driver in use: yenta_cardbus
    Kernel modules: yenta_socket

01:00.0 USB Controller: NEC Corporation USB (rev 43) (prog-if 10 [OHCI])
    Subsystem: NEC Corporation Unknown device 1735
    Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 64 (250ns min, 10500ns max)
    Interrupt: pin A routed to IRQ 11
    Region 0: Memory at 14000000 (32-bit, non-prefetchable) [size=4K]
    Capabilities: [40] Power Management version 2
        Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold-)
        Status: D0 PME-Enable- DSel=0 DScale=0 PME-
    Kernel driver in use: ohci_hcd

01:00.1 USB Controller: NEC Corporation USB (rev 43) (prog-if 10 [OHCI])
    Subsystem: NEC Corporation Unknown device 1033
    Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 64 (250ns min, 10500ns max)
    Interrupt: pin B routed to IRQ 11
    Region 0: Memory at 14001000 (32-bit, non-prefetchable) [size=4K]
    Capabilities: [40] Power Management version 2
        Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold-)
        Status: D0 PME-Enable- DSel=0 DScale=0 PME-
    Kernel driver in use: ohci_hcd

01:00.2 USB Controller: NEC Corporation USB 2.0 (rev 04) (prog-if 20 [EHCI])
    Subsystem: Aten International Co. Ltd. Unknown device 00e0
    Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 68 (4000ns min, 8500ns max), Cache Line Size: 32 bytes
    Interrupt: pin C routed to IRQ 11
    Region 0: Memory at 14002000 (32-bit, non-prefetchable) [size=256]
    Capabilities: [40] Power Management version 2
        Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold-)
        Status: D0 PME-Enable- DSel=0 DScale=0 PME-
    Kernel driver in use: ehci_hcd

lsusb -vv: http://pastebin.com/npxhPNdE
Too big to post any of it here IMHO :p

Kernel .config: http://pastebin.com/vmgikfKs

Thanks for your time :) looking forward to your replies and any suggestions you might have!

- i336_
 


USB might be plug-and-play, but a PCMCIA card is not. Have you tried plugging up (PCMCIA AND USB) and then rebooting?
 
Unfortunately, I have. I've booted a couple of times with devices connected, to no avail.
 
I had one of it earlier and i booted it one time and it turned out to be absolutely fine..
 

Members online


Top