hybrid-graphics-linux team mailing list archive
-
hybrid-graphics-linux team
-
Mailing list archive
-
Message #00482
Re: Vostro 3400
Hi,
Last time i didnt send the DSDT file.
I have seen a lot of Dell Vostro with same problem. I assume that there is
no news still.
On Mon, Dec 20, 2010 at 12:38 PM, Luis Z <luisgls@xxxxxxxxx> wrote:
> Hi all,
>
> Wanting to sell this computer. My last dell worked pefectly now, so
> dissapointed. good luck.
>
> sudo dmidecode -s system-product-name
> Vostro 3400
> sudo dmidecode -s system-version
> not specified
> lspci -vnnn | perl -lne 'print if /^\d+\:.+(\[\S+\:\S+\])/' | grep VGA
> 00:02.0 VGA compatible controller [0300]: Intel Corporation Core Processor
> Integrated Graphics Controller [8086:0046] (rev 12) (prog-if 00 [VGA
> controller])
> 01:00.0 VGA compatible controller [0300]: nVidia Corporation GT218 [GeForce
> 310M] [10de:0a75] (rev ff) (prog-if ff)
>
>
> Saludos!
>
>
> --
> Luis Zapata Ortiz
> Molecular Biotechnology Engineering
> Faculty of Sciences. Universidad de Chile
> Las Palmeras 3425, Ñuñoa, Chile.
>
--
Luis Zapata Ortiz
Molecular Biotechnology Engineering
Faculty of Sciences. Universidad de Chile
Las Palmeras 3425, Ñuñoa, Chile.
/*
* Intel ACPI Component Architecture
* AML Disassembler version 20090521
*
* Disassembly of DSDT.dat, Tue Feb 8 15:36:38 2011
*
*
* Original Table Header:
* Signature "DSDT"
* Length 0x000093B0 (37808)
* Revision 0x02
* Checksum 0x99
* OEM ID "DELL "
* OEM Table ID "WN09 "
* OEM Revision 0x00000040 (64)
* Compiler ID "INTL"
* Compiler Version 0x20051117 (537202967)
*/
DefinitionBlock ("DSDT.aml", "DSDT", 2, "DELL ", "WN09 ", 0x00000040)
{
External (NNAB, IntObj)
External (IDAB, MethodObj) // 0 Arguments
External (HNOT, MethodObj) // 1 Arguments
External (\_PR_.P003)
External (\_PR_.P002)
External (\_PR_.P001)
External (\_PR_.P000)
External (\_SB_.PCI0.WMI1)
External (\_SB_.PCI0.GFX0.DACE)
External (\_SB_.PCI0.GFX0.HGNC)
External (\_SB_.PCI0.P0P2.PEGP)
External (\_SB_.PCI0.P0P1.PEGP.DD02)
External (\_SB_.PCI0.P0P2.PEGP.LCD_)
External (\_SB_.PCI0.P0P1.PEGP.LCD_)
External (\_SB_.PCI0.P0P1.PEGP.PO52, IntObj)
Name (PEBS, 0xE0000000)
Name (PEBL, 0x10000000)
Name (VTDS, 0xFED90000)
Name (VTDL, 0x4000)
Name (TCBR, 0xFED08000)
Name (TCLT, 0x1000)
Name (SRCB, 0xFED1C000)
Name (SRCL, 0x4000)
Name (SUSW, 0xFF)
Name (PMBS, 0x0400)
Name (PMLN, 0x80)
Name (SMIP, 0xB2)
Name (APCB, 0xFEC00000)
Name (APCL, 0x00100000)
Name (PM30, 0x0430)
Name (SMBS, 0x1180)
Name (SMBL, 0x20)
Name (HPTB, 0xFED00000)
Name (HPTC, 0xFED1F404)
Name (GPBS, 0x0500)
Name (GPLN, 0x80)
Name (ACPH, 0xDE)
Name (ASSB, Zero)
Name (AOTB, Zero)
Name (AAXB, Zero)
Name (PEHP, One)
Name (SHPC, One)
Name (PEER, One)
Name (PECS, One)
Name (ITKE, Zero)
Name (FMBL, One)
Name (BRF, One)
Name (BPH, 0x02)
Name (BLC, 0x03)
Name (BRFS, 0x04)
Name (BPHS, 0x05)
Name (BLCT, 0x06)
Name (BRF4, 0x07)
Name (BEP, 0x08)
Name (BBF, 0x09)
Name (BOF, 0x0A)
Name (BPT, 0x0B)
Name (SRAF, 0x0C)
Name (WWP, 0x0D)
Name (DSSP, Zero)
Name (FHPP, Zero)
Name (TOBS, 0x0460)
Name (TPMF, Zero)
Name (P0HP, Zero)
Name (P1HP, Zero)
Name (P2HP, Zero)
Name (P3HP, Zero)
Name (P4HP, One)
Name (P5HP, Zero)
Name (P6HP, Zero)
Name (P7HP, Zero)
Name (PMBA, 0x0400)
Name (GPBA, 0x0500)
Name (WSMI, 0x0D)
Name (BCLS, Package (0x12)
{
0x64,
0x1E,
0x06,
0x0C,
0x12,
0x18,
0x1E,
0x24,
0x2A,
0x30,
0x36,
0x3C,
0x42,
0x48,
0x4E,
0x54,
0x5A,
0x64
})
Name (PEPM, Zero)
Method (RRIO, 4, NotSerialized)
{
Store ("RRIO", Debug)
}
Method (RDMA, 3, NotSerialized)
{
Store ("rDMA", Debug)
}
Name (PICM, Zero)
Method (_PIC, 1, NotSerialized)
{
If (Arg0)
{
Store (0xAA, DBG8)
}
Else
{
Store (0xAC, DBG8)
}
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, Local0))
{
If (_OSI ("Linux"))
{
Store (0x03, OSVR)
}
If (_OSI ("Windows 2001"))
{
Store (0x04, OSVR)
}
If (_OSI ("Windows 2001.1"))
{
Store (0x05, OSVR)
}
If (_OSI ("FreeBSD"))
{
Store (0x06, OSVR)
}
If (_OSI ("HP-UX"))
{
Store (0x07, OSVR)
}
If (_OSI ("OpenVMS"))
{
Store (0x08, OSVR)
}
If (_OSI ("Windows 2001 SP1"))
{
Store (0x09, OSVR)
}
If (_OSI ("Windows 2001 SP2"))
{
Store (0x0A, OSVR)
}
If (_OSI ("Windows 2001 SP3"))
{
Store (0x0B, OSVR)
}
If (_OSI ("Windows 2006"))
{
Store (0x0C, OSVR)
}
If (_OSI ("Windows 2006 SP1"))
{
Store (0x0D, OSVR)
}
If (_OSI ("Windows 2009"))
{
Store (0x0E, OSVR)
}
}
Else
{
If (MCTH (_OS, "Microsoft Windows NT"))
{
Store (Zero, OSVR)
}
If (MCTH (_OS, "Microsoft Windows"))
{
Store (One, OSVR)
}
If (MCTH (_OS, "Microsoft WindowsME: Millennium Edition"))
{
Store (0x02, OSVR)
}
If (MCTH (_OS, "Linux"))
{
Store (0x03, OSVR)
}
If (MCTH (_OS, "FreeBSD"))
{
Store (0x06, OSVR)
}
If (MCTH (_OS, "HP-UX"))
{
Store (0x07, OSVR)
}
If (MCTH (_OS, "OpenVMS"))
{
Store (0x08, 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, 0x80, One)
Field (DEB0, ByteAcc, NoLock, Preserve)
{
DBG8, 8
}
OperationRegion (DEB1, SystemIO, 0x90, 0x02)
Field (DEB1, WordAcc, NoLock, Preserve)
{
DBG9, 16
}
Name (SS1, One)
Name (SS2, Zero)
Name (SS3, One)
Name (SS4, One)
Name (IOST, 0x0000)
Name (TOPM, 0xAFFFFFFF)
Name (ROMS, 0xFFE00000)
Name (MG1B, 0x00000000)
Name (MG1L, 0x00000000)
Name (MG2B, 0xB0000000)
Name (MG2L, 0x50000000)
OperationRegion (GNVS, SystemMemory, 0xAB623E18, 0x0172)
Field (GNVS, AnyAcc, Lock, Preserve)
{
OSYS, 16,
SMIF, 8,
PRM0, 8,
PRM1, 8,
SCIF, 8,
PRM2, 8,
PRM3, 8,
LCKF, 8,
PRM4, 8,
PRM5, 8,
P80D, 32,
LIDS, 8,
PWRS, 8,
DBGS, 8,
THOF, 8,
ACT1, 8,
ACTT, 8,
PSVT, 8,
TC1V, 8,
TC2V, 8,
TSPV, 8,
CRTT, 8,
DTSE, 8,
DTS1, 8,
DTS2, 8,
DTSF, 8,
Offset (0x25),
REVN, 8,
Offset (0x28),
APIC, 8,
TCNT, 8,
PCP0, 8,
PCP1, 8,
PPCM, 8,
PPMF, 32,
Offset (0x32),
NATP, 8,
CMAP, 8,
CMBP, 8,
LPTP, 8,
FDCP, 8,
CMCP, 8,
CIRP, 8,
SMSC, 8,
W381, 8,
SMC1, 8,
IGDS, 8,
TLST, 8,
CADL, 8,
PADL, 8,
CSTE, 16,
NSTE, 16,
SSTE, 16,
NDID, 8,
DID1, 32,
DID2, 32,
DID3, 32,
DID4, 32,
DID5, 32,
KSV0, 32,
KSV1, 8,
Offset (0x67),
BLCS, 8,
BRTL, 8,
ALSE, 8,
ALAF, 8,
LLOW, 8,
LHIH, 8,
Offset (0x6E),
EMAE, 8,
EMAP, 16,
EMAL, 16,
Offset (0x74),
MEFE, 8,
DSTS, 8,
Offset (0x78),
TPMP, 8,
TPME, 8,
PPRP, 32,
PPRQ, 8,
LPPR, 8,
Offset (0x82),
GTF0, 56,
GTF2, 56,
IDEM, 8,
GTF1, 56,
BID, 8,
Offset (0xAA),
ASLB, 32,
IBTT, 8,
IPAT, 8,
ITVF, 8,
ITVM, 8,
IPSC, 8,
IBLC, 8,
IBIA, 8,
ISSC, 8,
I409, 8,
I509, 8,
I609, 8,
I709, 8,
IPCF, 8,
IDMS, 8,
IF1E, 8,
HVCO, 8,
NXD1, 32,
NXD2, 32,
NXD3, 32,
NXD4, 32,
NXD5, 32,
NXD6, 32,
NXD7, 32,
NXD8, 32,
GSMI, 8,
PAVP, 8,
Offset (0xE1),
OSCC, 8,
NEXP, 8,
SDGV, 8,
SDDV, 8,
Offset (0xEB),
DSEN, 8,
ECON, 8,
GPIC, 8,
CTYP, 8,
L01C, 8,
VFN0, 8,
VFN1, 8,
Offset (0x100),
NVGA, 32,
NVHA, 32,
AMDA, 32,
DID6, 32,
DID7, 32,
DID8, 32,
EBAS, 32,
CPSP, 32,
EECP, 32,
EVCP, 32,
XBAS, 32,
OBS1, 32,
OBS2, 32,
OBS3, 32,
OBS4, 32,
OBS5, 32,
OBS6, 32,
OBS7, 32,
OBS8, 32,
Offset (0x157),
ATMC, 8,
PTMC, 8,
ATRA, 8,
PTRA, 8,
PNHM, 32,
TBAB, 32,
TBAH, 32,
RTIP, 8,
TSOD, 8,
ATPC, 8,
PTPC, 8,
PFLV, 8,
BREV, 8,
DPBM, 8,
DPCM, 8,
DPDM, 8,
ALFP, 8,
IMON, 8
}
OperationRegion (EXBU, SystemMemory, 0xAB630018, 0x1013)
Field (EXBU, AnyAcc, Lock, Preserve)
{
ECMD, 8,
WCMD, 32,
WDID, 32,
WBUF, 32768,
GPUF, 8,
SMIB, 8,
SGTF, 8,
SGT2, 8,
SGT3, 8,
SGTL, 32,
THML, 8
}
Scope (_SB)
{
Name (PR00, Package (0x29)
{
Package (0x04)
{
0x0001FFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x0001FFFF,
One,
LNKB,
Zero
},
Package (0x04)
{
0x0001FFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x0001FFFF,
0x03,
LNKD,
Zero
},
Package (0x04)
{
0x0003FFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x0003FFFF,
One,
LNKB,
Zero
},
Package (0x04)
{
0x0003FFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x0003FFFF,
0x03,
LNKD,
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,
LNKA,
Zero
},
Package (0x04)
{
0x0005FFFF,
One,
LNKB,
Zero
},
Package (0x04)
{
0x0005FFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x0005FFFF,
0x03,
LNKD,
Zero
},
Package (0x04)
{
0x0006FFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x0006FFFF,
One,
LNKB,
Zero
},
Package (0x04)
{
0x0006FFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x0006FFFF,
0x03,
LNKD,
Zero
},
Package (0x04)
{
0x001FFFFF,
Zero,
LNKC,
Zero
},
Package (0x04)
{
0x001FFFFF,
One,
LNKD,
Zero
},
Package (0x04)
{
0x001FFFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x001BFFFF,
Zero,
LNKG,
Zero
},
Package (0x04)
{
0x0016FFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x0016FFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x0016FFFF,
One,
LNKB,
Zero
},
Package (0x04)
{
0x001CFFFF,
Zero,
LNKB,
Zero
},
Package (0x04)
{
0x001CFFFF,
One,
LNKA,
Zero
},
Package (0x04)
{
0x001CFFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x001CFFFF,
0x03,
LNKD,
Zero
},
Package (0x04)
{
0x0019FFFF,
Zero,
LNKE,
Zero
},
Package (0x04)
{
0x001DFFFF,
Zero,
LNKH,
Zero
},
Package (0x04)
{
0x001DFFFF,
One,
LNKD,
Zero
},
Package (0x04)
{
0x001DFFFF,
0x02,
LNKA,
Zero
},
Package (0x04)
{
0x001DFFFF,
0x03,
LNKC,
Zero
},
Package (0x04)
{
0x001AFFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x001AFFFF,
One,
LNKF,
Zero
},
Package (0x04)
{
0x001AFFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x001AFFFF,
0x03,
LNKD,
Zero
},
Package (0x04)
{
0x0002FFFF,
Zero,
LNKA,
Zero
}
})
Name (AR00, Package (0x29)
{
Package (0x04)
{
0x0001FFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x0001FFFF,
One,
Zero,
0x11
},
Package (0x04)
{
0x0001FFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x0001FFFF,
0x03,
Zero,
0x13
},
Package (0x04)
{
0x0003FFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x0003FFFF,
One,
Zero,
0x11
},
Package (0x04)
{
0x0003FFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x0003FFFF,
0x03,
Zero,
0x13
},
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,
0x10
},
Package (0x04)
{
0x0005FFFF,
One,
Zero,
0x11
},
Package (0x04)
{
0x0005FFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x0005FFFF,
0x03,
Zero,
0x13
},
Package (0x04)
{
0x0006FFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x0006FFFF,
One,
Zero,
0x11
},
Package (0x04)
{
0x0006FFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x0006FFFF,
0x03,
Zero,
0x13
},
Package (0x04)
{
0x001FFFFF,
Zero,
Zero,
0x12
},
Package (0x04)
{
0x001FFFFF,
One,
Zero,
0x13
},
Package (0x04)
{
0x001FFFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x001BFFFF,
Zero,
Zero,
0x16
},
Package (0x04)
{
0x0016FFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x0016FFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x0016FFFF,
One,
Zero,
0x11
},
Package (0x04)
{
0x001CFFFF,
Zero,
Zero,
0x11
},
Package (0x04)
{
0x001CFFFF,
One,
Zero,
0x10
},
Package (0x04)
{
0x001CFFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x001CFFFF,
0x03,
Zero,
0x13
},
Package (0x04)
{
0x0019FFFF,
Zero,
Zero,
0x14
},
Package (0x04)
{
0x001DFFFF,
Zero,
Zero,
0x17
},
Package (0x04)
{
0x001DFFFF,
One,
Zero,
0x13
},
Package (0x04)
{
0x001DFFFF,
0x02,
Zero,
0x10
},
Package (0x04)
{
0x001DFFFF,
0x03,
Zero,
0x12
},
Package (0x04)
{
0x001AFFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x001AFFFF,
One,
Zero,
0x15
},
Package (0x04)
{
0x001AFFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x001AFFFF,
0x03,
Zero,
0x13
},
Package (0x04)
{
0x0002FFFF,
Zero,
Zero,
0x10
}
})
Name (PR20, Package (0x10)
{
Package (0x04)
{
0x0003FFFF,
Zero,
LNKD,
Zero
},
Package (0x04)
{
0x0003FFFF,
One,
LNKC,
Zero
},
Package (0x04)
{
0x0003FFFF,
0x02,
LNKF,
Zero
},
Package (0x04)
{
0x0003FFFF,
0x03,
LNKG,
Zero
},
Package (0x04)
{
0x0002FFFF,
Zero,
LNKC,
Zero
},
Package (0x04)
{
0x0002FFFF,
One,
LNKD,
Zero
},
Package (0x04)
{
0x0002FFFF,
0x02,
LNKB,
Zero
},
Package (0x04)
{
0x0002FFFF,
0x03,
LNKA,
Zero
},
Package (0x04)
{
0xFFFF,
Zero,
LNKF,
Zero
},
Package (0x04)
{
0xFFFF,
One,
LNKG,
Zero
},
Package (0x04)
{
0xFFFF,
0x02,
LNKH,
Zero
},
Package (0x04)
{
0xFFFF,
0x03,
LNKE,
Zero
},
Package (0x04)
{
0x0001FFFF,
Zero,
LNKG,
Zero
},
Package (0x04)
{
0x0001FFFF,
One,
LNKF,
Zero
},
Package (0x04)
{
0x0001FFFF,
0x02,
LNKE,
Zero
},
Package (0x04)
{
0x0001FFFF,
0x03,
LNKH,
Zero
}
})
Name (AR20, Package (0x10)
{
Package (0x04)
{
0x0003FFFF,
Zero,
Zero,
0x13
},
Package (0x04)
{
0x0003FFFF,
One,
Zero,
0x12
},
Package (0x04)
{
0x0003FFFF,
0x02,
Zero,
0x15
},
Package (0x04)
{
0x0003FFFF,
0x03,
Zero,
0x16
},
Package (0x04)
{
0x0002FFFF,
Zero,
Zero,
0x12
},
Package (0x04)
{
0x0002FFFF,
One,
Zero,
0x13
},
Package (0x04)
{
0x0002FFFF,
0x02,
Zero,
0x11
},
Package (0x04)
{
0x0002FFFF,
0x03,
Zero,
0x10
},
Package (0x04)
{
0xFFFF,
Zero,
Zero,
0x15
},
Package (0x04)
{
0xFFFF,
One,
Zero,
0x16
},
Package (0x04)
{
0xFFFF,
0x02,
Zero,
0x17
},
Package (0x04)
{
0xFFFF,
0x03,
Zero,
0x14
},
Package (0x04)
{
0x0001FFFF,
Zero,
Zero,
0x16
},
Package (0x04)
{
0x0001FFFF,
One,
Zero,
0x15
},
Package (0x04)
{
0x0001FFFF,
0x02,
Zero,
0x14
},
Package (0x04)
{
0x0001FFFF,
0x03,
Zero,
0x17
}
})
Name (PR11, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0xFFFF,
One,
LNKB,
Zero
},
Package (0x04)
{
0xFFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0xFFFF,
0x03,
LNKD,
Zero
}
})
Name (AR11, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0xFFFF,
One,
Zero,
0x11
},
Package (0x04)
{
0xFFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0xFFFF,
0x03,
Zero,
0x13
}
})
Name (PR12, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
LNKB,
Zero
},
Package (0x04)
{
0xFFFF,
One,
LNKC,
Zero
},
Package (0x04)
{
0xFFFF,
0x02,
LNKD,
Zero
},
Package (0x04)
{
0xFFFF,
0x03,
LNKA,
Zero
}
})
Name (AR12, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
Zero,
0x11
},
Package (0x04)
{
0xFFFF,
One,
Zero,
0x12
},
Package (0x04)
{
0xFFFF,
0x02,
Zero,
0x13
},
Package (0x04)
{
0xFFFF,
0x03,
Zero,
0x10
}
})
Name (PR13, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
LNKC,
Zero
},
Package (0x04)
{
0xFFFF,
One,
LNKD,
Zero
},
Package (0x04)
{
0xFFFF,
0x02,
LNKA,
Zero
},
Package (0x04)
{
0xFFFF,
0x03,
LNKB,
Zero
}
})
Name (AR13, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
Zero,
0x12
},
Package (0x04)
{
0xFFFF,
One,
Zero,
0x13
},
Package (0x04)
{
0xFFFF,
0x02,
Zero,
0x10
},
Package (0x04)
{
0xFFFF,
0x03,
Zero,
0x11
}
})
Name (PR14, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
LNKD,
Zero
},
Package (0x04)
{
0xFFFF,
One,
LNKA,
Zero
},
Package (0x04)
{
0xFFFF,
0x02,
LNKB,
Zero
},
Package (0x04)
{
0xFFFF,
0x03,
LNKC,
Zero
}
})
Name (AR14, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
Zero,
0x13
},
Package (0x04)
{
0xFFFF,
One,
Zero,
0x10
},
Package (0x04)
{
0xFFFF,
0x02,
Zero,
0x11
},
Package (0x04)
{
0xFFFF,
0x03,
Zero,
0x12
}
})
Name (PR15, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0xFFFF,
One,
LNKB,
Zero
},
Package (0x04)
{
0xFFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0xFFFF,
0x03,
LNKD,
Zero
}
})
Name (AR15, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0xFFFF,
One,
Zero,
0x11
},
Package (0x04)
{
0xFFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0xFFFF,
0x03,
Zero,
0x13
}
})
Name (PR16, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
LNKB,
Zero
},
Package (0x04)
{
0xFFFF,
One,
LNKC,
Zero
},
Package (0x04)
{
0xFFFF,
0x02,
LNKD,
Zero
},
Package (0x04)
{
0xFFFF,
0x03,
LNKA,
Zero
}
})
Name (AR16, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
Zero,
0x11
},
Package (0x04)
{
0xFFFF,
One,
Zero,
0x12
},
Package (0x04)
{
0xFFFF,
0x02,
Zero,
0x13
},
Package (0x04)
{
0xFFFF,
0x03,
Zero,
0x10
}
})
Name (PR17, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
LNKC,
Zero
},
Package (0x04)
{
0xFFFF,
One,
LNKD,
Zero
},
Package (0x04)
{
0xFFFF,
0x02,
LNKA,
Zero
},
Package (0x04)
{
0xFFFF,
0x03,
LNKB,
Zero
}
})
Name (AR17, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
Zero,
0x12
},
Package (0x04)
{
0xFFFF,
One,
Zero,
0x13
},
Package (0x04)
{
0xFFFF,
0x02,
Zero,
0x10
},
Package (0x04)
{
0xFFFF,
0x03,
Zero,
0x11
}
})
Name (PR18, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
LNKD,
Zero
},
Package (0x04)
{
0xFFFF,
One,
LNKA,
Zero
},
Package (0x04)
{
0xFFFF,
0x02,
LNKB,
Zero
},
Package (0x04)
{
0xFFFF,
0x03,
LNKC,
Zero
}
})
Name (AR18, Package (0x04)
{
Package (0x04)
{
0xFFFF,
Zero,
Zero,
0x13
},
Package (0x04)
{
0xFFFF,
One,
Zero,
0x10
},
Package (0x04)
{
0xFFFF,
0x02,
Zero,
0x11
},
Package (0x04)
{
0xFFFF,
0x03,
Zero,
0x12
}
})
Name (PRSA, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{3,4,5,6,7,10,11,12,14,15}
})
Alias (PRSA, PRSB)
Name (PRSC, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{3,4,5,6,10,11,12,14,15}
})
Alias (PRSC, PRSD)
Alias (PRSA, PRSE)
Alias (PRSA, PRSF)
Alias (PRSA, PRSG)
Alias (PRSA, PRSH)
Device (PCI0)
{
Name (_HID, EisaId ("PNP0A08"))
Name (_CID, EisaId ("PNP0A03"))
Name (_ADR, Zero)
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)
}
Method (_S3D, 0, NotSerialized)
{
If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
{
Return (0x02)
}
Else
{
Return (0x03)
}
}
Device (MCH)
{
Name (_HID, EisaId ("PNP0C01"))
Name (_UID, 0x0A)
Name (MCHR, ResourceTemplate ()
{
Memory32Fixed (ReadWrite,
0xFED14000, // Address Base
0x00006000, // Address Length
)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x1FE00000, // Address Length
)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00001000, // Address Length
)
Memory32Fixed (ReadWrite,
0xFED20000, // Address Base
0x00020000, // Address Length
)
Memory32Fixed (ReadWrite,
0xFEE00000, // Address Base
0x00010000, // Address Length
)
})
Method (_CRS, 0, NotSerialized)
{
CreateDWordField (MCHR, 0x10, PCIB)
CreateDWordField (MCHR, 0x14, PCIL)
Store (PEBS, PCIB)
Store (PEBL, PCIL)
CreateDWordField (MCHR, 0x1C, VTCB)
CreateDWordField (MCHR, 0x20, VTCL)
Store (VTDS, VTCB)
Store (VTDL, VTCL)
Return (MCHR)
}
}
Method (NPTS, 1, NotSerialized)
{
}
Method (NWAK, 1, NotSerialized)
{
}
Device (P0P1)
{
Name (_ADR, 0x00010000)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x03))
}
Device (PEGP)
{
Name (_ADR, Zero)
}
}
Device (P0P2)
{
Name (_ADR, 0x00030000)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x03))
}
}
Device (P0P3)
{
Name (_ADR, 0x00040000)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x03))
}
}
Device (P0P4)
{
Name (_ADR, 0x00050000)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x03))
}
}
Device (P0P5)
{
Name (_ADR, 0x00060000)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x03))
}
}
Device (SBRG)
{
Name (_ADR, 0x001F0000)
Method (SPTS, 1, NotSerialized)
{
Store (One, PS1S)
Store (One, PS1E)
Store (One, SLPS)
}
Method (SWAK, 1, NotSerialized)
{
Store (Zero, SLPS)
Store (Zero, PS1E)
If (RTCS) {}
Else
{
Notify (PWRB, 0x02)
}
}
OperationRegion (APMP, SystemIO, SMIP, 0x02)
Field (APMP, ByteAcc, NoLock, Preserve)
{
APMC, 8,
APMS, 8
}
Field (APMP, ByteAcc, NoLock, Preserve)
{
Offset (0x01),
, 1,
BRTC, 1
}
OperationRegion (SMIE, SystemIO, PM30, 0x08)
Field (SMIE, ByteAcc, NoLock, Preserve)
{
, 4,
PS1E, 1,
, 31,
PS1S, 1,
Offset (0x08)
}
Scope (\_SB)
{
Name (SLPS, Zero)
OperationRegion (PMS0, SystemIO, PMBS, 0x04)
Field (PMS0, ByteAcc, NoLock, Preserve)
{
, 10,
RTCS, 1,
, 3,
PEXS, 1,
WAKS, 1,
Offset (0x03),
PWBT, 1,
Offset (0x04)
}
Device (SLPB)
{
Name (_HID, EisaId ("PNP0C0E"))
Method (_STA, 0, NotSerialized)
{
If (LNotEqual (SUSW, 0xFF))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_PRW, 0, NotSerialized)
{
If (LNotEqual (SUSW, 0xFF))
{
Return (Package (0x02)
{
SUSW,
0x04
})
}
Else
{
Return (Package (0x02)
{
Zero,
Zero
})
}
}
}
}
Scope (\_SB)
{
Scope (PCI0)
{
Device (PCH)
{
Name (_HID, EisaId ("PNP0C01"))
Name (_UID, 0x01C7)
Name (_STA, 0x0F)
Name (ICHR, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x00, // Alignment
0x00, // Length
)
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x00, // Alignment
0x00, // Length
)
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x00, // Alignment
0x00, // Length
)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00000000, // Address Length
)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00000000, // Address Length
)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00000000, // Address Length
)
Memory32Fixed (ReadWrite,
0xFF000000, // Address Base
0x01000000, // Address Length
)
})
Method (_CRS, 0, NotSerialized)
{
CreateWordField (ICHR, 0x02, PBB)
CreateWordField (ICHR, 0x04, PBH)
CreateByteField (ICHR, 0x07, PML)
Store (PMBS, PBB)
Store (PMBS, PBH)
Store (PMLN, PML)
If (SMBS)
{
CreateWordField (ICHR, 0x0A, SMB)
CreateWordField (ICHR, 0x0C, SMH)
CreateByteField (ICHR, 0x0F, SML)
Store (SMBS, SMB)
Store (SMBS, SMH)
Store (SMBL, SML)
}
If (GPBS)
{
CreateWordField (ICHR, 0x12, IGB)
CreateWordField (ICHR, 0x14, IGH)
CreateByteField (ICHR, 0x17, IGL)
Store (GPBS, IGB)
Store (GPBS, IGH)
Store (GPLN, IGL)
}
If (APCB)
{
CreateDWordField (ICHR, 0x28, APB)
CreateDWordField (ICHR, 0x2C, APL)
Store (APCB, APB)
Store (APCL, APL)
}
CreateDWordField (ICHR, 0x1C, RCB)
CreateDWordField (ICHR, 0x20, RCL)
Store (SRCB, RCB)
Store (SRCL, RCL)
If (TCBR)
{
CreateDWordField (ICHR, 0x34, TCB)
CreateDWordField (ICHR, 0x38, TCL)
Store (TCBR, TCB)
Store (TCLT, TCL)
}
Return (ICHR)
}
}
}
}
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 (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,
0x0044, // Range Minimum
0x0044, // Range Maximum
0x00, // Alignment
0x1C, // Length
)
IO (Decode16,
0x0068, // Range Minimum
0x0068, // Range Maximum
0x01, // Alignment
0x08, // 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,
0x00E0, // Range Minimum
0x00E0, // Range Maximum
0x00, // Alignment
0x10, // Length
)
IO (Decode16,
0x04D0, // Range Minimum
0x04D0, // Range Maximum
0x00, // Alignment
0x02, // Length
)
Memory32Fixed (ReadWrite,
0xFE800000, // Address Base
0x00000200, // Address Length
)
})
OperationRegion (MBOX, SystemMemory, 0xFE800000, 0x0200)
Field (MBOX, ByteAcc, Lock, Preserve)
{
Offset (0x01),
ENTF, 8,
Offset (0x101),
MBX0, 8,
MBX1, 8,
MBX2, 8,
MBX3, 8,
MBX4, 8,
MBX5, 8,
MBX6, 8,
MBX7, 8,
MBX8, 8,
MBX9, 8
}
Method (_CRS, 0, NotSerialized)
{
Return (CRS)
}
}
}
Device (BR20)
{
Name (_ADR, 0x001E0000)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x0B, 0x03))
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR20)
}
Return (PR20)
}
}
Device (SAT0)
{
Name (_ADR, 0x001F0002)
Name (^NATA, Package (0x01)
{
0x001F0002
})
Name (\FZTF, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF5
})
Name (REGF, One)
Method (_REG, 2, NotSerialized)
{
If (LEqual (Arg0, 0x02))
{
Store (Arg1, REGF)
}
}
Name (TIM0, Package (0x08)
{
Package (0x04)
{
0x78,
0xB4,
0xF0,
0x0384
},
Package (0x04)
{
0x23,
0x21,
0x10,
Zero
},
Package (0x04)
{
0x0B,
0x09,
0x04,
Zero
},
Package (0x06)
{
0x78,
0x5A,
0x3C,
0x28,
0x1E,
0x14
},
Package (0x06)
{
Zero,
One,
0x02,
One,
0x02,
One
},
Package (0x06)
{
Zero,
Zero,
Zero,
One,
One,
One
},
Package (0x04)
{
0x04,
0x03,
0x02,
Zero
},
Package (0x04)
{
0x02,
One,
Zero,
Zero
}
})
Name (TMD0, Buffer (0x14) {})
CreateDWordField (TMD0, Zero, PIO0)
CreateDWordField (TMD0, 0x04, DMA0)
CreateDWordField (TMD0, 0x08, PIO1)
CreateDWordField (TMD0, 0x0C, DMA1)
CreateDWordField (TMD0, 0x10, CHNF)
OperationRegion (CFG2, PCI_Config, 0x40, 0x20)
Field (CFG2, DWordAcc, NoLock, Preserve)
{
PMPT, 4,
PSPT, 4,
PMRI, 6,
Offset (0x02),
SMPT, 4,
SSPT, 4,
SMRI, 6,
Offset (0x04),
PSRI, 4,
SSRI, 4,
Offset (0x08),
PM3E, 1,
PS3E, 1,
SM3E, 1,
SS3E, 1,
Offset (0x0A),
PMUT, 2,
, 2,
PSUT, 2,
Offset (0x0B),
SMUT, 2,
, 2,
SSUT, 2,
Offset (0x0C),
Offset (0x14),
PM6E, 1,
PS6E, 1,
SM6E, 1,
SS6E, 1,
PMCR, 1,
PSCR, 1,
SMCR, 1,
SSCR, 1,
, 4,
PMAE, 1,
PSAE, 1,
SMAE, 1,
SSAE, 1
}
Name (GMPT, Zero)
Name (GMUE, Zero)
Name (GMUT, Zero)
Name (GMCR, Zero)
Name (GSPT, Zero)
Name (GSUE, Zero)
Name (GSUT, Zero)
Name (GSCR, Zero)
Device (CHN0)
{
Name (_ADR, Zero)
Method (_GTM, 0, NotSerialized)
{
ShiftLeft (PSCR, One, Local1)
Or (PMCR, Local1, Local0)
ShiftLeft (PMAE, 0x02, Local3)
ShiftLeft (PM6E, One, Local4)
Or (Local3, Local4, Local3)
Or (PM3E, Local3, Local1)
ShiftLeft (PMPT, 0x04, Local3)
Or (Local1, Local3, Local1)
ShiftLeft (PSAE, 0x02, Local3)
ShiftLeft (PS6E, One, Local4)
Or (Local3, Local4, Local3)
Or (PS3E, Local3, Local2)
ShiftLeft (PSPT, 0x04, Local3)
Or (Local2, Local3, Local2)
Return (GTM (PMRI, Local1, PMUT, PSRI, Local2, PSUT, Local0))
}
Method (_STM, 3, NotSerialized)
{
Store (Arg0, Debug)
Store (Arg0, TMD0)
ShiftLeft (PMAE, 0x02, Local3)
ShiftLeft (PM6E, One, Local4)
Or (Local3, Local4, Local3)
Or (PM3E, Local3, Local0)
ShiftLeft (PMPT, 0x04, Local3)
Or (Local0, Local3, Local0)
ShiftLeft (PSAE, 0x02, Local3)
ShiftLeft (PS6E, One, Local4)
Or (Local3, Local4, Local3)
Or (PS3E, Local3, Local1)
ShiftLeft (PSPT, 0x04, Local3)
Or (Local1, Local3, Local1)
Store (PMRI, GMPT)
Store (Local0, GMUE)
Store (PMUT, GMUT)
Store (PMCR, GMCR)
Store (PSRI, GSPT)
Store (Local1, GSUE)
Store (PSUT, GSUT)
Store (PSCR, GSCR)
STM ()
Store (GMPT, PMRI)
Store (GMUE, Local0)
Store (GMUT, PMUT)
Store (GMCR, PMCR)
Store (GSUE, Local1)
Store (GSUT, PSUT)
Store (GSCR, PSCR)
If (And (Local0, One))
{
Store (One, PM3E)
}
Else
{
Store (Zero, PM3E)
}
If (And (Local0, 0x02))
{
Store (One, PM6E)
}
Else
{
Store (Zero, PM6E)
}
If (And (Local0, 0x04))
{
Store (One, PMAE)
}
Else
{
Store (Zero, PMAE)
}
If (And (Local1, One))
{
Store (One, PS3E)
}
Else
{
Store (Zero, PS3E)
}
If (And (Local1, 0x02))
{
Store (One, PS6E)
}
Else
{
Store (Zero, PS6E)
}
If (And (Local1, 0x04))
{
Store (One, PSAE)
}
Else
{
Store (Zero, PSAE)
}
Store (GTF (Zero, Arg1), ATA0)
Store (GTF (One, Arg2), ATA1)
}
Device (DRV0)
{
Name (_ADR, Zero)
Method (_GTF, 0, NotSerialized)
{
Return (RATA (ATA0))
}
}
Device (DRV1)
{
Name (_ADR, One)
Method (_GTF, 0, NotSerialized)
{
Return (RATA (ATA1))
}
}
}
Device (CHN1)
{
Name (_ADR, One)
Method (_GTM, 0, NotSerialized)
{
ShiftLeft (SSCR, One, Local1)
Or (SMCR, Local1, Local0)
ShiftLeft (SMAE, 0x02, Local3)
ShiftLeft (SM6E, One, Local4)
Or (Local3, Local4, Local3)
Or (SM3E, Local3, Local1)
ShiftLeft (SMPT, 0x04, Local3)
Or (Local1, Local3, Local1)
ShiftLeft (SSAE, 0x02, Local3)
ShiftLeft (SS6E, One, Local4)
Or (Local3, Local4, Local3)
Or (SS3E, Local3, Local2)
ShiftLeft (SSPT, 0x04, Local3)
Or (Local2, Local3, Local2)
Return (GTM (SMRI, Local1, SMUT, SSRI, Local2, SSUT, Local0))
}
Method (_STM, 3, NotSerialized)
{
Store (Arg0, Debug)
Store (Arg0, TMD0)
ShiftLeft (SMAE, 0x02, Local3)
ShiftLeft (SM6E, One, Local4)
Or (Local3, Local4, Local3)
Or (SM3E, Local3, Local0)
ShiftLeft (SMPT, 0x04, Local3)
Or (Local0, Local3, Local0)
ShiftLeft (SSAE, 0x02, Local3)
ShiftLeft (SS6E, One, Local4)
Or (Local3, Local4, Local3)
Or (SS3E, Local3, Local1)
ShiftLeft (SSPT, 0x04, Local3)
Or (Local1, Local3, Local1)
Store (SMRI, GMPT)
Store (Local0, GMUE)
Store (SMUT, GMUT)
Store (SMCR, GMCR)
Store (SSRI, GSPT)
Store (Local1, GSUE)
Store (SSUT, GSUT)
Store (SSCR, GSCR)
STM ()
Store (GMPT, SMRI)
Store (GMUE, Local0)
Store (GMUT, SMUT)
Store (GMCR, SMCR)
Store (GSUE, Local1)
Store (GSUT, SSUT)
Store (GSCR, SSCR)
If (And (Local0, One))
{
Store (One, SM3E)
}
Else
{
Store (Zero, SM3E)
}
If (And (Local0, 0x02))
{
Store (One, SM6E)
}
Else
{
Store (Zero, SM6E)
}
If (And (Local0, 0x04))
{
Store (One, SMAE)
}
Else
{
Store (Zero, SMAE)
}
If (And (Local1, One))
{
Store (One, SS3E)
}
Else
{
Store (Zero, SS3E)
}
If (And (Local1, 0x02))
{
Store (One, SS6E)
}
Else
{
Store (Zero, SS6E)
}
If (And (Local1, 0x04))
{
Store (One, SSAE)
}
Else
{
Store (Zero, SSAE)
}
Store (GTF (Zero, Arg1), ATA2)
Store (GTF (One, Arg2), ATA3)
}
Device (DRV0)
{
Name (_ADR, Zero)
Method (_GTF, 0, NotSerialized)
{
Return (RATA (ATA2))
}
}
Device (DRV1)
{
Name (_ADR, One)
Method (_GTF, 0, NotSerialized)
{
Return (RATA (ATA3))
}
}
}
Method (GTM, 7, Serialized)
{
Store (Ones, PIO0)
Store (Ones, PIO1)
Store (Ones, DMA0)
Store (Ones, DMA1)
Store (0x10, CHNF)
If (REGF) {}
Else
{
Return (TMD0)
}
If (And (Arg1, 0x20))
{
Or (CHNF, 0x02, CHNF)
}
Store (Match (DerefOf (Index (TIM0, One)), MEQ, Arg0, MTR,
Zero, Zero), Local6)
Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)),
Local7)
Store (Local7, DMA0)
Store (Local7, PIO0)
If (And (Arg4, 0x20))
{
Or (CHNF, 0x08, CHNF)
}
Store (Match (DerefOf (Index (TIM0, 0x02)), MEQ, Arg3, MTR,
Zero, Zero), Local6)
Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)),
Local7)
Store (Local7, DMA1)
Store (Local7, PIO1)
If (And (Arg1, 0x07))
{
Store (Arg2, Local5)
If (And (Arg1, 0x02))
{
Add (Local5, 0x02, Local5)
}
If (And (Arg1, 0x04))
{
Add (Local5, 0x04, Local5)
}
Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)),
DMA0)
Or (CHNF, One, CHNF)
}
If (And (Arg4, 0x07))
{
Store (Arg5, Local5)
If (And (Arg4, 0x02))
{
Add (Local5, 0x02, Local5)
}
If (And (Arg4, 0x04))
{
Add (Local5, 0x04, Local5)
}
Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)),
DMA1)
Or (CHNF, 0x04, CHNF)
}
Store (TMD0, Debug)
Return (TMD0)
}
Method (STM, 0, Serialized)
{
If (REGF)
{
Store (Zero, GMUE)
Store (Zero, GMUT)
Store (Zero, GSUE)
Store (Zero, GSUT)
If (And (CHNF, One))
{
Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA0, MTR,
Zero, Zero), Local0)
If (LGreater (Local0, 0x05))
{
Store (0x05, Local0)
}
Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)),
GMUT)
Or (GMUE, One, GMUE)
If (LGreater (Local0, 0x02))
{
Or (GMUE, 0x02, GMUE)
}
If (LGreater (Local0, 0x04))
{
And (GMUE, 0xFD, GMUE)
Or (GMUE, 0x04, GMUE)
}
}
Else
{
If (Or (LEqual (PIO0, Ones), LEqual (PIO0, Zero)))
{
If (And (LLess (DMA0, Ones), LGreater (DMA0, Zero)))
{
Store (DMA0, PIO0)
Or (GMUE, 0x80, GMUE)
}
}
}
If (And (CHNF, 0x04))
{
Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA1, MTR,
Zero, Zero), Local0)
If (LGreater (Local0, 0x05))
{
Store (0x05, Local0)
}
Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)),
GSUT)
Or (GSUE, One, GSUE)
If (LGreater (Local0, 0x02))
{
Or (GSUE, 0x02, GSUE)
}
If (LGreater (Local0, 0x04))
{
And (GSUE, 0xFD, GSUE)
Or (GSUE, 0x04, GSUE)
}
}
Else
{
If (Or (LEqual (PIO1, Ones), LEqual (PIO1, Zero)))
{
If (And (LLess (DMA1, Ones), LGreater (DMA1, Zero)))
{
Store (DMA1, PIO1)
Or (GSUE, 0x80, GSUE)
}
}
}
If (And (CHNF, 0x02))
{
Or (GMUE, 0x20, GMUE)
}
If (And (CHNF, 0x08))
{
Or (GSUE, 0x20, GSUE)
}
And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO0, MTR,
Zero, Zero), 0x07, Local0)
Store (DerefOf (Index (DerefOf (Index (TIM0, One)), Local0)),
Local1)
Store (Local1, GMPT)
If (LLess (Local0, 0x03))
{
Or (GMUE, 0x50, GMUE)
}
And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO1, MTR,
Zero, Zero), 0x07, Local0)
Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local0)),
Local1)
Store (Local1, GSPT)
If (LLess (Local0, 0x03))
{
Or (GSUE, 0x50, GSUE)
}
}
}
Name (AT01, Buffer (0x07)
{
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xEF
})
Name (AT02, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90
})
Name (AT03, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6
})
Name (AT04, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x91
})
Name (ATA0, Buffer (0x1D) {})
Name (ATA1, Buffer (0x1D) {})
Name (ATA2, Buffer (0x1D) {})
Name (ATA3, Buffer (0x1D) {})
Name (ATAB, Buffer (0x1D) {})
CreateByteField (ATAB, Zero, CMDC)
Method (GTFB, 3, Serialized)
{
Multiply (CMDC, 0x38, Local0)
Add (Local0, 0x08, Local1)
CreateField (ATAB, Local1, 0x38, CMDX)
Multiply (CMDC, 0x07, Local0)
CreateByteField (ATAB, Add (Local0, 0x02), A001)
CreateByteField (ATAB, Add (Local0, 0x06), A005)
Store (Arg0, CMDX)
Store (Arg1, A001)
Store (Arg2, A005)
Increment (CMDC)
}
Method (GTF, 2, Serialized)
{
Store (Arg1, Debug)
Store (Zero, CMDC)
Name (ID49, 0x0C00)
Name (ID59, Zero)
Name (ID53, 0x04)
Name (ID63, 0x0F00)
Name (ID88, 0x0F00)
Name (IRDY, One)
Name (PIOT, Zero)
Name (DMAT, Zero)
If (LEqual (SizeOf (Arg1), 0x0200))
{
CreateWordField (Arg1, 0x62, IW49)
Store (IW49, ID49)
CreateWordField (Arg1, 0x6A, IW53)
Store (IW53, ID53)
CreateWordField (Arg1, 0x7E, IW63)
Store (IW63, ID63)
CreateWordField (Arg1, 0x76, IW59)
Store (IW59, ID59)
CreateWordField (Arg1, 0xB0, IW88)
Store (IW88, ID88)
}
Store (0xA0, Local7)
If (Arg0)
{
Store (0xB0, Local7)
And (CHNF, 0x08, IRDY)
If (And (CHNF, 0x10))
{
Store (PIO1, PIOT)
}
Else
{
Store (PIO0, PIOT)
}
If (And (CHNF, 0x04))
{
If (And (CHNF, 0x10))
{
Store (DMA1, DMAT)
}
Else
{
Store (DMA0, DMAT)
}
}
}
Else
{
And (CHNF, 0x02, IRDY)
Store (PIO0, PIOT)
If (And (CHNF, One))
{
Store (DMA0, DMAT)
}
}
If (LAnd (LAnd (And (ID53, 0x04), And (ID88, 0xFF00
)), DMAT))
{
Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMAT, MTR,
Zero, Zero), Local1)
If (LGreater (Local1, 0x05))
{
Store (0x05, Local1)
}
GTFB (AT01, Or (0x40, Local1), Local7)
}
Else
{
If (LAnd (And (ID63, 0xFF00), PIOT))
{
And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR,
Zero, Zero), 0x03, Local0)
Or (0x20, DerefOf (Index (DerefOf (Index (TIM0, 0x07)), Local0
)), Local1)
GTFB (AT01, Local1, Local7)
}
}
If (IRDY)
{
And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR,
Zero, Zero), 0x07, Local0)
Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0
)), Local1)
GTFB (AT01, Local1, Local7)
}
Else
{
If (And (ID49, 0x0400))
{
GTFB (AT01, One, Local7)
}
}
If (LAnd (And (ID59, 0x0100), And (ID59, 0xFF)))
{
GTFB (AT03, And (ID59, 0xFF), Local7)
}
Store (ATAB, Debug)
Return (ATAB)
}
Method (RATA, 1, NotSerialized)
{
CreateByteField (Arg0, Zero, CMDN)
Multiply (CMDN, 0x38, Local0)
CreateField (Arg0, 0x08, Local0, RETB)
Store (RETB, Debug)
Return (Concatenate (RETB, FZTF))
}
}
Device (SAT1)
{
Name (_ADR, 0x001F0005)
Name (REGF, One)
Method (_REG, 2, NotSerialized)
{
If (LEqual (Arg0, 0x02))
{
Store (Arg1, REGF)
}
}
Name (TIM0, Package (0x08)
{
Package (0x04)
{
0x78,
0xB4,
0xF0,
0x0384
},
Package (0x04)
{
0x23,
0x21,
0x10,
Zero
},
Package (0x04)
{
0x0B,
0x09,
0x04,
Zero
},
Package (0x06)
{
0x78,
0x5A,
0x3C,
0x28,
0x1E,
0x14
},
Package (0x06)
{
Zero,
One,
0x02,
One,
0x02,
One
},
Package (0x06)
{
Zero,
Zero,
Zero,
One,
One,
One
},
Package (0x04)
{
0x04,
0x03,
0x02,
Zero
},
Package (0x04)
{
0x02,
One,
Zero,
Zero
}
})
Name (TMD0, Buffer (0x14) {})
CreateDWordField (TMD0, Zero, PIO0)
CreateDWordField (TMD0, 0x04, DMA0)
CreateDWordField (TMD0, 0x08, PIO1)
CreateDWordField (TMD0, 0x0C, DMA1)
CreateDWordField (TMD0, 0x10, CHNF)
OperationRegion (CFG2, PCI_Config, 0x40, 0x20)
Field (CFG2, DWordAcc, NoLock, Preserve)
{
PMPT, 4,
PSPT, 4,
PMRI, 6,
Offset (0x02),
SMPT, 4,
SSPT, 4,
SMRI, 6,
Offset (0x04),
PSRI, 4,
SSRI, 4,
Offset (0x08),
PM3E, 1,
PS3E, 1,
SM3E, 1,
SS3E, 1,
Offset (0x0A),
PMUT, 2,
, 2,
PSUT, 2,
Offset (0x0B),
SMUT, 2,
, 2,
SSUT, 2,
Offset (0x0C),
Offset (0x14),
PM6E, 1,
PS6E, 1,
SM6E, 1,
SS6E, 1,
PMCR, 1,
PSCR, 1,
SMCR, 1,
SSCR, 1,
, 4,
PMAE, 1,
PSAE, 1,
SMAE, 1,
SSAE, 1
}
Name (GMPT, Zero)
Name (GMUE, Zero)
Name (GMUT, Zero)
Name (GMCR, Zero)
Name (GSPT, Zero)
Name (GSUE, Zero)
Name (GSUT, Zero)
Name (GSCR, Zero)
Device (CHN0)
{
Name (_ADR, Zero)
Method (_GTM, 0, NotSerialized)
{
ShiftLeft (PSCR, One, Local1)
Or (PMCR, Local1, Local0)
ShiftLeft (PMAE, 0x02, Local3)
ShiftLeft (PM6E, One, Local4)
Or (Local3, Local4, Local3)
Or (PM3E, Local3, Local1)
ShiftLeft (PMPT, 0x04, Local3)
Or (Local1, Local3, Local1)
ShiftLeft (PSAE, 0x02, Local3)
ShiftLeft (PS6E, One, Local4)
Or (Local3, Local4, Local3)
Or (PS3E, Local3, Local2)
ShiftLeft (PSPT, 0x04, Local3)
Or (Local2, Local3, Local2)
Return (GTM (PMRI, Local1, PMUT, PSRI, Local2, PSUT, Local0))
}
Method (_STM, 3, NotSerialized)
{
Store (Arg0, Debug)
Store (Arg0, TMD0)
ShiftLeft (PMAE, 0x02, Local3)
ShiftLeft (PM6E, One, Local4)
Or (Local3, Local4, Local3)
Or (PM3E, Local3, Local0)
ShiftLeft (PMPT, 0x04, Local3)
Or (Local0, Local3, Local0)
ShiftLeft (PSAE, 0x02, Local3)
ShiftLeft (PS6E, One, Local4)
Or (Local3, Local4, Local3)
Or (PS3E, Local3, Local1)
ShiftLeft (PSPT, 0x04, Local3)
Or (Local1, Local3, Local1)
Store (PMRI, GMPT)
Store (Local0, GMUE)
Store (PMUT, GMUT)
Store (PMCR, GMCR)
Store (PSRI, GSPT)
Store (Local1, GSUE)
Store (PSUT, GSUT)
Store (PSCR, GSCR)
STM ()
Store (GMPT, PMRI)
Store (GMUE, Local0)
Store (GMUT, PMUT)
Store (GMCR, PMCR)
Store (GSUE, Local1)
Store (GSUT, PSUT)
Store (GSCR, PSCR)
If (And (Local0, One))
{
Store (One, PM3E)
}
Else
{
Store (Zero, PM3E)
}
If (And (Local0, 0x02))
{
Store (One, PM6E)
}
Else
{
Store (Zero, PM6E)
}
If (And (Local0, 0x04))
{
Store (One, PMAE)
}
Else
{
Store (Zero, PMAE)
}
If (And (Local1, One))
{
Store (One, PS3E)
}
Else
{
Store (Zero, PS3E)
}
If (And (Local1, 0x02))
{
Store (One, PS6E)
}
Else
{
Store (Zero, PS6E)
}
If (And (Local1, 0x04))
{
Store (One, PSAE)
}
Else
{
Store (Zero, PSAE)
}
Store (GTF (Zero, Arg1), ATA0)
Store (GTF (One, Arg2), ATA1)
}
Device (DRV0)
{
Name (_ADR, Zero)
Method (_GTF, 0, NotSerialized)
{
Return (RATA (ATA0))
}
}
Device (DRV1)
{
Name (_ADR, One)
Method (_GTF, 0, NotSerialized)
{
Return (RATA (ATA1))
}
}
}
Device (CHN1)
{
Name (_ADR, One)
Method (_GTM, 0, NotSerialized)
{
ShiftLeft (SSCR, One, Local1)
Or (SMCR, Local1, Local0)
ShiftLeft (SMAE, 0x02, Local3)
ShiftLeft (SM6E, One, Local4)
Or (Local3, Local4, Local3)
Or (SM3E, Local3, Local1)
ShiftLeft (SMPT, 0x04, Local3)
Or (Local1, Local3, Local1)
ShiftLeft (SSAE, 0x02, Local3)
ShiftLeft (SS6E, One, Local4)
Or (Local3, Local4, Local3)
Or (SS3E, Local3, Local2)
ShiftLeft (SSPT, 0x04, Local3)
Or (Local2, Local3, Local2)
Return (GTM (SMRI, Local1, SMUT, SSRI, Local2, SSUT, Local0))
}
Method (_STM, 3, NotSerialized)
{
Store (Arg0, Debug)
Store (Arg0, TMD0)
ShiftLeft (SMAE, 0x02, Local3)
ShiftLeft (SM6E, One, Local4)
Or (Local3, Local4, Local3)
Or (SM3E, Local3, Local0)
ShiftLeft (SMPT, 0x04, Local3)
Or (Local0, Local3, Local0)
ShiftLeft (SSAE, 0x02, Local3)
ShiftLeft (SS6E, One, Local4)
Or (Local3, Local4, Local3)
Or (SS3E, Local3, Local1)
ShiftLeft (SSPT, 0x04, Local3)
Or (Local1, Local3, Local1)
Store (SMRI, GMPT)
Store (Local0, GMUE)
Store (SMUT, GMUT)
Store (SMCR, GMCR)
Store (SSRI, GSPT)
Store (Local1, GSUE)
Store (SSUT, GSUT)
Store (SSCR, GSCR)
STM ()
Store (GMPT, SMRI)
Store (GMUE, Local0)
Store (GMUT, SMUT)
Store (GMCR, SMCR)
Store (GSUE, Local1)
Store (GSUT, SSUT)
Store (GSCR, SSCR)
If (And (Local0, One))
{
Store (One, SM3E)
}
Else
{
Store (Zero, SM3E)
}
If (And (Local0, 0x02))
{
Store (One, SM6E)
}
Else
{
Store (Zero, SM6E)
}
If (And (Local0, 0x04))
{
Store (One, SMAE)
}
Else
{
Store (Zero, SMAE)
}
If (And (Local1, One))
{
Store (One, SS3E)
}
Else
{
Store (Zero, SS3E)
}
If (And (Local1, 0x02))
{
Store (One, SS6E)
}
Else
{
Store (Zero, SS6E)
}
If (And (Local1, 0x04))
{
Store (One, SSAE)
}
Else
{
Store (Zero, SSAE)
}
Store (GTF (Zero, Arg1), ATA2)
Store (GTF (One, Arg2), ATA3)
}
Device (DRV0)
{
Name (_ADR, Zero)
Method (_GTF, 0, NotSerialized)
{
Return (RATA (ATA2))
}
}
Device (DRV1)
{
Name (_ADR, One)
Method (_GTF, 0, NotSerialized)
{
Return (RATA (ATA3))
}
}
}
Method (GTM, 7, Serialized)
{
Store (Ones, PIO0)
Store (Ones, PIO1)
Store (Ones, DMA0)
Store (Ones, DMA1)
Store (0x10, CHNF)
If (REGF) {}
Else
{
Return (TMD0)
}
If (And (Arg1, 0x20))
{
Or (CHNF, 0x02, CHNF)
}
Store (Match (DerefOf (Index (TIM0, One)), MEQ, Arg0, MTR,
Zero, Zero), Local6)
Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)),
Local7)
Store (Local7, DMA0)
Store (Local7, PIO0)
If (And (Arg4, 0x20))
{
Or (CHNF, 0x08, CHNF)
}
Store (Match (DerefOf (Index (TIM0, 0x02)), MEQ, Arg3, MTR,
Zero, Zero), Local6)
Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)),
Local7)
Store (Local7, DMA1)
Store (Local7, PIO1)
If (And (Arg1, 0x07))
{
Store (Arg2, Local5)
If (And (Arg1, 0x02))
{
Add (Local5, 0x02, Local5)
}
If (And (Arg1, 0x04))
{
Add (Local5, 0x04, Local5)
}
Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)),
DMA0)
Or (CHNF, One, CHNF)
}
If (And (Arg4, 0x07))
{
Store (Arg5, Local5)
If (And (Arg4, 0x02))
{
Add (Local5, 0x02, Local5)
}
If (And (Arg4, 0x04))
{
Add (Local5, 0x04, Local5)
}
Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)),
DMA1)
Or (CHNF, 0x04, CHNF)
}
Store (TMD0, Debug)
Return (TMD0)
}
Method (STM, 0, Serialized)
{
If (REGF)
{
Store (Zero, GMUE)
Store (Zero, GMUT)
Store (Zero, GSUE)
Store (Zero, GSUT)
If (And (CHNF, One))
{
Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA0, MTR,
Zero, Zero), Local0)
If (LGreater (Local0, 0x05))
{
Store (0x05, Local0)
}
Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)),
GMUT)
Or (GMUE, One, GMUE)
If (LGreater (Local0, 0x02))
{
Or (GMUE, 0x02, GMUE)
}
If (LGreater (Local0, 0x04))
{
And (GMUE, 0xFD, GMUE)
Or (GMUE, 0x04, GMUE)
}
}
Else
{
If (Or (LEqual (PIO0, Ones), LEqual (PIO0, Zero)))
{
If (And (LLess (DMA0, Ones), LGreater (DMA0, Zero)))
{
Store (DMA0, PIO0)
Or (GMUE, 0x80, GMUE)
}
}
}
If (And (CHNF, 0x04))
{
Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA1, MTR,
Zero, Zero), Local0)
If (LGreater (Local0, 0x05))
{
Store (0x05, Local0)
}
Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)),
GSUT)
Or (GSUE, One, GSUE)
If (LGreater (Local0, 0x02))
{
Or (GSUE, 0x02, GSUE)
}
If (LGreater (Local0, 0x04))
{
And (GSUE, 0xFD, GSUE)
Or (GSUE, 0x04, GSUE)
}
}
Else
{
If (Or (LEqual (PIO1, Ones), LEqual (PIO1, Zero)))
{
If (And (LLess (DMA1, Ones), LGreater (DMA1, Zero)))
{
Store (DMA1, PIO1)
Or (GSUE, 0x80, GSUE)
}
}
}
If (And (CHNF, 0x02))
{
Or (GMUE, 0x20, GMUE)
}
If (And (CHNF, 0x08))
{
Or (GSUE, 0x20, GSUE)
}
And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO0, MTR,
Zero, Zero), 0x07, Local0)
Store (DerefOf (Index (DerefOf (Index (TIM0, One)), Local0)),
Local1)
Store (Local1, GMPT)
If (LLess (Local0, 0x03))
{
Or (GMUE, 0x50, GMUE)
}
And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO1, MTR,
Zero, Zero), 0x07, Local0)
Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local0)),
Local1)
Store (Local1, GSPT)
If (LLess (Local0, 0x03))
{
Or (GSUE, 0x50, GSUE)
}
}
}
Name (AT01, Buffer (0x07)
{
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xEF
})
Name (AT02, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90
})
Name (AT03, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6
})
Name (AT04, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x91
})
Name (ATA0, Buffer (0x1D) {})
Name (ATA1, Buffer (0x1D) {})
Name (ATA2, Buffer (0x1D) {})
Name (ATA3, Buffer (0x1D) {})
Name (ATAB, Buffer (0x1D) {})
CreateByteField (ATAB, Zero, CMDC)
Method (GTFB, 3, Serialized)
{
Multiply (CMDC, 0x38, Local0)
Add (Local0, 0x08, Local1)
CreateField (ATAB, Local1, 0x38, CMDX)
Multiply (CMDC, 0x07, Local0)
CreateByteField (ATAB, Add (Local0, 0x02), A001)
CreateByteField (ATAB, Add (Local0, 0x06), A005)
Store (Arg0, CMDX)
Store (Arg1, A001)
Store (Arg2, A005)
Increment (CMDC)
}
Method (GTF, 2, Serialized)
{
Store (Arg1, Debug)
Store (Zero, CMDC)
Name (ID49, 0x0C00)
Name (ID59, Zero)
Name (ID53, 0x04)
Name (ID63, 0x0F00)
Name (ID88, 0x0F00)
Name (IRDY, One)
Name (PIOT, Zero)
Name (DMAT, Zero)
If (LEqual (SizeOf (Arg1), 0x0200))
{
CreateWordField (Arg1, 0x62, IW49)
Store (IW49, ID49)
CreateWordField (Arg1, 0x6A, IW53)
Store (IW53, ID53)
CreateWordField (Arg1, 0x7E, IW63)
Store (IW63, ID63)
CreateWordField (Arg1, 0x76, IW59)
Store (IW59, ID59)
CreateWordField (Arg1, 0xB0, IW88)
Store (IW88, ID88)
}
Store (0xA0, Local7)
If (Arg0)
{
Store (0xB0, Local7)
And (CHNF, 0x08, IRDY)
If (And (CHNF, 0x10))
{
Store (PIO1, PIOT)
}
Else
{
Store (PIO0, PIOT)
}
If (And (CHNF, 0x04))
{
If (And (CHNF, 0x10))
{
Store (DMA1, DMAT)
}
Else
{
Store (DMA0, DMAT)
}
}
}
Else
{
And (CHNF, 0x02, IRDY)
Store (PIO0, PIOT)
If (And (CHNF, One))
{
Store (DMA0, DMAT)
}
}
If (LAnd (LAnd (And (ID53, 0x04), And (ID88, 0xFF00
)), DMAT))
{
Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMAT, MTR,
Zero, Zero), Local1)
If (LGreater (Local1, 0x05))
{
Store (0x05, Local1)
}
GTFB (AT01, Or (0x40, Local1), Local7)
}
Else
{
If (LAnd (And (ID63, 0xFF00), PIOT))
{
And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR,
Zero, Zero), 0x03, Local0)
Or (0x20, DerefOf (Index (DerefOf (Index (TIM0, 0x07)), Local0
)), Local1)
GTFB (AT01, Local1, Local7)
}
}
If (IRDY)
{
And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR,
Zero, Zero), 0x07, Local0)
Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0
)), Local1)
GTFB (AT01, Local1, Local7)
}
Else
{
If (And (ID49, 0x0400))
{
GTFB (AT01, One, Local7)
}
}
If (LAnd (And (ID59, 0x0100), And (ID59, 0xFF)))
{
GTFB (AT03, And (ID59, 0xFF), Local7)
}
Store (ATAB, Debug)
Return (ATAB)
}
Method (RATA, 1, NotSerialized)
{
CreateByteField (Arg0, Zero, CMDN)
Multiply (CMDN, 0x38, Local0)
CreateField (Arg0, 0x08, Local0, RETB)
Store (RETB, Debug)
Return (Concatenate (RETB, FZTF))
}
}
Device (SMB)
{
Name (_ADR, 0x001F0003)
OperationRegion (SMBP, PCI_Config, 0x40, 0xC0)
Field (SMBP, DWordAcc, NoLock, Preserve)
{
, 2,
I2CE, 1
}
OperationRegion (SMPB, PCI_Config, 0x20, 0x04)
Field (SMPB, DWordAcc, NoLock, Preserve)
{
, 5,
SBAR, 11
}
OperationRegion (SMBI, SystemIO, ShiftLeft (SBAR, 0x05), 0x10)
Field (SMBI, ByteAcc, NoLock, Preserve)
{
HSTS, 8,
Offset (0x02),
HCON, 8,
HCOM, 8,
TXSA, 8,
DAT0, 8,
DAT1, 8,
HBDR, 8,
PECR, 8,
RXSA, 8,
SDAT, 16
}
Method (SSXB, 2, Serialized)
{
If (STRT ())
{
Return (Zero)
}
Store (Zero, I2CE)
Store (0xBF, HSTS)
Store (Arg0, TXSA)
Store (Arg1, HCOM)
Store (0x48, HCON)
If (COMP ())
{
Or (HSTS, 0xFF, HSTS)
Return (One)
}
Return (Zero)
}
Method (SRXB, 1, Serialized)
{
If (STRT ())
{
Return (0xFFFF)
}
Store (Zero, I2CE)
Store (0xBF, HSTS)
Store (Or (Arg0, One), TXSA)
Store (0x44, HCON)
If (COMP ())
{
Or (HSTS, 0xFF, HSTS)
Return (DAT0)
}
Return (0xFFFF)
}
Method (SWRB, 3, Serialized)
{
If (STRT ())
{
Return (Zero)
}
Store (Zero, I2CE)
Store (0xBF, HSTS)
Store (Arg0, TXSA)
Store (Arg1, HCOM)
Store (Arg2, DAT0)
Store (0x48, HCON)
If (COMP ())
{
Or (HSTS, 0xFF, HSTS)
Return (One)
}
Return (Zero)
}
Method (SRDB, 2, Serialized)
{
Store (0xF3, DBG8)
Sleep (0x03E8)
Store (0xF4, DBG8)
Sleep (0x03E8)
If (STRT ())
{
Return (0xFFFF)
}
Store (Zero, I2CE)
Store (0xBF, HSTS)
Store (Or (Arg0, One), TXSA)
Store (Arg1, HCOM)
Store (0x48, HCON)
If (COMP ())
{
Or (HSTS, 0xFF, HSTS)
Return (DAT0)
}
Return (0xFFFF)
}
Method (SWRW, 3, Serialized)
{
If (STRT ())
{
Return (Zero)
}
Store (Zero, I2CE)
Store (0xBF, HSTS)
Store (Arg0, TXSA)
Store (Arg1, HCOM)
And (Arg2, 0xFF, DAT1)
And (ShiftRight (Arg2, 0x08), 0xFF, DAT0)
Store (0x4C, HCON)
If (COMP ())
{
Or (HSTS, 0xFF, HSTS)
Return (One)
}
Return (Zero)
}
Method (SRDW, 2, Serialized)
{
If (STRT ())
{
Return (0xFFFF)
}
Store (Zero, I2CE)
Store (0xBF, HSTS)
Store (Or (Arg0, One), TXSA)
Store (Arg1, HCOM)
Store (0x4C, HCON)
If (COMP ())
{
Or (HSTS, 0xFF, HSTS)
Return (Or (ShiftLeft (DAT0, 0x08), DAT1))
}
Return (0xFFFFFFFF)
}
Method (SBLW, 4, Serialized)
{
If (STRT ())
{
Return (Zero)
}
Store (Arg3, I2CE)
Store (0xBF, HSTS)
Store (Arg0, TXSA)
Store (Arg1, HCOM)
Store (SizeOf (Arg2), DAT0)
Store (Zero, Local1)
Store (DerefOf (Index (Arg2, Zero)), HBDR)
Store (0x54, HCON)
While (LGreater (SizeOf (Arg2), Local1))
{
Store (0x0FA0, Local0)
While (LAnd (LNot (And (HSTS, 0x80)), Local0))
{
Decrement (Local0)
Stall (0x32)
}
If (LNot (Local0))
{
KILL ()
Return (Zero)
}
Store (0x80, HSTS)
Increment (Local1)
If (LGreater (SizeOf (Arg2), Local1))
{
Store (DerefOf (Index (Arg2, Local1)), HBDR)
}
}
If (COMP ())
{
Or (HSTS, 0xFF, HSTS)
Return (One)
}
Return (Zero)
}
Method (SBLR, 3, Serialized)
{
Name (TBUF, Buffer (0x0100) {})
If (STRT ())
{
Return (Zero)
}
Store (Arg2, I2CE)
Store (0xBF, HSTS)
Store (Or (Arg0, One), TXSA)
Store (Arg1, HCOM)
Store (0x54, HCON)
Store (0x0FA0, Local0)
While (LAnd (LNot (And (HSTS, 0x80)), Local0))
{
Decrement (Local0)
Stall (0x32)
}
If (LNot (Local0))
{
KILL ()
Return (Zero)
}
Store (DAT0, Index (TBUF, Zero))
Store (0x80, HSTS)
Store (One, Local1)
While (LLess (Local1, DerefOf (Index (TBUF, Zero))))
{
Store (0x0FA0, Local0)
While (LAnd (LNot (And (HSTS, 0x80)), Local0))
{
Decrement (Local0)
Stall (0x32)
}
If (LNot (Local0))
{
KILL ()
Return (Zero)
}
Store (HBDR, Index (TBUF, Local1))
Store (0x80, HSTS)
Increment (Local1)
}
If (COMP ())
{
Or (HSTS, 0xFF, HSTS)
Return (TBUF)
}
Return (Zero)
}
Method (STRT, 0, Serialized)
{
Store (0xC8, Local0)
While (Local0)
{
If (And (HSTS, 0x40))
{
Decrement (Local0)
Sleep (One)
If (LEqual (Local0, Zero))
{
Return (One)
}
}
Else
{
Store (Zero, Local0)
}
}
Store (0x0FA0, Local0)
While (Local0)
{
If (And (HSTS, One))
{
Decrement (Local0)
Stall (0x32)
If (LEqual (Local0, Zero))
{
KILL ()
}
}
Else
{
Return (Zero)
}
}
Return (One)
}
Method (COMP, 0, Serialized)
{
Store (0x0FA0, Local0)
While (Local0)
{
If (And (HSTS, 0x02))
{
Return (One)
}
Else
{
Decrement (Local0)
Stall (0x32)
If (LEqual (Local0, Zero))
{
KILL ()
}
}
}
Return (Zero)
}
Method (KILL, 0, Serialized)
{
Or (HCON, 0x02, HCON)
Or (HSTS, 0xFF, HSTS)
}
Scope (\_GPE)
{
Method (_L07, 0, NotSerialized)
{
Store (0x20, \_SB.PCI0.SMB.HSTS)
}
Method (_L1B, 0, NotSerialized)
{
Store (0x20, \_SB.PCI0.SMB.HSTS)
}
}
}
Device (PEX0)
{
Name (_ADR, 0x001C0000)
OperationRegion (PXRC, PCI_Config, Zero, 0x0100)
Field (PXRC, AnyAcc, NoLock, Preserve)
{
Offset (0x60),
Offset (0x62),
PMS, 1,
PMP, 1,
Offset (0xD8),
, 30,
HPE, 1,
PCE, 1,
, 30,
HPS, 1,
PCS, 1
}
Method (CSS, 0, NotSerialized)
{
Store (One, PMS)
Store (One, PCS)
Store (One, PMS)
}
Method (SPRT, 1, NotSerialized)
{
CSS ()
Store (One, PCE)
CSS ()
}
Method (WPRT, 1, NotSerialized)
{
Store (Zero, PCE)
CSS ()
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x03))
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR11)
}
Return (PR11)
}
}
Device (PEX1)
{
Name (_ADR, 0x001C0001)
OperationRegion (PXRC, PCI_Config, Zero, 0x0100)
Field (PXRC, AnyAcc, NoLock, Preserve)
{
Offset (0x60),
Offset (0x62),
PMS, 1,
PMP, 1,
Offset (0xD8),
, 30,
HPE, 1,
PCE, 1,
, 30,
HPS, 1,
PCS, 1
}
Method (CSS, 0, NotSerialized)
{
Store (One, PMS)
Store (One, PCS)
Store (One, PMS)
}
Method (SPRT, 1, NotSerialized)
{
CSS ()
Store (One, PCE)
CSS ()
}
Method (WPRT, 1, NotSerialized)
{
Store (Zero, PCE)
CSS ()
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x03))
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR12)
}
Return (PR12)
}
}
Device (PEX2)
{
Name (_ADR, 0x001C0002)
OperationRegion (PXRC, PCI_Config, Zero, 0x0100)
Field (PXRC, AnyAcc, NoLock, Preserve)
{
Offset (0x60),
Offset (0x62),
PMS, 1,
PMP, 1,
Offset (0xD8),
, 30,
HPE, 1,
PCE, 1,
, 30,
HPS, 1,
PCS, 1
}
Method (CSS, 0, NotSerialized)
{
Store (One, PMS)
Store (One, PCS)
Store (One, PMS)
}
Method (SPRT, 1, NotSerialized)
{
CSS ()
Store (One, PCE)
CSS ()
}
Method (WPRT, 1, NotSerialized)
{
Store (Zero, PCE)
CSS ()
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x04))
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR13)
}
Return (PR13)
}
}
Device (PEX3)
{
Name (_ADR, 0x001C0003)
OperationRegion (PXRC, PCI_Config, Zero, 0x0100)
Field (PXRC, AnyAcc, NoLock, Preserve)
{
Offset (0x60),
Offset (0x62),
PMS, 1,
PMP, 1,
Offset (0xD8),
, 30,
HPE, 1,
PCE, 1,
, 30,
HPS, 1,
PCS, 1
}
Method (CSS, 0, NotSerialized)
{
Store (One, PMS)
Store (One, PCS)
Store (One, PMS)
}
Method (SPRT, 1, NotSerialized)
{
CSS ()
Store (One, PCE)
CSS ()
}
Method (WPRT, 1, NotSerialized)
{
Store (Zero, PCE)
CSS ()
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x03))
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR14)
}
Return (PR14)
}
}
Device (PEX4)
{
Name (_ADR, 0x001C0004)
OperationRegion (PXRC, PCI_Config, Zero, 0x0100)
Field (PXRC, AnyAcc, NoLock, Preserve)
{
Offset (0x60),
Offset (0x62),
PMS, 1,
PMP, 1,
Offset (0xD8),
, 30,
HPE, 1,
PCE, 1,
, 30,
HPS, 1,
PCS, 1
}
Method (CSS, 0, NotSerialized)
{
Store (One, PMS)
Store (One, PCS)
Store (One, PMS)
}
Method (SPRT, 1, NotSerialized)
{
CSS ()
Store (One, PCE)
CSS ()
}
Method (WPRT, 1, NotSerialized)
{
Store (Zero, PCE)
CSS ()
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x03))
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR15)
}
Return (PR15)
}
}
Device (PEX5)
{
Name (_ADR, 0x001C0005)
OperationRegion (PXRC, PCI_Config, Zero, 0x0100)
Field (PXRC, AnyAcc, NoLock, Preserve)
{
Offset (0x60),
Offset (0x62),
PMS, 1,
PMP, 1,
Offset (0xD8),
, 30,
HPE, 1,
PCE, 1,
, 30,
HPS, 1,
PCS, 1
}
Method (CSS, 0, NotSerialized)
{
Store (One, PMS)
Store (One, PCS)
Store (One, PMS)
}
Method (SPRT, 1, NotSerialized)
{
CSS ()
Store (One, PCE)
CSS ()
}
Method (WPRT, 1, NotSerialized)
{
Store (Zero, PCE)
CSS ()
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x03))
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR16)
}
Return (PR16)
}
}
Device (PEX6)
{
Name (_ADR, 0x001C0006)
OperationRegion (PXRC, PCI_Config, Zero, 0x0100)
Field (PXRC, AnyAcc, NoLock, Preserve)
{
Offset (0x60),
Offset (0x62),
PMS, 1,
PMP, 1,
Offset (0xD8),
, 30,
HPE, 1,
PCE, 1,
, 30,
HPS, 1,
PCS, 1
}
Method (CSS, 0, NotSerialized)
{
Store (One, PMS)
Store (One, PCS)
Store (One, PMS)
}
Method (SPRT, 1, NotSerialized)
{
CSS ()
Store (One, PCE)
CSS ()
}
Method (WPRT, 1, NotSerialized)
{
Store (Zero, PCE)
CSS ()
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x03))
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR17)
}
Return (PR17)
}
}
Device (PEX7)
{
Name (_ADR, 0x001C0007)
OperationRegion (PXRC, PCI_Config, Zero, 0x0100)
Field (PXRC, AnyAcc, NoLock, Preserve)
{
Offset (0x60),
Offset (0x62),
PMS, 1,
PMP, 1,
Offset (0xD8),
, 30,
HPE, 1,
PCE, 1,
, 30,
HPS, 1,
PCS, 1
}
Method (CSS, 0, NotSerialized)
{
Store (One, PMS)
Store (One, PCS)
Store (One, PMS)
}
Method (SPRT, 1, NotSerialized)
{
CSS ()
Store (One, PCE)
CSS ()
}
Method (WPRT, 1, NotSerialized)
{
Store (Zero, PCE)
CSS ()
}
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x09, 0x03))
}
Method (_PRT, 0, NotSerialized)
{
If (PICM)
{
Return (AR18)
}
Return (PR18)
}
}
Device (GBE)
{
Name (_ADR, 0x00190000)
Method (_PRW, 0, NotSerialized)
{
Return (GPRW (0x0D, 0x04))
}
}
}
Scope (\_GPE)
{
Method (_L09, 0, NotSerialized)
{
Notify (\_SB.PCI0.P0P1, 0x02)
Notify (\_SB.PCI0.P0P2, 0x02)
Notify (\_SB.PCI0.P0P3, 0x02)
Notify (\_SB.PCI0.P0P4, 0x02)
Notify (\_SB.PCI0.P0P5, 0x02)
Notify (\_SB.PCI0.PEX0, 0x02)
Notify (\_SB.PCI0.PEX1, 0x02)
Notify (\_SB.PCI0.PEX2, 0x02)
Notify (\_SB.PCI0.PEX3, 0x02)
Notify (\_SB.PCI0.PEX4, 0x02)
Notify (\_SB.PCI0.PEX5, 0x02)
Notify (\_SB.PCI0.PEX6, 0x02)
Notify (\_SB.PCI0.PEX7, 0x02)
Notify (\_SB.PWRB, 0x02)
}
Method (_L0B, 0, NotSerialized)
{
Notify (\_SB.PCI0.BR20, 0x02)
Notify (\_SB.PWRB, 0x02)
}
Method (_L0D, 0, NotSerialized)
{
Notify (\_SB.PCI0.GBE, 0x02)
Notify (\_SB.PWRB, 0x02)
}
}
Device (PWRB)
{
Name (_HID, EisaId ("PNP0C0C"))
Name (_UID, 0xAA)
Name (_STA, 0x0B)
}
}
OperationRegion (_SB.PCI0.SBRG.PIX0, PCI_Config, 0x60, 0x0C)
Field (\_SB.PCI0.SBRG.PIX0, ByteAcc, NoLock, Preserve)
{
PIRA, 8,
PIRB, 8,
PIRC, 8,
PIRD, 8,
Offset (0x08),
PIRE, 8,
PIRF, 8,
PIRG, 8,
PIRH, 8
}
Scope (_SB)
{
Name (BUFA, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{15}
})
CreateWordField (BUFA, One, IRA0)
Device (LNKA)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, One)
Method (_STA, 0, NotSerialized)
{
And (PIRA, 0x80, Local0)
If (Local0)
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSA)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRA, 0x80, PIRA)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRA, 0x0F, Local0)
ShiftLeft (One, Local0, IRA0)
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)
{
And (PIRB, 0x80, Local0)
If (Local0)
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSB)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRB, 0x80, PIRB)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRB, 0x0F, Local0)
ShiftLeft (One, Local0, IRA0)
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)
{
And (PIRC, 0x80, Local0)
If (Local0)
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSC)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRC, 0x80, PIRC)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRC, 0x0F, Local0)
ShiftLeft (One, Local0, IRA0)
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)
{
And (PIRD, 0x80, Local0)
If (Local0)
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSD)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRD, 0x80, PIRD)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRD, 0x0F, Local0)
ShiftLeft (One, Local0, IRA0)
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)
{
And (PIRE, 0x80, Local0)
If (Local0)
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSE)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRE, 0x80, PIRE)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRE, 0x0F, Local0)
ShiftLeft (One, Local0, IRA0)
Return (BUFA)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, One, IRA)
FindSetRightBit (IRA, Local0)
Decrement (Local0)
Store (Local0, PIRE)
}
}
Device (LNKF)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x06)
Method (_STA, 0, NotSerialized)
{
And (PIRF, 0x80, Local0)
If (Local0)
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSF)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRF, 0x80, PIRF)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRF, 0x0F, Local0)
ShiftLeft (One, Local0, IRA0)
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, 0x07)
Method (_STA, 0, NotSerialized)
{
And (PIRG, 0x80, Local0)
If (Local0)
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSG)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRG, 0x80, PIRG)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRG, 0x0F, Local0)
ShiftLeft (One, Local0, IRA0)
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, 0x08)
Method (_STA, 0, NotSerialized)
{
And (PIRH, 0x80, Local0)
If (Local0)
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (PRSH)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRH, 0x80, PIRH)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRH, 0x0F, Local0)
ShiftLeft (One, Local0, IRA0)
Return (BUFA)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, One, IRA)
FindSetRightBit (IRA, Local0)
Decrement (Local0)
Store (Local0, PIRH)
}
}
}
Name (MISC, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
CreateByteField (MISC, Zero, MIS0)
CreateByteField (MISC, One, MIS1)
CreateByteField (MISC, 0x02, MIS2)
CreateByteField (MISC, 0x03, MIS3)
CreateByteField (MISC, 0x04, MIS4)
CreateByteField (MISC, 0x06, MIS6)
Scope (_PR)
{
OperationRegion (SSDT, SystemMemory, 0xAB622C18, 0x03A4)
Name (NCST, 0x02)
Name (NPSS, 0x0A)
Name (HNDL, 0x80000000)
Name (TNLP, 0x0004)
Name (CINT, Zero)
Name (PDCV, 0xFFFFFFFF)
Name (APSS, Package (0x0A)
{
Package (0x06)
{
0x095B,
0x00000DAC,
0x000A,
0x000A,
0x0013,
0x0013
},
Package (0x06)
{
0x095A,
0x00000C35,
0x000A,
0x000A,
0x0012,
0x0012
},
Package (0x06)
{
0x08D5,
0x00000A41,
0x000A,
0x000A,
0x0011,
0x0011
},
Package (0x06)
{
0x0850,
0x000008CA,
0x000A,
0x000A,
0x0010,
0x0010
},
Package (0x06)
{
0x07CB,
0x000007D0,
0x000A,
0x000A,
0x000F,
0x000F
},
Package (0x06)
{
0x0746,
0x00000659,
0x000A,
0x000A,
0x000E,
0x000E
},
Package (0x06)
{
0x06C1,
0x0000055F,
0x000A,
0x000A,
0x000D,
0x000D
},
Package (0x06)
{
0x063C,
0x000004E2,
0x000A,
0x000A,
0x000C,
0x000C
},
Package (0x06)
{
0x05B7,
0x000003E8,
0x000A,
0x000A,
0x000B,
0x000B
},
Package (0x06)
{
0x04AD,
0x000002EE,
0x000A,
0x000A,
0x0009,
0x0009
}
})
Name (PTCI, Package (0x02)
{
ResourceTemplate ()
{
Register (SystemIO,
0x04, // Bit Width
0x01, // Bit Offset
0x0000000000000410, // Address
,)
},
ResourceTemplate ()
{
Register (SystemIO,
0x04, // Bit Width
0x01, // Bit Offset
0x0000000000000410, // Address
,)
}
})
Name (\PSTE, Zero)
Name (\TSTE, Zero)
Name (TSSI, Package (0x01)
{
Package (0x05)
{
0x64,
0x03E8,
Zero,
Zero,
Zero
}
})
Name (TSSM, Package (0x08)
{
Package (0x05)
{
0x64,
0x03E8,
Zero,
Zero,
Zero
},
Package (0x05)
{
0x58,
0x036B,
Zero,
0x1E,
Zero
},
Package (0x05)
{
0x4B,
0x02EE,
Zero,
0x1C,
Zero
},
Package (0x05)
{
0x3F,
0x0271,
Zero,
0x1A,
Zero
},
Package (0x05)
{
0x32,
0x01F4,
Zero,
0x18,
Zero
},
Package (0x05)
{
0x26,
0x0177,
Zero,
0x16,
Zero
},
Package (0x05)
{
0x19,
0xFA,
Zero,
0x14,
Zero
},
Package (0x05)
{
0x0D,
0x7D,
Zero,
0x12,
Zero
}
})
Name (C1ST, Package (0x02)
{
One,
Package (0x04)
{
ResourceTemplate ()
{
Register (FFixedHW,
0x00, // Bit Width
0x00, // Bit Offset
0x0000000000000000, // Address
,)
},
0x01,
0x03,
0x03E8
}
})
Name (CMST, Package (0x04)
{
0x03,
Package (0x04)
{
ResourceTemplate ()
{
Register (FFixedHW,
0x00, // Bit Width
0x00, // Bit Offset
0x0000000000000000, // Address
,)
},
0x01,
0x03,
0x03E8
},
Package (0x04)
{
ResourceTemplate ()
{
Register (FFixedHW,
0x01, // Bit Width
0x02, // Bit Offset
0x0000000000000010, // Address
0x03, // Access Size
)
},
0x02,
0xCD,
0x01F4
},
Package (0x04)
{
ResourceTemplate ()
{
Register (FFixedHW,
0x01, // Bit Width
0x02, // Bit Offset
0x0000000000000020, // Address
0x03, // Access Size
)
},
0x03,
0xF5,
0x015E
}
})
Name (CIST, Package (0x04)
{
0x03,
Package (0x04)
{
ResourceTemplate ()
{
Register (FFixedHW,
0x00, // Bit Width
0x00, // Bit Offset
0x0000000000000000, // Address
,)
},
0x01,
0x03,
0x03E8
},
Package (0x04)
{
ResourceTemplate ()
{
Register (SystemIO,
0x08, // Bit Width
0x00, // Bit Offset
0x0000000000000414, // Address
,)
},
0x02,
0xCD,
0x01F4
},
Package (0x04)
{
ResourceTemplate ()
{
Register (SystemIO,
0x08, // Bit Width
0x00, // Bit Offset
0x0000000000000415, // Address
,)
},
0x03,
0xF5,
0x015E
}
})
Method (CST, 0, NotSerialized)
{
If (LNotEqual (And (PDCV, 0x0200), 0x0200))
{
If (LEqual (NCST, 0x02))
{
Store (One, NCST)
}
}
If (LEqual (NCST, Zero))
{
Return (C1ST)
}
If (LEqual (NCST, One))
{
Return (CIST)
}
If (LEqual (NCST, 0x02))
{
Return (CMST)
}
Return (C1ST)
}
Method (PDC, 1, NotSerialized)
{
CreateDWordField (Arg0, Zero, REVS)
CreateDWordField (Arg0, 0x04, SIZE)
Store (SizeOf (Arg0), Local0)
Store (Subtract (Local0, 0x08), Local1)
CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP)
Name (STS0, Buffer (0x04)
{
0x00, 0x00, 0x00, 0x00
})
Concatenate (STS0, TEMP, Local2)
OSC (Buffer (0x10)
{
/* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47,
/* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53
}, REVS, SIZE, Local2)
}
Method (OSC, 4, NotSerialized)
{
CreateDWordField (Arg3, Zero, STS)
CreateDWordField (Arg3, 0x04, CAP)
CreateDWordField (Arg0, Zero, IID0)
CreateDWordField (Arg0, 0x04, IID1)
CreateDWordField (Arg0, 0x08, IID2)
CreateDWordField (Arg0, 0x0C, IID3)
Name (UID0, Buffer (0x10)
{
/* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47,
/* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53
})
CreateDWordField (UID0, Zero, EID0)
CreateDWordField (UID0, 0x04, EID1)
CreateDWordField (UID0, 0x08, EID2)
CreateDWordField (UID0, 0x0C, EID3)
If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)),
LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3)))))
{
Store (0x06, Index (STS, Zero))
Return (Arg3)
}
And (PDCV, CAP, PDCV)
If (LEqual (CINT, Zero))
{
Store (One, CINT)
If (LEqual (And (PDCV, 0x09), 0x09))
{
If (LNotEqual (NPSS, Zero))
{
Load (SSDT, HNDL)
}
}
}
Return (Arg3)
}
}
Scope (_SB)
{
Scope (PCI0)
{
Device (HPET)
{
Name (_HID, EisaId ("PNP0103"))
Name (CRS, ResourceTemplate ()
{
Memory32Fixed (ReadWrite,
0xFED00000, // Address Base
0x00000400, // Address Length
)
})
OperationRegion (HCNT, SystemMemory, HPTC, 0x04)
Field (HCNT, DWordAcc, NoLock, Preserve)
{
HPTS, 2,
, 5,
HPTE, 1
}
Method (_STA, 0, NotSerialized)
{
If (HPTE)
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_CRS, 0, NotSerialized)
{
CreateDWordField (CRS, 0x04, HTBS)
Multiply (HPTS, 0x1000, Local0)
Add (Local0, 0xFED00000, HTBS)
Return (CRS)
}
}
}
}
Scope (_SB)
{
Scope (PCI0)
{
Method (_INI, 0, NotSerialized)
{
}
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
0x00000000, // Range Minimum
0x00000000, // Range Maximum
0x00000000, // Translation Offset
0x00000000, // Length
,, , AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x00000000, // Range Minimum
0x00000000, // Range Maximum
0x00000000, // Translation Offset
0x00000000, // Length
,, , AddressRangeMemory, TypeStatic)
})
CreateDWordField (CRS, 0x5C, MIN5)
CreateDWordField (CRS, 0x60, MAX5)
CreateDWordField (CRS, 0x68, LEN5)
CreateDWordField (CRS, 0x76, MIN6)
CreateDWordField (CRS, 0x7A, MAX6)
CreateDWordField (CRS, 0x82, LEN6)
Method (_CRS, 0, NotSerialized)
{
Store (MG1L, Local0)
If (Local0)
{
Store (MG1B, MIN5)
Store (MG1L, LEN5)
Add (MIN5, Decrement (Local0), MAX5)
}
Store (MG2B, MIN6)
Store (MG2L, LEN6)
Store (MG2L, Local0)
Add (MIN6, Decrement (Local0), MAX6)
Return (CRS)
}
}
}
Name (WOTB, Zero)
Name (WSSB, Zero)
Name (WAXB, Zero)
Method (_PTS, 1, NotSerialized)
{
Store (Arg0, DBG8)
If (LAnd (LEqual (Arg0, 0x04), LEqual (OSFL (), 0x02)))
{
Sleep (0x0BB8)
}
PTS (Arg0)
Store (Zero, Index (WAKP, Zero))
Store (Zero, Index (WAKP, One))
Store (ASSB, WSSB)
Store (AOTB, WOTB)
Store (AAXB, WAXB)
Store (Arg0, ASSB)
Store (OSFL (), AOTB)
Store (Zero, AAXB)
Store (One, \_SB.SLPS)
}
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)
}
Scope (_SB)
{
Scope (PCI0)
{
Method (_OSC, 4, NotSerialized)
{
Name (SUPP, Zero)
Name (CTRL, Zero)
CreateDWordField (Arg3, Zero, CDW1)
CreateDWordField (Arg3, 0x04, CDW2)
CreateDWordField (Arg3, 0x08, CDW3)
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40,
/* 0008 */ 0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66
}))
{
Store (CDW2, SUPP)
Store (CDW3, CTRL)
If (LNotEqual (And (SUPP, 0x16), 0x16))
{
And (CTRL, 0x1E, CTRL)
}
If (LNot (PEHP))
{
And (CTRL, 0x1E, CTRL)
}
If (LNot (SHPC))
{
And (CTRL, 0x1D, CTRL)
}
If (LNot (PEPM))
{
And (CTRL, 0x1B, CTRL)
}
If (LNot (PEER))
{
And (CTRL, 0x15, CTRL)
}
If (LNot (PECS))
{
And (CTRL, 0x0F, CTRL)
}
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)
}
}
}
}
Device (OMSC)
{
Name (_HID, EisaId ("PNP0C02"))
Name (_UID, 0x0E11)
}
Device (_SB.RMEM)
{
Name (_HID, EisaId ("PNP0C01"))
Name (_UID, One)
}
OperationRegion (PRT0, SystemIO, 0x80, 0x04)
Field (PRT0, DWordAcc, Lock, Preserve)
{
P80H, 32
}
Method (P8XH, 2, Serialized)
{
If (LEqual (Arg0, Zero))
{
Store (Or (And (P80D, 0xFFFFFF00), Arg1), P80D)
}
If (LEqual (Arg0, One))
{
Store (Or (And (P80D, 0xFFFF00FF), ShiftLeft (Arg1, 0x08)
), P80D)
}
If (LEqual (Arg0, 0x02))
{
Store (Or (And (P80D, 0xFF00FFFF), ShiftLeft (Arg1, 0x10)
), P80D)
}
If (LEqual (Arg0, 0x03))
{
Store (Or (And (P80D, 0x00FFFFFF), ShiftLeft (Arg1, 0x18)
), P80D)
}
Store (P80D, P80H)
}
OperationRegion (SPRT, SystemIO, 0xB2, 0x02)
Field (SPRT, ByteAcc, Lock, Preserve)
{
SSMP, 8
}
Method (GETB, 3, Serialized)
{
Multiply (Arg0, 0x08, Local0)
Multiply (Arg1, 0x08, Local1)
CreateField (Arg2, Local0, Local1, TBF3)
Return (TBF3)
}
Method (PNOT, 0, Serialized)
{
}
Method (BRTN, 1, Serialized)
{
If (LEqual (And (DID1, 0x0F00), 0x0400))
{
Notify (\_SB.PCI0.GFX0.DD01, Arg0)
}
If (LEqual (And (DID2, 0x0F00), 0x0400))
{
Notify (\_SB.PCI0.GFX0.DD02, Arg0)
}
If (LEqual (And (DID3, 0x0F00), 0x0400))
{
Notify (\_SB.PCI0.GFX0.DD03, Arg0)
}
If (LEqual (And (DID4, 0x0F00), 0x0400))
{
Notify (\_SB.PCI0.GFX0.DD04, Arg0)
}
If (LEqual (And (DID5, 0x0F00), 0x0400))
{
Notify (\_SB.PCI0.GFX0.DD05, Arg0)
}
If (LEqual (And (DID6, 0x0F00), 0x0400))
{
Notify (\_SB.PCI0.GFX0.DD06, Arg0)
}
If (LEqual (And (DID7, 0x0F00), 0x0400))
{
Notify (\_SB.PCI0.GFX0.DD07, Arg0)
}
If (LEqual (And (DID8, 0x0F00), 0x0400))
{
Notify (\_SB.PCI0.GFX0.DD08, Arg0)
}
}
Scope (_SB.PCI0)
{
Device (GFX0)
{
Scope (^^PCI0)
{
OperationRegion (MCHP, PCI_Config, 0x40, 0xC0)
Field (MCHP, AnyAcc, NoLock, Preserve)
{
Offset (0x60),
TASM, 10,
Offset (0x62)
}
}
Scope (\_SB.PCI0.GFX0)
{
OperationRegion (IGDP, PCI_Config, 0x40, 0xC0)
Field (IGDP, AnyAcc, NoLock, Preserve)
{
Offset (0x12),
, 1,
GIVD, 1,
, 2,
GUMA, 3,
Offset (0x14),
, 4,
GMFN, 1,
Offset (0x18),
Offset (0xA4),
ASLE, 8,
Offset (0xA8),
GSSE, 1,
GSSB, 14,
GSES, 1,
Offset (0xB0),
, 12,
CDVL, 1,
Offset (0xB2),
Offset (0xB5),
LBPC, 8,
Offset (0xBC),
ASLS, 32
}
}
Name (M512, 0x04)
Name (M1GB, 0x08)
OperationRegion (IGDM, SystemMemory, ASLB, 0x2000)
Field (IGDM, AnyAcc, NoLock, Preserve)
{
SIGN, 128,
SIZE, 32,
OVER, 32,
SVER, 256,
VVER, 128,
GVER, 128,
MBOX, 32,
DMOD, 32,
Offset (0xE0),
KSV0, 32,
KSV1, 8,
CSTE, 16,
NSTE, 16,
Offset (0xF0),
Offset (0x100),
DRDY, 32,
CSTS, 32,
CEVT, 32,
Offset (0x120),
DIDL, 32,
DDL2, 32,
DDL3, 32,
DDL4, 32,
DDL5, 32,
DDL6, 32,
DDL7, 32,
DDL8, 32,
CPDL, 32,
CPL2, 32,
CPL3, 32,
CPL4, 32,
CPL5, 32,
CPL6, 32,
CPL7, 32,
CPL8, 32,
CADL, 32,
CAL2, 32,
CAL3, 32,
CAL4, 32,
CAL5, 32,
CAL6, 32,
CAL7, 32,
CAL8, 32,
NADL, 32,
NDL2, 32,
NDL3, 32,
NDL4, 32,
NDL5, 32,
NDL6, 32,
NDL7, 32,
NDL8, 32,
ASLP, 32,
TIDX, 32,
CHPD, 32,
CLID, 32,
CDCK, 32,
SXSW, 32,
EVTS, 32,
CNOT, 32,
NRDY, 32,
Offset (0x200),
SCIE, 1,
GEFC, 4,
GXFC, 3,
GESF, 8,
Offset (0x204),
PARM, 32,
DSLP, 32,
Offset (0x300),
ARDY, 32,
ASLC, 32,
TCHE, 32,
ALSI, 32,
BCLP, 32,
PFIT, 32,
CBLV, 32,
BCLM, 320,
CPFM, 32,
EPFM, 32,
PLUT, 592,
PFMB, 32,
CCDV, 32,
PCFT, 32,
Offset (0x400),
GVD1, 49152,
PHED, 32,
BDDC, 2048
}
OperationRegion (TCOI, SystemIO, TOBS, 0x08)
Field (TCOI, WordAcc, NoLock, Preserve)
{
Offset (0x04),
, 9,
SCIS, 1,
Offset (0x06)
}
Name (DBTB, Package (0x15)
{
Zero,
0x07,
0x38,
0x01C0,
0x0E00,
0x3F,
0x01C7,
0x0E07,
0x01F8,
0x0E38,
0x0FC0,
Zero,
Zero,
Zero,
Zero,
Zero,
0x7000,
0x7007,
0x7038,
0x71C0,
0x7E00
})
Name (CDCT, Package (0x05)
{
Package (0x02)
{
0xE4,
0x0140
},
Package (0x02)
{
0xDE,
0x014D
},
Package (0x02)
{
0xDE,
0x014D
},
Package (0x02)
{
Zero,
Zero
},
Package (0x02)
{
0xDE,
0x014D
}
})
Name (SUCC, One)
Name (NVLD, 0x02)
Name (CRIT, 0x04)
Name (NCRT, 0x06)
Method (GSCI, 0, NotSerialized)
{
If (LEqual (GEFC, 0x04))
{
Store (GBDA (), GXFC)
}
If (LEqual (GEFC, 0x06))
{
Store (SBCB (), GXFC)
}
Store (Zero, GEFC)
Store (One, SCIS)
Store (Zero, GSSE)
Store (Zero, SCIE)
Return (Zero)
}
Method (GBDA, 0, Serialized)
{
If (LEqual (GESF, Zero))
{
Store (0x0679, PARM)
Store (Zero, GESF)
Return (SUCC)
}
If (LEqual (GESF, One))
{
Store (0x0240, PARM)
Store (Zero, GESF)
Return (SUCC)
}
If (LEqual (GESF, 0x04))
{
And (PARM, 0xEFFF0000, PARM)
And (PARM, ShiftLeft (DerefOf (Index (DBTB, IBTT)), 0x10),
PARM)
Or (IBTT, PARM, PARM)
Store (Zero, GESF)
Return (SUCC)
}
If (LEqual (GESF, 0x05))
{
Store (IPSC, PARM)
Or (PARM, ShiftLeft (IPAT, 0x08), PARM)
Add (PARM, 0x0100, PARM)
Or (PARM, ShiftLeft (LIDS, 0x10), PARM)
Add (PARM, 0x00010000, PARM)
Or (PARM, ShiftLeft (IBIA, 0x14), PARM)
Store (Zero, GESF)
Return (SUCC)
}
If (LEqual (GESF, 0x06))
{
Store (ITVF, PARM)
Or (PARM, ShiftLeft (ITVM, 0x04), PARM)
Store (Zero, GESF)
Return (SUCC)
}
If (LEqual (GESF, 0x07))
{
Store (GIVD, PARM)
XOr (PARM, One, PARM)
Or (PARM, ShiftLeft (GMFN, One), PARM)
Or (PARM, 0x1800, PARM)
Or (PARM, ShiftLeft (IDMS, 0x11), PARM)
Or (ShiftLeft (DerefOf (Index (DerefOf (Index (CDCT, HVCO)), CDVL
)), 0x15), PARM, PARM)
Store (One, GESF)
Return (SUCC)
}
If (LEqual (GESF, 0x0A))
{
Store (Zero, PARM)
If (ISSC)
{
Or (PARM, 0x03, PARM)
}
Store (Zero, GESF)
Return (SUCC)
}
If (LEqual (GESF, 0x0B))
{
Store (KSV0, PARM)
Store (KSV1, GESF)
Return (SUCC)
}
Store (Zero, GESF)
Return (CRIT)
}
Method (SBCB, 0, Serialized)
{
If (LEqual (GESF, Zero))
{
Store (Zero, PARM)
Store (0x000F87FD, PARM)
Store (Zero, GESF)
Return (SUCC)
}
If (LEqual (GESF, One))
{
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x03))
{
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x04))
{
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x05))
{
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x06))
{
Store (And (PARM, 0x0F), ITVF)
Store (ShiftRight (And (PARM, 0xF0), 0x04), ITVM)
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x07))
{
If (LEqual (PARM, Zero))
{
Store (CLID, Local0)
If (And (0x80000000, Local0))
{
And (CLID, 0x0F, CLID)
GLID (CLID)
}
}
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x08))
{
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x09))
{
And (PARM, 0xFF, IBTT)
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x0A))
{
And (PARM, 0xFF, IPSC)
If (And (ShiftRight (PARM, 0x08), 0xFF))
{
And (ShiftRight (PARM, 0x08), 0xFF, IPAT)
Decrement (IPAT)
}
And (ShiftRight (PARM, 0x14), 0x07, IBIA)
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x0B))
{
And (ShiftRight (PARM, One), One, IF1E)
If (And (PARM, 0x0001E000))
{
And (ShiftRight (PARM, 0x0D), 0x0F, IDMS)
}
Else
{
And (ShiftRight (PARM, 0x11), 0x0F, IDMS)
}
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x10))
{
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x11))
{
Store (ShiftLeft (LIDS, 0x08), PARM)
Add (PARM, 0x0100, PARM)
Store (Zero, GESF)
Return (SUCC)
}
If (LEqual (GESF, 0x12))
{
If (And (PARM, One))
{
If (LEqual (ShiftRight (PARM, One), One))
{
Store (One, ISSC)
}
Else
{
Store (Zero, GESF)
Return (CRIT)
}
}
Else
{
Store (Zero, ISSC)
}
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x13))
{
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
If (LEqual (GESF, 0x14))
{
And (PARM, 0x0F, PAVP)
Store (Zero, GESF)
Store (Zero, PARM)
Return (SUCC)
}
Store (Zero, GESF)
Return (SUCC)
}
Method (PDRD, 0, NotSerialized)
{
If (LNot (DRDY))
{
Sleep (ASLP)
}
Return (LNot (DRDY))
}
Method (PSTS, 0, NotSerialized)
{
If (LGreater (CSTS, 0x02))
{
Sleep (ASLP)
}
Return (LEqual (CSTS, 0x03))
}
Method (OSYS, 0, NotSerialized)
{
Store (0x07D0, Local1)
If (CondRefOf (_OSI, Local0))
{
If (_OSI ("Linux"))
{
Store (0x03E8, Local1)
}
If (_OSI ("Windows 2001"))
{
Store (0x07D1, Local1)
}
If (_OSI ("Windows 2001 SP1"))
{
Store (0x07D1, Local1)
}
If (_OSI ("Windows 2001 SP2"))
{
Store (0x07D2, Local1)
}
If (_OSI ("Windows 2006"))
{
Store (0x07D6, Local1)
}
If (_OSI ("Windows 2009"))
{
Store (0x07D9, Local1)
}
}
Return (Local1)
}
Method (GNOT, 2, NotSerialized)
{
If (PDRD ())
{
Return (One)
}
Store (Arg0, CEVT)
Store (0x03, CSTS)
If (LAnd (LEqual (CHPD, Zero), LEqual (Arg1, Zero)))
{
If (LOr (LGreater (OSYS (), 0x07D0), LLess (OSYS (), 0x07D6)))
{
Notify (PCI0, Arg1)
}
Else
{
Notify (GFX0, Arg1)
}
}
If (CondRefOf (HNOT))
{
HNOT (Arg0)
}
Else
{
Notify (GFX0, 0x80)
}
Return (Zero)
}
Method (GHDS, 1, NotSerialized)
{
Store (Arg0, TIDX)
Return (GNOT (One, Zero))
}
Method (GLID, 1, NotSerialized)
{
Store (Arg0, CLID)
Return (GNOT (0x02, Zero))
}
Method (GDCK, 1, NotSerialized)
{
Store (Arg0, CDCK)
Return (GNOT (0x04, Zero))
}
Method (PARD, 0, NotSerialized)
{
If (LNot (ARDY))
{
Sleep (ASLP)
}
Return (LNot (ARDY))
}
Method (AINT, 2, NotSerialized)
{
If (LNot (And (TCHE, ShiftLeft (One, Arg0))))
{
Return (One)
}
If (PARD ())
{
Return (One)
}
If (LEqual (Arg0, 0x02))
{
If (CPFM)
{
And (CPFM, 0x0F, Local0)
And (EPFM, 0x0F, Local1)
If (LEqual (Local0, One))
{
If (And (Local1, 0x06))
{
Store (0x06, PFIT)
}
Else
{
If (And (Local1, 0x08))
{
Store (0x08, PFIT)
}
Else
{
Store (One, PFIT)
}
}
}
If (LEqual (Local0, 0x06))
{
If (And (Local1, 0x08))
{
Store (0x08, PFIT)
}
Else
{
If (And (Local1, One))
{
Store (One, PFIT)
}
Else
{
Store (0x06, PFIT)
}
}
}
If (LEqual (Local0, 0x08))
{
If (And (Local1, One))
{
Store (One, PFIT)
}
Else
{
If (And (Local1, 0x06))
{
Store (0x06, PFIT)
}
Else
{
Store (0x08, PFIT)
}
}
}
}
Else
{
XOr (PFIT, 0x07, PFIT)
}
Or (PFIT, 0x80000000, PFIT)
Store (0x04, ASLC)
}
Else
{
If (LEqual (Arg0, One))
{
Store (Divide (Multiply (Arg1, 0xFF), 0x64, ), BCLP)
Or (BCLP, 0x80000000, BCLP)
Store (0x02, ASLC)
}
Else
{
If (LEqual (Arg0, Zero))
{
Store (Arg1, ALSI)
Store (One, ASLC)
}
Else
{
Return (One)
}
}
}
Store (One, ASLE)
Return (Zero)
}
Method (SCIP, 0, NotSerialized)
{
If (LNotEqual (OVER, Zero))
{
Return (LNot (GSMI))
}
Return (Zero)
}
Method (OPTS, 1, NotSerialized)
{
}
Method (OWAK, 1, NotSerialized)
{
Store (One, GSES)
}
}
}
Scope (_GPE)
{
Method (_L06, 0, NotSerialized)
{
\_SB.PCI0.GFX0.GSCI ()
}
}
Scope (_SB.PCI0.GFX0)
{
Name (_ADR, 0x00020000)
Method (_DOS, 1, NotSerialized)
{
Store (And (Arg0, 0x07), DSEN)
}
Method (_DOD, 0, NotSerialized)
{
If (CondRefOf (IDAB))
{
IDAB ()
}
Else
{
Store (Zero, NDID)
If (LNotEqual (DIDL, Zero))
{
Store (SDDL (DID1), DID1)
}
If (LNotEqual (DDL2, Zero))
{
Store (SDDL (DID2), DID2)
}
If (LNotEqual (DDL3, Zero))
{
Store (SDDL (DID3), DID3)
}
If (LNotEqual (DDL4, Zero))
{
Store (SDDL (DID4), DID4)
}
If (LNotEqual (DDL5, Zero))
{
Store (SDDL (DID5), DID5)
}
}
If (LEqual (NDID, One))
{
Name (TMP1, Package (0x01)
{
0xFFFFFFFF
})
Store (DID1, Index (TMP1, Zero))
Return (TMP1)
}
If (LEqual (NDID, 0x02))
{
Name (TMP2, Package (0x02)
{
0xFFFFFFFF,
0xFFFFFFFF
})
Store (DID1, Index (TMP2, Zero))
Store (DID2, Index (TMP2, One))
Return (TMP2)
}
If (LEqual (NDID, 0x03))
{
Name (TMP3, Package (0x03)
{
0xFFFFFFFF,
0xFFFFFFFF,
0xFFFFFFFF
})
Store (DID1, Index (TMP3, Zero))
Store (DID2, Index (TMP3, One))
Store (DID3, Index (TMP3, 0x02))
Return (TMP3)
}
If (LEqual (NDID, 0x04))
{
Name (TMP4, Package (0x04)
{
0xFFFFFFFF,
0xFFFFFFFF,
0xFFFFFFFF,
0xFFFFFFFF
})
Store (Or (0x00010000, DID1), Index (TMP4, Zero))
Store (Or (0x00010000, DID2), Index (TMP4, One))
Store (Or (0x00010000, DID3), Index (TMP4, 0x02))
Store (Or (0x00010000, DID4), Index (TMP4, 0x03))
Return (TMP4)
}
If (CondRefOf (NNAB))
{
Return (NNAB)
}
Else
{
If (LGreater (NDID, 0x04))
{
Name (TMP5, Package (0x05)
{
0xFFFFFFFF,
0xFFFFFFFF,
0xFFFFFFFF,
0xFFFFFFFF,
0xFFFFFFFF
})
Store (Or (0x00010000, DID1), Index (TMP5, Zero))
Store (Or (0x00010000, DID2), Index (TMP5, One))
Store (Or (0x00010000, DID3), Index (TMP5, 0x02))
Store (Or (0x00010000, DID4), Index (TMP5, 0x03))
Store (Or (0x00010000, DID5), Index (TMP5, 0x04))
Return (TMP5)
}
}
Return (Package (0x01)
{
0x0400
})
}
Device (DD01)
{
Method (_ADR, 0, Serialized)
{
If (LEqual (DID1, Zero))
{
Return (One)
}
Else
{
Return (And (0xFFFF, DID1))
}
}
Method (_DCS, 0, NotSerialized)
{
Return (CDDS (DID1))
}
Method (_DGS, 0, NotSerialized)
{
Return (NDDS (DID1))
}
Method (_DSS, 1, NotSerialized)
{
If (LEqual (And (Arg0, 0xC0000000), 0xC0000000))
{
Store (NSTE, CSTE)
}
}
}
Device (DD02)
{
Method (_ADR, 0, Serialized)
{
If (LEqual (DID2, Zero))
{
Return (0x02)
}
Else
{
Return (And (0xFFFF, DID2))
}
}
Method (_DCS, 0, NotSerialized)
{
Return (CDDS (DID2))
}
Method (_DGS, 0, NotSerialized)
{
Return (NDDS (DID2))
}
Method (_DSS, 1, NotSerialized)
{
If (LEqual (And (Arg0, 0xC0000000), 0xC0000000))
{
Store (NSTE, CSTE)
}
}
Method (_BCL, 0, NotSerialized)
{
Return (BCLS)
}
Method (_BCM, 1, NotSerialized)
{
If (LAnd (LGreaterEqual (Arg0, Zero), LLessEqual (Arg0, 0x64)))
{
AINT (One, Arg0)
Store (Arg0, BRTL)
}
}
Method (_BQC, 0, NotSerialized)
{
Return (BRTL)
}
}
Device (DD03)
{
Method (_ADR, 0, Serialized)
{
If (LEqual (DID3, Zero))
{
Return (0x03)
}
Else
{
Return (And (0xFFFF, DID3))
}
}
Method (_DCS, 0, NotSerialized)
{
If (LEqual (DID3, Zero))
{
Return (0x0B)
}
Else
{
Return (CDDS (DID3))
}
}
Method (_DGS, 0, NotSerialized)
{
Return (NDDS (DID3))
}
Method (_DSS, 1, NotSerialized)
{
If (LEqual (And (Arg0, 0xC0000000), 0xC0000000))
{
Store (NSTE, CSTE)
}
}
}
Device (DD04)
{
Method (_ADR, 0, Serialized)
{
If (LEqual (DID4, Zero))
{
Return (0x04)
}
Else
{
Return (And (0xFFFF, DID4))
}
}
Method (_DCS, 0, NotSerialized)
{
If (LEqual (DID4, Zero))
{
Return (0x0B)
}
Else
{
Return (CDDS (DID4))
}
}
Method (_DGS, 0, NotSerialized)
{
Return (NDDS (DID4))
}
Method (_DSS, 1, NotSerialized)
{
If (LEqual (And (Arg0, 0xC0000000), 0xC0000000))
{
Store (NSTE, CSTE)
}
}
}
Device (DD05)
{
Method (_ADR, 0, Serialized)
{
If (LEqual (DID5, Zero))
{
Return (0x05)
}
Else
{
Return (And (0xFFFF, DID5))
}
}
Method (_DCS, 0, NotSerialized)
{
If (LEqual (DID5, Zero))
{
Return (0x0B)
}
Else
{
Return (CDDS (DID5))
}
}
Method (_DGS, 0, NotSerialized)
{
Return (NDDS (DID5))
}
Method (_DSS, 1, NotSerialized)
{
If (LEqual (And (Arg0, 0xC0000000), 0xC0000000))
{
Store (NSTE, CSTE)
}
}
}
Device (DD06)
{
Method (_ADR, 0, Serialized)
{
If (LEqual (DID6, Zero))
{
Return (0x06)
}
Else
{
Return (And (0xFFFF, DID6))
}
}
Method (_DCS, 0, NotSerialized)
{
If (LEqual (DID6, Zero))
{
Return (0x0B)
}
Else
{
Return (CDDS (DID6))
}
}
Method (_DGS, 0, NotSerialized)
{
Return (NDDS (DID6))
}
Method (_DSS, 1, NotSerialized)
{
If (LEqual (And (Arg0, 0xC0000000), 0xC0000000))
{
Store (NSTE, CSTE)
}
}
}
Device (DD07)
{
Method (_ADR, 0, Serialized)
{
If (LEqual (DID7, Zero))
{
Return (0x07)
}
Else
{
Return (And (0xFFFF, DID7))
}
}
Method (_DCS, 0, NotSerialized)
{
If (LEqual (DID7, Zero))
{
Return (0x0B)
}
Else
{
Return (CDDS (DID7))
}
}
Method (_DGS, 0, NotSerialized)
{
Return (NDDS (DID7))
}
Method (_DSS, 1, NotSerialized)
{
If (LEqual (And (Arg0, 0xC0000000), 0xC0000000))
{
Store (NSTE, CSTE)
}
}
}
Device (DD08)
{
Method (_ADR, 0, Serialized)
{
If (LEqual (DID8, Zero))
{
Return (0x08)
}
Else
{
Return (And (0xFFFF, DID8))
}
}
Method (_DCS, 0, NotSerialized)
{
If (LEqual (DID8, Zero))
{
Return (0x0B)
}
Else
{
Return (CDDS (DID8))
}
}
Method (_DGS, 0, NotSerialized)
{
Return (NDDS (DID8))
}
Method (_DSS, 1, NotSerialized)
{
If (LEqual (And (Arg0, 0xC0000000), 0xC0000000))
{
Store (NSTE, CSTE)
}
}
}
Method (SDDL, 1, NotSerialized)
{
Increment (NDID)
Store (And (Arg0, 0x0F0F), Local0)
Or (0x80000000, Local0, Local1)
If (LEqual (DIDL, Local0))
{
Return (Local1)
}
If (LEqual (DDL2, Local0))
{
Return (Local1)
}
If (LEqual (DDL3, Local0))
{
Return (Local1)
}
If (LEqual (DDL4, Local0))
{
Return (Local1)
}
If (LEqual (DDL5, Local0))
{
Return (Local1)
}
If (LEqual (DDL6, Local0))
{
Return (Local1)
}
If (LEqual (DDL7, Local0))
{
Return (Local1)
}
If (LEqual (DDL8, Local0))
{
Return (Local1)
}
Return (Zero)
}
Method (CDDS, 1, NotSerialized)
{
Store (And (Arg0, 0x0F0F), Local0)
If (LEqual (Zero, Local0))
{
Return (0x1D)
}
If (LEqual (CADL, Local0))
{
Return (0x1F)
}
If (LEqual (CAL2, Local0))
{
Return (0x1F)
}
If (LEqual (CAL3, Local0))
{
Return (0x1F)
}
If (LEqual (CAL4, Local0))
{
Return (0x1F)
}
If (LEqual (CAL5, Local0))
{
Return (0x1F)
}
If (LEqual (CAL6, Local0))
{
Return (0x1F)
}
If (LEqual (CAL7, Local0))
{
Return (0x1F)
}
If (LEqual (CAL8, Local0))
{
Return (0x1F)
}
Return (0x1D)
}
Method (NDDS, 1, NotSerialized)
{
Store (And (Arg0, 0x0F0F), Local0)
If (LEqual (Zero, Local0))
{
Return (Zero)
}
If (LEqual (NADL, Local0))
{
Return (One)
}
If (LEqual (NDL2, Local0))
{
Return (One)
}
If (LEqual (NDL3, Local0))
{
Return (One)
}
If (LEqual (NDL4, Local0))
{
Return (One)
}
If (LEqual (NDL5, Local0))
{
Return (One)
}
If (LEqual (NDL6, Local0))
{
Return (One)
}
If (LEqual (NDL7, Local0))
{
Return (One)
}
If (LEqual (NDL8, Local0))
{
Return (One)
}
Return (Zero)
}
}
Device (_SB.PCI0.SBRG.TPM)
{
Name (_HID, EisaId ("PNP0C31"))
Name (_STR, Unicode ("TPM 1.2 Device"))
Name (_UID, One)
Name (_CRS, ResourceTemplate ()
{
Memory32Fixed (ReadOnly,
0xFED40000, // Address Base
0x00005000, // Address Length
)
})
OperationRegion (TMMB, SystemMemory, 0xFED40000, 0x1000)
Field (TMMB, ByteAcc, Lock, Preserve)
{
ACCS, 8,
Offset (0x18),
TSTA, 8,
TBCA, 8,
Offset (0xF00),
TVID, 16,
TDID, 16
}
Method (_STA, 0, NotSerialized)
{
If (LEqual (VIDT, 0x8086))
{
Return (Zero)
}
Else
{
If (TPMF)
{
Return (0x0F)
}
Return (Zero)
}
}
}
Scope (_SB.PCI0.SBRG.TPM)
{
OperationRegion (CMSR, SystemIO, 0x72, 0x02)
Field (CMSR, ByteAcc, NoLock, Preserve)
{
INQ, 8,
DAQ, 8
}
IndexField (INQ, DAQ, ByteAcc, NoLock, Preserve)
{
Offset (0x50),
RQST, 4,
RCNT, 4,
ERRS, 16,
MOR, 1
}
Method (_DSM, 4, NotSerialized)
{
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0xA6, 0xFA, 0xDD, 0x3D, 0x1B, 0x36, 0xB4, 0x4E,
/* 0008 */ 0xA4, 0x24, 0x8D, 0x10, 0x08, 0x9D, 0x16, 0x53
}))
{
Name (_T_0, Zero)
Store (ToInteger (Arg2), _T_0)
If (LEqual (_T_0, Zero))
{
Return (Buffer (One)
{
0x7F
})
}
Else
{
If (LEqual (_T_0, One))
{
Return ("1.0")
}
Else
{
If (LEqual (_T_0, 0x02))
{
Store (ToInteger (DerefOf (Index (Arg3, Zero))), RQST)
Return (Zero)
}
Else
{
If (LEqual (_T_0, 0x03))
{
Name (PPI1, Package (0x02)
{
Zero,
Zero
})
Store (RQST, Index (PPI1, One))
Return (PPI1)
}
Else
{
If (LEqual (_T_0, 0x04))
{
Return (One)
}
Else
{
If (LEqual (_T_0, 0x05))
{
Name (PPI2, Package (0x03)
{
Zero,
Zero,
Zero
})
Store (RCNT, Index (PPI2, One))
If (LEqual (ERRS, 0xFFF0))
{
Store (0xFFFFFFF0, Index (PPI2, 0x02))
}
Else
{
If (LEqual (ERRS, 0xFFF1))
{
Store (0xFFFFFFF1, Index (PPI2, 0x02))
}
Else
{
Store (ERRS, Index (PPI2, 0x02))
}
}
Return (PPI2)
}
Else
{
If (LEqual (_T_0, 0x06))
{
Return (Zero)
}
Else
{
}
}
}
}
}
}
}
}
Else
{
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0xED, 0x54, 0x60, 0x37, 0x13, 0xCC, 0x75, 0x46,
/* 0008 */ 0x90, 0x1C, 0x47, 0x56, 0xD7, 0xF2, 0xD4, 0x5D
}))
{
Name (_T_1, Zero)
Store (ToInteger (Arg2), _T_1)
If (LEqual (_T_1, Zero))
{
Return (Buffer (One)
{
0x03
})
}
Else
{
If (LEqual (_T_1, One))
{
Store (ToInteger (DerefOf (Index (Arg3, Zero))), MOR)
Return (Zero)
}
Else
{
}
}
}
}
Return (Buffer (One)
{
0x00
})
}
}
Scope (_SB.PCI0)
{
OperationRegion (ITPD, PCI_Config, 0xE8, 0x04)
Field (ITPD, DWordAcc, NoLock, Preserve)
{
, 15,
TPDI, 1
}
OperationRegion (TVID, SystemMemory, 0xFED40F00, 0x02)
Field (TVID, WordAcc, NoLock, Preserve)
{
VIDT, 16
}
}
Device (_SB.PCI0.ITPM)
{
Name (_HID, "INTC0102")
Name (_CID, EisaId ("PNP0C31"))
Name (_STR, Unicode ("TPM 1.2 Device"))
Name (_CRS, ResourceTemplate ()
{
Memory32Fixed (ReadOnly,
0xFED40000, // Address Base
0x00005000, // Address Length
)
})
OperationRegion (CMSR, SystemIO, 0x72, 0x02)
Field (CMSR, ByteAcc, NoLock, Preserve)
{
INQ, 8,
DAQ, 8
}
IndexField (INQ, DAQ, ByteAcc, NoLock, Preserve)
{
Offset (0x50),
RQST, 4,
RCNT, 4,
ERRS, 16,
MOR, 1
}
OperationRegion (TPMR, SystemMemory, 0xFED40000, 0x5000)
Field (TPMR, AnyAcc, NoLock, Preserve)
{
ACC0, 8
}
Method (_STA, 0, NotSerialized)
{
If (LNotEqual (ACC0, 0xFF))
{
If (LEqual (VIDT, 0x8086))
{
If (TPMF)
{
Return (0x0F)
}
Return (Zero)
}
}
Return (Zero)
}
Method (_DSM, 4, NotSerialized)
{
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0xA6, 0xFA, 0xDD, 0x3D, 0x1B, 0x36, 0xB4, 0x4E,
/* 0008 */ 0xA4, 0x24, 0x8D, 0x10, 0x08, 0x9D, 0x16, 0x53
}))
{
Name (_T_0, Zero)
Store (ToInteger (Arg2), _T_0)
If (LEqual (_T_0, Zero))
{
Return (Buffer (One)
{
0x7F
})
}
Else
{
If (LEqual (_T_0, One))
{
Return ("1.0")
}
Else
{
If (LEqual (_T_0, 0x02))
{
Store (ToInteger (DerefOf (Index (Arg3, Zero))), RQST)
Return (Zero)
}
Else
{
If (LEqual (_T_0, 0x03))
{
Name (PPI1, Package (0x02)
{
Zero,
Zero
})
Store (RQST, Index (PPI1, One))
Return (PPI1)
}
Else
{
If (LEqual (_T_0, 0x04))
{
Return (One)
}
Else
{
If (LEqual (_T_0, 0x05))
{
Name (PPI2, Package (0x03)
{
Zero,
Zero,
Zero
})
Store (RCNT, Index (PPI2, One))
If (LEqual (ERRS, 0xFFF0))
{
Store (0xFFFFFFF0, Index (PPI2, 0x02))
}
Else
{
If (LEqual (ERRS, 0xFFF1))
{
Store (0xFFFFFFF1, Index (PPI2, 0x02))
}
Else
{
Store (ERRS, Index (PPI2, 0x02))
}
}
Return (PPI2)
}
Else
{
If (LEqual (_T_0, 0x06))
{
Return (Zero)
}
Else
{
}
}
}
}
}
}
}
}
Else
{
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0xED, 0x54, 0x60, 0x37, 0x13, 0xCC, 0x75, 0x46,
/* 0008 */ 0x90, 0x1C, 0x47, 0x56, 0xD7, 0xF2, 0xD4, 0x5D
}))
{
Name (_T_1, Zero)
Store (ToInteger (Arg2), _T_1)
If (LEqual (_T_1, Zero))
{
Return (Buffer (One)
{
0x03
})
}
Else
{
If (LEqual (_T_1, One))
{
Store (ToInteger (DerefOf (Index (Arg3, Zero))), MOR)
Return (Zero)
}
Else
{
}
}
}
}
Return (Buffer (One)
{
0x00
})
}
}
OperationRegion (RCRB, SystemMemory, SRCB, SRCL)
Field (RCRB, ByteAcc, NoLock, Preserve)
{
Offset (0x3418),
Offset (0x341A),
PE0E, 1,
PE1E, 1,
PE2E, 1,
PE3E, 1,
PE4E, 1,
PE5E, 1,
PE6E, 1,
PE7E, 1
}
Scope (_GPE)
{
Method (_L01, 0, NotSerialized)
{
Add (DBG8, One, DBG8)
If (LAnd (LEqual (PE0E, Zero), \_SB.PCI0.PEX0.HPST))
{
Sleep (0x64)
If (\_SB.PCI0.PEX0.PDCX)
{
Store (One, \_SB.PCI0.PEX0.PDCX)
Store (One, \_SB.PCI0.PEX0.HPST)
Notify (\_SB.PCI0.PEX0, Zero)
}
Else
{
Store (One, \_SB.PCI0.PEX0.HPST)
}
}
If (LAnd (LEqual (PE1E, Zero), \_SB.PCI0.PEX1.HPST))
{
Sleep (0x64)
If (\_SB.PCI0.PEX1.PDCX)
{
Store (One, \_SB.PCI0.PEX1.PDCX)
Store (One, \_SB.PCI0.PEX1.HPST)
Notify (\_SB.PCI0.PEX1, Zero)
}
Else
{
Store (One, \_SB.PCI0.PEX1.HPST)
}
}
If (LAnd (LEqual (PE2E, Zero), \_SB.PCI0.PEX2.HPST))
{
Sleep (0x64)
If (\_SB.PCI0.PEX2.PDCX)
{
Store (One, \_SB.PCI0.PEX2.PDCX)
Store (One, \_SB.PCI0.PEX2.HPST)
Notify (\_SB.PCI0.PEX2, Zero)
}
Else
{
Store (One, \_SB.PCI0.PEX2.HPST)
}
}
If (LAnd (LEqual (PE3E, Zero), \_SB.PCI0.PEX3.HPST))
{
Sleep (0x64)
If (\_SB.PCI0.PEX3.PDCX)
{
Store (One, \_SB.PCI0.PEX3.PDCX)
Store (One, \_SB.PCI0.PEX3.HPST)
Notify (\_SB.PCI0.PEX3, Zero)
}
Else
{
Store (One, \_SB.PCI0.PEX3.HPST)
}
}
If (LAnd (LEqual (PE4E, Zero), \_SB.PCI0.PEX4.HPST))
{
Sleep (0x64)
If (\_SB.PCI0.PEX4.PDCX)
{
Store (One, \_SB.PCI0.PEX4.PDCX)
Store (One, \_SB.PCI0.PEX4.HPST)
Notify (\_SB.PCI0.PEX4, Zero)
}
Else
{
Store (One, \_SB.PCI0.PEX4.HPST)
}
}
If (LAnd (LEqual (PE5E, Zero), \_SB.PCI0.PEX5.HPST))
{
Sleep (0x64)
If (\_SB.PCI0.PEX5.PDCX)
{
Store (One, \_SB.PCI0.PEX5.PDCX)
Store (One, \_SB.PCI0.PEX5.HPST)
Notify (\_SB.PCI0.PEX5, Zero)
}
Else
{
Store (One, \_SB.PCI0.PEX5.HPST)
}
}
If (LAnd (LEqual (PE6E, Zero), \_SB.PCI0.PEX6.HPST))
{
Sleep (0x64)
If (\_SB.PCI0.PEX6.PDCX)
{
Store (One, \_SB.PCI0.PEX6.PDCX)
Store (One, \_SB.PCI0.PEX6.HPST)
Notify (\_SB.PCI0.PEX6, Zero)
}
Else
{
Store (One, \_SB.PCI0.PEX6.HPST)
}
}
If (LAnd (LEqual (PE7E, Zero), \_SB.PCI0.PEX7.HPST))
{
Sleep (0x64)
If (\_SB.PCI0.PEX7.PDCX)
{
Store (One, \_SB.PCI0.PEX7.PDCX)
Store (One, \_SB.PCI0.PEX7.HPST)
Notify (\_SB.PCI0.PEX7, Zero)
}
Else
{
Store (One, \_SB.PCI0.PEX7.HPST)
}
}
}
}
Scope (_SB.PCI0.PEX0)
{
Name (_HPP, Package (0x04)
{
0x08,
0x40,
One,
Zero
})
OperationRegion (PXRG, PCI_Config, Zero, 0x0100)
Field (PXRG, AnyAcc, NoLock, WriteAsZeros)
{
Offset (0x5A),
, 3,
PDCX, 1,
Offset (0xD8),
, 30,
HPEN, 1,
PCEN, 1,
, 30,
HPST, 1,
PCST, 1
}
Device (PXSX)
{
Name (_ADR, Zero)
Method (_RMV, 0, NotSerialized)
{
Store (Zero, Local0)
If (LEqual (P0HP, One))
{
Store (One, Local0)
}
Return (Local0)
}
}
}
Scope (_SB.PCI0.PEX1)
{
Name (_HPP, Package (0x04)
{
0x08,
0x40,
One,
Zero
})
OperationRegion (PXRG, PCI_Config, Zero, 0x0100)
Field (PXRG, AnyAcc, NoLock, Preserve)
{
Offset (0x5A),
, 3,
PDCX, 1,
Offset (0xD8),
, 30,
HPEN, 1,
PCEN, 1,
, 30,
HPST, 1,
PCST, 1
}
Device (PXSX)
{
Name (_ADR, Zero)
Method (_RMV, 0, NotSerialized)
{
Store (Zero, Local0)
If (LEqual (P1HP, One))
{
Store (One, Local0)
}
Return (Local0)
}
}
}
Scope (_SB.PCI0.PEX2)
{
Name (_HPP, Package (0x04)
{
0x08,
0x40,
One,
Zero
})
OperationRegion (PXRG, PCI_Config, Zero, 0x0100)
Field (PXRG, AnyAcc, NoLock, Preserve)
{
Offset (0x5A),
, 3,
PDCX, 1,
Offset (0xD8),
, 30,
HPEN, 1,
PCEN, 1,
, 30,
HPST, 1,
PCST, 1
}
Device (PXSX)
{
Name (_ADR, Zero)
Method (_RMV, 0, NotSerialized)
{
Store (Zero, Local0)
If (LEqual (P2HP, One))
{
Store (One, Local0)
}
Return (Local0)
}
}
}
Scope (_SB.PCI0.PEX3)
{
Name (_HPP, Package (0x04)
{
0x08,
0x40,
One,
Zero
})
OperationRegion (PXRG, PCI_Config, Zero, 0x0100)
Field (PXRG, AnyAcc, NoLock, Preserve)
{
Offset (0x5A),
, 3,
PDCX, 1,
Offset (0xD8),
, 30,
HPEN, 1,
PCEN, 1,
, 30,
HPST, 1,
PCST, 1
}
Device (PXSX)
{
Name (_ADR, Zero)
Method (_RMV, 0, NotSerialized)
{
Store (Zero, Local0)
If (LEqual (P3HP, One))
{
Store (One, Local0)
}
Return (Local0)
}
}
}
Scope (_SB.PCI0.PEX4)
{
Name (_HPP, Package (0x04)
{
0x08,
0x40,
One,
Zero
})
OperationRegion (PXRG, PCI_Config, Zero, 0x0100)
Field (PXRG, AnyAcc, NoLock, Preserve)
{
Offset (0x5A),
, 3,
PDCX, 1,
Offset (0xD8),
, 30,
HPEN, 1,
PCEN, 1,
, 30,
HPST, 1,
PCST, 1
}
Device (PXSX)
{
Name (_ADR, Zero)
Method (_RMV, 0, NotSerialized)
{
Store (Zero, Local0)
If (LEqual (P4HP, One))
{
Store (One, Local0)
}
Return (Local0)
}
}
}
Scope (_SB.PCI0.PEX5)
{
Name (_HPP, Package (0x04)
{
0x08,
0x40,
One,
Zero
})
OperationRegion (PXRG, PCI_Config, Zero, 0x0100)
Field (PXRG, AnyAcc, NoLock, Preserve)
{
Offset (0x5A),
, 3,
PDCX, 1,
Offset (0xD8),
, 30,
HPEN, 1,
PCEN, 1,
, 30,
HPST, 1,
PCST, 1
}
Device (PXSX)
{
Name (_ADR, Zero)
Method (_RMV, 0, NotSerialized)
{
Store (Zero, Local0)
If (LEqual (P5HP, One))
{
Store (One, Local0)
}
Return (Local0)
}
}
}
Scope (_SB.PCI0.PEX6)
{
Name (_HPP, Package (0x04)
{
0x08,
0x40,
One,
Zero
})
OperationRegion (PXRG, PCI_Config, Zero, 0x0100)
Field (PXRG, AnyAcc, NoLock, Preserve)
{
Offset (0x5A),
, 3,
PDCX, 1,
Offset (0xD8),
, 30,
HPEN, 1,
PCEN, 1,
, 30,
HPST, 1,
PCST, 1
}
Device (PXSX)
{
Name (_ADR, Zero)
Method (_RMV, 0, NotSerialized)
{
Store (Zero, Local0)
If (LEqual (P6HP, One))
{
Store (One, Local0)
}
Return (Local0)
}
}
}
Scope (_SB.PCI0.PEX7)
{
Name (_HPP, Package (0x04)
{
0x08,
0x40,
One,
Zero
})
OperationRegion (PXRG, PCI_Config, Zero, 0x0100)
Field (PXRG, AnyAcc, NoLock, Preserve)
{
Offset (0x5A),
, 3,
PDCX, 1,
Offset (0xD8),
, 30,
HPEN, 1,
PCEN, 1,
, 30,
HPST, 1,
PCST, 1
}
Device (PXSX)
{
Name (_ADR, Zero)
Method (_RMV, 0, NotSerialized)
{
Store (Zero, Local0)
If (LEqual (P7HP, One))
{
Store (One, Local0)
}
Return (Local0)
}
}
}
Scope (_SB.PCI0)
{
Method (PEWK, 0, NotSerialized)
{
If (LEqual (PE4E, Zero))
{
If (^PEX4.PDCX)
{
Store (One, ^PEX4.PDCX)
Store (One, ^PEX4.HPST)
}
Else
{
Store (One, ^PEX4.HPST)
}
Notify (PEX4, Zero)
}
}
}
Method (NEVT, 0, NotSerialized)
{
Store (ECG1 (), Local0)
If (LEqual (GPUF, 0x03))
{
If (And (Local0, 0x0800))
{
If (\_SB.PCI0.P0P1.PEGP.PO52)
{
Store (0x10, SGTF)
WMIA (0x0800)
}
Else
{
SX10 ()
SX30 (0x20)
SX11 ()
Store (SX41 (), Local1)
SX12 ()
If (LAnd (LNotEqual (Local1, 0xE01B), LNotEqual (Local1, 0xE09B)))
{
WMIA (0x0800)
}
Else
{
If (LEqual (Local1, 0xE01B))
{
If (LNotEqual (SGTF, 0x04))
{
Store (One, SGTF)
Notify (\_SB.PCI0.P0P1.PEGP, 0x80)
}
Else
{
WMIA (0x0800)
Notify (\_SB.PCI0.P0P1.PEGP, 0x80)
}
}
Else
{
If (LEqual (Local1, 0xE09B))
{
WMIA (0x0800)
}
}
}
}
}
}
If (And (Local0, One))
{
Notify (\_SB.PWRB, 0x80)
}
If (And (Local0, 0x04))
{
LIDE ()
}
If (And (Local0, 0x08))
{
PWRE ()
}
If (And (Local0, 0x80))
{
SMIE ()
}
If (LNotEqual (GPUF, 0x03))
{
If (And (Local0, 0x0800))
{
WMIA (0x0800)
}
}
}
Name (WAKE, Zero)
Method (NWAK, 0, NotSerialized)
{
Store (One, WAKE)
Store (ECG7 (), Local0)
Store (Zero, Local1)
If (LEqual (Local0, Zero))
{
Store (One, Local1)
}
If (And (Local0, One))
{
Store (One, Local1)
}
If (And (Local0, 0x02))
{
LIDE ()
}
If (And (Local0, 0x20)) {}
If (Local1)
{
Notify (\_SB.PWRB, 0x02)
}
Store (Zero, WAKE)
}
Mutex (GFXM, 0x01)
Method (ILID, 0, NotSerialized)
{
Acquire (GFXM, 0xFFFF)
Store (SMI (0x46, Zero), Local0)
\_SB.PCI0.GFX0.GLID (Local0)
Notify (\_SB.LID0, 0x80)
Release (GFXM)
}
Method (LIDE, 0, NotSerialized)
{
Store (GPUF, Local1)
If (LEqual (Local1, 0x04))
{
ILID ()
}
Else
{
Notify (\_SB.LID0, 0x80)
}
}
Method (PWRE, 0, NotSerialized)
{
If (LEqual (OSYS, 0x10))
{
Notify (\_SB.PWRB, 0x02)
}
Store (ECG5 (), Local0)
XOr (Local0, MIS0, Local1)
And (Local0, 0x13, MIS0)
If (And (Local1, One))
{
Notify (\_SB.AC, 0x80)
}
And (MIS0, 0x02, Local2)
If (And (Local1, 0x02))
{
If (Local2)
{
Notify (\_SB.BAT0, 0x81)
}
Else
{
Notify (\_SB.BAT0, 0x81)
}
}
If (And (Local1, 0x04))
{
If (Local2)
{
Notify (\_SB.BAT0, 0x80)
}
}
If (And (Local1, 0x08))
{
If (Local2)
{
Notify (\_SB.BAT0, 0x80)
}
}
}
Method (SMIE, 0, NotSerialized)
{
Store (SMI (0x96, Zero), Local0)
If (And (Local0, One))
{
Notify (\_TZ.THM, 0x80)
}
If (And (Local0, 0x02))
{
Store (GPUF, Local1)
Name (_T_0, Zero)
Store (Local1, _T_0)
If (LEqual (_T_0, One))
{
Notify (\_SB.PCI0.P0P1.PEGP, 0x80)
}
Else
{
If (LEqual (_T_0, 0x02))
{
Notify (\_SB.PCI0.P0P2.PEGP, 0x80)
}
Else
{
If (LEqual (_T_0, 0x03))
{
SGTG ()
}
Else
{
If (LEqual (_T_0, 0x04))
{
\_SB.PCI0.GFX0.GHDS (Zero)
}
Else
{
}
}
}
}
}
If (And (Local0, 0x04))
{
CESM (Local0)
}
If (And (Local0, 0x08))
{
Notify (\_PR.P000, 0x80)
Notify (\_PR.P001, 0x80)
Notify (\_PR.P002, 0x80)
Notify (\_PR.P003, 0x80)
}
}
Method (CESM, 1, NotSerialized)
{
Store (Arg0, Local0)
SX10 ()
SX30 (0x18)
SX11 ()
Store (SX42 (), Local0)
SX12 ()
If (LEqual (GPUF, 0x03))
{
If (And (Local0, 0x02))
{
If (LEqual (SGTF, 0x02))
{
Store (0x03, SGTF)
WMIA (0x0800)
}
}
}
If (LGreaterEqual (OSYS, 0x20))
{
If (And (Local0, 0x0400))
{
Store (GPUF, Local1)
Name (_T_0, Zero)
Store (Local1, _T_0)
If (LEqual (_T_0, One))
{
Notify (\_SB.PCI0.P0P1.PEGP.LCD, 0x86)
}
Else
{
If (LEqual (_T_0, 0x02))
{
Notify (\_SB.PCI0.P0P2.PEGP.LCD, 0x86)
}
Else
{
If (LEqual (_T_0, 0x03))
{
SGBU ()
}
Else
{
If (LEqual (_T_0, 0x04))
{
Notify (\_SB.PCI0.GFX0.DD02, 0x86)
}
Else
{
}
}
}
}
}
}
If (LGreaterEqual (OSYS, 0x20))
{
If (And (Local0, 0x0200))
{
Store (GPUF, Local1)
Name (_T_1, Zero)
Store (Local1, _T_1)
If (LEqual (_T_1, One))
{
Notify (\_SB.PCI0.P0P1.PEGP.LCD, 0x87)
}
Else
{
If (LEqual (_T_1, 0x02))
{
Notify (\_SB.PCI0.P0P2.PEGP.LCD, 0x87)
}
Else
{
If (LEqual (_T_1, 0x03))
{
SGBD ()
}
Else
{
If (LEqual (_T_1, 0x04))
{
Notify (\_SB.PCI0.GFX0.DD02, 0x87)
}
Else
{
}
}
}
}
}
}
}
Method (SGTG, 0, NotSerialized)
{
If (\_SB.PCI0.P0P1.PEGP.PO52)
{
Store (0x03, \_SB.PCI0.GFX0.HGNC)
Store (One, \_SB.PCI0.GFX0.DACE)
Notify (\_SB.PCI0.GFX0, 0x80)
Notify (\_SB.PCI0.WMI1, 0x80)
}
Else
{
Notify (\_SB.PCI0.P0P1.PEGP, 0x80)
}
}
Method (SGBD, 0, NotSerialized)
{
If (\_SB.PCI0.P0P1.PEGP.PO52)
{
Notify (\_SB.PCI0.GFX0.DD02, 0x87)
}
Else
{
Notify (\_SB.PCI0.P0P1.PEGP.DD02, 0x87)
}
}
Method (SGBU, 0, NotSerialized)
{
If (\_SB.PCI0.P0P1.PEGP.PO52)
{
Notify (\_SB.PCI0.GFX0.DD02, 0x86)
}
Else
{
Notify (\_SB.PCI0.P0P1.PEGP.DD02, 0x86)
}
}
Scope (_GPE)
{
Method (_L11, 0, NotSerialized)
{
NEVT ()
}
Method (_L17, 0, NotSerialized)
{
NWAK ()
}
}
Method (OPTS, 1, NotSerialized)
{
SMI (0x8A, Arg0)
Store (SMI (0x46, Zero), MIS1)
}
Method (OWAK, 1, NotSerialized)
{
SOST ()
Store (ECG5 (), MIS0)
Notify (\_SB.AC, 0x80)
SMI (0x9A, Arg0)
Store (GPUF, Local1)
If (LEqual (Local1, 0x04))
{
Store (SMI (0x46, Zero), Local0)
Store (Local0, \_SB.PCI0.GFX0.CLID)
If (LEqual (Arg0, 0x03))
{
If (Or (LNotEqual (MIS1, Local0), LEqual (Local0, Zero)))
{
If (LGreaterEqual (OSYS, 0x20))
{
\_SB.PCI0.GFX0.GLID (Local0)
}
Else
{
LIDE ()
}
}
}
}
}
Method (PSW, 2, NotSerialized)
{
SX10 ()
SX30 (0x06)
SX30 (Arg0)
SX30 (Arg1)
SX11 ()
SX12 ()
}
Method (DSS, 2, NotSerialized)
{
SX10 ()
SX30 (0x08)
SX30 (Arg0)
SX32 (Arg1)
SX11 ()
SX12 ()
}
Scope (_SB)
{
OperationRegion (SMIR, SystemIO, 0xB2, 0x02)
Field (SMIR, ByteAcc, NoLock, Preserve)
{
SMII, 8,
SMID, 8
}
OperationRegion (SMR2, SystemIO, 0x86, One)
Field (SMR2, ByteAcc, NoLock, Preserve)
{
SMIA, 8
}
}
Mutex (SMIX, 0x01)
Method (SMI, 2, NotSerialized)
{
Acquire (SMIX, 0xFFFF)
Store (Arg1, SMIB)
Store (Arg0, \_SB.SMII)
Store (SMIB, Local1)
Release (SMIX)
Return (Local1)
}
Name (SXX0, Buffer (0x0100) {})
Name (SXX1, Buffer (0x08) {})
Name (NSMI, Zero)
CreateWordField (SXX1, Zero, SXX2)
CreateWordField (SXX1, 0x04, SXX3)
Method (SX10, 0, NotSerialized)
{
Acquire (SMIX, 0xFFFF)
Store (Zero, SXX2)
If (LEqual (\_SB.PCI0.SBRG.RMSC.ENTF, Zero))
{
Store (Zero, NSMI)
}
Else
{
Store (One, NSMI)
}
}
Method (SX30, 1, NotSerialized)
{
If (LEqual (NSMI, Zero))
{
Store (SXX2, Local0)
Increment (Local0)
If (LLessEqual (Local0, SizeOf (SXX0)))
{
CreateByteField (SXX0, SXX2, SX20)
Store (Arg0, SX20)
Store (Local0, SXX2)
}
}
}
Method (SX31, 1, NotSerialized)
{
If (LEqual (NSMI, Zero))
{
Store (SXX2, Local0)
Add (Local0, 0x02, Local0)
If (LLessEqual (Local0, SizeOf (SXX0)))
{
CreateWordField (SXX0, SXX2, SX21)
Store (Arg0, SX21)
Store (Local0, SXX2)
}
}
}
Method (SX32, 1, NotSerialized)
{
If (LEqual (NSMI, Zero))
{
Store (SXX2, Local0)
Add (Local0, 0x04, Local0)
If (LLessEqual (Local0, SizeOf (SXX0)))
{
CreateDWordField (SXX0, SXX2, SX22)
Store (Arg0, SX22)
Store (Local0, SXX2)
}
}
}
Method (SX33, 2, NotSerialized)
{
If (LEqual (NSMI, Zero))
{
If (LLess (Arg1, SizeOf (Arg0)))
{
CreateByteField (Arg0, Arg1, SX20)
SX30 (SX20)
}
}
}
Method (SX34, 2, NotSerialized)
{
If (LEqual (NSMI, Zero))
{
Store (Zero, Local0)
While (LLess (Local0, Arg1))
{
SX33 (Arg0, Local0)
Increment (Local0)
}
}
}
Method (SXX6, 2, NotSerialized)
{
Store (Arg1, SMIB)
Store (Arg0, \_SB.SMII)
Return (SMIB)
}
Method (SXX5, 2, NotSerialized)
{
If (LLess (Arg1, SizeOf (Arg0)))
{
CreateByteField (Arg0, Arg1, SX20)
SXX6 (0x7C, SX20)
}
}
Method (SXX4, 0, NotSerialized)
{
SXX6 (0x7B, Zero)
Store (Zero, Local0)
While (LLess (Local0, SXX2))
{
SXX5 (SXX0, Local0)
Increment (Local0)
}
}
Method (SXX8, 2, NotSerialized)
{
If (LLess (Arg1, SizeOf (Arg0)))
{
CreateByteField (Arg0, Arg1, SX20)
Store (SXX6 (0x7D, Zero), SX20)
}
}
Method (SXX7, 0, NotSerialized)
{
Store (Zero, Local0)
While (LLess (Local0, SXX3))
{
Add (SXX2, Local0, Local1)
SXX8 (SXX0, Local1)
Increment (Local0)
}
}
Method (SX11, 0, NotSerialized)
{
If (LEqual (NSMI, Zero))
{
SXX4 ()
Store (SXX6 (0x79, Zero), SXX3)
Add (SXX2, SXX3, Local0)
If (LLess (SizeOf (SXX0), Local0))
{
Store (SizeOf (SXX0), Local0)
Subtract (Local0, SXX2, Local0)
Store (Local0, SXX3)
}
SXX7 ()
}
}
Method (SX40, 0, NotSerialized)
{
If (LEqual (NSMI, Zero))
{
Store (SXX2, Local0)
Increment (Local0)
If (LLessEqual (Local0, SizeOf (SXX0)))
{
CreateByteField (SXX0, SXX2, SX20)
Store (Local0, SXX2)
Return (SX20)
}
}
Return (Zero)
}
Method (SX41, 0, NotSerialized)
{
If (LEqual (NSMI, Zero))
{
Store (SXX2, Local0)
Add (Local0, 0x02, Local0)
If (LLessEqual (Local0, SizeOf (SXX0)))
{
CreateWordField (SXX0, SXX2, SX21)
Store (Local0, SXX2)
Return (SX21)
}
}
Return (Zero)
}
Method (SX42, 0, NotSerialized)
{
If (LEqual (NSMI, Zero))
{
Store (SXX2, Local0)
Add (Local0, 0x04, Local0)
If (LLessEqual (Local0, SizeOf (SXX0)))
{
CreateDWordField (SXX0, SXX2, SX22)
Store (Local0, SXX2)
Return (SX22)
}
}
Return (Zero)
}
Method (SX43, 2, NotSerialized)
{
If (LEqual (NSMI, Zero))
{
If (LLess (Arg1, SizeOf (Arg0)))
{
CreateByteField (Arg0, Arg1, SX20)
Store (SX40 (), SX20)
}
}
}
Method (SX44, 2, NotSerialized)
{
If (LEqual (NSMI, Zero))
{
Store (Zero, Local0)
While (LLess (Local0, Arg1))
{
SX43 (Arg0, Local0)
Increment (Local0)
}
}
}
Method (SX45, 0, NotSerialized)
{
If (LEqual (NSMI, Zero))
{
Store (SX40 (), Local0)
Name (SX23, Buffer (Local0) {})
SX44 (SX23, Local0)
Return (SX23)
}
}
Method (SX12, 0, NotSerialized)
{
Release (SMIX)
}
Scope (_SB.PCI0)
{
Method (UCMD, 3, NotSerialized)
{
SX10 ()
SX30 (0x0F)
SX30 (Arg0)
SX30 (Arg1)
SX30 (Arg2)
SX11 ()
Store (SX40 (), Local0)
SX12 ()
Return (Local0)
}
Method (UPSW, 2, NotSerialized)
{
Return (UCMD (0x02, Arg0, Arg1))
}
Method (UPRW, 2, NotSerialized)
{
Return (UCMD (One, Arg0, Arg1))
}
Device (EHC2)
{
Name (_ADR, 0x001A0000)
Name (_S1D, 0x02)
Name (_S3D, 0x02)
Device (HUB7)
{
Name (_ADR, Zero)
Device (RMCH)
{
Name (_ADR, One)
Name (_UPC, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Name (_PLD, Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00
})
Device (CH00)
{
Name (_ADR, One)
Name (_UPC, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Name (_PLD, Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00
})
}
Device (CH01)
{
Name (_ADR, 0x02)
Name (_UPC, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Name (_PLD, Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00
})
}
Device (CH10)
{
Name (_ADR, 0x03)
Name (_UPC, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Name (_PLD, Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00
})
}
Device (CH11)
{
Name (_ADR, 0x04)
Name (_UPC, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Name (_PLD, Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00
})
}
Device (CH20)
{
Name (_ADR, 0x05)
}
Device (CH21)
{
Name (_ADR, 0x06)
}
}
}
}
Device (EHCI)
{
Name (_ADR, 0x001D0000)
Name (_S1D, 0x02)
Name (_S3D, 0x02)
Method (_PRW, 0, NotSerialized)
{
Store (UPRW (Zero, 0x02), Local0)
If (LEqual (Local0, 0x03))
{
Return (Package (0x02)
{
0x0D,
0x03
})
}
If (LEqual (Local0, One))
{
Return (Package (0x02)
{
0x0D,
One
})
}
Return (Package (0x02)
{
0x0D,
Zero
})
}
Method (_PSW, 1, NotSerialized)
{
UPSW (Arg0, 0x02)
}
Device (HUB7)
{
Name (_ADR, Zero)
Device (RMCH)
{
Name (_ADR, One)
Name (_UPC, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Name (_PLD, Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00
})
Device (CH00)
{
Name (_ADR, One)
}
Device (CH01)
{
Name (_ADR, 0x02)
}
Device (CH10)
{
Name (_ADR, 0x03)
}
Device (CH11)
{
Name (_ADR, 0x04)
}
Device (CH20)
{
Name (_ADR, 0x05)
}
Device (CH21)
{
Name (_ADR, 0x06)
Name (_UPC, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Name (_PLD, Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00
})
}
Device (CH30)
{
Name (_ADR, 0x07)
}
Device (CH31)
{
Name (_ADR, 0x08)
Name (_UPC, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Name (_PLD, Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00
})
}
}
}
}
}
Scope (_SB.PCI0)
{
Device (A_CC)
{
Name (_HID, "SMO8800")
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
Name (_UID, One)
Name (BUF2, ResourceTemplate ()
{
Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
{
0x00000014,
}
})
Method (_CRS, 0, Serialized)
{
Return (BUF2)
}
Method (_SRS, 1, Serialized)
{
Return (BUF2)
}
}
}
Scope (_SB.PCI0.SBRG)
{
Device (PS2)
{
Name (_HID, EisaId ("SYN0604"))
Name (_CID, Package (0x03)
{
EisaId ("SYN0600"),
EisaId ("SYN0002"),
EisaId ("PNP0F13")
})
Name (CRS, ResourceTemplate ()
{
IRQNoFlags ()
{12}
})
Method (_CRS, 0, NotSerialized)
{
Return (CRS)
}
}
Device (KBC)
{
Name (_HID, EisaId ("PNP0303"))
Name (CRS, ResourceTemplate ()
{
IO (Decode16,
0x0060, // Range Minimum
0x0060, // Range Maximum
0x10, // Alignment
0x01, // Length
)
IO (Decode16,
0x0064, // Range Minimum
0x0064, // Range Maximum
0x04, // Alignment
0x01, // Length
)
IO (Decode16,
0x0062, // Range Minimum
0x0062, // Range Maximum
0x02, // Alignment
0x01, // Length
)
IO (Decode16,
0x0066, // Range Minimum
0x0066, // Range Maximum
0x06, // Alignment
0x01, // Length
)
IRQNoFlags ()
{1}
})
Method (_CRS, 0, NotSerialized)
{
Return (CRS)
}
}
OperationRegion (GPI1, SystemIO, 0x0500, 0x4A)
Field (GPI1, ByteAcc, Lock, Preserve)
{
Offset (0x38),
, 4,
GO36, 1,
GI37, 1
}
}
Scope (_SB)
{
Device (AMW0)
{
Mutex (WMIX, 0x01)
Name (_HID, "pnp0c14")
Name (_UID, Zero)
Method (STBY, 3, NotSerialized)
{
CreateByteField (Arg0, Arg1, TMP)
Store (Arg2, TMP)
}
Method (STWD, 3, NotSerialized)
{
CreateWordField (Arg0, Arg1, TMP)
Store (Arg2, TMP)
}
Method (STDW, 3, NotSerialized)
{
CreateDWordField (Arg0, Arg1, TMP)
Store (Arg2, TMP)
}
Method (CLBY, 1, NotSerialized)
{
Store (Zero, Local0)
While (LLess (Local0, SizeOf (Arg0)))
{
STBY (Arg0, Local0, Zero)
Increment (Local0)
}
}
Name (_WDG, Buffer (0x78)
{
/* 0000 */ 0xBC, 0xDC, 0x9D, 0x8D, 0x97, 0xA9, 0xDA, 0x11,
/* 0008 */ 0xB0, 0x12, 0xB6, 0x22, 0xA1, 0xEF, 0x54, 0x92,
/* 0010 */ 0x41, 0x41, 0x01, 0x00, 0xCE, 0x93, 0x05, 0xA8,
/* 0018 */ 0x97, 0xA9, 0xDA, 0x11, 0xB0, 0x12, 0xB6, 0x22,
/* 0020 */ 0xA1, 0xEF, 0x54, 0x92, 0x42, 0x41, 0x01, 0x02,
/* 0028 */ 0x94, 0x59, 0xBB, 0x9D, 0x97, 0xA9, 0xDA, 0x11,
/* 0030 */ 0xB0, 0x12, 0xB6, 0x22, 0xA1, 0xEF, 0x54, 0x92,
/* 0038 */ 0xD0, 0x00, 0x01, 0x08, 0xE0, 0x6C, 0x77, 0xA3,
/* 0040 */ 0x88, 0x1E, 0xDB, 0x11, 0xA9, 0x8B, 0x08, 0x00,
/* 0048 */ 0x20, 0x0C, 0x9A, 0x66, 0x42, 0x43, 0x01, 0x00,
/* 0050 */ 0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11,
/* 0058 */ 0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10,
/* 0060 */ 0x4D, 0x4F, 0x01, 0x00, 0x28, 0x07, 0xBD, 0x77,
/* 0068 */ 0x34, 0x2E, 0x8C, 0x47, 0xB6, 0x25, 0x67, 0xF0,
/* 0070 */ 0x2A, 0x7E, 0x48, 0x97, 0x42, 0x44, 0x01, 0x02
})
Name (INFO, Buffer (0x80) {})
Name (ECD0, Zero)
Method (WED0, 1, NotSerialized)
{
Store (Arg0, ECD0)
Return (Arg0)
}
Method (WCAA, 1, NotSerialized)
{
Return (Zero)
}
Method (WQAA, 1, NotSerialized)
{
Acquire (WMIX, 0xFFFF)
CLBY (INFO)
If (LNotEqual (Arg0, Zero))
{
Store (INFO, Local1)
}
Else
{
STDW (INFO, Zero, 0x4C4C4544)
STDW (INFO, 0x04, 0x494D5720)
STDW (INFO, 0x08, One)
STDW (INFO, 0x0C, 0x1000)
Store (INFO, Local1)
}
Release (WMIX)
Return (Local1)
}
Method (WSAA, 2, NotSerialized)
{
Return (Arg1)
}
Method (WMI, 2, NotSerialized)
{
Return (PHWM (Arg0, Arg1))
}
Method (WMBA, 3, NotSerialized)
{
CreateDWordField (Arg2, 0x28, WBUF)
Add (WBUF, 0x2C, Local1)
If (LLessEqual (Local1, 0x1000))
{
Store (WMI (Arg2, Local1), Local0)
}
Return (Local0)
}
Name (WMI1, Zero)
Name (WMI2, Buffer (0x80) {})
Name (WMI3, Zero)
Method (WMI4, 1, NotSerialized)
{
Or (WMI1, Arg0, WMI1)
}
Method (WMI5, 1, NotSerialized)
{
And (WMI1, Not (Arg0), WMI1)
}
Method (WMI6, 0, NotSerialized)
{
Acquire (WMIX, 0xFFFF)
Store (Zero, WMI3)
CLBY (WMI2)
}
Method (WMI7, 0, NotSerialized)
{
Acquire (WMIX, 0xFFFF)
Store (Zero, WMI3)
}
Method (WMI8, 1, NotSerialized)
{
Store (WMI3, Local0)
Add (Local0, 0x02, Local0)
If (LLessEqual (Local0, SizeOf (WMI2)))
{
CreateWordField (WMI2, WMI3, WMI9)
Store (Arg0, WMI9)
Store (Local0, WMI3)
}
}
Method (_WED, 1, NotSerialized)
{
WMI6 ()
If (LNotEqual (Arg0, 0xD0))
{
WMI7 ()
Return (WMI2)
}
If (LEqual (ECD0, Zero))
{
WMI7 ()
Return (WMI2)
}
SX10 ()
SX30 (0x16)
SX11 ()
Store (SX41 (), Local0)
While (LGreater (Local0, Zero))
{
WMI8 (Local0)
While (LGreater (Local0, Zero))
{
WMI8 (SX41 ())
Subtract (Local0, One, Local0)
}
}
WMI8 (Zero)
SX12 ()
WMI7 ()
Return (WMI2)
}
Name (WQMO, Buffer (0x079B)
{
/* 0000 */ 0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00,
/* 0008 */ 0x8B, 0x07, 0x00, 0x00, 0x60, 0x2C, 0x00, 0x00,
/* 0010 */ 0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54,
/* 0018 */ 0x28, 0xD1, 0x95, 0x00, 0x01, 0x06, 0x18, 0x42,
/* 0020 */ 0x10, 0x13, 0x10, 0x22, 0x21, 0x04, 0x12, 0x01,
/* 0028 */ 0xA1, 0xC8, 0x2C, 0x0C, 0x86, 0x10, 0x38, 0x2E,
/* 0030 */ 0x84, 0x1C, 0x40, 0x48, 0x1C, 0x14, 0x4A, 0x08,
/* 0038 */ 0x84, 0xFA, 0x13, 0xC8, 0xAF, 0x00, 0x84, 0x0E,
/* 0040 */ 0x05, 0xC8, 0x14, 0x60, 0x50, 0x80, 0x53, 0x04,
/* 0048 */ 0x11, 0xF4, 0x2A, 0xC0, 0xA6, 0x00, 0x93, 0x02,
/* 0050 */ 0x2C, 0x0A, 0xD0, 0x2E, 0xC0, 0xB2, 0x00, 0xDD,
/* 0058 */ 0x02, 0xA4, 0xC3, 0x12, 0x91, 0xE0, 0x28, 0x31,
/* 0060 */ 0xE0, 0x28, 0x9D, 0xD8, 0xC2, 0x0D, 0x1B, 0xBC,
/* 0068 */ 0x50, 0x14, 0xCD, 0x20, 0x4A, 0x82, 0x72, 0x11,
/* 0070 */ 0xA4, 0x0B, 0x42, 0xCA, 0x05, 0xF8, 0x46, 0xD0,
/* 0078 */ 0x00, 0xA2, 0xF4, 0x2E, 0xC0, 0xB6, 0x00, 0xD3,
/* 0080 */ 0xF0, 0x44, 0xEA, 0x10, 0x50, 0x72, 0x86, 0x80,
/* 0088 */ 0x1A, 0x40, 0xAB, 0x13, 0x10, 0x7E, 0xA5, 0x53,
/* 0090 */ 0x42, 0x12, 0x84, 0x33, 0x56, 0xF1, 0x33, 0xD0,
/* 0098 */ 0x1C, 0x4E, 0xE0, 0x9C, 0x3A, 0xC7, 0x90, 0xE3,
/* 00A0 */ 0x71, 0xA1, 0x07, 0xC1, 0x03, 0x29, 0x00, 0x61,
/* 00A8 */ 0xE1, 0x21, 0x14, 0x01, 0x06, 0x25, 0x61, 0x2C,
/* 00B0 */ 0xD4, 0xC5, 0xA8, 0x51, 0x23, 0x65, 0x03, 0x32,
/* 00B8 */ 0x44, 0x69, 0xA3, 0x46, 0x0F, 0xE8, 0xEC, 0x8E,
/* 00C0 */ 0xA4, 0x61, 0x01, 0xB2, 0x47, 0x22, 0x02, 0xA3,
/* 00C8 */ 0x1E, 0xD3, 0x11, 0x16, 0x36, 0x23, 0xA1, 0xC6,
/* 00D0 */ 0x68, 0x0E, 0x8A, 0x40, 0xE3, 0x06, 0x6D, 0x89,
/* 00D8 */ 0xB0, 0x1A, 0x57, 0xEC, 0x33, 0xB3, 0xF0, 0x61,
/* 00E0 */ 0x09, 0xE3, 0x08, 0x0E, 0x2C, 0x41, 0xA3, 0x68,
/* 00E8 */ 0x9A, 0xE3, 0xD9, 0x86, 0x48, 0x70, 0x10, 0xA1,
/* 00F0 */ 0x31, 0x32, 0x20, 0xE4, 0x59, 0x80, 0x75, 0x50,
/* 00F8 */ 0x49, 0x06, 0x22, 0xEE, 0x11, 0xA5, 0x10, 0x41,
/* 0100 */ 0xF3, 0x3D, 0x91, 0x1A, 0x05, 0x68, 0xC3, 0x90,
/* 0108 */ 0xAD, 0xB3, 0x81, 0x86, 0x1A, 0xAB, 0x31, 0x14,
/* 0110 */ 0x41, 0x44, 0x08, 0x1A, 0xC5, 0x60, 0x11, 0x42,
/* 0118 */ 0x85, 0xF8, 0xFF, 0x47, 0x89, 0x7A, 0x4A, 0x41,
/* 0120 */ 0xA2, 0x56, 0x06, 0x22, 0xB4, 0x60, 0x46, 0x60,
/* 0128 */ 0xF6, 0x07, 0x41, 0x62, 0x9C, 0x19, 0x74, 0x58,
/* 0130 */ 0xB0, 0x0C, 0x10, 0x19, 0x11, 0x34, 0x1A, 0x76,
/* 0138 */ 0x16, 0xF0, 0x70, 0x3C, 0x93, 0xE6, 0x27, 0xA6,
/* 0140 */ 0xC1, 0x99, 0x60, 0x6C, 0x08, 0x69, 0x80, 0x90,
/* 0148 */ 0xA8, 0x83, 0x03, 0x25, 0xB0, 0x94, 0x81, 0x93,
/* 0150 */ 0xCB, 0x81, 0xC7, 0x77, 0xC6, 0x51, 0x43, 0x9C,
/* 0158 */ 0xFA, 0x99, 0xF9, 0x1F, 0xE1, 0x2D, 0xF8, 0x08,
/* 0160 */ 0xC0, 0xC7, 0xE0, 0xC1, 0x1E, 0x42, 0xC0, 0x23,
/* 0168 */ 0x64, 0x67, 0x00, 0x03, 0xE2, 0xAF, 0x0B, 0x27,
/* 0170 */ 0xED, 0xB9, 0xF8, 0x2C, 0x00, 0x63, 0xF8, 0x70,
/* 0178 */ 0x8D, 0x8F, 0x42, 0xE3, 0x61, 0xE7, 0x03, 0x36,
/* 0180 */ 0x2E, 0x0E, 0xEF, 0x43, 0xC1, 0x09, 0x17, 0x0B,
/* 0188 */ 0xA2, 0x00, 0x10, 0x92, 0x75, 0x3E, 0x40, 0xCF,
/* 0190 */ 0xFA, 0xD8, 0x02, 0x3E, 0x0C, 0x34, 0x7B, 0x87,
/* 0198 */ 0x20, 0x04, 0x2F, 0x02, 0x3E, 0x3A, 0xF8, 0xB8,
/* 01A0 */ 0xE1, 0x71, 0x3F, 0x6F, 0x80, 0xE1, 0x70, 0xE0,
/* 01A8 */ 0xE1, 0xF8, 0xB4, 0x01, 0x5C, 0x46, 0xC0, 0xA5,
/* 01B0 */ 0x3D, 0x29, 0x4C, 0x20, 0xC9, 0x4F, 0x00, 0x89,
/* 01B8 */ 0x81, 0x41, 0x1D, 0x08, 0x7C, 0xB0, 0x80, 0x2B,
/* 01C0 */ 0x09, 0x0E, 0x35, 0x3C, 0x4F, 0xEC, 0x01, 0xE1,
/* 01C8 */ 0xFF, 0x7F, 0x94, 0x67, 0x76, 0x20, 0x9E, 0xFE,
/* 01D0 */ 0x63, 0x00, 0x8C, 0x03, 0x82, 0xA7, 0x75, 0x4A,
/* 01D8 */ 0xBE, 0x79, 0x3C, 0x48, 0xF8, 0x22, 0x10, 0x26,
/* 01E0 */ 0x81, 0x4F, 0x09, 0x0C, 0x8D, 0x1F, 0x37, 0xC0,
/* 01E8 */ 0x3A, 0x6A, 0xFC, 0x01, 0x01, 0xDE, 0x49, 0xE2,
/* 01F0 */ 0xFC, 0xFA, 0x1C, 0x80, 0x0E, 0x0D, 0xA7, 0xC8,
/* 01F8 */ 0x40, 0x5E, 0x03, 0x9E, 0x09, 0x4E, 0xC9, 0xE3,
/* 0200 */ 0x4B, 0xE0, 0x33, 0x07, 0xEC, 0xBB, 0xC1, 0x61,
/* 0208 */ 0x1C, 0x4C, 0x88, 0x08, 0xEF, 0x01, 0x4F, 0x1D,
/* 0210 */ 0xBE, 0x6B, 0x3C, 0x0A, 0x04, 0x8A, 0xD0, 0xDB,
/* 0218 */ 0x99, 0x83, 0x9E, 0x42, 0x8C, 0x12, 0xED, 0xAC,
/* 0220 */ 0xC2, 0x3C, 0x70, 0x44, 0xF1, 0x91, 0xC3, 0x08,
/* 0228 */ 0xEF, 0x1E, 0xBE, 0x13, 0x3C, 0x80, 0xB4, 0x36,
/* 0230 */ 0x39, 0xE1, 0x06, 0x7A, 0xE6, 0x60, 0xD1, 0xCE,
/* 0238 */ 0x2C, 0xB2, 0x00, 0xA2, 0x48, 0xA3, 0x41, 0x9D,
/* 0240 */ 0x11, 0x7C, 0x1A, 0xF0, 0xB4, 0x9E, 0x62, 0x7C,
/* 0248 */ 0x94, 0x30, 0xC8, 0x19, 0x1E, 0xD8, 0x73, 0xC2,
/* 0250 */ 0x63, 0x80, 0x07, 0xCC, 0x6E, 0x0C, 0x3E, 0x4E,
/* 0258 */ 0xF8, 0x5C, 0x80, 0x77, 0x0D, 0xA8, 0x19, 0xFA,
/* 0260 */ 0xB0, 0x01, 0xE7, 0xD0, 0x81, 0x3F, 0x4D, 0xE0,
/* 0268 */ 0x0F, 0x16, 0xF8, 0xF1, 0xF8, 0x9A, 0xC3, 0x26,
/* 0270 */ 0x9C, 0xC0, 0xF2, 0x07, 0x81, 0x1A, 0x99, 0xA1,
/* 0278 */ 0x3D, 0xCB, 0xD3, 0x7A, 0x0D, 0xF0, 0x69, 0xC7,
/* 0280 */ 0x04, 0x3E, 0x6F, 0xF8, 0xFF, 0xFF, 0xCF, 0xF1,
/* 0288 */ 0x78, 0xC0, 0xAF, 0xF8, 0x6C, 0x41, 0xEE, 0x0A,
/* 0290 */ 0x9E, 0xAF, 0xCF, 0x2E, 0xCC, 0xC6, 0x78, 0x50,
/* 0298 */ 0xA3, 0xF0, 0x01, 0x07, 0x77, 0x76, 0xF1, 0x11,
/* 02A0 */ 0xC0, 0x67, 0x17, 0xE0, 0x39, 0x89, 0x67, 0x09,
/* 02A8 */ 0xF0, 0x1E, 0x02, 0xAC, 0x19, 0x4F, 0x87, 0x2D,
/* 02B0 */ 0x18, 0x23, 0xC6, 0x43, 0x9E, 0x71, 0xD5, 0xC3,
/* 02B8 */ 0xD0, 0x45, 0xC0, 0xEA, 0xEE, 0x2B, 0xA8, 0xA3,
/* 02C0 */ 0x17, 0x98, 0xA0, 0x5E, 0x33, 0x70, 0xA7, 0x17,
/* 02C8 */ 0xE0, 0x73, 0xCA, 0x82, 0xF7, 0xFF, 0x3F, 0x65,
/* 02D0 */ 0x01, 0xF7, 0xAB, 0x02, 0x3F, 0xA2, 0x80, 0x01,
/* 02D8 */ 0xB2, 0xB3, 0xD3, 0x89, 0x10, 0xDE, 0x4B, 0x9E,
/* 02E0 */ 0x43, 0x7C, 0xBB, 0xF2, 0xC1, 0x24, 0xC8, 0x73,
/* 02E8 */ 0x40, 0x84, 0xA7, 0x2C, 0x7E, 0x1F, 0x88, 0x12,
/* 02F0 */ 0xF3, 0x80, 0x22, 0x45, 0x31, 0x62, 0x90, 0x27,
/* 02F8 */ 0x2C, 0x5F, 0x4F, 0x62, 0x18, 0x3A, 0x58, 0xB8,
/* 0300 */ 0xF0, 0x11, 0x9E, 0xB2, 0x00, 0x8B, 0x97, 0x2C,
/* 0308 */ 0xCC, 0x29, 0x0B, 0xE6, 0xDB, 0xC0, 0xA7, 0x2C,
/* 0310 */ 0x70, 0xFC, 0xFF, 0x4F, 0x59, 0xE0, 0x1A, 0xF7,
/* 0318 */ 0x53, 0x16, 0x30, 0x93, 0xFE, 0x14, 0xF0, 0xA9,
/* 0320 */ 0xC6, 0x4F, 0x00, 0x45, 0x3F, 0x58, 0x50, 0x18,
/* 0328 */ 0x9F, 0xB2, 0x00, 0x57, 0xF2, 0x0E, 0x08, 0xA0,
/* 0330 */ 0x39, 0x3B, 0xF9, 0xB6, 0x60, 0xB0, 0xE7, 0x98,
/* 0338 */ 0x93, 0x78, 0xC9, 0xF0, 0x29, 0x11, 0x0C, 0x87,
/* 0340 */ 0x0C, 0xDF, 0xA9, 0x0E, 0xE5, 0x91, 0xE3, 0x29,
/* 0348 */ 0xC0, 0x47, 0x2C, 0xB0, 0xC7, 0x39, 0x06, 0xE8,
/* 0350 */ 0xB8, 0xE2, 0x23, 0x96, 0xFF, 0xFF, 0x47, 0x2C,
/* 0358 */ 0x80, 0x1B, 0x07, 0x10, 0xFC, 0xA9, 0x03, 0xD6,
/* 0360 */ 0x3D, 0x20, 0xAC, 0x0F, 0x1D, 0xC0, 0x43, 0xF6,
/* 0368 */ 0x43, 0x40, 0x67, 0x18, 0x4B, 0x06, 0x91, 0x8D,
/* 0370 */ 0x73, 0x0D, 0x1D, 0xA3, 0xC5, 0x2F, 0x54, 0x37,
/* 0378 */ 0x85, 0xB8, 0x07, 0xC3, 0x65, 0x03, 0x09, 0xD4,
/* 0380 */ 0xC3, 0xB5, 0x60, 0x0A, 0x89, 0xA2, 0xD1, 0x68,
/* 0388 */ 0x0C, 0x4C, 0x60, 0x04, 0x67, 0x10, 0x03, 0x3A,
/* 0390 */ 0x23, 0x84, 0x0E, 0x65, 0x38, 0x15, 0xE7, 0x21,
/* 0398 */ 0xD4, 0xFF, 0x9F, 0x60, 0xA8, 0x1B, 0x13, 0x9D,
/* 03A0 */ 0x9D, 0xE7, 0xCF, 0x6F, 0x23, 0x3E, 0x11, 0x18,
/* 03A8 */ 0xD8, 0x57, 0x88, 0xB7, 0x0C, 0xB0, 0x0C, 0xCB,
/* 03B0 */ 0x8B, 0x7B, 0x02, 0x78, 0xBC, 0x78, 0xCB, 0x48,
/* 03B8 */ 0x50, 0xCD, 0xB1, 0x06, 0x35, 0x07, 0x5F, 0x05,
/* 03C0 */ 0xDE, 0xC8, 0x4C, 0xE0, 0x2B, 0x18, 0xD8, 0x4E,
/* 03C8 */ 0x33, 0x18, 0x7D, 0x77, 0x02, 0x50, 0x00, 0xF9,
/* 03D0 */ 0x28, 0xE0, 0xFB, 0xF2, 0xDB, 0x00, 0x9B, 0xC5,
/* 03D8 */ 0x2B, 0xB3, 0xD1, 0x7C, 0xFE, 0x44, 0x0C, 0x1D,
/* 03E0 */ 0x25, 0x66, 0xE8, 0x14, 0xC4, 0x43, 0x77, 0xD0,
/* 03E8 */ 0xA1, 0xA3, 0x8F, 0x03, 0x3E, 0x59, 0xE1, 0x82,
/* 03F0 */ 0x1D, 0xBE, 0xA0, 0x4D, 0xEE, 0x68, 0x4F, 0xCC,
/* 03F8 */ 0xB3, 0xF0, 0x3C, 0x71, 0x73, 0x07, 0xD3, 0x11,
/* 0400 */ 0x09, 0xC6, 0xE0, 0x31, 0x93, 0x07, 0xB3, 0xC0,
/* 0408 */ 0xC9, 0x83, 0xE2, 0xFF, 0x3F, 0x79, 0x98, 0xF0,
/* 0410 */ 0x98, 0xB0, 0x87, 0x43, 0x7A, 0xE8, 0xF0, 0xC8,
/* 0418 */ 0xF8, 0x38, 0x7D, 0xFA, 0x61, 0xD8, 0xA7, 0x73,
/* 0420 */ 0x2E, 0x45, 0xCF, 0x48, 0x57, 0x91, 0x67, 0x2E,
/* 0428 */ 0x0C, 0xAC, 0x47, 0xCE, 0x61, 0x8D, 0x16, 0xF6,
/* 0430 */ 0x80, 0x9F, 0x43, 0x7C, 0x87, 0xF1, 0x81, 0x87,
/* 0438 */ 0xC1, 0xFA, 0xF4, 0x02, 0x8E, 0xE3, 0x17, 0xFC,
/* 0440 */ 0xD3, 0x00, 0x78, 0x0E, 0x20, 0x1E, 0xC3, 0x0B,
/* 0448 */ 0x08, 0x3F, 0xBE, 0xE8, 0xFC, 0x4B, 0x85, 0x2E,
/* 0450 */ 0x4E, 0xF2, 0x60, 0x50, 0xA7, 0x29, 0xC0, 0xD5,
/* 0458 */ 0xE9, 0x0D, 0x3C, 0x57, 0x7D, 0xDC, 0x59, 0x0A,
/* 0460 */ 0xF7, 0xFF, 0x3F, 0x4B, 0xC1, 0x38, 0xFC, 0xFA,
/* 0468 */ 0x02, 0xEF, 0xBB, 0x94, 0x11, 0x0E, 0xE4, 0x59,
/* 0470 */ 0x0A, 0xEC, 0xB1, 0x9F, 0x21, 0x3A, 0x04, 0xF8,
/* 0478 */ 0x2C, 0x05, 0xF0, 0xE3, 0xF5, 0xE1, 0xF3, 0x0C,
/* 0480 */ 0xDC, 0xC0, 0xA7, 0x5F, 0xA0, 0xF5, 0xFF, 0x3F,
/* 0488 */ 0x85, 0x80, 0xFF, 0x18, 0xE1, 0x23, 0x0E, 0xEE,
/* 0490 */ 0xE8, 0x0B, 0xDC, 0x0E, 0xC6, 0xFC, 0x8C, 0x81,
/* 0498 */ 0x3B, 0x8E, 0x01, 0x8F, 0x93, 0x33, 0xEE, 0x34,
/* 04A0 */ 0xE1, 0x21, 0xF0, 0x01, 0xB4, 0x3A, 0x3D, 0x72,
/* 04A8 */ 0xEA, 0x39, 0x25, 0xDC, 0x71, 0x80, 0x4F, 0x09,
/* 04B0 */ 0x37, 0x00, 0x4C, 0x80, 0x33, 0x26, 0xA0, 0xEA,
/* 04B8 */ 0xFF, 0x7F, 0xC6, 0x04, 0xC6, 0x20, 0x11, 0xDE,
/* 04C0 */ 0x15, 0xA2, 0xBE, 0x23, 0x1B, 0xE2, 0x19, 0x99,
/* 04C8 */ 0xE1, 0xBC, 0x35, 0x3C, 0xBE, 0x3C, 0x23, 0x83,
/* 04D0 */ 0xF3, 0x8C, 0x09, 0xF0, 0xE7, 0xFF, 0x7F, 0xA4,
/* 04D8 */ 0xC7, 0xDE, 0x14, 0x82, 0x3F, 0x85, 0x00, 0x13,
/* 04E0 */ 0xF1, 0x67, 0x4C, 0x2A, 0xFC, 0x8C, 0x09, 0x6D,
/* 04E8 */ 0x2E, 0x9E, 0xB6, 0xCF, 0x98, 0x00, 0xF7, 0xFE,
/* 04F0 */ 0xFF, 0x67, 0x4C, 0xC0, 0x77, 0xE4, 0x33, 0x26,
/* 04F8 */ 0xA0, 0xE7, 0x48, 0x85, 0x3B, 0x63, 0x82, 0x61,
/* 0500 */ 0x9C, 0xEF, 0x4F, 0x06, 0x79, 0x5E, 0xF2, 0x81,
/* 0508 */ 0xC0, 0x47, 0x19, 0x16, 0xE3, 0x8C, 0x49, 0xCF,
/* 0510 */ 0x3D, 0x16, 0x0E, 0x83, 0x3A, 0x50, 0xC1, 0xF9,
/* 0518 */ 0xFF, 0x1F, 0xA8, 0x00, 0x2F, 0x01, 0x86, 0x0C,
/* 0520 */ 0x9A, 0x03, 0xC3, 0x19, 0x9C, 0x42, 0xB4, 0x08,
/* 0528 */ 0x67, 0x7C, 0xC0, 0x31, 0x5E, 0x09, 0x8C, 0x12,
/* 0530 */ 0xF0, 0xBC, 0x0D, 0x11, 0xF5, 0xA8, 0x7C, 0x81,
/* 0538 */ 0x30, 0x48, 0xA0, 0x77, 0x03, 0xDF, 0x13, 0x38,
/* 0540 */ 0xB0, 0x27, 0x60, 0x8C, 0x78, 0x21, 0x82, 0x3E,
/* 0548 */ 0x5F, 0xF9, 0xBC, 0x14, 0xE3, 0x05, 0xE0, 0xA8,
/* 0550 */ 0xD8, 0x09, 0x0B, 0xF6, 0x41, 0xE2, 0xC5, 0xD3,
/* 0558 */ 0xE3, 0x39, 0xB7, 0xE7, 0x8D, 0xA7, 0x98, 0x20,
/* 0560 */ 0x6F, 0x56, 0x8F, 0x19, 0xCF, 0x12, 0x2F, 0x9C,
/* 0568 */ 0x3E, 0x61, 0x71, 0x14, 0x1F, 0xAE, 0x0C, 0xF5,
/* 0570 */ 0xA2, 0x65, 0xC4, 0xB3, 0x0C, 0xF2, 0xE8, 0x69,
/* 0578 */ 0x90, 0x68, 0xC1, 0x8C, 0xC0, 0x4E, 0x58, 0x2C,
/* 0580 */ 0xEA, 0xE3, 0x44, 0xA7, 0x0A, 0x9F, 0xB0, 0x80,
/* 0588 */ 0xF3, 0xFF, 0xFF, 0x84, 0x05, 0xB8, 0x92, 0x73,
/* 0590 */ 0xC2, 0x90, 0x91, 0x23, 0x14, 0x3D, 0xE5, 0x70,
/* 0598 */ 0xDC, 0x37, 0x12, 0x1F, 0x10, 0x12, 0x38, 0xFE,
/* 05A0 */ 0xC1, 0x88, 0x9E, 0x3C, 0x81, 0xE7, 0xD9, 0x04,
/* 05A8 */ 0x3C, 0x23, 0x7B, 0x9A, 0x78, 0xA4, 0xF0, 0x8C,
/* 05B0 */ 0x9E, 0x36, 0x3C, 0x8B, 0x77, 0x00, 0x5F, 0x7D,
/* 05B8 */ 0xC2, 0x3D, 0xFB, 0xC0, 0x19, 0xF0, 0x3B, 0xC0,
/* 05C0 */ 0x03, 0x80, 0x61, 0x7C, 0x3A, 0xC3, 0x0F, 0x1C,
/* 05C8 */ 0x7F, 0xA9, 0xF0, 0x7D, 0xC6, 0xA7, 0x20, 0x9F,
/* 05D0 */ 0xCE, 0x70, 0x07, 0x35, 0x98, 0x67, 0x15, 0x43,
/* 05D8 */ 0x1D, 0x14, 0xEE, 0xFF, 0x3F, 0xA8, 0x27, 0xD2,
/* 05E0 */ 0x43, 0x88, 0xE3, 0xCB, 0x83, 0xCF, 0x6B, 0xC0,
/* 05E8 */ 0xE4, 0x30, 0x84, 0x78, 0x98, 0xF9, 0x40, 0x43,
/* 05F0 */ 0xC5, 0x2E, 0x95, 0x9E, 0x69, 0x00, 0x6E, 0x8D,
/* 05F8 */ 0xEB, 0x99, 0x06, 0x6C, 0xFF, 0xFF, 0x33, 0x0D,
/* 0600 */ 0x3E, 0xDE, 0x21, 0x14, 0xA0, 0xC9, 0xF1, 0xE1,
/* 0608 */ 0x61, 0x04, 0x4C, 0xC7, 0x82, 0xD0, 0x46, 0x7A,
/* 0610 */ 0x61, 0xF0, 0xA9, 0xC1, 0x90, 0xEF, 0x0A, 0x1E,
/* 0618 */ 0xA3, 0x27, 0xE1, 0xC3, 0x28, 0x50, 0xF1, 0x30,
/* 0620 */ 0x56, 0x96, 0xED, 0x30, 0x8A, 0x3A, 0x14, 0x38,
/* 0628 */ 0x0F, 0x95, 0x6E, 0xD8, 0x0F, 0x15, 0xC6, 0x3E,
/* 0630 */ 0x86, 0xC7, 0x09, 0x8F, 0xE1, 0x24, 0x22, 0x1D,
/* 0638 */ 0x96, 0xFF, 0xFF, 0x63, 0x74, 0x82, 0x03, 0x29,
/* 0640 */ 0x4A, 0x3B, 0x85, 0x94, 0x1D, 0x23, 0x51, 0x5A,
/* 0648 */ 0x8E, 0x91, 0x14, 0xC4, 0xC7, 0x48, 0xAE, 0xE4,
/* 0650 */ 0x34, 0x80, 0xD2, 0x71, 0xEC, 0x21, 0xE3, 0xC4,
/* 0658 */ 0x10, 0xCC, 0x75, 0x22, 0x85, 0x3E, 0x9B, 0xB7,
/* 0660 */ 0x48, 0xF0, 0xCC, 0xCB, 0x87, 0x8B, 0xE3, 0xC0,
/* 0668 */ 0x6C, 0xF2, 0x05, 0x13, 0x73, 0x2A, 0x85, 0x39,
/* 0670 */ 0xEF, 0xB7, 0x1F, 0xB0, 0x9C, 0x37, 0xDE, 0x59,
/* 0678 */ 0x7D, 0x25, 0x05, 0x16, 0x02, 0x27, 0x8F, 0x92,
/* 0680 */ 0x34, 0x79, 0x0A, 0xE2, 0xC9, 0x3B, 0xEE, 0xE4,
/* 0688 */ 0xD1, 0x33, 0xF1, 0xE4, 0xB1, 0x04, 0xC3, 0xDD,
/* 0690 */ 0x49, 0x41, 0x71, 0x73, 0xC0, 0x0F, 0x1F, 0xAC,
/* 0698 */ 0x97, 0x29, 0xFC, 0xFF, 0xFF, 0x5E, 0x8A, 0xBD,
/* 06A0 */ 0x71, 0xC0, 0x1F, 0x3F, 0xF6, 0x56, 0x0A, 0x4C,
/* 06A8 */ 0x24, 0x8C, 0x5D, 0xB7, 0x52, 0xC0, 0x0D, 0xAA,
/* 06B0 */ 0xCF, 0x03, 0xE0, 0xB8, 0x87, 0xB0, 0xD3, 0x92,
/* 06B8 */ 0x2F, 0x62, 0x06, 0x89, 0xF8, 0xAA, 0xC2, 0x06,
/* 06C0 */ 0xC5, 0x8E, 0x4A, 0xEC, 0xBA, 0xF6, 0xA8, 0x04,
/* 06C8 */ 0x2B, 0xDD, 0xED, 0x04, 0x35, 0x12, 0xA7, 0x79,
/* 06D0 */ 0x3F, 0x68, 0xEA, 0xAF, 0x00, 0x2F, 0x27, 0xC0,
/* 06D8 */ 0xEE, 0xFF, 0x7F, 0x39, 0x01, 0xF8, 0xFF, 0xFF,
/* 06E0 */ 0xBF, 0x9C, 0x80, 0x57, 0xC6, 0xE5, 0x04, 0x74,
/* 06E8 */ 0xC7, 0x00, 0x5F, 0x4E, 0x80, 0xEB, 0xE9, 0x0F,
/* 06F0 */ 0x77, 0x1E, 0x80, 0x3B, 0xCC, 0x53, 0xF3, 0xCC,
/* 06F8 */ 0x83, 0x3D, 0x10, 0xFA, 0x78, 0x02, 0x4E, 0x82,
/* 0700 */ 0x0A, 0x6D, 0xFA, 0xD4, 0x68, 0xD4, 0xAA, 0x41,
/* 0708 */ 0x99, 0x1A, 0x65, 0x1A, 0xD4, 0xEA, 0x53, 0xA9,
/* 0710 */ 0x31, 0x63, 0x86, 0xC6, 0xE3, 0x55, 0x6B, 0xD8,
/* 0718 */ 0x0E, 0xB5, 0x72, 0x81, 0x58, 0xD2, 0x67, 0x43,
/* 0720 */ 0x20, 0x16, 0x75, 0x32, 0x13, 0x88, 0xE3, 0x9A,
/* 0728 */ 0x00, 0x61, 0xC2, 0xD7, 0x27, 0x10, 0xC7, 0x06,
/* 0730 */ 0xA1, 0x62, 0xFF, 0x25, 0x32, 0x32, 0x58, 0x83,
/* 0738 */ 0x08, 0xC8, 0x21, 0x7C, 0x00, 0xB1, 0x48, 0x20,
/* 0740 */ 0x02, 0x27, 0xCF, 0x0A, 0x81, 0x12, 0x27, 0x20,
/* 0748 */ 0x4C, 0xE8, 0x73, 0x53, 0x20, 0x96, 0xE7, 0x05,
/* 0750 */ 0x84, 0x85, 0x03, 0xA1, 0x92, 0xCC, 0x80, 0x33,
/* 0758 */ 0x7D, 0x20, 0x02, 0xB2, 0xD4, 0xFF, 0x88, 0x80,
/* 0760 */ 0x2C, 0x1C, 0x44, 0x87, 0x03, 0xA2, 0x07, 0x84,
/* 0768 */ 0xFD, 0xFF, 0xE5, 0x83, 0xD0, 0x38, 0x7E, 0x40,
/* 0770 */ 0x58, 0x0C, 0x45, 0x20, 0x4C, 0x84, 0xA3, 0x41,
/* 0778 */ 0xD0, 0x27, 0xA9, 0xC0, 0x9D, 0x14, 0x44, 0x40,
/* 0780 */ 0x4E, 0x6E, 0x09, 0x88, 0xE9, 0xD0, 0x04, 0xC4,
/* 0788 */ 0x54, 0xBF, 0x85, 0x05, 0xE4, 0x08, 0x20, 0x02,
/* 0790 */ 0x72, 0x24, 0x53, 0x40, 0x2C, 0x20, 0x88, 0x80,
/* 0798 */ 0xFC, 0xFF, 0x07
})
}
Mutex (PSMX, 0x00)
Method (PHWM, 2, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store ("QSET", WCMD)
Store (Arg1, WDID)
Store (Arg0, WBUF)
Store (WSMI, SMII)
Name (RETB, Buffer (0x1000) {})
Store (WBUF, RETB)
Release (PSMX)
Return (RETB)
}
}
Scope (\)
{
Method (WMIA, 1, NotSerialized)
{
\_SB.AMW0.WMI4 (Arg0)
Notify (\_SB.AMW0, 0xD0)
}
}
Scope (_TZ)
{
ThermalZone (THM)
{
Method (_CRT, 0, NotSerialized)
{
Store (GINF (0x12), Local0)
Return (Local0)
}
Method (_TMP, 0, NotSerialized)
{
If (LEqual (THML, One))
{
Store (GINF (0x12), Local0)
Add (Local0, One, Local0)
}
Else
{
Store (GINT (0x04), Local0)
}
Return (Local0)
}
Method (GINF, 1, NotSerialized)
{
SX10 ()
SX30 (Arg0)
SX11 ()
Store (SX41 (), Local0)
SX12 ()
If (LLess (Local0, 0x0DF4))
{
Store (0x0DF4, Local0)
}
Return (Local0)
}
Method (GINT, 1, NotSerialized)
{
SX10 ()
SX30 (Arg0)
SX11 ()
Store (SX41 (), Local0)
SX12 ()
If (LLess (Local0, 0x0BA6))
{
Store (0x0BA6, Local0)
}
Return (Local0)
}
}
}
Name (W98S, "Microsoft Windows")
Name (NT5S, "Microsoft Windows NT")
Name (WINM, "Microsoft WindowsME: Millennium Edition")
Name (WXP, "Windows 2001")
Name (WLG, "Windows 2006")
Name (WIN7, "Windows 2009")
Name (LNX, "Linux")
Method (GETZ, 2, NotSerialized)
{
CreateByteField (Arg0, Arg1, TCHR)
Return (TCHR)
}
Method (STRE, 2, NotSerialized)
{
Name (STR1, Buffer (0x50) {})
Name (STR2, Buffer (0x50) {})
Store (Arg0, STR1)
Store (Arg1, STR2)
Store (Zero, Local0)
Store (One, Local1)
While (Local1)
{
Store (GETZ (STR1, Local0), Local1)
Store (GETZ (STR2, Local0), Local2)
If (LNotEqual (Local1, Local2))
{
Return (Zero)
}
Increment (Local0)
}
Return (One)
}
Method (OSID, 0, NotSerialized)
{
If (LEqual (MIS3, Zero))
{
Store (One, MIS3)
If (CondRefOf (_OSI, Local0))
{
If (_OSI (WXP))
{
Store (0x10, MIS3)
}
If (_OSI (WLG))
{
Store (0x20, MIS3)
}
If (_OSI (WIN7))
{
Store (0x80, MIS3)
}
If (_OSI (LNX))
{
Store (0x40, MIS3)
}
}
Else
{
If (STRE (_OS, W98S))
{
Store (0x02, MIS3)
}
If (STRE (_OS, NT5S))
{
Store (0x08, MIS3)
}
If (STRE (_OS, WINM))
{
Store (0x04, MIS3)
}
}
}
Store (MIS3, OSYS)
Return (MIS3)
}
Method (SOST, 0, NotSerialized)
{
SX10 ()
SX30 (0x0A)
OSID ()
SX30 (MIS3)
SX11 ()
SX12 ()
}
Scope (_SB)
{
Method (_INI, 0, NotSerialized)
{
Store (SMI (0x98, Zero), MIS0)
And (MIS0, 0x13, MIS0)
SOST ()
}
}
Scope (_SB)
{
OperationRegion (SMI1, SystemIO, SMIP, 0x02)
Field (SMI1, ByteAcc, NoLock, Preserve)
{
SSMI, 8
}
Mutex (MUTE, 0x00)
Method (ESWI, 1, NotSerialized)
{
Acquire (MUTE, 0xFFFF)
Store (Arg0, ECMD)
Store (0xEC, SSMI)
Release (MUTE)
}
}
Scope (_SB)
{
Device (BAT0)
{
Name (_HID, EisaId ("PNP0C0A"))
Name (_UID, One)
Name (_PCL, Package (0x01)
{
_SB
})
Method (_STA, 0, NotSerialized)
{
And (MIS0, 0x02, Local0)
If (Local0)
{
Return (0x1F)
}
Return (0x0F)
}
Method (_BIF, 0, NotSerialized)
{
Name (BIF0, Package (0x0D) {})
ECG9 (One, BIF0)
Return (BIF0)
}
Method (_BST, 0, NotSerialized)
{
Name (BST0, Package (0x04) {})
ECG6 (One, BST0)
Return (BST0)
}
}
}
Scope (_SB)
{
Device (AC)
{
Name (_HID, "ACPI0003")
Name (_PCL, Package (0x01)
{
BAT0
})
Method (_PSR, 0, NotSerialized)
{
And (MIS0, One, Local0)
Return (Local0)
}
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
}
}
Scope (_SB)
{
Device (LID0)
{
Name (_HID, EisaId ("PNP0C0D"))
Method (_LID, 0, NotSerialized)
{
Store (ECG3 (), Local0)
Return (Local0)
}
Name (_PRW, Package (0x02)
{
0x17,
0x03
})
Method (_PSW, 1, NotSerialized)
{
PSW (Arg0, 0x02)
}
}
Device (SBTN)
{
Name (_HID, EisaId ("PNP0C0E"))
}
}
Method (ECG1, 0, NotSerialized)
{
SX10 ()
SX30 (0x1C)
SX11 ()
Store (SX41 (), Local0)
SX12 ()
Return (Local0)
}
Method (ECG7, 0, NotSerialized)
{
Return (SMI (0x89, Zero))
}
Method (ECG3, 0, NotSerialized)
{
Return (SMI (0x84, Zero))
}
Method (ECG4, 0, NotSerialized)
{
Return (Zero)
}
Method (ECG5, 0, NotSerialized)
{
Return (SMI (0x98, Zero))
}
Method (ECG6, 2, NotSerialized)
{
SX10 ()
SX30 (0x02)
SX30 (Arg0)
SX11 ()
Store (SX42 (), Index (Arg1, Zero))
Store (SX42 (), Index (Arg1, One))
Store (SX42 (), Index (Arg1, 0x02))
Store (SX42 (), Index (Arg1, 0x03))
SX12 ()
}
Method (ECG9, 2, NotSerialized)
{
SX10 ()
SX30 (One)
SX30 (Arg0)
SX11 ()
Store (SX42 (), Index (Arg1, Zero))
Store (SX42 (), Index (Arg1, One))
Store (SX42 (), Index (Arg1, 0x02))
Store (SX42 (), Index (Arg1, 0x03))
Store (SX42 (), Index (Arg1, 0x04))
Store (SX42 (), Index (Arg1, 0x05))
Store (SX42 (), Index (Arg1, 0x06))
Store (SX42 (), Index (Arg1, 0x07))
Store (SX42 (), Index (Arg1, 0x08))
Store (SX45 (), Index (Arg1, 0x09))
Store (SX45 (), Index (Arg1, 0x0A))
Store (SX45 (), Index (Arg1, 0x0B))
Store (SX45 (), Index (Arg1, 0x0C))
SX12 ()
}
Name (_S0, Package (0x04)
{
Zero,
Zero,
Zero,
Zero
})
If (SS3)
{
Name (_S3, Package (0x04)
{
0x05,
Zero,
Zero,
Zero
})
}
If (SS4)
{
Name (_S4, Package (0x04)
{
0x06,
Zero,
Zero,
Zero
})
}
Name (_S5, Package (0x04)
{
0x07,
Zero,
Zero,
Zero
})
Method (PTS, 1, NotSerialized)
{
If (Arg0)
{
\_SB.PCI0.SBRG.SPTS (Arg0)
\_SB.PCI0.PEX0.SPRT (Arg0)
\_SB.PCI0.PEX1.SPRT (Arg0)
\_SB.PCI0.PEX2.SPRT (Arg0)
\_SB.PCI0.PEX3.SPRT (Arg0)
\_SB.PCI0.PEX4.SPRT (Arg0)
\_SB.PCI0.PEX5.SPRT (Arg0)
\_SB.PCI0.PEX6.SPRT (Arg0)
\_SB.PCI0.PEX7.SPRT (Arg0)
\_SB.PCI0.GFX0.OPTS (Arg0)
OPTS (Arg0)
}
}
Method (WAK, 1, NotSerialized)
{
If (\_SB.PCI0.PEX0.PMS)
{
\_SB.PCI0.PEX0.WPRT (Arg0)
Notify (\_SB.PCI0.PEX0, 0x02)
}
Else
{
\_SB.PCI0.PEX0.WPRT (Arg0)
}
If (\_SB.PCI0.PEX1.PMS)
{
\_SB.PCI0.PEX1.WPRT (Arg0)
Notify (\_SB.PCI0.PEX1, 0x02)
}
Else
{
\_SB.PCI0.PEX1.WPRT (Arg0)
}
If (\_SB.PCI0.PEX2.PMS)
{
\_SB.PCI0.PEX2.WPRT (Arg0)
Notify (\_SB.PCI0.PEX2, 0x02)
}
Else
{
\_SB.PCI0.PEX2.WPRT (Arg0)
}
If (\_SB.PCI0.PEX3.PMS)
{
\_SB.PCI0.PEX3.WPRT (Arg0)
Notify (\_SB.PCI0.PEX3, 0x02)
}
Else
{
\_SB.PCI0.PEX3.WPRT (Arg0)
}
If (\_SB.PCI0.PEX4.PMS)
{
\_SB.PCI0.PEX4.WPRT (Arg0)
Notify (\_SB.PCI0.PEX4, 0x02)
}
Else
{
\_SB.PCI0.PEX4.WPRT (Arg0)
}
If (\_SB.PCI0.PEX5.PMS)
{
\_SB.PCI0.PEX5.WPRT (Arg0)
Notify (\_SB.PCI0.PEX5, 0x02)
}
Else
{
\_SB.PCI0.PEX5.WPRT (Arg0)
}
If (\_SB.PCI0.PEX6.PMS)
{
\_SB.PCI0.PEX6.WPRT (Arg0)
Notify (\_SB.PCI0.PEX6, 0x02)
}
Else
{
\_SB.PCI0.PEX6.WPRT (Arg0)
}
If (\_SB.PCI0.PEX7.PMS)
{
\_SB.PCI0.PEX7.WPRT (Arg0)
Notify (\_SB.PCI0.PEX7, 0x02)
}
Else
{
\_SB.PCI0.PEX7.WPRT (Arg0)
}
\_SB.PCI0.GFX0.OWAK (Arg0)
\_SB.PCI0.PEWK ()
OWAK (Arg0)
}
}
Follow ups
References