diff options
author | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2021-02-13 23:29:14 +0200 |
---|---|---|
committer | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2021-02-20 21:41:06 +0000 |
commit | bb6bf5a1d8ffe157b17a5b7f5b85eb04aeaafe68 (patch) | |
tree | 0d906e0f42a22862475cde37f17e8e731070a28d /src/mainboard/lippert/frontrunner-af/acpi/sleep.asl | |
parent | 1943b27ea35d2196e819bcf662ea9644d03a1753 (diff) |
mb/lippert/frontrunner-af: Split sections from dsdt.asl
Added file acpi/sleep.asl is really a copy from persimmon with debug
statement and some comments removed.
Added file acpi/gpe.asl is slightly modified copy from persimmon with
changes that seem valid, considering the other changes present in ASL
for the board.
Rename existing usb.asl to usb_oc.asl for consistency.
Change-Id: I493ad1c110380378bad80e49cd888f47fbe41a92
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/50649
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Diffstat (limited to 'src/mainboard/lippert/frontrunner-af/acpi/sleep.asl')
-rw-r--r-- | src/mainboard/lippert/frontrunner-af/acpi/sleep.asl | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/src/mainboard/lippert/frontrunner-af/acpi/sleep.asl b/src/mainboard/lippert/frontrunner-af/acpi/sleep.asl new file mode 100644 index 0000000000..dc6e8a4e32 --- /dev/null +++ b/src/mainboard/lippert/frontrunner-af/acpi/sleep.asl @@ -0,0 +1,64 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + + /* Wake status package */ + Name(WKST,Package(){Zero, Zero}) + + /* + * \_PTS - Prepare to Sleep method + * + * Entry: + * Arg0=The value of the sleeping state S1=1, S2=2, etc + * + * Exit: + * -none- + * + * The _PTS control method is executed at the beginning of the sleep process + * for S1-S5. The sleeping value is passed to the _PTS control method. This + * control method may be executed a relatively long time before entering the + * sleep state and the OS may abort the operation without notification to + * the ACPI driver. This method cannot modify the configuration or power + * state of any device in the system. + */ + Method(\_PTS, 1) { + + /* Don't allow PCIRST# to reset USB */ + if (Arg0 == 3){ + URRE = 0 + } + + /* Clear wake status structure. */ + WKST [0] = 0 + WKST [1] = 0 + } /* End Method(\_PTS) */ + + /* + * \_WAK System Wake method + * + * Entry: + * Arg0=The value of the sleeping state S1=1, S2=2 + * + * Exit: + * Return package of 2 DWords + * Dword 1 - Status + * 0x00000000 wake succeeded + * 0x00000001 Wake was signaled but failed due to lack of power + * 0x00000002 Wake was signaled but failed due to thermal condition + * Dword 2 - Power Supply state + * if non-zero the effective S-state the power supply entered + */ + Method(\_WAK, 1) { + + /* Re-enable HPET */ + HPDE = 1 + + /* Restore PCIRST# so it resets USB */ + if (Arg0 == 3){ + URRE = 1 + } + + /* Arbitrarily clear PciExpWakeStatus */ + Local1 = PWST + PWST = Local1 + + Return(WKST) + } /* End Method(\_WAK) */ |