Date: Fri, 26 Feb 1999 12:22:18 +0800 (CST) From: Michael Robinson <robinson@netrinsics.com> To: freebsd-questions@FreeBSD.ORG, mobile@FreeBSD.ORG, patseal@hyperhost.net Subject: Re: PCCARD modem trouble (fwd) Message-ID: <199902260422.MAA02250@netrinsics.com> In-Reply-To: <Pine.BSF.4.05.9902252201300.9630-100000@foobar.hyperhost.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Patrick Seal <patseal@hyperhost.net> writes: >If I'm not docked I can use the modem, when I am docked it complains: >driver allocation failed for 3COM >The pccard.conf has irq 10 as the default for the modem. I change it to 8 >(to avoid conflict with xl0) and it won't work docked or undocked, even >thouth the dumpcis seems to say it should work with irq 8. When I moved from 2.2-PAO to 3.1, my pccard support stopped working entirely. After much debugging, I found out it was due in part to how the irq's are being allocated. In order to get an IRQ allocated, there has to be a match between the device IRQ mask and the PCCARD irq mask pool (which is only an approximation of the actual irq slots available). Furthermore, there is no way to control which IRQ the pcic driver grabs for itself, and, since it gets first dibs, if it grabs an IRQ that you need for a card, you're screwed. I added the following to /sys/pccard/pccard.c: +#ifdef PCIC_DEBUG + printf("Locating IRQ...\n(slt->ctrl->irqs=%x, desc->irqmask=%x)\n", slt->ctrl->irqs, desc->irqmask); +#endif if ((slt->ctrl->irqs & desc->irqmask) == 0) return(EINVAL); When I insert my PortableDock harddrive, I get the following kernel message: Locating IRQ... (slt->ctrl->irqs=e00, desc->irqmask=200) As you can see, the PCCARD pool only consists of IRQ 10, 11, and 12 (which is much less than what is actually available). The card requires IRQ 10, and gets it (before I hacked pcic.c, the controller would grab IRQ 10 for itself). I would suggest you check to make sure the PCCARD IRQ pool actually has IRQ 10 available at the time of card insertion (using my method, or something similar). -Michael Robinson To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-mobile" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199902260422.MAA02250>