diff options
| author | Miguel <m.i@gmx.at> | 2018-09-10 19:08:04 +0200 |
|---|---|---|
| committer | Miguel <m.i@gmx.at> | 2018-09-10 19:08:04 +0200 |
| commit | ee2ec6abbcfb6de48a8f5594e05ba0a837216fa8 (patch) | |
| tree | 6173e5182459529ac5dc3fbb59b30fd37c5ee4ab /kernel/acpi.c | |
| parent | 65f5cca027af81e77b3e06da658b6d13f1861a03 (diff) | |
apic et al.
Diffstat (limited to 'kernel/acpi.c')
| -rw-r--r-- | kernel/acpi.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/acpi.c b/kernel/acpi.c index f424312..67f31fb 100644 --- a/kernel/acpi.c +++ b/kernel/acpi.c @@ -57,6 +57,7 @@ static uint8_t *apci_get_next_entry(uint8_t *addr,acpi_information *procdata) if(*addr==0) { klog("Type 0: LocalAPIC (enabled=%d) (id=0x%08X)",addr[4]&1,addr[3]); + // usable if(addr[4]&1) { @@ -74,10 +75,10 @@ static uint8_t *apci_get_next_entry(uint8_t *addr,acpi_information *procdata) { klog("Type 1: IO APIC (id=%d) (addr=0x%08X) (base=%d)",addr[2], *((uint32_t*)&addr[4]),*((uint32_t*)&addr[8])); procdata->io_apic_address=*((uint32_t*)&addr[4]); + fixme("support multiple IO Apics and consider interrupt source overrides during irq config!"); } else if(*addr==2){ klog("Type 2: Interrupt Source Override (bus src=%d) (irq src=%d) (global=%d) (flags=%d)",addr[2],addr[3],*((uint32_t*)&addr[4]),*((uint16_t*)&addr[8])); - } else if(*addr==4){ klog("Type 4: Non-maskable interrupts (proc id=%d) (flags=%d) (LINT#=%d)",addr[2],*((uint16_t*)&addr[3]),addr[5]); |
