/* * Intel ACPI Component Architecture * AML/ASL+ Disassembler version 20141107-64 [Jan 2 2015] * Copyright (c) 2000 - 2014 Intel Corporation * * Disassembling to non-symbolic legacy ASL operators * * Disassembly of SSDT-7.aml, Sun Mar 6 08:30:05 2016 * * Original Table Header: * Signature "SSDT" * Length 0x000007E3 (2019) * Revision 0x01 * Checksum 0x84 * OEM ID "SgRef" * OEM Table ID "SgTabl" * OEM Revision 0x00001000 (4096) * Compiler ID "INTL" * Compiler Version 0x20051117 (537202967) */ DefinitionBlock ("SSDT-7.aml", "SSDT", 1, "SgRef", "SgTabl", 0x00001000) { External (_SB_.PCI0.IGPU._DOD, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD01._ADR, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD01._DGS, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD02._ADR, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD02._BCL, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD02._BCM, MethodObj) // 1 Arguments External (_SB_.PCI0.IGPU.DD02._BQC, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD02._DCS, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD02._DGS, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD03._ADR, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD03._DGS, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD04._ADR, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD04._DGS, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD05._ADR, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD05._DGS, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD06._ADR, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD06._DGS, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD07._ADR, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD07._DGS, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD08._ADR, MethodObj) // 0 Arguments External (_SB_.PCI0.IGPU.DD08._DGS, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0, DeviceObj) External (_SB_.PCI0.PEG0.PEGP, DeviceObj) External (_SB_.PCI0.PEG0.PEGP._ADR, IntObj) External (EECP, FieldUnitObj) External (GBAS, FieldUnitObj) External (GPRW, MethodObj) // 2 Arguments External (HLRS, FieldUnitObj) External (PWEN, FieldUnitObj) External (PWOK, FieldUnitObj) External (SGGP, FieldUnitObj) External (SGMD, FieldUnitObj) External (XBAS, FieldUnitObj) Scope (\_SB.PCI0.PEG0) { OperationRegion (RPCI, PCI_Config, Zero, 0xF0) Field (RPCI, DWordAcc, Lock, Preserve) { Offset (0x02), BDID, 16, Offset (0xB0), ASPM, 2, , 2, LNKD, 1 } OperationRegion (RPCX, SystemMemory, \XBAS, 0x9000) Field (RPCX, DWordAcc, NoLock, Preserve) { Offset (0x8214), Offset (0x8216), LNKS, 4, Offset (0x8C20), , 4, AFES, 2 } Device (PEGA) { Name (_ADR, One) // _ADR: Address OperationRegion (ACAP, PCI_Config, \EECP, 0x14) Field (ACAP, DWordAcc, NoLock, Preserve) { Offset (0x10), LCT1, 16 } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } } } Scope (\_SB.PCI0.PEG0) { Device (PEGH) { Name (_ADR, One) // _ADR: Address OperationRegion (PCIS, PCI_Config, Zero, 0xF0) Field (PCIS, DWordAcc, Lock, Preserve) { DVID, 16, Offset (0x2C), SVID, 16, SDID, 16, Offset (0x40), SSID, 32 } } } Scope (\_SB.PCI0.PEG0.PEGP) { Name (ELCT, Zero) Name (HVID, Zero) OperationRegion (PCIS, PCI_Config, Zero, 0xF0) Field (PCIS, DWordAcc, Lock, Preserve) { DVID, 16, Offset (0x2C), SVID, 16, SDID, 16, Offset (0x40), SSID, 32 } OperationRegion (GPIO, SystemIO, \GBAS, 0x60) Field (GPIO, ByteAcc, Lock, Preserve) { Offset (0x0C), LVL0, 32, Offset (0x38), LVL1, 32, Offset (0x48), LVL2, 32 } OperationRegion (PCAP, PCI_Config, \EECP, 0x14) Field (PCAP, DWordAcc, NoLock, Preserve) { Offset (0x10), LCTL, 16 } Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (Zero, \_SB.PCI0.PEG0.PEGP._ADR) } Method (SGON, 0, Serialized) { If (LEqual (SGPI (PWEN), Zero)) { SGPO (HLRS, One) SGPO (PWEN, One) Sleep (0x78) SGPO (HLRS, Zero) Sleep (0x1E) Store (Zero, AFES) } Store (Zero, LNKD) While (LLess (LNKS, 0x07)) { Sleep (One) } Store (HVID, SSID) Store (HVID, \_SB.PCI0.PEG0.PEGH.SSID) Or (And (ELCT, 0x43), And (LCTL, 0xFFBC), LCTL) Or (And (ELCT, 0x43), And (\_SB.PCI0.PEG0.PEGA.LCT1, 0xFFBC), \_SB.PCI0.PEG0.PEGA.LCT1) Return (One) } Method (SGOF, 0, Serialized) { Store (LCTL, ELCT) Store (SSID, HVID) Store (One, LNKD) While (LNotEqual (LNKS, Zero)) { Sleep (One) } Store (0x02, AFES) SGPO (HLRS, One) SGPO (PWEN, Zero) Return (Zero) } Method (SGST, 0, Serialized) { If (And (SGMD, 0x0F)) { If (LNotEqual (SGGP, One)) { Return (0x0F) } If (LEqual (SGPI (PWOK), One)) { Return (0x0F) } Return (Zero) } If (LNotEqual (DVID, 0xFFFF)) { Return (0x0F) } Return (Zero) } Method (_DOD, 0, NotSerialized) // _DOD: Display Output Devices { Return (\_SB.PCI0.IGPU._DOD ()) } Device (DD01) { Method (_ADR, 0, Serialized) // _ADR: Address { Return (\_SB.PCI0.IGPU.DD01._ADR ()) } Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status { } Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State { Return (\_SB.PCI0.IGPU.DD01._DGS ()) } Method (_DSS, 1, NotSerialized) // _DSS: Device Set State { } } Device (DD02) { Method (_ADR, 0, Serialized) // _ADR: Address { Return (\_SB.PCI0.IGPU.DD02._ADR ()) } Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status { Return (\_SB.PCI0.IGPU.DD02._DCS ()) } Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State { Return (\_SB.PCI0.IGPU.DD02._DGS ()) } Method (_DSS, 1, NotSerialized) // _DSS: Device Set State { } Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels { Return (\_SB.PCI0.IGPU.DD02._BCL ()) } Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current { Return (\_SB.PCI0.IGPU.DD02._BQC ()) } Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method { Return (\_SB.PCI0.IGPU.DD02._BCM (Arg0)) } } Device (DD03) { Method (_ADR, 0, Serialized) // _ADR: Address { Return (\_SB.PCI0.IGPU.DD03._ADR ()) } Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status { } Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State { Return (\_SB.PCI0.IGPU.DD03._DGS ()) } Method (_DSS, 1, NotSerialized) // _DSS: Device Set State { } } Device (DD04) { Method (_ADR, 0, Serialized) // _ADR: Address { Return (\_SB.PCI0.IGPU.DD04._ADR ()) } Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status { } Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State { Return (\_SB.PCI0.IGPU.DD04._DGS ()) } Method (_DSS, 1, NotSerialized) // _DSS: Device Set State { } } Device (DD05) { Method (_ADR, 0, Serialized) // _ADR: Address { Return (\_SB.PCI0.IGPU.DD05._ADR ()) } Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status { } Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State { Return (\_SB.PCI0.IGPU.DD05._DGS ()) } Method (_DSS, 1, NotSerialized) // _DSS: Device Set State { } } Device (DD06) { Method (_ADR, 0, Serialized) // _ADR: Address { Return (\_SB.PCI0.IGPU.DD06._ADR ()) } Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status { } Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State { Return (\_SB.PCI0.IGPU.DD06._DGS ()) } Method (_DSS, 1, NotSerialized) // _DSS: Device Set State { } } Device (DD07) { Method (_ADR, 0, Serialized) // _ADR: Address { Return (\_SB.PCI0.IGPU.DD07._ADR ()) } Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status { } Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State { Return (\_SB.PCI0.IGPU.DD07._DGS ()) } Method (_DSS, 1, NotSerialized) // _DSS: Device Set State { } } Device (DD08) { Method (_ADR, 0, Serialized) // _ADR: Address { Return (\_SB.PCI0.IGPU.DD08._ADR ()) } Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status { } Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State { Return (\_SB.PCI0.IGPU.DD08._DGS ()) } Method (_DSS, 1, NotSerialized) // _DSS: Device Set State { } } Method (SGPI, 1, Serialized) { ShiftRight (Arg0, 0x07, Local1) And (Arg0, 0x7F, Arg0) If (LLess (Arg0, 0x20)) { Store (\_SB.PCI0.PEG0.PEGP.LVL0, Local0) ShiftRight (Local0, Arg0, Local0) } Else { If (LLess (Arg0, 0x40)) { Store (\_SB.PCI0.PEG0.PEGP.LVL1, Local0) ShiftRight (Local0, Subtract (Arg0, 0x20), Local0) } Else { Store (\_SB.PCI0.PEG0.PEGP.LVL2, Local0) ShiftRight (Local0, Subtract (Arg0, 0x40), Local0) } } If (LEqual (Local1, Zero)) { Not (Local0, Local0) } Return (And (Local0, One)) } Method (SGPO, 2, Serialized) { ShiftRight (Arg0, 0x07, Local3) And (Arg0, 0x7F, Arg0) If (LEqual (Local3, Zero)) { Not (Arg1, Local3) And (Local3, One, Local3) } Else { And (Arg1, One, Local3) } If (LLess (Arg0, 0x20)) { ShiftLeft (Local3, Arg0, Local0) ShiftLeft (One, Arg0, Local1) And (\_SB.PCI0.PEG0.PEGP.LVL0, Not (Local1), Local2) Or (Local2, Local0, \_SB.PCI0.PEG0.PEGP.LVL0) } Else { If (LLess (Arg0, 0x40)) { ShiftLeft (Local3, Subtract (Arg0, 0x20), Local0) ShiftLeft (One, Subtract (Arg0, 0x20), Local1) And (\_SB.PCI0.PEG0.PEGP.LVL1, Not (Local1), Local2) Or (Local2, Local0, \_SB.PCI0.PEG0.PEGP.LVL1) } Else { If (LLess (Arg0, 0x7F)) { ShiftLeft (Local3, Subtract (Arg0, 0x40), Local0) ShiftLeft (One, Subtract (Arg0, 0x40), Local1) And (\_SB.PCI0.PEG0.PEGP.LVL2, Not (Local1), Local2) Or (Local2, Local0, \_SB.PCI0.PEG0.PEGP.LVL2) } } } Return (One) } } Scope (_SB) { Device (PNLF) { Name (_ADR, Zero) Name (_HID, EisaId ("APP0002")) Name (_CID, "backlight") Name (_UID, 10) Name (_STA, 0x0B) } } }