/* * Intel ACPI Component Architecture * AML/ASL+ Disassembler version 20220331 (64-bit version) * Copyright (c) 2000 - 2022 Intel Corporation * * Disassembling to symbolic ASL+ operators * * Disassembly of ssdt22.dat, Thu Sep 1 23:24:17 2022 * * Original Table Header: * Signature "SSDT" * Length 0x00002E8E (11918) * Revision 0x01 * Checksum 0xD3 * OEM ID "LENOVO" * OEM Table ID "CB-01 " * OEM Revision 0x00000001 (1) * Compiler ID "ACPI" * Compiler Version 0x00040000 (262144) */ DefinitionBlock ("", "SSDT", 1, "LENOVO", "CB-01 ", 0x00000001) { External (_SB_.PCI0, DeviceObj) External (_SB_.PCI0.GP17, DeviceObj) External (_SB_.PCI0.GPP0, DeviceObj) External (_SB_.PCI0.GPP0.HDAU._ADR, UnknownObj) External (_SB_.PCI0.GPP0.PEGP, DeviceObj) External (_SB_.PCI0.GPP0.VGA_._ADR, UnknownObj) External (_SB_.PCI0.LPC0.EC0_.ECAV, UnknownObj) External (_SB_.PCI0.LPC0.EC0_.GATY, UnknownObj) External (_SB_.PCI0.LPC0.EC0_.LFCM, UnknownObj) External (_SB_.PCI0.LPC0.EC0_.PCBS, UnknownObj) External (_SB_.PCI0.LPC0.EC0_.PCBV, UnknownObj) External (_SB_.PCI0.LPC0.EC0_.PRRO, UnknownObj) External (_SB_.PCI0.LPC0.EC0_.PRWO, UnknownObj) External (_SB_.PCI0.LPC0.EC0_.SPBL, UnknownObj) External (_SB_.PCI0.LPC0.EC0_.SPMO, IntObj) External (_SB_.PLTF.C000, DeviceObj) External (_SB_.PLTF.C001, DeviceObj) External (_SB_.PLTF.C002, DeviceObj) External (_SB_.PLTF.C003, DeviceObj) External (_SB_.PLTF.C004, DeviceObj) External (_SB_.PLTF.C005, DeviceObj) External (_SB_.PLTF.C006, DeviceObj) External (_SB_.PLTF.C007, DeviceObj) External (_SB_.PLTF.C008, DeviceObj) External (_SB_.PLTF.C009, DeviceObj) External (_SB_.PLTF.C00A, DeviceObj) External (_SB_.PLTF.C00B, DeviceObj) External (_SB_.PLTF.C00C, DeviceObj) External (_SB_.PLTF.C00D, DeviceObj) External (_SB_.PLTF.C00E, DeviceObj) External (_SB_.PLTF.C00F, DeviceObj) External (CPTY, UnknownObj) External (DSMF, UnknownObj) External (EDID, UnknownObj) External (EPM1, UnknownObj) External (GNCS, IntObj) External (GSNM, IntObj) External (GTYP, IntObj) External (GYCK, IntObj) External (LPPA, UnknownObj) External (LTGP, UnknownObj) External (M000, MethodObj) // 1 Arguments External (M009, MethodObj) // 1 Arguments External (M010, MethodObj) // 2 Arguments External (M017, MethodObj) // 6 Arguments External (M019, MethodObj) // 4 Arguments External (M020, MethodObj) // 5 Arguments External (M402, MethodObj) // 3 Arguments External (M403, MethodObj) // 4 Arguments External (MCSK, IntObj) External (PMID, IntObj) External (PPID, IntObj) External (SMBA, UnknownObj) External (SMBB, UnknownObj) External (TCNT, FieldUnitObj) External (XXDF, IntObj) Scope (\_SB.PCI0.GPP0) { Device (PEGP) { Name (_ADR, Zero) // _ADR: Address } Device (NHDA) { Name (_ADR, One) // _ADR: Address } } Scope (\_SB.PCI0) { OperationRegion (HGOP, SystemMemory, 0x72F7DF18, 0x00000011) Field (HGOP, AnyAcc, Lock, Preserve) { DGDA, 32, DGBA, 32, DGPV, 16, OPTF, 8, NVGE, 8, DSSV, 32, DISM, 8 } } Scope (\_SB.PCI0.GPP0.PEGP) { OperationRegion (VBOR, SystemMemory, 0x7AE6E018, 0x00040004) Field (VBOR, DWordAcc, Lock, Preserve) { RVBS, 32, VBS1, 262144, VBS2, 262144, VBS3, 262144, VBS4, 262144, VBS5, 262144, VBS6, 262144, VBS7, 262144, VBS8, 262144 } } Scope (\_SB.PCI0.GPP0.PEGP) { OperationRegion (NOPR, SystemMemory, 0x7AE6B018, 0x00002028) Field (NOPR, AnyAcc, Lock, Preserve) { DHPS, 8, DPCS, 8, GPSS, 8, VENS, 8, NBCS, 8, GC6S, 8, NVSR, 8, NPCS, 8, NCTP, 8, SLVS, 8, PBCM, 8, EXMD, 8, MXBS, 32, MXMB, 32768, SMXS, 32, SMXB, 32768, FBEN, 32, ENVT, 32, PWGD, 32, DMMP, 32, DLRP, 32 } } Name (BOE1, Buffer (0xDF) { /* 0000 */ 0x7C, 0x31, 0x31, 0x49, 0x71, 0xAB, 0x5B, 0x38, // |11Iq.[8 /* 0008 */ 0x52, 0x44, 0xDF, 0x00, 0x00, 0x00, 0x00, 0x01, // RD...... /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0xDE, 0x10, 0x00, 0x00, // ........ /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ /* 0020 */ 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, // ......4. /* 0028 */ 0x00, 0x00, 0x01, 0x00, 0x47, 0x00, 0x00, 0x00, // ....G... /* 0030 */ 0x02, 0x00, 0x45, 0x00, 0x00, 0x00, 0x03, 0x00, // ..E..... /* 0038 */ 0x8F, 0x00, 0x00, 0x00, 0x04, 0x00, 0x8D, 0x00, // ........ /* 0040 */ 0x00, 0x00, 0x05, 0x00, 0x8B, 0x00, 0x00, 0x00, // ........ /* 0048 */ 0x06, 0x00, 0x89, 0x00, 0x00, 0x00, 0x07, 0x00, // ........ /* 0050 */ 0x87, 0x00, 0x00, 0x00, 0x08, 0x00, 0x85, 0x00, // ........ /* 0058 */ 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD9, 0x1C, // ........ /* 0060 */ 0x04, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, // ........ /* 0068 */ 0x41, 0x5D, 0xC9, 0x00, 0x01, 0x24, 0x2E, 0x00, // A]...$.. /* 0070 */ 0x02, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x01, // ........ /* 0078 */ 0x00, 0x00, 0x00, 0xD9, 0x1C, 0x04, 0x00, 0x00, // ........ /* 0080 */ 0x00, 0x04, 0x00, 0x00, 0x00, 0xE0, 0x7C, 0x97, // ......|. /* 0088 */ 0x01, 0xC0, 0x3D, 0x9C, 0x01, 0xC4, 0xD5, 0xC4, // ..=..... /* 0090 */ 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 2....... /* 0098 */ 0x00, 0x26, 0x00, 0x00, 0x00, 0x31, 0x00, 0x32, // .&...1.2 /* 00A0 */ 0x00, 0x30, 0x00, 0x2A, 0x00, 0x32, 0x00, 0x30, // .0.*.2.0 /* 00A8 */ 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x3B, // .0.0.0.; /* 00B0 */ 0x00, 0x36, 0x00, 0x30, 0x00, 0x2A, 0x00, 0x32, // .6.0.*.2 /* 00B8 */ 0x00, 0x39, 0x00, 0x34, 0x00, 0x31, 0x00, 0x31, // .9.4.1.1 /* 00C0 */ 0x00, 0x00, 0x00, 0x60, 0x68, 0x9E, 0x35, 0x00, // ...`h.5. /* 00C8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ /* 00D0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ /* 00D8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ....... }) Name (CSOT, Buffer (0xDF) { /* 0000 */ 0x7C, 0x31, 0x31, 0x49, 0x71, 0xAB, 0x5B, 0x38, // |11Iq.[8 /* 0008 */ 0x52, 0x44, 0xDF, 0x00, 0x00, 0x00, 0x00, 0x01, // RD...... /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0xDE, 0x10, 0x00, 0x00, // ........ /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ /* 0020 */ 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, // ......4. /* 0028 */ 0x00, 0x00, 0x01, 0x00, 0x47, 0x00, 0x00, 0x00, // ....G... /* 0030 */ 0x02, 0x00, 0x45, 0x00, 0x00, 0x00, 0x03, 0x00, // ..E..... /* 0038 */ 0x8F, 0x00, 0x00, 0x00, 0x04, 0x00, 0x8D, 0x00, // ........ /* 0040 */ 0x00, 0x00, 0x05, 0x00, 0x8B, 0x00, 0x00, 0x00, // ........ /* 0048 */ 0x06, 0x00, 0x89, 0x00, 0x00, 0x00, 0x07, 0x00, // ........ /* 0050 */ 0x87, 0x00, 0x00, 0x00, 0x08, 0x00, 0x85, 0x00, // ........ /* 0058 */ 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD9, 0x1C, // ........ /* 0060 */ 0x04, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, // ........ /* 0068 */ 0x41, 0x5D, 0xC9, 0x00, 0x01, 0x24, 0x2E, 0x00, // A]...$.. /* 0070 */ 0x02, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x01, // ........ /* 0078 */ 0x00, 0x00, 0x00, 0xD9, 0x1C, 0x04, 0x00, 0x00, // ........ /* 0080 */ 0x00, 0x04, 0x00, 0x00, 0x00, 0xE0, 0x7C, 0x97, // ......|. /* 0088 */ 0x01, 0xC0, 0x3D, 0x9C, 0x01, 0xC4, 0xD5, 0xC4, // ..=..... /* 0090 */ 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 2....... /* 0098 */ 0x00, 0x26, 0x00, 0x00, 0x00, 0x31, 0x00, 0x32, // .&...1.2 /* 00A0 */ 0x00, 0x30, 0x00, 0x2A, 0x00, 0x32, 0x00, 0x30, // .0.*.2.0 /* 00A8 */ 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x3B, // .0.0.0.; /* 00B0 */ 0x00, 0x36, 0x00, 0x30, 0x00, 0x2A, 0x00, 0x32, // .6.0.*.2 /* 00B8 */ 0x00, 0x39, 0x00, 0x34, 0x00, 0x31, 0x00, 0x31, // .9.4.1.1 /* 00C0 */ 0x00, 0x00, 0x00, 0x60, 0x68, 0x9E, 0x35, 0x00, // ...`h.5. /* 00C8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ /* 00D0 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ /* 00D8 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // ....... }) Method (GYDR, 0, NotSerialized) { If ((PMID == 0xE509)) { Return (BOE1) /* \BOE1 */ } ElseIf ((PMID == 0x6F0E)) { Return (CSOT) /* \CSOT */ } } Scope (\_SB.PCI0.GPP0.PEGP) { Name (GSV1, Buffer (One) { 0x00 // . }) Name (GSV2, Buffer (One) { 0x00 // . }) Name (GSDR, Buffer (0xA1) { /* 0000 */ 0x57, 0x74, 0xDC, 0x86, 0x75, 0x84, 0xEC, 0xE7, // Wt..u... /* 0008 */ 0x52, 0x44, 0xA1, 0x00, 0x00, 0x00, 0x00, 0x01, // RD...... /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0xDE, 0x10, 0x00, 0x00, // ........ /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ /* 0020 */ 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, // ......4. /* 0028 */ 0x00, 0x00, 0x01, 0x00, 0x47, 0x00, 0x00, 0x00, // ....G... /* 0030 */ 0x02, 0x00, 0x45, 0x00, 0x00, 0x00, 0x03, 0x00, // ..E..... /* 0038 */ 0x51, 0x00, 0x00, 0x00, 0x04, 0x00, 0x4F, 0x00, // Q.....O. /* 0040 */ 0x00, 0x00, 0x05, 0x00, 0x4D, 0x00, 0x00, 0x00, // ....M... /* 0048 */ 0x06, 0x00, 0x4B, 0x00, 0x00, 0x00, 0x07, 0x00, // ..K..... /* 0050 */ 0x49, 0x00, 0x00, 0x00, 0x08, 0x00, 0x47, 0x00, // I.....G. /* 0058 */ 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD9, 0x1C, // ........ /* 0060 */ 0x04, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, // ........ /* 0068 */ 0x41, 0x5D, 0xC9, 0x00, 0x01, 0x24, 0x2E, 0x00, // A]...$.. /* 0070 */ 0x02, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x01, // ........ /* 0078 */ 0x00, 0x00, 0x00, 0xD9, 0x1C, 0x04, 0x00, 0x00, // ........ /* 0080 */ 0x00, 0x01, 0x00, 0x00, 0x00, 0x60, 0x68, 0x9E, // .....`h. /* 0088 */ 0x35, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 5....... /* 0090 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ /* 0098 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // ........ /* 00A0 */ 0x00 // . }) Method (NBCI, 4, Serialized) { Debug = "------- NV NBCI DSM --------" If ((Arg1 != 0x0102)) { Debug = " NBCI DSM: NOT SUPPORTED!" Return (0x80000002) } If ((Arg2 == Zero)) { Debug = " NBCI fun0 NBCI_FUNC_SUPPORT" Return (Buffer (0x04) { 0x01, 0x00, 0x01, 0x00 // .... }) } If ((Arg2 == One)) { Debug = " NBCI fun1 NBCI_FUNC_PLATCAPS" Name (TEMP, Buffer (0x04) { 0x80, 0x01, 0x00, 0x00 // .... }) CreateDWordField (TEMP, Zero, STS0) STS0 |= Zero Return (TEMP) /* \_SB_.PCI0.GPP0.PEGP.NBCI.TEMP */ } If ((Arg2 == 0x10)) { Debug = " NBCI fun16 NBCI_FUNC_GETOBJBYTYPE" CreateWordField (Arg3, 0x02, BFF0) If ((BFF0 == 0x564B)) { If ((GNCS == One)) { Return (GYCK) /* External reference */ } } If ((BFF0 == 0x4452)) { If ((GNCS == One)) { Return (GYDR ()) } Else { Return (GSDR) /* \_SB_.PCI0.GPP0.PEGP.GSDR */ } } } If ((Arg2 == 0x14)) { Debug = " NBCI fun20 NBCI_FUNC_GETBACKLIGHT" Return (Package (0x20) { 0x8000A450, 0x0200, Zero, Zero, 0x05, One, 0xC8, 0x32, 0x03E8, 0x0B, 0x32, 0x64, 0x96, 0xC8, 0x012C, 0x0190, 0x01FE, 0x0276, 0x02F8, 0x0366, 0x03E8, Zero, 0x64, 0xC8, 0x012C, 0x0190, 0x01F4, 0x0258, 0x02BC, 0x0320, 0x0384, 0x03E8 }) } } } Scope (\) { Name (REST, 0x07) Name (PWEN, 0x0C) Name (PWOK, 0x9A) } Scope (\_SB.PCI0.GPP0) { Method (SGPC, 1, NotSerialized) { If ((Arg0 == One)) { M000 (0x9D) Sleep (0x05) If ((M009 (PWEN) == One)) { Return (Zero) } M010 (REST, Zero) Sleep (One) M010 (PWEN, One) Sleep (0x08) M010 (REST, One) If ((\XXDF == One)) { Sleep (0x01F4) \XXDF = Zero } Else { Sleep (0x64) } LNKD = Zero Local6 = 0x7FFFFFFF Local6 |= 0x80000000 Local2 = M017 (Zero, One, One, 0x19, Zero, 0x08) Local1 = M019 (Zero, One, One, 0x54) M020 (Zero, One, One, 0x54, (Local1 & 0xFFFF7FFC)) Local4 = One Local5 = 0x28 While ((Local4 && Local5)) { Local0 = M019 (Local2, Zero, Zero, Zero) If ((Local0 != Local6)) { Local4 = Zero } Else { Sleep (0x05) Local5-- } } \_SB.PCI0.GPP0.LREN = \_SB.PCI0.GPP0.PEGP.LTRE \_SB.PCI0.GPP0.CEDR = One M020 (Zero, One, One, 0x54, (Local1 & 0xFFFF7FFF)) M000 (0xA0) } Else { M000 (0xA1) M010 (PWEN, One) \_SB.PCI0.GPP0.PEGP.LTRE = \_SB.PCI0.GPP0.LREN LNKD = One M010 (REST, Zero) Sleep (One) M010 (PWEN, Zero) Sleep (0x64) M000 (0xA3) } } PowerResource (PG00, 0x00, 0x0000) { Name (M239, One) Method (_STA, 0, NotSerialized) // _STA: Status { If ((RVID == Ones)) { Return (Zero) } Return (GSTA ()) } Method (_ON, 0, NotSerialized) // _ON_: Power On { If ((\_SB.PCI0.GPP0.GSTA () != Zero)) { Return (Zero) } If ((\_SB.PCI0.TDGC == One)) { If ((\_SB.PCI0.DGCX == 0x03)) { \_SB.PCI0.GC6O () } ElseIf ((\_SB.PCI0.DGCX == 0x04)) { \_SB.PCI0.GC6O () } \_SB.PCI0.TDGC = Zero \_SB.PCI0.DGCX = Zero } Else { SGPC (One) \_SB.PCI0.GPP0.CMDR = 0x06 \_SB.PCI0.GPP0.D0ST = Zero \_SB.PCI0.GPP0.PEGP.SSSV = \_SB.PCI0.DSSV } M239 = One If (\_SB.PCI0.LPC0.EC0.ECAV) { If ((Acquire (\_SB.PCI0.LPC0.EC0.LFCM, 0xA000) == Zero)) { \_SB.PCI0.LPC0.EC0.GATY = 0x02 Sleep (0x0A) Release (\_SB.PCI0.LPC0.EC0.LFCM) } } } Method (_OFF, 0, NotSerialized) // _OFF: Power Off { If ((\_SB.PCI0.GPP0.GSTA () != One)) { Return (Zero) } If ((\_SB.PCI0.TDGC == One)) { CreateField (\_SB.PCI0.TGPC, Zero, 0x03, GUPC) If ((ToInteger (GUPC) == One)) { \_SB.PCI0.GC6I () } ElseIf ((ToInteger (GUPC) == 0x02)) { \_SB.PCI0.GC6I () } } Else { SGPC (Zero) } M239 = Zero If (\_SB.PCI0.LPC0.EC0.ECAV) { If ((Acquire (\_SB.PCI0.LPC0.EC0.LFCM, 0xA000) == Zero)) { \_SB.PCI0.LPC0.EC0.GATY = Zero Sleep (0x0A) Release (\_SB.PCI0.LPC0.EC0.LFCM) } } } } Name (_PR0, Package (0x01) // _PR0: Power Resources for D0 { PG00 }) Name (_PR2, Package (0x01) // _PR2: Power Resources for D2 { PG00 }) Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot { PG00 }) Name (_S0W, 0x04) // _S0W: S0 Device Wake State OperationRegion (RPCX, SystemMemory, \_SB.PCI0.DGBA, 0x1000) Field (RPCX, DWordAcc, NoLock, Preserve) { RVID, 32, CMDR, 8, Offset (0x19), PRBN, 8, Offset (0x54), D0ST, 2, Offset (0x62), CEDR, 1, Offset (0x68), ASPM, 2, , 2, LNKD, 1, Offset (0x80), Offset (0x81), , 2, LREN, 1 } Method (GSTA, 0, NotSerialized) { If ((M009 (PWOK) == Zero)) { Return (Zero) } Else { Return (One) } } } Scope (\_SB.PCI0.GPP0.PEGP) { Name (LTRE, Zero) Name (DGPS, Zero) Name (_PSC, Zero) // _PSC: Power State Current Name (GPRF, Zero) Name (OPCE, 0x02) OperationRegion (PCIM, SystemMemory, \_SB.PCI0.DGDA, 0x1000) Field (PCIM, DWordAcc, NoLock, Preserve) { NVID, 16, NDID, 16, CMDR, 8, VGAR, 2008, Offset (0x48B), , 1, HDAE, 1 } OperationRegion (DGPU, SystemMemory, \_SB.PCI0.DGDA, 0x0100) Field (DGPU, DWordAcc, NoLock, Preserve) { Offset (0x40), SSSV, 32 } OperationRegion (PCIS, PCI_Config, Zero, 0x0100) Field (PCIS, AnyAcc, NoLock, Preserve) { PVID, 16, PDID, 16 } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (Zero) } Method (_PS0, 0, NotSerialized) // _PS0: Power State 0 { _PSC = Zero If ((DGPS != Zero)) { \_SB.PCI0.GPP0.PG00._ON () DGPS = Zero } } Method (_PS3, 0, NotSerialized) // _PS3: Power State 3 { If ((OPCE == 0x03)) { If ((DGPS == Zero)) { \_SB.PCI0.GPP0.PG00._OFF () DGPS = One } OPCE = 0x02 } _PSC = 0x03 } Method (SGST, 0, Serialized) { If ((PVID != 0x0FFF)) { Return (0x0F) } Return (Zero) } Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method { If ((Arg0 == ToUUID ("a486d8f8-0bda-471b-a72b-6042a6b5bee0") /* Unknown UUID */)) { Return (\_SB.PCI0.GPP0.PEGP.NVOP (Arg0, Arg1, Arg2, Arg3)) } If ((Arg0 == ToUUID ("a3132d01-8cda-49ba-a52e-bc9d46df6b81") /* Unknown UUID */)) { If ((\_SB.PCI0.GPP0.PEGP.GPSS != Zero)) { Return (\_SB.PCI0.GPP0.PEGP.GPS (Arg0, Arg1, Arg2, Arg3)) } } If ((Arg0 == ToUUID ("cbeca351-067b-4924-9cbd-b46b00b86f34") /* Unknown UUID */)) { If ((\_SB.PCI0.GPP0.PEGP.GC6S != Zero)) { Return (\_SB.PCI0.GPP0.PEGP.NVJT (Arg0, Arg1, Arg2, Arg3)) } } If ((Arg0 == ToUUID ("d4a50b75-65c7-46f7-bfb7-41514cea0244") /* Unknown UUID */)) { If ((\_SB.PCI0.GPP0.PEGP.NBCS != Zero)) { Return (\_SB.PCI0.GPP0.PEGP.NBCI (Arg0, Arg1, Arg2, Arg3)) } } Return (0x80000001) } } Scope (\_SB.PCI0.GPP0.PEGP) { Method (NVOP, 4, Serialized) { If ((Arg2 == Zero)) { Return (Buffer (0x04) { 0x01, 0x00, 0x00, 0x04 // .... }) } ElseIf ((Arg2 == 0x1A)) { CreateField (Arg3, 0x18, 0x02, OMPR) CreateField (Arg3, Zero, One, FLCH) CreateField (Arg3, One, One, DVSR) CreateField (Arg3, 0x02, One, DVSC) If (ToInteger (FLCH)) { \_SB.PCI0.GPP0.PEGP.OPCE = OMPR /* \_SB_.PCI0.GPP0.PEGP.NVOP.OMPR */ } Local0 = Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 // .... } CreateField (Local0, Zero, One, OPEN) CreateField (Local0, 0x03, 0x02, CGCS) CreateField (Local0, 0x06, One, SHPC) CreateField (Local0, 0x08, One, SNSR) CreateField (Local0, 0x18, 0x03, DGPC) CreateField (Local0, 0x1B, 0x02, OHAC) OPEN = One SHPC = One DGPC = One OHAC = 0x03 If (ToInteger (DVSC)) { If (ToInteger (DVSR)) { \_SB.PCI0.GPP0.PEGP.GPRF = One } Else { \_SB.PCI0.GPP0.PEGP.GPRF = Zero } } SNSR = \_SB.PCI0.GPP0.PEGP.GPRF If ((\_SB.PCI0.GPP0.PEGP.SGST () != Zero)) { CGCS = 0x03 } Return (Local0) } Return (0x80000002) } } Scope (\_SB.PCI0.GPP0.PEGP) { Name (NLIM, One) Name (PSLS, Zero) Name (GPSP, Buffer (0x28){}) CreateDWordField (GPSP, Zero, RETN) CreateDWordField (GPSP, 0x04, VRV1) CreateDWordField (GPSP, 0x08, TGPU) CreateDWordField (GPSP, 0x0C, PDTS) CreateDWordField (GPSP, 0x10, SFAN) CreateDWordField (GPSP, 0x14, SKNT) CreateDWordField (GPSP, 0x18, CPUE) CreateDWordField (GPSP, 0x1C, TMP1) CreateDWordField (GPSP, 0x20, TMP2) Method (GPS, 4, Serialized) { Debug = "------- NV GPS DSM --------" If ((Arg1 != 0x0200)) { Return (0x80000002) } Switch (ToInteger (Arg2)) { Case (Zero) { Debug = " GPS fun 0" Return (Buffer (0x08) { 0x01, 0x00, 0x08, 0x00, 0x0F, 0x04, 0x00, 0x00 // ........ }) } Case (0x13) { Debug = " GPS fun 19" CreateDWordField (Arg3, Zero, TEMP) If ((TEMP == Zero)) { Return (0x04) } If ((TEMP && 0x04)) { Return (0x04) } } Case (0x20) { Debug = " GPS fun 32" Name (RET1, Zero) CreateBitField (Arg3, 0x02, SPBI) If (NLIM) { RET1 |= One } If (PSLS) { RET1 |= 0x02 } Return (RET1) /* \_SB_.PCI0.GPP0.PEGP.GPS_.RET1 */ } Case (0x2A) { Debug = " GPS fun 42" CreateField (Arg3, Zero, 0x04, PSH0) CreateBitField (Arg3, 0x08, GPUT) VRV1 = 0x00010000 Switch (ToInteger (PSH0)) { Case (Zero) { Return (GPSP) /* \_SB_.PCI0.GPP0.PEGP.GPSP */ } Case (One) { RETN = 0x0100 RETN |= ToInteger (PSH0) Return (GPSP) /* \_SB_.PCI0.GPP0.PEGP.GPSP */ } Case (0x02) { RETN = 0x0102 TGPU = 0x4B If ((\_SB.PCI0.LPC0.EC0.SPMO == Zero)) { TGPU = 0x4B } ElseIf ((\_SB.PCI0.LPC0.EC0.SPMO == One)) { TGPU = 0x57 } ElseIf ((\_SB.PCI0.LPC0.EC0.SPMO == 0x02)) { TGPU = 0x4B } ElseIf ((\_SB.PCI0.LPC0.EC0.SPMO == 0x03)) { TGPU = 0x52 } ElseIf ((\_SB.PCI0.LPC0.EC0.SPMO == 0x04)) { TGPU = 0x4B } ElseIf ((\_SB.PCI0.LPC0.EC0.SPMO == 0x05)) { TGPU = 0x4B } ElseIf ((\_SB.PCI0.LPC0.EC0.SPMO == 0x06)) { TGPU = 0x4B } ElseIf ((\_SB.PCI0.LPC0.EC0.SPMO == 0x07)) { TGPU = 0x4B } Return (GPSP) /* \_SB_.PCI0.GPP0.PEGP.GPSP */ } } } Default { Return (0x80000002) } } Return (0x80000002) } } Scope (\_SB.PCI0) { Method (RTL2, 0, NotSerialized) { Debug = "GC6I-Enter-L2" M402 (Zero, One, One) } Method (RTL0, 0, NotSerialized) { Debug = "GC6O-Resume-L0" M403 (Zero, One, One, One) Local1 = Zero While (((Local1 & 0x28) != 0x20)) { Local1 = M017 (Zero, One, One, 0x6B, Zero, 0x08) Stall (0x63) } M403 (Zero, One, One, Zero) } Name (TGPC, Buffer (0x04) { 0x00 // . }) Name (TDGC, Zero) Name (DGCX, Zero) Name (L23B, Buffer (0x05){}) Method (GC6I, 0, Serialized) { Debug = " JT GC6I" \_SB.PCI0.GPP0.PEGP.LTRE = \_SB.PCI0.GPP0.LREN Sleep (0x14) ^RTL2 () Sleep (0x14) M010 (REST, Zero) Sleep (0x14) } Method (GC6O, 0, Serialized) { Sleep (0x14) M010 (REST, One) ^RTL0 () Sleep (0x14) \_SB.PCI0.GPP0.CMDR |= 0x04 \_SB.PCI0.GPP0.D0ST = Zero While ((\_SB.PCI0.DGPV != 0x10DE)) { Sleep (One) } While ((\_SB.PCI0.GPP0.LREN != One)) { \_SB.PCI0.GPP0.LREN = One } \_SB.PCI0.GPP0.CEDR = One } } Scope (\_SB.PCI0.GPP0.PEGP) { Method (NVJT, 4, Serialized) { Debug = "------- NV JT DSM --------" If ((ToInteger (Arg1) < 0x0100)) { Return (0x80000001) } Switch (ToInteger (Arg2)) { Case (Zero) { Debug = " JT fun0 JT_FUNC_SUPPORT" Return (Buffer (0x04) { 0x1B, 0x00, 0x00, 0x00 // .... }) } Case (One) { Debug = " JT fun1 JT_FUNC_CAPS" Name (JTCA, Buffer (0x04) { 0x00 // . }) CreateField (JTCA, Zero, One, JTEN) CreateField (JTCA, One, 0x02, SREN) CreateField (JTCA, 0x03, 0x02, PLPR) CreateField (JTCA, 0x05, One, SRPR) CreateField (JTCA, 0x06, 0x02, FBPR) CreateField (JTCA, 0x08, 0x02, GUPR) CreateField (JTCA, 0x0A, One, GC6R) CreateField (JTCA, 0x0B, One, PTRH) CreateField (JTCA, 0x0D, One, MHYB) CreateField (JTCA, 0x0E, One, RPCL) CreateField (JTCA, 0x0F, 0x02, GC6V) CreateField (JTCA, 0x11, One, GEIS) CreateField (JTCA, 0x12, One, GSWS) CreateField (JTCA, 0x14, 0x0C, JTRV) JTEN = One GC6R = Zero RPCL = One SREN = One FBPR = Zero MHYB = One GC6V = 0x02 JTRV = 0x0200 Return (JTCA) /* \_SB_.PCI0.GPP0.PEGP.NVJT.JTCA */ } Case (0x02) { Debug = " JT fun2 JT_FUNC_POLICYSELECT" Return (0x80000002) } Case (0x03) { Debug = " JT fun3 JT_FUNC_POWERCONTROL" CreateField (Arg3, Zero, 0x03, GPPC) CreateField (Arg3, 0x04, One, PLPC) CreateField (Arg3, 0x07, One, ECOC) CreateField (Arg3, 0x0E, 0x02, DFGC) CreateField (Arg3, 0x10, 0x03, GPCX) \_SB.PCI0.TGPC = Arg3 If (((ToInteger (GPPC) != Zero) || (ToInteger (DFGC ) != Zero))) { \_SB.PCI0.TDGC = ToInteger (DFGC) \_SB.PCI0.DGCX = ToInteger (GPCX) } Name (JTPC, Buffer (0x04) { 0x00 // . }) CreateField (JTPC, Zero, 0x03, GUPS) CreateField (JTPC, 0x03, One, GPWO) CreateField (JTPC, 0x07, One, PLST) If ((ToInteger (DFGC) != Zero)) { GPWO = One GUPS = One Return (JTPC) /* \_SB_.PCI0.GPP0.PEGP.NVJT.JTPC */ } Debug = " JT fun3 GPPC=" Debug = ToInteger (GPPC) If ((ToInteger (GPPC) == One)) { \_SB.PCI0.GC6I () PLST = One GUPS = Zero } ElseIf ((ToInteger (GPPC) == 0x02)) { \_SB.PCI0.GC6I () If ((ToInteger (PLPC) == Zero)) { PLST = Zero } GUPS = Zero } ElseIf ((ToInteger (GPPC) == 0x03)) { \_SB.PCI0.GC6O () If ((ToInteger (PLPC) != Zero)) { PLST = Zero } GPWO = One GUPS = One } ElseIf ((ToInteger (GPPC) == 0x04)) { \_SB.PCI0.GC6O () If ((ToInteger (PLPC) != Zero)) { PLST = Zero } GPWO = One GUPS = One } ElseIf ((M009 (PWGD) == One)) { Debug = " JT GETS() return 0x1" GPWO = One GUPS = One } Else { Debug = " JT GETS() return 0x3" GPWO = Zero GUPS = 0x03 } Return (JTPC) /* \_SB_.PCI0.GPP0.PEGP.NVJT.JTPC */ } Case (0x04) { Debug = " JT fun4 JT_FUNC_PLATPOLICY" CreateField (Arg3, 0x02, One, PAUD) CreateField (Arg3, 0x03, One, PADM) CreateField (Arg3, 0x04, 0x04, PDGS) Local0 = Zero Local0 = (\_SB.PCI0.GPP0.PEGP.HDAE << 0x02) Return (Local0) } } Return (0x80000002) } } Scope (\_SB) { Device (NPCF) { Name (ACBT, Zero) Name (DCBT, Zero) Name (DBAC, Zero) Name (DBDC, One) Name (AMAT, 0x78) Name (AMIT, Zero) Name (ATPP, 0x0118) Name (DTPP, Zero) Name (IOBS, 0x0481) Name (CMPL, 0x33) Name (CNPL, 0x10) Name (HPCT, 0x02) Name (CDIS, Zero) Name (CUSL, Zero) Name (CUCT, Zero) Method (_HID, 0, NotSerialized) // _HID: Hardware ID { CDIS = Zero Return ("NVDA0820") } Name (_UID, "NPCF") // _UID: Unique ID Method (CCMS, 0, Serialized) { Switch (ToInteger (CPTY)) { Case (0x05) { CMPL = 0xB5 CNPL = 0x78 } Case (0x07) { CMPL = 0xBF CNPL = 0x6F } Case (0x09) { CMPL = 0xBF CNPL = 0x6F } } } Method (_STA, 0, NotSerialized) // _STA: Status { CCMS () If ((CDIS == One)) { Return (0x0D) } Return (0x0F) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { CDIS = One } Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method { If ((Arg0 == ToUUID ("36b49710-2483-11e7-9598-0800200c9a66") /* Unknown UUID */)) { If ((\_SB.PCI0.GPP0.PEGP.NPCS != Zero)) { Return (NPCF (Arg0, Arg1, Arg2, Arg3)) } } } Method (NPCF, 4, Serialized) { Debug = "------- NVPCF DSM --------" If ((ToInteger (Arg1) != 0x0200)) { Return (0x80000001) } Switch (ToInteger (Arg2)) { Case (Zero) { Debug = " NVPCF sub-func#0" Return (Unicode ("G")) } Case (One) { Debug = " NVPCF sub-func#1" Return (Buffer (0x1B) { /* 0000 */ 0x20, 0x03, 0x01, 0x01, 0x21, 0x05, 0x02, 0x0F, // ...!... /* 0008 */ 0x01, 0x64, 0x00, 0x01, 0x01, 0x00, 0x00, 0xE8, // .d...... /* 0010 */ 0x00, 0x00, 0x66, 0x0E, 0x00, 0x10, 0x00, 0x00, // ..f..... /* 0018 */ 0x00, 0x00, 0xD1 // ... }) } Case (0x02) { Debug = " NVPCF sub-func#2" Name (PBD2, Buffer (0x31) { 0x00 // . }) CreateByteField (PBD2, Zero, PTV2) CreateByteField (PBD2, One, PHB2) CreateByteField (PBD2, 0x02, GSB2) CreateByteField (PBD2, 0x03, CTB2) CreateByteField (PBD2, 0x04, NCE2) PTV2 = 0x21 PHB2 = 0x05 GSB2 = 0x10 CTB2 = 0x1C NCE2 = One CreateWordField (PBD2, 0x05, TGPA) CreateWordField (PBD2, 0x07, TGPD) CreateByteField (PBD2, 0x15, PC01) CreateByteField (PBD2, 0x16, PC02) CreateWordField (PBD2, 0x19, TPPA) CreateWordField (PBD2, 0x1B, TPPD) CreateWordField (PBD2, 0x1D, MAGA) CreateWordField (PBD2, 0x1F, MAGD) CreateWordField (PBD2, 0x21, MIGA) CreateWordField (PBD2, 0x23, MIGD) CreateDWordField (PBD2, 0x25, PA4O) CreateDWordField (PBD2, 0x29, PA5O) CreateDWordField (PBD2, 0x2D, PA6O) CreateField (Arg3, 0x28, 0x02, NIGS) CreateByteField (Arg3, 0x15, IORC) CreateField (Arg3, 0xB0, One, PWCS) CreateField (Arg3, 0xB1, One, PWTS) CreateField (Arg3, 0xB2, One, CGPS) If ((ToInteger (NIGS) == Zero)) { If ((LTGP == Zero)) { ACBT = Zero } If ((LPPA == Zero)) { DBAC = One AMAT = Zero ATPP = Zero } ElseIf ((EPM1 == One)) { DBAC = Zero AMAT = 0xA0 ATPP = 0x0118 } Else { DBAC = Zero AMAT = 0x78 ATPP = 0x0118 } TGPA = ACBT /* \_SB_.NPCF.ACBT */ TGPD = DCBT /* \_SB_.NPCF.DCBT */ PC01 = Zero PC02 = (DBAC | (DBDC << One)) TPPA = ATPP /* \_SB_.NPCF.ATPP */ TPPD = DTPP /* \_SB_.NPCF.DTPP */ MAGA = AMAT /* \_SB_.NPCF.AMAT */ MIGA = AMIT /* \_SB_.NPCF.AMIT */ } If ((ToInteger (NIGS) == One)) { If ((ToInteger (PWCS) == One)){} Else { } If ((ToInteger (PWTS) == One)){} Else { } If ((ToInteger (CGPS) == One)){} Else { } TGPA = Zero TGPD = Zero PC01 = Zero PC02 = Zero TPPA = Zero TPPD = Zero MAGA = Zero MIGA = Zero MAGD = Zero MIGD = Zero } Return (PBD2) /* \_SB_.NPCF.NPCF.PBD2 */ } Case (0x03) { Debug = " NVPCF sub-func#3" Return (Buffer (0x3D) { /* 0000 */ 0x11, 0x04, 0x13, 0x03, 0x00, 0xFF, 0x00, 0x28, // .......( /* 0008 */ 0x2D, 0x2D, 0x33, 0x33, 0x39, 0x39, 0x3F, 0x3F, // --3399?? /* 0010 */ 0x45, 0x42, 0x4B, 0x46, 0x50, 0xFF, 0xFF, 0x05, // EBKFP... /* 0018 */ 0xFF, 0x00, 0x3C, 0x41, 0x41, 0x46, 0xFF, 0xFF, // .....R..( /* 0038 */ 0xA2, 0x17, 0x00, 0x00, 0x60, 0x6D, 0x00, 0x00, // ....`m.. /* 0040 */ 0xC8, 0x32, 0x00, 0x00, 0x68, 0x42, 0x00, 0x00, // .2..hB.. /* 0048 */ 0x14, 0x0C, 0x17, 0x00, 0x00, 0x78, 0x69, 0x00, // .....xi. /* 0050 */ 0x00, 0xF8, 0x2A, 0x00, 0x00, 0xB0, 0x36, 0x00, // ..*...6. /* 0058 */ 0x00 // . }) } Case (0x09) { Debug = " NVPCF sub-func#9" CreateDWordField (Arg3, 0x03, CPTD) Return (Zero) } } Return (0x80000002) } } } Scope (\_SB.PCI0.GPP0.PEGP) { Name (MMID, Package (0x02) { Package (0x03) { Zero, "PS8461E", 0x00010003 }, Package (0x03) { One, "NON-MUX or Error", Zero } }) Method (_DOD, 0, NotSerialized) // _DOD: Display Output Devices { Return (Package (0x01) { 0x8000A450 }) } OperationRegion (SMIP, SystemIO, 0xB0, One) Field (SMIP, ByteAcc, NoLock, Preserve) { IOB0, 8 } Method (VDDC, 2, NotSerialized) { Local0 = Arg1 CreateField (Local0, Zero, 0x40, EDS1) Local1 = EDS1 /* \_SB_.PCI0.GPP0.PEGP.VDDC.EDS1 */ If ((Local1 != Buffer (0x08) { 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00 // ........ })) { Return (Zero) } CreateByteField (Local0, 0x7E, EBLK) Local1 = EBLK /* \_SB_.PCI0.GPP0.PEGP.VDDC.EBLK */ Local1++ Local2 = (Local1 * 0x80) Local3 = (Local2 * 0x08) If ((SizeOf (Local0) < Local2)) { Return (Zero) } If ((Arg0 == Local1)) { CreateField (Local0, Zero, Local3, EBUF) Return (EBUF) /* \_SB_.PCI0.GPP0.PEGP.VDDC.EBUF */ } Return (Zero) } Device (EDP1) { Method (_ADR, 0, Serialized) // _ADR: Address { Return (0x8000A450) } Method (_DDC, 1, Serialized) // _DDC: Display Data Current { Return (VDDC (Arg0, EDID)) } Method (MXDS, 1, NotSerialized) { Local0 = Arg0 Local1 = (Local0 & 0x0F) Local2 = (Local0 & 0x10) If ((Local1 == Zero)) { If ((M009 (0x74) == Zero)) { Return (One) } Else { Return (0x02) } } ElseIf ((Local1 == One)) { If ((Local2 == 0x10)) { M010 (0x74, One) } Else { M010 (0x74, Zero) } } Else { Return (Zero) } } Method (MXDM, 1, Serialized) { Local0 = Arg0 Local1 = (Local0 & 0x07) If ((Local1 == Zero)) { Local2 = DSMF /* External reference */ Return (Local2) } Else { Switch (ToInteger (Local1)) { Case (One) { SMBB = 0x24 SMBA = 0xCA } Case (0x02) { Return (Zero) } Case (0x03) { Return (Zero) } Case (0x04) { SMBB = 0x26 SMBA = 0xCA } Default { Return (Zero) } } } Return (One) } Method (MXID, 1, NotSerialized) { If ((Arg0 == Zero)) { Local0 = DerefOf (DerefOf (MMID [Zero]) [0x02]) Return (Local0) } } Method (LRST, 1, NotSerialized) { Local0 = Arg0 Local1 = (Local0 & 0x07) If ((Local1 == Zero)) { If ((\_SB.PCI0.LPC0.EC0.PRRO == Zero)) { Return (One) } ElseIf ((\_SB.PCI0.LPC0.EC0.PRRO == One)) { Return (0x02) } Else { Return (Zero) } } ElseIf ((Local1 == One)) { \_SB.PCI0.LPC0.EC0.PRWO = Zero } ElseIf ((Local1 == 0x02)) { \_SB.PCI0.LPC0.EC0.PRWO = One } Else { Return (Zero) } } } } Scope (\_SB.PCI0) { Device (AWMI) { Name (_HID, "PNP0C14" /* Windows Management Instrumentation Device */) // _HID: Hardware ID Name (_UID, "0x00") // _UID: Unique ID Name (_WDG, Buffer (0x28) { /* 0000 */ 0x13, 0x96, 0x3E, 0x60, 0x25, 0xEF, 0x38, 0x43, // ..>`%.8C /* 0008 */ 0xA3, 0xD0, 0xC4, 0x61, 0x77, 0x51, 0x6D, 0xB7, // ...awQm. /* 0010 */ 0x41, 0x41, 0x01, 0x02, 0x21, 0x12, 0x90, 0x05, // AA..!... /* 0018 */ 0x66, 0xD5, 0xD1, 0x11, 0xB2, 0xF0, 0x00, 0xA0, // f....... /* 0020 */ 0xC9, 0x06, 0x29, 0x10, 0x30, 0x30, 0x01, 0x00 // ..).00.. }) Name (WQ00, Buffer (0x037D) { /* 0000 */ 0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00, // FOMB.... /* 0008 */ 0x6D, 0x03, 0x00, 0x00, 0x68, 0x0B, 0x00, 0x00, // m...h... /* 0010 */ 0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54, // DS...}.T /* 0018 */ 0x18, 0x59, 0x85, 0x00, 0x01, 0x06, 0x18, 0x42, // .Y.....B /* 0020 */ 0x20, 0x82, 0x02, 0x89, 0xC0, 0x82, 0x69, 0x24, // .....i$ /* 0028 */ 0xC7, 0x01, 0x0C, 0x46, 0x03, 0x88, 0xE4, 0x40, // ...F...@ /* 0030 */ 0xC8, 0x05, 0x13, 0x13, 0x20, 0x02, 0x42, 0x5E, // .... .B^ /* 0038 */ 0x05, 0xD8, 0x14, 0x60, 0x12, 0x44, 0xFD, 0xFB, // ...`.D.. /* 0040 */ 0x43, 0x94, 0x04, 0x87, 0x12, 0x02, 0x21, 0x89, // C.....!. /* 0048 */ 0x02, 0xCC, 0x0B, 0xD0, 0x2D, 0xC0, 0xB0, 0x00, // ....-... /* 0050 */ 0xDB, 0x02, 0x4C, 0x0B, 0x70, 0x0C, 0x49, 0xA5, // ..L.p.I. /* 0058 */ 0x81, 0x53, 0x02, 0x4B, 0x81, 0x90, 0x50, 0x01, // .S.K..P. /* 0060 */ 0xCA, 0x05, 0xF8, 0x16, 0xA0, 0x1D, 0x51, 0x92, // ......Q. /* 0068 */ 0x05, 0x58, 0x86, 0x11, 0x81, 0x47, 0x11, 0xD9, // .X...G.. /* 0070 */ 0x68, 0x1C, 0x1A, 0x3B, 0x0C, 0xCB, 0x04, 0xD3, // h..;.... /* 0078 */ 0x20, 0x0E, 0xA3, 0x6C, 0x64, 0x11, 0x78, 0x42, // ..ld.xB /* 0080 */ 0x9D, 0x0A, 0x90, 0x2B, 0x40, 0x98, 0x00, 0xF1, // ...+@... /* 0088 */ 0xA8, 0xC2, 0x68, 0x0E, 0x8A, 0x8C, 0x27, 0x34, // ..h...'4 /* 0090 */ 0x46, 0x0C, 0x10, 0x81, 0xED, 0x1C, 0x5B, 0xA3, // F.....[. /* 0098 */ 0x38, 0x8D, 0xC2, 0x05, 0x48, 0xC7, 0xD0, 0x08, // 8...H... /* 00A0 */ 0x8E, 0xEB, 0x00, 0xB9, 0x20, 0x01, 0x1A, 0x05, // .... ... /* 00A8 */ 0x58, 0x07, 0x12, 0x60, 0x34, 0x0C, 0xC1, 0x81, // X..`4... /* 00B0 */ 0x1C, 0x01, 0x46, 0x06, 0x84, 0x3C, 0x43, 0x6A, // ..F...dc.&. /* 01B8 */ 0x2C, 0x08, 0x65, 0xA2, 0xD2, 0x64, 0x70, 0x93, // ,.e..dp. /* 01C0 */ 0x82, 0x33, 0xBB, 0x20, 0x47, 0xEF, 0xB3, 0x84, // .3. G... /* 01C8 */ 0xD5, 0x03, 0xEB, 0x40, 0xE2, 0x31, 0x58, 0x37, // ...@.1X7 /* 01D0 */ 0x85, 0x94, 0xD3, 0x68, 0x54, 0x1E, 0x84, 0xB5, // ...hT... /* 01D8 */ 0xC2, 0x08, 0xCE, 0x20, 0x3E, 0x2C, 0x38, 0x04, // ... >,8. /* 01E0 */ 0x84, 0x9C, 0x9C, 0x08, 0x50, 0xE7, 0x00, 0x5F, // ....P.._ /* 01E8 */ 0x0C, 0x3C, 0xB8, 0x23, 0x79, 0x33, 0xF0, 0x48, // .<.#y3.H /* 01F0 */ 0x82, 0xB2, 0x61, 0xFA, 0x40, 0xC0, 0x0F, 0x28, // ..a.@..( /* 01F8 */ 0x86, 0x34, 0xB2, 0xD5, 0x00, 0xD2, 0xFF, 0x3F, // .4.....? /* 0200 */ 0x18, 0xBF, 0x0D, 0xBC, 0x7C, 0x98, 0xC0, 0xBA, // ....|... /* 0208 */ 0x2E, 0x05, 0xD0, 0x4F, 0x1C, 0x1E, 0xC1, 0x09, // ...O.... /* 0210 */ 0x3E, 0x66, 0x3C, 0x6B, 0x1C, 0x12, 0xAC, 0x51, // >f..yE8. /* 0280 */ 0xE7, 0x8D, 0x83, 0x7A, 0x3E, 0xF1, 0xB0, 0x0D, // ...z>... /* 0288 */ 0xEB, 0x91, 0x72, 0x58, 0xA3, 0x85, 0x3D, 0xE0, // ..rX..=. /* 0290 */ 0x57, 0x13, 0x9F, 0x6B, 0x3C, 0x33, 0x63, 0x84, // W..k<3c. /* 0298 */ 0xF5, 0x85, 0x06, 0x1C, 0x80, 0x78, 0xEF, 0x57, // .....x.W /* 02A0 */ 0x0F, 0x32, 0x01, 0x03, 0xB2, 0x63, 0x80, 0xEF, // .2...c.. /* 02A8 */ 0x48, 0xE0, 0xF0, 0x38, 0x35, 0xE2, 0x6B, 0x9E, // H..85.k. /* 02B0 */ 0x02, 0xF1, 0x2C, 0x4E, 0xF5, 0x94, 0x63, 0x3C, // ..,N..c< /* 02B8 */ 0xC1, 0x3C, 0x8E, 0xC0, 0xC0, 0x3A, 0x35, 0xDF, // .<...:5. /* 02C0 */ 0x2C, 0x18, 0xCC, 0x7B, 0x10, 0x83, 0x78, 0x10, // ,..{..x. /* 02C8 */ 0x88, 0x92, 0xC0, 0x39, 0xAF, 0x28, 0xA8, 0x53, // ...9.(.S /* 02D0 */ 0x81, 0x73, 0x5D, 0x51, 0x40, 0x31, 0x9A, 0x37, // .s]Q@1.7 /* 02D8 */ 0x05, 0x83, 0xBD, 0x18, 0x99, 0xC0, 0xFA, 0xEF, // ........ /* 02E0 */ 0x28, 0x28, 0xE5, 0x14, 0xD2, 0x7E, 0x47, 0x41, // ((...~GA /* 02E8 */ 0xA9, 0xBD, 0xA3, 0x50, 0x10, 0x1F, 0x06, 0x9C, // ...P.... /* 02F0 */ 0xE2, 0x1C, 0x81, 0xD6, 0x71, 0x47, 0x41, 0x4E, // ....qGAN /* 02F8 */ 0xC8, 0x87, 0x14, 0xE0, 0xF5, 0xFF, 0x3F, 0x45, // ......?E /* 0300 */ 0xE0, 0xA7, 0x04, 0xFB, 0x76, 0xF5, 0x92, 0x02, // ....v... /* 0308 */ 0xF0, 0x54, 0xC6, 0x25, 0x05, 0x34, 0xFF, 0xFF, // .T.%.4.. /* 0310 */ 0x4B, 0x0A, 0x1F, 0x9B, 0x2F, 0x29, 0xC0, 0xF5, // K.../).. /* 0318 */ 0x1C, 0x88, 0xBB, 0xA4, 0x80, 0x0B, 0x34, 0x5A, // ......4Z /* 0320 */ 0xD0, 0xB3, 0xF2, 0x5C, 0x1E, 0x49, 0x02, 0xBD, // ...\.I.. /* 0328 */ 0x92, 0xC0, 0xC1, 0x7A, 0x26, 0xC1, 0x2A, 0xB4, // ...z&.*. /* 0330 */ 0xE9, 0x53, 0xA3, 0x51, 0xAB, 0x06, 0x65, 0x6A, // .S.Q..ej /* 0338 */ 0x94, 0x69, 0x50, 0xAB, 0x4F, 0xA5, 0xC6, 0x8C, // .iP.O... /* 0340 */ 0x9D, 0x32, 0x2C, 0x61, 0xB1, 0x1A, 0xB6, 0x03, // .2,a.... /* 0348 */ 0x80, 0xD0, 0xF0, 0x14, 0x32, 0x02, 0x22, 0x25, // ....2."% /* 0350 */ 0x2F, 0x42, 0x81, 0x11, 0x10, 0x01, 0x39, 0x0D, // /B....9. /* 0358 */ 0x10, 0x55, 0xFE, 0x06, 0x10, 0x90, 0x73, 0x80, // .U....s. /* 0360 */ 0x08, 0xC8, 0x21, 0x4F, 0x6B, 0x02, 0x72, 0x62, // ..!Ok.rb /* 0368 */ 0x10, 0x01, 0x59, 0xE9, 0x1A, 0x05, 0x64, 0xD9, // ..Y...d. /* 0370 */ 0x20, 0x02, 0xB2, 0x44, 0x13, 0x40, 0x4C, 0x30, // ..D.@L0 /* 0378 */ 0x88, 0x80, 0xFC, 0xFF, 0x07 // ..... }) Method (WMAA, 3, Serialized) { Name (TEMP, Zero) CreateByteField (Arg2, Zero, MODF) CreateDWordField (Arg2, 0x04, LEDB) While (One) { TEMP = Arg1 If ((TEMP == One)) { If ((MODF == Zero)) { Return (\_SB.PCI0.LPC0.EC0.PCBV) /* External reference */ } ElseIf ((MODF == One)) { If ((Acquire (\_SB.PCI0.LPC0.EC0.LFCM, 0xA000) == Zero)) { \_SB.PCI0.LPC0.EC0.PCBV = LEDB /* \_SB_.PCI0.AWMI.WMAA.LEDB */ \_SB.PCI0.LPC0.EC0.SPBL = One Release (\_SB.PCI0.LPC0.EC0.LFCM) } Return (Zero) } ElseIf ((MODF == 0x02)) { Return (0x0320) } Else { Return (One) } } ElseIf ((TEMP == 0x02)) { If ((MODF == Zero)) { Return (0x02) } ElseIf ((MODF == One)) { If ((LEDB < 0x03)) { If ((Acquire (\_SB.PCI0.LPC0.EC0.LFCM, 0xA000) == Zero)) { \_SB.PCI0.LPC0.EC0.PCBS = LEDB /* \_SB_.PCI0.AWMI.WMAA.LEDB */ Release (\_SB.PCI0.LPC0.EC0.LFCM) } Return (Zero) } Return (One) } Else { Return (One) } } Else { Return (One) } Break } } } } }