Subject: Re: Cardbus support in NetBSD 1.3?
To: None <port-i386@NetBSD.ORG>
From: Duncan McEwan <duncan@MCS.VUW.AC.NZ>
List: port-i386
Date: 01/08/1998 18:23:03
Ted Lemon said:

> This is probably an interrupt problem, not a Cardbus problem.   My
> guess would be that IRQ 5 belongs to a device that's disabled in the
> BIOS and thus doesn't probe

Thanks Ted, that was indeed the case.  Once I added an "sb" config line saying
that it was on irq 5, the pcmcia code started picking irq 9 for the ethernet
card and it worked fine (and the sound blaster works as well!)

However, then I tried booting with my USR sportster 28.8 modem card as well and
even though the kernel seems to probe it correctly, whenever I try to access it
I get a "Device not configured" error.  More details are given below if anyone
has any idea what might be happening.

With both the modem and ethernet card in, the modem got irq 9 and the ethernet
got irq 11 which gave timeout errors (presumably for the same reason as
above?).  So I changed the PCIC_ISA_INTR_ALLOC_MASK in dev/isa/i82365_isa.c to
allow the PCMCIA code to use irq 10, and the ethernet now works although the
modem still doesn't.

My config file contains 

	pcic0   at isa? port 0x3e0 iomem 0xd0000 iosiz 0x4000
	pcmcia* at pcic? controller ? socket ?

	ne*     at pcmcia? function ?          # NE2000-compatible Ethernet
	com3    at pcmcia? function ?          # Modems and serial cards

When the kernel boots it prints

	...
	pcic0 at isa0 port 0x3e0-0x3e1 iomem 0xd0000-0xd3fff: using irq 3
	pcic0: controller 0 (Intel 82365SL Revision 1) has sockets A and B
	pcmcia0 at pcic0 controller 0 socket 0
	ne0 at pcmcia0 function 0 port 0x340-0x34f port 0x350-0x35f
	ne0: Linksys EthernetCard Ethernet
	ne0: Ethernet address 00:80:c8:83:15:90
	pcmcia1 at pcic0 controller 0 socket 1
	com3 at pcmcia1 function 0 port 0x2f8-0x2ff: ns16550a, working fifo
	pcmcia1: card irq 9
	...

But when I try to access /dev/tty02 (character device, major 8, minor 2) with
"cu" or "cat" I get the "Device not configured" error.  I don't understand in
what circumstances the kernel (apparently) successfully probe the device and
yet I would still get this error.

> Try configuring a kernel that specifies what interrupt the card should be at,
> and choose an interrupt that you know is safe.

How do I do that?  Config complained when I added an "irq" specification to the
end of "pcmcia0" and "pcmcia1" lines.  When I put an "irq 8" specifier on the
com3 line it seemed to be ignored and the kernel still allocated irq 9 to it.

Thanks for any help.

Duncan