chromeec: Add event methods for EC requested throttle
Two new events possible from the EC for starting and stopping throttle. These are handled in a per-board method that is defined under the thermal zone. This is not quite where I wanted it but the scoping rules in ACPI don't let me have a defined external object in the same scope. Change-Id: I766f07b4365b29df3daa8e45e88f7c38c645c287 Signed-off-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/63988 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: http://review.coreboot.org/4415 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
This commit is contained in:
parent
7ad61f6262
commit
d338b46504
|
@ -23,6 +23,9 @@
|
|||
* re-evaluate their _PPC and _CST tables.
|
||||
*/
|
||||
|
||||
// Mainboard specific throttle handler
|
||||
External (\_TZ.THRT, MethodObj)
|
||||
|
||||
Device (EC0)
|
||||
{
|
||||
Name (_HID, EISAID ("PNP0C09"))
|
||||
|
@ -226,6 +229,24 @@ Device (EC0)
|
|||
Store ("EC: KEY PRESSED", Debug)
|
||||
}
|
||||
|
||||
// Throttle Start
|
||||
Method (_Q12, 0, NotSerialized)
|
||||
{
|
||||
Store ("EC: THROTTLE START", Debug)
|
||||
If (CondRefOf (\_TZ.THRT, Local0)) {
|
||||
\_TZ.THRT (1)
|
||||
}
|
||||
}
|
||||
|
||||
// Throttle Stop
|
||||
Method (_Q13, 0, NotSerialized)
|
||||
{
|
||||
Store ("EC: THROTTLE STOP", Debug)
|
||||
If (CondRefOf (\_TZ.THRT, Local0)) {
|
||||
\_TZ.THRT (0)
|
||||
}
|
||||
}
|
||||
|
||||
#include "ac.asl"
|
||||
#include "battery.asl"
|
||||
}
|
||||
|
|
|
@ -239,6 +239,11 @@ enum host_event_code {
|
|||
/* Shutdown due to battery level too low */
|
||||
EC_HOST_EVENT_BATTERY_SHUTDOWN = 17,
|
||||
|
||||
/* Suggest that the AP throttle itself */
|
||||
EC_HOST_EVENT_THROTTLE_START = 18,
|
||||
/* Suggest that the AP resume normal speed */
|
||||
EC_HOST_EVENT_THROTTLE_STOP = 19,
|
||||
|
||||
/*
|
||||
* The high bit of the event mask is not used as a host event code. If
|
||||
* it reads back as set, then the entire event mask should be
|
||||
|
|
Loading…
Reference in New Issue