hw_x86_64: Make AHCI driver work

The assumption that IRQs in the legacy ISA range are always
edge-triggered is wrong. For the free-for-use IRQs it depends on the
actual device which uses the specific IRQ. Therefore, treat IRQs 9, 10
and 11 as level-triggered.
This commit is contained in:
Reto Buerki 2015-05-12 22:07:32 +02:00 committed by Christian Helmuth
parent afec233f50
commit 58178949ef
1 changed files with 4 additions and 1 deletions

View File

@ -67,7 +67,10 @@ class Genode::Ioapic : public Mmio
*/
bool _edge_triggered(unsigned const irq)
{
return irq <= Board::ISA_IRQ_END || irq > IRTE_COUNT;
if ((irq >= 0 && irq <= 8) || (irq >= 12 && irq <= Board::ISA_IRQ_END))
return true;
return false;
}
/**