ec/google: Notify DPTF driver power participant on PD event
The DPTF power participant device needs to be notified when power source changes so it can re-evaluate power source and power source change count, this can be later used by DPTF along with methods provided by EC. Corresponding changes in EC are https://crrev.com/c/3545778 and https://crrev.com/c/3547317 BUG=b:205928013 TEST=Build, boot brya0 and dump DSDT to check change Signed-off-by: Varshit B Pandya <varshit.b.pandya@intel.com> Change-Id: I07f58b928a0dba92bec3817177142c586e5014b9 Reviewed-on: https://review.coreboot.org/c/coreboot/+/62946 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Reviewed-by: Sumeet R Pawnikar <sumeet.r.pawnikar@intel.com>
This commit is contained in:
parent
61b90b173d
commit
a872b9a3bb
|
@ -6,6 +6,9 @@
|
||||||
* re-evaluate their _PPC and _CST tables.
|
* re-evaluate their _PPC and _CST tables.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
// DTT Power Participant Device Notification
|
||||||
|
#define POWER_STATE_CHANGE_NOTIFICATION 0x81
|
||||||
|
|
||||||
// Mainboard specific throttle handler
|
// Mainboard specific throttle handler
|
||||||
#ifdef DPTF_ENABLE_CHARGER
|
#ifdef DPTF_ENABLE_CHARGER
|
||||||
External (\_SB.DPTF.TCHG, DeviceObj)
|
External (\_SB.DPTF.TCHG, DeviceObj)
|
||||||
|
@ -15,6 +18,8 @@ External (\_SB.DPTF.TCHG, DeviceObj)
|
||||||
External(\_SB.DPTC, MethodObj)
|
External(\_SB.DPTC, MethodObj)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
External (\_SB.DPTF.TPWR, DeviceObj)
|
||||||
|
|
||||||
Device (EC0)
|
Device (EC0)
|
||||||
{
|
{
|
||||||
Name (_HID, EISAID ("PNP0C09"))
|
Name (_HID, EISAID ("PNP0C09"))
|
||||||
|
@ -82,6 +87,7 @@ Device (EC0)
|
||||||
BTID, 8, // Battery index that host wants to read
|
BTID, 8, // Battery index that host wants to read
|
||||||
USPP, 8, // USB Port Power
|
USPP, 8, // USB Port Power
|
||||||
RFWU, 8, // Retimer Firmware Update
|
RFWU, 8, // Retimer Firmware Update
|
||||||
|
PBOK, 8, // Power source change count from dptf
|
||||||
}
|
}
|
||||||
|
|
||||||
#if CONFIG(EC_GOOGLE_CHROMEEC_ACPI_MEMMAP)
|
#if CONFIG(EC_GOOGLE_CHROMEEC_ACPI_MEMMAP)
|
||||||
|
@ -345,6 +351,9 @@ Device (EC0)
|
||||||
{
|
{
|
||||||
Printf ("EC: GOT PD EVENT")
|
Printf ("EC: GOT PD EVENT")
|
||||||
Notify (\_SB.PCI0.LPCB.EC0.CREC.ECPD, 0x80)
|
Notify (\_SB.PCI0.LPCB.EC0.CREC.ECPD, 0x80)
|
||||||
|
If (CondRefOf (\_SB.DPTF.TPWR)) {
|
||||||
|
Notify (\_SB.DPTF.TPWR, POWER_STATE_CHANGE_NOTIFICATION)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -51,3 +51,5 @@ Offset (0x80),
|
||||||
ALS0, 16, // ALS reading 0 in lux
|
ALS0, 16, // ALS reading 0 in lux
|
||||||
Offset (0xa6),
|
Offset (0xa6),
|
||||||
GPUD, 8, // GPU Data
|
GPUD, 8, // GPU Data
|
||||||
|
Offset (0xa7),
|
||||||
|
PWRT, 8, // Power source and change count
|
||||||
|
|
Loading…
Reference in New Issue