PCMCIA card disabled - please help

Iain Mott mott at reverberant.com
Thu Jun 9 23:12:41 EDT 2005


Hello

I have a problem activating a 32-bit PCMCIA sound card on a Compaq
R3003AP. I've written to one of the Gentoo list about this, as the
problem started after an update of Gentoo - unfortunately I haven't
received any help there.

My kernel is a gentoo 2.6.11-r9. I have in-kernel support for PCMCIA
with both 16 and 32 bit support selected as well as Yenta card-bridge
support. This system used to work.

lspci -vv is as follows (with edits) and shows that the RME cardbus is
disabled:


0000:02:04.0 CardBus bridge: Texas Instruments PCI1620 PC Card
Controller (rev 01)
Subsystem: Hewlett-Packard Company: Unknown device 006b
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: 168, cache line size 20
Interrupt: pin A routed to IRQ 10
Region 0: Memory at 28001000 (32-bit, non-prefetchable)
Bus: primary=02, secondary=03, subordinate=06, sec-latency=176
Memory window 0: 28400000-287ff000 (prefetchable)
Memory window 1: 28800000-28bff000
I/O window 0: 00004000-000040ff
I/O window 1: 00004400-000044ff
BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt- PostWrite+
16-bit legacy interface ports at 0001

0000:02:04.1 CardBus bridge: Texas Instruments PCI1620 PC Card
Controller (rev 01)
Subsystem: Hewlett-Packard Company: Unknown device 006b
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: 168, cache line size 20
Interrupt: pin B routed to IRQ 10
Region 0: Memory at 28002000 (32-bit, non-prefetchable)
Bus: primary=02, secondary=07, subordinate=0a, sec-latency=176
Memory window 0: 28c00000-28fff000 (prefetchable)
Memory window 1: 29000000-293ff000
I/O window 0: 00004800-000048ff
I/O window 1: 00004c00-00004cff
BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt+ PostWrite+
16-bit legacy interface ports at 0001


0000:02:07.0 USB Controller: NEC Corporation USB (rev 43) (prog-if 10
[OHCI])
Subsystem: NEC Corporation USB
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 (250ns min, 10500ns max), cache line size 08
Interrupt: pin A routed to IRQ 10
Region 0: Memory at d0206000 (32-bit, non-prefetchable)
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-


0000:03:00.0 Multimedia audio controller: Xilinx Corporation RME
Hammerfall DSP (rev 0d)
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-
Interrupt: pin A routed to IRQ 10
Region 0: Memory at 28800000 (32-bit, non-prefetchable) [disabled]


I notice that both the "RME Hammerfall DSP" and the USB (there are two
others not listed) have: "Interrupt: pin A routed to IRQ 10" but I don't
know if this is a problem.

Previously, my system worked with "pci=noacpi" in the kernel boot
command. I have tried " pci=usepirqmask" but this results in all sorts
of ALSA errors breaking the audio and definitely no fix. With pci=noacpi
set, relevant extracts from syslog now include:

Jun 10 08:10:47 localhost kernel: PCI: Guessed IRQ 10 for device
0000:02:04.0
Jun 10 08:10:47 localhost kernel: IRQ routing conflict for 0000:00:14.5,
have irq 5, want irq 10
Jun 10 08:10:47 localhost kernel: IRQ routing conflict for 0000:00:14.6,
have irq 5, want irq 10
Jun 10 08:10:47 localhost kernel: Yenta: CardBus bridge found at
0000:02:04.0 [103c:006b]
Jun 10 08:10:47 localhost kernel: Yenta: Enabling burst memory read
transactions
Jun 10 08:10:47 localhost kernel: Yenta: Using CSCINT to route CSC
interrupts to PCI
Jun 10 08:10:47 localhost kernel: Yenta: Routing CardBus interrupts to
PCI
Jun 10 08:10:47 localhost kernel: Yenta TI: socket 0000:02:04.0, mfunc
0x01111d22, devctl 0x64
Jun 10 08:10:47 localhost kernel: Yenta: ISA IRQ mask 0x0098, PCI irq 10
Jun 10 08:10:47 localhost kernel: Socket status: 30000020
Jun 10 08:10:47 localhost kernel: PCI: Guessed IRQ 10 for device
0000:02:04.1
Jun 10 08:10:47 localhost kernel: PCI: Sharing IRQ 10 with 0000:00:14.1
Jun 10 08:10:47 localhost kernel: PCI: Sharing IRQ 10 with 0000:01:05.0
Jun 10 08:10:47 localhost kernel: PCI: Sharing IRQ 10 with 0000:02:00.0
Jun 10 08:10:47 localhost kernel: PCI: Sharing IRQ 10 with 0000:02:07.0
Jun 10 08:10:47 localhost kernel: Yenta: CardBus bridge found at
0000:02:04.1 [103c:006b]
Jun 10 08:10:47 localhost kernel: Yenta: Using CSCINT to route CSC
interrupts to PCI
Jun 10 08:10:47 localhost kernel: Yenta: Routing CardBus interrupts to
PCI
Jun 10 08:10:47 localhost kernel: Yenta TI: socket 0000:02:04.1, mfunc
0x01111d22, devctl 0x64
Jun 10 08:10:47 localhost kernel: Yenta: ISA IRQ mask 0x0098, PCI irq 10
Jun 10 08:10:47 localhost kernel: Socket status: 30000006

and dmesg:

PCI: Guessed IRQ 10 for device 0000:02:04.0
IRQ routing conflict for 0000:00:14.5, have irq 5, want irq 10
IRQ routing conflict for 0000:00:14.6, have irq 5, want irq 10
Yenta: CardBus bridge found at 0000:02:04.0 [103c:006b]
Yenta: Enabling burst memory read transactions
Yenta: Using CSCINT to route CSC interrupts to PCI
Yenta: Routing CardBus interrupts to PCI
Yenta TI: socket 0000:02:04.0, mfunc 0x01111d22, devctl 0x64
Yenta: ISA IRQ mask 0x0098, PCI irq 10
Socket status: 30000020
PCI: Guessed IRQ 10 for device 0000:02:04.1
PCI: Sharing IRQ 10 with 0000:00:14.1
PCI: Sharing IRQ 10 with 0000:01:05.0
PCI: Sharing IRQ 10 with 0000:02:00.0
PCI: Sharing IRQ 10 with 0000:02:07.0
Yenta: CardBus bridge found at 0000:02:04.1 [103c:006b]
Yenta: Using CSCINT to route CSC interrupts to PCI
Yenta: Routing CardBus interrupts to PCI
Yenta TI: socket 0000:02:04.1, mfunc 0x01111d22, devctl 0x64
Yenta: ISA IRQ mask 0x0098, PCI irq 10
Socket status: 30000006

Have tried adjusting the /etc/pcmcia/config.opts to suit the cardbridge,
with values:

include port 0x4000-0x40ff, port 0x4400-0x44ff, memory
0x28400000-0x287ff000, memory 0x28800000-0x28bff000

include port 0x4800-0x48ff, port 0x4c00-0x4cff, memory
0x28c00000-0x28fff000, memory 0x29000000-0x293ff000

No luck. Currently it's set back with the defaults.
Have also tried configuring the kernel for modular pcmcia support - this
didn't work either.

Any suggestions most welcome - i'm at my wits end.

iain




More information about the linux-pcmcia mailing list