2001-07-15 12:59:21

by Michael Stiller

[permalink] [raw]
Subject: Cardbus Bridge no IRQ in 2.4.6

Hi all,

i have a PCI Cardbus Bridge which is getting no interrupt from
the bios and during kernel boot. Is it possible to use the card anyway ?
Maybe assign an interrupt manually ?

The details:

kernel 2.4.6 smp machine

device in question:

00:0e.0 CardBus bridge: Texas Instruments PCI1410 PC card Cardbus Controller
(rev 01)
Subsystem: SCM Microsystems: Unknown device 3000
Flags: bus master, medium devsel, latency 168
Memory at 20000000 (32-bit, non-prefetchable) [size=4K]
Bus: primary=00, secondary=02, subordinate=05, sec-latency=176
Memory window 0: 20400000-207ff000 (prefetchable)
Memory window 1: 20800000-20bff000
I/O window 0: 00001000-000010ff
I/O window 1: 00001400-000014ff
16-bit legacy interface ports at 0001

I enabled DEBUG in pci-i386.h and get the following messages:

PCI: BIOS32 Service Directory structure at 0xc00fdb60
PCI: BIOS32 Service Directory entry at 0xfdb70
PCI: BIOS probe returned s=00 hw=01 ver=02.10 l=01
PCI: PCI BIOS revision 2.10 entry at 0xfdb91, last bus=1
PCI: Using configuration type 1
PCI: Probing PCI hardware
PCI: IDE base address fixup for 00:07.1
PCI: Scanning for ghost devices on bus 0
PCI: Scanning for ghost devices on bus 1
PCI: IRQ init
PCI: Interrupt Routing Table found at 0xc00f8100
00:01 slot=00 0:60/deb8 1:61/deb8 2:00/deb8 3:00/deb8
00:07 slot=00 0:fe/4000 1:ff/8000 2:00/0000 3:63/deb8
00:0e slot=01 0:61/deb8 1:62/deb8 2:63/deb8 3:60/deb8
00:0f slot=02 0:62/deb8 1:63/deb8 2:60/deb8 3:61/deb8
00:10 slot=03 0:63/deb8 1:60/deb8 2:61/deb8 3:62/deb8
00:12 slot=04 0:60/deb8 1:61/deb8 2:62/deb8 3:63/deb8
00:13 slot=05 0:60/deb8 1:61/deb8 2:62/deb8 3:63/deb8
00:09 slot=00 0:60/deb8 1:60/deb8 2:00/deb8 3:00/deb8
PCI: Attempting to find IRQ router for 8086:7110
PCI: Using IRQ router PIIX [8086/7110] at 00:07.0
PCI: IRQ fixup
00:0e.0: ignoring bogus IRQ 255

^^^

querying PCI -> IRQ mapping bus:0, slot:7, pin:3.
PCI->APIC IRQ transform: (B0,I7,P3) -> 19
querying PCI -> IRQ mapping bus:0, slot:14, pin:0.

^^^

querying PCI -> IRQ mapping bus:0, slot:15, pin:0.
PCI->APIC IRQ transform: (B0,I15,P0) -> 18
querying PCI -> IRQ mapping bus:0, slot:16, pin:0.
PCI->APIC IRQ transform: (B0,I16,P0) -> 19
querying PCI -> IRQ mapping bus:0, slot:16, pin:0.
PCI->APIC IRQ transform: (B0,I16,P0) -> 19
querying PCI -> IRQ mapping bus:0, slot:18, pin:0.
PCI->APIC IRQ transform: (B0,I18,P0) -> 16
querying PCI -> IRQ mapping bus:1, slot:0, pin:0.
PCI->APIC IRQ transform: (B1,I0,P0) -> 16
PCI: Allocating resources
PCI: Resource e8000000-ebffffff (f=1208, d=0, p=0)
PCI: Resource 0000ffa0-0000ffaf (f=101, d=0, p=0)
PCI: Resource 0000dc00-0000dc1f (f=101, d=0, p=0)
PCI: Resource effff000-efffffff (f=200, d=0, p=0)
PCI: Resource efe00000-efefffff (f=200, d=0, p=0)
PCI: Resource edbfe000-edbfefff (f=1208, d=0, p=0)
PCI: Resource edbff000-edbfffff (f=1208, d=0, p=0)
PCI: Resource 0000d800-0000d81f (f=101, d=0, p=0)
PCI: Resource ee000000-eeffffff (f=200, d=0, p=0)
PCI: Resource e4000000-e4ffffff (f=1208, d=0, p=0)
got res[20000000:20000fff] for resource 0 of Texas Instruments PCI1410 PC
card
Cardbus Controller

