DSDT.dsl for Toshiba L100-173
public text v1 · immutable/*
* Intel ACPI Component Architecture
* AML Disassembler version 20060912
*
* Disassembly of /root/acpi.dat, Sun Jul 29 21:43:43 2007
*
*
* Original Table Header:
* Signature "DSDT"
* Length 0x00005611 (22033)
* Revision 0x01
* OEM ID "TOSQCI"
* OEM Table ID "L10 "
* OEM Revision 0x06040000 (100925440)
* Creator ID "MSFT"
* Creator Revision 0x03000000 (50331648)
*/
DefinitionBlock ("/root/acpi.aml", "DSDT", 1, "TOSQCI", "L10 ", 0x06040000)
{
External (Z00D)
Name (Z000, 0x01)
Name (Z001, 0x02)
Name (Z002, 0x04)
Name (Z003, 0x08)
Name (Z004, 0x00)
Name (Z005, 0x0F)
Name (Z006, 0x0D)
Name (Z007, 0x0B)
Name (Z008, 0x09)
Scope (\_PR)
{
Processor (CPU0, 0x00, 0x00008010, 0x06) {}
Processor (CPU1, 0x01, 0x00008010, 0x06) {}
}
Name (ACPS, 0x01)
Name (_S0, Package (0x04)
{
0x00,
0x00,
0x00,
0x00
})
Name (RZ_X, Package (0x04)
{
0x01,
0x01,
0x00,
0x00
})
Name (_S3, Package (0x04)
{
0x03,
0x03,
0x00,
0x00
})
Name (_S4, Package (0x04)
{
0x04,
0x04,
0x00,
0x00
})
Name (_S5, Package (0x04)
{
0x05,
0x05,
0x00,
0x00
})
OperationRegion (\DBPO, SystemIO, 0x80, 0x01)
Field (\DBPO, ByteAcc, NoLock, Preserve)
{
DBGP, 8
}
OperationRegion (\DEBG, SystemIO, 0x1080, 0x01)
Field (\DEBG, ByteAcc, NoLock, Preserve)
{
P80H, 8
}
OperationRegion (\PMIO, SystemIO, 0x0CD6, 0x02)
Field (\PMIO, ByteAcc, NoLock, Preserve)
{
PIDX, 8,
PDAT, 8
}
OperationRegion (\P01, SystemIO, 0x8001, 0x01)
Field (\P01, ByteAcc, NoLock, Preserve)
{
PST1, 8
}
OperationRegion (\P10, SystemIO, 0x8010, 0x01)
Field (\P10, ByteAcc, NoLock, Preserve)
{
, 1,
TDTY, 3,
THTE, 1
}
Name (HTTX, 0x00)
Method (_PTS, 1, NotSerialized)
{
\_SB.PCI0.LPC0.PHSR (0x08, 0x00)
If (LEqual (Arg0, 0x05))
{
Store (0x82, \_SB.PCI0.LPC0.BCMD)
Store (Zero, \_SB.PCI0.LPC0.SMIC)
}
If (LEqual (Arg0, 0x04))
{
Store (One, \_SB.PCI0.SMB.SLPS)
Store (\_SB.PCI0.SMB.RVID, Local1)
If (LGreaterEqual (Local1, 0x10))
{
Store (Zero, \_SB.PCI0.SMB.RSTU)
}
Store (0x82, \_SB.PCI0.LPC0.BCMD)
Store (Zero, \_SB.PCI0.LPC0.SMIC)
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (0x01, \_SB.PCI0.LPC0.EC0.PFLG)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Store (0x01, INS4)
}
If (LEqual (Arg0, 0x03))
{
Store (One, \_SB.PCI0.SMB.SLPS)
Store (0x82, \_SB.PCI0.LPC0.BCMD)
Store (Zero, \_SB.PCI0.LPC0.SMIC)
}
If (LEqual (And (HTTX, 0x01), 0x01))
{
Store (0x91, \_SB.PCI0.LPC0.BCMD)
Store (Zero, \_SB.PCI0.LPC0.SMIC)
}
If (\_SB.ECOK)
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
If (Or (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
{
Store (\_SB.PCI0.LPC0.EC0.WLAN, \_SB.PCI0.LPC0.WLAN)
}
Release (\_SB.PCI0.LPC0.EC0.MUT1)
}
}
Method (_WAK, 1, NotSerialized)
{
Store (0x81, \_SB.PCI0.LPC0.BCMD)
Store (Zero, \_SB.PCI0.LPC0.SMIC)
If (LEqual (Arg0, 0x03))
{
Store (0x61, PIDX)
Store (PDAT, Local0)
And (Local0, 0x80, Local0)
If (LEqual (Local0, 0x00))
{
Notify (\_SB.PWRB, 0x02)
}
}
If (LEqual (Arg0, 0x04))
{
Notify (\_SB.PWRB, 0x02)
Store (0x00, INS4)
}
If (LEqual (Arg0, 0x01))
{
And (PST1, 0x04, Local0)
If (LEqual (Local0, 0x00))
{
Notify (\_SB.PWRB, 0x02)
}
}
If (LEqual (And (HTTX, 0x01), 0x01))
{
Store (0x90, \_SB.PCI0.LPC0.BCMD)
Store (Zero, \_SB.PCI0.LPC0.SMIC)
}
If (LEqual (Arg0, 0x03))
{
\_SB.PCI0.LPC0.PHSR (0x00, 0x00)
}
\_SB.PCI0.LPC0.PHSR (0x08, 0x01)
If (Or (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.WLAN, \_SB.PCI0.LPC0.EC0.WLAN)
Store (0x01, \_SB.PCI0.LPC0.EC0.CPLE)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
\_SB.BAT1.Z009 ()
If (\_SB.BAT1.BTIN)
{
\_SB.BAT1.UBIF ()
Notify (\_SB.BAT1, 0x81)
}
}
}
Scope (\_SI)
{
Method (_SST, 1, NotSerialized)
{
If (LEqual (Arg0, 0x01))
{
Store ("===== SST Working =====", Debug)
}
If (LEqual (Arg0, 0x02))
{
Store ("===== SST Waking =====", Debug)
}
If (LEqual (Arg0, 0x03))
{
Store ("===== SST Sleeping =====", Debug)
}
If (LEqual (Arg0, 0x04))
{
Store ("===== SST Sleeping S4 =====", Debug)
}
}
}
Scope (\_SB)
{
Name (OSTB, Ones)
OperationRegion (OSTY, SystemMemory, 0x2BEB6E2C, 0x00000001)
Field (OSTY, AnyAcc, NoLock, Preserve)
{
TPOS, 8
}
Method (OSTP, 0, NotSerialized)
{
If (LEqual (^OSTB, Ones))
{
If (CondRefOf (\_OSI, Local0))
{
If (\_OSI ("Windows 2001.1"))
{
Store (0x20, ^OSTB)
Store (0x20, ^TPOS)
}
Else
{
If (\_OSI ("Windows 2001 SP1"))
{
Store (0x10, ^OSTB)
Store (0x10, ^TPOS)
}
Else
{
If (\_OSI ("Windows 2001"))
{
Store (0x08, ^OSTB)
Store (0x08, ^TPOS)
}
Else
{
If (\_OSI ("Windows 2006"))
{
Store (0x40, ^OSTB)
Store (0x40, ^TPOS)
}
Else
{
Store (0x00, ^OSTB)
Store (0x00, ^TPOS)
}
}
}
}
}
Else
{
If (CondRefOf (\_OS, Local0))
{
If (^SEQL (\_OS, "Microsoft Windows"))
{
Store (0x01, ^OSTB)
Store (0x01, ^TPOS)
}
Else
{
If (^SEQL (\_OS, "Microsoft WindowsME: Millennium Edition"))
{
Store (0x02, ^OSTB)
Store (0x02, ^TPOS)
}
Else
{
If (^SEQL (\_OS, "Microsoft Windows NT"))
{
Store (0x04, ^OSTB)
Store (0x04, ^TPOS)
}
Else
{
Store (0x00, ^OSTB)
Store (0x00, ^TPOS)
}
}
}
}
Else
{
Store (0x00, ^OSTB)
Store (0x00, ^TPOS)
}
}
}
Return (^OSTB)
}
Method (OSHT, 0, NotSerialized)
{
\_SB.OSTP ()
Store (0x48, \_SB.PCI0.LPC0.BCMD)
Store (Zero, \_SB.PCI0.LPC0.SMIC)
}
Method (SEQL, 2, Serialized)
{
Store (SizeOf (Arg0), Local0)
Store (SizeOf (Arg1), Local1)
If (LNotEqual (Local0, Local1))
{
Return (Zero)
}
Name (BUF0, Buffer (Local0) {})
Store (Arg0, BUF0)
Name (BUF1, Buffer (Local0) {})
Store (Arg1, BUF1)
Store (Zero, Local2)
While (LLess (Local2, Local0))
{
Store (DerefOf (Index (BUF0, Local2)), Local3)
Store (DerefOf (Index (BUF1, Local2)), Local4)
If (LNotEqual (Local3, Local4))
{
Return (Zero)
}
Increment (Local2)
}
Return (One)
}
}
Method (VTOB, 1, NotSerialized)
{
Store (0x01, Local0)
ShiftLeft (Local0, Arg0, Local0)
Return (Local0)
}
Method (BTOV, 1, NotSerialized)
{
ShiftRight (Arg0, 0x01, Local0)
Store (0x00, Local1)
While (Local0)
{
Increment (Local1)
ShiftRight (Local0, 0x01, Local0)
}
Return (Local1)
}
Method (MKWD, 2, NotSerialized)
{
If (And (Arg1, 0x80))
{
Store (0xFFFF0000, Local0)
}
Else
{
Store (Zero, Local0)
}
Or (Local0, Arg0, Local0)
Or (Local0, ShiftLeft (Arg1, 0x08), Local0)
Return (Local0)
}
Method (POSW, 1, NotSerialized)
{
If (And (Arg0, 0x8000))
{
If (LEqual (Arg0, 0xFFFF))
{
Return (0xFFFFFFFF)
}
Else
{
Not (Arg0, Local0)
Increment (Local0)
And (Local0, 0xFFFF, Local0)
Return (Local0)
}
}
Else
{
Return (Arg0)
}
}
Method (GBFE, 3, NotSerialized)
{
CreateByteField (Arg0, Arg1, TIDX)
Store (TIDX, Arg2)
}
Method (PBFE, 3, NotSerialized)
{
CreateByteField (Arg0, Arg1, TIDX)
Store (Arg2, TIDX)
}
Method (ITOS, 1, NotSerialized)
{
Store (Buffer (0x09)
{
/* 0000 */ 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00
}, Local0)
Store (Buffer (0x11)
{
"0123456789ABCDEF"
}, Local7)
Store (0x08, Local1)
Store (0x00, Local2)
Store (0x00, Local3)
While (Local1)
{
Decrement (Local1)
And (ShiftRight (Arg0, ShiftLeft (Local1, 0x02)), 0x0F, Local4)
If (Local4)
{
Store (Ones, Local3)
}
If (Local3)
{
GBFE (Local7, Local4, RefOf (Local5))
PBFE (Local0, Local2, Local5)
Increment (Local2)
}
}
Return (Local0)
}
OperationRegion (NV1, SystemIO, 0x72, 0x02)
Field (NV1, ByteAcc, NoLock, Preserve)
{
INDX, 8,
DATA, 8
}
IndexField (INDX, DATA, ByteAcc, NoLock, Preserve)
{
Offset (0xB1),
TMOD, 1,
Offset (0xEE),
INS4, 1
}
Name (\GPIC, 0x00)
Method (\_PIC, 1, NotSerialized)
{
Store (Arg0, GPIC)
If (Arg0)
{
\_SB.PCI0.LPC0.DSPI ()
}
}
Scope (\_SB)
{
Name (ECOK, 0x00)
Device (PCI0)
{
Name (_HID, EisaId ("PNP0A03"))
Name (_ADR, 0x00)
Name (_UID, 0x01)
Name (_BBN, 0x00)
Method (_INI, 0, NotSerialized)
{
\_SB.OSHT ()
}
OperationRegion (MREG, PCI_Config, 0x92, 0x02)
Field (MREG, ByteAcc, NoLock, Preserve)
{
TOML, 8,
TOMH, 8
}
Method (TOM, 0, NotSerialized)
{
Multiply (TOML, 0x00010000, Local0)
Multiply (TOMH, 0x01000000, Local1)
Add (Local0, Local1, Local0)
Return (Local0)
}
OperationRegion (NBMS, PCI_Config, 0x60, 0x08)
Field (NBMS, DWordAcc, NoLock, Preserve)
{
MIDX, 32,
MIDR, 32
}
Mutex (NBMM, 0x00)
Method (NBMR, 1, NotSerialized)
{
Acquire (NBMM, 0xFFFF)
And (Arg0, 0x7F, Local0)
Store (Local0, MIDX)
Store (MIDR, Local0)
Store (0x7F, MIDX)
Release (NBMM)
Return (Local0)
}
Method (NBMW, 2, NotSerialized)
{
Acquire (NBMM, 0xFFFF)
And (Arg0, 0x7F, Local0)
Or (Local0, 0x80, Local0)
Store (Local0, MIDX)
Store (Arg1, MIDR)
Store (And (Local0, 0x7F, Local0), MIDX)
Release (NBMM)
}
OperationRegion (NBXP, PCI_Config, 0xE0, 0x08)
Field (NBXP, DWordAcc, NoLock, Preserve)
{
NBXI, 32,
NBXD, 32
}
Mutex (NBXM, 0x00)
Method (NBXR, 1, NotSerialized)
{
Acquire (NBXM, 0xFFFF)
Store (Arg0, NBXI)
Store (NBXD, Local0)
Store (0x00, NBXI)
Release (NBXM)
Return (Local0)
}
Method (NBXW, 2, NotSerialized)
{
Acquire (NBXM, 0xFFFF)
Store (Arg0, NBXI)
Store (Arg1, NBXD)
Store (0x00, NBXI)
Release (NBXM)
}
Method (GPPM, 0, NotSerialized)
{
Store (NBMR (0x31), Local0)
And (Local0, 0x0F, Local0)
Return (Local0)
}
Method (XPTR, 2, NotSerialized)
{
If (LAnd (LLess (Arg0, 0x02), LGreater (Arg0, 0x07)))
{
Return (0x00)
}
Else
{
Store (0x01, Local0)
If (LLess (Arg0, 0x04))
{
Add (Arg0, 0x02, Local1)
}
Else
{
Add (Arg0, 0x11, Local1)
}
ShiftLeft (Local0, Local1, Local0)
Store (NBMR (0x08), Local2)
If (Arg1)
{
And (Local2, Not (Local0), Local2)
}
Else
{
Or (Local2, Local0, Local2)
}
NBMW (0x08, Local2)
Return (Ones)
}
}
OperationRegion (REGS, PCI_Config, 0x59, 0x08)
Field (REGS, ByteAcc, NoLock, Preserve)
{
SR59, 8,
SR5A, 8,
SR5B, 8,
SR5C, 8,
SR5D, 8,
SR5E, 8,
SR5F, 8
}
Name (RSRC, ResourceTemplate ()
{
WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
0x0000, // Granularity
0x0000, // Range Minimum
0x00FF, // Range Maximum
0x0000, // Translation Offset
0x0100, // Length
0x00,, )
DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x00000000, // Granularity
0x000A0000, // Range Minimum
0x000BFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00020000, // Length
0x00,, , AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x00000000, // Granularity
0x000C0000, // Range Minimum
0x000C3FFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
0x00,, _Y00, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x00000000, // Granularity
0x000C4000, // Range Minimum
0x000C7FFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
0x00,, _Y01, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x00000000, // Granularity
0x000C8000, // Range Minimum
0x000CBFFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
0x00,, _Y02, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x00000000, // Granularity
0x000CC000, // Range Minimum
0x000CFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
0x00,, _Y03, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x00000000, // Granularity
0x000D0000, // Range Minimum
0x000D3FFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
0x00,, _Y04, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x00000000, // Granularity
0x000D4000, // Range Minimum
0x000D7FFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
0x00,, _Y05, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x00000000, // Granularity
0x000D8000, // Range Minimum
0x000DBFFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
0x00,, _Y06, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x00000000, // Granularity
0x000DC000, // Range Minimum
0x000DFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
0x00,, _Y07, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x00000000, // Granularity
0x00000000, // Range Minimum
0xFFFDFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00000000, // Length
0x00,, _Y08, AddressRangeMemory, TypeStatic)
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
0x00,, , TypeStatic)
WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
0x0000, // Granularity
0x0D00, // Range Minimum
0xFFFF, // Range Maximum
0x0000, // Translation Offset
0xF300, // Length
0x00,, , TypeStatic)
})
Method (_CRS, 0, Serialized)
{
CreateBitField (RSRC, \_SB.PCI0._Y00._RW, C0RW)
CreateDWordField (RSRC, \_SB.PCI0._Y00._LEN, C0LN)
Store (One, C0RW)
If (LEqual (SR5A, 0x01))
{
Store (Zero, C0RW)
}
Store (0x4000, C0LN)
If (And (SR5A, 0x03))
{
Store (0x00, C0LN)
}
CreateBitField (RSRC, \_SB.PCI0._Y01._RW, C4RW)
CreateDWordField (RSRC, \_SB.PCI0._Y01._LEN, C4LN)
Store (One, C4RW)
If (LEqual (SR5A, 0x10))
{
Store (Zero, C4RW)
}
Store (0x4000, C4LN)
If (And (SR5A, 0x30))
{
Store (0x00, C4LN)
}
CreateBitField (RSRC, \_SB.PCI0._Y02._RW, C8RW)
CreateDWordField (RSRC, \_SB.PCI0._Y02._LEN, C8LN)
Store (One, C8RW)
If (LEqual (SR5B, 0x01))
{
Store (Zero, C8RW)
}
Store (0x4000, C8LN)
If (And (SR5B, 0x03))
{
Store (0x00, C8LN)
}
CreateBitField (RSRC, \_SB.PCI0._Y03._RW, CCRW)
CreateDWordField (RSRC, \_SB.PCI0._Y03._LEN, CCLN)
Store (One, CCRW)
If (LEqual (SR5B, 0x10))
{
Store (Zero, CCRW)
}
Store (0x4000, CCLN)
If (And (SR5B, 0x30))
{
Store (0x00, CCLN)
}
CreateBitField (RSRC, \_SB.PCI0._Y04._RW, D0RW)
CreateDWordField (RSRC, \_SB.PCI0._Y04._LEN, D0LN)
Store (One, D0RW)
If (LEqual (SR5C, 0x01))
{
Store (Zero, D0RW)
}
Store (0x4000, D0LN)
If (And (SR5C, 0x03))
{
Store (0x00, D0LN)
}
CreateBitField (RSRC, \_SB.PCI0._Y05._RW, D4RW)
CreateDWordField (RSRC, \_SB.PCI0._Y05._LEN, D4LN)
Store (One, D4RW)
If (LEqual (SR5C, 0x10))
{
Store (Zero, D4RW)
}
Store (0x4000, D4LN)
If (And (SR5C, 0x30))
{
Store (0x00, D4LN)
}
CreateBitField (RSRC, \_SB.PCI0._Y06._RW, D8RW)
CreateDWordField (RSRC, \_SB.PCI0._Y06._LEN, D8LN)
Store (One, D8RW)
If (LEqual (SR5D, 0x01))
{
Store (Zero, D8RW)
}
Store (0x4000, D8LN)
If (And (SR5D, 0x03))
{
Store (0x00, D8LN)
}
CreateBitField (RSRC, \_SB.PCI0._Y07._RW, DCRW)
CreateDWordField (RSRC, \_SB.PCI0._Y07._LEN, DCLN)
Store (One, DCRW)
If (LEqual (SR5D, 0x10))
{
Store (Zero, DCRW)
}
Store (0x4000, DCLN)
If (And (SR5D, 0x30))
{
Store (0x00, DCLN)
}
CreateDWordField (RSRC, \_SB.PCI0._Y08._MIN, BTMN)
CreateDWordField (RSRC, \_SB.PCI0._Y08._MAX, BTMX)
CreateDWordField (RSRC, \_SB.PCI0._Y08._LEN, BTLN)
Store (\_SB.PCI0.TOM (), BTMN)
Subtract (0xFEC00000, BTMN, BTLN)
Subtract (Add (BTMN, BTLN), 0x01, BTMX)
Return (RSRC)
}
Device (MEMR)
{
Name (_HID, EisaId ("PNP0C02"))
Name (MEM1, ResourceTemplate ()
{
Memory32Fixed (ReadWrite,
0xE0000000, // Address Base
0x10000000, // Address Length
)
})
Method (_CRS, 0, NotSerialized)
{
Return (MEM1)
}
}
Method (_PRT, 0, NotSerialized)
{
If (GPIC)
{
Return (Package (0x0B)
{
Package (0x04)
{
0x0011FFFF,
0x00,
0x00,
0x17
},
Package (0x04)
{
0x0012FFFF,
0x00,
0x00,
0x16
},
Package (0x04)
{
0x0013FFFF,
0x00,
0x00,
0x13
},
Package (0x04)
{
0x0014FFFF,
0x00,
0x00,
0x10
},
Package (0x04)
{
0x0014FFFF,
0x01,
0x00,
0x11
},
Package (0x04)
{
0x0014FFFF,
0x02,
0x00,
0x12
},
Package (0x04)
{
0x0014FFFF,
0x03,
0x00,
0x13
},
Package (0x04)
{
0x000EFFFF,
0x00,
0x00,
0x13
},
Package (0x04)
{
0x000EFFFF,
0x01,
0x00,
0x10
},
Package (0x04)
{
0x000EFFFF,
0x02,
0x00,
0x11
},
Package (0x04)
{
0x000EFFFF,
0x03,
0x00,
0x12
}
})
}
Else
{
Return (Package (0x0B)
{
Package (0x04)
{
0x0011FFFF,
0x00,
\_SB.PCI0.LPC0.LNKH,
0x00
},
Package (0x04)
{
0x0012FFFF,
0x00,
\_SB.PCI0.LPC0.LNKG,
0x00
},
Package (0x04)
{
0x0013FFFF,
0x00,
\_SB.PCI0.LPC0.LNKD,
0x00
},
Package (0x04)
{
0x0014FFFF,
0x00,
\_SB.PCI0.LPC0.LNKA,
0x00
},
Package (0x04)
{
0x0014FFFF,
0x01,
\_SB.PCI0.LPC0.LNKB,
0x00
},
Package (0x04)
{
0x0014FFFF,
0x02,
\_SB.PCI0.LPC0.LNKC,
0x00
},
Package (0x04)
{
0x0014FFFF,
0x03,
\_SB.PCI0.LPC0.LNKD,
0x00
},
Package (0x04)
{
0x000EFFFF,
0x00,
\_SB.PCI0.LPC0.LNKD,
0x00
},
Package (0x04)
{
0x000EFFFF,
0x01,
\_SB.PCI0.LPC0.LNKA,
0x00
},
Package (0x04)
{
0x000EFFFF,
0x02,
\_SB.PCI0.LPC0.LNKB,
0x00
},
Package (0x04)
{
0x000EFFFF,
0x03,
\_SB.PCI0.LPC0.LNKC,
0x00
}
})
}
}
OperationRegion (BAR1, PCI_Config, 0x14, 0x04)
Field (BAR1, ByteAcc, NoLock, Preserve)
{
Z00A, 32
}
Device (PB2)
{
Name (_ADR, 0x00020000)
Name (_PRW, Package (0x02)
{
0x18,
0x04
})
Method (_PRT, 0, NotSerialized)
{
If (GPIC)
{
Return (Package (0x04)
{
Package (0x04)
{
0xFFFF,
0x00,
0x00,
0x12
},
Package (0x04)
{
0xFFFF,
0x01,
0x00,
0x13
},
Package (0x04)
{
0xFFFF,
0x02,
0x00,
0x10
},
Package (0x04)
{
0xFFFF,
0x03,
0x00,
0x11
}
})
}
Else
{
Return (Package (0x04)
{
Package (0x04)
{
0xFFFF,
0x00,
\_SB.PCI0.LPC0.LNKC,
0x00
},
Package (0x04)
{
0xFFFF,
0x01,
\_SB.PCI0.LPC0.LNKD,
0x00
},
Package (0x04)
{
0xFFFF,
0x02,
\_SB.PCI0.LPC0.LNKA,
0x00
},
Package (0x04)
{
0xFFFF,
0x03,
\_SB.PCI0.LPC0.LNKB,
0x00
}
})
}
}
}
Device (PB3)
{
Name (_ADR, 0x00030000)
Method (_PRT, 0, NotSerialized)
{
If (GPIC)
{
Return (Package (0x04)
{
Package (0x04)
{
0xFFFF,
0x00,
0x00,
0x13
},
Package (0x04)
{
0xFFFF,
0x01,
0x00,
0x10
},
Package (0x04)
{
0xFFFF,
0x02,
0x00,
0x11
},
Package (0x04)
{
0xFFFF,
0x03,
0x00,
0x12
}
})
}
Else
{
Return (Package (0x04)
{
Package (0x04)
{
0xFFFF,
0x00,
\_SB.PCI0.LPC0.LNKD,
0x00
},
Package (0x04)
{
0xFFFF,
0x01,
\_SB.PCI0.LPC0.LNKA,
0x00
},
Package (0x04)
{
0xFFFF,
0x02,
\_SB.PCI0.LPC0.LNKB,
0x00
},
Package (0x04)
{
0xFFFF,
0x03,
\_SB.PCI0.LPC0.LNKC,
0x00
}
})
}
}
}
Device (PB4)
{
Name (_ADR, 0x00040000)
OperationRegion (XPCB, PCI_Config, 0x58, 0x24)
Field (XPCB, ByteAcc, NoLock, Preserve)
{
Offset (0x10),
LKCN, 16,
LKST, 16,
Offset (0x1A),
SLST, 16
}
OperationRegion (XPRI, PCI_Config, 0xE0, 0x08)
Field (XPRI, ByteAcc, NoLock, Preserve)
{
XPIR, 32,
XPID, 32
}
OperationRegion (XPEX, SystemMemory, 0xE0020100, 0x0100)
Field (XPEX, DWordAcc, NoLock, Preserve)
{
Offset (0x40),
ECPH, 32,
Offset (0x58),
VC02, 32,
VC0S, 32
}
Method (XPDL, 0, NotSerialized)
{
Store (Zero, Local0)
If (And (VC02, 0x00020000))
{
Store (Ones, Local0)
}
Return (Local0)
}
Method (XPRD, 1, NotSerialized)
{
Store (Arg0, XPIR)
Store (XPID, Local0)
Store (0x00, XPIR)
Return (Local0)
}
Method (XPWR, 2, NotSerialized)
{
Store (Arg0, XPIR)
Store (Arg1, XPID)
Store (0x00, XPIR)
}
Method (XPRT, 0, NotSerialized)
{
Store (XPRD (0xA2), Local0)
And (Local0, Not (0x07), Local0)
ShiftRight (Local0, 0x04, Local1)
And (Local1, 0x07, Local1)
Or (Local0, Local1, Local0)
Or (Local0, 0x0100, Local0)
XPWR (0xA2, Local0)
}
Method (XPLP, 1, NotSerialized)
{
If (LEqual (\_SB.PCI0.GPPM (), 0x02))
{
Store (0x1010, Local1)
}
Else
{
Store (0x0404, Local1)
}
Store (\_SB.PCI0.NBXR (0x00010065), Local2)
If (Arg0)
{
And (Local2, Not (Local1), Local2)
}
Else
{
Or (Local2, Local1, Local2)
}
\_SB.PCI0.NBXW (0x00010065, Local2)
}
Method (XPR2, 0, NotSerialized)
{
Store (LKCN, Local0)
And (Local0, Not (0x20), Local0)
Store (Local0, LKCN)
Or (Local0, 0x20, Local0)
Store (Local0, LKCN)
Store (0x64, Local1)
Store (0x01, Local2)
While (LAnd (Local1, Local2))
{
Sleep (0x01)
Store (LKST, Local3)
If (And (Local3, 0x0800))
{
Decrement (Local1)
}
Else
{
Store (0x00, Local2)
}
}
And (Local0, Not (0x20), Local0)
Store (Local0, LKCN)
If (LNot (Local2))
{
Return (Ones)
}
Else
{
Return (Zero)
}
}
Device (NCRD)
{
Name (_ADR, 0x00)
OperationRegion (PCFG, PCI_Config, 0x00, 0x08)
Field (PCFG, DWordAcc, NoLock, Preserve)
{
DVID, 32,
PCMS, 32
}
Method (_RMV, 0, NotSerialized)
{
Return (0x01)
}
Method (_STA, 0, NotSerialized)
{
If (\_SB.PCI0.SMB.GVT6)
{
Return (0x0F)
}
Else
{
Return (0x00)
}
}
}
Method (_PRT, 0, NotSerialized)
{
If (GPIC)
{
Return (Package (0x04)
{
Package (0x04)
{
0xFFFF,
0x00,
0x00,
0x10
},
Package (0x04)
{
0xFFFF,
0x01,
0x00,
0x11
},
Package (0x04)
{
0xFFFF,
0x02,
0x00,
0x12
},
Package (0x04)
{
0xFFFF,
0x03,
0x00,
0x13
}
})
}
Else
{
Return (Package (0x04)
{
Package (0x04)
{
0xFFFF,
0x00,
\_SB.PCI0.LPC0.LNKA,
0x00
},
Package (0x04)
{
0xFFFF,
0x01,
\_SB.PCI0.LPC0.LNKB,
0x00
},
Package (0x04)
{
0xFFFF,
0x02,
\_SB.PCI0.LPC0.LNKC,
0x00
},
Package (0x04)
{
0xFFFF,
0x03,
\_SB.PCI0.LPC0.LNKD,
0x00
}
})
}
}
}
Scope (\_GPE)
{
}
Device (OHC1)
{
Name (_ADR, 0x00130000)
Name (_PRW, Package (0x02)
{
0x0B,
0x03
})
}
Device (OHC2)
{
Name (_ADR, 0x00130001)
Name (_PRW, Package (0x02)
{
0x0B,
0x03
})
}
Device (EHCI)
{
Name (_ADR, 0x00130002)
Name (_PRW, Package (0x02)
{
0x0B,
0x03
})
}
Device (SATA)
{
Name (_ADR, 0x00120000)
Name (B5EN, 0x00)
Name (BA_5, 0x00)
OperationRegion (SATX, PCI_Config, 0x00, 0x28)
Field (SATX, AnyAcc, NoLock, Preserve)
{
VIDI, 32,
Offset (0x24),
BA05, 32
}
Method (GBAA, 0, NotSerialized)
{
Store (BA_5, B5EN)
If (LEqual (BA_5, 0xFFFFFFFF))
{
Store (0x00, B5EN)
Return (0xFFF80000)
}
Else
{
Store (0x01, B5EN)
Return (BA_5)
}
}
OperationRegion (BAR5, SystemMemory, GBAA, 0x0200)
Field (BAR5, AnyAcc, NoLock, Preserve)
{
Offset (0x104),
CSTX, 1,
CST0, 1,
Offset (0x10A),
STA0, 1,
Offset (0x184),
CSTY, 1,
CST1, 1,
Offset (0x18A),
STA1, 1
}
Method (_INI, 0, NotSerialized)
{
Store (BA05, BA_5)
GBAA ()
If (B5EN)
{
If (\_SB.PCI0.SATA.STA0)
{
Store (\_SB.PCI0.SATA.STA0, \_SB.PCI0.SATA.STA0)
}
If (\_SB.PCI0.SATA.STA1)
{
Store (\_SB.PCI0.SATA.STA1, \_SB.PCI0.SATA.STA1)
}
}
}
Device (PRID)
{
Name (_ADR, 0x00)
Device (P_D0)
{
Name (_ADR, 0x00)
Method (_STA, 0, NotSerialized)
{
Store (BA05, BA_5)
GBAA ()
If (LEqual (B5EN, 0x00))
{
Return (0x00)
}
If (\_SB.PCI0.SATA.CST0)
{
Return (0x0F)
}
Else
{
Return (0x00)
}
}
}
}
Device (SECD)
{
Name (_ADR, 0x01)
Device (S_D0)
{
Name (_ADR, 0x00)
Method (_STA, 0, NotSerialized)
{
Store (BA05, BA_5)
GBAA ()
If (LEqual (B5EN, 0x00))
{
Return (0x00)
}
If (\_SB.PCI0.SATA.CST1)
{
Return (0x0F)
}
Else
{
Return (0x00)
}
}
}
}
}
Device (SMB)
{
Name (_ADR, 0x00140000)
OperationRegion (Z00B, PCI_Config, 0x08, 0x01)
Field (Z00B, ByteAcc, NoLock, Preserve)
{
RVID, 8
}
OperationRegion (PMIO, SystemIO, 0x0CD6, 0x02)
Field (PMIO, ByteAcc, NoLock, Preserve)
{
INPM, 8,
DAPM, 8
}
OperationRegion (SMB, PCI_Config, 0x69, 0x01)
Field (SMB, WordAcc, NoLock, Preserve)
{
SIRQ, 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 (0x1C),
, 3,
MKME, 1,
PI3E, 1,
PI2E, 1,
PI1E, 1,
PI0E, 1,
, 3,
MKMS, 1,
PI3S, 1,
PI2S, 1,
PI1S, 1,
PI0S, 1,
Offset (0x36),
, 6,
GVT6, 1,
Offset (0x37),
, 4,
GPX1, 1,
, 1,
GPX3, 1,
Offset (0x38),
, 1,
GPX4, 1,
GPX5, 1,
, 1,
GPX6, 1,
Offset (0x55),
SPRE, 1,
Offset (0x65),
, 5,
RSTU, 1,
Offset (0x68),
, 3,
TPDE, 1,
, 1,
Offset (0x86),
, 1,
, 3,
, 1,
Offset (0x92),
, 6,
GE6I, 1
}
Method (TRMD, 0, NotSerialized)
{
Store (Zero, SPRE)
Store (Zero, TPDE)
}
Method (HTCD, 0, NotSerialized)
{
Store (Zero, PI2E)
Store (Zero, TM2E)
Store (PI2S, PI2S)
Store (TM2S, TM2S)
}
}
Device (IDE)
{
Name (_ADR, 0x00140001)
Name (UDMT, Package (0x08)
{
0x78,
0x5A,
0x3C,
0x2D,
0x1E,
0x14,
0x0F,
0x00
})
Name (PIOT, Package (0x06)
{
0x0258,
0x0186,
0x010E,
0xB4,
0x78,
0x00
})
Name (PITR, Package (0x06)
{
0x99,
0x47,
0x34,
0x22,
0x20,
0x99
})
Name (MDMT, Package (0x04)
{
0x01E0,
0x96,
0x78,
0x00
})
Name (MDTR, Package (0x04)
{
0x77,
0x21,
0x20,
0xFF
})
OperationRegion (IDE, PCI_Config, 0x40, 0x20)
Field (IDE, WordAcc, 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 (ATPI, 1, NotSerialized)
{
Store (Arg0, Local0)
And (Local0, 0xFF, Local0)
Or (Local0, 0x41544900, Local0)
Store (Local0, \_SB.PCI0.LPC0.INFO)
}
Method (GETT, 1, NotSerialized)
{
Store (And (Arg0, 0x0F), Local0)
Store (ShiftRight (Arg0, 0x04), Local1)
Return (Multiply (0x1E, Add (Add (Local0, 0x01), Add (Local1,
0x01))))
}
Method (GTM, 1, NotSerialized)
{
CreateByteField (Arg0, 0x00, PIT1)
CreateByteField (Arg0, 0x01, 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, 0x00, PIO0)
CreateDWordField (BUF, 0x04, DMA0)
CreateDWordField (BUF, 0x08, PIO1)
CreateDWordField (BUF, 0x0C, DMA1)
CreateDWordField (BUF, 0x10, FLAG)
If (And (PICX, 0x01))
{
Return (BUF)
}
Store (GETT (PIT0), PIO0)
Store (GETT (PIT1), PIO1)
If (And (UDCX, 0x01))
{
Or (FLAG, 0x01, 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, 0x00, PIO0)
CreateDWordField (Arg0, 0x04, DMA0)
CreateDWordField (Arg0, 0x08, PIO1)
CreateDWordField (Arg0, 0x0C, DMA1)
CreateDWordField (Arg0, 0x10, FLAG)
Name (BUF, Buffer (0x07)
{
/* 0000 */ 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
})
CreateByteField (BUF, 0x00, PIT1)
CreateByteField (BUF, 0x01, 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, 0x00, 0x00), Local0)
Divide (Local0, 0x05, Local0)
Store (Match (^PIOT, MLE, PIO1, MTR, 0x00, 0x00), 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, 0x01))
{
Store (Match (^UDMT, MLE, DMA0, MTR, 0x00, 0x00), Local0)
Divide (Local0, 0x07, Local0)
Or (UDMX, Local0, UDMX)
Or (UDCX, 0x01, UDCX)
}
Else
{
If (LNotEqual (DMA0, 0xFFFFFFFF))
{
Store (Match (^MDMT, MLE, DMA0, MTR, 0x00, 0x00), Local0)
Store (DerefOf (Index (^MDTR, Local0)), MDT0)
}
}
If (And (FLAG, 0x04))
{
Store (Match (^UDMT, MLE, DMA1, MTR, 0x00, 0x00), Local0)
Divide (Local0, 0x07, Local0)
Or (UDMX, ShiftLeft (Local0, 0x04), UDMX)
Or (UDCX, 0x02, UDCX)
}
Else
{
If (LNotEqual (DMA1, 0xFFFFFFFF))
{
Store (Match (^MDMT, MLE, DMA1, MTR, 0x00, 0x00), Local0)
Store (DerefOf (Index (^MDTR, Local0)), MDT1)
}
}
Return (BUF)
}
Method (GTF, 2, NotSerialized)
{
CreateByteField (Arg1, 0x00, MDT1)
CreateByteField (Arg1, 0x01, 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, 0x01, 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 (0x0E)
{
/* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xEF, 0x03,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xEF
})
CreateByteField (BUF, 0x01, PMOD)
CreateByteField (BUF, 0x08, DMOD)
CreateByteField (BUF, 0x05, CMDA)
CreateByteField (BUF, 0x0C, CMDB)
Store (Arg0, CMDA)
Store (Arg0, CMDB)
Or (Local0, 0x08, PMOD)
If (Local2)
{
Or (Local3, 0x40, DMOD)
}
Else
{
Store (Match (^MDMT, MLE, GETT (Local1), MTR, 0x00, 0x00), Local4)
If (LLess (Local4, 0x03))
{
Or (0x20, Local4, DMOD)
}
}
Return (BUF)
}
Device (PRID)
{
Name (_ADR, 0x00)
Method (_GTM, 0, NotSerialized)
{
Return (Buffer (0x14)
{
/* 0000 */ 0x78, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
/* 0008 */ 0x78, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
/* 0010 */ 0x1F, 0x00, 0x00, 0x00
})
}
Method (_STM, 3, NotSerialized)
{
Name (BUF, Buffer (0x07)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
CreateWordField (BUF, 0x00, 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, 0x00)
Method (_GTF, 0, NotSerialized)
{
Name (BUF, Buffer (0x05)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00
})
CreateWordField (BUF, 0x00, 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))
}
}
Method (_STA, 0, NotSerialized)
{
And (PPIC, 0x01, Local0)
If (LAnd (Local0, 0x01))
{
Return (Z006)
}
Else
{
Return (Z005)
}
}
Name (FWSO, "FWSO")
Name (_PSC, 0x00)
Method (_PS0, 0, NotSerialized)
{
Store (_PSC, Local0)
Store (0x00, _PSC)
If (LEqual (Local0, 0x03))
{
Store (0x01, \_SB.PCI0.LPC0.INF)
While (\_SB.PCI0.LPC0.INF)
{
Store (0x20, \_SB.PCI0.LPC0.BCMD)
Store (Zero, \_SB.PCI0.LPC0.SMIC)
If (LAnd (LEqual (\_SB.PCI0.LPC0.INF, 0x01), LGreaterEqual (\_SB.OSTB, 0x04)))
{
Sleep (0x01F4)
}
}
}
}
Method (_PS3, 0, NotSerialized)
{
Store (0x03, _PSC)
}
}
Device (SECD)
{
Name (_ADR, 0x01)
Method (_GTM, 0, NotSerialized)
{
Return (Buffer (0x14)
{
/* 0000 */ 0x78, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
/* 0008 */ 0x78, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
/* 0010 */ 0x1F, 0x00, 0x00, 0x00
})
}
Method (_STM, 3, NotSerialized)
{
Name (BUF, Buffer (0x07)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
CreateWordField (BUF, 0x00, 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, 0x00)
Method (_GTF, 0, NotSerialized)
{
Name (BUF, Buffer (0x05)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00
})
CreateWordField (BUF, 0x00, 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))
}
}
Method (_STA, 0, NotSerialized)
{
And (SPIC, 0x01, Local0)
If (LAnd (Local0, 0x01))
{
Return (Z006)
}
Else
{
Return (Z005)
}
}
}
}
Device (LPC0)
{
Name (_ADR, 0x00140003)
OperationRegion (PIRQ, SystemIO, 0x0C00, 0x02)
Field (PIRQ, ByteAcc, NoLock, Preserve)
{
PIID, 8,
PIDA, 8
}
IndexField (PIID, PIDA, ByteAcc, NoLock, Preserve)
{
PIRA, 8,
PIRB, 8,
PIRC, 8,
PIRD, 8,
PIRS, 8,
PIRM, 8,
PIRU, 8,
Offset (0x09),
PIRE, 8,
PIRF, 8,
PIRG, 8,
PIRH, 8
}
Name (IPRS, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{10,11}
})
Method (DSPI, 0, NotSerialized)
{
Store (0x00, PIRA)
Store (0x00, PIRB)
Store (0x00, PIRC)
Store (0x00, PIRD)
Store (0x09, PIRS)
Store (0x00, PIRM)
Store (0x00, PIRU)
Store (0x00, PIRE)
Store (0x00, PIRF)
Store (0x00, PIRG)
Store (0x00, PIRH)
}
Device (LNKA)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x01)
Method (_STA, 0, NotSerialized)
{
If (PIRA)
{
Return (Z007)
}
Else
{
Return (Z008)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (IPRS)
}
Method (_DIS, 0, NotSerialized)
{
Store (0x00, PIRA)
}
Method (_CRS, 0, NotSerialized)
{
Store (IPRS, Local0)
CreateWordField (Local0, 0x01, IRQ0)
ShiftLeft (0x01, PIRA, IRQ0)
Return (Local0)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PIRA)
}
}
Device (LNKB)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x02)
Method (_STA, 0, NotSerialized)
{
If (PIRB)
{
Return (Z007)
}
Else
{
Return (Z008)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (IPRS)
}
Method (_DIS, 0, NotSerialized)
{
Store (0x00, PIRB)
}
Method (_CRS, 0, NotSerialized)
{
Store (IPRS, Local0)
CreateWordField (Local0, 0x01, IRQ0)
ShiftLeft (0x01, PIRB, IRQ0)
Return (Local0)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PIRB)
}
}
Device (LNKC)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x03)
Method (_STA, 0, NotSerialized)
{
If (PIRC)
{
Return (Z007)
}
Else
{
Return (Z008)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (IPRS)
}
Method (_DIS, 0, NotSerialized)
{
Store (0x00, PIRC)
}
Method (_CRS, 0, NotSerialized)
{
Store (IPRS, Local0)
CreateWordField (Local0, 0x01, IRQ0)
ShiftLeft (0x01, PIRC, IRQ0)
Return (Local0)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PIRC)
}
}
Device (LNKD)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x04)
Method (_STA, 0, NotSerialized)
{
If (PIRD)
{
Return (Z007)
}
Else
{
Return (Z008)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (IPRS)
}
Method (_DIS, 0, NotSerialized)
{
Store (0x00, PIRD)
}
Method (_CRS, 0, NotSerialized)
{
Store (IPRS, Local0)
CreateWordField (Local0, 0x01, IRQ0)
ShiftLeft (0x01, PIRD, IRQ0)
Return (Local0)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PIRD)
}
}
Device (LNKE)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x05)
Method (_STA, 0, NotSerialized)
{
If (PIRE)
{
Return (Z007)
}
Else
{
Return (Z008)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (IPRS)
}
Method (_DIS, 0, NotSerialized)
{
Store (0x00, PIRE)
}
Method (_CRS, 0, NotSerialized)
{
Store (IPRS, Local0)
CreateWordField (Local0, 0x01, IRQ0)
ShiftLeft (0x01, PIRE, IRQ0)
Return (Local0)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PIRE)
}
}
Device (LNKF)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x06)
Method (_STA, 0, NotSerialized)
{
If (PIRF)
{
Return (Z007)
}
Else
{
Return (Z008)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (IPRS)
}
Method (_DIS, 0, NotSerialized)
{
Store (0x00, PIRF)
}
Method (_CRS, 0, NotSerialized)
{
Store (IPRS, Local0)
CreateWordField (Local0, 0x01, IRQ0)
ShiftLeft (0x01, PIRF, IRQ0)
Return (Local0)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PIRF)
}
}
Device (LNKG)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x07)
Method (_STA, 0, NotSerialized)
{
If (PIRG)
{
Return (Z007)
}
Else
{
Return (Z008)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (IPRS)
}
Method (_DIS, 0, NotSerialized)
{
Store (0x00, PIRG)
}
Method (_CRS, 0, NotSerialized)
{
Store (IPRS, Local0)
CreateWordField (Local0, 0x01, IRQ0)
ShiftLeft (0x01, PIRG, IRQ0)
Return (Local0)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PIRG)
}
}
Device (LNKH)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x08)
Method (_STA, 0, NotSerialized)
{
If (PIRH)
{
Return (Z007)
}
Else
{
Return (Z008)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (IPRS)
}
Method (_DIS, 0, NotSerialized)
{
Store (0x00, PIRH)
}
Method (_CRS, 0, NotSerialized)
{
Store (IPRS, Local0)
CreateWordField (Local0, 0x01, IRQ0)
ShiftLeft (0x01, PIRH, IRQ0)
Return (Local0)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PIRH)
}
}
OperationRegion (LCLM, SystemIO, 0x0C50, 0x03)
Field (LCLM, ByteAcc, NoLock, Preserve)
{
CLMI, 8,
CLMD, 8,
CLGP, 8
}
IndexField (CLMI, CLMD, ByteAcc, NoLock, Preserve)
{
IDRG, 8,
Offset (0x02),
TSTS, 8,
TINT, 8,
Offset (0x12),
I2CC, 8,
GPIO, 8
}
Method (RGPM, 0, NotSerialized)
{
Store (\_SB.PCI0.LPC0.GPIO, Local0)
And (Local0, Not (0xC0), Local0)
Store (Local0, \_SB.PCI0.LPC0.GPIO)
Store (\_SB.PCI0.LPC0.CLGP, Local1)
Return (Local1)
}
OperationRegion (LPCR, PCI_Config, 0x44, 0x02)
Field (LPCR, ByteAcc, NoLock, Preserve)
{
CMA0, 1,
CMA1, 1,
CMA2, 1,
CMA3, 1,
CMA4, 1,
CMA5, 1,
CMA6, 1,
CMA7, 1,
CMB0, 1,
CMB1, 1,
CMB2, 1,
CMB3, 1,
CMB4, 1,
CMB5, 1,
CMB6, 1,
CMB7, 1
}
Device (DMAC)
{
Name (_HID, EisaId ("PNP0200"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0x20, // Length
)
IO (Decode16,
0x0080, // Range Minimum
0x0080, // Range Maximum
0x01, // Alignment
0x10, // Length
)
IO (Decode16,
0x00C0, // Range Minimum
0x00C0, // Range Maximum
0x01, // Alignment
0x20, // Length
)
DMA (Compatibility, NotBusMaster, Transfer8_16, )
{4}
})
}
Device (MATH)
{
Name (_HID, EisaId ("PNP0C04"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x00F0, // Range Minimum
0x00F0, // Range Maximum
0x01, // Alignment
0x0F, // Length
)
IRQ (Edge, ActiveHigh, Exclusive, )
{13}
})
}
Device (PIC)
{
Name (_HID, EisaId ("PNP0000"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0020, // Range Minimum
0x0020, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00A0, // Range Minimum
0x00A0, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IRQ (Edge, ActiveHigh, Exclusive, )
{2}
})
}
Device (RTC)
{
Name (_HID, EisaId ("PNP0B00"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0070, // Range Minimum
0x0070, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IRQ (Edge, ActiveHigh, Exclusive, )
{8}
})
}
Device (SPKR)
{
Name (_HID, EisaId ("PNP0800"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0061, // Range Minimum
0x0061, // Range Maximum
0x01, // Alignment
0x01, // Length
)
})
}
Device (TIME)
{
Name (_HID, EisaId ("PNP0100"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0040, // Range Minimum
0x0040, // Range Maximum
0x01, // Alignment
0x04, // Length
)
IRQ (Edge, ActiveHigh, Exclusive, )
{0}
})
}
Device (KBC0)
{
Name (_HID, EisaId ("PNP0303"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0060, // Range Minimum
0x0060, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0064, // Range Minimum
0x0064, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IRQ (Edge, ActiveHigh, Exclusive, )
{1}
})
Method (_PSW, 1, NotSerialized)
{
}
}
Device (MSE0)
{
Name (_HID, EisaId ("SYN1010"))
Name (_CID, Package (0x03)
{
0x00102E4F,
0x02002E4F,
0x130FD041
})
Name (_CRS, ResourceTemplate ()
{
IRQ (Edge, ActiveHigh, Exclusive, )
{12}
})
Method (_PSW, 1, NotSerialized)
{
}
}
Device (SYSR)
{
Name (_HID, EisaId ("PNP0C02"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x002E, // Range Minimum
0x002E, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0068, // Range Minimum
0x0068, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IO (Decode16,
0x0072, // Range Minimum
0x0072, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x1080, // Range Minimum
0x1080, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x00B0, // Range Minimum
0x00B0, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0092, // Range Minimum
0x0092, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0200, // Range Minimum
0x0200, // Range Maximum
0x01, // Alignment
0x10, // Length
)
IO (Decode16,
0x040B, // Range Minimum
0x040B, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x04D0, // Range Minimum
0x04D0, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x04D6, // Range Minimum
0x04D6, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0530, // Range Minimum
0x0530, // Range Maximum
0x08, // Alignment
0x08, // Length
)
IO (Decode16,
0x0C00, // Range Minimum
0x0C00, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0C14, // Range Minimum
0x0C14, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0C50, // Range Minimum
0x0C50, // Range Maximum
0x01, // Alignment
0x03, // Length
)
IO (Decode16,
0x0C6C, // Range Minimum
0x0C6C, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0C6F, // Range Minimum
0x0C6F, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0CD4, // Range Minimum
0x0CD4, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0CD6, // Range Minimum
0x0CD6, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0CD8, // Range Minimum
0x0CD8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IO (Decode16,
0x8000, // Range Minimum
0x8000, // Range Maximum
0x01, // Alignment
0x60, // Length
)
WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
0x0000, // Granularity
0x8100, // Range Minimum
0x81FF, // Range Maximum
0x0000, // Translation Offset
0x0100, // Length
,, , TypeStatic)
IO (Decode16,
0x0F40, // Range Minimum
0x0F40, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IO (Decode16,
0x0280, // Range Minimum
0x0280, // Range Maximum
0x01, // Alignment
0x14, // Length
)
IO (Decode16,
0x087F, // Range Minimum
0x087F, // Range Maximum
0x01, // Alignment
0x01, // Length
)
})
}
Device (MEM)
{
Name (_HID, EisaId ("PNP0C01"))
Name (MSRC, ResourceTemplate ()
{
Memory32Fixed (ReadOnly,
0x000E0000, // Address Base
0x00020000, // Address Length
)
Memory32Fixed (ReadOnly,
0xFFF80000, // Address Base
0x00080000, // Address Length
)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00000000, // Address Length
_Y09)
})
Method (_CRS, 0, NotSerialized)
{
If (LGreaterEqual (TPOS, 0x04))
{
CreateDWordField (MSRC, \_SB.PCI0.LPC0.MEM._Y09._BAS, BARX)
CreateDWordField (MSRC, \_SB.PCI0.LPC0.MEM._Y09._LEN, GALN)
Store (0x1000, GALN)
Store (\_SB.PCI0.Z00A, Local0)
And (Local0, 0xFFFFFFF0, BARX)
}
Return (MSRC)
}
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
}
OperationRegion (SMI0, SystemIO, 0x00000F40, 0x00000002)
Field (SMI0, AnyAcc, NoLock, Preserve)
{
SMIC, 8
}
OperationRegion (SMI1, SystemMemory, 0x2BEB6E2D, 0x00000120)
Field (SMI1, AnyAcc, NoLock, Preserve)
{
BCMD, 8,
DID, 32,
INFO, 1024
}
Field (SMI1, AnyAcc, NoLock, Preserve)
{
AccessAs (ByteAcc, 0x00),
Offset (0x05),
INF, 8,
Offset (0x110),
BTEN, 1,
WLAN, 1,
DOCK, 1,
ENSR, 2
}
Mutex (PSMX, 0x00)
Method (PHSR, 2, NotSerialized)
{
Acquire (\_SB.PCI0.LPC0.PSMX, 0xFFFF)
Store (0x90, BCMD)
Store (Arg0, DID)
Store (Arg1, INF)
Store (Zero, SMIC)
Store (INF, Local0)
Release (\_SB.PCI0.LPC0.PSMX)
Return (Local0)
}
Device (EC0)
{
Name (_HID, EisaId ("PNP0C09"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0062, // Range Minimum
0x0062, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0066, // Range Minimum
0x0066, // Range Maximum
0x01, // Alignment
0x01, // Length
)
})
Name (_GPE, 0x10)
Name (SEL0, 0xF0)
Name (BFLG, 0x00)
Method (_REG, 2, NotSerialized)
{
If (LEqual (Arg0, 0x03))
{
Store (Arg1, Local0)
If (Local0)
{
Store (0x01, ECOK)
Store (\TMOD, \_SB.PCI0.LPC0.EC0.TMOD)
}
Else
{
Store (0x00, ECOK)
}
}
If (\_SB.ECOK)
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
If (LOr (LEqual (\_SB.OSTB, 0x40), LEqual (\_SB.OSTB, 0x20)))
{
Store (One, WTSS)
Store (\_SB.OSTB, Local0)
}
Else
{
Store (Zero, WTSS)
Store (\_SB.OSTB, Local0)
}
Store (0x03, \_SB.PCI0.LPC0.EC0.RG59)
Store (\_SB.PCI0.LPC0.WLAN, \_SB.PCI0.LPC0.EC0.WLAN)
Store (0x01, \_SB.PCI0.LPC0.EC0.CPLE)
Store (\_SB.PCI0.LPC0.PHSR (0x05, 0x00), DOFF)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
}
}
OperationRegion (ERAM, EmbeddedControl, 0x00, 0xFF)
Field (ERAM, ByteAcc, NoLock, Preserve)
{
Offset (0x04),
CMCM, 8,
CMD1, 8,
CMD2, 8,
CMD3, 8,
Offset (0x18),
SMPR, 8,
SMST, 8,
SMAD, 8,
SMCM, 8,
SMD0, 256,
BCNT, 8,
SMAA, 8,
BATD, 16,
ACDF, 1,
Offset (0x41),
, 4,
FPR1, 1,
FLS4, 1,
S5LW, 1,
PFLG, 1,
Offset (0x43),
TMSS, 2,
, 2,
BANK, 4,
Offset (0x45),
VFAN, 1,
Offset (0x46),
RL01, 1,
RD01, 1,
RF01, 1,
RP01, 1,
RB01, 1,
RC01, 1,
, 1,
R701, 1,
R801, 1,
RM01, 1,
RI01, 1,
, 1,
, 1,
, 1,
RA01, 1,
RR01, 1,
RL10, 1,
RD10, 1,
RF10, 1,
RP10, 1,
RB10, 1,
RC10, 1,
, 1,
R710, 1,
R810, 1,
RM10, 1,
RI10, 1,
, 1,
, 1,
, 1,
RA10, 1,
RR10, 1,
LIDE, 1,
BAYE, 1,
PRDE, 1,
WP01, 1,
WB01, 1,
WC01, 1,
, 1,
W701, 1,
W801, 1,
WM01, 1,
WI01, 1,
, 1,
, 1,
, 1,
WA01, 1,
WR01, 1,
LIDS, 1,
BAYI, 1,
PRCT, 1,
WP10, 1,
WB10, 1,
WC10, 1,
, 1,
W710, 1,
W810, 1,
WM10, 1,
WI10, 1,
, 1,
, 1,
, 1,
WA10, 1,
WR10, 1,
Offset (0x51),
BLVL, 8,
Offset (0x53),
DOFF, 8,
Offset (0x57),
RG57, 8,
CTMP, 8,
RG59, 8,
RG5A, 8,
RG5B, 8,
FSPD, 16,
Offset (0x5F),
WLAN, 1,
BLTH, 1,
CPLE, 1,
KSWH, 1,
Offset (0x60),
, 6,
RFST, 1,
BTHE, 1,
BRLV, 8,
Offset (0x65),
, 1,
TMOD, 1,
Offset (0x71),
MBTS, 1,
MBTF, 1,
Offset (0x72),
MBTC, 1,
, 2,
LION, 1,
Offset (0x77),
BA1C, 8,
Offset (0x7E),
NEVT, 16,
Offset (0x81),
ABTS, 1,
ABFC, 1,
, 3,
ABBL, 1,
Z00C, 1,
ABCT, 1,
ABCG, 1,
, 2,
ABTP, 1,
Offset (0x87),
BA2C, 8,
Offset (0x8A),
ACUR, 16,
Offset (0x9D),
WTSS, 1,
Offset (0xAC),
FEVT, 16,
VEVT, 16,
Offset (0xB5),
FNSK, 8,
Offset (0xC1),
MCUR, 16,
MBRM, 16,
MBVG, 16,
BTST, 8,
ABCR, 16,
ABRM, 16,
ABVG, 16,
Offset (0xD0),
EBPL, 1,
Offset (0xD1),
PWRE, 1,
Offset (0xD2),
, 6,
VAUX, 1,
Offset (0xD3),
TPAD, 1,
Offset (0xD6),
DBPL, 8,
Offset (0xD8),
LFCC, 16,
BTSN, 16,
BTDC, 16,
BTDV, 16,
BTMN, 8,
BTMD, 8,
AFCC, 16,
ABSN, 16,
ABDC, 16,
ABDV, 16,
ABMN, 8,
ABMD, 8,
TRDV, 3
}
Field (ERAM, ByteAcc, NoLock, Preserve)
{
Offset (0x1C),
SMW0, 16
}
Field (ERAM, ByteAcc, NoLock, Preserve)
{
Offset (0x1C),
SMB0, 8
}
Field (ERAM, ByteAcc, NoLock, Preserve)
{
Offset (0x1C),
FLD0, 64
}
Field (ERAM, ByteAcc, NoLock, Preserve)
{
Offset (0x1C),
FLD1, 128
}
Field (ERAM, ByteAcc, NoLock, Preserve)
{
Offset (0x1C),
FLD2, 192
}
Field (ERAM, ByteAcc, NoLock, Preserve)
{
Offset (0x1C),
FLD3, 256
}
Mutex (MUT1, 0x00)
Mutex (MUT0, 0x00)
Method (SMRD, 4, NotSerialized)
{
If (LEqual (\_SB.ECOK, 0x00))
{
Return (0xFF)
}
If (LNotEqual (Arg0, 0x07))
{
If (LNotEqual (Arg0, 0x09))
{
If (LNotEqual (Arg0, 0x0B))
{
Return (0x19)
}
}
}
Acquire (MUT0, 0xFFFF)
Store (0x04, Local0)
While (LGreater (Local0, 0x01))
{
And (SMST, 0x40, SMST)
Store (Arg2, SMCM)
Store (Arg1, SMAD)
Store (Arg0, SMPR)
Store (0x00, Local3)
While (LNot (And (SMST, 0xBF, Local1)))
{
Sleep (0x02)
Increment (Local3)
If (LEqual (Local3, 0x32))
{
And (SMST, 0x40, SMST)
Store (Arg2, SMCM)
Store (Arg1, SMAD)
Store (Arg0, SMPR)
Store (0x00, Local3)
}
}
If (LEqual (Local1, 0x80))
{
Store (0x00, Local0)
}
Else
{
Decrement (Local0)
}
}
If (Local0)
{
Store (And (Local1, 0x1F), Local0)
}
Else
{
If (LEqual (Arg0, 0x07))
{
Store (SMB0, Arg3)
}
If (LEqual (Arg0, 0x09))
{
Store (SMW0, Arg3)
}
If (LEqual (Arg0, 0x0B))
{
Store (BCNT, Local3)
ShiftRight (0x0100, 0x03, Local2)
If (LGreater (Local3, Local2))
{
Store (Local2, Local3)
}
If (LLess (Local3, 0x09))
{
Store (FLD0, Local2)
}
Else
{
If (LLess (Local3, 0x11))
{
Store (FLD1, Local2)
}
Else
{
If (LLess (Local3, 0x19))
{
Store (FLD2, Local2)
}
Else
{
Store (FLD3, Local2)
}
}
}
Increment (Local3)
Store (Buffer (Local3) {}, Local4)
Decrement (Local3)
Store (Zero, Local5)
While (LGreater (Local3, Local5))
{
GBFE (Local2, Local5, RefOf (Local6))
PBFE (Local4, Local5, Local6)
Increment (Local5)
}
PBFE (Local4, Local5, 0x00)
Store (Local4, Arg3)
}
}
Release (MUT0)
Return (Local0)
}
Method (SMWR, 4, NotSerialized)
{
If (LEqual (\_SB.ECOK, 0x00))
{
Return (0xFF)
}
If (LNotEqual (Arg0, 0x06))
{
If (LNotEqual (Arg0, 0x08))
{
If (LNotEqual (Arg0, 0x0A))
{
Return (0x19)
}
}
}
Acquire (MUT0, 0xFFFF)
Store (0x04, Local0)
While (LGreater (Local0, 0x01))
{
If (LEqual (Arg0, 0x06))
{
Store (Arg3, SMB0)
}
If (LEqual (Arg0, 0x08))
{
Store (Arg3, SMW0)
}
If (LEqual (Arg0, 0x0A))
{
Store (Arg3, SMD0)
}
And (SMST, 0x40, SMST)
Store (Arg2, SMCM)
Store (Arg1, SMAD)
Store (Arg0, SMPR)
Store (0x00, Local3)
While (LNot (And (SMST, 0xBF, Local1)))
{
Sleep (0x02)
Increment (Local3)
If (LEqual (Local3, 0x32))
{
And (SMST, 0x40, SMST)
Store (Arg2, SMCM)
Store (Arg1, SMAD)
Store (Arg0, SMPR)
Store (0x00, Local3)
}
}
If (LEqual (Local1, 0x80))
{
Store (0x00, Local0)
}
Else
{
Decrement (Local0)
}
}
If (Local0)
{
Store (And (Local1, 0x1F), Local0)
}
Release (MUT0)
Return (Local0)
}
Method (APOL, 1, NotSerialized)
{
Store (Arg0, DBPL)
Store (0x01, EBPL)
}
Name (PSTA, 0x00)
Method (CPOL, 1, NotSerialized)
{
If (LEqual (PSTA, 0x00))
{
If (LNotEqual (\_SB.ECOK, 0x00))
{
APOL (Arg0)
Store (0x01, PSTA)
}
}
}
Method (_Q20, 0, NotSerialized)
{
If (\_SB.ECOK)
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
If (And (SMST, 0x40))
{
Store (SMAA, Local0)
If (LEqual (Local0, 0x14))
{
And (SMST, 0xBF, SMST)
Store (PWRE, Local1)
If (Local1)
{
Store (0x00, PWRE)
Store (0x12, BFLG)
CPOL (0x01)
Store (0x01, IQ20)
}
}
If (LEqual (Local0, 0x16))
{
And (SMST, 0xBF, SMST)
Store (0x04, \_SB.BAT1.BCRI)
Notify (\_SB.BAT1, 0x80)
}
Else
{
Store (0x00, \_SB.BAT1.BCRI)
}
}
Release (\_SB.PCI0.LPC0.EC0.MUT1)
}
}
Name (IQ20, 0x01)
Name (INNC, 0x00)
Method (_Q09, 0, NotSerialized)
{
If (\_SB.ECOK)
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (0x00, \_SB.PCI0.LPC0.EC0.PSTA)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
If (IQ20)
{
\_SB.BAT1.Z009 ()
Notify (\_SB.ACAD, 0x80)
Sleep (0x01F4)
Notify (\_SB.BAT1, 0x80)
If (\_SB.BAT1.BTCH)
{
\_SB.BAT1.UBIF ()
Notify (\_SB.BAT1, 0x81)
Store (0x00, \_SB.BAT1.BTCH)
}
Store (0x00, IQ20)
}
}
}
Method (_Q8A, 0, NotSerialized)
{
Notify (\_SB.LID, 0x80)
}
Method (_Q8D, 0, NotSerialized)
{
Store (0x04, TDTY)
Store (0x01, THTE)
}
Method (_Q8E, 0, NotSerialized)
{
Store (0x00, THTE)
}
Method (_Q90, 0, NotSerialized)
{
Store (0x90, DBGP)
\_SB.VALZ.EVNT (0x02)
}
Method (_Q91, 0, NotSerialized)
{
Store (0x91, DBGP)
\_SB.VALZ.EVNT (0x03)
Sleep (0x05)
\_SB.VALZ.EVNT (0x04)
}
Method (_Q92, 0, NotSerialized)
{
Store (0x92, DBGP)
\_SB.VALZ.EVNT (0x02)
Sleep (0x05)
\_SB.VALZ.EVNT (0x03)
Sleep (0x05)
\_SB.VALZ.EVNT (0x04)
}
Method (_Q0E, 0, NotSerialized)
{
Store (0x0E, DBGP)
\_SB.PCI0.AGP.VGA.SWIH ()
}
Method (_Q0F, 0, NotSerialized)
{
Store (0x0F, DBGP)
Store (\_SB.PCI0.LPC0.EC0.BLVL, Local0)
If (Local0)
{
Decrement (Local0)
}
Else
{
Store (Zero, Local0)
}
Store (Local0, \_SB.PCI0.LPC0.EC0.BLVL)
Notify (\_SB.PCI0.AGP.VGA.LCD, 0x87)
}
Method (_Q10, 0, NotSerialized)
{
Store (0x10, DBGP)
Store (\_SB.PCI0.LPC0.EC0.BLVL, Local0)
If (LLess (Local0, 0x07))
{
Increment (Local0)
}
Else
{
Store (0x07, Local0)
}
Store (Local0, \_SB.PCI0.LPC0.EC0.BLVL)
Notify (\_SB.PCI0.AGP.VGA.LCD, 0x86)
}
}
}
Device (P2P)
{
Name (_ADR, 0x00140004)
Name (_PRW, Package (0x02)
{
0x04,
0x05
})
Device (CBUS)
{
Name (_ADR, 0x00010000)
}
Device (LANC)
{
Name (_ADR, 0x00020000)
Name (_PRW, Package (0x02)
{
0x03,
0x05
})
}
Device (MPCI)
{
Name (_ADR, 0x00040000)
}
Method (_PRT, 0, NotSerialized)
{
If (GPIC)
{
Return (Package (0x04)
{
Package (0x04)
{
0x0001FFFF,
0x00,
0x00,
0x14
},
Package (0x04)
{
0x0002FFFF,
0x00,
0x00,
0x15
},
Package (0x04)
{
0x0004FFFF,
0x00,
0x00,
0x16
},
Package (0x04)
{
0x0004FFFF,
0x01,
0x00,
0x17
}
})
}
Else
{
Return (Package (0x17)
{
Package (0x04)
{
0x0008FFFF,
0x00,
\_SB.PCI0.LPC0.LNKA,
0x00
},
Package (0x04)
{
0x0008FFFF,
0x01,
\_SB.PCI0.LPC0.LNKB,
0x00
},
Package (0x04)
{
0x0009FFFF,
0x00,
\_SB.PCI0.LPC0.LNKC,
0x00
},
Package (0x04)
{
0x000AFFFF,
0x00,
\_SB.PCI0.LPC0.LNKA,
0x00
},
Package (0x04)
{
0x000AFFFF,
0x01,
\_SB.PCI0.LPC0.LNKB,
0x00
},
Package (0x04)
{
0x000AFFFF,
0x02,
\_SB.PCI0.LPC0.LNKC,
0x00
},
Package (0x04)
{
0x000AFFFF,
0x03,
\_SB.PCI0.LPC0.LNKD,
0x00
},
Package (0x04)
{
0x000BFFFF,
0x00,
\_SB.PCI0.LPC0.LNKB,
0x00
},
Package (0x04)
{
0x000BFFFF,
0x01,
\_SB.PCI0.LPC0.LNKC,
0x00
},
Package (0x04)
{
0x000BFFFF,
0x02,
\_SB.PCI0.LPC0.LNKD,
0x00
},
Package (0x04)
{
0x000BFFFF,
0x03,
\_SB.PCI0.LPC0.LNKA,
0x00
},
Package (0x04)
{
0x000CFFFF,
0x00,
\_SB.PCI0.LPC0.LNKC,
0x00
},
Package (0x04)
{
0x000CFFFF,
0x01,
\_SB.PCI0.LPC0.LNKD,
0x00
},
Package (0x04)
{
0x000CFFFF,
0x02,
\_SB.PCI0.LPC0.LNKA,
0x00
},
Package (0x04)
{
0x000CFFFF,
0x03,
\_SB.PCI0.LPC0.LNKB,
0x00
},
Package (0x04)
{
0x000DFFFF,
0x00,
\_SB.PCI0.LPC0.LNKD,
0x00
},
Package (0x04)
{
0x000DFFFF,
0x01,
\_SB.PCI0.LPC0.LNKA,
0x00
},
Package (0x04)
{
0x000DFFFF,
0x02,
\_SB.PCI0.LPC0.LNKB,
0x00
},
Package (0x04)
{
0x000DFFFF,
0x03,
\_SB.PCI0.LPC0.LNKC,
0x00
},
Package (0x04)
{
0x000EFFFF,
0x00,
\_SB.PCI0.LPC0.LNKA,
0x00
},
Package (0x04)
{
0x000EFFFF,
0x01,
\_SB.PCI0.LPC0.LNKB,
0x00
},
Package (0x04)
{
0x000EFFFF,
0x02,
\_SB.PCI0.LPC0.LNKC,
0x00
},
Package (0x04)
{
0x000EFFFF,
0x03,
\_SB.PCI0.LPC0.LNKD,
0x00
}
})
}
}
}
Device (AUDO)
{
Name (_ADR, 0x00140005)
Name (_PRW, Package (0x02)
{
0x0C,
0x03
})
}
Device (MODM)
{
Name (_ADR, 0x00140006)
Name (_PRW, Package (0x02)
{
0x0C,
0x03
})
}
Device (AGP)
{
Name (_ADR, 0x00010000)
Method (_PRT, 0, NotSerialized)
{
If (GPIC)
{
Return (Package (0x04)
{
Package (0x04)
{
0x0005FFFF,
0x00,
0x00,
0x11
},
Package (0x04)
{
0x0005FFFF,
0x01,
0x00,
0x12
},
Package (0x04)
{
0x0005FFFF,
0x02,
0x00,
0x13
},
Package (0x04)
{
0x0005FFFF,
0x03,
0x00,
0x10
}
})
}
Else
{
Return (Package (0x04)
{
Package (0x04)
{
0x0005FFFF,
0x00,
\_SB.PCI0.LPC0.LNKB,
0x00
},
Package (0x04)
{
0x0005FFFF,
0x01,
\_SB.PCI0.LPC0.LNKC,
0x00
},
Package (0x04)
{
0x0005FFFF,
0x02,
\_SB.PCI0.LPC0.LNKD,
0x00
},
Package (0x04)
{
0x0005FFFF,
0x03,
\_SB.PCI0.LPC0.LNKA,
0x00
}
})
}
}
Device (VGA)
{
Name (_ADR, 0x00050000)
Name (SWIT, 0x01)
Name (CRTA, 0x01)
Name (LCDA, 0x01)
Name (TOGF, 0x01)
Method (_DOS, 1, NotSerialized)
{
Store (And (Arg0, 0x03), SWIT)
}
Method (_DOD, 0, NotSerialized)
{
Return (Package (0x03)
{
0x00010100,
0x00010110,
0x0200
})
}
Device (CRT)
{
Name (_ADR, 0x0100)
Method (_DCS, 0, NotSerialized)
{
If (CRTA)
{
Return (0x1F)
}
Else
{
Return (0x1D)
}
}
Method (_DGS, 0, NotSerialized)
{
If (CRTA)
{
Return (0x01)
}
Else
{
Return (0x00)
}
}
}
Device (LCD)
{
Name (_ADR, 0x0110)
Method (_DCS, 0, NotSerialized)
{
If (LCDA)
{
Return (0x1F)
}
Else
{
Return (0x1D)
}
}
Method (_DGS, 0, NotSerialized)
{
Store (LCDA, Local0)
If (LCDA)
{
Return (0x01)
}
Else
{
Return (0x00)
}
}
Method (_BCL, 0, NotSerialized)
{
Return (Package (0x0A)
{
0x64,
0x2A,
0x00,
0x0E,
0x1C,
0x2A,
0x38,
0x46,
0x54,
0x64
})
}
Method (_BCM, 1, NotSerialized)
{
While (One)
{
Name (_T_0, 0x00)
Store (Arg0, _T_0)
If (LEqual (_T_0, 0x00))
{
Store (0x00, Local1)
}
Else
{
If (LEqual (_T_0, 0x0E))
{
Store (0x01, Local1)
}
Else
{
If (LEqual (_T_0, 0x1C))
{
Store (0x02, Local1)
}
Else
{
If (LEqual (_T_0, 0x2A))
{
Store (0x03, Local1)
}
Else
{
If (LEqual (_T_0, 0x38))
{
Store (0x04, Local1)
}
Else
{
If (LEqual (_T_0, 0x46))
{
Store (0x05, Local1)
}
Else
{
If (LEqual (_T_0, 0x54))
{
Store (0x06, Local1)
}
Else
{
If (LEqual (_T_0, 0x64))
{
Store (0x07, Local1)
}
}
}
}
}
}
}
}
Break
}
If (LOr (LEqual (\_SB.OSTB, 0x40), LEqual (\_SB.OSTB, 0x20)))
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (Local1, \_SB.PCI0.LPC0.EC0.BLVL)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
}
}
Method (_BQC, 0, NotSerialized)
{
If (LOr (LEqual (\_SB.OSTB, 0x40), LEqual (\_SB.OSTB, 0x20)))
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.BLVL, Local0)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
}
While (One)
{
Name (_T_0, 0x00)
Store (Local0, _T_0)
If (LEqual (_T_0, 0x00))
{
Store (0x00, Local1)
}
Else
{
If (LEqual (_T_0, 0x01))
{
Store (0x0E, Local1)
}
Else
{
If (LEqual (_T_0, 0x02))
{
Store (0x1C, Local1)
}
Else
{
If (LEqual (_T_0, 0x03))
{
Store (0x2A, Local1)
}
Else
{
If (LEqual (_T_0, 0x04))
{
Store (0x38, Local1)
}
Else
{
If (LEqual (_T_0, 0x05))
{
Store (0x46, Local1)
}
Else
{
If (LEqual (_T_0, 0x06))
{
Store (0x54, Local1)
}
Else
{
If (LEqual (_T_0, 0x07))
{
Store (0x64, Local1)
}
}
}
}
}
}
}
}
Break
}
Return (Local1)
}
}
Method (SWIH, 0, NotSerialized)
{
Store (0x03, Local0)
If (LEqual (Local0, 0x03))
{
Increment (TOGF)
Store (TOGF, Local1)
If (LEqual (Local1, 0x01))
{
Store (One, LCDA)
Store (Zero, CRTA)
}
Else
{
If (LEqual (Local1, 0x02))
{
Store (Zero, LCDA)
Store (One, CRTA)
}
Else
{
If (LEqual (Local1, 0x03))
{
Store (One, LCDA)
Store (One, CRTA)
}
Else
{
Store (One, TOGF)
Store (One, LCDA)
Store (Zero, CRTA)
}
}
}
}
Notify (\_SB.PCI0.AGP.VGA, 0x80)
}
}
}
}
Device (ACAD)
{
Name (_HID, "ACPI0003")
Name (_PCL, Package (0x01)
{
\_SB
})
Name (ACST, 0x00)
Method (_PSR, 0, NotSerialized)
{
If (\_SB.ECOK)
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.ACDF, ACST)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
}
Else
{
Store (0x01, ACST)
}
If (ACST)
{
Store (0x01, Local0)
Store (0x00, \_SB.BAT1.BCRI)
}
Else
{
Store (0x00, Local0)
}
Return (Local0)
}
}
Device (BAT1)
{
Name (_HID, EisaId ("PNP0C0A"))
Name (_UID, 0x01)
Name (CBTI, 0x00)
Name (PBTI, 0x00)
Name (BTIN, 0x00)
Name (BTCH, 0x00)
Name (BIFI, 0x00)
Name (SEL0, 0x00)
Name (BCRI, 0x00)
Name (PBIF, Package (0x0D)
{
0x01,
0x1130,
0x1130,
0x01,
0x2B5C,
0x012C,
0x84,
0x20,
0x20,
"PA34200-1BRS",
"11 ",
"11 ",
"TOSHIBA "
})
Name (PBST, Package (0x04)
{
0x00,
Z00D,
Z00D,
0x2710
})
Name (ERRC, 0x00)
Name (_PCL, Package (0x01)
{
\_SB
})
Method (_STA, 0, NotSerialized)
{
If (BTIN)
{
Return (0x1F)
}
Else
{
Return (0x0F)
}
}
Method (_BIF, 0, NotSerialized)
{
If (LEqual (BIFI, 0x00))
{
\_SB.BAT1.UBIF ()
Store (0x01, BIFI)
}
Return (PBIF)
}
Name (LFCC, 0x1130)
Method (UBIF, 0, NotSerialized)
{
If (\_SB.ECOK)
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.BTDC, Local0)
Store (\_SB.PCI0.LPC0.EC0.LFCC, Local1)
Store (\_SB.PCI0.LPC0.EC0.BTDV, Local2)
Store (\_SB.PCI0.LPC0.EC0.BTMD, Local3)
Store (\_SB.PCI0.LPC0.EC0.BTMN, Local4)
Store (\_SB.PCI0.LPC0.EC0.BTSN, Local5)
Store (\_SB.PCI0.LPC0.EC0.LION, Local6)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Store (Local0, Index (PBIF, 0x01))
Store (Local1, Index (PBIF, 0x02))
Store (Local2, Index (PBIF, 0x04))
Store (Local1, LFCC)
If (Local6)
{
Store ("NiMH", Index (PBIF, 0x0B))
}
Else
{
Store ("LION", Index (PBIF, 0x0B))
}
And (Local3, 0x0F, Local3)
If (LLessEqual (Local3, 0x04))
{
If (LEqual (Local3, 0x01))
{
Store ("PA3506U-1BAS", Index (PBIF, 0x09))
}
Else
{
If (LEqual (Local3, 0x02))
{
Store ("PA3450U-1BAS", Index (PBIF, 0x09))
}
Else
{
If (LEqual (Local3, 0x03))
{
Store ("PA3482U-1BAS", Index (PBIF, 0x09))
}
Else
{
If (LEqual (Local3, 0x04))
{
Store ("PA3420U-1BAS", Index (PBIF, 0x09))
}
}
}
}
}
Else
{
If (LEqual (Local3, 0x05))
{
Store ("PA3506U-1BRS", Index (PBIF, 0x09))
}
Else
{
If (LEqual (Local3, 0x06))
{
Store ("PA3450U-1BRS", Index (PBIF, 0x09))
}
Else
{
If (LEqual (Local3, 0x07))
{
Store ("PA3482U-1BRS", Index (PBIF, 0x09))
}
Else
{
If (LEqual (Local3, 0x08))
{
Store ("PA3420U-1BRS", Index (PBIF, 0x09))
}
}
}
}
}
Store (ITOS (ToBCD (Local5)), Index (PBIF, 0x0A))
}
}
Name (RCAP, 0x00)
Method (_BST, 0, NotSerialized)
{
If (LEqual (BTIN, 0x00))
{
Store (0x00, Index (PBST, 0x00))
Store (0xFFFFFFFF, Index (PBST, 0x01))
Store (0xFFFFFFFF, Index (PBST, 0x02))
Store (0xFFFFFFFF, Index (PBST, 0x03))
Return (PBST)
}
If (\_SB.ECOK)
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.MBTC, Local0)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Sleep (0x32)
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.MBRM, Local1)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Sleep (0x32)
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.MBVG, Local2)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Sleep (0x32)
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.MCUR, Local3)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Sleep (0x32)
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.BTST, Local4)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Sleep (0x32)
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.MBTF, Local5)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Sleep (0x32)
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.ACDF, Local6)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Sleep (0x32)
If (Local6)
{
If (LEqual (Local5, 0x01))
{
Store (0x00, Local7)
Store (LFCC, Local1)
}
Else
{
Store (0x02, Local7)
}
}
Else
{
If (LAnd (Local4, 0x01))
{
Store (0x01, Local7)
}
Else
{
Store (0x00, Local7)
}
}
And (Local4, 0x04, Local4)
If (LEqual (Local4, 0x04))
{
Or (Local7, Local4, Local7)
}
Store (Local7, Index (PBST, 0x00))
If (LNot (And (Local1, 0x8000)))
{
Store (Local1, Index (PBST, 0x02))
}
If (LNot (And (Local2, 0x8000)))
{
Store (Local2, Index (PBST, 0x03))
}
If (LAnd (Local3, 0x8000))
{
If (LNotEqual (Local3, 0xFFFF))
{
Not (Local3, Local3)
Increment (Local3)
And (Local3, 0xFFFF, Local3)
}
}
Store (Local3, Index (PBST, 0x01))
}
Return (PBST)
}
Method (Z009, 0, NotSerialized)
{
If (\_SB.ECOK)
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.MBTS, Local0)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
If (LEqual (Local0, 0x01))
{
If (LEqual (\_SB.BAT1.BTIN, 0x00))
{
Store (0x01, \_SB.BAT1.BTCH)
Store (0x00, \_SB.BAT1.BIFI)
}
Store (0x01, \_SB.BAT1.BTIN)
}
Else
{
If (LEqual (\_SB.BAT1.BTIN, 0x01))
{
Store (0x01, \_SB.BAT1.BTCH)
Store (0x00, \_SB.BAT1.BIFI)
}
Store (0x00, \_SB.BAT1.BTIN)
}
}
}
}
Device (LID)
{
Name (_HID, EisaId ("PNP0C0D"))
Method (_LID, 0, NotSerialized)
{
If (\_SB.ECOK)
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.LIDS, Local0)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
If (LEqual (Local0, 0x01))
{
Return (0x00)
}
Else
{
Return (0x01)
}
}
Else
{
Return (0x01)
}
}
}
Device (PWRB)
{
Name (_HID, EisaId ("PNP0C0C"))
}
Device (VALZ)
{
Name (_HID, EisaId ("TOS1900"))
Method (_STA, 0, NotSerialized)
{
If (LOr (LEqual (\_SB.OSTB, 0x40), LEqual (\_SB.OSTB, 0x20)))
{
Return (0x0B)
}
Else
{
Return (Zero)
}
}
Name (_DDN, "VALZeneral")
Name (VZOK, 0x00)
Name (VBFG, 0x0A)
Name (PNLT, 0x0900)
Method (ENAB, 0, NotSerialized)
{
Store (0x01, VZOK)
}
Method (EVNT, 1, NotSerialized)
{
While (VZOK)
{
If (LEqual (VZOK, 0x01))
{
Store (Arg0, VZOK)
Notify (\_SB.VALZ, 0x80)
Return (Zero)
}
Else
{
Sleep (0x05)
}
}
}
Method (INFO, 0, Serialized)
{
If (LEqual (VZOK, 0x02))
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.VEVT, Local0)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Store (0x01, VZOK)
Return (Local0)
}
Else
{
If (LEqual (VZOK, 0x03))
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.FEVT, Local0)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Store (0x01, VZOK)
Return (Local0)
}
Else
{
If (LEqual (VZOK, 0x04))
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.NEVT, Local0)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Store (0x01, VZOK)
Return (Local0)
}
Else
{
Return (Zero)
}
}
}
}
Name (VALI, Package (0x06)
{
0xFFFF,
0xFFFF,
0xFFFF,
0xFFFF,
0xFFFF,
0xFFFF
})
Name (VALO, Package (0x06)
{
0x00,
0x00,
0x00,
0x00,
0x00,
0x00
})
Name (GWFS, Package (0x06)
{
0xFE00,
0x56,
0x00,
0x01,
0x00,
0x00
})
Name (SWRN, Package (0x06)
{
0xFF00,
0x56,
0x01,
0x0200,
0x00,
0x00
})
Name (SWRF, Package (0x06)
{
0xFF00,
0x56,
0x00,
0x0200,
0x00,
0x00
})
Name (GTPS, Package (0x06)
{
0xF300,
0x050E,
0x00,
0x00,
0x00,
0x00
})
Name (STPD, Package (0x06)
{
0xF400,
0x050E,
0x00,
0x00,
0x00,
0x00
})
Name (STPE, Package (0x06)
{
0xF400,
0x050E,
0x01,
0x00,
0x00,
0x00
})
Name (FNDS, Package (0x06)
{
0xFF00,
0x5A,
0x00,
0x01,
0x00,
0x00
})
Name (FNTP, Package (0x06)
{
0xFF00,
0x5A,
0x01,
0x01,
0x00,
0x00
})
Name (FNTC, Package (0x06)
{
0xFF00,
0x5A,
0x02,
0x01,
0x00,
0x00
})
Name (GCCM, Package (0x06)
{
0xFE00,
0x7F,
0x00,
0x00,
0x00,
0x00
})
Name (SCMP, Package (0x06)
{
0xFF00,
0x7F,
0x00,
0x00,
0x00,
0x00
})
Name (SCMS, Package (0x06)
{
0xFF00,
0x7F,
0x01,
0x00,
0x00,
0x00
})
Name (CESS, Package (0x06)
{
0xFE00,
0x62,
0x00,
0x00,
0x00,
0x00
})
Name (GPNL, Package (0x06)
{
0xFE00,
0x11,
0x00,
0x00,
0x00,
0x00
})
Name (SHK0, Package (0x06)
{
0xFF00,
0xC000,
0x00,
0x00,
0x00,
0x00
})
Name (SHK1, Package (0x06)
{
0xFF00,
0xC000,
0x00,
0x01,
0x00,
0x00
})
Name (GHKM, Package (0x06)
{
0xFE00,
0xC000,
0x03,
0x00,
0x00,
0x00
})
Name (SBED, Package (0x06)
{
0xFF00,
0x1E,
0x01,
0x00,
0x00,
0x00
})
Name (SBEE, Package (0x06)
{
0xFF00,
0x1E,
0x03,
0x00,
0x00,
0x00
})
Name (SHEE, Package (0x06)
{
0xFF00,
0x1E,
0x09,
0x00,
0x00,
0x00
})
Name (SBHE, Package (0x06)
{
0xFF00,
0x1E,
0x0B,
0x00,
0x00,
0x00
})
Name (GBEM, Package (0x06)
{
0xFE00,
0x1E,
0x00,
0x00,
0x00,
0x00
})
Method (MTCH, 2, NotSerialized)
{
If (LNotEqual (DerefOf (Index (Arg0, 0x00)), DerefOf (Index (
Arg1, 0x00))))
{
Return (Zero)
}
If (LNotEqual (DerefOf (Index (Arg0, 0x01)), DerefOf (Index (
Arg1, 0x01))))
{
Return (Zero)
}
If (LNotEqual (DerefOf (Index (Arg0, 0x02)), DerefOf (Index (
Arg1, 0x02))))
{
Return (Zero)
}
If (LNotEqual (DerefOf (Index (Arg0, 0x03)), DerefOf (Index (
Arg1, 0x03))))
{
Return (Zero)
}
If (LNotEqual (DerefOf (Index (Arg0, 0x04)), DerefOf (Index (
Arg1, 0x04))))
{
Return (Zero)
}
If (LNotEqual (DerefOf (Index (Arg0, 0x05)), DerefOf (Index (
Arg1, 0x05))))
{
Return (Zero)
}
Return (One)
}
Method (SPFC, 6, NotSerialized)
{
Store (ToInteger (Arg0), Index (VALI, 0x00))
Store (ToInteger (Arg1), Index (VALI, 0x01))
Store (ToInteger (Arg2), Index (VALI, 0x02))
Store (ToInteger (Arg3), Index (VALI, 0x03))
Store (ToInteger (Arg4), Index (VALI, 0x04))
Store (ToInteger (Arg5), Index (VALI, 0x05))
Store (Zero, Index (VALO, 0x01))
Store (Zero, Index (VALO, 0x02))
Store (Zero, Index (VALO, 0x03))
Store (Zero, Index (VALO, 0x04))
Store (Zero, Index (VALO, 0x05))
While (One)
{
Name (_T_0, 0x00)
Store (ToInteger (Arg1), _T_0)
If (LEqual (_T_0, 0x56))
{
If (MTCH (VALI, GWFS))
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.KSWH, Local0)
XOr (Local0, 0x01, Local0)
Store (\_SB.PCI0.LPC0.EC0.RFST, Local1)
ShiftLeft (Local1, 0x09, Local1)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
If (Local0)
{
Or (Local0, Local1, Local0)
}
Store (Local0, Index (VALO, 0x02))
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, SWRN))
{
\_SB.PCI0.LPC0.PHSR (0x0C, 0x23)
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, SWRF))
{
\_SB.PCI0.LPC0.PHSR (0x0C, 0x24)
Store (Zero, Index (VALO, 0x00))
}
Else
{
Store (0x8000, Index (VALO, 0x00))
}
}
}
}
Else
{
If (LEqual (_T_0, 0x050E))
{
If (MTCH (VALI, GTPS))
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.TPAD, Local0)
XOr (Local0, 0x01, Local0)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Store (Local0, Index (VALO, 0x02))
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, STPE))
{
\_SB.PCI0.LPC0.PHSR (0x0C, 0x5A)
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, STPD))
{
\_SB.PCI0.LPC0.PHSR (0x0C, 0x5B)
Store (Zero, Index (VALO, 0x00))
}
Else
{
Store (0x8000, Index (VALO, 0x00))
}
}
}
}
Else
{
If (LEqual (_T_0, 0x5A))
{
If (MTCH (VALI, FNDS))
{
\_SB.PCI0.LPC0.PHSR (0x0E, 0x00)
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, FNTP))
{
\_SB.PCI0.LPC0.PHSR (0x0E, 0x01)
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, FNTC))
{
\_SB.PCI0.LPC0.PHSR (0x0E, 0x02)
Store (Zero, Index (VALO, 0x00))
}
Else
{
Store (0x8000, Index (VALO, 0x00))
}
}
}
}
Else
{
If (LEqual (_T_0, 0x7F))
{
If (MTCH (VALI, GCCM))
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.TMOD, Local0)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Store (Local0, Index (VALO, 0x02))
Store (0x01, Index (VALO, 0x03))
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, SCMP))
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (0x00, \_SB.PCI0.LPC0.EC0.TMOD)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
\_SB.PCI0.LPC0.PHSR (0x0B, 0x00)
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, SCMS))
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (0x01, \_SB.PCI0.LPC0.EC0.TMOD)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
\_SB.PCI0.LPC0.PHSR (0x0B, 0x01)
Store (Zero, Index (VALO, 0x00))
}
Else
{
Store (0x8000, Index (VALO, 0x00))
}
}
}
}
Else
{
If (LEqual (_T_0, 0x62))
{
If (MTCH (VALI, CESS))
{
If (LEqual (\_SB.PCI0.LPC0.ENSR, 0x02))
{
Store (0x21, Index (VALO, 0x03))
}
Else
{
Store (Zero, Index (VALO, 0x03))
}
Store (Zero, Index (VALO, 0x00))
}
Else
{
Store (0x8000, Index (VALO, 0x00))
}
}
Else
{
If (LEqual (_T_0, 0x11))
{
If (MTCH (VALI, GPNL))
{
Store (PNLT, Index (VALO, 0x02))
Store (Zero, Index (VALO, 0x00))
}
Else
{
Store (0x8000, Index (VALO, 0x00))
}
}
Else
{
If (LEqual (_T_0, 0xC000))
{
If (MTCH (VALI, SHK0))
{
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, SHK1))
{
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, GHKM))
{
Store (Zero, Index (VALO, 0x03))
Store (Zero, Index (VALO, 0x00))
}
Else
{
Store (0x8000, Index (VALO, 0x00))
}
}
}
}
Else
{
If (LEqual (_T_0, 0x1E))
{
If (MTCH (VALI, SBED))
{
Store (0x00, VBFG)
\_SB.PCI0.LPC0.PHSR (0x0A, 0xC0)
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, SBEE))
{
Store (0x02, VBFG)
\_SB.PCI0.LPC0.PHSR (0x0A, 0x40)
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, SHEE))
{
Store (0x08, VBFG)
\_SB.PCI0.LPC0.PHSR (0x0A, 0x80)
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, SBHE))
{
Store (0x0A, VBFG)
\_SB.PCI0.LPC0.PHSR (0x0A, 0x00)
Store (Zero, Index (VALO, 0x00))
}
Else
{
If (MTCH (VALI, GBEM))
{
Store (VBFG, Local0)
Store (Increment (Local0), Index (VALO, 0x02))
Store (Zero, Index (VALO, 0x00))
}
Else
{
Store (0x8000, Index (VALO, 0x00))
}
}
}
}
}
}
Else
{
Store (0x8000, Index (VALO, 0x00))
}
}
}
}
}
}
}
}
Break
}
Return (VALO)
}
}
Scope (\_TZ)
{
ThermalZone (THRM)
{
Method (_TMP, 0, NotSerialized)
{
If (\_SB.ECOK)
{
Acquire (\_SB.PCI0.LPC0.EC0.MUT1, 0xFFFF)
Store (\_SB.PCI0.LPC0.EC0.CTMP, Local0)
Release (\_SB.PCI0.LPC0.EC0.MUT1)
Return (Add (Multiply (Local0, 0x0A), 0x0AAC))
}
Else
{
Return (0x0C3C)
}
}
Method (_PSV, 0, NotSerialized)
{
Return (Add (Multiply (0x7D, 0x0A), 0x0AAC))
}
Name (_PSL, Package (0x01)
{
\_PR.CPU0
})
Name (_TSP, 0x28)
Name (_TC1, 0x02)
Name (_TC2, 0x03)
Method (_CRT, 0, NotSerialized)
{
Return (Add (Multiply (0x6E, 0x0A), 0x0AAC))
}
}
}
}
Scope (\_GPE)
{
Method (_L03, 0, NotSerialized)
{
Notify (\_SB.PCI0.LPC0.KBC0, 0x02)
Notify (\_SB.PCI0.LPC0.MSE0, 0x02)
}
Method (_L0C, 0, NotSerialized)
{
Notify (\_SB.PCI0.MODM, 0x02)
Notify (\_SB.PCI0.AUDO, 0x02)
}
Method (_L04, 0, NotSerialized)
{
Notify (\_SB.PCI0.P2P, 0x02)
}
Method (_L0B, 0, NotSerialized)
{
Notify (\_SB.PCI0.OHC1, 0x02)
Notify (\_SB.PCI0.OHC2, 0x02)
}
}
}