Files
xen/tools/libacpi
Igor Druzhinin 6761965243 libacpi: report PCI slots as enabled only for hotpluggable devices
DSDT for qemu-xen lacks _STA method of PCI slot object. If _STA method
doesn't exist then the slot is assumed to be always present and active
which in conjunction with _EJ0 method makes every device ejectable for
an OS even if it's not the case.

qemu-kvm is able to dynamically add _EJ0 method only to those slots
that either have hotpluggable devices or free for PCI passthrough.
As Xen lacks this capability we cannot use their way.

qemu-xen-traditional DSDT has _STA method which only reports that
the slot is present if there is a PCI devices hotplugged there.
This is done through querying of its PCI hotplug controller.
qemu-xen has similar capability that reports if device is "hotpluggable
or absent" which we can use to achieve the same result.

Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
2019-05-24 10:30:21 +02:00
..
2018-05-09 18:17:51 +01:00
2016-09-28 14:32:05 +01:00

ACPI builder for domain firmware


BUILDING ACPI
-----------------
Users of ACPI builder are expected to provide an include file that makes available
the following:
* strncpy
* printf
* NULL
* test_bit
* offsetof

When compiling build.c, the name of this include file should be given to
compiler as -DLIBACPI_STDUTILS=\"<filename>\". See tools/firmware/hvmloader/Makefile
for an example.

Note on DSDT Table
------------------
DSDT table source code is acpi_dsdt.asl
It is already compiled and the output is acpi_dsdt.c
Usually, user is not expected to change the acpi_dsdt.asl.
In case that the acpi_dsdt.asl need to be updated, please 
Follow the instruction:

# make acpi_dsdt.c

Note:
DSDT compiler "iasl" is needed. By default, it will be downloaded 
using wget in Makefile. if it failed, please download manually from 
http://developer.intel.com/technology/iapc/acpi/downloads.htm. 
then compile and install iasl