diff options
Diffstat (limited to 'i386/i386at/acpi_parse_apic.h')
-rw-r--r-- | i386/i386at/acpi_parse_apic.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/i386/i386at/acpi_parse_apic.h b/i386/i386at/acpi_parse_apic.h index df36bb31..85e01170 100644 --- a/i386/i386at/acpi_parse_apic.h +++ b/i386/i386at/acpi_parse_apic.h @@ -91,6 +91,14 @@ struct acpi_xsdt { uint64_t entry[0]; } __attribute__((__packed__)); +struct acpi_address { + uint8_t is_io; + uint8_t reg_width; + uint8_t reg_offset; + uint8_t reserved; + uint64_t addr64; +} __attribute__((__packed__)); + /* APIC table signature. */ #define ACPI_APIC_SIG "APIC" @@ -170,6 +178,21 @@ struct acpi_apic_irq_override { uint16_t flags; } __attribute__((__packed__)); + +#define ACPI_HPET_SIG "HPET" + +/* + * HPET High Precision Event Timer structure + */ +struct acpi_hpet { + struct acpi_dhdr header; + uint32_t id; + struct acpi_address address; + uint8_t sequence; + uint16_t minimum_tick; + uint8_t flags; +} __attribute__((__packed__)); + int acpi_apic_init(void); void acpi_print_info(phys_addr_t rsdp, void *rsdt, int acpi_rsdt_n); |