60{
67
69
70 if (Rsdp)
71 {
72
74
75
78
79
82 if (PartialResourceList ==
NULL)
83 {
84 ERR(
"Failed to allocate resource descriptor\n");
85 return;
86 }
87
89 PartialResourceList->
Version = 0;
91 PartialResourceList->
Count = 1;
92
97
98
100
102 {
103 TRACE(
"ACPI >1.0, using XSDT address\n");
105 }
106 else
107 {
108 TRACE(
"ACPI 1.0, using RSDT address\n");
110 }
111
115
118
119
123 0,
124 0,
125 0xFFFFFFFF,
126 "ACPI BIOS",
127 PartialResourceList,
129 &BiosKey);
130
131
132 (*BusNumber)++;
133 }
134}
VOID FldrCreateComponentKey(_In_ PCONFIGURATION_COMPONENT_DATA SystemNode, _In_ CONFIGURATION_CLASS Class, _In_ CONFIGURATION_TYPE Type, _In_ IDENTIFIER_FLAG Flags, _In_ ULONG Key, _In_ ULONG Affinity, _In_ PCSTR IdentifierString, _In_ PCM_PARTIAL_RESOURCE_LIST ResourceList, _In_ ULONG Size, _Out_ PCONFIGURATION_COMPONENT_DATA *ComponentKey)
static PRSDP_DESCRIPTOR FindAcpiBios(VOID)
PVOID FrLdrHeapAlloc(SIZE_T MemorySize, ULONG Tag)
struct _ACPI_BIOS_DATA * PACPI_BIOS_DATA
BIOS_MEMORY_MAP PcBiosMemoryMap[MAX_BIOS_DESCRIPTORS]
#define CmResourceTypeDeviceSpecific
ULONG rsdt_physical_address
ULONGLONG xsdt_physical_address
PHYSICAL_ADDRESS RSDTAddress
BIOS_MEMORY_MAP MemoryMap[1]
union _CM_PARTIAL_RESOURCE_DESCRIPTOR::@432 u
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@432::@441 DeviceSpecificData
CM_PARTIAL_RESOURCE_DESCRIPTOR PartialDescriptors[1]
#define FIELD_OFFSET(t, f)
#define RtlCopyMemory(Destination, Source, Length)
#define RtlZeroMemory(Destination, Length)
#define TAG_HW_RESOURCE_LIST
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
@ CmResourceShareUndetermined
_Must_inspect_result_ typedef _Out_ PULONG TableSize