diff options
author | Sean Rhodes <sean@starlabs.systems> | 2021-12-16 09:18:12 +0000 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2022-02-15 23:44:16 +0000 |
commit | 45f9ca48247085ba1f67e67aef1545bcacb788a2 (patch) | |
tree | 8d34f8cd47bf9c7558cbb9a85d335a071479ef4f /src/ec/starlabs | |
parent | 1dc1a56a5d26892c1eb658425c9697a6d82284aa (diff) |
ec/starlabs/merlin: Apply EC settings when suspending
Currently, the settings from CMOS were written to the
EC, which was pointless.
Now, when suspending, the EC values are stored in CMOS
when suspending and subsequently restored when waking.
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: I998d5509cd5e95736468f88663a1423217cf6ddf
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60165
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Diffstat (limited to 'src/ec/starlabs')
-rw-r--r-- | src/ec/starlabs/merlin/acpi/suspend.asl | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/ec/starlabs/merlin/acpi/suspend.asl b/src/ec/starlabs/merlin/acpi/suspend.asl index c4a92f232d..08ca787113 100644 --- a/src/ec/starlabs/merlin/acpi/suspend.asl +++ b/src/ec/starlabs/merlin/acpi/suspend.asl @@ -6,14 +6,21 @@ Method (RPTS, 1, NotSerialized) If ((Arg0 == 0x04) || (Arg0 == 0x05)) { - /* Store current EC settings */ - \_SB.PCI0.LPCB.EC.TPLE = \_SB.PCI0.LPCB.TPLC - \_SB.PCI0.LPCB.EC.FLKE = \_SB.PCI0.LPCB.FLKC - \_SB.PCI0.LPCB.EC.KLBE = \_SB.PCI0.LPCB.KLBC + /* Store current EC settings in CMOS */ + \_SB.PCI0.LPCB.TPLC = \_SB.PCI0.LPCB.EC.TPLE + \_SB.PCI0.LPCB.FLKC = \_SB.PCI0.LPCB.EC.FLKE + \_SB.PCI0.LPCB.KLSC = \_SB.PCI0.LPCB.EC.KLSE + \_SB.PCI0.LPCB.KLBC = \_SB.PCI0.LPCB.EC.KLBE } } Method (RWAK, 1, Serialized) { \_SB.PCI0.LPCB.EC.OSFG = 0x01 + + /* Restore EC settings from CMOS */ + \_SB.PCI0.LPCB.EC.TPLE = \_SB.PCI0.LPCB.TPLC + \_SB.PCI0.LPCB.EC.FLKE = \_SB.PCI0.LPCB.FLKC + \_SB.PCI0.LPCB.EC.KLSE = \_SB.PCI0.LPCB.KLSC + \_SB.PCI0.LPCB.EC.KLBE = \_SB.PCI0.LPCB.KLBC } |