1/* SPDX-License-Identifier: GPL-2.0-only */ 2 3/* Wake status package */ 4Name(WKST,Package(){0, 0}) 5 6/* 7* \_PTS - Prepare to Sleep method 8* 9* Entry: 10* Arg0=The value of the sleeping state S1=1, S2=2, etc 11* 12* Exit: 13* -none- 14* 15* The _PTS control method is executed at the beginning of the sleep process 16* for S1-S5. The sleeping value is passed to the _PTS control method. This 17* control method may be executed a relatively long time before entering the 18* sleep state and the OS may abort the operation without notification to 19* the ACPI driver. This method cannot modify the configuration or power 20* state of any device in the system. 21*/ 22 23External(\_SB.APTS, MethodObj) 24External(\_SB.AWAK, MethodObj) 25 26Method(_PTS, 1) { 27 /* DBGO("\\_PTS\n") */ 28 /* DBGO("From S0 to S") */ 29 /* DBGO(Arg0) */ 30 /* DBGO("\n") */ 31 32 /* Clear wake status structure. */ 33 WKST [0] = 0 34 WKST [1] = 0 35 UPWS = 7 36 \_SB.APTS(Arg0) 37} /* End Method(\_PTS) */ 38 39/* 40* \_WAK System Wake method 41* 42* Entry: 43* Arg0=The value of the sleeping state S1=1, S2=2 44* 45* Exit: 46* Return package of 2 DWords 47* Dword 1 - Status 48* 0x00000000 wake succeeded 49* 0x00000001 Wake was signaled but failed due to lack of power 50* 0x00000002 Wake was signaled but failed due to thermal condition 51* Dword 2 - Power Supply state 52* if non-zero the effective S-state the power supply entered 53*/ 54Method(\_WAK, 1) { 55 /* DBGO("\\_WAK\n") */ 56 /* DBGO("From S") */ 57 /* DBGO(Arg0) */ 58 /* DBGO(" to S0\n") */ 59 60 /* clear USB wake up signal */ 61 USBS = 1 62 63 \_SB.AWAK(Arg0) 64 65 Return(WKST) 66} /* End Method(\_WAK) */ 67