Asus F3Ke DSDT
public c v1 · immutable/*
* Intel ACPI Component Architecture
* AML Disassembler version 20080701
*
* Disassembly of dsdt_v211.dat, Sat Jul 26 16:28:42 2008
*
*
* Original Table Header:
* Signature "DSDT"
* Length 0x000096EE (38638)
* Revision 0x01 **** ACPI 1.0, no 64-bit math support
* Checksum 0x77
* OEM ID "F3K00"
* OEM Table ID "F3K00001"
* OEM Revision 0x00000001 (1)
* Compiler ID "INTL"
* Compiler Version 0x20051117 (537202967)
*/
DefinitionBlock ("dsdt_v211.aml", "DSDT", 1, "F3K00", "F3K00001", 0x00000001)
{
Scope (_SB)
{
Name (ATKP, Zero)
Device (ATKD)
{
Name (_HID, "ATK0100")
Name (_UID, 0x01010100)
Method (INIT, 1, NotSerialized)
{
Store (One, ATKP)
Return (MNAM)
}
Method (BSTS, 0, NotSerialized)
{
Store (IKFG, Local0)
Or (Local0, ShiftLeft (IKF2, 0x08), Local0)
If (ACPF)
{
And (Local0, 0xFF7F, Local0)
}
Return (Local0)
}
Method (TMPR, 0, NotSerialized)
{
Store (\_TZ.RTMP (), Local0)
Store (\_TZ.RFAN (Zero), Local1)
ShiftLeft (Local1, 0x10, Local1)
Add (\_TZ.KELV (Local0), Local1, Local0)
Store (Zero, Local2)
If (TENA)
{
Store (TDTY, Local2)
}
Else
{
Store (HKTH (), Local3)
If (LNotEqual (Local3, 0xFFFF))
{
Store (Local3, Local2)
}
}
ShiftLeft (Local2, 0x18, Local2)
Add (Local0, Local2, Local0)
Store (\_TZ.RFSE (), Local3)
ShiftLeft (Local3, 0x1C, Local3)
Add (Local0, Local3, Local0)
Return (Local0)
}
Method (SFUN, 0, NotSerialized)
{
Store (0x37, Local0)
Or (Local0, 0x40, Local0)
Or (Local0, 0x0800, Local0)
Or (Local0, 0x00020000, Local0)
Return (Local0)
}
Method (OSVR, 1, NotSerialized)
{
}
Method (GPLV, 0, NotSerialized)
{
Return (LBTN)
}
Method (SPLV, 1, NotSerialized)
{
Store (Arg0, LBTN)
^^PCI0.SBRG.EC0.STBR ()
}
Method (WLED, 1, NotSerialized)
{
Store (Arg0, WRST)
OWLD (Arg0)
}
Method (BLED, 1, NotSerialized)
{
Store (Arg0, BRST)
OBTD (Arg0)
}
Method (RSTS, 0, NotSerialized)
{
Return (ORST ())
}
Method (SDSP, 1, NotSerialized)
{
If (NATK ())
{
SWHG (Arg0)
}
}
Method (GPID, 0, NotSerialized)
{
Return (LCDR)
}
Method (HWRS, 0, NotSerialized)
{
Return (OHWR ())
}
Method (GLCD, 0, NotSerialized)
{
Return (LCDV)
}
Name (WAPF, Zero)
Method (CWAP, 1, NotSerialized)
{
Or (Arg0, WAPF, WAPF)
OWAP (Arg0)
Return (One)
}
Name (PCDV, Zero)
Method (WDOG, 1, NotSerialized)
{
If (LEqual (Arg0, Zero))
{
Store (PTIM, PCDV)
Return (0x3C)
}
If (LEqual (Arg0, One))
{
If (^^LID._LID ())
{
Store (PTIM, PCDV)
Return (One)
}
If (LLess (\_TZ.RLTM (), PTMP))
{
Store (PTIM, PCDV)
Return (One)
}
Decrement (PCDV)
If (LEqual (PCDV, Zero))
{
Store (PTIM, PCDV)
Notify (ATKD, 0x6D)
}
Return (One)
}
Return (Zero)
}
Method (QMOD, 1, NotSerialized)
{
If (LEqual (Arg0, Zero))
{
Return (One)
}
If (LEqual (Arg0, One))
{
ShiftLeft (QFAN, 0x10, Local0)
Add (Local0, 0x98B6, Local0)
ECRW (Local0)
}
If (LEqual (Arg0, 0x02))
{
ECRW (0x00FF98B6)
}
Return (One)
}
Method (ANVI, 1, Serialized)
{
Store (ASMI (Arg0), Local0)
Return (Local0)
}
Method (PSTC, 1, Serialized)
{
If (LEqual (Arg0, Zero))
{
Return (PSTN)
}
If (ACPF)
{
ShiftRight (PSTN, 0x08, Local0)
}
Else
{
And (PSTN, 0xFF, Local0)
}
If (LGreater (Arg0, Local0))
{
Return (Ones)
}
Store (Arg0, SLMT)
Notify (\_PR.P001, 0x80)
If (LGreaterEqual (CPUN, 0x02))
{
Notify (\_PR.P002, 0x80)
}
Return (Zero)
}
Method (HKEY, 0, NotSerialized)
{
Store (^^PCI0.SBRG.EC0.CDT1, Local0)
}
Method (KBFT, 1, NotSerialized)
{
Store (Arg0, ^^PCI0.SBRG.EC0.HKEN)
Return (Zero)
}
Method (SMBB, 1, Serialized)
{
ShiftRight (Arg0, 0x10, Local0)
And (Local0, 0xFF, Local0)
ShiftRight (Arg0, 0x18, Local1)
And (Arg0, 0xFF, Local2)
If (And (Local1, One))
{
Return (RBYT (Local1, Local0))
}
Else
{
Return (WBYT (Local1, Local0, Local2))
}
}
Method (SMBW, 1, Serialized)
{
ShiftRight (Arg0, 0x10, Local0)
And (Local0, 0xFF, Local0)
ShiftRight (Arg0, 0x18, Local1)
And (Arg0, 0xFF, Local2)
If (And (Local1, One))
{
Return (RWRD (Local1, Local0))
}
Else
{
Return (WWRD (Local1, Local0, Local2))
}
}
Method (SMBK, 1, Serialized)
{
ShiftRight (Arg0, 0x08, Local0)
And (Local0, 0xFF, Local0)
If (Local0)
{
ShiftRight (Arg0, 0x10, Local0)
And (Local0, 0xFF, Local0)
ShiftRight (Arg0, 0x18, Local1)
And (Local1, 0xFF, Local1)
And (Arg0, 0x0F, Local3)
If (And (Local1, One))
{
RBLK (Local1, Local0, Local3)
}
Else
{
WBLK (Local1, Local0, Local3)
}
Return (Zero)
}
Else
{
ShiftRight (Arg0, 0x10, Local2)
And (Local2, 0xFF, Local2)
ShiftRight (Arg0, 0x18, Local1)
If (And (Local1, One))
{
Return (DerefOf (Index (RBUF, Local2)))
}
Else
{
And (Arg0, 0xFF, Local1)
Store (Local1, Index (RBUF, Local2))
Return (Zero)
}
}
}
Method (ECRW, 1, Serialized)
{
ShiftRight (Arg0, 0x18, Local0)
And (Local0, 0xFF, Local0)
ShiftRight (Arg0, 0x10, Local1)
And (Local1, 0xFF, Local1)
ShiftRight (Arg0, 0x08, Local2)
And (Local2, 0xFF, Local2)
And (Arg0, 0xFF, Local3)
If (LNotEqual (Acquire (^^PCI0.SBRG.EC0.MUEC, 0xFFFF), Zero))
{
Return (Ones)
}
Store (Local0, ^^PCI0.SBRG.EC0.CDT3)
Store (Local1, ^^PCI0.SBRG.EC0.CDT2)
Store (Local2, ^^PCI0.SBRG.EC0.CDT1)
Store (Local3, ^^PCI0.SBRG.EC0.CMD1)
Store (0x05, Local0)
While (LAnd (Local0, ^^PCI0.SBRG.EC0.CMD1))
{
Sleep (One)
Decrement (Local0)
}
Store (^^PCI0.SBRG.EC0.CDT3, Local0)
Store (^^PCI0.SBRG.EC0.CDT2, Local1)
Store (^^PCI0.SBRG.EC0.CDT1, Local2)
Store (^^PCI0.SBRG.EC0.CMD1, Local3)
Release (^^PCI0.SBRG.EC0.MUEC)
ShiftLeft (Local0, 0x08, Local0)
Or (Local0, Local1, Local0)
ShiftLeft (Local0, 0x08, Local0)
Or (Local0, Local2, Local0)
ShiftLeft (Local0, 0x08, Local0)
Or (Local0, Local3, Local0)
Return (Local0)
}
}
}
OperationRegion (ACMS, SystemIO, 0x72, 0x02)
Field (ACMS, ByteAcc, NoLock, Preserve)
{
ICMS, 8,
DCMS, 8
}
IndexField (ICMS, DCMS, ByteAcc, NoLock, Preserve)
{
Offset (0x01),
Offset (0x04),
Offset (0x08),
BS_A, 32,
REV0, 8,
REV1, 8
}
OperationRegion (ACAF, SystemMemory, BS_A, 0x20)
Field (ACAF, AnyAcc, NoLock, Preserve)
{
OCC0, 1,
OCC1, 1,
OCC2, 1,
OCC3, 1,
OCC4, 1,
OCC5, 1,
OCC6, 1,
OCC7, 1,
OCC8, 1,
OCC9, 1,
Offset (0x02),
TPMR, 1,
STHP, 1,
SHPG, 1,
OSCF, 1,
Offset (0x04),
PCIE, 32,
HPBS, 32,
OCM0, 4,
OCM1, 4,
OCM2, 4,
OCM3, 4,
OCM4, 4,
OCM5, 4,
OCM6, 4,
OCM7, 4,
OCM8, 4,
OCM9, 4,
Offset (0x14),
P92T, 8
}
OperationRegion (CMPT, SystemIO, 0x0C50, 0x03)
Field (CMPT, ByteAcc, NoLock, Preserve)
{
CMID, 8,
, 6,
GPCT, 2,
GP0I, 1,
GP1I, 1,
GP2I, 1,
GP3I, 1,
GP4I, 1,
GP5I, 1,
GP6I, 1,
GP7I, 1
}
OperationRegion (PCFG, SystemMemory, PCIE, 0x02000000)
Field (PCFG, AnyAcc, NoLock, Preserve)
{
Offset (0x90024),
STB5, 32,
Offset (0x98042),
PT0D, 1,
PT1D, 1,
PT2D, 1,
PT3D, 1,
PT4D, 1,
PT5D, 1,
PT6D, 1,
PT7D, 1,
PT8D, 1,
PT9D, 1,
Offset (0xA0004),
SMIE, 1,
SMME, 1,
Offset (0xA0008),
RVID, 8,
Offset (0xA0014),
SMB1, 32,
Offset (0xA0078),
, 14,
P92E, 1
}
OperationRegion (BAR, SystemMemory, STB5, 0x1000)
Field (BAR, AnyAcc, NoLock, Preserve)
{
Offset (0x120),
, 7,
PMBY, 1,
Offset (0x128),
PMS0, 4,
Offset (0x129),
PMS1, 4,
Offset (0x12C),
DET0, 4,
Offset (0x130),
Offset (0x132),
PRC0, 1,
Offset (0x1A0),
, 7,
SMBY, 1,
Offset (0x1A8),
SMS0, 4,
Offset (0x1A9),
SMS1, 4,
Offset (0x1AC),
DET1, 4,
Offset (0x1B0),
Offset (0x1B2),
PRC1, 1,
Offset (0x220),
, 7,
PSBY, 1,
Offset (0x228),
PSS0, 4,
Offset (0x229),
PSS1, 4,
Offset (0x22C),
DET2, 4,
Offset (0x230),
Offset (0x232),
PRC2, 1,
Offset (0x2A0),
, 7,
SSBY, 1,
Offset (0x2A8),
SSS0, 4,
Offset (0x2A9),
SSS1, 4,
Offset (0x2AC),
DET3, 4,
Offset (0x2B0),
Offset (0x2B2),
PRC3, 1
}
OperationRegion (PMIO, SystemIO, 0x0CD6, 0x02)
Field (PMIO, ByteAcc, NoLock, Preserve)
{
INPM, 8,
DAPM, 8
}
IndexField (INPM, DAPM, ByteAcc, NoLock, Preserve)
{
, 1,
TM1E, 1,
TM2E, 1,
Offset (0x01),
, 1,
TM1S, 1,
TM2S, 1,
Offset (0x04),
, 7,
SLPS, 1,
Offset (0x07),
, 7,
CLPS, 1,
Offset (0x10),
, 6,
PWDE, 1,
Offset (0x1C),
, 3,
MKME, 1,
PI3E, 1,
PI2E, 1,
PI1E, 1,
PI0E, 1,
, 3,
MKMS, 1,
PI3S, 1,
PI2S, 1,
PI1S, 1,
PI0S, 1,
Offset (0x20),
P1EB, 16,
Offset (0x36),
, 6,
GV6P, 1,
GV7P, 1,
, 3,
GM0P, 1,
GM1P, 1,
GM2P, 1,
GM3P, 1,
GM8P, 1,
, 1,
GM4P, 1,
GM5P, 1,
, 1,
GM6P, 1,
GM7P, 1,
Offset (0x3B),
GPX0, 1,
GPX4, 1,
GPX5, 1,
GPX1, 1,
GPX6, 1,
GPX7, 1,
GPX2, 1,
GPX3, 1,
Offset (0x55),
SPRE, 1,
, 1,
, 1,
EPNM, 1,
DPPF, 1,
FNGS, 1,
Offset (0x61),
, 7,
R617, 1,
Offset (0x65),
, 4,
RSTU, 1,
Offset (0x68),
, 3,
TPDE, 1,
, 1,
Offset (0x92),
, 7,
GV7S, 1,
Offset (0x96),
GP8I, 1,
GP9I, 1,
Offset (0x9A),
, 7,
HECO, 1,
Offset (0xA8),
PI4E, 1,
PI5E, 1,
PI6E, 1,
PI7E, 1,
Offset (0xA9),
PI4S, 1,
PI5S, 1,
PI6S, 1,
PI7S, 1
}
OperationRegion (P1E0, SystemIO, P1EB, 0x04)
Field (P1E0, ByteAcc, NoLock, Preserve)
{
, 14,
PEWS, 1,
WSTA, 1,
, 14,
PEWD, 1
}
Method (C_OC, 0, NotSerialized)
{
Sleep (0x14)
Store (0x13, CMID)
Store (Zero, GPCT)
}
Method (U_OC, 2, NotSerialized)
{
If (LEqual (OCM0, Arg0))
{
Store (Arg1, PT0D)
}
If (LEqual (OCM1, Arg0))
{
Store (Arg1, PT1D)
}
If (LEqual (OCM2, Arg0))
{
Store (Arg1, PT2D)
}
If (LEqual (OCM3, Arg0))
{
Store (Arg1, PT3D)
}
If (LEqual (OCM4, Arg0))
{
Store (Arg1, PT4D)
}
If (LEqual (OCM5, Arg0))
{
Store (Arg1, PT5D)
}
If (LEqual (OCM6, Arg0))
{
Store (Arg1, PT6D)
}
If (LEqual (OCM7, Arg0))
{
Store (Arg1, PT7D)
}
If (LEqual (OCM8, Arg0))
{
Store (Arg1, PT8D)
}
If (LEqual (OCM9, Arg0))
{
Store (Arg1, PT9D)
}
}
Method (SPTS, 1, NotSerialized)
{
If (LEqual (Arg0, 0x03))
{
Store (Zero, RSTU)
}
Store (One, CLPS)
Store (One, SLPS)
If (LLessEqual (RVID, 0x13))
{
Store (Zero, PWDE)
}
If (LEqual (P92T, Zero))
{
Store (Zero, PI0E)
}
If (LEqual (P92T, One))
{
Store (Zero, PI1E)
}
If (LEqual (P92T, 0x02))
{
Store (Zero, PI2E)
}
If (LEqual (P92T, 0x03))
{
Store (Zero, PI3E)
}
If (LEqual (P92T, 0x04))
{
Store (Zero, PI4E)
}
If (LEqual (P92T, 0x05))
{
Store (Zero, PI5E)
}
If (LEqual (P92T, 0x06))
{
Store (Zero, PI6E)
}
If (LEqual (P92T, 0x07))
{
Store (Zero, PI7E)
}
If (LLessEqual (P92T, 0x07))
{
Store (One, P92E)
}
}
Method (SWAK, 1, NotSerialized)
{
Store (One, HECO)
If (LEqual (Arg0, 0x03))
{
Store (One, RSTU)
}
Store (PEWS, PEWS)
If (LLessEqual (P92T, 0x07))
{
Store (Zero, P92E)
}
If (LEqual (P92T, Zero))
{
Store (One, PI0E)
}
If (LEqual (P92T, One))
{
Store (One, PI1E)
}
If (LEqual (P92T, 0x02))
{
Store (One, PI2E)
}
If (LEqual (P92T, 0x03))
{
Store (One, PI3E)
}
If (LEqual (P92T, 0x04))
{
Store (One, PI4E)
}
If (LEqual (P92T, 0x05))
{
Store (One, PI5E)
}
If (LEqual (P92T, 0x06))
{
Store (One, PI6E)
}
If (LEqual (P92T, 0x07))
{
Store (One, PI7E)
}
}
Method (TRMD, 1, NotSerialized)
{
Store (Arg0, SPRE)
Store (Arg0, TPDE)
}
If (OCC0)
{
Scope (_GPE)
{
Method (_L13, 0, NotSerialized)
{
C_OC ()
If (LEqual (GP0I, GM0P))
{
Not (GM0P, GM0P)
U_OC (Zero, GM0P)
}
}
}
}
If (OCC1)
{
Scope (_GPE)
{
Method (_L14, 0, NotSerialized)
{
C_OC ()
If (LEqual (GP1I, GM1P))
{
Not (GM1P, GM1P)
U_OC (One, GM1P)
}
}
}
}
If (OCC2) {}
If (OCC3)
{
Scope (_GPE)
{
Method (_L16, 0, NotSerialized)
{
C_OC ()
If (LEqual (GP3I, GM3P))
{
Not (GM3P, GM3P)
U_OC (0x03, GM3P)
}
}
}
}
If (OCC4)
{
Scope (_GPE)
{
Method (_L19, 0, NotSerialized)
{
C_OC ()
If (LEqual (GP4I, GM4P))
{
Not (GM4P, GM4P)
U_OC (0x04, GM4P)
}
}
}
}
If (OCC5)
{
Scope (_GPE)
{
Method (_L1A, 0, NotSerialized)
{
C_OC ()
If (LEqual (GP5I, GM5P))
{
Not (GM5P, GM5P)
U_OC (0x05, GM5P)
}
}
}
}
If (OCC6)
{
Scope (_GPE)
{
Method (_L1C, 0, NotSerialized)
{
C_OC ()
If (LEqual (GP6I, GM6P))
{
Not (GV6P, GV6P)
U_OC (0x06, GV6P)
}
}
}
}
If (OCC7)
{
Scope (_GPE)
{
Method (_L1D, 0, NotSerialized)
{
C_OC ()
If (LEqual (GP7I, GM7P))
{
Not (GV7P, GV7P)
U_OC (0x07, GV7P)
}
}
}
}
If (OCC8)
{
Scope (_GPE)
{
Method (_L17, 0, NotSerialized)
{
C_OC ()
If (LEqual (GP8I, GM8P))
{
Not (GM8P, GM8P)
U_OC (0x08, GM8P)
}
}
}
}
If (OCC9)
{
Scope (_GPE)
{
Method (_L0E, 0, NotSerialized)
{
C_OC ()
If (LEqual (GP9I, Zero))
{
U_OC (0x09, One)
}
}
}
}
Name (DP80, 0x80)
Name (DP90, 0x90)
Name (UMRS, One)
Name (APIC, One)
Name (PMBS, 0x0800)
Name (PMLN, 0xA0)
Name (GPBS, Zero)
Name (GPLN, Zero)
Name (SMBB, 0x0B10)
Name (SMBL, 0x10)
Name (PCIB, 0xE0000000)
Name (PCIL, 0x10000000)
Name (HTTC, Zero)
Name (MBLF, 0x0A)
OperationRegion (BIOS, SystemMemory, 0x7FFAE064, 0xFF)
Field (BIOS, ByteAcc, NoLock, Preserve)
{
SS1, 1,
SS2, 1,
SS3, 1,
SS4, 1,
Offset (0x01),
IOST, 16,
TOPM, 32,
ROMS, 32,
MG1B, 32,
MG1L, 32,
MG2B, 32,
MG2L, 32,
Offset (0x1C),
DMAX, 8,
HPTA, 32,
CPB0, 32,
CPB1, 32,
CPB2, 32,
CPB3, 32,
ASSB, 8,
AOTB, 8,
AAXB, 32,
TPMF, 8,
GP3S, 32,
GP3L, 32,
MH1B, 32,
MH1L, 32,
BSLT, 32,
MB0B, 32,
MB0L, 32
}
Method (RRIO, 4, NotSerialized)
{
Store ("RRIO", Debug)
}
Method (RDMA, 3, NotSerialized)
{
Store ("rDMA", Debug)
}
Name (PICM, Zero)
Method (_PIC, 1, NotSerialized)
{
If (Arg0)
{
DIAG (0xAA)
}
Else
{
DIAG (0xAC)
}
Store (Arg0, PICM)
}
Name (OSVR, Ones)
Method (OSFL, 0, NotSerialized)
{
If (LNotEqual (OSVR, Ones))
{
Return (OSVR)
}
If (LEqual (PICM, Zero))
{
Store (0xAC, DBG8)
}
Store (One, OSVR)
If (CondRefOf (_OSI, Local1))
{
If (_OSI ("Windows 2000"))
{
Store (0x04, OSVR)
}
If (_OSI ("Windows 2001"))
{
Store (Zero, OSVR)
}
If (_OSI ("Windows 2001 SP1"))
{
Store (Zero, OSVR)
}
If (_OSI ("Windows 2001 SP2"))
{
Store (Zero, OSVR)
}
If (_OSI ("Windows 2001.1"))
{
Store (Zero, OSVR)
}
If (_OSI ("Windows 2001.1 SP1"))
{
Store (Zero, OSVR)
}
If (_OSI ("Windows 2006"))
{
Store (Zero, OSVR)
}
}
Else
{
If (MCTH (_OS, "Microsoft Windows NT"))
{
Store (0x04, OSVR)
}
Else
{
If (MCTH (_OS, "Microsoft WindowsME: Millennium Edition"))
{
Store (0x02, OSVR)
}
If (MCTH (_OS, "Linux"))
{
Store (0x03, OSVR)
}
}
}
Return (OSVR)
}
Method (MCTH, 2, NotSerialized)
{
If (LLess (SizeOf (Arg0), SizeOf (Arg1)))
{
Return (Zero)
}
Add (SizeOf (Arg0), One, Local0)
Name (BUF0, Buffer (Local0) {})
Name (BUF1, Buffer (Local0) {})
Store (Arg0, BUF0)
Store (Arg1, BUF1)
While (Local0)
{
Decrement (Local0)
If (LNotEqual (DerefOf (Index (BUF0, Local0)), DerefOf (Index (
BUF1, Local0))))
{
Return (Zero)
}
}
Return (One)
}
Name (PRWP, Package (0x02)
{
Zero,
Zero
})
Method (GPRW, 2, NotSerialized)
{
Store (Arg0, Index (PRWP, Zero))
Store (ShiftLeft (SS1, One), Local0)
Or (Local0, ShiftLeft (SS2, 0x02), Local0)
Or (Local0, ShiftLeft (SS3, 0x03), Local0)
Or (Local0, ShiftLeft (SS4, 0x04), Local0)
If (And (ShiftLeft (One, Arg1), Local0))
{
Store (Arg1, Index (PRWP, One))
}
Else
{
ShiftRight (Local0, One, Local0)
If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
{
FindSetLeftBit (Local0, Index (PRWP, One))
}
Else
{
FindSetRightBit (Local0, Index (PRWP, One))
}
}
Return (PRWP)
}
Name (WAKP, Package (0x02)
{
Zero,
Zero
})
OperationRegion (DEB0, SystemIO, DP80, One)
Field (DEB0, ByteAcc, NoLock, Preserve)
{
DBG8, 8
}
OperationRegion (DEB1, SystemIO, DP90, 0x02)
Field (DEB1, WordAcc, NoLock, Preserve)
{
DBG9, 16
}
Scope (_PR)
{
Processor (P001, 0x01, 0x00000810, 0x06) {}
Processor (P002, 0x02, 0x00000000, 0x00) {}
Alias (P001, CPU1)
Alias (P002, CPU2)
}
Scope (_SB)
{
Name (PR00, Package (0x1D)
{
Package (0x04)
{
0x0014FFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x0014FFFF,
One,
LNKB,
Zero
},
Package (0x04)
{
0x0014FFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x0014FFFF,
0x03,
LNKD,
Zero
},
Package (0x04)
{
0x0013FFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x0013FFFF,
One,
LNKB,
Zero
},
Package (0x04)
{
0x0013FFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x0013FFFF,
0x03,
LNKD,
Zero
},
Package (0x04)
{
0x0012FFFF,
Zero,
LNKG,
Zero
},
Package (0x04)
{
0x0002FFFF,
Zero,
LNKC,
Zero
},
Package (0x04)
{
0x0002FFFF,
One,
LNKD,
Zero
},
Package (0x04)
{
0x0002FFFF,
0x02,
LNKA,
Zero
},
Package (0x04)
{
0x0002FFFF,
0x03,
LNKB,
Zero
},
Package (0x04)
{
0x0004FFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x0004FFFF,
One,
LNKB,
Zero
},
Package (0x04)
{
0x0004FFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x0004FFFF,
0x03,
LNKD,
Zero
},
Package (0x04)
{
0x0005FFFF,
Zero,
LNKB,
Zero
},
Package (0x04)
{
0x0005FFFF,
One,
LNKC,
Zero
},
Package (0x04)
{
0x0005FFFF,
0x02,
LNKD,
Zero
},
Package (0x04)
{
0x0005FFFF,
0x03,
LNKA,
Zero
},
Package (0x04)
{
0x0006FFFF,
Zero,
LNKC,
Zero
},
Package (0x04)
{
0x0006FFFF,
One,
LNKD,
Zero
},
Package (0x04)
{
0x0006FFFF,
0x02,
LNKA,
Zero
},
Package (0x04)
{
0x0006FFFF,
0x03,
LNKB,
Zero
},
Package (0x04)
{
0x0007FFFF,
Zero,
LNKD,
Zero
},
Package (0x04)
{
0x0007FFFF,
One,
LNKA,
Zero
},
Package (0x04)
{
0x0007FFFF,
0x02,
LNKB,
Zero
},
Package (0x04)
{
0x0007FFFF,
0x03,
LNKC,
Zero
}
})
Name (AR00, Package (0x1D)
{
Package (0x04)
{
0x0014FFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x0014FFFF,
One,
Zero,
0x11
},
Package (0x04)
{
0x0014FFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x0014FFFF,
0x03,
Zero,
0x13
},
Package (0x04)
{
0x0013FFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x0013FFFF,
One,
Zero,
0x11
},
Package (0x04)
{
0x0013FFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x0013FFFF,
0x03,
Zero,
0x13
},
Package (0x04)
{
0x0012FFFF,
Zero,
Zero,
0x16
},
Package (0x04)
{
0x0002FFFF,
Zero,
Zero,
0x12
},
Package (0x04)
{
0x0002FFFF,
One,
Zero,
0x13
},
Package (0x04)
{
0x0002FFFF,
0x02,
Zero,
0x10
},
Package (0x04)
{
0x0002FFFF,
0x03,
Zero,
0x11
},
Package (0x04)
{
0x0004FFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x0004FFFF,
One,
Zero,
0x11
},
Package (0x04)
{
0x0004FFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x0004FFFF,
0x03,
Zero,
0x13
},
Package (0x04)
{
0x0005FFFF,
Zero,
Zero,
0x11
},
Package (0x04)
{
0x0005FFFF,
One,
Zero,
0x12
},
Package (0x04)
{
0x0005FFFF,
0x02,
Zero,
0x13
},
Package (0x04)
{
0x0005FFFF,
0x03,
Zero,
0x10
},
Package (0x04)
{
0x0006FFFF,
Zero,
Zero,
0x12
},
Package (0x04)
{
0x0006FFFF,
One,
Zero,
0x13
},
Package (0x04)
{
0x0006FFFF,
0x02,
Zero,
0x10
},
Package (0x04)
{
0x0006FFFF,
0x03,
Zero,
0x11
},
Package (0x04)
{
0x0007FFFF,
Zero,
Zero,
0x13
},
Package (0x04)
{
0x0007FFFF,
One,
Zero,
0x10
},
Package (0x04)
{
0x0007FFFF,
0x02,
Zero,
0x11
},
Package (0x04)
{
0x0007FFFF,
0x03,
Zero,
0x12
}
})
Name (PR01, Package (0x04)
{
Package (0x04)
{
0x0005FFFF,
Zero,
LNKC,
Zero
},
Package (0x04)
{
0x0005FFFF,
One,
LNKD,
Zero
},
Package (0x04)
{
0x0005FFFF,
0x02,
LNKA,
Zero
},
Package (0x04)
{
0x0005FFFF,
0x03,
LNKB,
Zero
}
})
Name (AR01, Package (0x04)
{
Package (0x04)
{
0x0005FFFF,
Zero,
Zero,
0x12
},
Package (0x04)
{
0x0005FFFF,
One,
Zero,
0x13
},
Package (0x04)
{
0x0005FFFF,
0x02,
Zero,
0x10
},
Package (0x04)
{
0x0005FFFF,
0x03,
Zero,
0x11
}
})
Name (PR09, Package (0x02)
{
Package (0x04)
{
0x0001FFFF,
Zero,
LNKE,
Zero
},
Package (0x04)
{
0x0001FFFF,
One,
LNKF,
Zero
}
})
Name (AR09, Package (0x02)
{
Package (0x04)
{
0x0001FFFF,
Zero,
Zero,
0x14
},
Package (0x04)
{
0x0001FFFF,
One,
Zero,
0x15
}
})
Name (PRSA, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{3,4,5,7,10,11,12,14,15}
})
Alias (PRSA, PRSB)
Alias (PRSA, PRSC)
Alias (PRSA, PRSD)
Alias (PRSA, PRSE)
Name (PRSF, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{9}
})
Alias (PRSA, PRSG)
Alias (PRSA, PRSH)
Device (PCI0)
{
Name (_HID, EisaId ("PNP0A03"))
Name (_ADR, 0x00180000)
Method (^BN00, 0, NotSerialized)
{
Return (Zero)
}
Method (_BBN, 0, NotSerialized)
{
Return (BN00 ())
}
Name (_UID, Zero)
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR00)
}
Return (PR00)
}
Device (RS48)
{
Name (_ADR, Zero)
OperationRegion (NB2, PCI_Config, Zero, 0x0100)
Field (NB2, AnyAcc, NoLock, Preserve)
{
Offset (0x90),
UMBS, 32,
Offset (0x9B),
UMSL, 8,
Offset (0xE4),
MCDA, 32,
NCIN, 32
}
Device (UMAX)
{
Name (_HID, EisaId ("PNP0C02"))
Name (_UID, 0x24)
Method (_STA, 0, NotSerialized)
{
Store (UMSL, Local0)
If (Local0)
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Name (CRS, ResourceTemplate ()
{
Memory32Fixed (ReadOnly,
0x00000000, // Address Base
0x00000000, // Address Length
_Y00)
})
Method (_CRS, 0, NotSerialized)
{
CreateDWordField (CRS, \_SB.PCI0.RS48.UMAX._Y00._BAS, BAS1)
CreateDWordField (CRS, \_SB.PCI0.RS48.UMAX._Y00._LEN, LEN1)
Store (UMBS, BAS1)
Store (ShiftLeft (UMSL, 0x18), LEN1)
Return (CRS)
}
}
}
Device (P0P1)
{
Name (_ADR, 0x00010000)
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR01)
}
Return (PR01)
}
Device (VGA)
{
Name (_ADR, 0x00050000)
OperationRegion (VSID, PCI_Config, Zero, 0x04)
Field (VSID, ByteAcc, NoLock, Preserve)
{
REG0, 32
}
Method (PRST, 0, NotSerialized)
{
If (LEqual (REG0, Ones))
{
Return (Zero)
}
Else
{
Return (One)
}
}
Name (UPDN, One)
Name (NXTD, One)
Name (LCDM, One)
Name (CRTM, 0x02)
Name (TVOM, 0x04)
Name (DVIM, 0x08)
Name (DONE, Zero)
Name (DOSF, One)
Method (_INI, 0, NotSerialized)
{
GETD ()
}
Method (_DOS, 1, NotSerialized)
{
Store (Arg0, DOSF)
}
Method (_DOD, 0, NotSerialized)
{
Return (Package (0x04)
{
0x00010100,
0x00010110,
0x0200,
0x0210
})
}
Device (CRTD)
{
Name (_ADR, 0x0100)
Method (_DCS, 0, NotSerialized)
{
Store (AVLD, Local0)
If (Local0)
{
If (And (Local0, CRTM))
{
Return (0x1F)
}
}
Return (0x1D)
}
Method (_DGS, 0, NotSerialized)
{
And (NXTD, CRTM, Local0)
If (Local0)
{
Return (One)
}
Return (Zero)
}
Method (_DSS, 1, NotSerialized)
{
If (And (Arg0, 0x40000000))
{
If (And (Arg0, 0x80000000))
{
Store (One, DONE)
}
}
}
}
Device (TVOD)
{
Name (_ADR, 0x0200)
Method (_DCS, 0, NotSerialized)
{
Store (AVLD, Local0)
If (Local0)
{
If (And (Local0, TVOM))
{
Return (0x1F)
}
}
Return (0x1D)
}
Method (_DGS, 0, NotSerialized)
{
And (NXTD, TVOM, Local0)
If (Local0)
{
Return (One)
}
Return (Zero)
}
Method (_DSS, 1, NotSerialized)
{
If (And (Arg0, 0x40000000))
{
If (And (Arg0, 0x80000000))
{
Store (One, DONE)
}
}
}
}
Device (DVID)
{
Name (_ADR, 0x0210)
Method (_DCS, 0, NotSerialized)
{
Store (AVLD, Local0)
If (Local0)
{
If (And (Local0, DVIM))
{
Return (0x1F)
}
}
Return (0x1D)
}
Method (_DGS, 0, NotSerialized)
{
And (NXTD, DVIM, Local0)
If (Local0)
{
Return (One)
}
Return (Zero)
}
Method (_DSS, 1, NotSerialized)
{
If (And (Arg0, 0x40000000))
{
If (And (Arg0, 0x80000000))
{
Store (One, DONE)
}
}
}
}
Device (LCDD)
{
Name (_ADR, 0x0110)
Method (_DCS, 0, NotSerialized)
{
Store (AVLD, Local0)
If (Local0)
{
If (And (Local0, LCDM))
{
Return (0x1F)
}
}
Return (0x1D)
}
Method (_DGS, 0, NotSerialized)
{
And (NXTD, LCDM, Local0)
If (Local0)
{
Return (One)
}
Return (Zero)
}
Method (_DSS, 1, NotSerialized)
{
If (And (Arg0, 0x40000000))
{
If (And (Arg0, 0x80000000))
{
Store (One, DONE)
}
}
}
Method (_BCL, 0, NotSerialized)
{
Return (Package (0x10)
{
0x0F,
0x0E,
0x0D,
0x0C,
0x0B,
0x0A,
0x09,
0x08,
0x07,
0x06,
0x05,
0x04,
0x03,
0x02,
One,
Zero
})
}
Name (BCBH, Zero)
Method (_BCM, 1, NotSerialized)
{
Store (Arg0, LBTN)
^^^^SBRG.EC0.STBR ()
If (ATKP)
{
If (LEqual (BCBH, One))
{
Notify (ATKD, Add (LBTN, 0x10))
}
If (LEqual (BCBH, 0x02))
{
Notify (ATKD, Add (LBTN, 0x20))
}
}
Store (Zero, BCBH)
}
Method (_BQC, 0, NotSerialized)
{
Return (LBTN)
}
}
Method (SWHD, 1, Serialized)
{
Store (One, UPDN)
If (And (DOSF, 0x03))
{
Store (Arg0, SETD)
ISMI (0x94)
}
Else
{
Store (Arg0, NXTD)
Store (Zero, DONE)
Notify (VGA, 0x80)
Store (0x01F4, Local0)
While (Local0)
{
If (DONE)
{
Store (Zero, Local0)
}
Else
{
Sleep (0x0A)
Decrement (Local0)
}
}
}
}
Method (GETD, 0, NotSerialized)
{
ISMI (0x95)
Return (ACTD)
}
Method (ADVD, 0, NotSerialized)
{
If (UPDN)
{
GETD ()
Store (ACTD, SETD)
Store (Zero, UPDN)
}
ISMI (0xA0)
Store (SETD, NXTD)
Return (SETD)
Return (NXTD)
}
Method (NATK, 0, NotSerialized)
{
Return (One)
}
}
}
Device (IDEC)
{
Name (_ADR, 0x00140001)
Name (UDMT, Package (0x08)
{
0x78,
0x5A,
0x3C,
0x2D,
0x1E,
0x14,
0x0F,
Zero
})
Name (PIOT, Package (0x06)
{
0x0258,
0x0186,
0x010E,
0xB4,
0x78,
Zero
})
Name (PITR, Package (0x06)
{
0x99,
0x47,
0x34,
0x22,
0x20,
0x99
})
Name (MDMT, Package (0x04)
{
0x01E0,
0x96,
0x78,
Zero
})
Name (MDTR, Package (0x04)
{
0x77,
0x21,
0x20,
0xFF
})
OperationRegion (IDE, PCI_Config, 0x40, 0x20)
Field (IDE, AnyAcc, NoLock, Preserve)
{
PPIT, 16,
SPIT, 16,
PMDT, 16,
SMDT, 16,
PPIC, 8,
SPIC, 8,
PPIM, 8,
SPIM, 8,
Offset (0x14),
PUDC, 2,
SUDC, 2,
Offset (0x16),
PUDM, 8,
SUDM, 8
}
Method (GETT, 1, NotSerialized)
{
Store (And (Arg0, 0x0F), Local0)
Store (ShiftRight (Arg0, 0x04), Local1)
Return (Multiply (0x1E, Add (Add (Local0, One), Add (Local1,
One))))
}
Method (GTM, 1, NotSerialized)
{
CreateByteField (Arg0, Zero, PIT1)
CreateByteField (Arg0, One, PIT0)
CreateByteField (Arg0, 0x02, MDT1)
CreateByteField (Arg0, 0x03, MDT0)
CreateByteField (Arg0, 0x04, PICX)
CreateByteField (Arg0, 0x05, UDCX)
CreateByteField (Arg0, 0x06, UDMX)
Name (BUF, Buffer (0x14)
{
/* 0000 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
/* 0008 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
/* 0010 */ 0x00, 0x00, 0x00, 0x00
})
CreateDWordField (BUF, Zero, PIO0)
CreateDWordField (BUF, 0x04, DMA0)
CreateDWordField (BUF, 0x08, PIO1)
CreateDWordField (BUF, 0x0C, DMA1)
CreateDWordField (BUF, 0x10, FLAG)
If (And (PICX, One))
{
Return (BUF)
}
Store (GETT (PIT0), PIO0)
Store (GETT (PIT1), PIO1)
If (And (UDCX, One))
{
Or (FLAG, One, FLAG)
Store (DerefOf (Index (UDMT, And (UDMX, 0x0F))), DMA0)
}
Else
{
Store (GETT (MDT0), DMA0)
}
If (And (UDCX, 0x02))
{
Or (FLAG, 0x04, FLAG)
Store (DerefOf (Index (UDMT, ShiftRight (UDMX, 0x04))), DMA1)
}
Else
{
Store (GETT (MDT1), DMA1)
}
Or (FLAG, 0x1A, FLAG)
Return (BUF)
}
Method (STM, 3, NotSerialized)
{
CreateDWordField (Arg0, Zero, PIO0)
CreateDWordField (Arg0, 0x04, DMA0)
CreateDWordField (Arg0, 0x08, PIO1)
CreateDWordField (Arg0, 0x0C, DMA1)
CreateDWordField (Arg0, 0x10, FLAG)
Name (BUF, Buffer (0x07)
{
0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
})
CreateByteField (BUF, Zero, PIT1)
CreateByteField (BUF, One, PIT0)
CreateByteField (BUF, 0x02, MDT1)
CreateByteField (BUF, 0x03, MDT0)
CreateByteField (BUF, 0x04, PIMX)
CreateByteField (BUF, 0x05, UDCX)
CreateByteField (BUF, 0x06, UDMX)
Store (Match (PIOT, MLE, PIO0, MTR, Zero, Zero), Local0)
Divide (Local0, 0x05, Local0)
Store (Match (PIOT, MLE, PIO1, MTR, Zero, Zero), Local1)
Divide (Local1, 0x05, Local1)
Store (Or (ShiftLeft (Local1, 0x04), Local0), PIMX)
Store (DerefOf (Index (PITR, Local0)), PIT0)
Store (DerefOf (Index (PITR, Local1)), PIT1)
If (And (FLAG, One))
{
Store (Match (UDMT, MLE, DMA0, MTR, Zero, Zero), Local0)
Divide (Local0, 0x07, Local0)
Or (UDMX, Local0, UDMX)
Or (UDCX, One, UDCX)
}
Else
{
If (LNotEqual (DMA0, Ones))
{
Store (Match (MDMT, MLE, DMA0, MTR, Zero, Zero), Local0)
Store (DerefOf (Index (MDTR, Local0)), MDT0)
}
}
If (And (FLAG, 0x04))
{
Store (Match (UDMT, MLE, DMA1, MTR, Zero, Zero), Local0)
Divide (Local0, 0x07, Local0)
Or (UDMX, ShiftLeft (Local0, 0x04), UDMX)
Or (UDCX, 0x02, UDCX)
}
Else
{
If (LNotEqual (DMA1, Ones))
{
Store (Match (MDMT, MLE, DMA1, MTR, Zero, Zero), Local0)
Store (DerefOf (Index (MDTR, Local0)), MDT1)
}
}
Return (BUF)
}
Method (GTF, 2, NotSerialized)
{
CreateByteField (Arg1, Zero, MDT1)
CreateByteField (Arg1, One, MDT0)
CreateByteField (Arg1, 0x02, PIMX)
CreateByteField (Arg1, 0x03, UDCX)
CreateByteField (Arg1, 0x04, UDMX)
If (LEqual (Arg0, 0xA0))
{
Store (And (PIMX, 0x0F), Local0)
Store (MDT0, Local1)
And (UDCX, One, Local2)
Store (And (UDMX, 0x0F), Local3)
}
Else
{
Store (ShiftRight (PIMX, 0x04), Local0)
Store (MDT1, Local1)
And (UDCX, 0x02, Local2)
Store (ShiftRight (UDMX, 0x04), Local3)
}
Name (BUF, Buffer (0x15)
{
/* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xEF, 0x03,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xEF, 0x00, 0x00,
/* 0010 */ 0x00, 0x00, 0x00, 0x00, 0xF5
})
CreateByteField (BUF, One, PMOD)
CreateByteField (BUF, 0x08, DMOD)
CreateByteField (BUF, 0x05, CMDA)
CreateByteField (BUF, 0x0C, CMDB)
CreateByteField (BUF, 0x13, CMDC)
Store (Arg0, CMDA)
Store (Arg0, CMDB)
Store (Arg0, CMDC)
Or (Local0, 0x08, PMOD)
If (Local2)
{
Or (Local3, 0x40, DMOD)
}
Else
{
Store (Match (MDMT, MLE, GETT (Local1), MTR, Zero, Zero), Local4)
If (LLess (Local4, 0x03))
{
Or (0x20, Local4, DMOD)
}
}
Return (BUF)
}
Device (PRID)
{
Name (_ADR, Zero)
Method (_GTM, 0, NotSerialized)
{
Name (BUF, Buffer (0x07)
{
0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
})
CreateWordField (BUF, Zero, VPIT)
CreateWordField (BUF, 0x02, VMDT)
CreateByteField (BUF, 0x04, VPIC)
CreateByteField (BUF, 0x05, VUDC)
CreateByteField (BUF, 0x06, VUDM)
Store (PPIT, VPIT)
Store (PMDT, VMDT)
Store (PPIC, VPIC)
Store (PUDC, VUDC)
Store (PUDM, VUDM)
Return (GTM (BUF))
}
Method (_STM, 3, NotSerialized)
{
Name (BUF, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
CreateWordField (BUF, Zero, VPIT)
CreateWordField (BUF, 0x02, VMDT)
CreateByteField (BUF, 0x04, VPIM)
CreateByteField (BUF, 0x05, VUDC)
CreateByteField (BUF, 0x06, VUDM)
Store (STM (Arg0, Arg1, Arg2), BUF)
Store (VPIT, PPIT)
Store (VMDT, PMDT)
Store (VPIM, PPIM)
Store (VUDC, PUDC)
Store (VUDM, PUDM)
}
Device (P_D0)
{
Name (_ADR, Zero)
Method (_GTF, 0, NotSerialized)
{
Name (BUF, Buffer (0x05)
{
0x00, 0x00, 0x00, 0x00, 0x00
})
CreateWordField (BUF, Zero, VMDT)
CreateByteField (BUF, 0x02, VPIM)
CreateByteField (BUF, 0x03, VUDC)
CreateByteField (BUF, 0x04, VUDM)
Store (PMDT, VMDT)
Store (PPIM, VPIM)
Store (PUDC, VUDC)
Store (PUDM, VUDM)
Return (GTF (0xA0, BUF))
}
}
Device (P_D1)
{
Name (_ADR, One)
Method (_GTF, 0, NotSerialized)
{
Name (BUF, Buffer (0x05)
{
0x00, 0x00, 0x00, 0x00, 0x00
})
CreateWordField (BUF, Zero, VMDT)
CreateByteField (BUF, 0x02, VPIM)
CreateByteField (BUF, 0x03, VUDC)
CreateByteField (BUF, 0x04, VUDM)
Store (PMDT, VMDT)
Store (PPIM, VPIM)
Store (PUDC, VUDC)
Store (PUDM, VUDM)
Return (GTF (0xB0, BUF))
}
}
}
Device (SECD)
{
Name (_ADR, One)
Method (_GTM, 0, NotSerialized)
{
Name (BUF, Buffer (0x07)
{
0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
})
CreateWordField (BUF, Zero, VPIT)
CreateWordField (BUF, 0x02, VMDT)
CreateByteField (BUF, 0x04, VPIC)
CreateByteField (BUF, 0x05, VUDC)
CreateByteField (BUF, 0x06, VUDM)
Store (SPIT, VPIT)
Store (SMDT, VMDT)
Store (SPIC, VPIC)
Store (SUDC, VUDC)
Store (SUDM, VUDM)
Return (GTM (BUF))
}
Method (_STM, 3, NotSerialized)
{
Name (BUF, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
CreateWordField (BUF, Zero, VPIT)
CreateWordField (BUF, 0x02, VMDT)
CreateByteField (BUF, 0x04, VPIM)
CreateByteField (BUF, 0x05, VUDC)
CreateByteField (BUF, 0x06, VUDM)
Store (STM (Arg0, Arg1, Arg2), BUF)
Store (VPIT, SPIT)
Store (VMDT, SMDT)
Store (VPIM, SPIM)
Store (VUDC, SUDC)
Store (VUDM, SUDM)
}
Device (S_D0)
{
Name (_ADR, Zero)
Method (_GTF, 0, NotSerialized)
{
Name (BUF, Buffer (0x05)
{
0x00, 0x00, 0x00, 0x00, 0x00
})
CreateWordField (BUF, Zero, VMDT)
CreateByteField (BUF, 0x02, VPIM)
CreateByteField (BUF, 0x03, VUDC)
CreateByteField (BUF, 0x04, VUDM)
Store (SMDT, VMDT)
Store (SPIM, VPIM)
Store (SUDC, VUDC)
Store (SUDM, VUDM)
Return (GTF (0xA0, BUF))
}
}
Device (S_D1)
{
Name (_ADR, One)
Method (_GTF, 0, NotSerialized)
{
Name (BUF, Buffer (0x05)
{
0x00, 0x00, 0x00, 0x00, 0x00
})
CreateWordField (BUF, Zero, VMDT)
CreateByteField (BUF, 0x02, VPIM)
CreateByteField (BUF, 0x03, VUDC)
CreateByteField (BUF, 0x04, VUDM)
Store (SMDT, VMDT)
Store (SPIM, VPIM)
Store (SUDC, VUDC)
Store (SUDM, VUDM)
Return (GTF (0xB0, BUF))
}
}
}
}
Device (SBAZ)
{
Name (_ADR, 0x00140002)
OperationRegion (PCI, PCI_Config, Zero, 0x0100)
Field (PCI, AnyAcc, NoLock, Preserve)
{
Offset (0x42),
DNSP, 1,
DNSO, 1,
ENSR, 1
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x1B, 0x04))
}
}
Device (SBRG)
{
Name (_ADR, 0x00140003)
Device (PIC)
{
Name (_HID, EisaId ("PNP0000"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0020, // Range Minimum
0x0020, // Range Maximum
0x00, // Alignment
0x02, // Length
)
IO (Decode16,
0x00A0, // Range Minimum
0x00A0, // Range Maximum
0x00, // Alignment
0x02, // Length
)
IRQNoFlags ()
{2}
})
}
Device (DMAD)
{
Name (_HID, EisaId ("PNP0200"))
Name (_CRS, ResourceTemplate ()
{
DMA (Compatibility, BusMaster, Transfer8, )
{4}
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x00, // Alignment
0x10, // Length
)
IO (Decode16,
0x0081, // Range Minimum
0x0081, // Range Maximum
0x00, // Alignment
0x03, // Length
)
IO (Decode16,
0x0087, // Range Minimum
0x0087, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0089, // Range Minimum
0x0089, // Range Maximum
0x00, // Alignment
0x03, // Length
)
IO (Decode16,
0x008F, // Range Minimum
0x008F, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x00C0, // Range Minimum
0x00C0, // Range Maximum
0x00, // Alignment
0x20, // Length
)
})
}
Device (TMR)
{
Name (_HID, EisaId ("PNP0100"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0040, // Range Minimum
0x0040, // Range Maximum
0x00, // Alignment
0x04, // Length
)
IRQNoFlags ()
{0}
})
}
Device (RTC0)
{
Name (_HID, EisaId ("PNP0B00"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0070, // Range Minimum
0x0070, // Range Maximum
0x00, // Alignment
0x02, // Length
)
IRQNoFlags ()
{8}
})
}
Device (SPKR)
{
Name (_HID, EisaId ("PNP0800"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0061, // Range Minimum
0x0061, // Range Maximum
0x00, // Alignment
0x01, // Length
)
})
}
Device (COPR)
{
Name (_HID, EisaId ("PNP0C04"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x00F0, // Range Minimum
0x00F0, // Range Maximum
0x00, // Alignment
0x10, // Length
)
IRQNoFlags ()
{13}
})
}
Device (HPET)
{
Name (_HID, EisaId ("PNP0103"))
Name (CRS, ResourceTemplate ()
{
Memory32Fixed (ReadOnly,
0xFED00000, // Address Base
0x00000400, // Address Length
_Y01)
})
Method (_STA, 0, NotSerialized)
{
If (HPBS)
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_CRS, 0, NotSerialized)
{
CreateDWordField (CRS, \_SB.PCI0.SBRG.HPET._Y01._BAS, HPT)
Store (HPBS, HPT)
Return (CRS)
}
}
Method (RRIO, 4, NotSerialized)
{
}
Method (RDMA, 3, NotSerialized)
{
}
Device (^PCIE)
{
Name (_HID, EisaId ("PNP0C02"))
Name (_UID, 0x11)
Name (CRS, ResourceTemplate ()
{
Memory32Fixed (ReadOnly,
0xE0000000, // Address Base
0x10000000, // Address Length
_Y02)
})
Method (_CRS, 0, NotSerialized)
{
CreateDWordField (CRS, \_SB.PCI0.PCIE._Y02._BAS, BAS1)
CreateDWordField (CRS, \_SB.PCI0.PCIE._Y02._LEN, LEN1)
Store (PCIB, BAS1)
Store (PCIL, LEN1)
Return (CRS)
}
}
Device (OMSC)
{
Name (_HID, EisaId ("PNP0C02"))
Name (_UID, Zero)
Name (CRS, ResourceTemplate ()
{
IO (Decode16,
0x0250, // Range Minimum
0x0253, // Range Maximum
0x01, // Alignment
0x04, // Length
)
IO (Decode16,
0x0256, // Range Minimum
0x025F, // Range Maximum
0x01, // Alignment
0x0A, // Length
)
Memory32Fixed (ReadOnly,
0x00000000, // Address Base
0x00000000, // Address Length
_Y03)
Memory32Fixed (ReadOnly,
0x00000000, // Address Base
0x00000000, // Address Length
_Y04)
})
Method (_CRS, 0, NotSerialized)
{
If (APIC)
{
CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y03._LEN, ML01)
CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y03._BAS, MB01)
CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y04._LEN, ML02)
CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y04._BAS, MB02)
Store (0xFEC00000, MB01)
Store (0x1000, ML01)
Store (0xFEE00000, MB02)
Store (0x1000, ML02)
}
Return (CRS)
}
}
Device (^^RMEM)
{
Name (_HID, EisaId ("PNP0C01"))
Name (_UID, One)
Name (CRS, ResourceTemplate ()
{
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x000A0000, // Address Length
)
Memory32Fixed (ReadOnly,
0x00000000, // Address Base
0x00000000, // Address Length
_Y05)
Memory32Fixed (ReadOnly,
0x000E0000, // Address Base
0x00020000, // Address Length
_Y06)
Memory32Fixed (ReadWrite,
0x00100000, // Address Base
0x00000000, // Address Length
_Y07)
Memory32Fixed (ReadOnly,
0x00000000, // Address Base
0x00000000, // Address Length
_Y08)
})
Method (_CRS, 0, NotSerialized)
{
CreateDWordField (CRS, \_SB.RMEM._Y05._BAS, BAS1)
CreateDWordField (CRS, \_SB.RMEM._Y05._LEN, LEN1)
CreateDWordField (CRS, \_SB.RMEM._Y06._BAS, BAS2)
CreateDWordField (CRS, \_SB.RMEM._Y06._LEN, LEN2)
CreateDWordField (CRS, \_SB.RMEM._Y07._LEN, LEN3)
CreateDWordField (CRS, \_SB.RMEM._Y08._BAS, BAS4)
CreateDWordField (CRS, \_SB.RMEM._Y08._LEN, LEN4)
If (OSFL ()) {}
Else
{
If (MG1B)
{
If (LGreater (MG1B, 0x000C0000))
{
Store (0x000C0000, BAS1)
Subtract (MG1B, BAS1, LEN1)
}
}
Else
{
Store (0x000C0000, BAS1)
Store (0x00020000, LEN1)
}
If (Add (MG1B, MG1L, Local0))
{
Store (Local0, BAS2)
Subtract (0x00100000, BAS2, LEN2)
}
}
Subtract (MG2B, 0x00100000, LEN3)
Add (MG2B, MG2L, BAS4)
Subtract (Zero, BAS4, LEN4)
Return (CRS)
}
}
Device (DSIO)
{
Name (_HID, EisaId ("PNP0C02"))
Name (_UID, 0x05)
Name (CRS0, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x00, // Alignment
0x00, // Length
)
})
Name (CRS1, ResourceTemplate ()
{
IO (Decode16,
0x0260, // Range Minimum
0x0260, // Range Maximum
0x00, // Alignment
0x10, // Length
)
})
Method (_CRS, 0, NotSerialized)
{
If (ACRD)
{
Return (CRS1)
}
Else
{
Return (CRS0)
}
}
}
Device (RMSC)
{
Name (_HID, EisaId ("PNP0C02"))
Name (_UID, 0x10)
Name (CRS, ResourceTemplate ()
{
IO (Decode16,
0x0010, // Range Minimum
0x0010, // Range Maximum
0x00, // Alignment
0x10, // Length
)
IO (Decode16,
0x0022, // Range Minimum
0x0022, // Range Maximum
0x00, // Alignment
0x1E, // Length
)
IO (Decode16,
0x0062, // Range Minimum
0x0062, // Range Maximum
0x00, // Alignment
0x02, // Length
)
IO (Decode16,
0x0065, // Range Minimum
0x0065, // Range Maximum
0x00, // Alignment
0x0B, // Length
)
IO (Decode16,
0x0072, // Range Minimum
0x0072, // Range Maximum
0x00, // Alignment
0x0E, // Length
)
IO (Decode16,
0x0080, // Range Minimum
0x0080, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0084, // Range Minimum
0x0084, // Range Maximum
0x00, // Alignment
0x03, // Length
)
IO (Decode16,
0x0088, // Range Minimum
0x0088, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x008C, // Range Minimum
0x008C, // Range Maximum
0x00, // Alignment
0x03, // Length
)
IO (Decode16,
0x0090, // Range Minimum
0x0090, // Range Maximum
0x00, // Alignment
0x10, // Length
)
IO (Decode16,
0x00A2, // Range Minimum
0x00A2, // Range Maximum
0x00, // Alignment
0x1E, // Length
)
IO (Decode16,
0x00B1, // Range Minimum
0x00B1, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x00E0, // Range Minimum
0x00E0, // Range Maximum
0x00, // Alignment
0x10, // Length
)
IO (Decode16,
0x04D0, // Range Minimum
0x04D0, // Range Maximum
0x00, // Alignment
0x02, // Length
)
IO (Decode16,
0x040B, // Range Minimum
0x040B, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x04D6, // Range Minimum
0x04D6, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0C00, // Range Minimum
0x0C00, // Range Maximum
0x00, // Alignment
0x02, // Length
)
IO (Decode16,
0x0C14, // Range Minimum
0x0C14, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0C50, // Range Minimum
0x0C50, // Range Maximum
0x00, // Alignment
0x02, // Length
)
IO (Decode16,
0x0C52, // Range Minimum
0x0C52, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0C6C, // Range Minimum
0x0C6C, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0C6F, // Range Minimum
0x0C6F, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0CD0, // Range Minimum
0x0CD0, // Range Maximum
0x00, // Alignment
0x02, // Length
)
IO (Decode16,
0x0CD2, // Range Minimum
0x0CD2, // Range Maximum
0x00, // Alignment
0x02, // Length
)
IO (Decode16,
0x0CD4, // Range Minimum
0x0CD4, // Range Maximum
0x00, // Alignment
0x02, // Length
)
IO (Decode16,
0x0CD6, // Range Minimum
0x0CD6, // Range Maximum
0x00, // Alignment
0x02, // Length
)
IO (Decode16,
0x0CD8, // Range Minimum
0x0CD8, // Range Maximum
0x00, // Alignment
0x08, // Length
)
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x00, // Alignment
0x00, // Length
_Y09)
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x00, // Alignment
0x00, // Length
_Y0A)
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x00, // Alignment
0x00, // Length
_Y0B)
IO (Decode16,
0x0900, // Range Minimum
0x0900, // Range Maximum
0x00, // Alignment
0x10, // Length
)
IO (Decode16,
0x0910, // Range Minimum
0x0910, // Range Maximum
0x00, // Alignment
0x10, // Length
)
IO (Decode16,
0xFE00, // Range Minimum
0xFE00, // Range Maximum
0x00, // Alignment
0xFF, // Length
)
Memory32Fixed (ReadOnly,
0xFFB80000, // Address Base
0x00080000, // Address Length
)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00000000, // Address Length
_Y0C)
})
Method (_CRS, 0, NotSerialized)
{
CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y09._MIN, GP00)
CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y09._MAX, GP01)
CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y09._LEN, GP0L)
Store (PMBS, GP00)
Store (PMBS, GP01)
Store (PMLN, GP0L)
If (SMBB)
{
CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0A._MIN, GP10)
CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0A._MAX, GP11)
CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y0A._LEN, GP1L)
Store (SMBB, GP10)
Store (SMBB, GP11)
Store (SMBL, GP1L)
}
If (GPBS)
{
CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0B._MIN, GP20)
CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0B._MAX, GP21)
CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y0B._LEN, GP2L)
Store (GPBS, GP20)
Store (GPBS, GP21)
Store (GPLN, GP2L)
}
CreateDWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0C._BAS, ROMB)
CreateDWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0C._LEN, ROML)
Store (ROMS, ROMB)
Subtract (Zero, ROMS, ROML)
Return (CRS)
}
}
Device (PS2K)
{
Name (_HID, EisaId ("PNP0303"))
Name (_CID, EisaId ("PNP030B"))
Method (_STA, 0, NotSerialized)
{
ShiftLeft (One, 0x0A, Local0)
If (And (IOST, Local0))
{
Return (0x0F)
}
Return (Zero)
}
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0060, // Range Minimum
0x0060, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0064, // Range Minimum
0x0064, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IRQNoFlags ()
{1}
})
}
Device (PS2M)
{
Method (_HID, 0, NotSerialized)
{
If (SYNA)
{
Return (0x060A2E4F)
}
If (ALPS)
{
Return (0x0713A906)
}
Return (0x060A2E4F)
}
Name (_CID, Package (0x05)
{
EisaId ("SYN0A00"),
EisaId ("SYN0002"),
EisaId ("PNP0F03"),
EisaId ("PNP0F13"),
EisaId ("PNP0F12")
})
Method (_STA, 0, NotSerialized)
{
ShiftLeft (One, 0x0C, Local0)
If (And (IOST, Local0))
{
Return (0x0F)
}
Return (Zero)
}
Name (CRS1, ResourceTemplate ()
{
IRQNoFlags ()
{12}
})
Name (CRS2, ResourceTemplate ()
{
IO (Decode16,
0x0060, // Range Minimum
0x0060, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0064, // Range Minimum
0x0064, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IRQNoFlags ()
{12}
})
Method (_CRS, 0, NotSerialized)
{
ShiftLeft (One, 0x0A, Local0)
If (And (IOST, Local0))
{
Return (CRS1)
}
Else
{
Return (CRS2)
}
}
}
}
Device (AC97)
{
Name (_ADR, 0x00140005)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x0C, 0x04))
}
}
Device (MC97)
{
Name (_ADR, 0x00140006)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x0C, 0x04))
}
}
Device (SMBS)
{
Name (_ADR, 0x00140000)
}
Device (USB1)
{
Name (_ADR, 0x00130000)
OperationRegion (U10P, PCI_Config, Zero, 0x0100)
Field (U10P, ByteAcc, NoLock, Preserve)
{
Offset (0x04),
, 1,
MSPE, 1,
Offset (0x06),
Offset (0x10),
MBAS, 32
}
Method (_PSW, 1, NotSerialized)
{
Store (MBAS, Local0)
And (Local0, 0xFFFFFFF0, Local0)
OperationRegion (MMIO, SystemMemory, Local0, 0x0100)
Field (MMIO, DWordAcc, NoLock, Preserve)
{
Offset (0x04),
UHCC, 32
}
If (LNot (Local0))
{
Store (MSPE, Local1)
Store (One, MSPE)
If (Arg0)
{
Store (UHCC, Local2)
Or (Local2, 0x0400, Local2)
Store (Local2, UHCC)
}
Else
{
Store (UHCC, Local2)
Store (0x0400, Local3)
Not (Local3)
And (Local2, Local3, Local2)
Store (Local2, UHCC)
}
Store (Local1, MSPE)
}
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x0B, 0x04))
}
}
Device (USB2)
{
Name (_ADR, 0x00130001)
OperationRegion (U10P, PCI_Config, Zero, 0x0100)
Field (U10P, ByteAcc, NoLock, Preserve)
{
Offset (0x04),
, 1,
MSPE, 1,
Offset (0x06),
Offset (0x10),
MBAS, 32
}
Method (_PSW, 1, NotSerialized)
{
Store (MBAS, Local0)
And (Local0, 0xFFFFFFF0, Local0)
OperationRegion (MMIO, SystemMemory, Local0, 0x0100)
Field (MMIO, DWordAcc, NoLock, Preserve)
{
Offset (0x04),
UHCC, 32
}
If (LNot (Local0))
{
Store (MSPE, Local1)
Store (One, MSPE)
If (Arg0)
{
Store (UHCC, Local2)
Or (Local2, 0x0400, Local2)
Store (Local2, UHCC)
}
Else
{
Store (UHCC, Local2)
Store (0x0400, Local3)
Not (Local3)
And (Local2, Local3, Local2)
Store (Local2, UHCC)
}
Store (Local1, MSPE)
}
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x0B, 0x04))
}
}
Device (USB3)
{
Name (_ADR, 0x00130002)
OperationRegion (U10P, PCI_Config, Zero, 0x0100)
Field (U10P, ByteAcc, NoLock, Preserve)
{
Offset (0x04),
, 1,
MSPE, 1,
Offset (0x06),
Offset (0x10),
MBAS, 32
}
Method (_PSW, 1, NotSerialized)
{
Store (MBAS, Local0)
And (Local0, 0xFFFFFFF0, Local0)
OperationRegion (MMIO, SystemMemory, Local0, 0x0100)
Field (MMIO, DWordAcc, NoLock, Preserve)
{
Offset (0x04),
UHCC, 32
}
If (LNot (Local0))
{
Store (MSPE, Local1)
Store (One, MSPE)
If (Arg0)
{
Store (UHCC, Local2)
Or (Local2, 0x0400, Local2)
Store (Local2, UHCC)
}
Else
{
Store (UHCC, Local2)
Store (0x0400, Local3)
Not (Local3)
And (Local2, Local3, Local2)
Store (Local2, UHCC)
}
Store (Local1, MSPE)
}
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x0B, 0x04))
}
}
Device (USB4)
{
Name (_ADR, 0x00130003)
OperationRegion (U10P, PCI_Config, Zero, 0x0100)
Field (U10P, ByteAcc, NoLock, Preserve)
{
Offset (0x04),
, 1,
MSPE, 1,
Offset (0x06),
Offset (0x10),
MBAS, 32
}
Method (_PSW, 1, NotSerialized)
{
Store (MBAS, Local0)
And (Local0, 0xFFFFFFF0, Local0)
OperationRegion (MMIO, SystemMemory, Local0, 0x0100)
Field (MMIO, DWordAcc, NoLock, Preserve)
{
Offset (0x04),
UHCC, 32
}
If (LNot (Local0))
{
Store (MSPE, Local1)
Store (One, MSPE)
If (Arg0)
{
Store (UHCC, Local2)
Or (Local2, 0x0400, Local2)
Store (Local2, UHCC)
}
Else
{
Store (UHCC, Local2)
Store (0x0400, Local3)
Not (Local3)
And (Local2, Local3, Local2)
Store (Local2, UHCC)
}
Store (Local1, MSPE)
}
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x0B, 0x04))
}
}
Device (USB5)
{
Name (_ADR, 0x00130004)
OperationRegion (U10P, PCI_Config, Zero, 0x0100)
Field (U10P, ByteAcc, NoLock, Preserve)
{
Offset (0x04),
, 1,
MSPE, 1,
Offset (0x06),
Offset (0x10),
MBAS, 32
}
Method (_PSW, 1, NotSerialized)
{
Store (MBAS, Local0)
And (Local0, 0xFFFFFFF0, Local0)
OperationRegion (MMIO, SystemMemory, Local0, 0x0100)
Field (MMIO, DWordAcc, NoLock, Preserve)
{
Offset (0x04),
UHCC, 32
}
If (LNot (Local0))
{
Store (MSPE, Local1)
Store (One, MSPE)
If (Arg0)
{
Store (UHCC, Local2)
Or (Local2, 0x0400, Local2)
Store (Local2, UHCC)
}
Else
{
Store (UHCC, Local2)
Store (0x0400, Local3)
Not (Local3)
And (Local2, Local3, Local2)
Store (Local2, UHCC)
}
Store (Local1, MSPE)
}
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x0B, 0x04))
}
}
Device (EUSB)
{
Name (_ADR, 0x00130005)
OperationRegion (U20P, PCI_Config, Zero, 0x0100)
Field (U20P, ByteAcc, NoLock, Preserve)
{
Offset (0x04),
, 1,
MSPE, 1,
Offset (0x06),
Offset (0x10),
MBAS, 32,
Offset (0xC4),
PSTA, 2,
Offset (0xC5),
PMEE, 1,
, 6,
PMES, 1
}
Method (_PSW, 1, NotSerialized)
{
Store (MBAS, Local0)
And (Local0, 0xFFFFFFF0, Local0)
OperationRegion (MMIO, SystemMemory, Local0, 0x0100)
Field (MMIO, ByteAcc, NoLock, Preserve)
{
Offset (0x64),
P0SC, 32,
P1SC, 32,
P2SC, 32,
P3SC, 32,
P4SC, 32,
P5SC, 32
}
If (LNot (Local0))
{
Store (PSTA, Local2)
Store (Zero, PSTA)
Store (MSPE, Local3)
Store (One, MSPE)
If (Arg0)
{
Store (P0SC, Local4)
Or (Local4, 0x00300000, Local4)
Store (Local4, P0SC)
Store (P1SC, Local4)
Or (Local4, 0x00300000, Local4)
Store (Local4, P1SC)
Store (P2SC, Local4)
Or (Local4, 0x00300000, Local4)
Store (Local4, P2SC)
Store (P3SC, Local4)
Or (Local4, 0x00300000, Local4)
Store (Local4, P3SC)
Store (P4SC, Local4)
Or (Local4, 0x00300000, Local4)
Store (Local4, P4SC)
Store (P5SC, Local4)
Or (Local4, 0x00300000, Local4)
Store (Local4, P5SC)
Store (One, PMES)
Store (One, PMEE)
}
Else
{
Store (P0SC, Local4)
And (Local4, 0xFFCFFFFF, Local4)
Store (Local4, P0SC)
Store (P1SC, Local4)
And (Local4, 0xFFCFFFFF, Local4)
Store (Local4, P1SC)
Store (P2SC, Local4)
And (Local4, 0xFFCFFFFF, Local4)
Store (Local4, P2SC)
Store (P3SC, Local4)
And (Local4, 0xFFCFFFFF, Local4)
Store (Local4, P3SC)
Store (P4SC, Local4)
And (Local4, 0xFFCFFFFF, Local4)
Store (Local4, P4SC)
Store (P5SC, Local4)
And (Local4, 0xFFCFFFFF, Local4)
Store (Local4, P5SC)
Store (One, PMES)
Store (Zero, PMEE)
}
Store (Local3, MSPE)
Store (Local2, PSTA)
}
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x0B, 0x04))
}
}
Device (SATA)
{
Name (_ADR, 0x00120000)
Method (_INI, 0, NotSerialized)
{
\_GPE._L1F ()
}
Name (SPTM, Buffer (0x14)
{
/* 0000 */ 0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
/* 0008 */ 0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
/* 0010 */ 0x1F, 0x00, 0x00, 0x00
})
Device (PRID)
{
Name (_ADR, Zero)
Method (_GTM, 0, NotSerialized)
{
Return (SPTM)
}
Method (_STM, 3, NotSerialized)
{
}
Name (PRIS, Zero)
Method (_PS0, 0, NotSerialized)
{
If (LEqual (OSFL (), 0x04))
{
Store (0x32, Local0)
While (LAnd (LEqual (PMBY, One), Local0))
{
Sleep (0xFA)
Decrement (Local0)
}
}
Else
{
If (_OSI ("Windows 2006"))
{
Store (0x32, Local0)
While (LAnd (LEqual (PMBY, One), Local0))
{
Sleep (0xFA)
Decrement (Local0)
}
}
}
Store (Zero, PRIS)
}
Method (_PS3, 0, NotSerialized)
{
Store (0x03, PRIS)
}
Method (_PSC, 0, NotSerialized)
{
Return (PRIS)
}
Device (P_D0)
{
Name (_ADR, Zero)
Method (_STA, 0, NotSerialized)
{
If (Not (LEqual (PMS1, Zero)))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Name (S12P, Zero)
Method (_PS0, 0, NotSerialized)
{
Store (0x32, Local0)
While (LAnd (LEqual (PMBY, One), Local0))
{
Sleep (0xFA)
Decrement (Local0)
}
Store (Zero, S12P)
}
Method (_PS3, 0, NotSerialized)
{
Store (0x03, S12P)
}
Method (_PSC, 0, NotSerialized)
{
Return (S12P)
}
}
Device (P_D1)
{
Name (_ADR, One)
Method (_STA, 0, NotSerialized)
{
If (Not (LEqual (PSS1, Zero)))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Name (S12P, Zero)
Method (_PS0, 0, NotSerialized)
{
Store (0x32, Local0)
While (LAnd (LEqual (PSBY, One), Local0))
{
Sleep (0xFA)
Decrement (Local0)
}
Store (Zero, S12P)
}
Method (_PS3, 0, NotSerialized)
{
Store (0x03, S12P)
}
Method (_PSC, 0, NotSerialized)
{
Return (S12P)
}
}
}
Device (SECD)
{
Name (_ADR, One)
Method (_GTM, 0, NotSerialized)
{
Return (SPTM)
}
Method (_STM, 3, NotSerialized)
{
}
Name (SECS, Zero)
Method (_PS0, 0, NotSerialized)
{
If (LEqual (OSFL (), 0x04))
{
Store (0x32, Local0)
While (LAnd (LEqual (SMBY, One), Local0))
{
Sleep (0xFA)
Decrement (Local0)
}
}
Else
{
If (_OSI ("Windows 2006"))
{
Store (0x32, Local0)
While (LAnd (LEqual (SMBY, One), Local0))
{
Sleep (0xFA)
Decrement (Local0)
}
}
}
Store (Zero, SECS)
}
Method (_PS3, 0, NotSerialized)
{
Store (0x03, SECS)
}
Method (_PSC, 0, NotSerialized)
{
Return (SECS)
}
Device (S_D0)
{
Name (_ADR, Zero)
Method (_STA, 0, NotSerialized)
{
If (Not (LEqual (SMS1, Zero)))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Name (S12P, Zero)
Method (_PS0, 0, NotSerialized)
{
Store (0x32, Local0)
While (LAnd (LEqual (SMBY, One), Local0))
{
Sleep (0xFA)
Decrement (Local0)
}
Store (Zero, S12P)
}
Method (_PS3, 0, NotSerialized)
{
Store (0x03, S12P)
}
Method (_PSC, 0, NotSerialized)
{
Return (S12P)
}
}
Device (S_D1)
{
Name (_ADR, One)
Method (_STA, 0, NotSerialized)
{
If (Not (LEqual (SSS1, Zero)))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Name (S12P, Zero)
Method (_PS0, 0, NotSerialized)
{
Store (0x32, Local0)
While (LAnd (LEqual (SSBY, One), Local0))
{
Sleep (0xFA)
Decrement (Local0)
}
Store (Zero, S12P)
}
Method (_PS3, 0, NotSerialized)
{
Store (0x03, S12P)
}
Method (_PSC, 0, NotSerialized)
{
Return (S12P)
}
}
}
Scope (\_GPE)
{
Method (_L1F, 0, NotSerialized)
{
If (PRC0)
{
If (Not (LEqual (PMS1, Zero)))
{
Sleep (0x1E)
}
Notify (\_SB.PCI0.SATA.PRID.P_D0, One)
Store (One, PRC0)
}
If (PRC1)
{
If (Not (LEqual (SMS1, Zero)))
{
Sleep (0x1E)
}
Notify (\_SB.PCI0.SATA.SECD.S_D0, One)
Store (One, PRC1)
}
If (PRC2)
{
If (Not (LEqual (PSS1, Zero)))
{
Sleep (0x1E)
}
Notify (\_SB.PCI0.SATA.PRID.P_D1, One)
Store (One, PRC2)
}
If (PRC3)
{
If (Not (LEqual (SSS1, Zero)))
{
Sleep (0x1E)
}
Notify (\_SB.PCI0.SATA.SECD.S_D1, One)
Store (One, PRC3)
}
}
}
}
Device (P0P9)
{
Name (_ADR, 0x00140004)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x04, 0x04))
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR09)
}
Return (PR09)
}
Device (CBS0)
{
Name (_ADR, 0x00010000)
OperationRegion (CBSP, PCI_Config, Zero, 0xF0)
Field (CBSP, DWordAcc, NoLock, Preserve)
{
Offset (0x04),
CB04, 8,
Offset (0x14),
CB14, 8,
Offset (0x3C),
CB3C, 8,
Offset (0x3E),
CB3E, 8,
Offset (0x44),
CB44, 32,
Offset (0xE0),
PME0, 8,
PME1, 8
}
Method (_INI, 0, NotSerialized)
{
Store (Zero, CB44)
}
Method (CBSW, 1, NotSerialized)
{
If (LEqual (Arg0, 0x03))
{
Store (Zero, CB44)
}
}
Method (CBSR, 0, NotSerialized)
{
And (PME1, 0x80, Local1)
If (Local1)
{
And (PME0, 0xFC, PME0)
Store (PME1, Local2)
Store (Local2, PME1)
}
Return (Local1)
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x04, 0x03))
}
}
Device (SDCD)
{
Name (_ADR, 0x00010001)
}
Device (MMCD)
{
Name (_ADR, 0x00010002)
}
Device (MSCD)
{
Name (_ADR, 0x00010003)
}
Device (XDCD)
{
Name (_ADR, 0x00010004)
}
}
Device (PCE2)
{
Name (_ADR, 0x00020000)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x18, 0x04))
}
Device (VGA)
{
Name (_ADR, Zero)
OperationRegion (VSID, PCI_Config, Zero, 0x04)
Field (VSID, ByteAcc, NoLock, Preserve)
{
REG0, 32
}
Method (PRST, 0, NotSerialized)
{
If (LEqual (REG0, Ones))
{
Return (Zero)
}
Else
{
Return (One)
}
}
Name (UPDN, One)
Name (NXTD, One)
Name (LCDM, One)
Name (CRTM, 0x02)
Name (TVOM, 0x04)
Name (DVIM, 0x08)
Name (DONE, Zero)
Name (DOSF, One)
Method (_INI, 0, NotSerialized)
{
GETD ()
}
Method (_DOS, 1, NotSerialized)
{
Store (Arg0, DOSF)
}
Method (_DOD, 0, NotSerialized)
{
Return (Package (0x04)
{
0x00010100,
0x00010110,
0x0200,
0x0210
})
}
Device (CRTD)
{
Name (_ADR, 0x0100)
Method (_DCS, 0, NotSerialized)
{
Store (AVLD, Local0)
If (Local0)
{
If (And (Local0, CRTM))
{
Return (0x1F)
}
}
Return (0x1D)
}
Method (_DGS, 0, NotSerialized)
{
And (NXTD, CRTM, Local0)
If (Local0)
{
Return (One)
}
Return (Zero)
}
Method (_DSS, 1, NotSerialized)
{
If (And (Arg0, 0x40000000))
{
If (And (Arg0, 0x80000000))
{
Store (One, DONE)
}
}
}
}
Device (TVOD)
{
Name (_ADR, 0x0200)
Method (_DCS, 0, NotSerialized)
{
Store (AVLD, Local0)
If (Local0)
{
If (And (Local0, TVOM))
{
Return (0x1F)
}
}
Return (0x1D)
}
Method (_DGS, 0, NotSerialized)
{
And (NXTD, TVOM, Local0)
If (Local0)
{
Return (One)
}
Return (Zero)
}
Method (_DSS, 1, NotSerialized)
{
If (And (Arg0, 0x40000000))
{
If (And (Arg0, 0x80000000))
{
Store (One, DONE)
}
}
}
}
Device (DVID)
{
Name (_ADR, 0x0210)
Method (_DCS, 0, NotSerialized)
{
Store (AVLD, Local0)
If (Local0)
{
If (And (Local0, DVIM))
{
Return (0x1F)
}
}
Return (0x1D)
}
Method (_DGS, 0, NotSerialized)
{
And (NXTD, DVIM, Local0)
If (Local0)
{
Return (One)
}
Return (Zero)
}
Method (_DSS, 1, NotSerialized)
{
If (And (Arg0, 0x40000000))
{
If (And (Arg0, 0x80000000))
{
Store (One, DONE)
}
}
}
}
Device (LCDD)
{
Name (_ADR, 0x0110)
Method (_DCS, 0, NotSerialized)
{
Store (AVLD, Local0)
If (Local0)
{
If (And (Local0, LCDM))
{
Return (0x1F)
}
}
Return (0x1D)
}
Method (_DGS, 0, NotSerialized)
{
And (NXTD, LCDM, Local0)
If (Local0)
{
Return (One)
}
Return (Zero)
}
Method (_DSS, 1, NotSerialized)
{
If (And (Arg0, 0x40000000))
{
If (And (Arg0, 0x80000000))
{
Store (One, DONE)
}
}
}
Method (_BCL, 0, NotSerialized)
{
Return (Package (0x10)
{
0x0F,
0x0E,
0x0D,
0x0C,
0x0B,
0x0A,
0x09,
0x08,
0x07,
0x06,
0x05,
0x04,
0x03,
0x02,
One,
Zero
})
}
Name (BCBH, Zero)
Method (_BCM, 1, NotSerialized)
{
Store (Arg0, LBTN)
^^^^SBRG.EC0.STBR ()
If (ATKP)
{
If (LEqual (BCBH, One))
{
Notify (ATKD, Add (LBTN, 0x10))
}
If (LEqual (BCBH, 0x02))
{
Notify (ATKD, Add (LBTN, 0x20))
}
}
Store (Zero, BCBH)
}
Method (_BQC, 0, NotSerialized)
{
Return (LBTN)
}
}
Method (SWHD, 1, Serialized)
{
Store (One, UPDN)
If (And (DOSF, 0x03))
{
Store (Arg0, SETD)
ISMI (0x94)
}
Else
{
Store (Arg0, NXTD)
Store (Zero, DONE)
Notify (VGA, 0x80)
Store (0x01F4, Local0)
While (Local0)
{
If (DONE)
{
Store (Zero, Local0)
}
Else
{
Sleep (0x0A)
Decrement (Local0)
}
}
}
}
Method (GETD, 0, NotSerialized)
{
ISMI (0x95)
Return (ACTD)
}
Method (ADVD, 0, NotSerialized)
{
If (UPDN)
{
GETD ()
Store (ACTD, SETD)
Store (Zero, UPDN)
}
ISMI (0xA0)
Store (SETD, NXTD)
Return (SETD)
Return (NXTD)
}
Method (NATK, 0, NotSerialized)
{
Return (One)
}
}
}
Device (PCE4)
{
Name (_ADR, 0x00040000)
OperationRegion (LCTL, PCI_Config, 0x68, 0x04)
Field (LCTL, ByteAcc, NoLock, Preserve)
{
, 4,
PELD, 1,
PERL, 1
}
OperationRegion (SLOT, PCI_Config, 0x6C, 0x10)
Field (SLOT, ByteAcc, NoLock, Preserve)
{
SCAP, 32,
SCTL, 16,
ABP1, 1,
, 1,
, 1,
PDC1, 1,
CC10, 1,
, 1,
PDS1, 1,
Offset (0x07)
}
OperationRegion (RHUB, PCI_Config, 0x78, 0x10)
Field (RHUB, ByteAcc, NoLock, Preserve)
{
PMID, 16,
PMES, 1,
PMEP, 1,
Offset (0x04)
}
Method (HPHK, 0, NotSerialized)
{
Store (One, PDC1)
Store (Zero, PELD)
Sleep (0xFA)
Return (PDS1)
}
Name (_HPP, Package (0x04)
{
0x08,
0x40,
One,
Zero
})
Device (PEX0)
{
Name (_ADR, Zero)
Method (_STA, 0, NotSerialized)
{
If (PDS1)
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_RMV, 0, NotSerialized)
{
Return (One)
}
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x18, 0x04))
}
}
Device (PCE5)
{
Name (_ADR, 0x00050000)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x18, 0x04))
}
Device (TVT)
{
Name (_ADR, Zero)
}
}
Device (PCE6)
{
Name (_ADR, 0x00060000)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x18, 0x04))
}
Device (LAN)
{
Name (_ADR, Zero)
}
}
Device (PCE7)
{
Name (_ADR, 0x00070000)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x18, 0x04))
}
Device (WLAN)
{
Name (_ADR, Zero)
}
}
}
}
Scope (_SB.PCI0.SBRG)
{
Device (EC0)
{
Name (_HID, EisaId ("PNP0C09"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0062, // Range Minimum
0x0062, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0066, // Range Minimum
0x0066, // Range Maximum
0x00, // Alignment
0x01, // Length
)
})
Name (_GPE, 0x11)
Mutex (MUEC, 0x00)
Mutex (ASIO, 0x00)
Name (ECFL, Ones)
Method (ECAV, 0, NotSerialized)
{
If (LGreaterEqual (SLPT, 0x04))
{
Return (Zero)
}
If (LEqual (ECFL, Ones))
{
If (LGreaterEqual (_REV, 0x02))
{
Return (One)
}
Else
{
Return (Zero)
}
Return (Zero)
}
Return (ECFL)
}
OperationRegion (ECOR, EmbeddedControl, Zero, 0xFF)
Field (ECOR, ByteAcc, Lock, Preserve)
{
Offset (0x04),
CMD1, 8,
CDT1, 8,
CDT2, 8,
CDT3, 8,
Offset (0x80),
EPWS, 8,
EB0S, 8,
EB1S, 8,
EB0R, 8,
EB1R, 8,
EPWF, 8,
Offset (0x87),
EB0T, 8,
EB1T, 8,
Offset (0x8A),
HKEN, 1,
Offset (0x93),
TAH0, 16,
TAH1, 16,
TSTP, 8,
Offset (0x9C),
CDT4, 8,
CDT5, 8,
Offset (0xA0),
ECPU, 8,
ECRT, 8,
EPSV, 8,
EACT, 8,
Offset (0xB0),
B0PN, 16,
B0VL, 16,
B0RC, 16,
B0FC, 16,
B0MD, 16,
B0ST, 16,
B0CC, 16,
B0TM, 16,
B0C1, 16,
B0C2, 16,
B0C3, 16,
B0C4, 16,
Offset (0xD0),
B1PN, 16,
B1VL, 16,
B1RC, 16,
B1FC, 16,
B1MD, 16,
B1ST, 16,
B1CC, 16,
B1TM, 16,
B1C1, 16,
B1C2, 16,
B1C3, 16,
B1C4, 16,
Offset (0xF0),
B0DC, 16,
B0DV, 16,
B0SN, 16,
Offset (0xF8),
B1DC, 16,
B1DV, 16,
B1SN, 16
}
Name (SMBF, Zero)
OperationRegion (SMBX, EmbeddedControl, 0x18, 0x28)
Field (SMBX, ByteAcc, NoLock, Preserve)
{
PRTC, 8,
SSTS, 5,
, 1,
ALFG, 1,
CDFG, 1,
ADDR, 8,
CMDB, 8,
BDAT, 256,
BCNT, 8,
, 1,
ALAD, 7,
ALD0, 8,
ALD1, 8
}
Field (SMBX, ByteAcc, NoLock, Preserve)
{
Offset (0x04),
DAT0, 8,
DAT1, 8
}
Field (SMBX, ByteAcc, NoLock, Preserve)
{
Offset (0x04),
DT2B, 16
}
OperationRegion (NSBS, EmbeddedControl, 0x40, 0x04)
Field (NSBS, ByteAcc, NoLock, Preserve)
{
A2AD, 8,
A2D0, 8,
A2D1, 8,
A3AD, 8
}
Method (_INI, 0, NotSerialized)
{
If (LLessEqual (OSFG, OSME))
{
Store (One, ECFL)
}
}
Method (_REG, 2, NotSerialized)
{
If (LEqual (Arg0, 0x03))
{
Store (Arg1, ECFL)
}
}
}
}
Scope (_SB)
{
OperationRegion (PIRQ, SystemIO, 0x0C00, 0x02)
Field (PIRQ, ByteAcc, NoLock, Preserve)
{
PIDX, 8,
PDAT, 8
}
IndexField (PIDX, PDAT, ByteAcc, NoLock, Preserve)
{
PIRA, 8,
PIRB, 8,
PIRC, 8,
PIRD, 8,
PIRS, 8,
Offset (0x09),
PIRE, 8,
PIRF, 8,
PIRG, 8,
PIRH, 8
}
Method (IRQC, 0, NotSerialized)
{
Store (Zero, PIRA)
Store (Zero, PIRB)
Store (Zero, PIRC)
Store (Zero, PIRD)
Store (Zero, PIRE)
Store (Zero, PIRF)
Store (Zero, PIRG)
Store (Zero, PIRH)
}
Name (BUFA, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{15}
})
Name (IPRA, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{5,10,11}
})
Name (IPRB, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{5,10,11}
})
Name (IPRC, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{5,10,11}
})
Name (IPRD, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{5,10,11}
})
Device (LNKA)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, One)
Method (_STA, 0, NotSerialized)
{
If (PIRA)
{
Return (0x0B)
}
Else
{
Return (0x09)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSA)
}
Method (_DIS, 0, NotSerialized)
{
Store (Zero, PIRA)
}
Method (_CRS, 0, NotSerialized)
{
CreateWordField (BUFA, One, IRQX)
ShiftLeft (One, PIRA, IRQX)
Return (BUFA)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, One, IRA)
FindSetRightBit (IRA, Local0)
Decrement (Local0)
Store (Local0, PIRA)
}
}
Device (LNKB)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x02)
Method (_STA, 0, NotSerialized)
{
If (PIRB)
{
Return (0x0B)
}
Else
{
Return (0x09)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSB)
}
Method (_DIS, 0, NotSerialized)
{
Store (Zero, PIRB)
}
Method (_CRS, 0, NotSerialized)
{
CreateWordField (BUFA, One, IRQX)
ShiftLeft (One, PIRB, IRQX)
Return (BUFA)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, One, IRA)
FindSetRightBit (IRA, Local0)
Decrement (Local0)
Store (Local0, PIRB)
}
}
Device (LNKC)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x03)
Method (_STA, 0, NotSerialized)
{
If (PIRC)
{
Return (0x0B)
}
Else
{
Return (0x09)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSC)
}
Method (_DIS, 0, NotSerialized)
{
Store (Zero, PIRC)
}
Method (_CRS, 0, NotSerialized)
{
CreateWordField (BUFA, One, IRQX)
ShiftLeft (One, PIRC, IRQX)
Return (BUFA)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, One, IRA)
FindSetRightBit (IRA, Local0)
Decrement (Local0)
Store (Local0, PIRC)
}
}
Device (LNKD)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x04)
Method (_STA, 0, NotSerialized)
{
If (PIRD)
{
Return (0x0B)
}
Else
{
Return (0x09)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSD)
}
Method (_DIS, 0, NotSerialized)
{
Store (Zero, PIRD)
}
Method (_CRS, 0, NotSerialized)
{
CreateWordField (BUFA, One, IRQX)
ShiftLeft (One, PIRD, IRQX)
Return (BUFA)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, One, IRA)
FindSetRightBit (IRA, Local0)
Decrement (Local0)
Store (Local0, PIRD)
}
}
Device (LNKE)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x05)
Method (_STA, 0, NotSerialized)
{
If (PIRE)
{
Return (0x0B)
}
Else
{
Return (0x09)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSE)
}
Method (_DIS, 0, NotSerialized)
{
Store (Zero, PIRE)
}
Method (_CRS, 0, NotSerialized)
{
CreateWordField (BUFA, One, IRQX)
ShiftLeft (One, PIRE, IRQX)
Return (BUFA)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, One, IRA)
FindSetRightBit (PIRE, Local0)
Decrement (Local0)
Store (Local0, PIRE)
}
}
Device (LNKF)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x02)
Method (_STA, 0, NotSerialized)
{
If (PIRF)
{
Return (0x0B)
}
Else
{
Return (0x09)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSF)
}
Method (_DIS, 0, NotSerialized)
{
Store (Zero, PIRF)
}
Method (_CRS, 0, NotSerialized)
{
CreateWordField (BUFA, One, IRQX)
ShiftLeft (One, PIRF, IRQX)
Return (BUFA)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, One, IRA)
FindSetRightBit (IRA, Local0)
Decrement (Local0)
Store (Local0, PIRF)
}
}
Device (LNKG)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x03)
Method (_STA, 0, NotSerialized)
{
If (PIRG)
{
Return (0x0B)
}
Else
{
Return (0x09)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSG)
}
Method (_DIS, 0, NotSerialized)
{
Store (Zero, PIRG)
}
Method (_CRS, 0, NotSerialized)
{
CreateWordField (BUFA, One, IRQX)
ShiftLeft (One, PIRG, IRQX)
Return (BUFA)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, One, IRA)
FindSetRightBit (IRA, Local0)
Decrement (Local0)
Store (Local0, PIRG)
}
}
Device (LNKH)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x04)
Method (_STA, 0, NotSerialized)
{
If (PIRH)
{
Return (0x0B)
}
Else
{
Return (0x09)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSH)
}
Method (_DIS, 0, NotSerialized)
{
Store (Zero, PIRH)
}
Method (_CRS, 0, NotSerialized)
{
CreateWordField (BUFA, One, IRQX)
ShiftLeft (One, PIRH, IRQX)
Return (BUFA)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, One, IRA)
FindSetRightBit (IRA, Local0)
Decrement (Local0)
Store (Local0, PIRH)
}
}
}
Scope (_SB)
{
Name (XCPD, Zero)
Name (XNPT, One)
Name (XCAP, 0x02)
Name (XDCP, 0x04)
Name (XDCT, 0x08)
Name (XDST, 0x0A)
Name (XLCP, 0x0C)
Name (XLCT, 0x10)
Name (XLST, 0x12)
Name (XSCP, 0x14)
Name (XSCT, 0x18)
Name (XSST, 0x1A)
Name (XRCT, 0x1C)
Mutex (MUTE, 0x00)
Method (RBPE, 1, NotSerialized)
{
Acquire (MUTE, 0x03E8)
Add (Arg0, PCIB, Local0)
OperationRegion (PCFG, SystemMemory, Local0, One)
Field (PCFG, ByteAcc, NoLock, Preserve)
{
XCFG, 8
}
Release (MUTE)
Return (XCFG)
}
Method (RWPE, 1, NotSerialized)
{
Acquire (MUTE, 0x03E8)
And (Arg0, 0xFFFFFFFE, Arg0)
Add (Arg0, PCIB, Local0)
OperationRegion (PCFG, SystemMemory, Local0, 0x02)
Field (PCFG, WordAcc, NoLock, Preserve)
{
XCFG, 16
}
Release (MUTE)
Return (XCFG)
}
Method (RDPE, 1, NotSerialized)
{
Acquire (MUTE, 0x03E8)
And (Arg0, 0xFFFFFFFC, Arg0)
Add (Arg0, PCIB, Local0)
OperationRegion (PCFG, SystemMemory, Local0, 0x04)
Field (PCFG, DWordAcc, NoLock, Preserve)
{
XCFG, 32
}
Release (MUTE)
Return (XCFG)
}
Method (WBPE, 2, NotSerialized)
{
Acquire (MUTE, 0x0FFF)
Add (Arg0, PCIB, Local0)
OperationRegion (PCFG, SystemMemory, Local0, One)
Field (PCFG, ByteAcc, NoLock, Preserve)
{
XCFG, 8
}
Store (Arg1, XCFG)
Release (MUTE)
}
Method (WWPE, 2, NotSerialized)
{
Acquire (MUTE, 0x03E8)
And (Arg0, 0xFFFFFFFE, Arg0)
Add (Arg0, PCIB, Local0)
OperationRegion (PCFG, SystemMemory, Local0, 0x02)
Field (PCFG, WordAcc, NoLock, Preserve)
{
XCFG, 16
}
Store (Arg1, XCFG)
Release (MUTE)
}
Method (WDPE, 2, NotSerialized)
{
Acquire (MUTE, 0x03E8)
And (Arg0, 0xFFFFFFFC, Arg0)
Add (Arg0, PCIB, Local0)
OperationRegion (PCFG, SystemMemory, Local0, 0x04)
Field (PCFG, DWordAcc, NoLock, Preserve)
{
XCFG, 32
}
Store (Arg1, XCFG)
Release (MUTE)
}
Method (RWDP, 3, NotSerialized)
{
Acquire (MUTE, 0x03E8)
And (Arg0, 0xFFFFFFFC, Arg0)
Add (Arg0, PCIB, Local0)
OperationRegion (PCFG, SystemMemory, Local0, 0x04)
Field (PCFG, DWordAcc, NoLock, Preserve)
{
XCFG, 32
}
And (XCFG, Arg2, Local1)
Or (Local1, Arg1, XCFG)
Release (MUTE)
}
Method (RPME, 1, NotSerialized)
{
Add (Arg0, 0x84, Local0)
Store (RDPE (Local0), Local1)
If (LEqual (Local1, Ones))
{
Return (Zero)
}
Else
{
If (LAnd (Local1, 0x00010000))
{
WDPE (Local0, And (Local1, 0x00010000))
Return (One)
}
Return (Zero)
}
}
}
Scope (_SB.PCI0.SBRG.EC0)
{
OperationRegion (ECIO, SystemIO, 0x025C, 0x10)
Field (ECIO, ByteAcc, Lock, Preserve)
{
ECDT, 8,
ECCM, 8
}
Method (GBTT, 1, Serialized)
{
If (ECAV ())
{
If (LEqual (Arg0, Zero))
{
Store (EB0T, Local0)
}
Else
{
Store (EB1T, Local0)
}
}
Else
{
Store (0xFF, Local0)
}
Return (Local0)
}
Method (WCMD, 1, Serialized)
{
If (ECAV ())
{
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (Arg0, CMD1)
Release (MUEC)
}
}
}
Method (DLY0, 1, Serialized)
{
If (LNot (ECAV ()))
{
Return (Ones)
}
Store (Ones, Local0)
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (Arg0, CDT1)
Store (0x6B, CDT2)
Store (Zero, CDT3)
Store (0xBB, CMD1)
Store (0x7F, Local1)
While (LAnd (Local1, CMD1))
{
Sleep (One)
Decrement (Local1)
}
If (LEqual (CMD1, Zero))
{
Store (CDT1, Local0)
}
Release (MUEC)
}
Return (Local0)
}
Method (RRAM, 1, Serialized)
{
If (ECAV ())
{
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (Arg0, Local0)
And (Local0, 0xFF, Local1)
ShiftRight (Local0, 0x08, Local0)
And (Local0, 0xFF, Local0)
Store (Local1, CDT3)
Store (Local0, CDT2)
Store (0x80, CDT1)
Store (0xB6, CMD1)
Store (0x7F, Local0)
While (LAnd (Local0, CMD1))
{
Sleep (One)
Decrement (Local0)
}
If (LEqual (CMD1, Zero))
{
Store (CDT1, Local0)
}
Else
{
Store (Ones, Local0)
}
Release (MUEC)
Return (Local0)
}
}
Return (Ones)
}
Method (WRAM, 2, Serialized)
{
If (ECAV ())
{
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (Arg0, Local0)
And (Local0, 0xFF, Local1)
ShiftRight (Local0, 0x08, Local0)
And (Local0, 0xFF, Local0)
Store (Local1, CDT3)
Store (Local0, CDT2)
Store (0x81, CDT1)
Store (Arg1, CDT4)
Store (0xB6, CMD1)
Store (0x7F, Local0)
While (LAnd (Local0, CMD1))
{
Sleep (One)
Decrement (Local0)
}
If (LEqual (CMD1, Zero))
{
Store (One, Local0)
}
Else
{
Store (Ones, Local0)
}
Release (MUEC)
Return (Local0)
}
}
Return (Ones)
}
Method (STBR, 0, Serialized)
{
And (VGAF, One, Local0)
If (Local0)
{
ISMI (0x9A)
}
Else
{
If (ACAP ())
{
Store (DerefOf (Index (PWAC, LBTN)), Local0)
}
Else
{
Store (DerefOf (Index (PWDC, LBTN)), Local0)
}
WBOV (Zero, Local0)
}
}
Method (SBRV, 1, Serialized)
{
WBOV (Zero, Arg0)
}
Name (DECF, Zero)
Method (SFNV, 2, Serialized)
{
If (LEqual (Arg0, Zero))
{
If (And (DECF, One))
{
Store (RRAM (0x0521), Local0)
Or (Local0, 0x80, Local0)
WRAM (0x0521, Local0)
}
If (And (DECF, 0x02))
{
Store (RRAM (0x0522), Local0)
Or (Local0, 0x80, Local0)
WRAM (0x0522, Local0)
}
Store (Zero, DECF)
Return (Zero)
}
If (LEqual (Arg0, One))
{
Store (RRAM (0x0521), Local0)
And (Local0, 0x7F, Local0)
WRAM (0x0521, Local0)
Or (DECF, One, DECF)
WFOV (Zero, Arg1)
Return (Zero)
}
If (LEqual (Arg0, 0x02))
{
Store (RRAM (0x0522), Local0)
And (Local0, 0x7F, Local0)
WRAM (0x0522, Local0)
Or (DECF, 0x02, DECF)
WFOV (One, Arg1)
Return (Zero)
}
Return (Zero)
}
Method (SADC, 2, Serialized)
{
If (ECAV ())
{
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (Arg0, CDT1)
Store (Arg1, CDT2)
Store (0xC4, CMD1)
Store (0x7F, Local0)
While (LAnd (Local0, CMD1))
{
Sleep (One)
Decrement (Local0)
}
If (LEqual (CMD1, Zero))
{
Store (CDT1, Local0)
}
Else
{
Store (Ones, Local0)
}
Release (MUEC)
Return (Local0)
}
}
Return (Ones)
}
Method (SBQH, 3, Serialized)
{
If (ECAV ())
{
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (Arg0, CDT1)
Store (Arg1, CDT2)
Store (Arg2, CMD1)
Store (0x7F, Local0)
While (LAnd (Local0, CMD1))
{
Sleep (One)
Decrement (Local0)
}
If (LEqual (CMD1, Zero))
{
Store (CDT1, Local0)
}
Else
{
Store (Ones, Local0)
}
Release (MUEC)
Return (Local0)
}
}
Return (Ones)
}
Method (SPIN, 2, Serialized)
{
Store (Arg0, Local0)
If (Arg1)
{
Or (Local0, 0x20, Local0)
}
Else
{
Or (Local0, 0x40, Local0)
}
STC5 (Local0)
Return (One)
}
Method (RPIN, 1, Serialized)
{
And (Arg0, 0x1F, Local0)
Store (STC5 (Local0), Local1)
Return (Local1)
}
Method (ST87, 2, Serialized)
{
If (ECAV ())
{
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (Arg0, CDT1)
Store (Arg1, CDT2)
Store (0x87, CMD1)
Store (0x7F, Local0)
While (LAnd (Local0, CMD1))
{
Sleep (One)
Decrement (Local0)
}
If (LEqual (CMD1, Zero))
{
Store (CDT1, Local0)
}
Else
{
Store (Ones, Local0)
}
Release (MUEC)
Return (Local0)
}
}
Return (Ones)
}
Method (STC5, 1, Serialized)
{
If (ECAV ())
{
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (Arg0, CDT1)
Store (0xC5, CMD1)
Store (0x7F, Local0)
While (LAnd (Local0, CMD1))
{
Sleep (One)
Decrement (Local0)
}
If (LEqual (CMD1, Zero))
{
Store (CDT1, Local0)
}
Else
{
Store (Ones, Local0)
}
Release (MUEC)
Return (Local0)
}
}
Return (Ones)
}
Method (RBAT, 2, Serialized)
{
If (LNot (ECAV ()))
{
Return (Ones)
}
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (0x03, Local0)
While (Local0)
{
Store (Arg0, CDT2)
Store (Arg1, Local1)
ShiftLeft (Local1, One, Local1)
Add (Local1, 0xDA, Local1)
Store (Local1, CMD1)
Store (0x7F, Local1)
While (LAnd (CMD1, Local1))
{
Decrement (Local1)
Sleep (One)
}
If (LEqual (CMD1, Zero))
{
Store (CDT1, Local1)
Store (Zero, Local0)
}
Else
{
Store (Ones, Local1)
Decrement (Local0)
}
}
Release (MUEC)
Return (Local1)
}
Return (Ones)
}
Method (WBAT, 3, Serialized)
{
Or (Arg0, 0x80, Local3)
If (LNot (ECAV ()))
{
Return (Ones)
}
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (0x03, Local0)
While (Local0)
{
Store (Arg2, CDT1)
Store (Local3, CDT2)
Store (Arg1, Local1)
ShiftLeft (Local1, One, Local1)
Add (Local1, 0xDA, Local1)
Store (Local1, CMD1)
Store (0x7F, Local1)
While (LAnd (CMD1, Local1))
{
Decrement (Local1)
Sleep (One)
}
}
Release (MUEC)
Return (Local1)
}
Return (Ones)
}
Method (FNCT, 2, Serialized)
{
If (ECAV ())
{
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (Arg0, CDT2)
Store (Arg1, CDT1)
Store (0xC4, CMD1)
Store (0x7F, Local0)
While (LAnd (Local0, CMD1))
{
Sleep (One)
Decrement (Local0)
}
Release (MUEC)
}
}
}
Name (WRQK, 0x02)
Name (RDQK, 0x03)
Name (SDBT, 0x04)
Name (RCBT, 0x05)
Name (WRBT, 0x06)
Name (RDBT, 0x07)
Name (WRWD, 0x08)
Name (RDWD, 0x09)
Name (WRBL, 0x0A)
Name (RDBL, 0x0B)
Name (PCLL, 0x0C)
Name (GOOD, Zero)
Name (UKER, 0x07)
Name (DAER, 0x10)
Name (CMDN, 0x12)
Name (UKE2, 0x13)
Name (DADN, 0x17)
Name (SBTO, 0x18)
Name (USPT, 0x19)
Name (SBBY, 0x1A)
Method (SWTC, 1, Serialized)
{
Store (UKER, Local0)
Store (0x03, Local1)
While (LAnd (Local0, Local1))
{
Store (0x23, Local2)
While (Local2)
{
If (PRTC)
{
Sleep (One)
Decrement (Local2)
}
Else
{
Store (Zero, Local2)
Store (SSTS, Local0)
}
}
If (Local0)
{
Store (Zero, PRTC)
Decrement (Local1)
If (Local1)
{
Sleep (One)
Store (Arg0, PRTC)
}
}
}
Return (Local0)
}
Method (SMBR, 3, Serialized)
{
Store (Package (0x03)
{
0x07,
Zero,
Zero
}, Local0)
If (LNot (ECAV ()))
{
Return (Local0)
}
If (LNotEqual (Arg0, RDBL))
{
If (LNotEqual (Arg0, RDWD))
{
If (LNotEqual (Arg0, RDBT))
{
If (LNotEqual (Arg0, RCBT))
{
If (LNotEqual (Arg0, RDQK))
{
Return (Local0)
}
}
}
}
}
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (PRTC, Local1)
Store (Zero, Local2)
While (LNotEqual (Local1, Zero))
{
Stall (0x0A)
Increment (Local2)
If (LGreater (Local2, 0x03E8))
{
Store (SBBY, Index (Local0, Zero))
Store (Zero, Local1)
}
Else
{
Store (PRTC, Local1)
}
}
If (LLessEqual (Local2, 0x03E8))
{
ShiftLeft (Arg1, One, Local3)
Or (Local3, One, Local3)
Store (Local3, ADDR)
If (LNotEqual (Arg0, RDQK))
{
If (LNotEqual (Arg0, RCBT))
{
Store (Arg2, CMDB)
}
}
Store (Zero, BDAT)
Store (Arg0, PRTC)
Store (SWTC (Arg0), Index (Local0, Zero))
If (LEqual (DerefOf (Index (Local0, Zero)), Zero))
{
If (LEqual (Arg0, RDBL))
{
Store (BCNT, Index (Local0, One))
Store (BDAT, Index (Local0, 0x02))
}
If (LEqual (Arg0, RDWD))
{
Store (0x02, Index (Local0, One))
Store (DT2B, Index (Local0, 0x02))
}
If (LEqual (Arg0, RDBT))
{
Store (One, Index (Local0, One))
Store (DAT0, Index (Local0, 0x02))
}
If (LEqual (Arg0, RCBT))
{
Store (One, Index (Local0, One))
Store (DAT0, Index (Local0, 0x02))
}
}
}
Release (MUEC)
}
Return (Local0)
}
Method (SMBW, 5, Serialized)
{
Store (Package (0x01)
{
0x07
}, Local0)
If (LNot (ECAV ()))
{
Return (Local0)
}
If (LNotEqual (Arg0, WRBL))
{
If (LNotEqual (Arg0, WRWD))
{
If (LNotEqual (Arg0, WRBT))
{
If (LNotEqual (Arg0, SDBT))
{
If (LNotEqual (Arg0, WRQK))
{
Return (Local0)
}
}
}
}
}
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (PRTC, Local1)
Store (Zero, Local2)
While (LNotEqual (Local1, Zero))
{
Stall (0x0A)
Increment (Local2)
If (LGreater (Local2, 0x03E8))
{
Store (SBBY, Index (Local0, Zero))
Store (Zero, Local1)
}
Else
{
Store (PRTC, Local1)
}
}
If (LLessEqual (Local2, 0x03E8))
{
Store (Zero, BDAT)
ShiftLeft (Arg1, One, Local3)
Store (Local3, ADDR)
If (LNotEqual (Arg0, WRQK))
{
If (LNotEqual (Arg0, SDBT))
{
Store (Arg2, CMDB)
}
}
If (LEqual (Arg0, WRBL))
{
Store (Arg3, BCNT)
Store (Arg4, BDAT)
}
If (LEqual (Arg0, WRWD))
{
Store (Arg4, DT2B)
}
If (LEqual (Arg0, WRBT))
{
Store (Arg4, DAT0)
}
If (LEqual (Arg0, SDBT))
{
Store (Arg4, DAT0)
}
Store (Arg0, PRTC)
Store (SWTC (Arg0), Index (Local0, Zero))
}
Release (MUEC)
}
Return (Local0)
}
Mutex (MUEP, 0x00)
Method (RBEP, 1, NotSerialized)
{
Store (0xFFFF, Local1)
If (LEqual (Acquire (MUEP, 0xFFFF), Zero))
{
Store (RRAM (0x0620), Local3)
And (Local3, 0x7F, Local4)
WRAM (0x0620, Local4)
Store (0x10, Local2)
Store (0x10, Local1)
While (And (LEqual (Local1, 0x10), LNotEqual (Local2, Zero)))
{
SMBW (WRWD, BADR, Zero, 0x02, 0x0635)
SMBW (WRWD, BADR, Zero, 0x02, 0x0606)
Store (SMBR (RDBT, 0x50, Arg0), Local0)
Store (DerefOf (Index (Local0, Zero)), Local1)
Decrement (Local2)
}
WRAM (0x0620, Local3)
ShiftLeft (Local1, 0x08, Local1)
Or (Local1, DerefOf (Index (Local0, 0x02)), Local1)
Release (MUEP)
}
Return (Local1)
}
Method (WBEP, 2, NotSerialized)
{
Store (0xFFFF, Local1)
If (LEqual (Acquire (MUEP, 0xFFFF), Zero))
{
Store (RRAM (0x0620), Local3)
And (Local3, 0x7F, Local4)
WRAM (0x0620, Local4)
Store (0x10, Local2)
Store (0x10, Local1)
While (And (LEqual (Local1, 0x10), LNotEqual (Local2, Zero)))
{
SMBW (WRWD, BADR, Zero, 0x02, 0x0635)
SMBW (WRWD, BADR, Zero, 0x02, 0x0606)
Store (SMBW (WRBT, 0x50, Arg0, One, Arg1), Local0)
Store (DerefOf (Index (Local0, Zero)), Local1)
Decrement (Local2)
}
WRAM (0x0620, Local3)
Release (MUEP)
}
Return (Local1)
}
Method (ECXT, 6, NotSerialized)
{
Store (Package (0x06)
{
0x10,
Zero,
Zero,
Zero,
Zero,
Zero
}, Local1)
If (ECAV ())
{
If (LEqual (Acquire (MUEC, 0xFFFF), Zero))
{
Store (Arg1, CDT1)
Store (Arg2, CDT2)
Store (Arg3, CDT3)
Store (Arg4, CDT4)
Store (Arg5, CDT5)
Store (Arg0, CMD1)
Store (0x7F, Local0)
While (LAnd (Local0, CMD1))
{
Sleep (One)
Decrement (Local0)
}
If (Local0)
{
Store (Zero, Index (Local1, Zero))
Store (CDT1, Index (Local1, One))
Store (CDT2, Index (Local1, 0x02))
Store (CDT3, Index (Local1, 0x03))
Store (CDT4, Index (Local1, 0x04))
Store (CDT5, Index (Local1, 0x05))
}
Else
{
Store (0x10, Index (Local1, Zero))
}
Release (MUEC)
}
}
Return (Local1)
}
OperationRegion (KAID, SystemIO, 0x025C, One)
Field (KAID, ByteAcc, NoLock, Preserve)
{
AEID, 8
}
OperationRegion (KAIC, SystemIO, 0x025D, One)
Field (KAIC, ByteAcc, NoLock, Preserve)
{
AEIC, 8
}
Method (WEIE, 0, Serialized)
{
Store (0x4000, Local0)
And (AEIC, 0x02, Local1)
While (LAnd (LNotEqual (Local0, Zero), LEqual (Local1, 0x02)))
{
And (AEIC, 0x02, Local1)
Decrement (Local0)
}
}
Method (WEOF, 0, Serialized)
{
Store (0x4000, Local0)
And (AEIC, One, Local1)
While (LAnd (LNotEqual (Local0, Zero), LEqual (Local1, Zero)))
{
And (AEIC, One, Local1)
Decrement (Local0)
}
}
Method (RFOV, 1, Serialized)
{
Store (Zero, Local0)
If (LEqual (Acquire (ASIO, 0xFFFF), Zero))
{
WEIE ()
Store (0x83, AEIC)
WEIE ()
Store (Arg0, AEID)
WEOF ()
Store (AEID, Local0)
WEIE ()
Release (ASIO)
}
Return (Local0)
}
Method (WFOV, 2, Serialized)
{
If (LEqual (Acquire (ASIO, 0xFFFF), Zero))
{
WEIE ()
Store (0x84, AEIC)
WEIE ()
Store (Arg0, AEID)
WEIE ()
Store (Arg1, AEID)
Release (ASIO)
}
}
Method (RBOV, 1, Serialized)
{
Store (Zero, Local0)
If (LEqual (Acquire (ASIO, 0xFFFF), Zero))
{
WEIE ()
Store (0x85, AEIC)
WEIE ()
Store (Arg0, AEID)
WEOF ()
Store (AEID, Local0)
WEIE ()
Release (ASIO)
}
Return (Local0)
}
Method (WBOV, 2, Serialized)
{
If (LEqual (Acquire (ASIO, 0xFFFF), Zero))
{
WEIE ()
Store (0x86, AEIC)
WEIE ()
Store (Arg0, AEID)
WEIE ()
Store (Arg1, AEID)
Release (ASIO)
}
}
Method (WMFN, 1, Serialized)
{
If (LEqual (Acquire (ASIO, 0xFFFF), Zero))
{
WEIE ()
Store (0x98, AEIC)
WEIE ()
Store (Arg0, AEID)
WEIE ()
Release (ASIO)
}
}
}
Scope (_SB.PCI0.SBRG.EC0)
{
Method (ACPS, 0, Serialized)
{
Return (And (GPWS (), One))
}
Method (DCPS, 1, Serialized)
{
Store (GPWS (), Local0)
If (Arg0)
{
And (Local0, 0x04, Local0)
}
Else
{
And (Local0, 0x02, Local0)
}
If (Local0)
{
Store (One, Local0)
}
Else
{
Store (Zero, Local0)
}
Return (Local0)
}
Method (GPWS, 0, Serialized)
{
If (ECAV ())
{
And (EPWS, 0x07, Local0)
}
Else
{
Store (Zero, Local0)
}
Return (Local0)
}
Method (BCHG, 1, Serialized)
{
If (Arg0)
{
If (ECAV ())
{
Store (EB1S, Local0)
And (Local0, 0xFF, Local0)
If (LNotEqual (Local0, 0xFF))
{
And (Local0, 0x02, Local0)
}
Else
{
Store (Zero, Local0)
}
}
Else
{
Store (Zero, Local0)
}
Return (Local0)
}
Else
{
If (ECAV ())
{
Store (EB0S, Local0)
And (Local0, 0xFF, Local0)
If (LNotEqual (Local0, 0xFF))
{
And (Local0, 0x02, Local0)
}
Else
{
Store (Zero, Local0)
}
}
Else
{
Store (Zero, Local0)
}
Return (Local0)
}
}
Method (BCLE, 1, Serialized)
{
If (Arg0)
{
If (ECAV ())
{
Store (EB1S, Local1)
And (Local1, 0xFFFF, Local1)
If (LNotEqual (Local1, 0xFFFF))
{
And (Local1, 0x16, Local1)
If (LEqual (Local1, 0x04))
{
Store (Zero, Local0)
}
Else
{
If (LEqual (Local1, 0x02))
{
Store (One, Local0)
}
Else
{
If (LEqual (Local1, 0x10))
{
Store (One, Local0)
}
}
}
}
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
Else
{
If (ECAV ())
{
Store (EB0S, Local1)
And (Local1, 0xFFFF, Local1)
If (LNotEqual (Local1, 0xFFFF))
{
And (Local1, 0x16, Local1)
If (LEqual (Local1, 0x04))
{
Store (Zero, Local0)
}
Else
{
If (LEqual (Local1, 0x02))
{
Store (One, Local0)
}
Else
{
If (LEqual (Local1, 0x10))
{
Store (One, Local0)
}
}
}
}
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
}
Method (CHBT, 1, Serialized)
{
If (ECAV ())
{
Store (GBTT (Arg0), Local1)
If (LEqual (Local1, 0xFF))
{
Store (Zero, Local0)
}
Else
{
And (Local1, 0x10, Local0)
If (Local0)
{
Store (One, Local0)
}
}
}
Else
{
Store (DCTP, Local0)
}
Return (Local0)
}
Method (TACH, 1, NotSerialized)
{
If (ECAV ())
{
If (Arg0)
{
If (And (DECF, 0x02))
{
Store (RRAM (0x1820), Local0)
Store (RRAM (0x1821), Local1)
ShiftLeft (Local1, 0x08, Local1)
Add (Local0, Local1, Local0)
}
Else
{
Store (TAH1, Local0)
}
}
Else
{
If (And (DECF, One))
{
Store (RRAM (0x181E), Local0)
Store (RRAM (0x181F), Local1)
ShiftLeft (Local1, 0x08, Local1)
Add (Local0, Local1, Local0)
}
Else
{
Store (TAH0, Local0)
}
}
And (Local0, 0xFFFF, Local0)
If (LNotEqual (Local0, Zero))
{
If (LEqual (Local0, 0xFFFF))
{
Store (Zero, Local0)
}
Else
{
Store (0x80, Local1)
Store (0x02, Local2)
Multiply (Local1, Local2, Local3)
Multiply (Local0, Local3, Local4)
Divide (0x03938700, Local4, Local5, Local6)
Multiply (Local6, 0x0A, Local6)
Store (Local6, Local0)
}
}
Else
{
Store (Zero, Local0)
}
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
Name (HKFG, Zero)
Method (EC0S, 1, NotSerialized)
{
If (LEqual (Arg0, 0x03)) {}
Store (HKEN, HKFG)
}
Method (EC0W, 1, NotSerialized)
{
If (LEqual (Arg0, 0x03))
{
STBR ()
}
If (LLessEqual (Arg0, 0x04))
{
Store (ACPS (), ACPF)
Store (DCPS (Zero), DCPF)
Notify (\_PR.P001, 0x80)
If (LGreaterEqual (CPUN, 0x02))
{
Notify (\_PR.P002, 0x80)
}
}
If (LGreaterEqual (Arg0, 0x04))
{
Store (HKFG, HKEN)
}
}
}
Scope (\)
{
Name (TSP, 0x0A)
Name (TC1, 0x02)
Name (TC2, 0x0A)
}
Scope (_TZ)
{
Method (KELV, 1, NotSerialized)
{
And (Arg0, 0xFF, Local0)
If (LGreaterEqual (Local0, 0x80))
{
Subtract (0x0100, Local0, Local0)
Multiply (Local0, 0x0A, Local0)
Subtract (0x0AAC, Local0, Local0)
Return (Local0)
}
Multiply (Local0, 0x0A, Local0)
Add (Local0, 0x0AAC, Local0)
Return (Local0)
}
Method (CELC, 1, NotSerialized)
{
Subtract (Arg0, 0x0AAC, Local0)
Divide (Local0, 0x0A, Local1, Local0)
Return (Local0)
}
Name (PLCY, Zero)
ThermalZone (THRM)
{
Method (_CRT, 0, NotSerialized)
{
RCRT ()
Return (KELV (TCRT))
}
Method (_TMP, 0, NotSerialized)
{
Store (0x05, Local1)
While (Local1)
{
Store (RTMP (), Local0)
If (LGreater (Local0, TCRT))
{
Decrement (Local1)
}
Else
{
Store (Zero, Local1)
}
}
Return (KELV (Local0))
}
Name (_PSL, Package (0x01)
{
\_PR.P001
})
Method (_TSP, 0, NotSerialized)
{
Multiply (TSP, 0x0A, Local0)
Return (Local0)
}
Method (_TC1, 0, NotSerialized)
{
Return (TC1)
}
Method (_TC2, 0, NotSerialized)
{
Return (TC2)
}
Method (_PSV, 0, NotSerialized)
{
RPSV ()
If (PLCY)
{
Return (KELV (PPSV))
}
Else
{
Return (KELV (TPSV))
}
}
Method (_SCP, 1, NotSerialized)
{
Store (Zero, PLCY)
Notify (THRM, 0x81)
}
}
}
Scope (_TZ)
{
Name (ATMP, 0x3C)
Name (LTMP, 0x3C)
Name (FANS, Zero)
Method (RTMP, 0, NotSerialized)
{
If (\_SB.PCI0.SBRG.EC0.ECAV ())
{
Store (\_SB.PCI0.SBRG.EC0.ECPU, Local0)
If (LLess (Local0, 0x80))
{
Store (Local0, LTMP)
}
}
Return (LTMP)
}
Method (RLTM, 0, NotSerialized)
{
Return (ATMP)
}
Method (RCRT, 0, NotSerialized)
{
If (\_SB.PCI0.SBRG.EC0.ECAV ())
{
Store (\_SB.PCI0.SBRG.EC0.ECRT, Local0)
If (LLess (Local0, 0x80))
{
Store (Local0, TCRT)
}
}
}
Method (RPSV, 0, NotSerialized)
{
If (\_SB.PCI0.SBRG.EC0.ECAV ())
{
Store (\_SB.PCI0.SBRG.EC0.EPSV, Local0)
If (LLess (Local0, 0x80))
{
Store (Local0, TPSV)
}
}
}
Method (RFAN, 1, NotSerialized)
{
If (\_SB.PCI0.SBRG.EC0.ECAV ())
{
Store (\_SB.PCI0.SBRG.EC0.TACH (Arg0), Local0)
Divide (Local0, 0x64, Local1, Local0)
Add (Local0, One, Local0)
If (LLessEqual (Local0, 0x3C))
{
Store (Local0, FANS)
}
Else
{
Store (FANS, Local0)
}
}
Else
{
Store (Zero, Local0)
}
Return (Local0)
}
Method (RFSE, 0, NotSerialized)
{
If (\_SB.PCI0.SBRG.EC0.ECAV ())
{
Store (\_SB.PCI0.SBRG.EC0.RFOV (Zero), Local1)
If (LLess (Local1, 0x80))
{
If (LLess (Local1, 0x0A))
{
Store (Zero, Local0)
}
Else
{
Store (One, Local0)
}
}
Else
{
If (LLess (Local1, 0xF5))
{
Store (0x02, Local0)
}
Else
{
Store (0x0F, Local0)
}
}
}
Else
{
Store (Zero, Local0)
}
Return (Local0)
}
Method (TCHG, 0, NotSerialized)
{
}
Method (THDL, 0, NotSerialized)
{
}
Method (TMSS, 1, NotSerialized)
{
}
Method (TMSW, 1, NotSerialized)
{
}
}
Scope (_SB.PCI0.SMBS)
{
OperationRegion (SBGP, PCI_Config, Zero, 0xFF)
Field (SBGP, AnyAcc, NoLock, Preserve)
{
Offset (0x50),
GO49, 1,
GO50, 1,
GO51, 1,
GO52, 1,
Offset (0x51),
GI49, 1,
GI50, 1,
GI51, 1,
GI52, 1,
Offset (0x52),
GO53, 1,
GO54, 1,
GO55, 1,
GO56, 1,
Offset (0x53),
GI53, 1,
GI54, 1,
GI55, 1,
GI56, 1,
Offset (0x54),
GO57, 1,
GO58, 1,
GO59, 1,
GO60, 1,
Offset (0x55),
GI57, 1,
GI58, 1,
GI59, 1,
GI60, 1,
Offset (0x56),
GO61, 1,
GO62, 1,
GO63, 1,
GO64, 1,
Offset (0x57),
GI61, 1,
GI62, 1,
GI63, 1,
GI64, 1,
Offset (0x5A),
GO70, 1,
GO71, 1,
GO72, 1,
GO73, 1,
Offset (0x5B),
GI70, 1,
GI71, 1,
GI72, 1,
GI73, 1,
Offset (0x7E),
GO65, 1,
GO66, 1,
GO68, 1,
GO69, 1,
Offset (0x7F),
GI65, 1,
GI66, 1,
GI68, 1,
GI69, 1,
Offset (0x80),
GO00, 1,
GO01, 1,
GO02, 1,
GO03, 1,
Offset (0x81),
GI00, 1,
GI01, 1,
GI02, 1,
GI03, 1,
Offset (0x82),
GO13, 1,
GO14, 1,
GO31, 1,
GO32, 1,
Offset (0x83),
GI13, 1,
GI14, 1,
GI31, 1,
GI32, 1,
Offset (0xA6),
GO37, 1,
, 1,
GO47, 1,
GO48, 1,
Offset (0xA7),
GI37, 1,
, 1,
GI47, 1,
GI48, 1,
Offset (0xA8),
GO04, 1,
GO05, 1,
GO06, 1,
GO07, 1,
GO08, 1,
GO09, 1,
GO11, 1,
GO12, 1,
Offset (0xAA),
GI04, 1,
GI05, 1,
GI06, 1,
GI07, 1,
GI08, 1,
GI09, 1,
GI11, 1,
GI12, 1,
GO10, 1,
, 1,
GI10, 1,
Offset (0xAC),
GO67, 1,
, 1,
GI67, 1,
Offset (0xBC),
GO33, 1,
GO34, 1,
GO35, 1,
GO36, 1,
Offset (0xBD),
GI33, 1,
GI34, 1,
GI35, 1,
GI36, 1
}
}
Scope (\)
{
OperationRegion (APIO, SystemIO, PMBS, 0x20)
Field (APIO, ByteAcc, NoLock, Preserve)
{
Offset (0x10),
, 1,
TDTY, 3,
TENA, 1,
TTDT, 3,
FRCT, 1,
, 8,
THLS, 1,
Offset (0x13)
}
Method (RGPL, 2, Serialized)
{
Return (Zero)
}
Method (SGPL, 3, Serialized)
{
}
Method (RGPP, 1, Serialized)
{
Return (Zero)
}
Method (TGPP, 1, Serialized)
{
}
Method (SGPP, 2, Serialized)
{
}
Name (PMEW, Zero)
Method (SBRS, 1, NotSerialized)
{
}
Method (SBRW, 1, NotSerialized)
{
}
Method (STRP, 1, NotSerialized)
{
}
Method (HKTH, 0, Serialized)
{
If (THLS)
{
Return (TTDT)
}
Else
{
Return (0xFFFF)
}
}
OperationRegion (SMB0, SystemIO, SMBB, 0x10)
Field (SMB0, ByteAcc, NoLock, Preserve)
{
HSTS, 8,
SSTS, 8,
HSTC, 8,
HCMD, 8,
HADR, 8,
HDT0, 8,
HDT1, 8,
BLKD, 8,
SLCT, 8,
SHCM, 8,
SLEV, 16,
SLDT, 16,
STIM, 8
}
Name (RBUF, Package (0x20) {})
Method (HBSY, 0, NotSerialized)
{
Store (0x00FFFFFF, Local0)
While (Local0)
{
And (HSTS, One, Local1)
If (LNot (Local1))
{
Return (Zero)
}
Decrement (Local0)
}
Return (One)
}
Method (WTSB, 0, NotSerialized)
{
Store (0x00FFFFFF, Local0)
While (Local0)
{
Decrement (Local0)
And (HSTS, 0x1E, Local1)
If (LEqual (Local1, Zero))
{
Return (One)
}
If (Local1)
{
Return (Zero)
}
}
Return (Zero)
}
Mutex (P4SM, 0x00)
Method (SBYT, 2, Serialized)
{
If (LNotEqual (Acquire (P4SM, 0xFFFF), Zero))
{
Return (Ones)
}
Store (0x05, Local0)
While (Local0)
{
If (HBSY ())
{
Decrement (Local0)
}
Else
{
Store (Arg0, HADR)
Store (Arg1, HCMD)
Store (0xFF, HSTS)
Store (0x44, HSTC)
If (WTSB ())
{
Release (P4SM)
Return (One)
}
Else
{
Decrement (Local0)
}
}
}
Release (P4SM)
Return (Ones)
}
Method (WBYT, 3, Serialized)
{
If (LNotEqual (Acquire (P4SM, 0xFFFF), Zero))
{
Return (Ones)
}
Store (0x05, Local0)
While (Local0)
{
If (HBSY ())
{
Decrement (Local0)
}
Else
{
Store (Arg0, HADR)
Store (Arg1, HCMD)
Store (Arg2, HDT0)
Store (0xFF, HSTS)
Store (0x48, HSTC)
If (WTSB ())
{
Release (P4SM)
Return (One)
}
Else
{
Decrement (Local0)
}
}
}
Release (P4SM)
Return (Ones)
}
Method (WWRD, 3, Serialized)
{
If (LNotEqual (Acquire (P4SM, 0xFFFF), Zero))
{
Return (Ones)
}
Store (0x05, Local0)
While (Local0)
{
If (HBSY ())
{
Decrement (Local0)
}
Else
{
Store (Arg0, HADR)
Store (Arg1, HCMD)
And (Arg2, 0xFF, Local1)
ShiftRight (Arg2, 0x08, Local2)
And (Local2, 0xFF, Local2)
Store (Local2, HDT0)
Store (Local1, HDT1)
Store (0xFF, HSTS)
Store (0x4C, HSTC)
If (WTSB ())
{
Release (P4SM)
Return (One)
}
Else
{
Decrement (Local0)
}
}
}
Release (P4SM)
Return (Ones)
}
Method (WBLK, 3, Serialized)
{
If (LNotEqual (Acquire (P4SM, 0xFFFF), Zero))
{
Return (Ones)
}
Store (0x05, Local0)
While (Local0)
{
If (HBSY ())
{
Decrement (Local0)
}
Else
{
Store (Arg0, HADR)
Store (Arg1, HCMD)
Store (HSTC, Local1)
Store (Arg2, Local2)
Store (Zero, Local1)
While (Local2)
{
Store (DerefOf (Index (RBUF, Local1)), BLKD)
Decrement (Local2)
Increment (Local1)
}
Store (Arg2, HDT0)
Store (HSTC, Local1)
Store (0xFF, HSTS)
Store (0x54, HSTC)
If (WTSB ())
{
Release (P4SM)
Return (One)
}
Else
{
Decrement (Local0)
}
}
}
Release (P4SM)
Return (Ones)
}
Method (RSBT, 2, Serialized)
{
If (LNotEqual (Acquire (P4SM, 0xFFFF), Zero))
{
Return (Ones)
}
Store (0x05, Local0)
While (Local0)
{
If (HBSY ())
{
Decrement (Local0)
}
Else
{
Or (Arg0, One, HADR)
Store (Arg1, HCMD)
Store (0xFF, HSTS)
Store (0x44, HSTC)
If (WTSB ())
{
Release (P4SM)
Return (HDT0)
}
Else
{
Decrement (Local0)
}
}
}
Release (P4SM)
Return (Ones)
}
Method (RBYT, 2, Serialized)
{
If (LNotEqual (Acquire (P4SM, 0xFFFF), Zero))
{
Return (Ones)
}
Store (0x05, Local0)
While (Local0)
{
If (HBSY ())
{
Decrement (Local0)
}
Else
{
Or (Arg0, One, HADR)
Store (Arg1, HCMD)
Store (0xFF, HSTS)
Store (0x48, HSTC)
If (WTSB ())
{
Release (P4SM)
Return (HDT0)
}
Else
{
Decrement (Local0)
}
}
}
Release (P4SM)
Return (Ones)
}
Method (RWRD, 2, Serialized)
{
If (LNotEqual (Acquire (P4SM, 0xFFFF), Zero))
{
Return (Ones)
}
Store (0x05, Local0)
While (Local0)
{
If (HBSY ())
{
Decrement (Local0)
}
Else
{
Or (Arg0, One, HADR)
Store (Arg1, HCMD)
Store (0xFF, HSTS)
Store (0x4C, HSTC)
If (WTSB ())
{
Store (HDT0, Local1)
ShiftLeft (Local1, 0x08, Local1)
Store (HDT1, Local2)
Add (Local1, Local2, Local1)
Release (P4SM)
Return (Local1)
}
Else
{
Decrement (Local0)
}
}
}
Release (P4SM)
Return (Ones)
}
Method (RBLK, 3, Serialized)
{
If (LNotEqual (Acquire (P4SM, 0xFFFF), Zero))
{
Return (Ones)
}
Store (0x05, Local0)
While (Local0)
{
If (HBSY ())
{
Decrement (Local0)
}
Else
{
Or (Arg0, One, HADR)
Store (Arg1, HCMD)
Store (0xFF, HSTS)
Store (0x54, HSTC)
If (WTSB ())
{
Store (HSTC, Local1)
Store (HDT0, Local2)
Store (Local2, Local3)
Store (Zero, RBUF)
Store (Zero, Local1)
While (Local2)
{
Store (BLKD, Index (RBUF, Local1))
Decrement (Local2)
Increment (Local1)
}
Release (P4SM)
Return (Local3)
}
Else
{
Decrement (Local0)
}
}
}
Release (P4SM)
Return (Ones)
}
}
Method (NPTS, 1, NotSerialized)
{
}
Method (NWAK, 1, NotSerialized)
{
}
Name (FZTF, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF5
})
Scope (\)
{
Method (DIAG, 1, NotSerialized)
{
Store (Arg0, DBG8)
SBYT (Zero, Arg0)
}
OperationRegion (GPSC, SystemIO, 0xB0, 0x02)
Field (GPSC, ByteAcc, NoLock, Preserve)
{
SMCM, 8,
SMST, 8
}
Method (ISMI, 1, Serialized)
{
Store (Arg0, SMCM)
}
Method (ASMI, 1, Serialized)
{
Store (Arg0, ALPR)
Store (0xA3, SMCM)
Return (ALPR)
}
OperationRegion (ECMS, SystemIO, 0x72, 0x02)
Field (ECMS, ByteAcc, Lock, Preserve)
{
EIND, 8,
EDAT, 8
}
IndexField (EIND, EDAT, ByteAcc, NoLock, Preserve)
{
Offset (0xC8),
IKFG, 8,
FRPN, 16,
RAMB, 32,
AVOL, 8,
LBTN, 8,
ERRF, 8,
OCLK, 8,
WIDE, 1,
OVCK, 2,
SLPN, 3,
ACRD, 1,
Offset (0xD4),
CPUR, 6,
CPUF, 2,
LBT2, 8,
PCMS, 8,
CLKS, 8,
CLKL, 8,
CLKD, 128,
ALSL, 8,
ALAE, 1,
ALDE, 1,
ALSP, 1,
Offset (0xEB),
WLDP, 1,
BTDP, 1,
WRST, 1,
BRST, 1,
WRPS, 1,
BRPS, 1,
Offset (0xEC),
SYNA, 1,
ALPS, 1,
Offset (0xED),
IKF2, 8,
OSPM, 8,
TCGF, 8,
PPIS, 8,
PPIR, 8,
UHDB, 8
}
OperationRegion (RAMW, SystemMemory, RAMB, 0x0100)
Field (RAMW, AnyAcc, NoLock, Preserve)
{
TRTY, 8,
FSFN, 8,
FSTA, 16,
FADR, 32,
FSIZ, 16,
ACTD, 8,
AVLD, 8,
SETD, 8,
ACPF, 8,
DCPF, 8,
DCP2, 8,
DCTP, 8,
CTPY, 8,
PADL, 16,
CADL, 16,
CSTE, 16,
NSTE, 16,
SSTE, 16,
SFUN, 8,
TPSV, 8,
TAC0, 8,
TCRT, 8,
TDO1, 8,
TDO2, 8,
PPSV, 8,
PAC0, 8,
T0HL, 8,
T0LL, 8,
T0F1, 8,
T0F2, 8,
T1HL, 8,
T1LL, 8,
T1F1, 8,
T1F2, 8,
T2HL, 8,
T2LL, 8,
T2F1, 8,
T2F2, 8,
T3HL, 8,
T3LL, 8,
T3F1, 8,
T3F2, 8,
T4HL, 8,
T4LL, 8,
T4F1, 8,
T4F2, 8,
T5HL, 8,
T5LL, 8,
T5F1, 8,
T5F2, 8,
T6HL, 8,
T6LL, 8,
T6F1, 8,
T6F2, 8,
T7HL, 8,
T7LL, 8,
T7F1, 8,
T7F2, 8,
SLPT, 8,
AIBF, 8,
IDES, 8,
VGAF, 16,
C4CP, 8,
LUXS, 8,
LUXL, 8,
LUXH, 8,
LUXF, 8,
MNAM, 64,
DBR1, 32,
DBR2, 32,
DBR3, 32,
DBR4, 32,
LCDV, 32,
LCDR, 8,
PTIM, 8,
PTMP, 8,
SMIF, 8,
DTSE, 8,
DTS1, 8,
DTS2, 8,
MPEN, 8,
QFAN, 8,
VBIF, 8,
BIPA, 32,
RTCW, 16,
CPUN, 8,
ALPR, 32,
PSTN, 16,
GNBF, 32
}
OperationRegion (DBGM, SystemMemory, 0x000D0000, 0x04)
Field (DBGM, DWordAcc, NoLock, Preserve)
{
DBGG, 32
}
Name (OSFG, Zero)
Name (OS9X, One)
Name (OS98, 0x02)
Name (OSME, 0x04)
Name (OS2K, 0x08)
Name (OSXP, 0x10)
Name (OSVT, 0x20)
Name (SLMT, Zero)
Method (MSOS, 0, NotSerialized)
{
If (CondRefOf (_OSI, Local0))
{
If (_OSI ("Windows 2001"))
{
Store (OSXP, OSFG)
}
If (_OSI ("Windows 2001 SP1"))
{
Store (OSXP, OSFG)
}
If (_OSI ("Windows 2001 SP2"))
{
Store (OSXP, OSFG)
}
If (_OSI ("Windows 2006"))
{
Store (OSVT, OSFG)
}
Return (OSFG)
}
Else
{
If (MCTH (_OS, "Microsoft Windows"))
{
Store (OS98, OSFG)
}
Else
{
If (MCTH (_OS, "Microsoft WindowsME: Millennium Edition"))
{
Store (OSME, OSFG)
}
Else
{
If (MCTH (_OS, "Microsoft Windows NT"))
{
Store (OS2K, OSFG)
}
Else
{
Store (OSXP, OSFG)
}
}
}
}
Return (OSFG)
}
Method (DBGR, 4, NotSerialized)
{
Store (Arg0, DBR1)
Store (Arg1, DBR2)
Store (Arg2, DBR3)
Store (Arg3, DBR4)
ISMI (0x96)
}
Name (ONAM, "ASUSTEK")
Method (ADVG, 0, NotSerialized)
{
If (\_SB.PCI0.P0P1.VGA.PRST ())
{
Return (\_SB.PCI0.P0P1.VGA.ADVD ())
}
If (\_SB.PCI0.PCE2.VGA.PRST ())
{
Return (\_SB.PCI0.PCE2.VGA.ADVD ())
}
Return (0x03)
}
Method (SWHG, 1, Serialized)
{
If (\_SB.PCI0.P0P1.VGA.PRST ())
{
\_SB.PCI0.P0P1.VGA.SWHD (Arg0)
Return (One)
}
If (\_SB.PCI0.PCE2.VGA.PRST ())
{
\_SB.PCI0.PCE2.VGA.SWHD (Arg0)
Return (One)
}
Return (Zero)
}
Method (NATK, 0, NotSerialized)
{
If (\_SB.PCI0.P0P1.VGA.PRST ())
{
Return (\_SB.PCI0.P0P1.VGA.NATK ())
}
If (\_SB.PCI0.PCE2.VGA.PRST ())
{
Return (\_SB.PCI0.PCE2.VGA.NATK ())
}
Return (One)
}
Name (PWAC, Buffer (0x10)
{
/* 0000 */ 0x18, 0x2F, 0x3E, 0x4A, 0x52, 0x56, 0x5C, 0x60,
/* 0008 */ 0x64, 0x68, 0x6C, 0x70, 0x73, 0x76, 0x78, 0x97
})
Name (PWDC, Buffer (0x10)
{
/* 0000 */ 0x18, 0x2F, 0x37, 0x3E, 0x48, 0x4C, 0x50, 0x54,
/* 0008 */ 0x58, 0x5C, 0x60, 0x64, 0x68, 0x6C, 0x70, 0x74
})
}
Scope (_SB.PCI0)
{
Method (_INI, 0, NotSerialized)
{
Store (MSOS (), OSPM)
If (ACPF)
{
ShiftRight (PSTN, 0x08, SLMT)
}
Else
{
And (PSTN, 0xFF, SLMT)
}
If (LLessEqual (RVID, 0x13))
{
Store (Zero, PWDE)
}
}
}
Scope (_SB.PCI0)
{
Device (AC0)
{
Name (_HID, "ACPI0003")
Method (_PSR, 0, NotSerialized)
{
Return (^^SBRG.EC0.ACAP ())
}
Name (_PCL, Package (0x01)
{
PCI0
})
}
}
Scope (_SB.PCI0.SBRG.EC0)
{
Method (ACAP, 0, Serialized)
{
Return (ACPF)
}
Method (_QA0, 0, NotSerialized)
{
If (ACPS ())
{
Store (One, ACPF)
Store (0x58, Local0)
ShiftRight (PSTN, 0x08, SLMT)
}
Else
{
Store (Zero, ACPF)
Store (0x57, Local0)
And (PSTN, 0xFF, SLMT)
}
If (LNotEqual (OSFG, OSVT))
{
STBR ()
}
Notify (AC0, 0x80)
If (ATKP)
{
Notify (ATKD, Local0)
}
Sleep (0x64)
Notify (\_PR.P001, 0x80)
Notify (\_PR.P001, 0x81)
If (LGreaterEqual (CPUN, 0x02))
{
Notify (\_PR.P002, 0x80)
Notify (\_PR.P002, 0x81)
}
Sleep (0x0A)
NBAT (0x80)
}
}
Scope (_SB.PCI0)
{
Device (BAT0)
{
Name (_HID, EisaId ("PNP0C0A"))
Name (_UID, Zero)
Name (_PCL, Package (0x01)
{
PCI0
})
Method (_STA, 0, NotSerialized)
{
If (^^SBRG.EC0.BATP (Zero))
{
Return (0x1F)
}
Else
{
Return (0x0F)
}
}
Name (LOW2, 0x012C)
Name (DVOT, 0x0E)
Name (PUNT, One)
Name (LFCC, 0x1770)
Name (NBIF, Package (0x0D)
{
Zero,
Ones,
Ones,
One,
Ones,
Ones,
Ones,
Ones,
Ones,
"",
"",
"",
""
})
Name (PBIF, Package (0x0D)
{
One,
0x1770,
0x1770,
One,
0x39D0,
0x0258,
0x012C,
0x3C,
0x3C,
"M3N",
" ",
"LIon",
"ASUSTek"
})
Name (PBST, Package (0x04)
{
Zero,
Ones,
Ones,
Ones
})
Method (FBIF, 5, NotSerialized)
{
Store (Arg0, PUNT)
Store (Arg1, Local1)
Store (Arg2, Local2)
If (LEqual (PUNT, Zero))
{
Multiply (Local1, 0x0A, Local1)
Multiply (Local2, 0x0A, Local2)
}
Store (Arg0, Index (PBIF, Zero))
Store (Local1, Index (PBIF, One))
Store (Local2, Index (PBIF, 0x02))
Store (Local2, LFCC)
Store (Arg3, Index (PBIF, 0x03))
Store (Arg4, Index (PBIF, 0x04))
Divide (Local1, 0x0A, Local3, Local5)
Store (Local5, Index (PBIF, 0x05))
ShiftRight (Local5, One, Local6)
Store (Local6, Index (PBIF, 0x06))
Store (Local6, LOW2)
Divide (Local1, 0x64, Local3, Local7)
Store (Local7, Index (PBIF, 0x07))
Store (Local7, Index (PBIF, 0x08))
}
Method (CBIF, 0, NotSerialized)
{
If (PUNT)
{
Store (DerefOf (Index (PBIF, 0x04)), Local0)
Add (Local0, 0x01F4, Local0)
Divide (Local0, 0x03E8, Local1, DVOT)
Store (Zero, Index (PBIF, Zero))
Multiply (DerefOf (Index (PBIF, One)), DVOT, Index (PBIF, One
))
Multiply (DerefOf (Index (PBIF, 0x02)), DVOT, Index (PBIF, 0x02
))
Multiply (DerefOf (Index (PBIF, 0x05)), DVOT, Index (PBIF, 0x05
))
Multiply (DerefOf (Index (PBIF, 0x06)), DVOT, Index (PBIF, 0x06
))
Multiply (DerefOf (Index (PBIF, 0x07)), DVOT, Index (PBIF, 0x07
))
Multiply (DerefOf (Index (PBIF, 0x08)), DVOT, Index (PBIF, 0x08
))
}
}
Method (_BIF, 0, NotSerialized)
{
If (LNot (^^SBRG.EC0.BATP (Zero)))
{
Return (NBIF)
}
If (LEqual (^^SBRG.EC0.GBTT (Zero), 0xFF))
{
Return (NBIF)
}
BATS (Zero)
Store (^^SBRG.EC0.BIF9 (), Index (PBIF, 0x09))
Store (ONAM, Index (PBIF, 0x0C))
Store (^^SBRG.EC0.BIF0 (), Local0)
Store (^^SBRG.EC0.BIF1 (), Local1)
Store (^^SBRG.EC0.BIF2 (), Local2)
Store (^^SBRG.EC0.BIF3 (), Local3)
Store (^^SBRG.EC0.BIF4 (), Local4)
BATR ()
If (LNotEqual (Local0, Ones))
{
If (LNotEqual (Local1, Ones))
{
If (LNotEqual (Local2, Ones))
{
If (LNotEqual (Local3, Ones))
{
If (LNotEqual (Local4, Ones))
{
FBIF (Local0, Local1, Local2, Local3, Local4)
CBIF ()
}
}
}
}
}
If (LEqual (PUNT, Zero))
{
Multiply (Local2, 0x0A, Local2)
}
Store (Local2, LFCC)
Return (PBIF)
}
Method (FBST, 4, NotSerialized)
{
And (Arg1, 0xFFFF, Local1)
Store (Zero, Local0)
If (^^SBRG.EC0.ACAP ())
{
Store (One, Local0)
}
If (Local0)
{
If (CHGS (Zero))
{
Store (0x02, Local0)
}
Else
{
Store (Zero, Local0)
}
}
Else
{
Store (One, Local0)
}
And (Arg0, 0x0300, Local2)
If (Local2)
{
ShiftLeft (One, 0x02, Local2)
Or (Local0, Local2, Local0)
}
If (LGreaterEqual (Local1, 0x8000))
{
Subtract (0xFFFF, Local1, Local1)
}
Store (Arg2, Local2)
If (LEqual (PUNT, Zero))
{
Multiply (Local1, DVOT, Local1)
Multiply (Local2, 0x0A, Local2)
}
And (Local0, 0x02, Local3)
If (LNot (Local3))
{
Subtract (LFCC, Local2, Local3)
Divide (LFCC, 0xC8, Local4, Local5)
If (LLess (Local3, Local5))
{
Store (LFCC, Local2)
}
}
Else
{
Divide (LFCC, 0xC8, Local4, Local5)
Subtract (LFCC, Local5, Local4)
If (LGreater (Local2, Local4))
{
Store (Local4, Local2)
}
}
If (LNot (^^SBRG.EC0.ACAP ()))
{
Divide (Local2, MBLF, Local3, Local4)
If (LLess (Local1, Local4))
{
Store (Local4, Local1)
}
}
Store (Local0, Index (PBST, Zero))
Store (Local1, Index (PBST, One))
Store (Local2, Index (PBST, 0x02))
Store (Arg3, Index (PBST, 0x03))
}
Method (CBST, 0, NotSerialized)
{
If (PUNT)
{
Multiply (DerefOf (Index (PBST, One)), DVOT, Index (PBST, One
))
Multiply (DerefOf (Index (PBST, 0x02)), DVOT, Index (PBST, 0x02
))
}
}
Method (_BST, 0, NotSerialized)
{
If (LNot (^^SBRG.EC0.BATP (Zero)))
{
Store (Zero, Index (PBST, Zero))
Store (Ones, Index (PBST, One))
Store (Ones, Index (PBST, 0x02))
Store (Ones, Index (PBST, 0x03))
Return (PBST)
}
If (LEqual (^^SBRG.EC0.GBTT (Zero), 0xFF))
{
Store (Zero, Index (PBST, Zero))
Store (Ones, Index (PBST, One))
Store (Ones, Index (PBST, 0x02))
Store (Ones, Index (PBST, 0x03))
Return (PBST)
}
If (MES4)
{
Decrement (MES4)
Return (PBST)
}
BATS (Zero)
Store (^^SBRG.EC0.BSTS (), Local0)
Store (^^SBRG.EC0.BCRT (), Local1)
Store (^^SBRG.EC0.BRCP (), Local2)
Store (^^SBRG.EC0.BVOT (), Local3)
BATR ()
If (LNotEqual (Local0, Ones))
{
If (LNotEqual (Local1, Ones))
{
If (LNotEqual (Local2, Ones))
{
If (LNotEqual (Local3, Ones))
{
FBST (Local0, Local1, Local2, Local3)
CBST ()
}
}
}
}
Return (PBST)
}
}
}
Scope (_SB.PCI0)
{
Name (B0CR, Zero)
Name (B1CR, Zero)
Method (GGCC, 1, Serialized)
{
BATS (Arg0)
Store (^SBRG.EC0.BCRT (), Local0)
BATR ()
If (LEqual (Local0, Ones))
{
If (Arg0)
{
Store (B1CR, Local0)
}
Else
{
Store (B0CR, Local0)
}
}
And (Local0, 0x8000, Local1)
If (Local1)
{
Store (Zero, Local0)
}
If (Arg0)
{
Store (Local0, B1CR)
}
Else
{
Store (Local0, B0CR)
}
Return (Local0)
}
}
Scope (_SB.PCI0.SBRG.EC0)
{
Name (BADR, 0x0B)
Name (CADR, 0x09)
Name (SADR, 0x0A)
Method (ALMH, 1, NotSerialized)
{
If (LEqual (Arg0, BADR))
{
NBAT (0x80)
}
}
Method (BIFW, 1, NotSerialized)
{
Store (SMBR (RDWD, BADR, Arg0), Local0)
Store (DerefOf (Index (Local0, Zero)), Local1)
If (Local1)
{
Return (Ones)
}
Else
{
Return (DerefOf (Index (Local0, 0x02)))
}
}
Method (BIF0, 0, NotSerialized)
{
If (ECAV ())
{
If (BSLF)
{
Store (B1MD, Local0)
}
Else
{
Store (B0MD, Local0)
}
If (LNotEqual (Local0, 0xFFFF))
{
ShiftRight (Local0, 0x0F, Local1)
And (Local1, One, Local1)
XOr (Local1, One, Local0)
}
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
Method (BIF1, 0, NotSerialized)
{
If (ECAV ())
{
If (BSLF)
{
Store (B1DC, Local0)
}
Else
{
Store (B0DC, Local0)
}
And (Local0, 0xFFFF, Local0)
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
Method (BIF2, 0, NotSerialized)
{
If (ECAV ())
{
If (BSLF)
{
Store (B1FC, Local0)
}
Else
{
Store (B0FC, Local0)
}
And (Local0, 0xFFFF, Local0)
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
Method (BIF3, 0, NotSerialized)
{
If (ECAV ())
{
If (BSLF)
{
Store (B1MD, Local0)
}
Else
{
Store (B0MD, Local0)
}
If (LNotEqual (Local0, 0xFFFF))
{
ShiftRight (Local0, 0x09, Local0)
And (Local0, One, Local0)
XOr (Local0, One, Local0)
}
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
Method (BIF4, 0, NotSerialized)
{
If (ECAV ())
{
If (BSLF)
{
Store (B1DV, Local0)
}
Else
{
Store (B0DV, Local0)
}
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
Method (BIF9, 0, NotSerialized)
{
Name (BSTR, Buffer (0x20) {})
Store (SMBR (RDBL, BADR, 0x21), Local0)
If (LNotEqual (DerefOf (Index (Local0, Zero)), Zero))
{
Store (MNAM, BSTR)
Store (Zero, Index (BSTR, 0x04))
}
Else
{
Store (DerefOf (Index (Local0, 0x02)), BSTR)
Store (Zero, Index (BSTR, DerefOf (Index (Local0, One))))
}
Return (BSTR)
}
Method (BIFA, 0, NotSerialized)
{
If (ECAV ())
{
If (BSLF)
{
Store (B1SN, Local0)
}
Else
{
Store (B0SN, Local0)
}
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
Method (BSTS, 0, NotSerialized)
{
If (ECAV ())
{
If (BSLF)
{
Store (B1ST, Local0)
}
Else
{
Store (B0ST, Local0)
}
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
Method (BCRT, 0, NotSerialized)
{
If (ECAV ())
{
If (BSLF)
{
Store (B1CC, Local0)
}
Else
{
Store (B0CC, Local0)
}
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
Method (BRCP, 0, NotSerialized)
{
If (ECAV ())
{
If (BSLF)
{
Store (B1RC, Local0)
}
Else
{
Store (B0RC, Local0)
}
If (LEqual (Local0, 0xFFFF))
{
Store (Ones, Local0)
}
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
Method (BVOT, 0, NotSerialized)
{
If (ECAV ())
{
If (BSLF)
{
Store (B1VL, Local0)
}
Else
{
Store (B0VL, Local0)
}
}
Else
{
Store (Ones, Local0)
}
Return (Local0)
}
}
Scope (\)
{
Method (CHGS, 1, Serialized)
{
Store (\_SB.PCI0.SBRG.EC0.BCHG (Arg0), Local0)
Return (Local0)
}
Name (BSLF, Zero)
Method (BATS, 1, Serialized)
{
If (Arg0)
{
Store (One, BSLF)
}
Else
{
Store (Zero, BSLF)
}
}
Method (BATR, 0, Serialized)
{
}
}
Scope (_SB.PCI0.SBRG.EC0)
{
Method (_QA1, 0, NotSerialized)
{
Store (DCPS (Zero), DCPF)
If (DCPF)
{
Sleep (0x07D0)
}
Notify (BAT0, 0x80)
Notify (BAT0, 0x81)
}
Method (_QA5, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x6E)
}
Else
{
If (BATP (Zero))
{
Notify (BAT0, 0x80)
}
}
}
Method (_QA3, 0, NotSerialized)
{
If (BATP (Zero))
{
Store (BCLE (Zero), Local0)
If (LEqual (Local0, Zero))
{
Notify (BAT0, 0x81)
}
Else
{
Notify (BAT0, 0x81)
Notify (AC0, 0x80)
}
}
}
Method (BATP, 1, Serialized)
{
If (Arg0)
{
Return (DCP2)
}
Else
{
Return (DCPF)
}
}
Method (NBAT, 1, NotSerialized)
{
If (BATP (Zero))
{
Notify (BAT0, Arg0)
}
}
}
Scope (_SB)
{
Device (PWRB)
{
Name (_HID, EisaId ("PNP0C0C"))
Name (_UID, 0xAA)
Name (_STA, 0x0B)
}
}
Scope (_SB)
{
Device (SLPB)
{
Name (_HID, EisaId ("PNP0C0E"))
Method (_PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x04,
0x04
})
}
}
}
Scope (\)
{
Name (MES4, Zero)
Method (OEMS, 1, NotSerialized)
{
If (LEqual (Arg0, 0x03))
{
If (LLessEqual (OSFG, OSME))
{
Store (One, WIDE)
}
Else
{
Store (Zero, WIDE)
}
}
SBRS (Arg0)
\_SB.PCI0.SBRG.EC0.EC0S (Arg0)
Store (Arg0, SLPN)
DIAG (Add (Arg0, 0xD0))
Store (Arg0, SLPT)
If (Arg0)
{
STRP (One)
}
PRJS (Arg0)
ISMI (0x9D)
}
Method (OEMW, 1, NotSerialized)
{
If (\_SB.PCI0.SBRG.EC0.ACPS ())
{
ShiftRight (PSTN, 0x08, SLMT)
}
Else
{
And (PSTN, 0xFF, SLMT)
}
ISMI (0x9E)
Store (Zero, SLPT)
\_SB.PCI0.SBRG.EC0.EC0W (Arg0)
If (LEqual (Arg0, 0x04))
{
If (LLessEqual (OSFG, OSME))
{
Store (0x02, MES4)
}
Else
{
Store (Zero, MES4)
}
}
SBRW (Arg0)
If (LEqual (Arg0, 0x04))
{
Notify (\_SB.SLPB, 0x02)
}
PRJW (Arg0)
DIAG (Add (Arg0, 0xF0))
}
}
Scope (_SB.ATKD)
{
Method (FSMI, 1, NotSerialized)
{
Store (Arg0, FSFN)
Or (Arg0, 0xA0, Local0)
DIAG (Local0)
ISMI (0x90)
Return (FSTA)
}
Method (FLSH, 1, NotSerialized)
{
Store (Arg0, FSTA)
FSMI (Zero)
}
Method (FINI, 1, NotSerialized)
{
Store (Arg0, FADR)
Return (FSMI (One))
}
Method (FERS, 1, NotSerialized)
{
Store (Arg0, FSTA)
Return (FSMI (0x02))
}
Method (FWRI, 1, NotSerialized)
{
Store (Arg0, FADR)
Store (0x1000, FSIZ)
Return (Subtract (0x1000, FSMI (0x03)))
}
Method (FWRP, 0, NotSerialized)
{
Store (Zero, FSIZ)
Return (Subtract (0x1000, FSMI (0x03)))
}
Method (FEBW, 1, NotSerialized)
{
Store (Arg0, FADR)
Return (FSMI (0x04))
}
Method (FEBR, 1, NotSerialized)
{
Store (Arg0, FADR)
Return (FSMI (0x05))
}
Method (FEDW, 0, NotSerialized)
{
Return (FSMI (0x06))
}
Method (ECSR, 1, NotSerialized)
{
Store (Arg0, FSTA)
Return (FSMI (0x07))
}
}
Scope (_SB.ATKD)
{
Method (AGFN, 1, Serialized)
{
If (LEqual (Arg0, Zero))
{
Return (GNBF)
}
Store (Zero, Local0)
OperationRegion (\PARM, SystemMemory, Arg0, 0x08)
Field (PARM, DWordAcc, NoLock, Preserve)
{
MFUN, 16,
SFUN, 16,
LEN, 16,
STAS, 8,
EROR, 8
}
Store (Zero, EROR)
Store (One, STAS)
If (LEqual (MFUN, 0x20))
{
BSMI (Arg0)
And (STAS, 0xFE, STAS)
}
If (LEqual (MFUN, 0x02))
{
BSMI (Arg0)
And (STAS, 0xFE, STAS)
}
And (MFUN, 0xF0, Local0)
If (LEqual (Local0, 0x10))
{
MF1X (Arg0, LEN, MFUN, SFUN)
}
If (LEqual (MFUN, One))
{
GVER (Arg0, LEN)
And (STAS, 0xFE, STAS)
}
If (LEqual (MFUN, 0x30))
{
MF30 (Arg0, SFUN, LEN)
And (STAS, 0xFE, STAS)
}
AGLN (Arg0, MFUN, SFUN, LEN)
If (LEqual (STAS, One))
{
Store (One, EROR)
Or (STAS, 0x02, STAS)
}
And (STAS, 0xFE, STAS)
Or (STAS, 0x80, STAS)
Return (Zero)
}
Method (GVER, 2, NotSerialized)
{
OperationRegion (\FGVR, SystemMemory, Arg0, Arg1)
Field (FGVR, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
APID, 16,
APRV, 32
}
Return (Zero)
}
Method (MF30, 3, NotSerialized)
{
OperationRegion (FM30, SystemMemory, Arg0, 0x08)
Field (FM30, DWordAcc, NoLock, Preserve)
{
Offset (0x06),
SM30, 8,
EM30, 8
}
Store (One, Local0)
If (LEqual (Arg1, Zero))
{
Store (G30V (Arg0, Arg2), Local0)
}
If (LEqual (Arg1, One))
{
Store (EC01 (Arg0, Arg2), Local0)
}
If (Local0)
{
Store (Local0, EM30)
Or (SM30, 0x02, SM30)
}
Or (SM30, 0x80, SM30)
Return (Zero)
}
Method (G30V, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F300, SystemMemory, Arg0, Arg1)
Field (F300, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
SVER, 16,
MVER, 16
}
Store (Zero, MVER)
Store (Zero, SVER)
Return (Zero)
}
Method (EC01, 2, NotSerialized)
{
If (LLess (Arg1, 0x10))
{
Return (0x02)
}
OperationRegion (FEC1, SystemMemory, Arg0, Arg1)
Field (FEC1, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
ECMD, 8,
EDA1, 8,
EDA2, 8,
EDA3, 8,
EDA4, 8,
EDA5, 8
}
Store (^^PCI0.SBRG.EC0.ECXT (ECMD, EDA1, EDA2, EDA3, EDA4, EDA5), Local0)
Store (DerefOf (Index (Local0, One)), EDA1)
Store (DerefOf (Index (Local0, 0x02)), EDA2)
Store (DerefOf (Index (Local0, 0x03)), EDA3)
Store (DerefOf (Index (Local0, 0x04)), EDA4)
Store (DerefOf (Index (Local0, 0x05)), EDA5)
Return (DerefOf (Index (Local0, Zero)))
}
Method (GENW, 1, NotSerialized)
{
Store (Zero, RTCW)
}
}
Method (BSMI, 1, Serialized)
{
Store (Arg0, BIPA)
ISMI (0xA1)
}
Scope (_SB.ATKD)
{
Method (MF1X, 4, NotSerialized)
{
OperationRegion (FM1X, SystemMemory, Arg0, 0x08)
Field (FM1X, DWordAcc, NoLock, Preserve)
{
Offset (0x06),
SM1X, 8,
EM1X, 8
}
Store (One, Local0)
If (LEqual (Arg2, 0x10))
{
Store (MF10 (Arg0, Arg1, Arg3), Local0)
}
If (LEqual (Arg2, 0x11))
{
Store (MF11 (Arg0, Arg1, Arg3), Local0)
}
If (LEqual (Arg2, 0x12))
{
Store (MF12 (Arg0, Arg1, Arg3), Local0)
}
If (LEqual (Arg2, 0x13))
{
Store (MF13 (Arg0, Arg1, Arg3), Local0)
}
If (LEqual (Arg2, 0x14))
{
Store (MF14 (Arg0, Arg1, Arg3), Local0)
}
If (LEqual (Arg2, 0x15))
{
Store (MF15 (Arg0, Arg1, Arg3), Local0)
}
If (LEqual (Arg2, 0x16))
{
Store (MF16 (Arg0, Arg1, Arg3), Local0)
}
If (LEqual (Arg2, 0x17))
{
Store (MF17 (Arg0, Arg1, Arg3), Local0)
}
If (LEqual (Arg2, 0x18))
{
Store (MF18 (Arg0, Arg1, Arg3), Local0)
}
If (LEqual (Arg2, 0x19))
{
Store (MF19 (Arg0, Arg1, Arg3), Local0)
}
And (SM1X, 0xFE, SM1X)
If (Local0)
{
Store (Local0, EM1X)
Or (SM1X, 0x02, SM1X)
}
Or (SM1X, 0x80, SM1X)
}
Method (MF10, 3, NotSerialized)
{
Store (One, Local0)
If (LEqual (Arg2, Zero))
{
Store (G10V (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, One))
{
Store (SRTC (Arg0, Arg1), Local0)
}
Return (Local0)
}
Method (G10V, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F100, SystemMemory, Arg0, Arg1)
Field (F100, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
SVER, 16,
MVER, 16
}
Store (Zero, MVER)
Store (Zero, SVER)
Return (Zero)
}
Method (SRTC, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F101, SystemMemory, Arg0, Arg1)
Field (F101, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
DLTM, 16
}
Store (DLTM, RTCW)
Return (Zero)
}
Method (MF11, 3, NotSerialized)
{
Store (One, Local0)
If (LEqual (Arg2, Zero))
{
Store (G11V (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, One))
{
Store (GBAT (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x02))
{
Store (ASBR (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x03))
{
Store (ASBE (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x04))
{
Store (BTCR (Arg0, Arg1), Local0)
}
Return (Local0)
}
Method (G11V, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F110, SystemMemory, Arg0, Arg1)
Field (F110, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
SVER, 16,
MVER, 16
}
Store (Zero, MVER)
Store (Zero, SVER)
Return (Zero)
}
Method (GBAT, 2, NotSerialized)
{
If (LLess (Arg1, 0x0A))
{
Return (0x02)
}
OperationRegion (\F111, SystemMemory, Arg0, Arg1)
Field (F111, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
BTNM, 8,
BTTP, 8
}
Store (One, BTNM)
Store (Zero, BTTP)
Return (Zero)
}
Method (ASBR, 2, NotSerialized)
{
If (LLess (Arg1, 0x30))
{
Return (0x02)
}
OperationRegion (\F112, SystemMemory, Arg0, Arg1)
Field (F112, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
BATN, 8,
BATA, 8,
REGS, 8,
BDAT, 16,
BLEN, 8,
BREV, 16,
BLK1, 32,
BLK2, 32,
BLK3, 32,
BLK4, 32,
BLK5, 32,
BLK6, 32,
BLK7, 32,
BLK8, 32
}
If (LGreaterEqual (BATN, One))
{
Return (0x11)
}
If (LEqual (BATA, Zero))
{
Store (^^PCI0.SBRG.EC0.SMBR (^^PCI0.SBRG.EC0.RDWD, ^^PCI0.SBRG.EC0.BADR, REGS), Local0)
Store (DerefOf (Index (Local0, 0x02)), BDAT)
Store (DerefOf (Index (Local0, Zero)), Local2)
And (Local2, 0x1F, Local2)
If (Local2)
{
Add (Local2, 0x10, Local2)
}
Return (Local2)
}
If (LEqual (BATA, One))
{
Store (^^PCI0.SBRG.EC0.SMBW (^^PCI0.SBRG.EC0.WRWD, ^^PCI0.SBRG.EC0.BADR, REGS, 0x02, BDAT), Local0)
Store (DerefOf (Index (Local0, Zero)), Local2)
And (Local2, 0x1F, Local2)
If (Local2)
{
Add (Local2, 0x10, Local2)
}
Return (Local2)
}
If (LEqual (BATA, 0x02))
{
Store (^^PCI0.SBRG.EC0.SMBR (^^PCI0.SBRG.EC0.RDBL, ^^PCI0.SBRG.EC0.BADR, REGS), Local0)
Name (BKUF, Buffer (0x20) {})
CreateDWordField (BKUF, Zero, DAT1)
CreateDWordField (BKUF, 0x04, DAT2)
CreateDWordField (BKUF, 0x08, DAT3)
CreateDWordField (BKUF, 0x0C, DAT4)
CreateDWordField (BKUF, 0x10, DAT5)
CreateDWordField (BKUF, 0x14, DAT6)
CreateDWordField (BKUF, 0x18, DAT7)
CreateDWordField (BKUF, 0x1C, DAT8)
Store (DerefOf (Index (Local0, 0x02)), BKUF)
Store (DAT1, BLK1)
Store (DAT2, BLK2)
Store (DAT3, BLK3)
Store (DAT4, BLK4)
Store (DAT5, BLK5)
Store (DAT6, BLK6)
Store (DAT7, BLK7)
Store (DAT8, BLK8)
Store (DerefOf (Index (Local0, One)), BLEN)
Store (DerefOf (Index (Local0, Zero)), Local2)
And (Local2, 0x1F, Local2)
If (Local2)
{
Add (Local2, 0x10, Local2)
}
Return (Local2)
}
Return (0x10)
}
Method (ASBE, 2, Serialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F113, SystemMemory, Arg0, Arg1)
Field (F113, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
BATN, 8,
BATA, 8,
REGS, 8,
BDAT, 8
}
If (LGreater (BATN, One))
{
Return (0x11)
}
If (LEqual (BATA, Zero))
{
Store (^^PCI0.SBRG.EC0.RBEP (REGS), Local2)
And (Local2, 0xFF, Local3)
Store (Local3, BDAT)
ShiftRight (Local2, 0x08, Local2)
And (Local2, 0x1F, Local2)
If (Local2)
{
Add (Local2, 0x10, Local2)
}
Return (Local2)
}
If (LEqual (BATA, One))
{
Store (^^PCI0.SBRG.EC0.WBEP (REGS, BDAT), Local2)
And (Local2, 0x1F, Local2)
If (Local2)
{
Add (Local2, 0x10, Local2)
}
Return (Local2)
}
Return (0x10)
}
Method (BTCR, 2, NotSerialized)
{
If (LLess (Arg1, 0x09))
{
Return (0x02)
}
OperationRegion (\F114, SystemMemory, Arg0, Arg1)
Field (F114, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
BCDC, 8
}
SBTL (BCDC)
Return (Zero)
}
Method (MF12, 3, NotSerialized)
{
Store (One, Local0)
If (LEqual (Arg2, Zero))
{
Store (G12V (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, One))
{
Store (GLDI (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x02))
{
Store (LDCR (Arg0, Arg1), Local0)
}
Return (Local0)
}
Method (G12V, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F120, SystemMemory, Arg0, Arg1)
Field (F120, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
SVER, 16,
MVER, 16
}
Store (Zero, MVER)
Store (Zero, SVER)
Return (Zero)
}
Method (GLDI, 2, NotSerialized)
{
If (LLess (Arg1, 0x10))
{
Return (0x02)
}
OperationRegion (\F121, SystemMemory, Arg0, Arg1)
Field (F121, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
LDI0, 32,
LDI1, 32
}
Store (Zero, Local0)
Store (Zero, Local1)
Or (Local0, 0x10, Local0)
Or (Local0, 0x20, Local0)
Store (Local0, LDI0)
Store (Local1, LDI1)
Return (Zero)
}
Method (LDCR, 2, NotSerialized)
{
If (LLess (Arg1, 0x0A))
{
Return (0x02)
}
OperationRegion (\F122, SystemMemory, Arg0, Arg1)
Field (F122, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
LDNM, 8,
LCRT, 8
}
If (LEqual (LDNM, 0x04))
{
WLED (LCRT)
Return (Zero)
}
If (LEqual (LDNM, 0x05))
{
BLED (LCRT)
Return (Zero)
}
Return (0x10)
}
Method (MF13, 3, NotSerialized)
{
Store (One, Local0)
If (LEqual (Arg2, Zero))
{
Store (G13V (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, One))
{
Store (GTSI (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x02))
{
Store (GTSV (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x03))
{
Store (GVSN (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x04))
{
Store (GVSV (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x05))
{
Store (GFNN (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x06))
{
Store (GFNS (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x07))
{
Store (SFNS (Arg0, Arg1), Local0)
}
Return (Local0)
}
Method (G13V, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F130, SystemMemory, Arg0, Arg1)
Field (F130, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
SVER, 16,
MVER, 16
}
Store (Zero, MVER)
Store (Zero, SVER)
Return (Zero)
}
Method (GTSI, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F131, SystemMemory, Arg0, Arg1)
Field (F131, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
THRI, 32
}
Store (One, THRI)
Return (Zero)
}
Method (GTSV, 2, NotSerialized)
{
If (LLess (Arg1, 0x0A))
{
Return (0x02)
}
OperationRegion (\F132, SystemMemory, Arg0, Arg1)
Field (F132, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
TSNM, 8,
TSVL, 8,
TSST, 8
}
Store (Zero, TSST)
If (LEqual (TSNM, Zero))
{
Store (\_TZ.RTMP (), TSVL)
Return (Zero)
}
Return (0x10)
}
Method (GVSN, 2, NotSerialized)
{
If (LLess (Arg1, 0x09))
{
Return (0x02)
}
OperationRegion (\F133, SystemMemory, Arg0, Arg1)
Field (F133, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
NMVS, 8
}
Store (Zero, NMVS)
Return (Zero)
}
Method (GVSV, 2, NotSerialized)
{
If (LLess (Arg1, 0x0B))
{
Return (0x02)
}
OperationRegion (\F134, SystemMemory, Arg0, Arg1)
Field (F134, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
VSNM, 8,
VSVL, 16
}
If (LGreater (VSNM, Zero))
{
Return (0x10)
}
Return (Zero)
}
Method (GFNN, 2, NotSerialized)
{
If (LLess (Arg1, 0x09))
{
Return (0x02)
}
OperationRegion (\F135, SystemMemory, Arg0, Arg1)
Field (F135, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
NMFN, 32
}
Store (One, NMFN)
Return (Zero)
}
Method (GFNS, 2, NotSerialized)
{
If (LLess (Arg1, 0x0D))
{
Return (0x02)
}
OperationRegion (\F136, SystemMemory, Arg0, Arg1)
Field (F136, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
FNNM, 8,
GFNS, 32
}
If (Or (LEqual (FNNM, Zero), LGreater (FNNM, One)))
{
Return (0x10)
}
Store (FNNM, Local0)
Store (\_TZ.RFAN (Decrement (Local0)), GFNS)
Return (Zero)
}
Method (SFNS, 2, NotSerialized)
{
If (LLess (Arg1, 0x0A))
{
Return (0x02)
}
OperationRegion (\F137, SystemMemory, Arg0, Arg1)
Field (F137, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
FNNB, 8,
FNSP, 8
}
If (LGreater (FNNB, One))
{
Return (0x10)
}
^^PCI0.SBRG.EC0.SFNV (FNNB, FNSP)
Return (Zero)
}
Method (MF14, 3, NotSerialized)
{
Store (One, Local0)
If (LEqual (Arg2, Zero))
{
Store (G14V (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, One))
{
Store (GNBT (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x02))
{
Store (GBTS (Arg0, Arg1), Local0)
}
Return (Local0)
}
Method (G14V, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F140, SystemMemory, Arg0, Arg1)
Field (F140, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
SVER, 16,
MVER, 16
}
Store (Zero, MVER)
Store (Zero, SVER)
Return (Zero)
}
Method (GNBT, 2, NotSerialized)
{
If (LLess (Arg1, 0x09))
{
Return (0x02)
}
OperationRegion (\F141, SystemMemory, Arg0, Arg1)
Field (F141, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
NBBT, 8
}
Store (One, NBBT)
Return (Zero)
}
Method (GBTS, 2, NotSerialized)
{
If (LLess (Arg1, 0x0A))
{
Return (0x02)
}
OperationRegion (\F142, SystemMemory, Arg0, Arg1)
Field (F142, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
BTNM, 8,
BTST, 8
}
Name (BTTB, Package (0x02)
{
Package (0x03)
{
0x14,
Zero,
Zero
},
Package (0x03)
{
0x0E,
Zero,
Zero
}
})
If (LGreater (BTNM, One))
{
Return (0x10)
}
Store (BTNM, Local0)
Decrement (Local0)
Store (DerefOf (Index (BTTB, Local0)), Local1)
If (LEqual (DerefOf (Index (Local1, One)), Zero))
{
Store (^^PCI0.SBRG.EC0.RPIN (DerefOf (Index (Local1, Zero))), Local2)
}
If (LEqual (DerefOf (Index (Local1, One)), One))
{
Store (RGPL (DerefOf (Index (Local1, Zero)), One), Local2)
}
If (LEqual (DerefOf (Index (Local1, One)), 0x03)) {}
If (LEqual (DerefOf (Index (Local1, 0x02)), Local2))
{
Store (Zero, BTST)
}
Else
{
Store (One, BTST)
}
Return (Zero)
}
Method (MF15, 3, NotSerialized)
{
Store (One, Local0)
If (LEqual (Arg2, Zero))
{
Store (G15V (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, One))
{
Store (GLDB (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x02))
{
Store (SLDB (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x03))
{
Store (GDPI (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x04))
{
Store (SODP (Arg0, Arg1), Local0)
}
Return (Local0)
}
Method (G15V, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F150, SystemMemory, Arg0, Arg1)
Field (F150, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
SVER, 16,
MVER, 16
}
Store (Zero, MVER)
Store (Zero, SVER)
Return (Zero)
}
Method (GLDB, 2, NotSerialized)
{
If (LLess (Arg1, 0x0A))
{
Return (0x02)
}
OperationRegion (\F151, SystemMemory, Arg0, Arg1)
Field (F151, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
LCDB, 8,
MLDB, 8
}
Store (GPLV (), LCDB)
Store (0x0F, MLDB)
Return (Zero)
}
Method (SLDB, 2, NotSerialized)
{
If (LLess (Arg1, 0x0A))
{
Return (0x02)
}
OperationRegion (\F152, SystemMemory, Arg0, Arg1)
Field (F152, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
LCDL, 8,
LTPE, 8
}
If (LEqual (LTPE, Zero))
{
If (LGreater (LCDL, 0x0F))
{
Return (0x10)
}
SPLV (LCDL)
Return (Zero)
}
If (LEqual (LTPE, One))
{
^^PCI0.SBRG.EC0.SBRV (LCDL)
Return (Zero)
}
Return (0x11)
}
Method (GDPI, 2, NotSerialized)
{
If (LLess (Arg1, 0x10))
{
Return (0x02)
}
OperationRegion (\F153, SystemMemory, Arg0, Arg1)
Field (F153, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
ODPI, 32,
ODPC, 8
}
Store (0x07, ODPI)
BSMI (Arg0)
Return (Zero)
}
Method (SODP, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F154, SystemMemory, Arg0, Arg1)
Field (F154, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
ODPM, 32
}
And (ODPM, 0x07, Local0)
If (LEqual (Local0, ODPM))
{
SDSP (ODPM)
Return (Zero)
}
Return (0x10)
}
Method (MF16, 3, NotSerialized)
{
Store (One, Local0)
If (LEqual (Arg2, Zero))
{
Store (G16V (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, One))
{
Store (SFBD (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x02))
{
Store (LCMD (Arg0, Arg1), Local0)
}
Return (Local0)
}
Method (G16V, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F160, SystemMemory, Arg0, Arg1)
Field (F160, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
SVER, 16,
MVER, 16
}
Store (Zero, MVER)
Store (Zero, SVER)
Return (Zero)
}
Method (SFBD, 2, NotSerialized)
{
If (LLess (Arg1, 0x0A))
{
Return (0x02)
}
OperationRegion (\F161, SystemMemory, Arg0, Arg1)
Field (F161, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
NXBD, 8
}
If (OFBD (NXBD))
{
Store (NXBD, UHDB)
Return (Zero)
}
Else
{
Return (0x10)
}
}
Method (LCMD, 2, NotSerialized)
{
If (LLess (Arg1, 0x0A))
{
Return (0x02)
}
BSMI (Arg0)
Return (Zero)
}
Method (MF17, 3, NotSerialized)
{
Store (One, Local0)
If (LEqual (Arg2, Zero))
{
Store (G17V (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, One))
{
Store (GMDL (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x02))
{
Store (GBSI (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x03))
{
Store (GECI (Arg0, Arg1), Local0)
}
Return (Local0)
}
Method (G17V, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F170, SystemMemory, Arg0, Arg1)
Field (F170, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
SVER, 16,
MVER, 16
}
Store (Zero, MVER)
Store (Zero, SVER)
Return (Zero)
}
Method (GMDL, 2, NotSerialized)
{
If (LLess (Arg1, 0x19))
{
Return (0x02)
}
OperationRegion (\F171, SystemMemory, Arg0, Arg1)
Field (F171, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
MLEN, 8,
MDL1, 32,
MDL2, 32,
MDL3, 32,
MDL4, 32
}
Store (Zero, MDL1)
Store (Zero, MDL2)
Store (Zero, MDL3)
Store (Zero, MDL4)
BSMI (Arg0)
Return (Zero)
}
Method (GBSI, 2, NotSerialized)
{
If (LLess (Arg1, 0x19))
{
Return (0x02)
}
OperationRegion (\F172, SystemMemory, Arg0, Arg1)
Field (F172, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
BLEN, 8,
BDL1, 32,
BDL2, 32,
BDL3, 32,
BDL4, 32
}
Store (Zero, BDL1)
Store (Zero, BDL2)
Store (Zero, BDL3)
Store (Zero, BDL4)
Name (BBUF, Buffer (0x10) {})
CreateDWordField (BBUF, Zero, DAT1)
CreateDWordField (BBUF, 0x04, DAT2)
CreateDWordField (BBUF, 0x08, DAT3)
CreateDWordField (BBUF, 0x0C, DAT4)
Store ("211", Local0)
Store (SizeOf (Local0), BLEN)
Store ("211", BBUF)
Store (DAT1, BDL1)
Store (DAT2, BDL2)
Store (DAT3, BDL3)
Store (DAT4, BDL4)
Return (Zero)
}
Method (GECI, 2, NotSerialized)
{
If (LLess (Arg1, 0x19))
{
Return (0x02)
}
OperationRegion (\F173, SystemMemory, Arg0, Arg1)
Field (F173, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
ELEN, 8,
EDL1, 32,
EDL2, 32,
EDL3, 32,
EDL4, 32
}
Store (Zero, EDL1)
Store (Zero, EDL2)
Store (Zero, EDL3)
Store (Zero, EDL4)
BSMI (Arg0)
Return (Zero)
}
Method (MF18, 3, NotSerialized)
{
Store (One, Local0)
If (LEqual (Arg2, Zero))
{
Store (G18V (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, One))
{
Store (GDVI (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x02))
{
Store (GDVS (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x03))
{
Store (SDPW (Arg0, Arg1), Local0)
}
Return (Local0)
}
Method (G18V, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F180, SystemMemory, Arg0, Arg1)
Field (F180, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
SVER, 16,
MVER, 16
}
Store (Zero, MVER)
Store (Zero, SVER)
Return (Zero)
}
Method (GDVI, 2, NotSerialized)
{
If (LLess (Arg1, 0x18))
{
Return (0x02)
}
OperationRegion (\F181, SystemMemory, Arg0, Arg1)
Field (F181, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
LDI0, 32,
LDI1, 32
}
Store (Zero, LDI0)
Return (Zero)
}
Method (GDVS, 2, NotSerialized)
{
If (LLess (Arg1, 0x0A))
{
Return (0x02)
}
OperationRegion (\F182, SystemMemory, Arg0, Arg1)
Field (F182, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
DNUM, 8,
DSTS, 8
}
ShiftLeft (One, DNUM, Local0)
If (LEqual (And (Local0, Zero), Zero))
{
Return (0x10)
}
Return (Zero)
}
Method (SDPW, 2, NotSerialized)
{
If (LLess (Arg1, 0x0A))
{
Return (0x02)
}
OperationRegion (\F183, SystemMemory, Arg0, Arg1)
Field (F183, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
DNUM, 8,
DCTR, 8
}
ShiftLeft (One, DNUM, Local0)
If (LEqual (And (Local0, Zero), Zero))
{
Return (0x10)
}
If (LGreater (DCTR, One))
{
Return (0x11)
}
Return (Zero)
}
Method (MF19, 3, NotSerialized)
{
Store (One, Local0)
If (LEqual (Arg2, Zero))
{
Store (G19V (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, One))
{
Store (ACMS (Arg0, Arg1), Local0)
}
If (LEqual (Arg2, 0x02))
{
Store (CSIN (Arg0, Arg1), Local0)
}
Return (Local0)
}
Method (G19V, 2, NotSerialized)
{
If (LLess (Arg1, 0x0C))
{
Return (0x02)
}
OperationRegion (\F190, SystemMemory, Arg0, Arg1)
Field (F190, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
SVER, 16,
MVER, 16
}
Store (Zero, MVER)
Store (Zero, SVER)
Return (Zero)
}
Method (ACMS, 2, NotSerialized)
{
BSMI (Arg0)
Return (Zero)
}
Method (CSIN, 2, NotSerialized)
{
If (LLess (Arg1, 0x10))
{
Return (0x02)
}
OperationRegion (\F192, SystemMemory, Arg0, Arg1)
Field (F192, DWordAcc, NoLock, Preserve)
{
Offset (0x08),
MLEN, 16
}
Store (0xFF, MLEN)
Return (Zero)
}
}
Scope (_SB.ATKD)
{
Method (OFBD, 1, NotSerialized)
{
Name (FBDT, Package (0x04)
{
0xF1,
0xF2,
0xF3,
0xF6
})
Store (Match (FBDT, MEQ, Arg0, MTR, Zero, Zero), Local0)
Increment (Local0)
Return (Local0)
}
}
Scope (_SB.ATKD)
{
Method (AGLN, 4, NotSerialized)
{
}
}
Scope (_SB)
{
Device (LID)
{
Name (_HID, EisaId ("PNP0C0D"))
Method (_LID, 0, NotSerialized)
{
Store (One, Local0)
Store (^^PCI0.SBRG.EC0.RPIN (0x06), Local0)
If (LEqual (Local0, Ones))
{
Store (One, Local0)
}
Return (Local0)
}
}
}
Scope (_GPE)
{
}
Scope (_SB.PCI0.SBRG.EC0)
{
Method (_Q85, 0, NotSerialized)
{
Notify (LID, 0x80)
}
}
Scope (\)
{
Method (ACPS, 0, Serialized)
{
Store (\_SB.PCI0.SBRG.EC0.EPWS, Local0)
And (Local0, One, Local0)
Return (Local0)
}
Method (DCPS, 1, Serialized)
{
Store (\_SB.PCI0.SBRG.EC0.EPWS, Local0)
Add (Arg0, One, Local1)
ShiftRight (Local0, Local1, Local0)
And (Local0, One, Local0)
Return (Local0)
}
Method (PRJS, 1, Serialized)
{
If (LEqual (Arg0, 0x03))
{
Store (Zero, \_SB.PCI0.SMBS.GO05)
}
}
Method (PRJW, 1, Serialized)
{
Store (Zero, SLPN)
If (LEqual (Arg0, 0x03))
{
Store (One, \_SB.PCI0.SMBS.GO05)
}
}
Method (FFCT, 0, Serialized)
{
}
Method (GLID, 0, Serialized)
{
Return (\_SB.PCI0.SBRG.EC0.RPIN (0x06))
}
Method (TLID, 0, Serialized)
{
}
Method (TGAC, 0, Serialized)
{
}
Method (TGDC, 1, Serialized)
{
}
Method (FCTR, 3, Serialized)
{
}
Method (OMLD, 1, Serialized)
{
}
Method (OTLD, 1, Serialized)
{
}
Method (OWLD, 1, Serialized)
{
Store (Arg0, WRST)
XOr (Arg0, One, Local0)
Store (Local0, \_SB.PCI0.SMBS.GO32)
XOr (Arg0, One, Arg0)
If (LEqual (LAnd (\_SB.ATKD.WAPF, 0x05), Zero))
{
Store (Local0, \_SB.PCI0.SMBS.GO09)
}
}
Method (OBTD, 1, Serialized)
{
Store (Arg0, BRST)
XOr (Arg0, One, Local0)
Store (Local0, \_SB.PCI0.SMBS.GO31)
\_SB.PCI0.SBRG.EC0.SPIN (0x1C, Local0)
}
Method (OWAP, 1, NotSerialized)
{
If (LAnd (Arg0, 0x05))
{
Store (Zero, \_SB.PCI0.SMBS.GO09)
}
}
Method (GBTS, 0, Serialized)
{
Store (\_SB.PCI0.SBRG.EC0.RPIN (0x1C), Local0)
Return (Local0)
}
Method (OHWR, 0, Serialized)
{
Store (Zero, Local0)
Or (Local0, 0x02, Local0)
Or (Local0, 0x0400, Local0)
If (LEqual (\_SB.PCI0.SBRG.EC0.RPIN (0x14), Zero))
{
Or (Local0, One, Local0)
}
If (WLDP)
{
Or (Local0, 0x80, Local0)
}
If (BTDP)
{
Or (Local0, 0x0100, Local0)
}
Return (Local0)
}
Method (ORST, 0, Serialized)
{
Store (Zero, Local0)
If (WLDP)
{
Or (Local0, 0x0100, Local0)
}
If (BTDP)
{
Or (Local0, 0x0200, Local0)
}
Return (Local0)
}
Method (GBTL, 0, Serialized)
{
Return (\_SB.PCI0.SBRG.EC0.RPIN (0x02))
}
Method (SBTL, 1, Serialized)
{
\_SB.PCI0.SBRG.EC0.SPIN (0x02, Arg0)
}
Method (BL2C, 0, NotSerialized)
{
Store (One, Local1)
If (\_SB.PCI0.SBRG.EC0.RPIN (One))
{
Store (Zero, Local1)
}
Return (Local1)
}
Method (OTPM, 0, Serialized)
{
Store (\_SB.PCI0.SBRG.TPM.ACCS, Local0)
If (LNotEqual (Local0, 0xFF))
{
Store (One, Local0)
}
Else
{
Store (Zero, Local0)
}
Return (Local0)
}
Method (OTID, 0, Serialized)
{
Store (\_SB.PCI0.SBRG.TPM.ACCS, Local0)
If (LNotEqual (Local0, 0xFF))
{
If (LEqual (\_SB.PCI0.SBRG.TPM.VDID, 0x687119FA))
{
Return (0x0435CF4D)
}
}
Return (0x0201D824)
}
}
Scope (_GPE)
{
Method (_L10, 0, NotSerialized)
{
}
Method (_L15, 0, Serialized)
{
Sleep (0x0A)
Store (\_SB.PCI0.PCE4.HPHK (), GM2P)
Notify (\_SB.PCI0.PCE4.PEX0, One)
}
}
Scope (_SB.PCI0.SBRG.EC0)
{
Method (_Q01, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x52)
}
}
Method (_Q02, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x53)
}
}
Method (_Q03, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x54)
}
}
Method (_Q04, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x55)
}
}
Method (_Q05, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x56)
}
}
Method (_Q0A, 0, NotSerialized)
{
Notify (SLPB, 0x80)
}
Method (_Q0B, 0, NotSerialized)
{
If (And (^^^^ATKD.WAPF, 0x04))
{
If (ATKP)
{
Notify (ATKD, 0x88)
}
}
Else
{
If (And (^^^^ATKD.WAPF, One))
{
If (LAnd (WLDP, BTDP))
{
Store (WRST, Local0)
Or (ShiftLeft (BRST, One), Local0, Local0)
Increment (Local0)
If (LGreater (Local0, 0x03))
{
Store (Zero, Local0)
}
Store (DerefOf (Index (WBTL, Local0)), Local1)
Name (_T_0, Zero)
Store (Local1, _T_0)
If (LEqual (_T_0, Zero))
{
Notify (ATKD, 0x5D)
Sleep (0x0DAC)
OBTD (Zero)
Notify (ATKD, 0x7E)
}
Else
{
If (LEqual (_T_0, One))
{
Notify (ATKD, 0x5D)
Sleep (0x0DAC)
OBTD (Zero)
Notify (ATKD, 0x7E)
}
Else
{
If (LEqual (_T_0, 0x02))
{
Notify (ATKD, 0x5D)
Sleep (0x0DAC)
OBTD (One)
Notify (ATKD, 0x7D)
}
Else
{
If (LEqual (_T_0, 0x03))
{
Notify (ATKD, 0x5D)
Sleep (0x0DAC)
OBTD (One)
Notify (ATKD, 0x7D)
}
}
}
}
}
Else
{
If (WLDP)
{
Notify (ATKD, 0x5D)
}
Else
{
If (BTDP)
{
If (BRST)
{
OBTD (Zero)
Notify (ATKD, 0x7E)
}
Else
{
OBTD (One)
Notify (ATKD, 0x7D)
}
}
}
}
}
Else
{
If (LAnd (WLDP, BTDP))
{
If (WRST)
{
OWLD (Zero)
Notify (ATKD, 0x5F)
Sleep (0x64)
OBTD (Zero)
Notify (ATKD, 0x7E)
}
Else
{
OWLD (One)
Notify (ATKD, 0x5E)
Sleep (0x64)
OBTD (One)
Notify (ATKD, 0x7D)
}
}
Else
{
If (WLDP)
{
If (WRST)
{
OWLD (Zero)
Notify (ATKD, 0x5F)
}
Else
{
OWLD (One)
Notify (ATKD, 0x5E)
}
}
Else
{
If (BTDP)
{
If (BRST)
{
OBTD (Zero)
Notify (ATKD, 0x7E)
}
Else
{
OBTD (One)
Notify (ATKD, 0x7D)
}
}
}
}
}
}
}
Name (WBTL, Package (0x04)
{
Zero,
One,
0x02,
0x03
})
Method (_Q0E, 0, NotSerialized)
{
If (LEqual (OSFG, OSVT))
{
If (^^^P0P1.VGA.PRST ())
{
Store (0x02, ^^^P0P1.VGA.LCDD.BCBH)
Notify (^^^P0P1.VGA.LCDD, 0x87)
}
If (^^^PCE2.VGA.PRST ())
{
Store (0x02, ^^^PCE2.VGA.LCDD.BCBH)
Notify (^^^PCE2.VGA.LCDD, 0x87)
}
}
Else
{
If (LGreater (LBTN, Zero))
{
Decrement (LBTN)
}
If (LGreater (LBTN, 0x0F))
{
Store (0x0F, LBTN)
}
STBR ()
If (ATKP)
{
Notify (ATKD, Add (LBTN, 0x20))
}
}
Return (One)
}
Method (_Q0F, 0, NotSerialized)
{
If (LEqual (OSFG, OSVT))
{
If (^^^P0P1.VGA.PRST ())
{
Store (One, ^^^P0P1.VGA.LCDD.BCBH)
Notify (^^^P0P1.VGA.LCDD, 0x86)
}
If (^^^PCE2.VGA.PRST ())
{
Store (One, ^^^PCE2.VGA.LCDD.BCBH)
Notify (^^^PCE2.VGA.LCDD, 0x86)
}
}
Else
{
If (LLess (LBTN, 0x0F))
{
Increment (LBTN)
}
Else
{
Store (0x0F, LBTN)
}
STBR ()
If (ATKP)
{
Notify (ATKD, Add (LBTN, 0x10))
}
}
Return (One)
}
Method (_Q10, 0, NotSerialized)
{
Store (One, Local0)
Store (RPIN (0x11), Local0)
XOr (Local0, One, Local0)
SPIN (0x11, Local0)
If (ATKP)
{
Subtract (0x34, Local0, Local0)
Notify (ATKD, Local0)
}
}
Name (AVNC, Package (0x0D)
{
Zero,
0x61,
0x62,
0x63,
0x64,
0x65,
0x66,
Zero,
0x8C,
0x8D,
0x8E,
Zero,
0x8F
})
Method (_Q11, 0, NotSerialized)
{
FHKW ()
Store (ADVG (), Local0)
If (NATK ())
{
Store (DerefOf (Index (AVNC, Local0)), Local1)
If (ATKP)
{
Notify (ATKD, Local1)
}
Else
{
SWHG (Local0)
}
}
Else
{
SWHG (Local0)
}
FHKS ()
}
Name (FHKM, One)
Method (FHKW, 0, Serialized)
{
While (LNot (FHKM))
{
Sleep (0x0A)
}
Store (Zero, FHKM)
}
Method (FHKS, 0, Serialized)
{
Store (One, FHKM)
}
Method (_Q13, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x32)
}
}
Method (_Q14, 0, NotSerialized)
{
If (LLess (AVOL, 0x0F))
{
Increment (AVOL)
}
If (ATKP)
{
Notify (ATKD, 0x31)
}
}
Method (_Q15, 0, NotSerialized)
{
If (LGreater (AVOL, Zero))
{
Decrement (AVOL)
}
If (ATKP)
{
Notify (ATKD, 0x30)
}
}
Method (_Q20, 0, NotSerialized)
{
If (CDFG)
{
Store (One, SMBF)
Store (Zero, CDFG)
}
If (ALFG)
{
ALMH (ALAD)
Store (Zero, ALFG)
}
}
Method (_Q83, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x6B)
}
}
Method (_Q12, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x6B)
}
}
Method (_Q86, 0, NotSerialized)
{
If (ATKP)
{
Store (RPIN (0x14), Local1)
If (Local1)
{
Notify (ATKD, 0x81)
}
Else
{
Notify (ATKD, 0x80)
}
}
}
Method (_Q0C, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x50)
}
}
Method (_Q80, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x8A)
}
}
Method (_Q6A, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x8A)
}
}
Method (_Q81, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x51)
}
}
Method (_Q0D, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x51)
}
}
Method (_Q82, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x5C)
}
}
Method (_Q69, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x5C)
}
}
Method (_QB0, 0, NotSerialized)
{
Notify (\_TZ.THRM, 0x80)
}
Method (_Q84, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x95)
}
}
Method (_Q6B, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x99)
}
}
Method (_Q70, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x82)
}
}
Method (_Q71, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0xAD)
}
}
Method (_Q6E, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x40)
}
}
Method (_Q6F, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x41)
}
}
Method (_Q6C, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x43)
}
}
Method (_Q6D, 0, NotSerialized)
{
If (ATKP)
{
Notify (ATKD, 0x45)
}
}
}
Scope (_SB)
{
Scope (PCI0)
{
Name (CRS, ResourceTemplate ()
{
WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
0x0000, // Granularity
0x0000, // Range Minimum
0x00FF, // Range Maximum
0x0000, // Translation Offset
0x0100, // Length
,, )
IO (Decode16,
0x0CF8, // Range Minimum
0x0CF8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
0x0000, // Granularity
0x0000, // Range Minimum
0x0CF7, // Range Maximum
0x0000, // Translation Offset
0x0CF8, // Length
,, , TypeStatic)
WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
0x0000, // Granularity
0x0D00, // Range Minimum
0xFFFF, // Range Maximum
0x0000, // Translation Offset
0xF300, // Length
,, , TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000A0000, // Range Minimum
0x000BFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00020000, // Length
,, , AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000C0000, // Range Minimum
0x000DFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00020000, // Length
,, _Y0D, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x00000000, // Range Minimum
0x00000000, // Range Maximum
0x00000000, // Translation Offset
0x00000000, // Length
,, _Y0E, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x00000000, // Range Minimum
0x00000000, // Range Maximum
0x00000000, // Translation Offset
0x00000000, // Length
,, _Y0F, AddressRangeMemory, TypeStatic)
})
CreateDWordField (CRS, \_SB.PCI0._Y0D._MIN, MIN5)
CreateDWordField (CRS, \_SB.PCI0._Y0D._MAX, MAX5)
CreateDWordField (CRS, \_SB.PCI0._Y0D._LEN, LEN5)
CreateDWordField (CRS, \_SB.PCI0._Y0E._MIN, MIN6)
CreateDWordField (CRS, \_SB.PCI0._Y0E._MAX, MAX6)
CreateDWordField (CRS, \_SB.PCI0._Y0E._LEN, LEN6)
CreateDWordField (CRS, \_SB.PCI0._Y0F._MIN, MIN7)
CreateDWordField (CRS, \_SB.PCI0._Y0F._MAX, MAX7)
CreateDWordField (CRS, \_SB.PCI0._Y0F._LEN, LEN7)
Method (_CRS, 0, NotSerialized)
{
Store (MG1L, Local0)
If (Local0)
{
Store (MG1B, MIN5)
Store (MG1L, LEN5)
Add (MIN5, Decrement (Local0), MAX5)
}
Store (MG2B, MIN6)
Store (Ones, MAX6)
Subtract (MAX6, MIN6, LEN6)
Increment (LEN6)
Store (MB0B, MIN7)
Store (MB0L, LEN7)
Store (MB0L, Local0)
Add (MIN7, Decrement (Local0), MAX7)
Return (CRS)
}
}
}
Name (WOTB, Zero)
Name (WSSB, Zero)
Name (WAXB, Zero)
Method (_PTS, 1, NotSerialized)
{
DIAG (Arg0)
PTS (Arg0)
Store (Zero, Index (WAKP, Zero))
Store (Zero, Index (WAKP, One))
If (LAnd (LEqual (Arg0, 0x04), LEqual (OSFL (), 0x02)))
{
Sleep (0x0BB8)
}
Store (ASSB, WSSB)
Store (AOTB, WOTB)
Store (AAXB, WAXB)
Store (Arg0, ASSB)
Store (OSFL (), AOTB)
Store (Zero, AAXB)
}
Method (_WAK, 1, NotSerialized)
{
ShiftLeft (Arg0, 0x04, DBG8)
WAK (Arg0)
If (ASSB)
{
Store (WSSB, ASSB)
Store (WOTB, AOTB)
Store (WAXB, AAXB)
}
If (DerefOf (Index (WAKP, Zero)))
{
Store (Zero, Index (WAKP, One))
}
Else
{
Store (Arg0, Index (WAKP, One))
}
Return (WAKP)
}
If (OSCF)
{
Scope (_SB.PCI0)
{
Name (SUPP, Zero)
Name (CTRL, Zero)
Method (_OSC, 4, NotSerialized)
{
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40,
/* 0008 */ 0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66
}))
{
CreateDWordField (Arg3, Zero, CDW1)
CreateDWordField (Arg3, 0x04, CDW2)
CreateDWordField (Arg3, 0x08, CDW3)
Store (CDW2, SUPP)
Store (CDW3, CTRL)
If (LNotEqual (And (SUPP, 0x16), 0x16))
{
And (CTRL, 0x1E)
}
And (CTRL, 0x1D, CTRL)
If (Not (And (CDW1, One)))
{
If (And (CTRL, One)) {}
If (And (CTRL, 0x04))
{
Store (One, EPNM)
Store (One, DPPF)
}
If (And (CTRL, 0x10)) {}
}
If (LNotEqual (Arg1, One))
{
Or (CDW1, 0x08, CDW1)
}
If (LNotEqual (CDW3, CTRL))
{
Or (CDW1, 0x10, CDW1)
}
Store (CTRL, CDW3)
Return (Arg3)
}
Else
{
Or (CDW1, 0x04, CDW1)
Return (Arg3)
}
}
}
}
Scope (_SB.PCI0.SBRG)
{
Device (TPM)
{
Method (_HID, 0, NotSerialized)
{
Return (OTID ())
}
Name (_CID, EisaId ("PNP0C31"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0254, // Range Minimum
0x0254, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x4700, // Range Minimum
0x4700, // Range Maximum
0x01, // Alignment
0x0C, // Length
)
Memory32Fixed (ReadWrite,
0xFED40000, // Address Base
0x00005000, // Address Length
)
})
OperationRegion (\TCMM, SystemMemory, 0xFED40000, 0x5000)
Field (TCMM, ByteAcc, NoLock, Preserve)
{
ACCS, 8,
Offset (0xF00),
VDID, 32
}
Method (_STA, 0, NotSerialized)
{
Store (OTPM (), Local0)
If (LEqual (Local0, One))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Name (UMOR, Buffer (0x10)
{
/* 0000 */ 0xED, 0x54, 0x60, 0x37, 0x13, 0xCC, 0x75, 0x46,
/* 0008 */ 0x90, 0x1C, 0x47, 0x56, 0xD7, 0xF2, 0xD4, 0x5D
})
Name (UPPI, Buffer (0x10)
{
/* 0000 */ 0xA6, 0xFA, 0xDD, 0x3D, 0x1B, 0x36, 0xB4, 0x4E,
/* 0008 */ 0xA4, 0x24, 0x8D, 0x10, 0x08, 0x9D, 0x16, 0x53
})
Method (_DSM, 4, NotSerialized)
{
If (LEqual (Arg0, UMOR))
{
If (LEqual (Arg1, One))
{
Name (_T_0, Zero)
Store (Arg2, _T_0)
If (LEqual (_T_0, One))
{
Store (DerefOf (Index (Arg3, Zero)), Local0)
If (Local0) {}
Else
{
}
Return (Zero)
}
Else
{
}
}
Return (One)
}
Name (RST3, Package (0x02)
{
Zero,
Zero
})
Name (RST4, Package (0x03)
{
Zero,
Zero,
Ones
})
If (LEqual (Arg0, UPPI))
{
If (LEqual (Arg1, One))
{
Name (_T_1, Zero)
Store (Arg2, _T_1)
If (LEqual (_T_1, One))
{
Return (Buffer (0x04)
{
"1.0"
})
}
Else
{
If (LEqual (_T_1, 0x02))
{
Store (DerefOf (Index (Arg3, Zero)), Local0)
If (LGreater (Local0, 0x0E))
{
Return (One)
}
If (LEqual (Match (Package (0x02)
{
0x0C,
0x0D
}, MEQ, Local0, MTR, Zero, Zero), Ones))
{
And (Local0, 0x0F, Local0)
And (PPIS, 0xF0, PPIS)
Or (PPIS, Local0, PPIS)
Return (Zero)
}
Else
{
Return (One)
}
}
Else
{
If (LEqual (_T_1, 0x03))
{
And (PPIS, 0x0F, Local0)
Store (Local0, Index (RST3, One))
Return (RST3)
}
Else
{
If (LEqual (_T_1, 0x04))
{
Return (0x02)
}
Else
{
If (LEqual (_T_1, 0x05))
{
And (PPIS, 0xF0, Local0)
ShiftRight (Local0, 0x04, Local0)
Store (Local0, Index (RST4, One))
If (LOr (LEqual (PPIR, 0xF0), LEqual (PPIR, 0xF1)))
{
Store (0xFFFFFF00, Local0)
Or (Local0, PPIR, Local0)
}
Else
{
Store (PPIR, Local0)
}
Store (Local0, Index (RST4, 0x02))
Return (RST4)
}
Else
{
If (LEqual (_T_1, 0x06))
{
Return (One)
}
}
}
}
}
}
}
}
}
}
}
Name (_S0, Package (0x04)
{
Zero,
Zero,
Zero,
Zero
})
If (SS3)
{
Name (_S3, Package (0x04)
{
0x03,
Zero,
Zero,
Zero
})
}
If (SS4)
{
Name (_S4, Package (0x04)
{
0x04,
Zero,
Zero,
Zero
})
}
Name (_S5, Package (0x04)
{
0x05,
Zero,
Zero,
Zero
})
Method (PTS, 1, NotSerialized)
{
If (Arg0)
{
NPTS (Arg0)
SPTS (Arg0)
OEMS (Arg0)
}
}
Method (WAK, 1, NotSerialized)
{
NWAK (Arg0)
SWAK (Arg0)
OEMW (Arg0)
\_SB.ATKD.GENW (Arg0)
}
}