On Fri, Feb 07, 2014 at 01:51:27PM +0100, Igor Mammedov wrote:
> Since introduction of PCIHP, it became problematic to
> punch hole in PCI0._CRS statically since PCI hotplug
> region size became runtime changeable.

What makes it runtime changeable?

> So replace static hole punching with dynamically consumed
> resources in a child device on PCI0 bus. i.e generate
> PNP0C02 device as a child of PCI0 bus at runtime and
> consume GPE0, PCI/CPU hotplug IO resources in it instead
> of punching holes in static PCI0._CRS.

It seems that we are being too exact with
IO resources here.
Can't we roughly reserve 0xae00 to 0xafff
and be done with it?

> Tested with Windows XPsp3, Vista, Windows Server 2003, 2008, 2012r2.
> 
> PS:
> Series adds several ASL like macros to simplify
> code for dynamic generation of AML structures.
> 
> Igor Mammedov (9):
>   Revert "pc: Q35 DSDT: exclude CPU hotplug IO range from PCI bus
>     resources"
>   Revert "pc: PIIX DSDT: exclude CPU/PCI hotplug & GPE0 IO range from
>     PCI bus resources"
>   Partial revert "pc: ACPI: expose PRST IO range via _CRS"
>   acpi: replace opencoded opcodes with defines
>   acpi: add PNP0C02 to PCI0 bus
>   acpi: consume GPE0 IO resources in PNP0C02 device
>   acpi: consume CPU hotplug IO resource in PNP0C02 device
>   pcihp: expose PCI hotplug MMIO base/length as properties of piix4pm
>   acpi: consume PCIHP IO resource in PNP0C02 device
> 
>  hw/acpi/pcihp.c                   |   28 ++++++
>  hw/acpi/piix4.c                   |    1 +
>  hw/i386/acpi-build.c              |  177 ++++++++++++++++++++++++++++++++++--
>  hw/i386/acpi-dsdt-cpu-hotplug.dsl |   11 ---
>  hw/i386/acpi-dsdt-pci-crs.dsl     |   15 +++-
>  hw/i386/acpi-dsdt.dsl             |   39 --------
>  hw/i386/q35-acpi-dsdt.dsl         |   16 ----
>  include/hw/acpi/pcihp.h           |    4 +
>  8 files changed, 214 insertions(+), 77 deletions(-)

Reply via email to