[SOLVED] Re: unable to map IRQ for my pccard

Zhang Weiwu zhangweiwu at realss.com
Wed Jul 18 02:35:39 UTC 2007


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



More information about the freebsd-mobile mailing list