Any clues ? Should i send more details ? If yes, which ones ?

Cheers,

-Michael




2001-07-15 22:31:47

by Erik Mouw

[permalink] [raw]
Subject: Re: Cardbus Bridge no IRQ in 2.4.6

On Sun, Jul 15, 2001 at 02:58:30PM +0200, Michael Stiller wrote:
> i have a PCI Cardbus Bridge which is getting no interrupt from
> the bios and during kernel boot. Is it possible to use the card anyway ?
> Maybe assign an interrupt manually ?
>
> The details:
>
> kernel 2.4.6 smp machine
>
> device in question:
>
> 00:0e.0 CardBus bridge: Texas Instruments PCI1410 PC card Cardbus Controller
> (rev 01)
> Subsystem: SCM Microsystems: Unknown device 3000
> Flags: bus master, medium devsel, latency 168
> Memory at 20000000 (32-bit, non-prefetchable) [size=4K]
> Bus: primary=00, secondary=02, subordinate=05, sec-latency=176
> Memory window 0: 20400000-207ff000 (prefetchable)
> Memory window 1: 20800000-20bff000
> I/O window 0: 00001000-000010ff
> I/O window 1: 00001400-000014ff
> 16-bit legacy interface ports at 0001

Let me guess: a Lucent Orinico PCI adapter, right? It should work with
linux-2.4.6, I submitted a patch for 2.4.6-pre8 (or so) and it is
included in linux-2.4.6. I currently have it working on two non-SMP
systems (ALi 1541 and Intel 440FX chipsets).

> I enabled DEBUG in pci-i386.h and get the following messages:

[snip spooky PCI debug I don't understand anyway]

> Any clues ? Should i send more details ? If yes, which ones ?

Make sure that the Cardbus driver is not a module. IOW: your kernel
configuration should have these lines:

#
# PCMCIA/CardBus support
#
CONFIG_PCMCIA=y
CONFIG_CARDBUS=y
# CONFIG_I82365 is not set
# CONFIG_TCIC is not set


Erik

--
J.A.K. (Erik) Mouw, Information and Communication Theory Group, Department
of Electrical Engineering, Faculty of Information Technology and Systems,
Delft University of Technology, PO BOX 5031, 2600 GA Delft, The Netherlands
Phone: +31-15-2783635 Fax: +31-15-2781843 Email: [email protected]
WWW: http://www-ict.its.tudelft.nl/~erik/

2001-07-16 07:02:52

by Michael Stiller

[permalink] [raw]
Subject: Re: Cardbus Bridge no IRQ in 2.4.6

>
> Let me guess: a Lucent Orinico PCI adapter, right? It should work with
> linux-2.4.6, I submitted a patch for 2.4.6-pre8 (or so) and it is
> included in linux-2.4.6. I currently have it working on two non-SMP
> systems (ALi 1541 and Intel 440FX chipsets).

Actually it is something compatible from ELSA.
I tried your suggestions and it didn't work. On your machines, does the card
get an interrupt from the bios during init?

My Bios (PCI v2.1) only prints CardBus Adapter, no IRQ is assigned.
I already tried different slots. I guess it's a bios problem but i'm interested
to make it work without the help of the bios. At least the bios is only
a pice of software...

> Make sure that the Cardbus driver is not a module. IOW: your kernel
> configuration should have these lines:

Did that. Interesting messages during kernel boot:

PCI->APIC IRQ transform: (B1,I0,P0) -> 16
got res[20000000:20000fff] for resource 0 of Texas Instruments PCI1410 \
PCcard Cardbus Controller

Linux Kernel Card Services 3.1.22
options: [pci] [cardbus]
PCI: Enabling device 00:13.0 (0000 -> 0002)
PCI: No IRQ known for interrupt pin A of device 00:13.0. Probably buggy MP
table.

Isn't it possible to assign an interrupt to INT A of this device ? IOW, fix
what
is considered a buggy MP table ?

Yenta IRQ list 0000, PCI irq0
Socket status: 10000047

Cheers,

-Michael