
Remove ACPI from the TODO list and add a new section to document current ACPI support in U-Boot.
Signed-off-by: Bin Meng bmeng.cn@gmail.com
---
doc/README.x86 | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-)
diff --git a/doc/README.x86 b/doc/README.x86 index a5dfb86..d74e6e4 100644 --- a/doc/README.x86 +++ b/doc/README.x86 @@ -957,12 +957,44 @@ transformations. Remember to add attribution to coreboot for new files added to U-Boot. This should go at the top of each file and list the coreboot filename where the code originated.
+ACPI Support Status +------------------- +Advanced Configuration and Power Interface (ACPI) [16] aims to establish +industry-standard interfaces enabling OS-directed configuration, power +management, and thermal management of mobile, desktop, and server platforms. + +Linux can boot without ACPI with "acpi=off" command line parameter, but +with ACPI the kernel gains the capabilities to handle power management. +For Windows, ACPI is a must-have firmware feature since Windows Vista. +CONFIG_GENERATE_ACPI_TABLE is the config option to turn on ACPI support in +U-Boot. This requires Intel ACPI compiler to be installed on your host to +compile ACPI DSDT table written in ASL format to AML format. You can get +the compiler via "apt-get install iasl" if you are on Ubuntu or download +the source from [17] to compile one by yourself. + +Current ACPI support in U-Boot is not complete. More features will be added +in the future. The status as of today is: + + * Support generating RSDT, XSDT, FACS, FADT, MADT, MCFG tables. + * Support one static DSDT table only, compiled by Intel ACPI compiler. + * Support S0/S5 only, no S3/S4 boot path support yet. + * No ACPI global NVS support (this can be optional, but we may need it in + the future to simplify ASL code logic when utilizing NVS variables). + * No dynamic AML bytecodes insertion at run-time (this is optional as we + can always describe the board in the static way). + * All ACPI interrupts are routed to SCI for OS to handle. No legacy SMI + implementation within U-Boot. + * Install Ubuntu from U-Boot plus SeaBIOS does not work. + * Install Windows 8.1/10 from U-Boot plus SeaBIOS does not work. + +So far ACPI is enabled on BayTrail based boards. Testing was done by booting +a pre-installed Ubuntu 14.04 from a SATA drive. Most devices seem to work +correctly and the board can respond a reboot/shutdown command from Ubuntu.
TODO List --------- - Audio - Chrome OS verified boot -- SMI and ACPI support, to provide platform info and facilities to Linux
References ---------- @@ -981,3 +1013,5 @@ References [13] http://events.linuxfoundation.org/sites/events/files/slides/elce-2014.pdf [14] http://www.seabios.org/SeaBIOS [15] doc/device-tree-bindings/misc/intel,irq-router.txt +[16] http://www.acpi.info +[17] https://www.acpica.org/downloads