[U-Boot] [U-BOOT PATCH v3 0/4] x86: This series adds ACPI support for qemu targets.

Saket Sinha saket.sinha89 at gmail.com
Thu Aug 13 05:00:59 CEST 2015


ACPI(Advanced Configuration and Power Interface), a Power Management and configuration standard allowing the operating system to control    the amount of power each device is given (allowing it to put certain devices on standby or power-off for example). It is also used to control and/or check thermal zones (temperature sensors, fan speeds, etc), battery levels, PCI IRQ routing, CPUs, NUMA domains and many other things.

To begin using ACPI, the operating system must look for the RSDP (Root System Description Pointer). If the RSDP is found, the verification  is valid, it contains a pointer to the RSDT (Root System Description Table) and XSDT (extended System Description Table). For the run time part of ACPI the main table to detect is the FADT (Fixed ACPI Description Table) as this contains information needed to enable ACPI. The DSDT table  contains a bytecode that is executed by a driver in the kernel.

Changes from v2:
- Fixes issues with using MMCONFIG for q35.
- Fixes various entries in ACPI tables that OS was not able to parse.

Changes from v1:
- Dynamic generation of AML code for DSDT table.
-Reading PCI registers for FADT table.
-Incorporated review comments.


Saket Sinha (4):
  x86: Added ACPI support as a configuration option.
  x86: Added support for ACPI table generation at the generic layer.
  x86: Added ACPI support for Qemu.
  x86: Added dsdt tables for Qemu ACPI implementation.

 arch/x86/Kconfig                       |   6 +
 arch/x86/cpu/qemu/Makefile             |   3 +-
 arch/x86/cpu/qemu/acpi.c               | 157 ++++++++++++
 arch/x86/cpu/qemu/acpi/cpu-hotplug.asl |  78 ++++++
 arch/x86/cpu/qemu/acpi/dbug.asl        |  26 ++
 arch/x86/cpu/qemu/acpi/hpet.asl        |  36 +++
 arch/x86/cpu/qemu/acpi/isa.asl         | 102 ++++++++
 arch/x86/cpu/qemu/acpi/pci-crs.asl     |  94 +++++++
 arch/x86/cpu/qemu/dsdt.asl             | 440 +++++++++++++++++++++++++++++++++
 arch/x86/include/asm/acpi_table.h      | 387 +++++++++++++++++++++++++++++
 arch/x86/lib/Makefile                  |   1 +
 arch/x86/lib/acpi_table.c              | 413 +++++++++++++++++++++++++++++++
 arch/x86/lib/tables.c                  |   5 +
 scripts/Makefile.lib                   |  11 +
 14 files changed, 1758 insertions(+), 1 deletion(-)
 create mode 100644 arch/x86/cpu/qemu/acpi.c
 create mode 100644 arch/x86/cpu/qemu/acpi/cpu-hotplug.asl
 create mode 100644 arch/x86/cpu/qemu/acpi/dbug.asl
 create mode 100644 arch/x86/cpu/qemu/acpi/hpet.asl
 create mode 100644 arch/x86/cpu/qemu/acpi/isa.asl
 create mode 100644 arch/x86/cpu/qemu/acpi/pci-crs.asl
 create mode 100644 arch/x86/cpu/qemu/dsdt.asl
 create mode 100644 arch/x86/include/asm/acpi_table.h
 create mode 100644 arch/x86/lib/acpi_table.c

-- 
2.1.4



More information about the U-Boot mailing list