Subject: Re: PCMCIA interrupt problem
To: Ingolf Koch <ingolf@mipool.uni-jena.de>
From: Stefan Grefen <grefen@hprc.tandem.com>
List: port-i386
Date: 10/27/1998 10:53:39
In message <19981027000421.A545@maus.rz.uni-jena.de> Ingolf Koch wrote:
> Hi,
>
> as the Compex LinkPort PCMCIA Ethernet card is not recognized
> by 1.3.2, I tried to write the corresponding entry (see kern/6349).
> Unfortunately, this did not make the card work perfectly on my
> laptop.
>
> I have the following problems:
> 1) The screen is switched off when
> bus_space_write_1(asict, asich, NE2000_ASIC_RESET, tmp);
> is called (sys/dev/ic/ne2000.c, line 276)
> 2) From a remote machine, ping to the laptop succeeds (via the
> ethernet card). But nothing more works from remote (no
> traceroute, telnet, etc).
> From the laptop, I can use the network without problems
> (telnet, ftp, nfs mounts, etc).
>
> I suspect, this is an irq problem, so I tried to have another
> irq allocated to the card. This is usually irq 5. Probably,
> it conflicts with some irq used by the laptop's apm...
Well I don't think so, I may collide with on on board sound card.
to change pcmcia interrupt allocation use
options PCIC_ISA_INTR_ALLOC_MASK=0xXXXX
in your config file.
>
> As there seems to be no irq option for pcmcia cards in config
> files, I changed the "mask" in isa_intr_alloc() (located in
> sys/arch/i386/isa/isa_machdep.c, lines 358 ff) to explicitly
> exclude irq 5 from being allocated.
>
> This resulted in assigning irq 7 to the card, but after that,
> I got timeouts for ne0. Probably, the card still used irq 5,
> but the driver software expected irq 7 in this case.
That looks a lot more like an interupt conflict.
>
> The card's "manual" says that the irq can be configured to
> a number other than the default 5.
The CIS tells that it can use any interrupt.
>
> Is this a standard feature for pcmcia cards (at least i/o cards)?
Yes.
>
> If so, is the irq number allocated by isa_intr_alloc() indeed
> written to the card (or the controller)?
It is written to the controller and the card (depending on some CIS bits).
>
> Any comments, hints, etc welcome.
Try using a different IO-range. 340/350 may collide with a unconfigured
sound card. (I had that problem on my Libretto).
options PCIC_ISA_INTR_ALLOC_MASK=0xf918
options PCIC_ISA_ALLOC_IOBASE=0x400
options PCIC_ISA_ALLOC_IOSIZE=0xbff
This in the config file cured the problem.
Stefan
>
> Regards
> Ingolf
--
Stefan Grefen Tandem Computers Europe Inc.
grefen@hprc.tandem.com High Performance Research Center
--- Hacking's just another word for nothing left to kludge. ---