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>
This commit is contained in:
Alexandru Gagniuc 2014-04-01 16:02:08 -05:00
parent 5d41c1a7f9
commit 1a3872f7a4
3 changed files with 27 additions and 1 deletions

View File

@ -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)

View File

@ -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.

View File

@ -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"