Yenta CardBus disables IRQ on insert

Mike Cumings mcumings at gmail.com
Fri Jan 28 13:16:28 EST 2005


Good day,

I'm trying to debug a new Linux installation on a laptop of mine and dont have
enough knowledge in this specific problem area to make any further progress.
Looking at the archives of this list there appear to be similar failure modes
and some discussions of yenta patches enroute to future kernels, so if this
looks to be one of those issues please let me know.

The problem occurs consitently when inserting a specific Wifi module into
a CardBus slot, though I have a wired LAN module which seems to prompt
this failure on a less frequent basis.  I'm currently running 2.6.10, and
lspci gives me:

0000:00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host
bridge (rev 03)
0000:00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP
bridge (rev 03)
0000:00:04.0 CardBus bridge: Texas Instruments PCI1225 (rev 01)
0000:00:04.1 CardBus bridge: Texas Instruments PCI1225 (rev 01)
0000:00:07.0 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 02)
0000:00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01)
0000:00:07.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 01)
0000:00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 02)
0000:00:08.0 Multimedia audio controller: ESS Technology ES1978
Maestro 2E (rev 10)
0000:00:10.0 Communication controller: Agere Systems (former Lucent
Microelectronics) WinModem 56k (rev 01)
0000:01:00.0 VGA compatible controller: ATI Technologies Inc Rage
Mobility P/M AGP 2x (rev 64)
0000:02:00.0 Ethernet controller: Atheros Communications, Inc. AR5212
802.11abg NIC (rev 01)

and a bit more detail on the CardBus:

0000:00:04.0 CardBus bridge: Texas Instruments PCI1225 (rev 01)
       Subsystem: Dell: Unknown device 009e
       Flags: bus master, medium devsel, latency 168, IRQ 11
       Memory at 10000000 (32-bit, non-prefetchable)
       Bus: primary=00, secondary=02, subordinate=05, sec-latency=176
       Memory window 0: 10400000-107ff000 (prefetchable)
       Memory window 1: 10800000-10bff000
       I/O window 0: 00004000-000040ff
       I/O window 1: 00004400-000044ff
       16-bit legacy interface ports at 0001

0000:00:04.1 CardBus bridge: Texas Instruments PCI1225 (rev 01)
       Subsystem: Dell: Unknown device 009e
       Flags: bus master, medium devsel, latency 168, IRQ 11
       Memory at 10001000 (32-bit, non-prefetchable)
       Bus: primary=00, secondary=06, subordinate=09, sec-latency=176
       Memory window 0: 10c00000-10fff000 (prefetchable)
       Memory window 1: 11000000-113ff000
       I/O window 0: 00004800-000048ff
       I/O window 1: 00004c00-00004cff
       16-bit legacy interface ports at 0001

The symptom exhibits itself when a card is inserted:

ACPI: PCI Interrupt Link [LNKA] enabled at IRQ 11
PCI: setting IRQ 11 as level-triggered
ACPI: PCI interrupt 0000:00:04.0[A] -> GSI 11 (level, low) -> IRQ 11
Yenta: CardBus bridge found at 0000:00:04.0 [1028:009e]
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:00:04.0, mfunc 0x01021c72, devctl 0x66
Yenta: ISA IRQ mask 0x04b8, PCI irq 11
Socket status: 30000020
ACPI: PCI interrupt 0000:00:04.1[A] -> GSI 11 (level, low) -> IRQ 11
Yenta: CardBus bridge found at 0000:00:04.1 [1028:009e]
Yenta: Using CSCINT to route CSC interrupts to PCI
Yenta: Routing CardBus interrupts to PCI
Yenta TI: socket 0000:00:04.1, mfunc 0x01021c72, devctl 0x66
Yenta: ISA IRQ mask 0x04b8, PCI irq 11
Socket status: 30000006
irq 11: nobody cared!
[<c0134f1a>] __report_bad_irq+0x2a/0x90
[<c0134849>] handle_IRQ_event+0x39/0x70
[<c0135043>] note_interrupt+0xa3/0xd0
[<c01349e0>] __do_IRQ+0x160/0x180
[<c0104d59>] do_IRQ+0x19/0x30
[<c01032ae>] common_interrupt+0x1a/0x20
[<c011bf1e>] __do_softirq+0x2e/0x90
[<c011bfa7>] do_softirq+0x27/0x30
[<c0134805>] irq_exit+0x35/0x40
[<c0104d5e>] do_IRQ+0x1e/0x30
[<c01032ae>] common_interrupt+0x1a/0x20
[<c0218a29>] acpi_processor_idle+0xef/0x1f1
[<c01010cf>] cpu_idle+0x2f/0x50
[<c040a7d5>] start_kernel+0x145/0x170
[<c040a360>] unknown_bootoption+0x0/0x1f0
handlers:
[<c0281800>] (yenta_interrupt+0x0/0x40)
[<c0281800>] (yenta_interrupt+0x0/0x40)
Disabling IRQ #11

I've noticed that the stack trace varies during the process.  Another thing
I've noticed is that a clean load of my more reliable card gives me the
following /proc/interrupts:

          CPU0
11:          5          XT-PIC  yenta, yenta

but a failed load has a *much* higher, suspicious looking interrupt count:

          CPU0
11:     200001          XT-PIC  yenta, yenta, eth0

I've googled quite a bit on this subject and have found references to
other hardware failures with the same symptom as well as one reference
to devfs causing similar issues, and have tried various described workarounds
to no avail.  I've also tried various kernel options & configurations but have
not met with any success.

Is this a known issue?  Are there any patches that I could try out?  Thanks
in advance,

Mike



More information about the linux-pcmcia mailing list