4 #include "types.h" // u32
6 void acpi_bios_init(void);
8 // XXX - move to better header.
11 #define RSDP_SIGNATURE 0x2052545020445352LL // "RSD PTR "
13 struct rsdp_descriptor /* Root System Descriptor Pointer */
15 u8 signature [8]; /* ACPI signature, contains "RSD PTR " */
16 u8 checksum; /* To make sum of struct == 0 */
17 u8 oem_id [6]; /* OEM identification */
18 u8 revision; /* Must be 0 for 1.0, 2 for 2.0 */
19 u32 rsdt_physical_address; /* 32-bit physical address of RSDT */
20 u32 length; /* XSDT Length in bytes including hdr */
21 u64 xsdt_physical_address; /* 64-bit physical address of XSDT */
22 u8 extended_checksum; /* Checksum of entire table */
23 u8 reserved [3]; /* Reserved field must be 0 */
26 // XXX - not really part of acpi.
27 struct mptable_floating_s {
38 #define MPTABLE_SIGNAURE 0x5f504d5f // "_MP_"