ec/google/chromeec: provide optional ASL lid switch implementation
Instead of relying on the mainboards to provide their own LID0 ACPI device, provide the infrastructure so that the mainboards can signal to the EC ASL code to provide the default lid switch implementation. BUG=chrome-os-partner:56677 Change-Id: Ie43b1c4f8522db1245f1f479bfdb685d3066121d Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: https://review.coreboot.org/16732 Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-by: Furquan Shaikh <furquan@google.com> Tested-by: build bot (Jenkins)
This commit is contained in:
@@ -68,6 +68,22 @@ Device (EC0)
|
|||||||
#include "emem.asl"
|
#include "emem.asl"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef EC_ENABLE_LID_SWITCH
|
||||||
|
/* LID Switch */
|
||||||
|
Device (LID0)
|
||||||
|
{
|
||||||
|
Name (_HID, EisaId ("PNP0C0D"))
|
||||||
|
Method (_LID, 0)
|
||||||
|
{
|
||||||
|
Return (^^LIDS)
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef EC_ENABLE_WAKE_PIN
|
||||||
|
Name (_PRW, Package () { EC_ENABLE_WAKE_PIN, 0x5 })
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
Method (TINS, 1, Serialized)
|
Method (TINS, 1, Serialized)
|
||||||
{
|
{
|
||||||
Switch (ToInteger (Arg0))
|
Switch (ToInteger (Arg0))
|
||||||
@@ -150,7 +166,11 @@ Device (EC0)
|
|||||||
{
|
{
|
||||||
Store ("EC: LID CLOSE", Debug)
|
Store ("EC: LID CLOSE", Debug)
|
||||||
Store (LIDS, \LIDS)
|
Store (LIDS, \LIDS)
|
||||||
|
#ifdef EC_ENABLE_LID_SWITCH
|
||||||
|
Notify (LID0, 0x80)
|
||||||
|
#else
|
||||||
Notify (\_SB.LID0, 0x80)
|
Notify (\_SB.LID0, 0x80)
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
// Lid Open Event
|
// Lid Open Event
|
||||||
@@ -158,7 +178,11 @@ Device (EC0)
|
|||||||
{
|
{
|
||||||
Store ("EC: LID OPEN", Debug)
|
Store ("EC: LID OPEN", Debug)
|
||||||
Store (LIDS, \LIDS)
|
Store (LIDS, \LIDS)
|
||||||
|
#ifdef EC_ENABLE_LID_SWITCH
|
||||||
|
Notify (LID0, 0x80)
|
||||||
|
#else
|
||||||
Notify (\_SB.LID0, 0x80)
|
Notify (\_SB.LID0, 0x80)
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
// Power Button
|
// Power Button
|
||||||
|
Reference in New Issue
Block a user