| 1 | /* @title: ACPI Multiple APIC Description Table */ |
|---|---|
| 2 | #pragma once |
| 3 | #include <stdbool.h> |
| 4 | #include <stdint.h> |
| 5 | #include <types/types.h> |
| 6 | |
| 7 | #define MADT_MAX_ISO 16 |
| 8 | |
| 9 | struct madt_ioapic_info { |
| 10 | uint8_t id; |
| 11 | uint32_t gsi_base; |
| 12 | uintptr_t address; |
| 13 | bool present; |
| 14 | }; |
| 15 | |
| 16 | void madt_init(void); |
| 17 | uint32_t madt_isa_to_gsi(uint8_t isa_irq); |
| 18 | uint16_t madt_isa_flags(uint8_t isa_irq); |
| 19 | struct madt_ioapic_info *madt_get_ioapic(void); |
| 20 |