diff options
author | Sean Rhodes <sean@starlabs.systems> | 2022-03-05 10:43:16 +0000 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2022-03-10 15:07:57 +0000 |
commit | 40455e94781c032906d04cb5326f095e1ecc2de9 (patch) | |
tree | 4038bf31870b3c1e215b695f0e5f81a82c7f84a3 | |
parent | 7b0239d8cad8160109d5eb5ddcfb0833124166a3 (diff) |
ec/starlabs: Write the correct value for KLSE when suspending
The current code will write the raw value from the CMOS, which doesn't
match the respective setting in EC.
Switch argument will write the correct value, and prevent the setting
being reset.
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: I93444cdb96eaf729630b48551d0853511b584634
Reviewed-on: https://review.coreboot.org/c/coreboot/+/62608
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
-rw-r--r-- | src/ec/starlabs/merlin/acpi/suspend.asl | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/ec/starlabs/merlin/acpi/suspend.asl b/src/ec/starlabs/merlin/acpi/suspend.asl index 0f1c27c210..c65ca6d9a5 100644 --- a/src/ec/starlabs/merlin/acpi/suspend.asl +++ b/src/ec/starlabs/merlin/acpi/suspend.asl @@ -98,6 +98,20 @@ Method (RWAK, 1, Serialized) } \_SB.PCI0.LPCB.EC.FLKE = \_SB.PCI0.LPCB.FLKC - \_SB.PCI0.LPCB.EC.KLSE = \_SB.PCI0.LPCB.KLSC + + Switch (ToInteger (\_SB.PCI0.LPCB.KLSC)) + { + // 0x00 == Disabled == 0x00 + // 0x01 == Enabled == 0xdd + Case (0x00) + { + \_SB.PCI0.LPCB.EC.KLSE = 0x00 + } + Case (0x01) + { + \_SB.PCI0.LPCB.EC.KLSE = 0xdd + } + } + \_SB.PCI0.LPCB.EC.KLBE = \_SB.PCI0.LPCB.KLBC } |