summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Roth <martinroth@google.com>2015-11-23 16:27:53 -0700
committerMartin Roth <martinroth@google.com>2015-12-06 18:35:48 +0100
commitc4fa3fdd3ea3f8e05cbbc881d45d1fb1927b525d (patch)
tree590ea125973009867f6c0b08435d8b2f0caddc45
parentc24f3d615a2a8ed7e251f6ac88d305c8345d3ea3 (diff)
downloadcoreboot-c4fa3fdd3ea3f8e05cbbc881d45d1fb1927b525d.tar.xz
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>
-rw-r--r--src/mainboard/intel/eagleheights/Kconfig4
-rw-r--r--src/mainboard/intel/eagleheights/dsdt.asl10
2 files changed, 9 insertions, 5 deletions
diff --git a/src/mainboard/intel/eagleheights/Kconfig b/src/mainboard/intel/eagleheights/Kconfig
index bfcb4cef5f..702e2aff5a 100644
--- a/src/mainboard/intel/eagleheights/Kconfig
+++ b/src/mainboard/intel/eagleheights/Kconfig
@@ -35,8 +35,4 @@ config MAX_CPUS
int
default 4
-# TODO: Remove this when platform ASL is fixed
-config IASL_WARNINGS_ARE_ERRORS
- def_bool n
-
endif # BOARD_INTEL_EAGLEHEIGHTS
diff --git a/src/mainboard/intel/eagleheights/dsdt.asl b/src/mainboard/intel/eagleheights/dsdt.asl
index 6ad320ba03..4c98e54637 100644
--- a/src/mainboard/intel/eagleheights/dsdt.asl
+++ b/src/mainboard/intel/eagleheights/dsdt.asl
@@ -173,12 +173,19 @@ DefinitionBlock ("DSDT", "DSDT", 1, "EAGLE", "COREBOOT", 0x0000001)
Method (_OSC, 4)
{
- /* Check for proper GUID */
+ /* Check for PCI/PCI-X/PCIe GUID */
If (LEqual (Arg0, ToUUID("33DB4D5B-1FF7-401C-9657-7441C03DD766")))
{
/* Let OS control everything */
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 */
Method (_PRT, 0, NotSerialized)
@@ -401,6 +408,7 @@ DefinitionBlock ("DSDT", "DSDT", 1, "EAGLE", "COREBOOT", 0x0000001)
/* COM ports of SIO */
Device(SIO) {
+ Name (_ADR, 0x4E)
OperationRegion (PT4E, SystemIO, 0x4E, 0x02)
Field (PT4E, ByteAcc, NoLock, Preserve)
{