Damien Zammit, le dim. 22 juin 2025 07:33:46 +0000, a ecrit: > 0-13 are on rising edge (legacy) > 14-N are active-low level triggered. > > This allows for PIIX3 chipset to have working IDE, > if we patch hurd/acpi to ignore buggy irq 9 response.
Applied, thanks! > --- > i386/i386at/ioapic.c | 10 ++++++---- > 1 file changed, 6 insertions(+), 4 deletions(-) > > diff --git a/i386/i386at/ioapic.c b/i386/i386at/ioapic.c > index 5dd2de2e..d0724f76 100644 > --- a/i386/i386at/ioapic.c > +++ b/i386/i386at/ioapic.c > @@ -393,10 +393,11 @@ ioapic_configure(void) > */ > entry.both.dest = lapic->apic_id.r >> 24; > > - for (pin = 0; pin < 16; pin++) { > + /* ISA legacy IRQs */ > + for (pin = 0; pin < 14; pin++) { > gsi = pin; > > - /* ISA legacy IRQs */ > + /* Legacy interrupts are on rising edge */ > entry.both.trigger = IOAPIC_EDGE_TRIGGERED; > entry.both.polarity = IOAPIC_ACTIVE_HIGH; > > @@ -426,10 +427,11 @@ ioapic_configure(void) > } > } > > - for (pin = 16; pin < ngsis; pin++) { > + /* 14,15 and PCI IRQs PIRQ A-H */ > + for (pin = 14; pin < ngsis; pin++) { > gsi = pin; > > - /* PCI IRQs PIRQ A-H */ > + /* ACPI interrupts default to level-triggered active-low */ > entry.both.trigger = IOAPIC_LEVEL_TRIGGERED; > entry.both.polarity = IOAPIC_ACTIVE_LOW; > > -- > 2.45.2