@@ -49,6 +49,13 @@ Scope(\_SB) {
MIF, 8
}
+ /* Memory _PS3 byte */
+ OperationRegion(MPSB, SystemIO, 0xafa4, 1)
+ Field (MPSB, ByteAcc, NoLock, Preserve)
+ {
+ MPS, 8
+ }
+
Method(MESC, 0) {
// Local5 = active memdevice bitmap
Store (MES, Local5)
@@ -90,6 +97,14 @@ Scope(\_SB) {
Sleep(200)
}
+
+ Method (MPS3, 1, NotSerialized) {
+ // _PS3 method - power-off method
+ Store(Arg0, MPS)
+ Store(Zero, Index(MEON, Arg0))
+ Sleep(200)
+ }
+
Method (MOST, 3, Serialized) {
// _OST method - OS status indication
Switch (And(Arg0, 0xFF)) {
@@ -39,6 +39,7 @@ DefinitionBlock ("ssdt-mem.aml", "SSDT", 0x02, "BXPC", "CSSDT", 0x1)
External(CMST, MethodObj)
External(MPEJ, MethodObj)
External(MOST, MethodObj)
+ External(MPS3, MethodObj)
Name(_CRS, ResourceTemplate() {
QwordMemory(
@@ -64,6 +65,9 @@ DefinitionBlock ("ssdt-mem.aml", "SSDT", 0x02, "BXPC", "CSSDT", 0x1)
Method (_OST, 3) {
MOST(Arg0, Arg1, ID)
}
+ Method (_PS3, 0) {
+ MPS3(ID)
+ }
}
}