1 #ifndef __LUNAIX_FADT_H
2 #define __LUNAIX_FADT_H
6 // Pulled from ACPI Specification (v6.4) section 5.2.9
16 PerformanceServer = 7,
20 #define IPM1AEVT_BLK_PORT 0
21 #define IPM1BEVT_BLK_PORT 1
22 #define IPM1ACNT_BLK_PORT 2
23 #define IPM1BCNT_BLK_PORT 3
24 #define IPM2CNT_BLK_PORT 4
25 #define IPMTMR_BLK_PORT 5
27 #define IPM1EVT_BLK_LEN 0
28 #define IPM1CNT_BLK_LEN 1
29 #define IPM2CNT_BLK_LEN 2
30 #define IPMTMR_BLK_LEN 3
32 #define ITIME_DAY_ALARM 0
33 #define ITIME_MON_ALARM 1
34 #define ITIME_CENTURY 2
36 #define IAPC_ARCH_LEGACY 0x1
37 #define IAPC_ARCH_8042 0x2
38 #define IAPC_ARCH_NO_VGA 0x4
39 #define IAPC_ARCH_NO_MSI 0x8
40 #define IAPC_ARCH_ASPM 0x10
41 #define IAPC_ARCH_NO_RTC 0x20
43 typedef struct acpi_fadt
46 u32_t firmware_controller_addr;
51 u32_t smi_cmd_port_addr;
52 uint8_t smi_acpi_enable;
53 uint8_t smi_acpi_disable;
54 uint8_t smi_s4bios_state;
56 u32_t pm_reg_ports[6];
59 uint8_t pm_reg_lens[4];
67 uint16_t flush_stride;
72 } ACPI_TABLE_PACKED acpi_fadt_t;
74 // TODO: FADT parser & support
76 #endif /* __LUNAIX_FADT_H */