base-nova: allow access to IOAPIC

This allows the platform driver to control remapping of legacy
interrupts.

genodelabs/genode#5066
This commit is contained in:
Johannes Schlatow 2024-03-25 12:57:51 +01:00 committed by Christian Helmuth
parent b07107c8c6
commit a0366120ef
2 changed files with 15 additions and 1 deletions

View File

@ -0,0 +1,14 @@
diff --git a/src/ioapic.cpp b/src/ioapic.cpp
index d3c7991..d357cf3 100644
--- a/src/ioapic.cpp
+++ b/src/ioapic.cpp
@@ -29,7 +29,8 @@ Ioapic *Ioapic::list;
Ioapic::Ioapic (Paddr p, unsigned i, unsigned g) : List<Ioapic> (list), reg_base ((hwdev_addr -= PAGE_SIZE) | (p & PAGE_MASK)), gsi_base (g), id (i), rid (0)
{
- Pd::kern.Space_mem::delreg (Pd::kern.quota, Pd::kern.mdb_cache, p & ~PAGE_MASK);
+// XXX allow Genode platform driver to access device and take over control
+// Pd::kern.Space_mem::delreg (Pd::kern.quota, Pd::kern.mdb_cache, p & ~PAGE_MASK);
Pd::kern.Space_mem::insert (Pd::kern.quota, reg_base, 0, Hpt::HPT_NX | Hpt::HPT_G | Hpt::HPT_UC | Hpt::HPT_W | Hpt::HPT_P, p & ~PAGE_MASK);
trace (TRACE_APIC, "APIC:%#lx ID:%#x VER:%#x IRT:%#x PRQ:%u GSI:%u",

View File

@ -1 +1 @@
d58086480d6a21a06bbd956e2d2e605d0f39b6b2
f6ac7ac73d93a11511d407f3130cc31f0c415ea4