2.4.20 - yenta, i82365 PCI / ISA irq problem
Hi there,
for quite some time now, I'm fiddling around with an annoying problem on my Fujitsu-Siemens S6010 laptop together with a Dell TrueMobile 1150 WLAN mini PCI card (orinoco chipset). Searching both the pcmcia_cs and orinoco mailing list archives pointed to a deeper, irq related problem. Excuse me if this is still the wrong forum, but probably someone out here may have some clue.
So here we go - Booting with in-kernel pcmcia gives the following output:
...
pcmcia: Starting PCMCIA services:
kernel: Linux Kernel Card Services 3.1.22
kernel: options: [pci] [cardbus] [pm]
kernel: PCI: Found IRQ 11 for device 01:0a.0
kernel: PCI: Sharing IRQ 11 with 00:02.0
kernel: PCI: Sharing IRQ 11 with 00:1d.0
kernel: PCI: Found IRQ 11 for device 01:0a.1
kernel: PCI: Sharing IRQ 11 with 00:1f.3
kernel: PCI: Sharing IRQ 11 with 00:1f.5
kernel: PCI: Enabling device 01:0d.0 (0000 -> 0002)
kernel: PCI: Found IRQ 11 for device 01:0d.0
kernel: PCI: Sharing IRQ 11 with 00:1f.1
kernel: Yenta IRQ list 06b8, PCI irq11
kernel: Socket status: 30000006
kernel: Yenta IRQ list 06b8, PCI irq11
network: Setting network parameters: succeeded
kernel: Socket status: 30000006
network: Bringing up interface lo: succeeded
pcmcia: using yenta_socket instead of i82365
kernel: Yenta IRQ list 0000, PCI irq11
kernel: Socket status: 30000010
pcmcia: cardmgr[786]: watching 3 sockets cardmgr[786]: watching 3 sockets
kernel: cs: IO port probe 0x0c00-0x0cff: clean.
kernel: cs: IO port probe 0x0100-0x04ff: excluding 0x378-0x37f 0x400-0x407 0x4d0-0x4d7
kernel: cs: IO port probe 0x0a00-0x0aff: clean. cardmgr[787]: starting, version is 3.2.4
kernel: cs: memory probe 0xa0000000-0xa0ffffff: clean. cardmgr[787]: socket 2: Orinoco or Intersil Prism 2 Wireless
pcmcia: done.
rc: Starting pcmcia: succeeded
cardmgr[787]: executing: 'modprobe hermes' cardmgr[787]: executing: 'modprobe orinoco' cardmgr[787]: executing: 'modprobe orinoco_cs' cardmgr[787]: executing: './network start eth0'
...
kernel: NETDEV WATCHDOG: eth0: transmit timed out
kernel: eth0: Tx timeout! Resetting card. ALLOCFID=01f7, TXCOMPLFID=0000, EVSTAT=8080
...
last message repeating
The same with in-kernel pcmcia disabled and pcmcia_cs as modules:
...
kernel: Linux PCMCIA Card Services 3.2.4
kernel: kernel build: 2.4.20-RAP-LL-03 #18 Sun May 18 18:13:34 CEST
2003
kernel: options: [pci] [cardbus] [apm] kernel: Intel ISA/PCI/CardBus PCIC probe: kernel: PCI: Found IRQ 11 for device 01:0a.0 kernel: PCI: Sharing IRQ 11 with 00:02.0 kernel: PCI: Sharing IRQ 11 with 00:1d.0 kernel: PCI: Found IRQ 11 for device 01:0a.1 kernel: PCI: Sharing IRQ 11 with 00:1f.3 kernel: PCI: Sharing IRQ 11 with 00:1f.5 kernel: O2Micro OZ6933 rev 02 PCI-to-CardBus at slot 01:0a, mem
0x20000000
kernel: host opts [0]: [pci only] [pci irq 11] [lat 168/176] [bus
2/2]
kernel: host opts [1]: [pci only] [pci irq 11] [lat 168/176] [bus
3/3]
kernel: PCI card interrupts, PCI status changes kernel: PCI: Enabling device 01:0d.0 (0000 -> 0002) kernel: PCI: Found IRQ 11 for device 01:0d.0 kernel: PCI: Sharing IRQ 11 with 00:1f.1 kernel: TI 1410 rev 01 PCI-to-CardBus at slot 01:0d, mem 0x20002000 kernel: host opts [0]: [serial pci & irq] [pci irq 11] [lat 168/176] [bus 4/4] kernel: PCI irq 11 test failed kernel: ISA irqs (scanned) = none!<6> *NO* card interrupts,
polling interval = 1000 ms
network: Setting network parameters: succeeded
pcmcia: cardmgr[764]: watching 3 sockets cardmgr[764]: watching 3 sockets
cardmgr[765]: starting, version is 3.2.4
pcmcia: done.
rc: Starting pcmcia: succeeded
kernel: cs: memory probe 0xa0000000-0xa0ffffff: clean. cardmgr[765]: socket 2: Orinoco or Intersil Prism 2 Wireless
...
cardmgr[765]: executing: 'modprobe hermes' cardmgr[765]: executing: 'modprobe orinoco' cardmgr[765]: executing: 'modprobe orinoco_cs'
kernel: cs: IO port probe 0x0100-0x04ff: excluding 0x378-0x37f 0x3c0-0x3df 0x400-0x407 0x4d0-0x4d7
kernel: cs: IO port probe 0x0380-0x03bf: clean.
kernel: cs: IO port probe 0x03e0-0x03ff: clean.
kernel: cs: IO port probe 0x0408-0x04cf: clean.
kernel: cs: IO port probe 0x04d8-0x04ff: clean.
kernel: cs: IO port probe 0x0a00-0x0aff: clean.
kernel: cs: IO port probe 0x0c00-0x0cff: clean.
kernel: orinoco_cs: RequestIRQ: Resource in use
...
Well, in both cases three sockets are recognized and the WLAN card behind the cardbus bridge on the mini PCI is also correctly detected, but there seems to be a problem with either the shared PCI IRQ 11 or the ISA IRQs of which none seems to be available for socket 2. I gave the i82365 different irq_mode options, but this didn't change anything.
A removable PCMCIA WLAN (also orinoco based) in socket 0 works perfectly. There is no physical slot for socket 1 on this laptop.
Here's lspci -v for the cardbus controllers:
...
01:0a.0 CardBus bridge: O2 Micro, Inc. OZ6933 Cardbus Controller (rev
02)
Subsystem: Citicorp TTI: Unknown device 10e6
Flags: bus master, stepping, slow devsel, latency 168, IRQ 11
Memory at 20000000 (32-bit, non-prefetchable) [size=4K]
Bus: primary=01, secondary=02, subordinate=02, sec-latency=176
Memory window 0: 20400000-207ff000 (prefetchable)
Memory window 1: 20800000-20bff000
I/O window 0: 00004000-000040ff
I/O window 1: 00004400-000044ff
16-bit legacy interface ports at 000101:0a.1 CardBus bridge: O2 Micro, Inc. OZ6933 Cardbus Controller (rev
02)
Subsystem: Citicorp TTI: Unknown device 10e6
Flags: bus master, stepping, slow devsel, latency 168, IRQ 11
Memory at 20001000 (32-bit, non-prefetchable) [size=4K]
Bus: primary=01, secondary=03, subordinate=03, sec-latency=176
Memory window 0: 20c00000-20fff000 (prefetchable)
Memory window 1: 21000000-213ff000
I/O window 0: 00004800-000048ff
I/O window 1: 00004c00-00004cff
16-bit legacy interface ports at 0001...
01:0d.0 CardBus bridge: Texas Instruments PCI1410 PC card Cardbus Controller (rev 01)
Flags: bus master, medium devsel, latency 168, IRQ 11
Memory at 20002000 (32-bit, non-prefetchable) [size=4K]
Bus: primary=01, secondary=04, subordinate=04, sec-latency=176
Memory window 0: 21400000-217ff000 (prefetchable)
Memory window 1: 21800000-21bff000
I/O window 0: 00005000-000050ff
I/O window 1: 00005400-000054ff
16-bit legacy interface ports at 0001I'd appreciate any hints on how to proceed from here and hopefully find a solution.
TIA and best regards ... Michael Ulbrich
Quoted 99 lines · Michael Ulbrich
Hi there,
for quite some time now, I'm fiddling around with an annoying problem on my Fujitsu-Siemens S6010 laptop together with a Dell TrueMobile 1150 WLAN mini PCI card (orinoco chipset). Searching both the
pcmcia_csand orinoco mailing list archives pointed to a deeper, irq related problem. Excuse me if this is still the wrong forum, but probably someone out here may have some clue.So here we go - Booting with in-kernel pcmcia gives the following output:
...
pcmcia: Starting PCMCIA services:
kernel: Linux Kernel Card Services 3.1.22
kernel: options: [pci] [cardbus] [pm]
kernel: PCI: Found IRQ 11 for device 01:0a.0
kernel: PCI: Sharing IRQ 11 with 00:02.0
kernel: PCI: Sharing IRQ 11 with 00:1d.0
kernel: PCI: Found IRQ 11 for device 01:0a.1
kernel: PCI: Sharing IRQ 11 with 00:1f.3
kernel: PCI: Sharing IRQ 11 with 00:1f.5
kernel: PCI: Enabling device 01:0d.0 (0000 -> 0002)
kernel: PCI: Found IRQ 11 for device 01:0d.0
kernel: PCI: Sharing IRQ 11 with 00:1f.1
kernel: Yenta IRQ list 06b8, PCI irq11
kernel: Socket status: 30000006
kernel: Yenta IRQ list 06b8, PCI irq11
network: Setting network parameters: succeeded
kernel: Socket status: 30000006
network: Bringing up interface lo: succeeded
pcmcia: usingyenta_socketinstead of i82365
kernel: Yenta IRQ list 0000, PCI irq11
kernel: Socket status: 30000010
pcmcia: cardmgr[786]: watching 3 sockets cardmgr[786]: watching 3 sockets
kernel: cs: IO port probe 0x0c00-0x0cff: clean.
kernel: cs: IO port probe 0x0100-0x04ff: excluding 0x378-0x37f 0x400-0x407 0x4d0-0x4d7
kernel: cs: IO port probe 0x0a00-0x0aff: clean. cardmgr[787]: starting, version is 3.2.4
kernel: cs: memory probe 0xa0000000-0xa0ffffff: clean. cardmgr[787]: socket 2: Orinoco or Intersil Prism 2 Wireless
pcmcia: done.
rc: Starting pcmcia: succeeded
cardmgr[787]: executing: 'modprobe hermes' cardmgr[787]: executing: 'modprobe orinoco' cardmgr[787]: executing: 'modprobeorinoco_cs' cardmgr[787]: executing: './network start eth0'
...
kernel: NETDEV WATCHDOG: eth0: transmit timed out
kernel: eth0: Tx timeout! Resetting card. ALLOCFID=01f7, TXCOMPLFID=0000, EVSTAT=8080
...
last message repeatingThe same with in-kernel pcmcia disabled and
pcmcia_csas modules:...
kernel: Linux PCMCIA Card Services 3.2.4
kernel: kernel build: 2.4.20-RAP-LL-03 #18 Sun May 18 18:13:34 CEST
2003kernel: options: [pci] [cardbus] [apm] kernel: Intel ISA/PCI/CardBus PCIC probe: kernel: PCI: Found IRQ 11 for device 01:0a.0 kernel: PCI: Sharing IRQ 11 with 00:02.0 kernel: PCI: Sharing IRQ 11 with 00:1d.0 kernel: PCI: Found IRQ 11 for device 01:0a.1 kernel: PCI: Sharing IRQ 11 with 00:1f.3 kernel: PCI: Sharing IRQ 11 with 00:1f.5 kernel: O2Micro OZ6933 rev 02 PCI-to-CardBus at slot 01:0a, mem
0x20000000
kernel: host opts [0]: [pci only] [pci irq 11] [lat 168/176] [bus
2/2]
kernel: host opts [1]: [pci only] [pci irq 11] [lat 168/176] [bus
3/3]kernel: PCI card interrupts, PCI status changes kernel: PCI: Enabling device 01:0d.0 (0000 -> 0002) kernel: PCI: Found IRQ 11 for device 01:0d.0 kernel: PCI: Sharing IRQ 11 with 00:1f.1 kernel: TI 1410 rev 01 PCI-to-CardBus at slot 01:0d, mem 0x20002000 kernel: host opts [0]: [serial pci & irq] [pci irq 11] [lat 168/176] [bus 4/4] kernel: PCI irq 11 test failed kernel: ISA irqs (scanned) = none!<6> *NO* card interrupts,polling interval = 1000 ms
network: Setting network parameters: succeeded
pcmcia: cardmgr[764]: watching 3 sockets cardmgr[764]: watching 3 sockets
cardmgr[765]: starting, version is 3.2.4
pcmcia: done.
rc: Starting pcmcia: succeeded
kernel: cs: memory probe 0xa0000000-0xa0ffffff: clean. cardmgr[765]: socket 2: Orinoco or Intersil Prism 2 Wireless
...
cardmgr[765]: executing: 'modprobe hermes' cardmgr[765]: executing: 'modprobe orinoco' cardmgr[765]: executing: 'modprobeorinoco_cs'
kernel: cs: IO port probe 0x0100-0x04ff: excluding 0x378-0x37f
Quoted 8 lines
0x3c0-0x3df 0x400-0x407 0x4d0-0x4d7
kernel: cs: IO port probe 0x0380-0x03bf: clean.
kernel: cs: IO port probe 0x03e0-0x03ff: clean.
kernel: cs: IO port probe 0x0408-0x04cf: clean.
kernel: cs: IO port probe 0x04d8-0x04ff: clean.
kernel: cs: IO port probe 0x0a00-0x0aff: clean.
kernel: cs: IO port probe 0x0c00-0x0cff: clean.
kernel:orinoco_cs: RequestIRQ: Resource in use
I had lamost the same problem with my CPQ Presario. Time to time the card did not get the IRQ (RequestIRQ: Resource in use). I have a patch that fixes that on my machine at home. If you want tomorrow I'll post it.
- Davide