I/O APIC
include/acpi/ioapic.h View source View on GitHubStructs
Section titled “Structs”ioapic_info
Section titled “ioapic_info”struct ioapic_info {
uint8_t id;
uint32_t gsi_base;
uint32_t *mmio_base;
}; Unions
Section titled “Unions”ioapic_redirection_entry
Section titled “ioapic_redirection_entry”union ioapic_redirection_entry {
uint64_t raw;
struct {
uint8_t vector;
uint8_t delivery_mode : 3;
uint8_t dest_mode : 1;
uint8_t delivery_status : 1;
uint8_t polarity : 1;
uint8_t remote_irr : 1;
uint8_t trigger_mode : 1;
uint8_t mask : 1;
uint16_t reserved : 15;
uint8_t reserved2;
uint8_t reserved3;
uint8_t reserved4;
uint8_t dest_apic_id;
};
}; Functions
Section titled “Functions”ioapic_init
Section titled “ioapic_init”void ioapic_init(void); ioapic_set_redirection_entry
Section titled “ioapic_set_redirection_entry”void ioapic_set_redirection_entry(int irq, uint64_t entry); ioapic_route_irq
Section titled “ioapic_route_irq”void ioapic_route_irq(irq_t irq, uint8_t vector, uint8_t dest_apic_id, bool masked);