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.
|
* re-evaluate their _PPC and _CST tables.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
// Mainboard specific throttle handler
|
||||||
|
External (\_TZ.THRT, MethodObj)
|
||||||
|
|
||||||
Device (EC0)
|
Device (EC0)
|
||||||
{
|
{
|
||||||
Name (_HID, EISAID ("PNP0C09"))
|
Name (_HID, EISAID ("PNP0C09"))
|
||||||
|
@ -226,6 +229,24 @@ Device (EC0)
|
||||||
Store ("EC: KEY PRESSED", Debug)
|
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 "ac.asl"
|
||||||
#include "battery.asl"
|
#include "battery.asl"
|
||||||
}
|
}
|
||||||
|
|
|
@ -239,6 +239,11 @@ enum host_event_code {
|
||||||
/* Shutdown due to battery level too low */
|
/* Shutdown due to battery level too low */
|
||||||
EC_HOST_EVENT_BATTERY_SHUTDOWN = 17,
|
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
|
* 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
|
* it reads back as set, then the entire event mask should be
|
||||||
|
|
Loading…
Reference in New Issue