intel/eagleheights: Fix IASL warnings

The eagleheights platform had 3 warnings:

The SIO device needs an _ADR object to specify the address in addition
to the operating region.

Not all the paths through the _OSC method returned a value.  According
to the ACPI spec (5.0 & 6.0), bit 2 needs to be set for an unrecognized
GUID.

dsdt.aml    341:   Device(SIO) {
Warning  3141 -            ^ Missing dependency
(Device object requires a _HID or _ADR in same scope)
dsdt.aml  140: Method (_OSC, 4)
Warning  3115 -          ^ Not all control paths return a value (_OSC)
dsdt.aml  140: Method (_OSC, 4)
Warning  3107 -          ^ Reserved method must return a value
(Buffer required for _OSC)

- Remove Kconfig default disabling IASL warnings as errors.

Change-Id: Iab52f19b96468e142b06430d99ba1d9f367d126e
Signed-off-by: Martin Roth <martinroth@google.com>
Reviewed-on: https://review.coreboot.org/12522
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
Martin Roth 2015-11-23 16:27:53 -07:00
parent c24f3d615a
commit c4fa3fdd3e
2 changed files with 9 additions and 5 deletions

View File

@ -35,8 +35,4 @@ config MAX_CPUS
int int
default 4 default 4
# TODO: Remove this when platform ASL is fixed
config IASL_WARNINGS_ARE_ERRORS
def_bool n
endif # BOARD_INTEL_EAGLEHEIGHTS endif # BOARD_INTEL_EAGLEHEIGHTS

View File

@ -173,12 +173,19 @@ DefinitionBlock ("DSDT", "DSDT", 1, "EAGLE", "COREBOOT", 0x0000001)
Method (_OSC, 4) Method (_OSC, 4)
{ {
/* Check for proper GUID */ /* Check for PCI/PCI-X/PCIe GUID */
If (LEqual (Arg0, ToUUID("33DB4D5B-1FF7-401C-9657-7441C03DD766"))) If (LEqual (Arg0, ToUUID("33DB4D5B-1FF7-401C-9657-7441C03DD766")))
{ {
/* Let OS control everything */ /* Let OS control everything */
Return (Arg3) Return (Arg3)
} }
Else
{
/* Unrecognized UUID, so set bit 2 of Arg3 to 1 */
CreateDWordField (Arg3, 0, CDW1)
Or (CDW1, 4, CDW1)
Return (Arg3)
}
} /* End _OSC */ } /* End _OSC */
Method (_PRT, 0, NotSerialized) Method (_PRT, 0, NotSerialized)
@ -401,6 +408,7 @@ DefinitionBlock ("DSDT", "DSDT", 1, "EAGLE", "COREBOOT", 0x0000001)
/* COM ports of SIO */ /* COM ports of SIO */
Device(SIO) { Device(SIO) {
Name (_ADR, 0x4E)
OperationRegion (PT4E, SystemIO, 0x4E, 0x02) OperationRegion (PT4E, SystemIO, 0x4E, 0x02)
Field (PT4E, ByteAcc, NoLock, Preserve) Field (PT4E, ByteAcc, NoLock, Preserve)
{ {