diff options
Diffstat (limited to 'src/acpi')
-rw-r--r-- | src/acpi/dsdt_top.asl | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/src/acpi/dsdt_top.asl b/src/acpi/dsdt_top.asl index 6a0129fd7b..7539f00e57 100644 --- a/src/acpi/dsdt_top.asl +++ b/src/acpi/dsdt_top.asl @@ -57,11 +57,27 @@ Scope(\_SB) { Device (PERC) // PCI ECAM Resource Consumption { Name (_HID, EisaId("PNP0C02")) - Name (_CRS, ResourceTemplate() + Method (_CRS, 0, Serialized) { - Memory32Fixed (ReadWrite, CONFIG_ECAM_MMCONF_BASE_ADDRESS, - CONFIG_ECAM_MMCONF_LENGTH) - }) + Name (RBUF, ResourceTemplate () + { + QWordMemory (ResourceConsumer, PosDecode, MinFixed, MaxFixed, + NonCacheable, ReadWrite, + 0x0000000000000000, // Granularity + 0x0000000000000000, // _MIN + 0x0000000000000001, // _MAX + 0x0000000000000000, // Translation + 0x0000000000000002, // _Len + ,, _Y00, AddressRangeMemory, TypeStatic) + }) + CreateQWordField (RBUF, \_SB.PERC._CRS._Y00._MIN, MIN1) + CreateQWordField (RBUF, \_SB.PERC._CRS._Y00._MAX, MAX1) + CreateQWordField (RBUF, \_SB.PERC._CRS._Y00._LEN, LEN1) + MIN1 = CONFIG_ECAM_MMCONF_BASE_ADDRESS + MAX1 = (MIN1 + CONFIG_ECAM_MMCONF_LENGTH -1) + LEN1 = CONFIG_ECAM_MMCONF_LENGTH + Return (RBUF) + } } } #endif |