48#define _COMPONENT ACPI_RESOURCES
52#if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DISASSEMBLER) || defined(ACPI_DEBUGGER)
55#define ACPI_RSD_OFFSET(f) (UINT8) ACPI_OFFSET (ACPI_RESOURCE_DATA,f)
56#define ACPI_PRT_OFFSET(f) (UINT8) ACPI_OFFSET (ACPI_PCI_ROUTING_TABLE,f)
57#define ACPI_RSD_TABLE_SIZE(name) (sizeof(name) / sizeof (ACPI_RSDUMP_INFO))
73 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (Irq.Triggering),
"Triggering", AcpiGbl_HeDecode},
74 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (Irq.Polarity),
"Polarity", AcpiGbl_LlDecode},
75 {
ACPI_RSD_2BITFLAG, ACPI_RSD_OFFSET (Irq.Shareable),
"Sharing", AcpiGbl_ShrDecode},
84 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (Dma.BusMaster),
"Mastering", AcpiGbl_BmDecode},
85 {
ACPI_RSD_2BITFLAG, ACPI_RSD_OFFSET (Dma.Transfer),
"Transfer Type", AcpiGbl_SizDecode},
92 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpStartDpf),
"Start-Dependent-Functions",
NULL},
93 {
ACPI_RSD_UINT8 , ACPI_RSD_OFFSET (StartDpf.DescriptorLength),
"Descriptor Length",
NULL},
94 {
ACPI_RSD_2BITFLAG, ACPI_RSD_OFFSET (StartDpf.CompatibilityPriority),
"Compatibility Priority", AcpiGbl_ConfigDecode},
95 {
ACPI_RSD_2BITFLAG, ACPI_RSD_OFFSET (StartDpf.PerformanceRobustness),
"Performance/Robustness", AcpiGbl_ConfigDecode}
100 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpEndDpf),
"End-Dependent-Functions",
NULL}
106 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (Io.IoDecode),
"Address Decoding", AcpiGbl_IoDecode},
134 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpMemory24),
"24-Bit Memory Range",
NULL},
135 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (Memory24.WriteProtect),
"Write Protect", AcpiGbl_RwDecode},
144 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpMemory32),
"32-Bit Memory Range",
NULL},
145 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (Memory32.WriteProtect),
"Write Protect", AcpiGbl_RwDecode},
154 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpFixedMemory32),
"32-Bit Fixed Memory Range",
NULL},
155 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (FixedMemory32.WriteProtect),
"Write Protect", AcpiGbl_RwDecode},
162 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpAddress16),
"16-Bit WORD Address Space",
NULL},
167 {
ACPI_RSD_UINT16, ACPI_RSD_OFFSET (Address16.Address.TranslationOffset),
168 "Translation Offset",
NULL},
169 {
ACPI_RSD_UINT16, ACPI_RSD_OFFSET (Address16.Address.AddressLength),
"Address Length",
NULL},
175 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpAddress32),
"32-Bit DWORD Address Space",
NULL},
180 {
ACPI_RSD_UINT32, ACPI_RSD_OFFSET (Address32.Address.TranslationOffset),
181 "Translation Offset",
NULL},
182 {
ACPI_RSD_UINT32, ACPI_RSD_OFFSET (Address32.Address.AddressLength),
"Address Length",
NULL},
188 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpAddress64),
"64-Bit QWORD Address Space",
NULL},
193 {
ACPI_RSD_UINT64, ACPI_RSD_OFFSET (Address64.Address.TranslationOffset),
194 "Translation Offset",
NULL},
195 {
ACPI_RSD_UINT64, ACPI_RSD_OFFSET (Address64.Address.AddressLength),
"Address Length",
NULL},
201 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpExtAddress64),
"64-Bit Extended Address Space",
NULL},
203 {
ACPI_RSD_UINT64, ACPI_RSD_OFFSET (ExtAddress64.Address.Granularity),
"Granularity",
NULL},
204 {
ACPI_RSD_UINT64, ACPI_RSD_OFFSET (ExtAddress64.Address.Minimum),
"Address Minimum",
NULL},
205 {
ACPI_RSD_UINT64, ACPI_RSD_OFFSET (ExtAddress64.Address.Maximum),
"Address Maximum",
NULL},
206 {
ACPI_RSD_UINT64, ACPI_RSD_OFFSET (ExtAddress64.Address.TranslationOffset),
207 "Translation Offset",
NULL},
208 {
ACPI_RSD_UINT64, ACPI_RSD_OFFSET (ExtAddress64.Address.AddressLength),
209 "Address Length",
NULL},
210 {
ACPI_RSD_UINT64, ACPI_RSD_OFFSET (ExtAddress64.TypeSpecific),
"Type-Specific Attribute",
NULL}
216 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (ExtendedIrq.ProducerConsumer),
"Type", AcpiGbl_ConsumeDecode},
217 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (ExtendedIrq.Triggering),
"Triggering", AcpiGbl_HeDecode},
218 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (ExtendedIrq.Polarity),
"Polarity", AcpiGbl_LlDecode},
219 {
ACPI_RSD_2BITFLAG, ACPI_RSD_OFFSET (ExtendedIrq.Shareable),
"Sharing", AcpiGbl_ShrDecode},
221 {
ACPI_RSD_UINT8, ACPI_RSD_OFFSET (ExtendedIrq.InterruptCount),
"Interrupt Count",
NULL},
227 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpGenericReg),
"Generic Register",
NULL},
239 {
ACPI_RSD_UINT8, ACPI_RSD_OFFSET (Gpio.ConnectionType),
"ConnectionType", AcpiGbl_CtDecode},
240 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (Gpio.ProducerConsumer),
"ProducerConsumer", AcpiGbl_ConsumeDecode},
241 {
ACPI_RSD_UINT8, ACPI_RSD_OFFSET (Gpio.PinConfig),
"PinConfig", AcpiGbl_PpcDecode},
242 {
ACPI_RSD_2BITFLAG, ACPI_RSD_OFFSET (Gpio.Shareable),
"Sharing", AcpiGbl_ShrDecode},
243 {
ACPI_RSD_2BITFLAG, ACPI_RSD_OFFSET (Gpio.IoRestriction),
"IoRestriction", AcpiGbl_IorDecode},
244 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (Gpio.Triggering),
"Triggering", AcpiGbl_HeDecode},
245 {
ACPI_RSD_2BITFLAG, ACPI_RSD_OFFSET (Gpio.Polarity),
"Polarity", AcpiGbl_LlDecode},
259 {
ACPI_RSD_UINT8, ACPI_RSD_OFFSET (PinFunction.PinConfig),
"PinConfig", AcpiGbl_PpcDecode},
260 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (PinFunction.Shareable),
"Sharing", AcpiGbl_ShrDecode},
273 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (PinConfig.ProducerConsumer),
"ProducerConsumer", AcpiGbl_ConsumeDecode},
274 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (PinConfig.Shareable),
"Sharing", AcpiGbl_ShrDecode},
288 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (PinGroup.ProducerConsumer),
"ProducerConsumer", AcpiGbl_ConsumeDecode},
298 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpPinGroupFunction),
"PinGroupFunction",
NULL},
300 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (PinGroupFunction.ProducerConsumer),
"ProducerConsumer", AcpiGbl_ConsumeDecode},
301 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (PinGroupFunction.Shareable),
"Sharing", AcpiGbl_ShrDecode},
302 {
ACPI_RSD_UINT16, ACPI_RSD_OFFSET (PinGroupFunction.FunctionNumber),
"FunctionNumber",
NULL},
304 {
ACPI_RSD_SOURCE, ACPI_RSD_OFFSET (PinGroupFunction.ResourceSource),
"ResourceSource",
NULL},
311 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpPinGroupConfig),
"PinGroupConfig",
NULL},
313 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (PinGroupConfig.ProducerConsumer),
"ProducerConsumer", AcpiGbl_ConsumeDecode},
314 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (PinGroupConfig.Shareable),
"Sharing", AcpiGbl_ShrDecode},
315 {
ACPI_RSD_UINT8, ACPI_RSD_OFFSET (PinGroupConfig.PinConfigType),
"PinConfigType",
NULL},
316 {
ACPI_RSD_UINT32, ACPI_RSD_OFFSET (PinGroupConfig.PinConfigValue),
"PinConfigValue",
NULL},
318 {
ACPI_RSD_SOURCE, ACPI_RSD_OFFSET (PinGroupConfig.ResourceSource),
"ResourceSource",
NULL},
328 {
ACPI_RSD_UINT8, ACPI_RSD_OFFSET (FixedDma.Width),
"TransferWidth", AcpiGbl_DtsDecode},
331#define ACPI_RS_DUMP_COMMON_SERIAL_BUS \
332 {ACPI_RSD_UINT8, ACPI_RSD_OFFSET (CommonSerialBus.RevisionId), "RevisionId", NULL}, \
333 {ACPI_RSD_UINT8, ACPI_RSD_OFFSET (CommonSerialBus.Type), "Type", AcpiGbl_SbtDecode}, \
334 {ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (CommonSerialBus.ProducerConsumer), "ProducerConsumer", AcpiGbl_ConsumeDecode}, \
335 {ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (CommonSerialBus.SlaveMode), "SlaveMode", AcpiGbl_SmDecode}, \
336 {ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (CommonSerialBus.ConnectionSharing),"ConnectionSharing", AcpiGbl_ShrDecode}, \
337 {ACPI_RSD_UINT8, ACPI_RSD_OFFSET (CommonSerialBus.TypeRevisionId), "TypeRevisionId", NULL}, \
338 {ACPI_RSD_UINT16, ACPI_RSD_OFFSET (CommonSerialBus.TypeDataLength), "TypeDataLength", NULL}, \
339 {ACPI_RSD_SOURCE, ACPI_RSD_OFFSET (CommonSerialBus.ResourceSource), "ResourceSource", NULL}, \
340 {ACPI_RSD_UINT16, ACPI_RSD_OFFSET (CommonSerialBus.VendorLength), "VendorLength", NULL}, \
341 {ACPI_RSD_SHORTLISTX,ACPI_RSD_OFFSET (CommonSerialBus.VendorData), "VendorData", NULL},
345 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpCommonSerialBus),
"Common Serial Bus",
NULL},
346 ACPI_RS_DUMP_COMMON_SERIAL_BUS
351 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpCsi2SerialBus),
"Camera Serial Bus",
NULL},
353 {
ACPI_RSD_UINT8, ACPI_RSD_OFFSET (Csi2SerialBus.Type),
"Type", AcpiGbl_SbtDecode},
354 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (Csi2SerialBus.ProducerConsumer),
"ProducerConsumer", AcpiGbl_ConsumeDecode},
355 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (Csi2SerialBus.SlaveMode),
"SlaveMode", AcpiGbl_SmDecode},
356 {
ACPI_RSD_2BITFLAG, ACPI_RSD_OFFSET (Csi2SerialBus.PhyType),
"PhyType", AcpiGbl_PhyDecode},
358 {
ACPI_RSD_UINT8, ACPI_RSD_OFFSET (Csi2SerialBus.TypeRevisionId),
"TypeRevisionId",
NULL},
366 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpI2cSerialBus),
"I2C Serial Bus",
NULL},
367 ACPI_RS_DUMP_COMMON_SERIAL_BUS
368 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (I2cSerialBus.AccessMode),
"AccessMode", AcpiGbl_AmDecode},
369 {
ACPI_RSD_UINT32, ACPI_RSD_OFFSET (I2cSerialBus.ConnectionSpeed),
"ConnectionSpeed",
NULL},
375 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpSpiSerialBus),
"Spi Serial Bus",
NULL},
376 ACPI_RS_DUMP_COMMON_SERIAL_BUS
377 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (SpiSerialBus.WireMode),
"WireMode", AcpiGbl_WmDecode},
378 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (SpiSerialBus.DevicePolarity),
"DevicePolarity", AcpiGbl_DpDecode},
379 {
ACPI_RSD_UINT8, ACPI_RSD_OFFSET (SpiSerialBus.DataBitLength),
"DataBitLength",
NULL},
380 {
ACPI_RSD_UINT8, ACPI_RSD_OFFSET (SpiSerialBus.ClockPhase),
"ClockPhase", AcpiGbl_CphDecode},
381 {
ACPI_RSD_UINT8, ACPI_RSD_OFFSET (SpiSerialBus.ClockPolarity),
"ClockPolarity", AcpiGbl_CpoDecode},
382 {
ACPI_RSD_UINT16, ACPI_RSD_OFFSET (SpiSerialBus.DeviceSelection),
"DeviceSelection",
NULL},
383 {
ACPI_RSD_UINT32, ACPI_RSD_OFFSET (SpiSerialBus.ConnectionSpeed),
"ConnectionSpeed",
NULL},
388 {
ACPI_RSD_TITLE, ACPI_RSD_TABLE_SIZE (AcpiRsDumpUartSerialBus),
"Uart Serial Bus",
NULL},
389 ACPI_RS_DUMP_COMMON_SERIAL_BUS
390 {
ACPI_RSD_2BITFLAG, ACPI_RSD_OFFSET (UartSerialBus.FlowControl),
"FlowControl", AcpiGbl_FcDecode},
391 {
ACPI_RSD_2BITFLAG, ACPI_RSD_OFFSET (UartSerialBus.StopBits),
"StopBits", AcpiGbl_SbDecode},
392 {
ACPI_RSD_3BITFLAG, ACPI_RSD_OFFSET (UartSerialBus.DataBits),
"DataBits", AcpiGbl_BpbDecode},
393 {
ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET (UartSerialBus.Endian),
"Endian", AcpiGbl_EdDecode},
394 {
ACPI_RSD_UINT8, ACPI_RSD_OFFSET (UartSerialBus.Parity),
"Parity", AcpiGbl_PtDecode},
398 {
ACPI_RSD_UINT32, ACPI_RSD_OFFSET (UartSerialBus.DefaultBaudRate),
"ConnectionSpeed",
NULL},
415 {
ACPI_RSD_LITERAL, ACPI_RSD_TABLE_SIZE (AcpiRsDumpMemoryFlags),
"Resource Type", (
void *)
"Memory Range"},
424 {
ACPI_RSD_LITERAL, ACPI_RSD_TABLE_SIZE (AcpiRsDumpIoFlags),
"Resource Type", (
void *)
"I/O Range"},
#define ACPI_MODULE_NAME(Name)
IN PDCB IN VBO IN ULONG IN BOOLEAN Pin
_In_ UINT _In_ UINT _In_ PNDIS_PACKET Source