Date: Wed, 18 Jul 2007 10:29:33 +0800 From: Zhang Weiwu <zhangweiwu@realss.com> To: freebsd-mobile@freebsd.org Subject: [SOLVED] Re: unable to map IRQ for my pccard Message-ID: <1184725774.27792.24.camel@joe.realss.com> In-Reply-To: <200707160756.41133.jhb@freebsd.org> References: <1183942480.6901.15.camel@joe.realss.com> <200707111431.52840.jhb@freebsd.org> <1184484990.9138.4.camel@joe.realss.com> <200707160756.41133.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Dear list A summary of the issue: On Thinkpad 380XD with two PCCARD slots, the second slot (the one beneath the first slot) always doesn't work on default installation on FreeBSD 6.1. The second slot produce this error message in dmesg even with no card inserted: cbb1: <TI1250 PCI-CardBus Bridge> mem 0x20821000-0x20821fff at device 2.1 on pci0 pccard1: <16-bit PCCard bus> on cbb1 $PIR: ROUTE_INTERRUPT failed. cbb: Unable to map IRQ... device_attach: cbb1 attach returned 12 The solution I have tried are re-assign IRQ BIOS reserved for PCI devices from 11 to 10 (by using PS2.EXE utility from lenovo website) and recompile kernel removing cardbus device. Both didn't work. With help from John Baldwin and M. Warner Losh we find the working solution is to add this line in /boot/device.hints hw.pci0.2.INTB.irq="10" Although I still don't understand how this works, but now both slots are usable for both cards. On Mon, 2007-07-16 at 07:56 -0400, John Baldwin wrote: > On Sunday 15 July 2007 03:36:30 am Zhang Weiwu wrote: > > On Wed, 2007-07-11 at 14:31 -0400, John Baldwin wrote: > > > No, we only route things once. Look at /sys/i386/pci/pci_pir.c. It keeps > > > track of which IRQ a link is routed to, and we only use the BIOS call if > it > > > didn't look like the BIOS had already routed it, and we haven't routed it > > > before. I think we are actually trying to route 0x61 btw, not 0x60 since > > > it's device 2.1 (and thus probably INTB) that is keeling over. > > > > > > You can try using a hint like 'hw.pci0.2.INTB.irq=11' and seeing if it > works. > > > > Thank you for the insight and suggested solution. After having that > > setting in /boot/device.hints I still cannot make the second card work, > > just in case you are interested in this issue too, I have attached the > > dmesg after used suggested hint. This dmesg is obtained by first insert > > both cards and then boot. > > You got an interrupt storm on IRQ 10, so try setting the hint to 10 rather > than 11. > -- Zhang Weiwu Real Softservice http://www.realss.com +86 592 2091112
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1184725774.27792.24.camel>