I took a look at this, and the error appears to be the result of a change
in IASL 20170531:
"Improved the behavior of the iASL compiler and disassembler to detect
improper use of external declarations"
According to the ACPI 6.2 spec, "The External directive informs the ASL
compiler that the object is declared external to this table.." This reads
to me that if an object is declared External in one table (eg, the DSDT),
then its declaration must be in another table, not in the table in which
contains the External reference. As _SB.DPTF.TEVT is declared in the DSDT
(in SoC .asl code), then the External declaration in the
chromeec/acpi/ec.asl is invalid.
To test this, I removed the External declaration in ec.asl, and the
previously failing boards now build properly with iASL 20170831. I also
retested using the current iASL version (20161222), and the aforementioned
boards still build correctly.
If someone wants to corroborate my analysis, then I'm happy to submit a
patch to correct the issue
On Mon, Oct 2, 2017 at 1:56 AM, Paul Menzel <
Dear coreboot folks,
Am Mittwoch, den 20.09.2017, 08:17 +0200 schrieb Paul Menzel:
I’d like to propose the following goal for the
upcoming coreboot 4.7
All boards have to build with GCC 7.2  and IASL 20170831 .
For the latter, several Intel boards fail to build . It’d be great
if the maintainers looked into it.
Unfortunately, there was no reply yet. Patrick already blocked the
change-set, and commented that it’ll only go in after the coreboot 4.7
release, which is fine. But the boards should still build in my
The boards below are affected by the IASL update.
$ git grep TEVT
src/ec/google/chromeec/acpi/ec.asl:External (\_SB.DPTF.TEVT, MethodObj)
src/ec/google/chromeec/acpi/ec.asl: If (CondRefOf
(TEVT, 1, NotSerialized)
src/soc/intel/baytrail/acpi/dptf/thermal.asl:Method (TEVT, 1,
src/soc/intel/braswell/acpi/dptf/thermal.asl:Method (TEVT, 1,
src/soc/intel/common/acpi/dptf/thermal.asl:Method (TEVT, 1, NotSerialized)
src/soc/intel/skylake/acpi/dptf/thermal.asl:Method (TEVT, 1,
What is the process for this? Are the maintainers of the board that
fail to build subscribed on this mailing list?
coreboot mailing list: coreboot(a)coreboot.org