summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandru Gagniuc <mr.nuke.me@gmail.com>2014-04-01 16:02:08 -0500
committerAlexandru Gagniuc <mr.nuke.me@gmail.com>2014-04-12 20:26:04 +0200
commit1a3872f7a48492b075ffa105a523cf133f651005 (patch)
tree9358ca9243b13251e9bd8f0e4d998ac8b1bb188d
parent5d41c1a7f9e3c4083856f6ae12605f752c32a249 (diff)
downloadcoreboot-1a3872f7a48492b075ffa105a523cf133f651005.tar.xz
ec/compal/ene932/acpi: Let mainboard define the ACPI lid object
The GP15 ACPI object was used to get the state of the lid. However GP15 is specific to certain Intel chipsets, and will not always be in the ACPI namespace. Instead of hardcoding this object, let the mainboard define it. Also, document the ACPI interface for the EC. Change-Id: I02a2eb3116af61ea5701f84507327aa40218597a Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Reviewed-on: http://review.coreboot.org/5444 Tested-by: build bot (Jenkins) Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Idwer Vollering <vidwer@gmail.com>
-rw-r--r--src/ec/compal/ene932/acpi/ec.asl2
-rw-r--r--src/ec/compal/ene932/documentation.txt23
-rw-r--r--src/mainboard/google/parrot/acpi/ec.asl3
3 files changed, 27 insertions, 1 deletions
diff --git a/src/ec/compal/ene932/acpi/ec.asl b/src/ec/compal/ene932/acpi/ec.asl
index cb50a21dc5..a042d7588d 100644
--- a/src/ec/compal/ene932/acpi/ec.asl
+++ b/src/ec/compal/ene932/acpi/ec.asl
@@ -273,7 +273,7 @@ Device (EC0)
Store (ADPT, \PWRS)
// Initialize LID switch state
- Store (GP15, \LIDS)
+ Store (EC_ACPI_LID_SWITCH_OBJECT, \LIDS)
// Force a read of CPU temperature
Store (CTML, Local0)
diff --git a/src/ec/compal/ene932/documentation.txt b/src/ec/compal/ene932/documentation.txt
new file mode 100644
index 0000000000..eeb801a73f
--- /dev/null
+++ b/src/ec/compal/ene932/documentation.txt
@@ -0,0 +1,23 @@
+
+Accessing the EC space
+======================
+
+The ACPI implementation uses the standard I/O ports 0x62 and 0x66 to access the
+EC functionality. Accesses to these ports must be directed to the LPC bus to
+which the EC is connected.
+
+
+Interfacing with the ASL files
+==============================
+
+The mainboard code must define several variables for the ASL files.
+
+* EC_SCI
+ Defines the General Purpose Event (GPE) corresponding to the EC's SCI line.
+* EC_ACPI_LID_SWITCH_OBJECT
+ Defines the APCI object which reads the state of the lid, with 0 = open, and
+ 1 = closed. This is usually the bit which reads the GPIO input corresponding
+ to the lid switch.
+* PNOT()
+ The mainboard must define a PNOT method to handle power state notifications
+ and Notify CPU device objects to re-evaluate their _PPC and _CST tables.
diff --git a/src/mainboard/google/parrot/acpi/ec.asl b/src/mainboard/google/parrot/acpi/ec.asl
index 522a0b9a98..a0ee9d5343 100644
--- a/src/mainboard/google/parrot/acpi/ec.asl
+++ b/src/mainboard/google/parrot/acpi/ec.asl
@@ -21,5 +21,8 @@
#include "../ec.h"
#define EC_SCI 23 // GPIO7 << 16 to GPE bit for Runtime SCI
+/* GP15 is defined in the southbridge's ASL */
+#define EC_ACPI_LID_SWITCH_OBJECT GP15
+
/* ACPI code for EC functions */
#include "../../../../ec/compal/ene932/acpi/ec.asl"