Subject: Re: port-i386/34025: ACPI Interrupt Failure with 3.99.22 (and 3.99.21)
To: Ed Gould <ed@left.wing.org>
From: Christos Zoulas <christos@zoulas.com>
List: netbsd-bugs
Date: 07/20/2006 15:49:32
On Jul 20, 12:23pm, ed@left.wing.org (Ed Gould) wrote:
-- Subject: Re: port-i386/34025: ACPI Interrupt Failure with 3.99.22 (and 3.9

| > It looks like the ACPI SCI interrupt gets marked as edge triggered,
| > and then all PCI interrupts (which are level triggered) can't be
| > shared with it.
| > 
| > The ACPI interrupt is in fact probably "conforming", but the code does
| > not deal with that. It should be changed to deal with it.
| 
| Is there anything I can do (short of hacking the ACPI code, which I'm 
| not prepared to do) to work around this?  Anyone familiar with this 
| code care to offer a patch to test?  (I just tried a kernel built from 
| today's sources, but no luck.)

Ok, I've looked at the FreeBSD code and it special-cases the SCI interrupt
in sys/i386/acpica/madt.c and forces it to be level and low polarity. To
fix it properly, we should probably port the madt.c from FreeBSD, but a
quick hack would be to test the sci interrupt for polarity/type and always
force it. Frank probably can do this in a few minutes, it would take me
hours to figure out.

christos