Patch Set 2:

I run into an issue trying to verify this patch.  
To verify, I
1) cherry-pick, flash and boot volteer
2) cat /sys/firmware/acpi/tables/DDST > /tmp/ssdt.dml"
3) scp DUT:/tmp/ssdt.dml back to my host linux box
4) iasl -d ./ssdt.dml > ./ssdt.txt
The contents of "./ssdt.txt" is the three lines : 
Intel ACPI Component Architecture
ASL+ Optimizing Compiler/Disassembler version 20180810
Copyright (c) 2000 - 2018 Intel Corporation


The following is the stderr output of the "iasl -d ./ssdt.dml > ssdt.txt" :

Found 2 external control methods, reparsing with new information
Pass 1 parse of [SSDT]
Pass 2 parse of [SSDT]
Parsing Deferred Opcodes (Methods/Buffers/Packages/Regions)

Parsing completed
Disassembly completed
ASL Output: ./SSDT.dsl - 47137 bytes

 iASL Warning: There were 2 external control methods found during
disassembly, but only 0 were resolved (2 unresolved). Additional
ACPI tables may be required to properly disassemble the code. This
resulting disassembler output file may not compile because the
disassembler did not know how many arguments to assign to the
unresolved methods. Note: SSDTs can be dynamically loaded at
runtime and may or may not be available via the host OS.
 To specify the tables needed to resolve external control method
references, the -e option can be used to specify the filenames.
Example iASL invocations:
iasl -e ssdt1.aml ssdt2.aml ssdt3.aml -d dsdt.aml
iasl -e dsdt.aml ssdt2.aml -d ssdt1.aml
iasl -e ssdt*.aml -d dsdt.aml
 In addition, the -fe option can be used to specify a file containing
control method external declarations with the associated method
argument counts. Each line of the file must be of the form:
External (<method pathname>, MethodObj, <argument count>)
Invocation:
iasl -fe refs.txt -d dsdt.aml

Can you add the output from the resulting .dsl file (the top part with the External declarations)

There are some dependencies that iasl can't resolve without the DSDT because the SSDT code generation is not explicitly adding External() references to method objects used.

If you use both the DSDT and SSDT it should be able to resolve these types of references:

iasl -d /tmp/DSDT /tmp/SSDT

View Change

To view, visit change 42045. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Ie65c2d750f3d9f83285e0e4cc9642110c804bbad
Gerrit-Change-Number: 42045
Gerrit-PatchSet: 2
Gerrit-Owner: Tim Wawrzynczak <twawrzynczak@chromium.org>
Gerrit-Reviewer: Caveh Jalali <caveh@chromium.org>
Gerrit-Reviewer: Duncan Laurie <dlaurie@chromium.org>
Gerrit-Reviewer: Furquan Shaikh <furquan@google.com>
Gerrit-Reviewer: Nick Vaccaro <nvaccaro@google.com>
Gerrit-Reviewer: build bot (Jenkins) <no-reply@coreboot.org>
Gerrit-CC: Prashant Malani <pmalani@google.com>
Gerrit-Comment-Date: Fri, 05 Jun 2020 20:09:34 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: No
Gerrit-MessageType: comment