[SeaBIOS] Compiling SeaBIOS for coreboot has problems with its ACPI code
Michael S. Tsirkin
mst at redhat.com
Sun Jul 29 14:08:30 CEST 2012
Robert, could you please comment on the following?
On Thu, Jul 26, 2012 at 08:14:45PM -0400, Kevin O'Connor wrote:
> On Thu, Jul 26, 2012 at 03:56:50PM +0200, Idwer Vollering wrote:
> > 2012/7/26 Kevin O'Connor <kevin at koconnor.net>:
> > > This is typically due to oddities with the compiler. What version of
> > > compiler and binutils do you have? Can you tar up the "out/"
> > > directory and email it to me?
> >
> > http://ra.openbios.org/~idwer/seabios_out.tar
>
> The SeaBIOS acpi_extract.py build tool is relying on the acpi output
> including the comments from the source acpi file. It looks like the
> latest acpi compiler versions are stripping the comments out.
>
> You'll have to use an older version of the iasl compiler until we can
> update the SeaBIOS build.
>
> -Kevin
So I bisected and first commit that breaks seabios is this:
7fd09d993580e22a096a1b21d2a356d89e702153
(and c078edaa1c090334832d0e4d54c0ad8b46a12378 which is needed to compile it).
commit c078edaa1c090334832d0e4d54c0ad8b46a12378
Author: Robert Moore <Robert.Moore at intel.com>
Date: Thu Mar 15 13:48:53 2012 -0700
iASL: Update makefiles/project_files for the preprocessor.
New files added for the iASL preprocessor.
commit 7fd09d993580e22a096a1b21d2a356d89e702153
Author: Robert Moore <Robert.Moore at intel.com>
Date: Thu Mar 15 13:45:55 2012 -0700
iASL: Add preprocessor infrastructure and initial implementation.
Adds a standard c-like preprocessor to iASL. Most standard directives
are supported. #define() macros not supported yet.
The issue is this: our ASL source includes comments like this:
/* ACPI_EXTRACT_ALL_CODE AmlCode */
DefinitionBlock (
"acpi-dsdt.aml",
"DSDT",
0x01,
"BXPC",
"BXDSDT",
0x1
)
And our build runs iasl with -l flag to produce a mixed listing,
and we expect all of the code to make it through to
the mixed listing, so we used to get:
1....
2..../* ACPI_EXTRACT_ALL_CODE AmlCode */
3....
4....DefinitionBlock (
5.... "acpi-dsdt.aml",
6.... "DSDT",
7.... 0x01,
8.... "BXPC",
9.... "BXDSDT",
10.... 0x1
11.... )
But ever since the above commit we don't: the comments are stripped
and we get
1....
2....
3....
4....DefinitionBlock (
5.... "acpi-dsdt.aml",
6.... "DSDT",
7.... 0x01,
8.... "BXPC",
9.... "BXDSDT",
10.... 0x1
11.... )
The reason we are doing this, is to annotate the resulting AML so we can
pass offsets of specific objects in AML to the BIOS.
I am copying the author of the IASL change. Is this something that can
be fixed in iasl so that listing includes comments once again?
Thanks!
> _______________________________________________
> SeaBIOS mailing list
> SeaBIOS at seabios.org
> http://www.seabios.org/mailman/listinfo/seabios
More information about the SeaBIOS
mailing list