13#define ACPI_RSDP_SIGNATURE "RSD PTR "
14#define ACPI_RSDT_SIGNATURE "RSDT"
15#define ACPI_XSDT_SIGNATURE "XSDT"
16#define ACPI_MADT_SIGNATURE "APIC"
17#define ACPI_FADT_SIGNATURE "FACP"
18#define ACPI_FACS_SIGNATURE "FACS"
19#define ACPI_MCFG_SIGNATURE "MCFG"
20#define ACPI_HPET_SIGNATURE "HPET"
21#define ACPI_SRAT_SIGNATURE "SRAT"
22#define ACPI_SLIT_SIGNATURE "SLIT"
23#define ACPI_DSDT_SIGNATURE "DSDT"
24#define ACPI_SSDT_SIGNATURE "SSDT"
25#define ACPI_PSDT_SIGNATURE "PSDT"
26#define ACPI_ECDT_SIGNATURE "ECDT"
27#define ACPI_DBG2_SIGNATURE "DBG2"
28#define ACPI_SPCR_SIGNATURE "SPCR"
29#define ACPI_RHCT_SIGNATURE "RHCT"
30#define ACPI_DMAR_SIGNATURE "DMAR"
31#define ACPI_WAET_SIGNATURE "WAET"
32#define ACPI_HMAT_SIGNATURE "HMAT"
34#define ACPI_AS_ID_SYS_MEM 0x00
35#define ACPI_AS_ID_SYS_IO 0x01
36#define ACPI_AS_ID_PCI_CFG_SPACE 0x02
37#define ACPI_AS_ID_EC 0x03
38#define ACPI_AS_ID_SMBUS 0x04
39#define ACPI_AS_ID_SYS_CMOS 0x05
40#define ACPI_AS_ID_PCI_BAR_TGT 0x06
41#define ACPI_AS_ID_IPMI 0x07
42#define ACPI_AS_ID_GP_IO 0x08
43#define ACPI_AS_ID_GENERIC_SBUS 0x09
44#define ACPI_AS_ID_PCC 0x0A
45#define ACPI_AS_ID_FFH 0x7F
46#define ACPI_AS_ID_OEM_BASE 0xC0
47#define ACPI_AS_ID_OEM_END 0xFF
49#define ACPI_ACCESS_UD 0
50#define ACPI_ACCESS_BYTE 1
51#define ACPI_ACCESS_WORD 2
52#define ACPI_ACCESS_DWORD 3
53#define ACPI_ACCESS_QWORD 4
93 struct acpi_sdt_hdr
hdr;
98 struct acpi_sdt_hdr
hdr;
114enum acpi_madt_entry_type {
115 ACPI_MADT_ENTRY_TYPE_LAPIC = 0,
116 ACPI_MADT_ENTRY_TYPE_IOAPIC = 1,
117 ACPI_MADT_ENTRY_TYPE_INTERRUPT_SOURCE_OVERRIDE = 2,
118 ACPI_MADT_ENTRY_TYPE_NMI_SOURCE = 3,
119 ACPI_MADT_ENTRY_TYPE_LAPIC_NMI = 4,
120 ACPI_MADT_ENTRY_TYPE_LAPIC_ADDRESS_OVERRIDE = 5,
121 ACPI_MADT_ENTRY_TYPE_IOSAPIC = 6,
122 ACPI_MADT_ENTRY_TYPE_LSAPIC = 7,
123 ACPI_MADT_ENTRY_TYPE_PLATFORM_INTERRUPT_SOURCES = 8,
124 ACPI_MADT_ENTRY_TYPE_LOCAL_X2APIC = 9,
125 ACPI_MADT_ENTRY_TYPE_LOCAL_X2APIC_NMI = 0xA,
126 ACPI_MADT_ENTRY_TYPE_GICC = 0xB,
127 ACPI_MADT_ENTRY_TYPE_GICD = 0xC,
128 ACPI_MADT_ENTRY_TYPE_GIC_MSI_FRAME = 0xD,
129 ACPI_MADT_ENTRY_TYPE_GICR = 0xE,
130 ACPI_MADT_ENTRY_TYPE_GIC_ITS = 0xF,
131 ACPI_MADT_ENTRY_TYPE_MULTIPROCESSOR_WAKEUP = 0x10,
132 ACPI_MADT_ENTRY_TYPE_CORE_PIC = 0x11,
133 ACPI_MADT_ENTRY_TYPE_LIO_PIC = 0x12,
134 ACPI_MADT_ENTRY_TYPE_HT_PIC = 0x13,
135 ACPI_MADT_ENTRY_TYPE_EIO_PIC = 0x14,
136 ACPI_MADT_ENTRY_TYPE_MSI_PIC = 0x15,
137 ACPI_MADT_ENTRY_TYPE_BIO_PIC = 0x16,
138 ACPI_MADT_ENTRY_TYPE_LPC_PIC = 0x17,
139 ACPI_MADT_ENTRY_TYPE_RINTC = 0x18,
140 ACPI_MADT_ENTRY_TYPE_IMSIC = 0x19,
141 ACPI_MADT_ENTRY_TYPE_APLIC = 0x1A,
142 ACPI_MADT_ENTRY_TYPE_PLIC = 0x1B,
143 ACPI_MADT_ENTRY_TYPE_RESERVED = 0x1C,
144 ACPI_MADT_ENTRY_TYPE_OEM = 0x80,
148 struct acpi_sdt_hdr
hdr;
149 uacpi_u32 local_interrupt_controller_address;
151 struct acpi_entry_hdr entries[];
160#define ACPI_PIC_ENABLED (1 << 0)
161#define ACPI_PIC_ONLINE_CAPABLE (1 << 1)
164 struct acpi_entry_hdr
hdr;
172 struct acpi_entry_hdr
hdr;
187#define ACPI_MADT_POLARITY_MASK 0b11
188#define ACPI_MADT_POLARITY_CONFORMING 0b00
189#define ACPI_MADT_POLARITY_ACTIVE_HIGH 0b01
190#define ACPI_MADT_POLARITY_ACTIVE_LOW 0b11
192#define ACPI_MADT_TRIGGERING_MASK 0b1100
193#define ACPI_MADT_TRIGGERING_CONFORMING 0b0000
194#define ACPI_MADT_TRIGGERING_EDGE 0b0100
195#define ACPI_MADT_TRIGGERING_LEVEL 0b1100
198 struct acpi_entry_hdr
hdr;
207 struct acpi_entry_hdr
hdr;
214 struct acpi_entry_hdr
hdr;
222 struct acpi_entry_hdr
hdr;
229 struct acpi_entry_hdr
hdr;
238 struct acpi_entry_hdr
hdr;
250#define ACPI_CPEI_PROCESSOR_OVERRIDE (1 << 0)
253 struct acpi_entry_hdr
hdr;
265 struct acpi_entry_hdr
hdr;
274 struct acpi_entry_hdr
hdr;
283#define ACPI_GICC_ENABLED (1 << 0)
284#define ACPI_GICC_PERF_INTERRUPT_MODE (1 << 1)
285#define ACPI_GICC_VGIC_MAINTENANCE_INTERRUPT_MODE (1 << 2)
286#define ACPI_GICC_ONLINE_CAPABLE (1 << 3)
289#define ACPI_GICC_TRIGGERING_EDGE 1
290#define ACPI_GICC_TRIGGERING_LEVEL 0
293 struct acpi_entry_hdr
hdr;
315 struct acpi_entry_hdr
hdr;
326#define ACPI_SPI_SELECT (1 << 0)
329 struct acpi_entry_hdr
hdr;
340 struct acpi_entry_hdr
hdr;
348 struct acpi_entry_hdr
hdr;
357 struct acpi_entry_hdr
hdr;
364#define ACPI_CORE_PIC_ENABLED (1 << 0)
367 struct acpi_entry_hdr
hdr;
376 struct acpi_entry_hdr
hdr;
386 struct acpi_entry_hdr
hdr;
395 struct acpi_entry_hdr
hdr;
404 struct acpi_entry_hdr
hdr;
413 struct acpi_entry_hdr
hdr;
423 struct acpi_entry_hdr
hdr;
432 struct acpi_entry_hdr
hdr;
445 struct acpi_entry_hdr
hdr;
459 struct acpi_entry_hdr
hdr;
473 struct acpi_entry_hdr
hdr;
499 struct acpi_sdt_hdr
hdr;
502 struct acpi_entry_hdr entries[];
510#define ACPI_SRAT_PROCESSOR_ENABLED (1 << 0)
513 struct acpi_entry_hdr
hdr;
524#define ACPI_SRAT_MEMORY_ENABLED (1 << 0)
525#define ACPI_SRAT_MEMORY_HOTPLUGGABLE (1 << 1)
526#define ACPI_SRAT_MEMORY_NON_VOLATILE (1 << 2)
529 struct acpi_entry_hdr
hdr;
541 struct acpi_entry_hdr
hdr;
552#define ACPI_SRAT_GICC_ENABLED (1 << 0)
555 struct acpi_entry_hdr
hdr;
564 struct acpi_entry_hdr
hdr;
572#define ACPI_GENERIC_AFFINITY_ENABLED (1 << 0)
573#define ACPI_GENERIC_AFFINITY_ARCH_TRANSACTIONS (1 << 1)
576 struct acpi_entry_hdr
hdr;
587#define ACPI_SRAT_RINTC_AFFINITY_ENABLED (1 << 0)
590 struct acpi_entry_hdr
hdr;
600 struct acpi_sdt_hdr
hdr;
612#define ACPI_GTDT_TRIGGERING (1 << 0)
613#define ACPI_GTDT_TRIGGERING_EDGE 1
614#define ACPI_GTDT_TRIGGERING_LEVEL 0
622#define ACPI_GTDT_POLARITY (1 << 1)
623#define ACPI_GTDT_POLARITY_ACTIVE_LOW 1
624#define ACPI_GTDT_POLARITY_ACTIVE_HIGH 0
627#define ACPI_GTDT_ALWAYS_ON_CAPABLE (1 << 2)
630 struct acpi_sdt_hdr
hdr;
662 struct acpi_gtdt_entry_hdr
hdr;
671#define ACPI_GTDT_TIMER_ENTRY_SECURE (1 << 0)
672#define ACPI_GTDT_TIMER_ENTRY_ALWAYS_ON_CAPABLE (1 << 1)
688#define ACPI_GTDT_WATCHDOG_SECURE (1 << 2)
691 struct acpi_gtdt_entry_hdr
hdr;
701#define ACPI_IA_PC_LEGACY_DEVS (1 << 0)
702#define ACPI_IA_PC_8042 (1 << 1)
703#define ACPI_IA_PC_NO_VGA (1 << 2)
704#define ACPI_IA_PC_NO_MSI (1 << 3)
705#define ACPI_IA_PC_NO_PCIE_ASPM (1 << 4)
706#define ACPI_IA_PC_NO_CMOS_RTC (1 << 5)
709#define ACPI_WBINVD (1 << 0)
710#define ACPI_WBINVD_FLUSH (1 << 1)
711#define ACPI_PROC_C1 (1 << 2)
712#define ACPI_P_LVL2_UP (1 << 3)
713#define ACPI_PWR_BUTTON (1 << 4)
714#define ACPI_SLP_BUTTON (1 << 5)
715#define ACPI_FIX_RTC (1 << 6)
716#define ACPI_RTC_S4 (1 << 7)
717#define ACPI_TMR_VAL_EXT (1 << 8)
718#define ACPI_DCK_CAP (1 << 9)
719#define ACPI_RESET_REG_SUP (1 << 10)
720#define ACPI_SEALED_CASE (1 << 11)
721#define ACPI_HEADLESS (1 << 12)
722#define ACPI_CPU_SW_SLP (1 << 13)
723#define ACPI_PCI_EXP_WAK (1 << 14)
724#define ACPI_USE_PLATFORM_CLOCK (1 << 15)
725#define ACPI_S4_RTC_STS_VALID (1 << 16)
726#define ACPI_REMOTE_POWER_ON_CAPABLE (1 << 17)
727#define ACPI_FORCE_APIC_CLUSTER_MODEL (1 << 18)
728#define ACPI_FORCE_APIC_PHYS_DEST_MODE (1 << 19)
729#define ACPI_HW_REDUCED_ACPI (1 << 20)
730#define ACPI_LOW_POWER_S0_IDLE_CAPABLE (1 << 21)
733#define ACPI_ARM_PSCI_COMPLIANT (1 << 0)
734#define ACPI_ARM_PSCI_USE_HVC (1 << 1)
737 struct acpi_sdt_hdr
hdr;
776 struct acpi_gas reset_reg;
782 struct acpi_gas x_pm1a_evt_blk;
783 struct acpi_gas x_pm1b_evt_blk;
784 struct acpi_gas x_pm1a_cnt_blk;
785 struct acpi_gas x_pm1b_cnt_blk;
786 struct acpi_gas x_pm2_cnt_blk;
787 struct acpi_gas x_pm_tmr_blk;
788 struct acpi_gas x_gpe0_blk;
789 struct acpi_gas x_gpe1_blk;
790 struct acpi_gas sleep_control_reg;
791 struct acpi_gas sleep_status_reg;
797#define ACPI_S4BIOS_F (1 << 0)
798#define ACPI_64BIT_WAKE_SUPPORTED_F (1 << 1)
801#define ACPI_64BIT_WAKE_F (1 << 0)
828 struct acpi_sdt_hdr
hdr;
835#define ACPI_HPET_PCI_VENDOR_ID_SHIFT 16
836#define ACPI_HPET_LEGACY_REPLACEMENT_IRQ_ROUTING_CAPABLE (1 << 15)
837#define ACPI_HPET_COUNT_SIZE_CAP (1 << 13)
838#define ACPI_HPET_NUMBER_OF_COMPARATORS_SHIFT 8
839#define ACPI_HPET_NUMBER_OF_COMPARATORS_MASK 0b11111
840#define ACPI_HPET_HARDWARE_REV_ID_MASK 0b11111111
843#define ACPI_HPET_PAGE_PROTECTION_MASK 0b11
844#define ACPI_HPET_PAGE_NO_PROTECTION 0
845#define ACPI_HPET_PAGE_4K_PROTECTED 1
846#define ACPI_HPET_PAGE_64K_PROTECTED 2
849 struct acpi_sdt_hdr
hdr;
859#define ACPI_PM1_STS_TMR_STS_IDX 0
860#define ACPI_PM1_STS_BM_STS_IDX 4
861#define ACPI_PM1_STS_GBL_STS_IDX 5
862#define ACPI_PM1_STS_PWRBTN_STS_IDX 8
863#define ACPI_PM1_STS_SLPBTN_STS_IDX 9
864#define ACPI_PM1_STS_RTC_STS_IDX 10
865#define ACPI_PM1_STS_IGN0_IDX 11
866#define ACPI_PM1_STS_PCIEXP_WAKE_STS_IDX 14
867#define ACPI_PM1_STS_WAKE_STS_IDX 15
869#define ACPI_PM1_STS_TMR_STS_MASK (1 << ACPI_PM1_STS_TMR_STS_IDX)
870#define ACPI_PM1_STS_BM_STS_MASK (1 << ACPI_PM1_STS_BM_STS_IDX)
871#define ACPI_PM1_STS_GBL_STS_MASK (1 << ACPI_PM1_STS_GBL_STS_IDX)
872#define ACPI_PM1_STS_PWRBTN_STS_MASK (1 << ACPI_PM1_STS_PWRBTN_STS_IDX)
873#define ACPI_PM1_STS_SLPBTN_STS_MASK (1 << ACPI_PM1_STS_SLPBTN_STS_IDX)
874#define ACPI_PM1_STS_RTC_STS_MASK (1 << ACPI_PM1_STS_RTC_STS_IDX)
875#define ACPI_PM1_STS_IGN0_MASK (1 << ACPI_PM1_STS_IGN0_IDX)
876#define ACPI_PM1_STS_PCIEXP_WAKE_STS_MASK (1 << ACPI_PM1_STS_PCIEXP_WAKE_STS_IDX)
877#define ACPI_PM1_STS_WAKE_STS_MASK (1 << ACPI_PM1_STS_WAKE_STS_IDX)
879#define ACPI_PM1_STS_CLEAR 1
882#define ACPI_PM1_EN_TMR_EN_IDX 0
883#define ACPI_PM1_EN_GBL_EN_IDX 5
884#define ACPI_PM1_EN_PWRBTN_EN_IDX 8
885#define ACPI_PM1_EN_SLPBTN_EN_IDX 9
886#define ACPI_PM1_EN_RTC_EN_IDX 10
887#define ACPI_PM1_EN_PCIEXP_WAKE_DIS_IDX 14
889#define ACPI_PM1_EN_TMR_EN_MASK (1 << ACPI_PM1_EN_TMR_EN_IDX)
890#define ACPI_PM1_EN_GBL_EN_MASK (1 << ACPI_PM1_EN_GBL_EN_IDX)
891#define ACPI_PM1_EN_PWRBTN_EN_MASK (1 << ACPI_PM1_EN_PWRBTN_EN_IDX)
892#define ACPI_PM1_EN_SLPBTN_EN_MASK (1 << ACPI_PM1_EN_SLPBTN_EN_IDX)
893#define ACPI_PM1_EN_RTC_EN_MASK (1 << ACPI_PM1_EN_RTC_EN_IDX)
894#define ACPI_PM1_EN_PCIEXP_WAKE_DIS_MASK (1 << ACPI_PM1_EN_PCIEXP_WAKE_DIS_IDX)
897#define ACPI_PM1_CNT_SCI_EN_IDX 0
898#define ACPI_PM1_CNT_BM_RLD_IDX 1
899#define ACPI_PM1_CNT_GBL_RLS_IDX 2
900#define ACPI_PM1_CNT_RSVD0_IDX 3
901#define ACPI_PM1_CNT_RSVD1_IDX 4
902#define ACPI_PM1_CNT_RSVD2_IDX 5
903#define ACPI_PM1_CNT_RSVD3_IDX 6
904#define ACPI_PM1_CNT_RSVD4_IDX 7
905#define ACPI_PM1_CNT_RSVD5_IDX 8
906#define ACPI_PM1_CNT_IGN0_IDX 9
907#define ACPI_PM1_CNT_SLP_TYP_IDX 10
908#define ACPI_PM1_CNT_SLP_EN_IDX 13
909#define ACPI_PM1_CNT_RSVD6_IDX 14
910#define ACPI_PM1_CNT_RSVD7_IDX 15
912#define ACPI_SLP_TYP_MAX 0x7
914#define ACPI_PM1_CNT_SCI_EN_MASK (1 << ACPI_PM1_CNT_SCI_EN_IDX)
915#define ACPI_PM1_CNT_BM_RLD_MASK (1 << ACPI_PM1_CNT_BM_RLD_IDX)
916#define ACPI_PM1_CNT_GBL_RLS_MASK (1 << ACPI_PM1_CNT_GBL_RLS_IDX)
917#define ACPI_PM1_CNT_SLP_TYP_MASK (ACPI_SLP_TYP_MAX << ACPI_PM1_CNT_SLP_TYP_IDX)
918#define ACPI_PM1_CNT_SLP_EN_MASK (1 << ACPI_PM1_CNT_SLP_EN_IDX)
926#define ACPI_PM1_CNT_PRESERVE_MASK ( \
927 (1 << ACPI_PM1_CNT_RSVD0_IDX) | \
928 (1 << ACPI_PM1_CNT_RSVD1_IDX) | \
929 (1 << ACPI_PM1_CNT_RSVD2_IDX) | \
930 (1 << ACPI_PM1_CNT_RSVD3_IDX) | \
931 (1 << ACPI_PM1_CNT_RSVD4_IDX) | \
932 (1 << ACPI_PM1_CNT_RSVD5_IDX) | \
933 (1 << ACPI_PM1_CNT_IGN0_IDX ) | \
934 (1 << ACPI_PM1_CNT_RSVD6_IDX) | \
935 (1 << ACPI_PM1_CNT_RSVD7_IDX) \
939#define ACPI_PM2_CNT_ARB_DIS_IDX 0
940#define ACPI_PM2_CNT_ARB_DIS_MASK (1 << ACPI_PM2_CNT_ARB_DIS_IDX)
943#define ACPI_PM2_CNT_PRESERVE_MASK (~((uacpi_u64)ACPI_PM2_CNT_ARB_DIS_MASK))
946#define ACPI_SLP_CNT_RSVD0_IDX 0
947#define ACPI_SLP_CNT_IGN0_IDX 1
948#define ACPI_SLP_CNT_SLP_TYP_IDX 2
949#define ACPI_SLP_CNT_SLP_EN_IDX 5
950#define ACPI_SLP_CNT_RSVD1_IDX 6
951#define ACPI_SLP_CNT_RSVD2_IDX 7
953#define ACPI_SLP_CNT_SLP_TYP_MASK (ACPI_SLP_TYP_MAX << ACPI_SLP_CNT_SLP_TYP_IDX)
954#define ACPI_SLP_CNT_SLP_EN_MASK (1 << ACPI_SLP_CNT_SLP_EN_IDX)
956#define ACPI_SLP_CNT_PRESERVE_MASK ( \
957 (1 << ACPI_SLP_CNT_RSVD0_IDX) | \
958 (1 << ACPI_SLP_CNT_IGN0_IDX) | \
959 (1 << ACPI_SLP_CNT_RSVD1_IDX) | \
960 (1 << ACPI_SLP_CNT_RSVD2_IDX) \
964#define ACPI_SLP_STS_WAK_STS_IDX 7
966#define ACPI_SLP_STS_WAK_STS_MASK (1 << ACPI_SLP_STS_WAK_STS_IDX)
969#define ACPI_SLP_STS_PRESERVE_MASK (~((uacpi_u64)ACPI_SLP_STS_WAK_STS_MASK))
971#define ACPI_SLP_STS_CLEAR 1
974 struct acpi_sdt_hdr
hdr;
979 struct acpi_sdt_hdr
hdr;
993#define ACPI_STA_RESULT_DEVICE_ENABLED (1 << 1)
994#define ACPI_STA_RESULT_DEVICE_SHOWN_IN_UI (1 << 2)
995#define ACPI_STA_RESULT_DEVICE_FUNCTIONING (1 << 3)
996#define ACPI_STA_RESULT_DEVICE_BATTERY_PRESENT (1 << 4)
998#define ACPI_REG_DISCONNECT 0
999#define ACPI_REG_CONNECT 1
1002 struct acpi_sdt_hdr
hdr;
1003 struct acpi_gas ec_control;
1004 struct acpi_gas ec_data;
1067 struct acpi_sdt_hdr
hdr;
1081 uacpi_u8 number_generic_address_registers;
1106#define ACPI_SPCR_INTERRUPT_TYPE_8259 0x1
1107#define ACPI_SPCR_INTERRUPT_TYPE_IOAPIC 0x2
1108#define ACPI_SPCR_INTERRUPT_TYPE_IOSAPIC 0x4
1109#define ACPI_SPCR_INTERRUPT_TYPE_GIC 0x8
1110#define ACPI_SPCR_INTERRUPT_TYPE_PLIC_APLIC 0x10
1113#define ACPI_SPCR_PCI_FLAGS_DO_NOT_DISABLE 0x1
1124 struct acpi_sdt_hdr
hdr;
1127 struct acpi_gas base_address;
1167#define ACPI_TIMER_CANNOT_WAKE_CPU (1 << 0)
1170 struct acpi_sdt_hdr
hdr;
1175 struct acpi_rhct_hdr entries[];
1187 struct acpi_rhct_hdr
hdr;
1194 struct acpi_rhct_hdr
hdr;
1209 struct acpi_rhct_hdr
hdr;
1216 struct acpi_rhct_hdr
hdr;
1223#define ACPI_LARGE_ITEM (1 << 7)
1225#define ACPI_SMALL_ITEM_NAME_IDX 3
1226#define ACPI_SMALL_ITEM_NAME_MASK 0xF
1227#define ACPI_SMALL_ITEM_LENGTH_MASK 0x7
1229#define ACPI_LARGE_ITEM_NAME_MASK 0x7F
1232#define ACPI_RESOURCE_IRQ 0x04
1233#define ACPI_RESOURCE_DMA 0x05
1234#define ACPI_RESOURCE_START_DEPENDENT 0x06
1235#define ACPI_RESOURCE_END_DEPENDENT 0x07
1236#define ACPI_RESOURCE_IO 0x08
1237#define ACPI_RESOURCE_FIXED_IO 0x09
1238#define ACPI_RESOURCE_FIXED_DMA 0x0A
1239#define ACPI_RESOURCE_VENDOR_TYPE0 0x0E
1240#define ACPI_RESOURCE_END_TAG 0x0F
1243#define ACPI_RESOURCE_MEMORY24 0x01
1244#define ACPI_RESOURCE_GENERIC_REGISTER 0x02
1245#define ACPI_RESOURCE_VENDOR_TYPE1 0x04
1246#define ACPI_RESOURCE_MEMORY32 0x05
1247#define ACPI_RESOURCE_FIXED_MEMORY32 0x06
1248#define ACPI_RESOURCE_ADDRESS32 0x07
1249#define ACPI_RESOURCE_ADDRESS16 0x08
1250#define ACPI_RESOURCE_EXTENDED_IRQ 0x09
1251#define ACPI_RESOURCE_ADDRESS64 0x0A
1252#define ACPI_RESOURCE_ADDRESS64_EXTENDED 0x0B
1253#define ACPI_RESOURCE_GPIO_CONNECTION 0x0C
1254#define ACPI_RESOURCE_PIN_FUNCTION 0x0D
1255#define ACPI_RESOURCE_SERIAL_CONNECTION 0x0E
1256#define ACPI_RESOURCE_PIN_CONFIGURATION 0x0F
1257#define ACPI_RESOURCE_PIN_GROUP 0x10
1258#define ACPI_RESOURCE_PIN_GROUP_FUNCTION 0x11
1259#define ACPI_RESOURCE_PIN_GROUP_CONFIGURATION 0x12
1260#define ACPI_RESOURCE_CLOCK_INPUT 0x13
1272 struct acpi_small_item common;
1279 struct acpi_small_item common;
1286 struct acpi_small_item common;
1292 struct acpi_small_item common;
1297 struct acpi_small_item common;
1307 struct acpi_small_item common;
1314 struct acpi_small_item common;
1322 struct acpi_small_item common;
1328 struct acpi_small_item common;
1340 struct acpi_large_item common;
1350 struct acpi_large_item common;
1356 struct acpi_large_item common;
1366 struct acpi_large_item common;
1374 struct acpi_large_item common;
1425 struct acpi_large_item common;
1433 struct acpi_large_item common;
1443 struct acpi_large_item common;
1459#define ACPI_SERIAL_TYPE_I2C 1
1460#define ACPI_SERIAL_TYPE_SPI 2
1461#define ACPI_SERIAL_TYPE_UART 3
1462#define ACPI_SERIAL_TYPE_CSI2 4
1463#define ACPI_SERIAL_TYPE_MAX ACPI_SERIAL_TYPE_CSI2
1466 struct acpi_large_item common;
1472 uacpi_u8 type_specific_revision_id;
1478 struct acpi_resource_serial common;
1485 struct acpi_resource_serial common;
1495 struct acpi_resource_serial common;
1505 struct acpi_resource_serial common;
1510 struct acpi_large_item common;
1524 struct acpi_large_item common;
1538 struct acpi_large_item common;
1549 struct acpi_large_item common;
1562 struct acpi_large_item common;
1576 struct acpi_large_item common;
1586#define ACPI_DMAR_INTR_REMAP (1 << 0)
1587#define ACPI_DMAR_X2APIC_OPT_OUT (1 << 1)
1588#define ACPI_DMAR_DMA_CTRL_PLATFORM_OPT_IN_FLAG (1 << 2)
1608 struct acpi_sdt_hdr
hdr;
1612 struct acpi_dmar_entry_hdr entries[];
1617#define ACPI_DSS_PCI_ENDPOINT 0x01
1618#define ACPI_DSS_PCI_BRIDGE 0x02
1619#define ACPI_DSS_IOAPIC 0x03
1620#define ACPI_DSS_MSI_CAPABLE_HPET 0x04
1621#define ACPI_DSS_ACPI_NAMESPACE_DEVICE 0x05
1624#define ACPI_DSS_REQ_WO_PASID_NESTED_NOTALLOWED (1 << 0)
1625#define ACPI_DSS_REQ_WO_PASID_PWSNP_NOTALLOWED (1 << 1)
1626#define ACPI_DSS_REQ_WO_PASID_PGSNP_NOTALLOWED (1 << 2)
1627#define ACPI_DSS_ATC_HARDENED (1 << 3)
1628#define ACPI_DSS_ATC_REQUIRED (1 << 4)
1644#define ACPI_INCLUDE_PCI_ALL (1 << 0)
1647 struct acpi_dmar_entry_hdr
hdr;
1652 struct acpi_dmar_dss entries[];
1657 struct acpi_dmar_entry_hdr
hdr;
1662 struct acpi_dmar_dss entries[];
1667#define ACPI_ATSR_ALL_PORTS (1 << 0)
1670 struct acpi_dmar_entry_hdr
hdr;
1674 struct acpi_dmar_dss entries[];
1679 struct acpi_dmar_entry_hdr
hdr;
1687 struct acpi_dmar_entry_hdr
hdr;
1695#define ACPI_SATC_ATC_REQUIRED 0x01
1698 struct acpi_dmar_entry_hdr
hdr;
1702 struct acpi_dmar_dss entries[];
1707 struct acpi_dmar_entry_hdr
hdr;
1710 struct acpi_dmar_dss entries[];
1715#define ACPI_WAET_RTC_GOOD (1 << 0)
1716#define ACPI_WAET_ACPI_PM_TIMER_GOOD (1 << 1)
1719 struct acpi_sdt_hdr
hdr;
1739 struct acpi_sdt_hdr
hdr;
1741 struct acpi_hmat_entry_hdr entries[];
1746#define ACPI_HMAT_PROXIMITY_DOMAIN_INITIATOR_VALID (1 << 0)
1747#define ACPI_HMAT_PROXIMITY_DOMAIN_MEMORY_VALID (1 << 1)
1748#define ACPI_HMAT_RESERVATION_HINT (1 << 2)
1751 struct acpi_hmat_entry_hdr
hdr;
1769#define ACPI_HMAT_LOCALITY_MEM_HIERARCHY_MASK 0x0F
1770#define ACPI_HMAT_LOCALITY_MEM_HIERARCHY_MEMORY 0x00
1771#define ACPI_HMAT_LOCALITY_MEM_HIERARCHY_L1 0x01
1772#define ACPI_HMAT_LOCALITY_MEM_HIERARCHY_L2 0x02
1773#define ACPI_HMAT_LOCALITY_MEM_HIERARCHY_L3 0x03
1775#define ACPI_HMAT_LOCALITY_MIN_TRANSFER_SIZE_VALID 0x10
1776#define ACPI_HMAT_LOCALITY_NON_SEQUENTIAL_TRANSFERS 0x20
1779#define ACPI_HMAT_LOCALITY_DATA_TYPE_ACCESS_LATENCY 0x00
1780#define ACPI_HMAT_LOCALITY_DATA_TYPE_READ_LATENCY 0x01
1781#define ACPI_HMAT_LOCALITY_DATA_TYPE_WRITE_LATENCY 0x02
1782#define ACPI_HMAT_LOCALITY_DATA_TYPE_ACCESS_BANDWIDTH 0x03
1783#define ACPI_HMAT_LOCALITY_DATA_TYPE_READ_BANDWIDTH 0x04
1784#define ACPI_HMAT_LOCALITY_DATA_TYPE_WRITE_BANDWIDTH 0x05
1787 struct acpi_hmat_entry_hdr
hdr;
1791 uacpi_u32 num_initiator_proximity_domains;
1806#define ACPI_HMAT_CACHE_TOTAL_LEVELS_MASK 0xF
1807#define ACPI_HMAT_CACHE_TOTAL_LEVELS_SHIFT 0
1809#define ACPI_HMAT_CACHE_LEVEL_MASK 0xF
1810#define ACPI_HMAT_CACHE_LEVEL_SHIFT 4
1812#define ACPI_HMAT_CACHE_ASSOCIATIVITY_MASK 0xF
1813#define ACPI_HMAT_CACHE_ASSOCIATIVITY_SHIFT 8
1814#define ACPI_HMAT_CACHE_ASSOCIATIVITY_NONE 0x00
1815#define ACPI_HMAT_CACHE_ASSOCIATIVITY_DIRECT 0x01
1816#define ACPI_HMAT_CACHE_ASSOCIATIVITY_COMPLEX 0x02
1818#define ACPI_HMAT_CACHE_WRITE_POLICY_MASK 0xF
1819#define ACPI_HMAT_CACHE_WRITE_POLICY_SHIFT 12
1820#define ACPI_HMAT_CACHE_WRITE_POLICY_NONE 0x00
1821#define ACPI_HMAT_CACHE_WRITE_POLICY_WB 0x01
1822#define ACPI_HMAT_CACHE_WRITE_POLICY_WT 0x02
1824#define ACPI_HMAT_CACHE_LINE_SIZE_MASK 0xFFFF
1825#define ACPI_HMAT_CACHE_LINE_SIZE_SHIFT 16
1828 struct acpi_hmat_entry_hdr
hdr;
_Check_return_ _Ret_maybenull_ _In_ size_t alignment
static PDB_INFORMATION information
static cab_ULONG checksum(const cab_UBYTE *data, cab_UWORD bytes, cab_ULONG csum)
static const WCHAR version[]
#define ACPI_STA_RESULT_DEVICE_PRESENT
@ ACPI_GTDT_ENTRY_TYPE_TIMER
@ ACPI_GTDT_ENTRY_TYPE_WATCHDOG
@ ACPI_DMAR_ENTRY_TYPE_RHSA
@ ACPI_DMAR_ENTRY_TYPE_SATC
@ ACPI_DMAR_ENTRY_TYPE_ATSR
@ ACPI_DMAR_ENTRY_TYPE_RMRR
@ ACPI_DMAR_ENTRY_TYPE_SIDP
@ ACPI_DMAR_ENTRY_TYPE_ANDD
@ ACPI_DMAR_ENTRY_TYPE_DRHD
@ ACPI_DBG2_SUBTYPE_USB_XHCI_DEBUG
@ ACPI_DBG2_SUBTYPE_USB_EHCI_DEBUG
@ ACPI_RHCT_ENTRY_TYPE_ISA_STRING
@ ACPI_RHCT_ENTRY_TYPE_HART_INFO
@ ACPI_RHCT_ENTRY_TYPE_CMO
@ ACPI_RHCT_ENTRY_TYPE_MMU
@ ACPI_HMAT_ENTRY_TYPE_LOCALITY
@ ACPI_HMAT_ENTRY_TYPE_CACHE
@ ACPI_HMAT_ENTRY_TYPE_PROXIMITY_DOMAIN
@ ACPI_SRAT_ENTRY_TYPE_X2APIC_AFFINITY
@ ACPI_SRAT_ENTRY_TYPE_GENERIC_INITIATOR_AFFINITY
@ ACPI_SRAT_ENTRY_TYPE_GIC_ITS_AFFINITY
@ ACPI_SRAT_ENTRY_TYPE_GICC_AFFINITY
@ ACPI_SRAT_ENTRY_TYPE_RINTC_AFFINITY
@ ACPI_SRAT_ENTRY_TYPE_MEMORY_AFFINITY
@ ACPI_SRAT_ENTRY_TYPE_PROCESSOR_AFFINITY
@ ACPI_SRAT_ENTRY_TYPE_GENERIC_PORT_AFFINITY
@ ACPI_DBG2_SUBTYPE_1394_STANDARD
@ ACPI_RHCT_MMU_TYPE_SV39
@ ACPI_RHCT_MMU_TYPE_SV48
@ ACPI_RHCT_MMU_TYPE_SV57
@ ACPI_SPCR_TERMINAL_TYPE_VT100
@ ACPI_SPCR_TERMINAL_TYPE_ANSI
@ ACPI_SPCR_TERMINAL_TYPE_VT_UTF8
@ ACPI_SPCR_TERMINAL_TYPE_EXTENDED_VT100
@ ACPI_DBG2_SUBTYPE_SERIAL_APM88XXXX
@ ACPI_DBG2_SUBTYPE_SERIAL_NS16550
@ ACPI_DBG2_SUBTYPE_SERIAL_NS16550_NVIDIA
@ ACPI_DBG2_SUBTYPE_SERIAL_INTEL_USIF
@ ACPI_DBG2_SUBTYPE_SERIAL_ARM_SBSA_32BIT
@ ACPI_DBG2_SUBTYPE_SERIAL_BCM2835
@ ACPI_DBG2_SUBTYPE_SERIAL_SAM5250
@ ACPI_DBG2_SUBTYPE_SERIAL_NS16550_GAS
@ ACPI_DBG2_SUBTYPE_SERIAL_MSM8X60
@ ACPI_DBG2_SUBTYPE_SERIAL_PL011
@ ACPI_DBG2_SUBTYPE_SERIAL_ARM_DCC
@ ACPI_DBG2_SUBTYPE_SERIAL_SDM845_1_8432MHZ
@ ACPI_DBG2_SUBTYPE_SERIAL_INTEL_LPSS
@ ACPI_DBG2_SUBTYPE_SERIAL_NS16550_DBGP1
@ ACPI_DBG2_SUBTYPE_SERIAL_SDM845_7_372MHZ
@ ACPI_DBG2_SUBTYPE_SERIAL_TI_OMAP
@ ACPI_DBG2_SUBTYPE_SERIAL_IMX6
@ ACPI_DBG2_SUBTYPE_SERIAL_RISCV_SBI
@ ACPI_DBG2_SUBTYPE_SERIAL_ARM_SBSA_GENERIC
@ ACPI_DBG2_SUBTYPE_SERIAL_MSM8974
@ ACPI_DBG2_SUBTYPE_SERIAL_MAX311XE_SPI
#define UACPI_EXPECT_SIZEOF(type, size)
static const FxOffsetAndName offsets[]
GLuint GLuint GLsizei count
GLuint GLuint GLsizei GLenum type
GLuint GLsizei GLsizei * length
enum wined3d_data_type data_type
static unsigned int number
static HANDLE ACCESS_MASK ULONG attributes
uacpi_u64 x_firmware_waking_vector
uacpi_u32 firmware_waking_vector
uacpi_u32 hardware_signature