[U-Boot] x86: ACPI support suggestion

Gabriel Huau contact at huau-gabriel.fr
Wed Feb 4 20:22:30 CET 2015

Hi All,

I'm currently thinking on how to integrate the ACPI support in u-boot 
x86. I've investigated the coreboot implementation. My first thought was 
to port all the source code over but looking at the source code in more 
details it doesn't look like an easy option. For example, it involves 
reading a lot of values over PCI to dynamically fill the tables, and 
integration a lot of SoC specific headers (IRQ definition, GPIO, ...).

Therefore, as a first implementation I was thinking about the following:
     - booting a board with the Intel UEFI + Linux
     - extracting all the ACPI tables (/sys/firmware/acpi/ or acpixtract)
     - disassembling the binaries tables via iasl to allow people to 
modify them
     - integrating these files into u-boot in board specific folder (for 
example: board/intel/minnowmax/acpi/*)
     - generating one blob per table using iasl during build time which 
requires iasl tool to be installed if we have the CONFIG_ACPI
     - writing at the RSDP location all the ACPI tables previously exported

With this flow, the integration would be quite simple. Also this allows 
the tables to be modified easily when there is a new release or to add 
some new devices to the DSDT.

What are your thoughts about that?

Feel free to provide some feedback on this implementation.


More information about the U-Boot mailing list