From 1a3872f7a48492b075ffa105a523cf133f651005 Mon Sep 17 00:00:00 2001 From: Alexandru Gagniuc Date: Tue, 1 Apr 2014 16:02:08 -0500 Subject: [PATCH] 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 Reviewed-on: http://review.coreboot.org/5444 Tested-by: build bot (Jenkins) Reviewed-by: Edward O'Callaghan Reviewed-by: Paul Menzel Reviewed-by: Idwer Vollering --- src/ec/compal/ene932/acpi/ec.asl | 2 +- src/ec/compal/ene932/documentation.txt | 23 +++++++++++++++++++++++ src/mainboard/google/parrot/acpi/ec.asl | 3 +++ 3 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 src/ec/compal/ene932/documentation.txt 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"