IRQ-Routing for 5.3-BETA

Nate Lawson nate at root.org
Sat Sep 25 10:43:35 PDT 2004


Matthias Schuendehuette wrote:
> On Saturday 25 September 2004 16:43, Matthias Schuendehuette wrote:
> 
>>Hi John,
>>
>>On Friday 24 September 2004 21:14, John Baldwin wrote:
>>
>>>Umm the list of IRQ numbers is the list of valid IRQs.  Your BIOS
>>>is _ineded_ buggy.  Note that for the IRQ in question it says this:
>>>
>>>
>>>\_SB_.PCI0.LNKA irq   9: [  1  3  4  5  6  7 10 11 12 14 15]
>>>low,level,sharable 0.1.0
>>>
>>>I.e., I'm using IRQ 9, but 9 is not in the list of valid IRQs which
>>>includes 1, 3, 4, 5, 6, 7, 10, 11, 12, 14, and 15.  Thus, the
>>>kernel believes what your broken BIOS says and throws out IRQ 9 and
>>>tries to use IRQ 10 instead, which your BIOS claims is open for use
>>>even though you've told it its not. One thing you can try is a
>>>patch Nate has to always treat ACPI's interrupt (IRQ 9 usually) as
>>>a valid interrupt for the link device to use.

I've committed that patch to -current.  If it doesn't break anything, 
I'll MFC it.  I'm pretty sure it's ok to special-case the SCI but with 
the track record of BIOS authors, there's probably a system that asks 
for it but can't handle it.

You should test the -current version of acpi_pci_link.c and see if it 
works on your system both before and after reconfiguring your device's irq.

>>Umm... this seems to be completely logic.
>>
>>I reconfigured my ISDN-Card to use IRQ2/9 (which was more simple than
>>I remembered :-) and it works! Shame on me, sometimes it's really too
>>simple...
 >
> This really works for FreeBSD 5.3-BETA5 of today, but it works *only* 
> with IRQ 2/9.

I don't quite understand.  Your device's hardware was not set to 9 but 
the BIOS was claiming it was?  Is it on the motherboard (i.e., 
non-removable)?

> I also tried IRQ 5, which is not used by any other device (a least I 
> couldn't find any notice about irq5 in the boot -v messages but for 
> isic0), and this does not work with the same messages as with IRQ 10.
> 
> Somehow I have the uncertain feeling that the new IRQ-Routing code has 
> still some deficencies, at least for ISA-style IRQs...
> 
> But it's no longer a severe problem for me, so I can follow RELENG_5 
> again.

When the BIOS gives an initial irq, we always try to route to that one 
first since some devices don't work at any other irq.

-- 
Nate


More information about the freebsd-current mailing list