Skip to content

Instantly share code, notes, and snippets.

Created May 18, 2014 20:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/d9d51c0abd7ce0077de7 to your computer and use it in GitHub Desktop.
Save anonymous/d9d51c0abd7ce0077de7 to your computer and use it in GitHub Desktop.
DSDT. ASRock Z87 Extreme6. Kubuntu 14.04
/*
* Intel ACPI Component Architecture
* AML Disassembler version 20140214-64 [Mar 29 2014]
* Copyright (c) 2000 - 2014 Intel Corporation
*
* Disassembly of dsdt.dat, Mon May 19 00:22:13 2014
*
* Original Table Header:
* Signature "DSDT"
* Length 0x0000AA59 (43609)
* Revision 0x02
* Checksum 0xD5
* OEM ID "ALASKA"
* OEM Table ID "A M I"
* OEM Revision 0x00000230 (560)
* Compiler ID "INTL"
* Compiler Version 0x20091112 (537465106)
*/
DefinitionBlock ("dsdt.aml", "DSDT", 2, "ALASKA", "A M I", 0x00000230)
{
/*
* iASL Warning: There were 8 external control methods found during
* disassembly, but additional ACPI tables to resolve these externals
* were not specified. This resulting disassembler output file may not
* compile because the disassembler did not know how many arguments
* to assign to these methods. To specify the tables needed to resolve
* external control method references, the -e option can be used to
* specify the filenames. Example iASL invocations:
* iasl -e ssdt1.aml ssdt2.aml ssdt3.aml -d dsdt.aml
* iasl -e dsdt.aml ssdt2.aml -d ssdt1.aml
* iasl -e ssdt*.aml -d dsdt.aml
*
* In addition, the -fe option can be used to specify a file containing
* control method external declarations with the associated method
* argument counts. Each line of the file must be of the form:
* External (<method pathname>, MethodObj, <argument count>)
*/
External (_SB_.PCI0.GFX0.GLID, MethodObj) // Warning: Unresolved Method, guessing 1 arguments (may be incorrect, see warning above)
External (_SB_.PCI0.GFX0.GSCI, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
External (_SB_.PCI0.GFX0.IUEH, MethodObj) // Warning: Unresolved Method, guessing 1 arguments (may be incorrect, see warning above)
External (_SB_.PCI0.PEG0.HPME, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
External (_SB_.PCI0.PEG1.HPME, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
External (_SB_.PCI0.PEG2.HPME, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
External (_SB_.TPM_.PTS_, MethodObj) // Warning: Unresolved Method, guessing 1 arguments (may be incorrect, see warning above)
External (LIDS, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
External (_PR_.CFGD)
External (_PR_.CPU0._PPC)
External (_SB_.IAOE.ECTM)
External (_SB_.IAOE.FFSE)
External (_SB_.IAOE.ITMR)
External (_SB_.IAOE.PTSL)
External (_SB_.IAOE.RCTM)
External (_SB_.IETM)
External (_SB_.IFFS.FFSS)
External (_SB_.PCCD)
External (_SB_.PCCD.PENB)
External (_SB_.PCI0.GFX0.CLID)
External (_SB_.PCI0.GFX0.DD1F)
External (_SB_.PCI0.GFX0.GSSE)
External (_SB_.PCI0.PEG0)
External (_SB_.PCI0.PEG0.PEGP)
External (_SB_.PCI0.PEG1)
External (_SB_.PCI0.PEG2)
External (D1F0)
External (D1F1)
External (D1F2)
External (DIDX)
External (GSMI)
External (IGDS, IntObj)
External (MDBG, IntObj)
External (PDC0)
External (PDC1)
External (PDC2)
External (PDC3)
External (PDC4)
External (PDC5)
External (PDC6)
External (PDC7)
Name (SP1O, 0x2E)
Name (IO1B, 0x0290)
Name (IO1L, 0x10)
Name (IOCB, 0x0240)
Name (IOCL, 0x10)
Name (IOWB, 0x0250)
Name (IOWL, 0x10)
Name (IOES, 0xFF)
Name (SL2P, Zero)
Name (SMBS, 0x0580)
Name (SMBL, 0x20)
Name (PMBS, 0x1800)
Name (GPBS, 0x1C00)
Name (SMIP, 0xB2)
Name (APCB, 0xFEC00000)
Name (APCL, 0x1000)
Name (SMCR, 0x1830)
Name (HPTB, 0xFED00000)
Name (HPTC, 0xFED1F404)
Name (FLSZ, 0x00600000)
Name (SRCB, 0xFED1C000)
Name (RCLN, 0x4000)
Name (PEBS, 0xF8000000)
Name (PELN, 0x04000000)
Name (LAPB, 0xFEE00000)
Name (EGPB, 0xFED19000)
Name (MCHB, 0xFED10000)
Name (VTBS, 0xFED90000)
Name (VTLN, 0x4000)
Name (ACPH, 0xDE)
Name (ASSB, Zero)
Name (AOTB, Zero)
Name (AAXB, Zero)
Name (HIDK, 0x0303D041)
Name (HIDM, 0x030FD041)
Name (CIDK, 0x0B03D041)
Name (CIDM, 0x130FD041)
Name (PEHP, One)
Name (SHPC, Zero)
Name (PEPM, One)
Name (PEER, One)
Name (PECS, One)
Name (ITKE, Zero)
Name (MBEC, 0xFFFF)
Name (SRSI, 0xB2)
Name (CSMI, 0x61)
Name (FMBL, One)
Name (FDTP, 0x02)
Name (FUPS, 0x03)
Name (FUWS, 0x04)
Name (BGR, One)
Name (BFR, 0x02)
Name (BBR, 0x03)
Name (BWC, 0x04)
Name (BWT1, 0x20)
Name (BSPC, 0x24)
Name (BFHC, 0x0100)
Name (TRTP, One)
Name (WDTE, One)
Name (TRTD, 0x02)
Name (TRTI, 0x03)
Name (PFTI, 0x04)
Name (GCDD, One)
Name (DSTA, 0x0A)
Name (DSLO, 0x0C)
Name (DSLC, 0x0E)
Name (PITS, 0x10)
Name (SBCS, 0x12)
Name (SALS, 0x13)
Name (LSSS, 0x2A)
Name (SOOT, 0x35)
Name (PDBR, 0x4D)
Name (BW1P, 0x21)
Name (BW2C, 0x22)
Name (BW2P, 0x23)
Name (BSPP, 0x25)
Name (BHB, 0x30)
Name (BFS2, 0x31)
Name (BFS3, 0x32)
Name (BFS4, 0x33)
Name (BRH, 0x35)
Name (DSSP, Zero)
Name (FHPP, Zero)
Name (SMIA, 0xB2)
Name (SMIB, 0xB3)
Name (OFST, 0x35)
Name (TPMF, Zero)
Name (TCMF, Zero)
Name (TMF1, Zero)
Name (TMF2, Zero)
Name (TMF3, Zero)
Name (TRST, 0x02)
Name (PMLN, 0x0100)
Name (GPLN, 0x0400)
Name (SS1, Zero)
Name (SS2, Zero)
Name (SS3, One)
Name (SS4, One)
Name (IOST, 0x0001)
Name (TOPM, 0x00000000)
Name (ROMS, 0xFFE00000)
Name (VGAF, One)
OperationRegion (GNVS, SystemMemory, 0xBC18FC18, 0x027F)
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,
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 (0x1E),
Offset (0x25),
REVN, 8,
Offset (0x28),
APIC, 8,
TCNT, 8,
PCP0, 8,
PCP1, 8,
PPCM, 8,
PPMF, 32,
C67L, 8,
NATP, 8,
CMAP, 8,
CMBP, 8,
LPTP, 8,
FDCP, 8,
CMCP, 8,
CIRP, 8,
SMSC, 8,
W381, 8,
SMC1, 8,
EMAE, 8,
EMAP, 16,
EMAL, 16,
Offset (0x42),
MEFE, 8,
DSTS, 8,
Offset (0x48),
MORD, 8,
TCGP, 8,
PPRP, 32,
PPRQ, 8,
LPPR, 8,
GTF0, 56,
GTF2, 56,
IDEM, 8,
GTF1, 56,
BID, 16,
PLID, 8,
ECTG, 8,
Offset (0x70),
OSCC, 8,
NEXP, 8,
SBV1, 8,
SBV2, 8,
Offset (0x7A),
DSEN, 8,
ECON, 8,
GPIC, 8,
CTYP, 8,
L01C, 8,
VFN0, 8,
VFN1, 8,
VFN2, 8,
VFN3, 8,
VFN4, 8,
VFN5, 8,
VFN6, 8,
VFN7, 8,
VFN8, 8,
VFN9, 8,
Offset (0x8F),
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,
PDTS, 8,
PKGA, 8,
PAMT, 8,
AC0F, 8,
AC1F, 8,
DTS3, 8,
DTS4, 8,
Offset (0xB0),
LTR1, 8,
LTR2, 8,
LTR3, 8,
LTR4, 8,
LTR5, 8,
LTR6, 8,
LTR7, 8,
LTR8, 8,
OBF1, 8,
OBF2, 8,
OBF3, 8,
OBF4, 8,
OBF5, 8,
OBF6, 8,
OBF7, 8,
OBF8, 8,
XHCI, 8,
XTUB, 32,
XTUS, 32,
XMPB, 32,
DDRF, 8,
RTD3, 8,
PEP0, 8,
PEP3, 8,
DPTF, 8,
SADE, 8,
SACR, 8,
SAHT, 8,
PCHD, 8,
PCHC, 8,
PCHH, 8,
CTDP, 8,
LPMP, 8,
LPMV, 8,
ECEU, 8,
TGFG, 16,
MEMD, 8,
MEMC, 8,
MEMH, 8,
FND1, 8,
FND2, 8,
AMBD, 8,
AMAT, 8,
AMPT, 8,
AMCT, 8,
AMHT, 8,
SKDE, 8,
SKAT, 8,
SKPT, 8,
SKCT, 8,
SKHT, 8,
EFDE, 8,
EFAT, 8,
EFPT, 8,
EFCT, 8,
EFHT, 8,
VRDE, 8,
VRAT, 8,
VRPT, 8,
VRCT, 8,
VRHT, 8,
DPAP, 8,
DPPP, 8,
DPCP, 8,
DCMP, 8,
TRTV, 8,
LPOE, 8,
LPOP, 8,
LPOS, 8,
LPOW, 8,
LPER, 8,
PPSZ, 32,
DISE, 8,
PFMA, 64,
PFMS, 8,
PFIA, 16,
ICNF, 8,
DSP0, 32,
DSP1, 32,
NFCE, 8,
CODS, 8,
SNHE, 8,
S0ID, 8,
CTDB, 8,
Offset (0x207),
PWRE, 8,
PWRP, 8,
XHPR, 8,
SDS0, 8,
SDS1, 16,
SDS2, 8,
SDS3, 8,
SDS4, 8,
SDS5, 8,
SDS6, 8,
RIC0, 8,
PEPY, 8,
DVS0, 8,
DVS1, 8,
DVS2, 8,
DVS3, 8,
GBSX, 8,
IUBE, 8,
IUCE, 8,
IUDE, 8,
ECNO, 8,
AUDD, 16,
DSPD, 16,
IC0D, 16,
IC1D, 16,
IC1S, 16,
VRRD, 16,
PSCP, 8,
RWAG, 8,
Offset (0x22D),
RCG0, 8,
ECDB, 8,
P2ME, 8,
SSH0, 16,
SSL0, 16,
SSD0, 16,
FMH0, 16,
FML0, 16,
FMD0, 16,
FPH0, 16,
FPL0, 16,
FPD0, 16,
SSH1, 16,
SSL1, 16,
SSD1, 16,
FMH1, 16,
FML1, 16,
FMD1, 16,
FPH1, 16,
FPL1, 16,
FPD1, 16,
M0C0, 16,
M1C0, 16,
M2C0, 16,
M0C1, 16,
M1C1, 16,
M2C1, 16,
M0C2, 16,
M1C2, 16,
M0C3, 16,
M1C3, 16,
M0C4, 16,
M1C4, 16,
M0C5, 16,
M1C5, 16,
TBSF, 8,
GIRQ, 32,
DMTP, 8,
DMTD, 8,
DMSH, 8,
LANP, 8,
XHDS, 8,
SSMD, 8,
PLCS, 8,
PLVL, 16
}
OperationRegion (S4NV, SystemMemory, 0xBC191E98, 0x03)
Field (S4NV, AnyAcc, Lock, Preserve)
{
OSTP, 16,
SXTP, 8
}
Method (S4RS, 1, NotSerialized)
{
Store (Arg0, SXTP)
Store (0x07D0, OSTP)
If (CondRefOf (\_OSI, Local0))
{
If (_OSI ("Windows 2001"))
{
Store (0x07D1, OSTP)
}
If (_OSI ("Windows 2001.1"))
{
Store (0x07D3, OSTP)
}
If (_OSI ("Windows 2006"))
{
Store (0x07D6, OSTP)
}
If (_OSI ("Windows 2009"))
{
Store (0x07D9, OSTP)
}
If (_OSI ("Windows 2012"))
{
Store (0x07DC, OSTP)
}
}
}
Scope (_SB)
{
Name (PR00, Package (0x1C)
{
Package (0x04)
{
0x001FFFFF,
Zero,
LNKF,
Zero
},
Package (0x04)
{
0x001FFFFF,
One,
LNKD,
Zero
},
Package (0x04)
{
0x001FFFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x001FFFFF,
0x03,
LNKA,
Zero
},
Package (0x04)
{
0x0014FFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x001DFFFF,
Zero,
LNKH,
Zero
},
Package (0x04)
{
0x001DFFFF,
One,
LNKD,
Zero
},
Package (0x04)
{
0x001AFFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x001BFFFF,
Zero,
LNKG,
Zero
},
Package (0x04)
{
0x0019FFFF,
Zero,
LNKE,
Zero
},
Package (0x04)
{
0x0016FFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x0016FFFF,
One,
LNKD,
Zero
},
Package (0x04)
{
0x0016FFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x0016FFFF,
0x03,
LNKB,
Zero
},
Package (0x04)
{
0x001CFFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x001CFFFF,
One,
LNKB,
Zero
},
Package (0x04)
{
0x001CFFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x001CFFFF,
0x03,
LNKD,
Zero
},
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)
{
0x0004FFFF,
Zero,
LNKA,
Zero
},
Package (0x04)
{
0x0004FFFF,
One,
LNKB,
Zero
},
Package (0x04)
{
0x0004FFFF,
0x02,
LNKC,
Zero
},
Package (0x04)
{
0x0004FFFF,
0x03,
LNKD,
Zero
},
Package (0x04)
{
0x0002FFFF,
Zero,
LNKA,
Zero
}
})
Name (AR00, Package (0x1C)
{
Package (0x04)
{
0x001FFFFF,
Zero,
Zero,
0x15
},
Package (0x04)
{
0x001FFFFF,
One,
Zero,
0x13
},
Package (0x04)
{
0x001FFFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x001FFFFF,
0x03,
Zero,
0x10
},
Package (0x04)
{
0x0014FFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x001DFFFF,
Zero,
Zero,
0x17
},
Package (0x04)
{
0x001DFFFF,
One,
Zero,
0x13
},
Package (0x04)
{
0x001AFFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x001BFFFF,
Zero,
Zero,
0x16
},
Package (0x04)
{
0x0019FFFF,
Zero,
Zero,
0x14
},
Package (0x04)
{
0x0016FFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x0016FFFF,
One,
Zero,
0x13
},
Package (0x04)
{
0x0016FFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x0016FFFF,
0x03,
Zero,
0x11
},
Package (0x04)
{
0x001CFFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x001CFFFF,
One,
Zero,
0x11
},
Package (0x04)
{
0x001CFFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x001CFFFF,
0x03,
Zero,
0x13
},
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)
{
0x0004FFFF,
Zero,
Zero,
0x10
},
Package (0x04)
{
0x0004FFFF,
One,
Zero,
0x11
},
Package (0x04)
{
0x0004FFFF,
0x02,
Zero,
0x12
},
Package (0x04)
{
0x0004FFFF,
0x03,
Zero,
0x13
},
Package (0x04)
{
0x0002FFFF,
Zero,
Zero,
0x10
}
})
Name (PR04, 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 (AR04, 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 (PR05, 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 (AR05, 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 (PR06, 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 (AR06, 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 (PR07, 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 (AR07, 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 (PR08, 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 (AR08, 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 (PR09, 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 (AR09, 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 (PR0E, 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 (AR0E, 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 (PR0F, 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 (AR0F, 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 (PR02, 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 (AR02, 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 (PR0A, 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 (AR0A, 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 (PR0B, 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 (AR0B, 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 (PR40, Package (0x08)
{
Package (0x04)
{
0xFFFF,
Zero,
LNKC,
Zero
},
Package (0x04)
{
0xFFFF,
One,
LNKD,
Zero
},
Package (0x04)
{
0xFFFF,
0x02,
LNKA,
Zero
},
Package (0x04)
{
0xFFFF,
0x03,
LNKB,
Zero
},
Package (0x04)
{
0x0001FFFF,
Zero,
LNKD,
Zero
},
Package (0x04)
{
0x0001FFFF,
One,
LNKA,
Zero
},
Package (0x04)
{
0x0001FFFF,
0x02,
LNKB,
Zero
},
Package (0x04)
{
0x0001FFFF,
0x03,
LNKC,
Zero
}
})
Name (AR40, Package (0x08)
{
Package (0x04)
{
0xFFFF,
Zero,
Zero,
0x12
},
Package (0x04)
{
0xFFFF,
One,
Zero,
0x13
},
Package (0x04)
{
0xFFFF,
0x02,
Zero,
0x10
},
Package (0x04)
{
0xFFFF,
0x03,
Zero,
0x11
},
Package (0x04)
{
0x0001FFFF,
Zero,
Zero,
0x13
},
Package (0x04)
{
0x0001FFFF,
One,
Zero,
0x10
},
Package (0x04)
{
0x0001FFFF,
0x02,
Zero,
0x11
},
Package (0x04)
{
0x0001FFFF,
0x03,
Zero,
0x12
}
})
Name (PRSA, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{3,4,5,6,10,11,12,14,15}
})
Alias (PRSA, PRSB)
Alias (PRSA, PRSC)
Alias (PRSA, PRSD)
Alias (PRSA, PRSE)
Alias (PRSA, PRSF)
Alias (PRSA, PRSG)
Alias (PRSA, PRSH)
Device (PCI0)
{
Name (_HID, EisaId ("PNP0A08")) // _HID: Hardware ID
Name (_CID, EisaId ("PNP0A03")) // _CID: Compatible ID
Name (_ADR, Zero) // _ADR: Address
Method (^BN00, 0, NotSerialized)
{
Return (Zero)
}
Method (_BBN, 0, NotSerialized) // _BBN: BIOS Bus Number
{
Return (BN00 ())
}
Name (_UID, Zero) // _UID: Unique ID
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR00 ())
}
Return (PR00 ())
}
OperationRegion (HBUS, PCI_Config, Zero, 0x0100)
Field (HBUS, DWordAcc, NoLock, Preserve)
{
Offset (0x40),
EPEN, 1,
, 11,
EPBR, 20,
Offset (0x48),
MHEN, 1,
, 14,
MHBR, 17,
Offset (0x50),
GCLK, 1,
Offset (0x54),
D0EN, 1,
D1F2, 1,
D1F1, 1,
D1F0, 1,
Offset (0x60),
PXEN, 1,
PXSZ, 2,
, 23,
PXBR, 6,
Offset (0x68),
DIEN, 1,
, 11,
DIBR, 20,
Offset (0x70),
, 20,
MEBR, 12,
Offset (0x80),
, 4,
PM0H, 2,
Offset (0x81),
PM1L, 2,
, 2,
PM1H, 2,
Offset (0x82),
PM2L, 2,
, 2,
PM2H, 2,
Offset (0x83),
PM3L, 2,
, 2,
PM3H, 2,
Offset (0x84),
PM4L, 2,
, 2,
PM4H, 2,
Offset (0x85),
PM5L, 2,
, 2,
PM5H, 2,
Offset (0x86),
PM6L, 2,
, 2,
PM6H, 2,
Offset (0x87),
Offset (0xA8),
, 20,
TUUD, 19,
Offset (0xBC),
, 20,
TLUD, 12,
Offset (0xC8),
, 7,
HTSE, 1
}
OperationRegion (MCHT, SystemMemory, 0xFED10000, 0x1100)
Name (BUF0, ResourceTemplate ()
{
WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
0x0000, // Granularity
0x0000, // Range Minimum
0x00FF, // Range Maximum
0x0000, // Translation Offset
0x0100, // Length
,, _Y00)
DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
0x00000000, // Granularity
0x00000000, // Range Minimum
0x00000CF7, // Range Maximum
0x00000000, // Translation Offset
0x00000CF8, // Length
,, , TypeStatic)
IO (Decode16,
0x0CF8, // Range Minimum
0x0CF8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
0x00000000, // Granularity
0x00000D00, // Range Minimum
0x0000FFFF, // Range Maximum
0x00000000, // Translation Offset
0x0000F300, // Length
,, , TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000A0000, // Range Minimum
0x000BFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00020000, // Length
,, , AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000C0000, // Range Minimum
0x000C3FFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
,, _Y01, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000C4000, // Range Minimum
0x000C7FFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
,, _Y02, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000C8000, // Range Minimum
0x000CBFFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
,, _Y03, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000CC000, // Range Minimum
0x000CFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
,, _Y04, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000D0000, // Range Minimum
0x000D3FFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
,, _Y05, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000D4000, // Range Minimum
0x000D7FFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
,, _Y06, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000D8000, // Range Minimum
0x000DBFFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
,, _Y07, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000DC000, // Range Minimum
0x000DFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
,, _Y08, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000E0000, // Range Minimum
0x000E3FFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
,, _Y09, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000E4000, // Range Minimum
0x000E7FFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
,, _Y0A, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000E8000, // Range Minimum
0x000EBFFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
,, _Y0B, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000EC000, // Range Minimum
0x000EFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00004000, // Length
,, _Y0C, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x000F0000, // Range Minimum
0x000FFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00010000, // Length
,, _Y0D, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x00000000, // Range Minimum
0xFEAFFFFF, // Range Maximum
0x00000000, // Translation Offset
0xFEB00000, // Length
,, _Y0E, AddressRangeMemory, TypeStatic)
})
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
CreateWordField (BUF0, \_SB.PCI0._Y00._MAX, PBMX) // _MAX: Maximum Base Address
Store (Subtract (ShiftRight (PELN, 0x14), 0x02), PBMX)
CreateWordField (BUF0, \_SB.PCI0._Y00._LEN, PBLN) // _LEN: Length
Store (Subtract (ShiftRight (PELN, 0x14), One), PBLN)
If (PM1L)
{
CreateDWordField (BUF0, \_SB.PCI0._Y01._LEN, C0LN) // _LEN: Length
Store (Zero, C0LN)
}
If (LEqual (PM1L, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y01._RW, C0RW) // _RW_: Read-Write Status
Store (Zero, C0RW)
}
If (PM1H)
{
CreateDWordField (BUF0, \_SB.PCI0._Y02._LEN, C4LN) // _LEN: Length
Store (Zero, C4LN)
}
If (LEqual (PM1H, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y02._RW, C4RW) // _RW_: Read-Write Status
Store (Zero, C4RW)
}
If (PM2L)
{
CreateDWordField (BUF0, \_SB.PCI0._Y03._LEN, C8LN) // _LEN: Length
Store (Zero, C8LN)
}
If (LEqual (PM2L, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y03._RW, C8RW) // _RW_: Read-Write Status
Store (Zero, C8RW)
}
If (PM2H)
{
CreateDWordField (BUF0, \_SB.PCI0._Y04._LEN, CCLN) // _LEN: Length
Store (Zero, CCLN)
}
If (LEqual (PM2H, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y04._RW, CCRW) // _RW_: Read-Write Status
Store (Zero, CCRW)
}
If (PM3L)
{
CreateDWordField (BUF0, \_SB.PCI0._Y05._LEN, D0LN) // _LEN: Length
Store (Zero, D0LN)
}
If (LEqual (PM3L, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y05._RW, D0RW) // _RW_: Read-Write Status
Store (Zero, D0RW)
}
If (PM3H)
{
CreateDWordField (BUF0, \_SB.PCI0._Y06._LEN, D4LN) // _LEN: Length
Store (Zero, D4LN)
}
If (LEqual (PM3H, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y06._RW, D4RW) // _RW_: Read-Write Status
Store (Zero, D4RW)
}
If (PM4L)
{
CreateDWordField (BUF0, \_SB.PCI0._Y07._LEN, D8LN) // _LEN: Length
Store (Zero, D8LN)
}
If (LEqual (PM4L, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y07._RW, D8RW) // _RW_: Read-Write Status
Store (Zero, D8RW)
}
If (PM4H)
{
CreateDWordField (BUF0, \_SB.PCI0._Y08._LEN, DCLN) // _LEN: Length
Store (Zero, DCLN)
}
If (LEqual (PM4H, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y08._RW, DCRW) // _RW_: Read-Write Status
Store (Zero, DCRW)
}
If (PM5L)
{
CreateDWordField (BUF0, \_SB.PCI0._Y09._LEN, E0LN) // _LEN: Length
Store (Zero, E0LN)
}
If (LEqual (PM5L, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y09._RW, E0RW) // _RW_: Read-Write Status
Store (Zero, E0RW)
}
If (PM5H)
{
CreateDWordField (BUF0, \_SB.PCI0._Y0A._LEN, E4LN) // _LEN: Length
Store (Zero, E4LN)
}
If (LEqual (PM5H, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y0A._RW, E4RW) // _RW_: Read-Write Status
Store (Zero, E4RW)
}
If (PM6L)
{
CreateDWordField (BUF0, \_SB.PCI0._Y0B._LEN, E8LN) // _LEN: Length
Store (Zero, E8LN)
}
If (LEqual (PM6L, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y0B._RW, E8RW) // _RW_: Read-Write Status
Store (Zero, E8RW)
}
If (PM6H)
{
CreateDWordField (BUF0, \_SB.PCI0._Y0C._LEN, ECLN) // _LEN: Length
Store (Zero, ECLN)
}
If (LEqual (PM6H, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y0C._RW, ECRW) // _RW_: Read-Write Status
Store (Zero, ECRW)
}
If (PM0H)
{
CreateDWordField (BUF0, \_SB.PCI0._Y0D._LEN, F0LN) // _LEN: Length
Store (Zero, F0LN)
}
If (LEqual (PM0H, One))
{
CreateBitField (BUF0, \_SB.PCI0._Y0D._RW, F0RW) // _RW_: Read-Write Status
Store (Zero, F0RW)
}
CreateDWordField (BUF0, \_SB.PCI0._Y0E._MIN, M1MN) // _MIN: Minimum Base Address
CreateDWordField (BUF0, \_SB.PCI0._Y0E._MAX, M1MX) // _MAX: Maximum Base Address
CreateDWordField (BUF0, \_SB.PCI0._Y0E._LEN, M1LN) // _LEN: Length
ShiftLeft (TLUD, 0x14, M1MN)
Add (Subtract (M1MX, M1MN), One, M1LN)
Return (BUF0)
}
Name (GUID, Buffer (0x10)
{
/* 0000 */ 0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40,
/* 0008 */ 0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66
})
Name (SUPP, Zero)
Name (CTRL, Zero)
Name (XCNT, Zero)
Method (_OSC, 4, Serialized) // _OSC: Operating System Capabilities
{
Store (Arg3, Local0)
CreateDWordField (Local0, Zero, CDW1)
CreateDWordField (Local0, 0x04, CDW2)
CreateDWordField (Local0, 0x08, CDW3)
If (^XHC.CUID (Arg0))
{
Return (^XHC.POSC (Arg1, Arg2, Arg3))
}
Else
{
If (_OSI ("Windows 2012"))
{
If (LEqual (XCNT, Zero))
{
^XHC.XSEL ()
Increment (XCNT)
}
}
}
If (LEqual (Arg0, GUID))
{
Store (CDW2, SUPP)
Store (CDW3, CTRL)
If (LEqual (NEXP, Zero))
{
And (CTRL, 0xFFFFFFF8, CTRL)
}
And (CTRL, 0x1E, CTRL)
And (CTRL, 0x1D, CTRL)
If (NEXP)
{
If (Not (And (CDW1, One)))
{
If (And (CTRL, One))
{
NHPG ()
}
If (And (CTRL, 0x04))
{
NPME ()
}
}
}
If (LNotEqual (Arg1, One))
{
Or (CDW1, 0x08, CDW1)
}
If (LNotEqual (CDW3, CTRL))
{
Or (CDW1, 0x10, CDW1)
}
Store (CTRL, CDW3)
Store (CTRL, OSCC)
Return (Local0)
}
Else
{
Or (CDW1, 0x04, CDW1)
Return (Local0)
}
}
Scope (\_SB.PCI0)
{
Method (AR00, 0, NotSerialized)
{
Return (^^AR00)
}
Method (PR00, 0, NotSerialized)
{
Return (^^PR00)
}
Method (AR02, 0, NotSerialized)
{
Return (^^AR02)
}
Method (PR02, 0, NotSerialized)
{
Return (^^PR02)
}
Method (AR04, 0, NotSerialized)
{
Return (^^AR04)
}
Method (PR04, 0, NotSerialized)
{
Return (^^PR04)
}
Method (AR05, 0, NotSerialized)
{
Return (^^AR05)
}
Method (PR05, 0, NotSerialized)
{
Return (^^PR05)
}
Method (AR06, 0, NotSerialized)
{
Return (^^AR06)
}
Method (PR06, 0, NotSerialized)
{
Return (^^PR06)
}
Method (AR07, 0, NotSerialized)
{
Return (^^AR07)
}
Method (PR07, 0, NotSerialized)
{
Return (^^PR07)
}
Method (AR08, 0, NotSerialized)
{
Return (^^AR08)
}
Method (PR08, 0, NotSerialized)
{
Return (^^PR08)
}
Method (AR09, 0, NotSerialized)
{
Return (^^AR09)
}
Method (PR09, 0, NotSerialized)
{
Return (^^PR09)
}
Method (AR0E, 0, NotSerialized)
{
Return (^^AR0E)
}
Method (PR0E, 0, NotSerialized)
{
Return (^^PR0E)
}
Method (AR0F, 0, NotSerialized)
{
Return (^^AR0F)
}
Method (PR0F, 0, NotSerialized)
{
Return (^^PR0F)
}
Method (AR0A, 0, NotSerialized)
{
Return (^^AR0A)
}
Method (PR0A, 0, NotSerialized)
{
Return (^^PR0A)
}
Method (AR0B, 0, NotSerialized)
{
Return (^^AR0B)
}
Method (PR0B, 0, NotSerialized)
{
Return (^^PR0B)
}
}
Device (TPMX)
{
Name (_HID, EisaId ("PNP0C01")) // _HID: Hardware ID
Name (_UID, One) // _UID: Unique ID
Name (CRS, ResourceTemplate ()
{
Memory32Fixed (ReadOnly,
0xFED40000, // Address Base
0x00005000, // Address Length
)
})
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Return (CRS)
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (TPMF)
{
Return (Zero)
}
Return (0x0F)
}
}
Device (LPCB)
{
Name (_ADR, 0x001F0000) // _ADR: Address
Scope (\_SB)
{
OperationRegion (PCI0.LPCB.LPC1, PCI_Config, Zero, 0x0100)
Field (PCI0.LPCB.LPC1, AnyAcc, NoLock, Preserve)
{
Offset (0x02),
CDID, 16,
Offset (0x08),
CRID, 8,
Offset (0x60),
PARC, 8,
PBRC, 8,
PCRC, 8,
PDRC, 8,
Offset (0x68),
PERC, 8,
PFRC, 8,
PGRC, 8,
PHRC, 8,
Offset (0xAC),
Offset (0xAD),
Offset (0xAE),
XUSB, 1
}
Device (LNKA)
{
Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
Name (_UID, One) // _UID: Unique ID
Method (_DIS, 0, Serialized) // _DIS: Disable Device
{
Or (PARC, 0x80, PARC)
}
Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
{
Return (PRSA)
}
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
Name (RTLA, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{}
})
CreateWordField (RTLA, One, IRQ0)
Store (Zero, IRQ0)
ShiftLeft (One, And (PARC, 0x0F), IRQ0)
Return (RTLA)
}
Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
{
CreateWordField (Arg0, One, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PARC)
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (And (PARC, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
}
Device (LNKB)
{
Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
Name (_UID, 0x02) // _UID: Unique ID
Method (_DIS, 0, Serialized) // _DIS: Disable Device
{
Or (PBRC, 0x80, PBRC)
}
Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
{
Return (PRSB)
}
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
Name (RTLB, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{}
})
CreateWordField (RTLB, One, IRQ0)
Store (Zero, IRQ0)
ShiftLeft (One, And (PBRC, 0x0F), IRQ0)
Return (RTLB)
}
Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
{
CreateWordField (Arg0, One, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PBRC)
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (And (PBRC, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
}
Device (LNKC)
{
Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
Name (_UID, 0x03) // _UID: Unique ID
Method (_DIS, 0, Serialized) // _DIS: Disable Device
{
Or (PCRC, 0x80, PCRC)
}
Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
{
Return (PRSC)
}
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
Name (RTLC, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{}
})
CreateWordField (RTLC, One, IRQ0)
Store (Zero, IRQ0)
ShiftLeft (One, And (PCRC, 0x0F), IRQ0)
Return (RTLC)
}
Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
{
CreateWordField (Arg0, One, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PCRC)
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (And (PCRC, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
}
Device (LNKD)
{
Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
Name (_UID, 0x04) // _UID: Unique ID
Method (_DIS, 0, Serialized) // _DIS: Disable Device
{
Or (PDRC, 0x80, PDRC)
}
Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
{
Return (PRSD)
}
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
Name (RTLD, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{}
})
CreateWordField (RTLD, One, IRQ0)
Store (Zero, IRQ0)
ShiftLeft (One, And (PDRC, 0x0F), IRQ0)
Return (RTLD)
}
Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
{
CreateWordField (Arg0, One, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PDRC)
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (And (PDRC, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
}
Device (LNKE)
{
Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
Name (_UID, 0x05) // _UID: Unique ID
Method (_DIS, 0, Serialized) // _DIS: Disable Device
{
Or (PERC, 0x80, PERC)
}
Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
{
Return (PRSE)
}
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
Name (RTLE, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{}
})
CreateWordField (RTLE, One, IRQ0)
Store (Zero, IRQ0)
ShiftLeft (One, And (PERC, 0x0F), IRQ0)
Return (RTLE)
}
Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
{
CreateWordField (Arg0, One, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PERC)
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (And (PERC, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
}
Device (LNKF)
{
Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
Name (_UID, 0x06) // _UID: Unique ID
Method (_DIS, 0, Serialized) // _DIS: Disable Device
{
Or (PFRC, 0x80, PFRC)
}
Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
{
Return (PRSF)
}
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
Name (RTLF, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{}
})
CreateWordField (RTLF, One, IRQ0)
Store (Zero, IRQ0)
ShiftLeft (One, And (PFRC, 0x0F), IRQ0)
Return (RTLF)
}
Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
{
CreateWordField (Arg0, One, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PFRC)
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (And (PFRC, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
}
Device (LNKG)
{
Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
Name (_UID, 0x07) // _UID: Unique ID
Method (_DIS, 0, Serialized) // _DIS: Disable Device
{
Or (PGRC, 0x80, PGRC)
}
Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
{
Return (PRSG)
}
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
Name (RTLG, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{}
})
CreateWordField (RTLG, One, IRQ0)
Store (Zero, IRQ0)
ShiftLeft (One, And (PGRC, 0x0F), IRQ0)
Return (RTLG)
}
Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
{
CreateWordField (Arg0, One, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PGRC)
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (And (PGRC, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
}
Device (LNKH)
{
Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
Name (_UID, 0x08) // _UID: Unique ID
Method (_DIS, 0, Serialized) // _DIS: Disable Device
{
Or (PHRC, 0x80, PHRC)
}
Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
{
Return (PRSH)
}
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
Name (RTLH, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{}
})
CreateWordField (RTLH, One, IRQ0)
Store (Zero, IRQ0)
ShiftLeft (One, And (PHRC, 0x0F), IRQ0)
Return (RTLH)
}
Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
{
CreateWordField (Arg0, One, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Store (Local0, PHRC)
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (And (PHRC, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
}
}
OperationRegion (LPC0, PCI_Config, 0x40, 0xC0)
Field (LPC0, AnyAcc, NoLock, Preserve)
{
Offset (0x40),
IOD0, 8,
IOD1, 8,
Offset (0x78),
, 6,
GR03, 2,
Offset (0x7A),
GR08, 2,
GR09, 2,
GR0A, 2,
GR0B, 2,
Offset (0x7C),
, 2,
GR19, 2,
Offset (0x80),
Offset (0xB0),
RAEN, 1,
, 13,
RCBA, 18
}
Device (DMAC)
{
Name (_HID, EisaId ("PNP0200")) // _HID: Hardware ID
Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0x20, // Length
)
IO (Decode16,
0x0081, // Range Minimum
0x0081, // Range Maximum
0x01, // Alignment
0x11, // Length
)
IO (Decode16,
0x0093, // Range Minimum
0x0093, // Range Maximum
0x01, // Alignment
0x0D, // Length
)
IO (Decode16,
0x00C0, // Range Minimum
0x00C0, // Range Maximum
0x01, // Alignment
0x20, // Length
)
DMA (Compatibility, NotBusMaster, Transfer8_16, )
{4}
})
}
Device (FWHD)
{
Name (_HID, EisaId ("INT0800")) // _HID: Hardware ID
Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
Memory32Fixed (ReadOnly,
0xFF000000, // Address Base
0x01000000, // Address Length
)
})
}
Device (HPET)
{
Name (_HID, EisaId ("PNP0103")) // _HID: Hardware ID
Name (_UID, Zero) // _UID: Unique ID
Name (BUF0, ResourceTemplate ()
{
Memory32Fixed (ReadWrite,
0xFED00000, // Address Base
0x00000400, // Address Length
_Y0F)
})
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LGreaterEqual (OSYS, 0x07D1))
{
If (HPAE)
{
Return (0x0F)
}
}
Else
{
If (HPAE)
{
Return (0x0B)
}
}
Return (Zero)
}
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
If (HPAE)
{
CreateDWordField (BUF0, \_SB.PCI0.LPCB.HPET._Y0F._BAS, HPT0) // _BAS: Base Address
If (LEqual (HPAS, One))
{
Store (0xFED01000, HPT0)
}
If (LEqual (HPAS, 0x02))
{
Store (0xFED02000, HPT0)
}
If (LEqual (HPAS, 0x03))
{
Store (0xFED03000, HPT0)
}
}
Return (BUF0)
}
}
Device (IPIC)
{
Name (_HID, EisaId ("PNP0000")) // _HID: Hardware ID
Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
IO (Decode16,
0x0020, // Range Minimum
0x0020, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0024, // Range Minimum
0x0024, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0028, // Range Minimum
0x0028, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x002C, // Range Minimum
0x002C, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0030, // Range Minimum
0x0030, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0034, // Range Minimum
0x0034, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0038, // Range Minimum
0x0038, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x003C, // Range Minimum
0x003C, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00A0, // Range Minimum
0x00A0, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00A4, // Range Minimum
0x00A4, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00A8, // Range Minimum
0x00A8, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00AC, // Range Minimum
0x00AC, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00B0, // Range Minimum
0x00B0, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00B4, // Range Minimum
0x00B4, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00B8, // Range Minimum
0x00B8, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00BC, // Range Minimum
0x00BC, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x04D0, // Range Minimum
0x04D0, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IRQNoFlags ()
{2}
})
}
Device (LDRC)
{
Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID
Name (_UID, 0x02) // _UID: Unique ID
Name (BUF0, ResourceTemplate ()
{
IO (Decode16,
0x002E, // Range Minimum
0x002E, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x004E, // Range Minimum
0x004E, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0061, // Range Minimum
0x0061, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0063, // Range Minimum
0x0063, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0065, // Range Minimum
0x0065, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0067, // Range Minimum
0x0067, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0070, // Range Minimum
0x0070, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0080, // Range Minimum
0x0080, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0092, // Range Minimum
0x0092, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x00B2, // Range Minimum
0x00B2, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0680, // Range Minimum
0x0680, // Range Maximum
0x01, // Alignment
0x20, // Length
)
IO (Decode16,
0xFFFF, // Range Minimum
0xFFFF, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0xFFFF, // Range Minimum
0xFFFF, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0xFFFF, // Range Minimum
0xFFFF, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0800, // Range Minimum
0x0800, // Range Maximum
0x01, // Alignment
0xFF, // Length
_Y10)
IO (Decode16,
0x0900, // Range Minimum
0x0900, // Range Maximum
0x01, // Alignment
0xFF, // Length
_Y11)
IO (Decode16,
0x0A00, // Range Minimum
0x0A00, // Range Maximum
0x01, // Alignment
0xFF, // Length
_Y12)
IO (Decode16,
0x0B00, // Range Minimum
0x0B00, // Range Maximum
0x01, // Alignment
0xFF, // Length
_Y13)
IO (Decode16,
0x1800, // Range Minimum
0x1800, // Range Maximum
0x01, // Alignment
0xFF, // Length
)
IO (Decode16,
0x164E, // Range Minimum
0x164E, // Range Maximum
0x01, // Alignment
0x02, // Length
)
})
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y10._MIN, IO0M) // _MIN: Minimum Base Address
CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y10._MAX, IO0X) // _MAX: Maximum Base Address
Store (GPBS, IO0M)
Store (GPBS, IO0X)
CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y11._MIN, IO1M) // _MIN: Minimum Base Address
CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y11._MAX, IO1X) // _MAX: Maximum Base Address
Store (Add (GPBS, 0x0100), IO1M)
Store (Add (GPBS, 0x0100), IO1X)
CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y12._MIN, IO2M) // _MIN: Minimum Base Address
CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y12._MAX, IO2X) // _MAX: Maximum Base Address
Store (Add (GPBS, 0x0200), IO2M)
Store (Add (GPBS, 0x0200), IO2X)
CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y13._MIN, IO3M) // _MIN: Minimum Base Address
CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y13._MAX, IO3X) // _MAX: Maximum Base Address
Store (Add (GPBS, 0x0300), IO3M)
Store (Add (GPBS, 0x0300), IO3X)
Return (BUF0)
}
}
Device (RTC)
{
Name (_HID, EisaId ("PNP0B00")) // _HID: Hardware ID
Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
IO (Decode16,
0x0070, // Range Minimum
0x0070, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{8}
})
}
Device (TIMR)
{
Name (_HID, EisaId ("PNP0100")) // _HID: Hardware ID
Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
IO (Decode16,
0x0040, // Range Minimum
0x0040, // Range Maximum
0x01, // Alignment
0x04, // Length
)
IO (Decode16,
0x0050, // Range Minimum
0x0050, // Range Maximum
0x10, // Alignment
0x04, // Length
)
IRQNoFlags ()
{0}
})
}
Device (CWDT)
{
Name (_HID, EisaId ("INT3F0D")) // _HID: Hardware ID
Name (_CID, EisaId ("PNP0C02")) // _CID: Compatible ID
Name (BUF0, ResourceTemplate ()
{
IO (Decode16,
0x1854, // Range Minimum
0x1854, // Range Maximum
0x04, // Alignment
0x04, // Length
)
})
Method (_STA, 0, Serialized) // _STA: Status
{
If (LEqual (WDTE, One))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
Return (BUF0)
}
}
Device (SIO1)
{
Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID
Name (_UID, 0x0111) // _UID: Unique ID
Name (CRS, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x00, // Alignment
0x00, // Length
_Y14)
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x00, // Alignment
0x00, // Length
_Y15)
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x00, // Alignment
0x00, // Length
)
})
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
If (LAnd (LLess (SP1O, 0x03F0), LGreater (SP1O, 0xF0)))
{
CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y14._MIN, GPI0) // _MIN: Minimum Base Address
CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y14._MAX, GPI1) // _MAX: Maximum Base Address
CreateByteField (CRS, \_SB.PCI0.LPCB.SIO1._Y14._LEN, GPIL) // _LEN: Length
Store (SP1O, GPI0)
Store (SP1O, GPI1)
Store (0x02, GPIL)
}
If (IO1B)
{
CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y15._MIN, GP10) // _MIN: Minimum Base Address
CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y15._MAX, GP11) // _MAX: Maximum Base Address
CreateByteField (CRS, \_SB.PCI0.LPCB.SIO1._Y15._LEN, GPL1) // _LEN: Length
Store (IO1B, GP10)
Store (IO1B, GP11)
Store (IO1L, GPL1)
}
Return (CRS)
}
Name (DCAT, Package (0x15)
{
0x02,
0x03,
One,
Zero,
0xFF,
0xFF,
0xFF,
0xFF,
0xFF,
0xFF,
0x05,
0xFF,
0xFF,
0xFF,
0xFF,
0xFF,
0x06,
0xFF,
0xFF,
0xFF,
0xFF
})
Mutex (MUT0, 0x00)
Method (ENFG, 1, NotSerialized)
{
Acquire (MUT0, 0x0FFF)
Store (0x87, INDX)
Store (0x87, INDX)
Store (Arg0, LDN)
}
Method (EXFG, 0, NotSerialized)
{
Store (0xAA, INDX)
Release (MUT0)
}
Method (LPTM, 1, NotSerialized)
{
ENFG (CGLD (Arg0))
And (OPT0, 0x02, Local0)
EXFG ()
Return (Local0)
}
Method (UHID, 1, NotSerialized)
{
If (LEqual (Arg0, One))
{
Return (0x1005D041)
}
Return (0x0105D041)
}
OperationRegion (IOID, SystemIO, SP1O, 0x02)
Field (IOID, ByteAcc, NoLock, Preserve)
{
INDX, 8,
DATA, 8
}
IndexField (INDX, DATA, ByteAcc, NoLock, Preserve)
{
Offset (0x07),
LDN, 8,
Offset (0x21),
SCF1, 8,
SCF2, 8,
SCF3, 8,
SCF4, 8,
SCF5, 8,
SCF6, 8,
SCF7, 8,
Offset (0x29),
CKCF, 8,
Offset (0x30),
ACTR, 8,
Offset (0x60),
IOAH, 8,
IOAL, 8,
IOH2, 8,
IOL2, 8,
Offset (0x70),
INTR, 8,
Offset (0x74),
DMCH, 8,
Offset (0xE0),
RGE0, 8,
RGE1, 8,
RGE2, 8,
RGE3, 8,
RGE4, 8,
RGE5, 8,
RGE6, 8,
RGE7, 8,
RGE8, 8,
Offset (0xF0),
OPT0, 8,
OPT1, 8,
OPT2, 8,
OPT3, 8,
OPT4, 8,
OPT5, 8,
OPT6, 8,
OPT7, 8
}
Method (CGLD, 1, NotSerialized)
{
Return (DerefOf (Index (DCAT, Arg0)))
}
Method (DSTA, 1, NotSerialized)
{
ENFG (CGLD (Arg0))
Store (ACTR, Local0)
EXFG ()
If (LEqual (Local0, 0xFF))
{
Return (Zero)
}
And (Local0, One, Local0)
Or (IOST, ShiftLeft (Local0, Arg0), IOST)
If (Local0)
{
Return (0x0F)
}
Else
{
If (And (ShiftLeft (One, Arg0), IOST))
{
Return (0x0D)
}
Else
{
Return (Zero)
}
}
}
Method (DCNT, 2, NotSerialized)
{
ENFG (CGLD (Arg0))
If (LAnd (LLess (DMCH, 0x04), LNotEqual (And (DMCH, 0x03,
Local1), Zero)))
{
RDMA (Arg0, Arg1, Increment (Local1))
}
Store (Arg1, ACTR)
ShiftLeft (IOAH, 0x08, Local1)
Or (IOAL, Local1, Local1)
RRIO (Arg0, Arg1, Local1, 0x08)
EXFG ()
}
Name (CRS1, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0x00, // Length
_Y18)
IRQNoFlags (_Y16)
{}
DMA (Compatibility, NotBusMaster, Transfer8, _Y17)
{}
})
CreateWordField (CRS1, \_SB.PCI0.LPCB.SIO1._Y16._INT, IRQM) // _INT: Interrupts
CreateByteField (CRS1, \_SB.PCI0.LPCB.SIO1._Y17._DMA, DMAM) // _DMA: Direct Memory Access
CreateWordField (CRS1, \_SB.PCI0.LPCB.SIO1._Y18._MIN, IO11) // _MIN: Minimum Base Address
CreateWordField (CRS1, \_SB.PCI0.LPCB.SIO1._Y18._MAX, IO12) // _MAX: Maximum Base Address
CreateByteField (CRS1, \_SB.PCI0.LPCB.SIO1._Y18._LEN, LEN1) // _LEN: Length
Name (CRS2, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0x00, // Length
_Y1B)
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0x00, // Length
_Y1C)
IRQNoFlags (_Y19)
{}
DMA (Compatibility, NotBusMaster, Transfer8, _Y1A)
{2}
})
CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y19._INT, IRQE) // _INT: Interrupts
CreateByteField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1A._DMA, DMAE) // _DMA: Direct Memory Access
CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1B._MIN, IO21) // _MIN: Minimum Base Address
CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1B._MAX, IO22) // _MAX: Maximum Base Address
CreateByteField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1B._LEN, LEN2) // _LEN: Length
CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1C._MIN, IO31) // _MIN: Minimum Base Address
CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1C._MAX, IO32) // _MAX: Maximum Base Address
CreateByteField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1C._LEN, LEN3) // _LEN: Length
Name (CRS4, ResourceTemplate ()
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0x00, // Length
_Y1E)
IRQ (Edge, ActiveLow, Shared, _Y1D)
{}
})
CreateWordField (CRS4, \_SB.PCI0.LPCB.SIO1._Y1D._INT, IRQL) // _INT: Interrupts
CreateWordField (CRS4, \_SB.PCI0.LPCB.SIO1._Y1E._MIN, IOHL) // _MIN: Minimum Base Address
CreateWordField (CRS4, \_SB.PCI0.LPCB.SIO1._Y1E._MAX, IORL) // _MAX: Maximum Base Address
CreateByteField (CRS4, \_SB.PCI0.LPCB.SIO1._Y1E._ALN, ALMN) // _ALN: Alignment
CreateByteField (CRS4, \_SB.PCI0.LPCB.SIO1._Y1E._LEN, LENG) // _LEN: Length
Method (DCRS, 2, NotSerialized)
{
ENFG (CGLD (Arg0))
ShiftLeft (IOAH, 0x08, IO11)
Or (IOAL, IO11, IO11)
Store (IO11, IO12)
Subtract (FindSetRightBit (IO11), One, Local0)
ShiftLeft (One, Local0, LEN1)
If (INTR)
{
ShiftLeft (One, INTR, IRQM)
}
Else
{
Store (Zero, IRQM)
}
If (LOr (LGreater (DMCH, 0x03), LEqual (Arg1, Zero)))
{
Store (Zero, DMAM)
}
Else
{
And (DMCH, 0x03, Local1)
ShiftLeft (One, Local1, DMAM)
}
EXFG ()
Return (CRS1)
}
Method (DSRS, 2, NotSerialized)
{
If (LEqual (Arg1, 0x02))
{
If (LPTM (0x02))
{
DSR2 (Arg0, Arg1)
}
}
Else
{
CreateWordField (Arg0, 0x09, IRQM)
CreateByteField (Arg0, 0x0C, DMAM)
CreateWordField (Arg0, 0x02, IO11)
ENFG (CGLD (Arg1))
And (IO11, 0xFF, IOAL)
ShiftRight (IO11, 0x08, IOAH)
If (IRQM)
{
FindSetRightBit (IRQM, Local0)
Subtract (Local0, One, INTR)
}
Else
{
Store (Zero, INTR)
}
If (DMAM)
{
FindSetRightBit (DMAM, Local0)
Subtract (Local0, One, DMCH)
}
Else
{
Store (0x04, DMCH)
}
EXFG ()
DCNT (Arg1, One)
Store (Arg1, Local2)
If (LGreater (Local2, Zero))
{
Subtract (Local2, One, Local2)
}
}
}
Method (DSR2, 2, NotSerialized)
{
CreateWordField (Arg0, 0x11, IRQT)
CreateByteField (Arg0, 0x14, DMAT)
CreateWordField (Arg0, 0x02, IOT1)
CreateWordField (Arg0, 0x0A, IOT2)
ENFG (CGLD (Arg1))
And (IOT1, 0xFF, IOAL)
ShiftRight (IOT1, 0x08, IOAH)
And (IOT2, 0xFF, IOL2)
ShiftRight (IOT2, 0x08, IOH2)
If (IRQT)
{
FindSetRightBit (IRQT, Local0)
Subtract (Local0, One, INTR)
}
Else
{
Store (Zero, INTR)
}
If (DMAT)
{
FindSetRightBit (DMAT, Local0)
Subtract (Local0, One, DMCH)
}
Else
{
Store (0x04, DMCH)
}
EXFG ()
DCNT (Arg1, One)
Store (Arg1, Local2)
If (LGreater (Local2, Zero))
{
Subtract (Local2, One, Local2)
}
}
Method (SIOK, 1, NotSerialized)
{
ENFG (0x0A)
While (OPT3)
{
Stall (0x80)
Store (0xFF, OPT3)
}
And (Arg0, One, Local0)
And (OPT2, 0xFE, Local1)
Or (Local0, Local1, OPT2)
Store (And (Arg0, One), ACTR)
EXFG ()
}
Method (SLED, 1, NotSerialized)
{
ENFG (0x0B)
If (Arg0)
{
If (LEqual (OPT7, 0x87))
{
Store (0x45, OPT7)
}
}
Else
{
If (LNotEqual (OPT7, Zero))
{
Store (0x87, OPT7)
}
}
EXFG ()
}
}
Name (PMFG, Zero)
Method (SIOS, 1, NotSerialized)
{
Store ("SIOS", Debug)
^SIO1.ENFG (0x0A)
OperationRegion (KBIO, SystemIO, 0x60, 0x05)
Field (KBIO, ByteAcc, NoLock, Preserve)
{
KBDT, 8,
Offset (0x02),
Offset (0x03),
Offset (0x04),
KBST, 8
}
If (LNotEqual (Arg0, 0x05))
{
Sleep (0xC8)
And (KBST, One, Local0)
While (Local0)
{
Store (KBDT, Local0)
Sleep (0xC8)
And (KBST, One, Local0)
}
}
If (LEqual (Arg0, One))
{
^SIO1.SIOK (Ones)
^SIO1.ENFG (0x0A)
If (KBFG)
{
Or (^SIO1.OPT6, 0x10, ^SIO1.OPT6)
}
If (MSFG)
{
Or (^SIO1.OPT6, 0x20, ^SIO1.OPT6)
}
If (LOr (LEqual (OSYS, 0x07D1), LEqual (OSYS, 0x07D2)))
{
And (^SIO1.RGE0, 0xF7, ^SIO1.RGE0)
If (CRFG)
{
Or (^SIO1.RGE0, 0x08, ^SIO1.RGE0)
}
If (CRFG)
{
Or (^SIO1.OPT2, One, ^SIO1.OPT2)
}
If (CRFG)
{
And (^SIO1.RGE8, 0x3F, ^SIO1.RGE8)
}
If (CRFG)
{
Or (^SIO1.OPT7, 0x10, ^SIO1.OPT7)
}
If (CRFG)
{
And (^SIO1.RGE8, 0x3F, ^SIO1.RGE8)
}
If (CRFG)
{
Or (^SIO1.RGE8, 0xC0, ^SIO1.RGE8)
}
}
Else
{
Or (^SIO1.OPT2, One, ^SIO1.OPT2)
And (^SIO1.RGE8, 0x3F, ^SIO1.RGE8)
Or (^SIO1.OPT7, 0x10, ^SIO1.OPT7)
And (^SIO1.RGE8, 0x3F, ^SIO1.RGE8)
Or (^SIO1.RGE8, 0xC0, ^SIO1.RGE8)
}
}
If (LGreaterEqual (Arg0, 0x03))
{
And (^SIO1.RGE0, 0x9F, ^SIO1.RGE0)
Store (Zero, ^SIO1.RGE1)
Store (Zero, ^SIO1.RGE2)
Store (^SIO1.RGE3, Local0)
Sleep (0xC8)
If (KBFG)
{
Or (^SIO1.RGE0, 0x41, ^SIO1.RGE0)
}
If (MSFG)
{
Or (^SIO1.RGE0, 0x22, ^SIO1.RGE0)
}
If (LOr (LEqual (OSYS, 0x07D1), LEqual (OSYS, 0x07D2)))
{
And (^SIO1.RGE0, 0xF7, ^SIO1.RGE0)
If (CRFG)
{
Or (^SIO1.RGE0, 0x08, ^SIO1.RGE0)
}
If (CRFG)
{
And (^SIO1.RGE8, 0x3F, ^SIO1.RGE8)
}
If (CRFG)
{
And (^SIO1.OPT7, 0xEF, ^SIO1.OPT7)
}
}
Else
{
And (^SIO1.RGE8, 0x3F, ^SIO1.RGE8)
And (^SIO1.OPT7, 0xEF, ^SIO1.OPT7)
}
}
If (Or (LEqual (Arg0, One), LEqual (Arg0, 0x03)))
{
^SIO1.SLED (Ones)
}
^SIO1.EXFG ()
}
Method (SIOW, 1, NotSerialized)
{
Store ("SIOW", Debug)
^SIO1.ENFG (0x0A)
^SIO1.SIOK (Zero)
^SIO1.ENFG (0x0A)
While (^SIO1.OPT3)
{
Stall (0x80)
Store (0xFF, ^SIO1.OPT3)
}
And (^SIO1.RGE0, 0x9F, ^SIO1.RGE0)
And (^SIO1.OPT6, 0xCF, ^SIO1.OPT6)
And (^SIO1.OPT2, 0xFE, ^SIO1.OPT2)
^SIO1.SLED (Zero)
^SIO1.EXFG ()
^SIO1.ENFG (0x0B)
Or (^SIO1.ACTR, 0xE0, ^SIO1.ACTR)
^SIO1.EXFG ()
}
Device (UAR2)
{
Name (_UID, 0x02) // _UID: Unique ID
Method (_HID, 0, NotSerialized) // _HID: Hardware ID
{
Return (^^SIO1.UHID (One))
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (^^SIO1.DSTA (One))
}
Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
{
^^SIO1.DCNT (One, Zero)
}
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Return (^^SIO1.DCRS (One, Zero))
}
Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
{
^^SIO1.DSRS (Arg0, One)
}
Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
{
StartDependentFn (0x00, 0x00)
{
IO (Decode16,
0x02F8, // Range Minimum
0x02F8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{3}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
StartDependentFnNoPri ()
{
IO (Decode16,
0x03F8, // Range Minimum
0x03F8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{4}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
StartDependentFnNoPri ()
{
IO (Decode16,
0x02F8, // Range Minimum
0x02F8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{3}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
StartDependentFnNoPri ()
{
IO (Decode16,
0x03E8, // Range Minimum
0x03E8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{4}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
StartDependentFnNoPri ()
{
IO (Decode16,
0x02E8, // Range Minimum
0x02E8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{3}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
EndDependentFn ()
})
}
OperationRegion (WIN2, SystemIO, 0x2E, 0x02)
Field (WIN2, ByteAcc, NoLock, Preserve)
{
IND1, 8,
DAT1, 8
}
IndexField (IND1, DAT1, ByteAcc, NoLock, Preserve)
{
Offset (0x07),
LDN1, 8,
Offset (0x1B),
MFP1, 8,
Offset (0x24),
MFP2, 8,
Offset (0x26),
GLO1, 8,
GLO2, 8,
Offset (0x2A),
MFP3, 8,
Offset (0x30),
ACT1, 8,
Offset (0x60),
IOH1, 8,
IOL1, 8,
Offset (0x70),
INT1, 8,
Offset (0xE0),
VBAT, 8
}
Method (ENF1, 0, NotSerialized)
{
Store (0x87, IND1)
Store (0x87, IND1)
}
Method (EXF1, 0, NotSerialized)
{
Store (0xAA, IND1)
}
Device (CIR)
{
Name (_HID, EisaId ("NTN0530")) // _HID: Hardware ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (IRST (0x10))
}
Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
{
ENF1 ()
Store (0x06, LDN1)
Store (Zero, ACT1)
Store (0x0E, LDN1)
Store (Zero, ACT1)
EXF1 ()
}
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Name (BUF1, ResourceTemplate ()
{
IO (Decode16,
0x0240, // Range Minimum
0x0240, // Range Maximum
0x00, // Alignment
0x10, // Length
)
IRQ (Edge, ActiveHigh, Shared, )
{3}
IO (Decode16,
0x0250, // Range Minimum
0x0250, // Range Maximum
0x00, // Alignment
0x10, // Length
)
})
Return (BUF1)
}
Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
{
ENF1 ()
Store (0x06, LDN1)
CreateWordField (Arg0, 0x09, IRQE)
If (IRQE)
{
FindSetRightBit (IRQE, Local0)
Subtract (Local0, One, INT1)
}
Else
{
Store (Zero, INT1)
}
Store (One, ACT1)
Store (0x0E, LDN1)
Store (One, ACT1)
EXF1 ()
}
Method (IRST, 1, NotSerialized)
{
^^SIO1.ENFG (^^SIO1.CGLD (Arg0))
If (^^SIO1.ACTR)
{
Store (0x0A, LDN1)
Store (VBAT, Local0)
Or (Local0, 0x08, Local0)
Store (Local0, VBAT)
Store (0x0F, Local0)
}
Else
{
If (^^SIO1.IOAH)
{
If (And (MFP1, 0x10))
{
Store (0x0D, Local0)
}
Else
{
Store (Zero, Local0)
}
}
Else
{
Store (Zero, Local0)
}
}
^^SIO1.EXFG ()
Return (Local0)
}
Method (NCAP, 0, NotSerialized)
{
Store (0x02, Local0)
Or (0xF0000000, Local0, Local0)
Return (Local0)
}
Method (NRXL, 0, NotSerialized)
{
Store (Zero, Local0)
ShiftLeft (Local0, 0x08, Local0)
Or (Local0, 0x80, Local0)
ShiftLeft (Local0, 0x08, Local0)
Or (Local0, 0xF5, Local0)
ShiftLeft (Local0, 0x08, Local0)
Or (Local0, 0x09, Local0)
Return (Local0)
}
Method (NTXP, 1, NotSerialized)
{
ENF1 ()
Store (MFP3, Local0)
And (Local0, 0xF7, Local0)
Store (Local0, MFP3)
Store (MFP2, Local1)
Or (Local0, 0x40, Local1)
Store (Local1, MFP2)
If (LEqual (Arg0, One))
{
Or (Local0, 0x08, Local0)
}
Else
{
If (LEqual (Arg0, 0x02))
{
And (Local1, 0xBF, Local1)
}
Else
{
If (LEqual (Arg0, 0x03))
{
Or (Local0, 0x08, Local0)
And (Local1, 0xBF, Local1)
}
}
}
Store (Local0, MFP3)
Store (Local1, MFP2)
EXF1 ()
}
Method (NLED, 0, NotSerialized)
{
ENF1 ()
Store (0x09, LDN1)
Store (0x0A, Local1)
While (Local1)
{
Sleep (0x32)
Sleep (0x32)
Decrement (Local1)
}
EXF1 ()
}
Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
{
Store (Arg0, CRFG)
}
}
Scope (\)
{
Name (CRFG, One)
}
Method (CIR._PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x1D, 0x03))
}
Device (RMSC)
{
Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID
Name (_UID, 0x10) // _UID: Unique ID
Name (CRS1, 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,
0x0062, // Range Minimum
0x0062, // Range Maximum
0x00, // Alignment
0x02, // Length
)
IO (Decode16,
0x0065, // Range Minimum
0x0065, // Range Maximum
0x00, // Alignment
0x0B, // Length
)
IO (Decode16,
0x0072, // Range Minimum
0x0072, // Range Maximum
0x00, // Alignment
0x0E, // Length
)
IO (Decode16,
0x0080, // Range Minimum
0x0080, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0084, // Range Minimum
0x0084, // Range Maximum
0x00, // Alignment
0x03, // Length
)
IO (Decode16,
0x0088, // Range Minimum
0x0088, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x008C, // Range Minimum
0x008C, // Range Maximum
0x00, // Alignment
0x03, // Length
)
IO (Decode16,
0x0090, // Range Minimum
0x0090, // Range Maximum
0x00, // Alignment
0x10, // Length
)
IO (Decode16,
0x00A2, // Range Minimum
0x00A2, // Range Maximum
0x00, // Alignment
0x1E, // Length
)
IO (Decode16,
0x00E0, // Range Minimum
0x00E0, // Range Maximum
0x00, // Alignment
0x10, // Length
)
IO (Decode16,
0x04D0, // Range Minimum
0x04D0, // Range Maximum
0x00, // Alignment
0x02, // Length
)
})
Name (CRS2, 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,
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
)
})
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
If (And (MBEC, 0xFFFF))
{
Return (CRS1)
}
Else
{
Return (CRS2)
}
}
}
Device (COPR)
{
Name (_HID, EisaId ("PNP0C04")) // _HID: Hardware ID
Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
IO (Decode16,
0x00F0, // Range Minimum
0x00F0, // Range Maximum
0x00, // Alignment
0x10, // Length
)
IRQNoFlags ()
{13}
})
}
Device (PS2K)
{
Method (_HID, 0, NotSerialized) // _HID: Hardware ID
{
Return (HIDK)
}
Method (_CID, 0, NotSerialized) // _CID: Compatible ID
{
Return (CIDK)
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (And (IOST, 0x0400))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
IO (Decode16,
0x0060, // Range Minimum
0x0060, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0064, // Range Minimum
0x0064, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IRQNoFlags ()
{1}
})
Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
{
StartDependentFn (0x00, 0x00)
{
IO (Decode16,
0x0060, // Range Minimum
0x0060, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0064, // Range Minimum
0x0064, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IRQNoFlags ()
{1}
}
EndDependentFn ()
})
Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
{
Store (Arg0, KBFG)
}
}
Scope (\)
{
Name (KBFG, One)
}
Method (PS2K._PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x1D, 0x04))
}
Device (PS2M)
{
Method (_HID, 0, NotSerialized) // _HID: Hardware ID
{
Return (HIDM)
}
Method (_CID, 0, NotSerialized) // _CID: Compatible ID
{
Return (CIDM)
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (And (IOST, 0x4000))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Name (CRS1, ResourceTemplate ()
{
IRQNoFlags ()
{12}
})
Name (CRS2, ResourceTemplate ()
{
IO (Decode16,
0x0060, // Range Minimum
0x0060, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0064, // Range Minimum
0x0064, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IRQNoFlags ()
{12}
})
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
If (And (IOST, 0x0400))
{
Return (CRS1)
}
Else
{
Return (CRS2)
}
}
Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
{
StartDependentFn (0x00, 0x00)
{
IRQNoFlags ()
{12}
}
EndDependentFn ()
})
Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
{
Store (Arg0, MSFG)
}
}
Scope (\)
{
Name (MSFG, One)
}
Method (PS2M._PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x1D, 0x04))
}
Device (UAR1)
{
Name (_UID, One) // _UID: Unique ID
Method (_HID, 0, NotSerialized) // _HID: Hardware ID
{
Return (^^SIO1.UHID (Zero))
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (And (IOST, One))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
{
^^SIO1.DCNT (Zero, Zero)
}
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Return (^^SIO1.DCRS (Zero, Zero))
}
Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
{
^^SIO1.DSRS (Arg0, Zero)
}
Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
{
StartDependentFn (0x00, 0x00)
{
IO (Decode16,
0x03F8, // Range Minimum
0x03F8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{4}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
StartDependentFnNoPri ()
{
IO (Decode16,
0x03F8, // Range Minimum
0x03F8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{4}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
StartDependentFnNoPri ()
{
IO (Decode16,
0x02F8, // Range Minimum
0x02F8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{3}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
StartDependentFnNoPri ()
{
IO (Decode16,
0x03E8, // Range Minimum
0x03E8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{4}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
StartDependentFnNoPri ()
{
IO (Decode16,
0x02E8, // Range Minimum
0x02E8, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{3}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
}
EndDependentFn ()
})
}
Method (UAR1._PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x08, 0x04))
}
}
Device (USB1)
{
Name (_ADR, 0x001D0001) // _ADR: Address
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x03, 0x03))
}
}
Device (RP01)
{
Name (_ADR, 0x001C0000) // _ADR: Address
OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
Field (PXCS, AnyAcc, NoLock, Preserve)
{
VDID, 32,
Offset (0x50),
L0SE, 1,
, 3,
LDIS, 1,
Offset (0x51),
Offset (0x52),
, 13,
LASX, 1,
Offset (0x54),
, 6,
HPCE, 1,
Offset (0x5A),
ABPX, 1,
, 2,
PDCX, 1,
, 2,
PDSX, 1,
Offset (0x5B),
Offset (0x60),
Offset (0x62),
PSPX, 1,
Offset (0xA4),
D3HT, 2,
Offset (0xD8),
, 30,
HPEX, 1,
PMEX, 1,
Offset (0xE2),
, 2,
L23E, 1,
L23R, 1,
Offset (0x324),
, 3,
LEDM, 1
}
Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
{
Offset (0xDC),
, 30,
HPSX, 1,
PMSX, 1
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LEqual (VDID, 0xFFFFFFFF))
{
Return (Zero)
}
Else
{
Return (0x0F)
}
}
Name (LTRV, Package (0x04)
{
Zero,
Zero,
Zero,
Zero
})
Name (OPTS, Zero)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
While (One)
{
Store (ToInteger (Arg0), _T_0)
If (LEqual (_T_0, Buffer (0x10)
{
/* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
/* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_1)
If (LEqual (_T_1, Zero))
{
If (LEqual (Arg1, 0x02))
{
Store (One, OPTS)
If (LTRE)
{
Or (OPTS, 0x40, OPTS)
}
If (OBFF)
{
Or (OPTS, 0x10, OPTS)
}
Return (OPTS)
}
Else
{
Return (Zero)
}
}
Else
{
If (LEqual (_T_1, 0x04))
{
If (LEqual (Arg1, 0x02))
{
If (OBFF)
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
})
}
Else
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
}
}
}
Else
{
If (LEqual (_T_1, 0x06))
{
If (LEqual (Arg1, 0x02))
{
If (LTRE)
{
Name (MLTR, Zero)
If (LEqual (PCHS, One))
{
Store (0x0846, MLTR)
}
Else
{
If (LEqual (PCHS, 0x02))
{
Store (0x1003, MLTR)
}
}
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
Zero))
Store (And (MLTR, 0x03FF), Index (LTRV, One))
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
0x02))
Store (And (MLTR, 0x03FF), Index (LTRV, 0x03))
Return (LTRV)
}
Else
{
Return (Zero)
}
}
}
}
}
Break
}
}
Break
}
Return (Buffer (One)
{
0x00
})
}
Method (HPME, 0, Serialized)
{
Sleep (0x64)
While (LNotEqual (PSPX, Zero))
{
Store (One, PSPX)
}
If (PMSX)
{
Store (0xC8, Local0)
While (Local0)
{
Store (One, PMSX)
If (PMSX)
{
Decrement (Local0)
}
Else
{
Store (Zero, Local0)
}
}
}
}
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR04 ())
}
Return (PR04 ())
}
}
Device (RP02)
{
Name (_ADR, 0x001C0001) // _ADR: Address
OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
Field (PXCS, AnyAcc, NoLock, Preserve)
{
VDID, 32,
Offset (0x50),
L0SE, 1,
, 3,
LDIS, 1,
Offset (0x51),
Offset (0x52),
, 13,
LASX, 1,
Offset (0x54),
, 6,
HPCE, 1,
Offset (0x5A),
ABPX, 1,
, 2,
PDCX, 1,
, 2,
PDSX, 1,
Offset (0x5B),
Offset (0x60),
Offset (0x62),
PSPX, 1,
Offset (0xA4),
D3HT, 2,
Offset (0xD8),
, 30,
HPEX, 1,
PMEX, 1,
Offset (0xE2),
, 2,
L23E, 1,
L23R, 1,
Offset (0x324),
, 3,
LEDM, 1
}
Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
{
Offset (0xDC),
, 30,
HPSX, 1,
PMSX, 1
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LEqual (VDID, 0xFFFFFFFF))
{
Return (Zero)
}
Else
{
Return (0x0F)
}
}
Name (LTRV, Package (0x04)
{
Zero,
Zero,
Zero,
Zero
})
Name (OPTS, Zero)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
While (One)
{
Store (ToInteger (Arg0), _T_0)
If (LEqual (_T_0, Buffer (0x10)
{
/* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
/* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_1)
If (LEqual (_T_1, Zero))
{
If (LEqual (Arg1, 0x02))
{
Store (One, OPTS)
If (LTRE)
{
Or (OPTS, 0x40, OPTS)
}
If (OBFF)
{
Or (OPTS, 0x10, OPTS)
}
Return (OPTS)
}
Else
{
Return (Zero)
}
}
Else
{
If (LEqual (_T_1, 0x04))
{
If (LEqual (Arg1, 0x02))
{
If (OBFF)
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
})
}
Else
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
}
}
}
Else
{
If (LEqual (_T_1, 0x06))
{
If (LEqual (Arg1, 0x02))
{
If (LTRE)
{
Name (MLTR, Zero)
If (LEqual (PCHS, One))
{
Store (0x0846, MLTR)
}
Else
{
If (LEqual (PCHS, 0x02))
{
Store (0x1003, MLTR)
}
}
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
Zero))
Store (And (MLTR, 0x03FF), Index (LTRV, One))
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
0x02))
Store (And (MLTR, 0x03FF), Index (LTRV, 0x03))
Return (LTRV)
}
Else
{
Return (Zero)
}
}
}
}
}
Break
}
}
Break
}
Return (Buffer (One)
{
0x00
})
}
Method (HPME, 0, Serialized)
{
Sleep (0x64)
While (LNotEqual (PSPX, Zero))
{
Store (One, PSPX)
}
If (PMSX)
{
Store (0xC8, Local0)
While (Local0)
{
Store (One, PMSX)
If (PMSX)
{
Decrement (Local0)
}
Else
{
Store (Zero, Local0)
}
}
}
}
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR05 ())
}
Return (PR05 ())
}
}
Device (RP03)
{
Name (_ADR, 0x001C0002) // _ADR: Address
OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
Field (PXCS, AnyAcc, NoLock, Preserve)
{
VDID, 32,
Offset (0x50),
L0SE, 1,
, 3,
LDIS, 1,
Offset (0x51),
Offset (0x52),
, 13,
LASX, 1,
Offset (0x54),
, 6,
HPCE, 1,
Offset (0x5A),
ABPX, 1,
, 2,
PDCX, 1,
, 2,
PDSX, 1,
Offset (0x5B),
Offset (0x60),
Offset (0x62),
PSPX, 1,
Offset (0xA4),
D3HT, 2,
Offset (0xD8),
, 30,
HPEX, 1,
PMEX, 1,
Offset (0xE2),
, 2,
L23E, 1,
L23R, 1,
Offset (0x324),
, 3,
LEDM, 1
}
Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
{
Offset (0xDC),
, 30,
HPSX, 1,
PMSX, 1
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LEqual (VDID, 0xFFFFFFFF))
{
Return (Zero)
}
Else
{
Return (0x0F)
}
}
Name (LTRV, Package (0x04)
{
Zero,
Zero,
Zero,
Zero
})
Name (OPTS, Zero)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
While (One)
{
Store (ToInteger (Arg0), _T_0)
If (LEqual (_T_0, Buffer (0x10)
{
/* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
/* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_1)
If (LEqual (_T_1, Zero))
{
If (LEqual (Arg1, 0x02))
{
Store (One, OPTS)
If (LTRE)
{
Or (OPTS, 0x40, OPTS)
}
If (OBFF)
{
Or (OPTS, 0x10, OPTS)
}
Return (OPTS)
}
Else
{
Return (Zero)
}
}
Else
{
If (LEqual (_T_1, 0x04))
{
If (LEqual (Arg1, 0x02))
{
If (OBFF)
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
})
}
Else
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
}
}
}
Else
{
If (LEqual (_T_1, 0x06))
{
If (LEqual (Arg1, 0x02))
{
If (LTRE)
{
Name (MLTR, Zero)
If (LEqual (PCHS, One))
{
Store (0x0846, MLTR)
}
Else
{
If (LEqual (PCHS, 0x02))
{
Store (0x1003, MLTR)
}
}
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
Zero))
Store (And (MLTR, 0x03FF), Index (LTRV, One))
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
0x02))
Store (And (MLTR, 0x03FF), Index (LTRV, 0x03))
Return (LTRV)
}
Else
{
Return (Zero)
}
}
}
}
}
Break
}
}
Break
}
Return (Buffer (One)
{
0x00
})
}
Method (HPME, 0, Serialized)
{
Sleep (0x64)
While (LNotEqual (PSPX, Zero))
{
Store (One, PSPX)
}
If (PMSX)
{
Store (0xC8, Local0)
While (Local0)
{
Store (One, PMSX)
If (PMSX)
{
Decrement (Local0)
}
Else
{
Store (Zero, Local0)
}
}
}
}
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR06 ())
}
Return (PR06 ())
}
}
Device (RP04)
{
Name (_ADR, 0x001C0003) // _ADR: Address
OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
Field (PXCS, AnyAcc, NoLock, Preserve)
{
VDID, 32,
Offset (0x50),
L0SE, 1,
, 3,
LDIS, 1,
Offset (0x51),
Offset (0x52),
, 13,
LASX, 1,
Offset (0x54),
, 6,
HPCE, 1,
Offset (0x5A),
ABPX, 1,
, 2,
PDCX, 1,
, 2,
PDSX, 1,
Offset (0x5B),
Offset (0x60),
Offset (0x62),
PSPX, 1,
Offset (0xA4),
D3HT, 2,
Offset (0xD8),
, 30,
HPEX, 1,
PMEX, 1,
Offset (0xE2),
, 2,
L23E, 1,
L23R, 1,
Offset (0x324),
, 3,
LEDM, 1
}
Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
{
Offset (0xDC),
, 30,
HPSX, 1,
PMSX, 1
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LEqual (VDID, 0xFFFFFFFF))
{
Return (Zero)
}
Else
{
Return (0x0F)
}
}
Name (LTRV, Package (0x04)
{
Zero,
Zero,
Zero,
Zero
})
Name (OPTS, Zero)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
While (One)
{
Store (ToInteger (Arg0), _T_0)
If (LEqual (_T_0, Buffer (0x10)
{
/* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
/* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_1)
If (LEqual (_T_1, Zero))
{
If (LEqual (Arg1, 0x02))
{
Store (One, OPTS)
If (LTRE)
{
Or (OPTS, 0x40, OPTS)
}
If (OBFF)
{
Or (OPTS, 0x10, OPTS)
}
Return (OPTS)
}
Else
{
Return (Zero)
}
}
Else
{
If (LEqual (_T_1, 0x04))
{
If (LEqual (Arg1, 0x02))
{
If (OBFF)
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
})
}
Else
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
}
}
}
Else
{
If (LEqual (_T_1, 0x06))
{
If (LEqual (Arg1, 0x02))
{
If (LTRE)
{
Name (MLTR, Zero)
If (LEqual (PCHS, One))
{
Store (0x0846, MLTR)
}
Else
{
If (LEqual (PCHS, 0x02))
{
Store (0x1003, MLTR)
}
}
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
Zero))
Store (And (MLTR, 0x03FF), Index (LTRV, One))
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
0x02))
Store (And (MLTR, 0x03FF), Index (LTRV, 0x03))
Return (LTRV)
}
Else
{
Return (Zero)
}
}
}
}
}
Break
}
}
Break
}
Return (Buffer (One)
{
0x00
})
}
Method (HPME, 0, Serialized)
{
Sleep (0x64)
While (LNotEqual (PSPX, Zero))
{
Store (One, PSPX)
}
If (PMSX)
{
Store (0xC8, Local0)
While (Local0)
{
Store (One, PMSX)
If (PMSX)
{
Decrement (Local0)
}
Else
{
Store (Zero, Local0)
}
}
}
}
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR07 ())
}
Return (PR07 ())
}
}
Device (RP05)
{
Name (_ADR, 0x001C0004) // _ADR: Address
OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
Field (PXCS, AnyAcc, NoLock, Preserve)
{
VDID, 32,
Offset (0x50),
L0SE, 1,
, 3,
LDIS, 1,
Offset (0x51),
Offset (0x52),
, 13,
LASX, 1,
Offset (0x54),
, 6,
HPCE, 1,
Offset (0x5A),
ABPX, 1,
, 2,
PDCX, 1,
, 2,
PDSX, 1,
Offset (0x5B),
Offset (0x60),
Offset (0x62),
PSPX, 1,
Offset (0xA4),
D3HT, 2,
Offset (0xD8),
, 30,
HPEX, 1,
PMEX, 1,
Offset (0xE2),
, 2,
L23E, 1,
L23R, 1,
Offset (0x324),
, 3,
LEDM, 1
}
Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
{
Offset (0xDC),
, 30,
HPSX, 1,
PMSX, 1
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LEqual (VDID, 0xFFFFFFFF))
{
Return (Zero)
}
Else
{
Return (0x0F)
}
}
Name (LTRV, Package (0x04)
{
Zero,
Zero,
Zero,
Zero
})
Name (OPTS, Zero)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
While (One)
{
Store (ToInteger (Arg0), _T_0)
If (LEqual (_T_0, Buffer (0x10)
{
/* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
/* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_1)
If (LEqual (_T_1, Zero))
{
If (LEqual (Arg1, 0x02))
{
Store (One, OPTS)
If (LTRE)
{
Or (OPTS, 0x40, OPTS)
}
If (OBFF)
{
Or (OPTS, 0x10, OPTS)
}
Return (OPTS)
}
Else
{
Return (Zero)
}
}
Else
{
If (LEqual (_T_1, 0x04))
{
If (LEqual (Arg1, 0x02))
{
If (OBFF)
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
})
}
Else
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
}
}
}
Else
{
If (LEqual (_T_1, 0x06))
{
If (LEqual (Arg1, 0x02))
{
If (LTRE)
{
Name (MLTR, Zero)
If (LEqual (PCHS, One))
{
Store (0x0846, MLTR)
}
Else
{
If (LEqual (PCHS, 0x02))
{
Store (0x1003, MLTR)
}
}
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
Zero))
Store (And (MLTR, 0x03FF), Index (LTRV, One))
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
0x02))
Store (And (MLTR, 0x03FF), Index (LTRV, 0x03))
Return (LTRV)
}
Else
{
Return (Zero)
}
}
}
}
}
Break
}
}
Break
}
Return (Buffer (One)
{
0x00
})
}
Method (HPME, 0, Serialized)
{
Sleep (0x64)
While (LNotEqual (PSPX, Zero))
{
Store (One, PSPX)
}
If (PMSX)
{
Store (0xC8, Local0)
While (Local0)
{
Store (One, PMSX)
If (PMSX)
{
Decrement (Local0)
}
Else
{
Store (Zero, Local0)
}
}
}
}
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR08 ())
}
Return (PR08 ())
}
}
Device (RP06)
{
Name (_ADR, 0x001C0005) // _ADR: Address
OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
Field (PXCS, AnyAcc, NoLock, Preserve)
{
VDID, 32,
Offset (0x50),
L0SE, 1,
, 3,
LDIS, 1,
Offset (0x51),
Offset (0x52),
, 13,
LASX, 1,
Offset (0x54),
, 6,
HPCE, 1,
Offset (0x5A),
ABPX, 1,
, 2,
PDCX, 1,
, 2,
PDSX, 1,
Offset (0x5B),
Offset (0x60),
Offset (0x62),
PSPX, 1,
Offset (0xA4),
D3HT, 2,
Offset (0xD8),
, 30,
HPEX, 1,
PMEX, 1,
Offset (0xE2),
, 2,
L23E, 1,
L23R, 1,
Offset (0x324),
, 3,
LEDM, 1
}
Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
{
Offset (0xDC),
, 30,
HPSX, 1,
PMSX, 1
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LEqual (VDID, 0xFFFFFFFF))
{
Return (Zero)
}
Else
{
Return (0x0F)
}
}
Name (LTRV, Package (0x04)
{
Zero,
Zero,
Zero,
Zero
})
Name (OPTS, Zero)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
While (One)
{
Store (ToInteger (Arg0), _T_0)
If (LEqual (_T_0, Buffer (0x10)
{
/* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
/* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_1)
If (LEqual (_T_1, Zero))
{
If (LEqual (Arg1, 0x02))
{
Store (One, OPTS)
If (LTRE)
{
Or (OPTS, 0x40, OPTS)
}
If (OBFF)
{
Or (OPTS, 0x10, OPTS)
}
Return (OPTS)
}
Else
{
Return (Zero)
}
}
Else
{
If (LEqual (_T_1, 0x04))
{
If (LEqual (Arg1, 0x02))
{
If (OBFF)
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
})
}
Else
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
}
}
}
Else
{
If (LEqual (_T_1, 0x06))
{
If (LEqual (Arg1, 0x02))
{
If (LTRE)
{
Name (MLTR, Zero)
If (LEqual (PCHS, One))
{
Store (0x0846, MLTR)
}
Else
{
If (LEqual (PCHS, 0x02))
{
Store (0x1003, MLTR)
}
}
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
Zero))
Store (And (MLTR, 0x03FF), Index (LTRV, One))
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
0x02))
Store (And (MLTR, 0x03FF), Index (LTRV, 0x03))
Return (LTRV)
}
Else
{
Return (Zero)
}
}
}
}
}
Break
}
}
Break
}
Return (Buffer (One)
{
0x00
})
}
Method (HPME, 0, Serialized)
{
Sleep (0x64)
While (LNotEqual (PSPX, Zero))
{
Store (One, PSPX)
}
If (PMSX)
{
Store (0xC8, Local0)
While (Local0)
{
Store (One, PMSX)
If (PMSX)
{
Decrement (Local0)
}
Else
{
Store (Zero, Local0)
}
}
}
}
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR09 ())
}
Return (PR09 ())
}
}
Device (RP07)
{
Name (_ADR, 0x001C0006) // _ADR: Address
OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
Field (PXCS, AnyAcc, NoLock, Preserve)
{
VDID, 32,
Offset (0x50),
L0SE, 1,
, 3,
LDIS, 1,
Offset (0x51),
Offset (0x52),
, 13,
LASX, 1,
Offset (0x54),
, 6,
HPCE, 1,
Offset (0x5A),
ABPX, 1,
, 2,
PDCX, 1,
, 2,
PDSX, 1,
Offset (0x5B),
Offset (0x60),
Offset (0x62),
PSPX, 1,
Offset (0xA4),
D3HT, 2,
Offset (0xD8),
, 30,
HPEX, 1,
PMEX, 1,
Offset (0xE2),
, 2,
L23E, 1,
L23R, 1,
Offset (0x324),
, 3,
LEDM, 1
}
Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
{
Offset (0xDC),
, 30,
HPSX, 1,
PMSX, 1
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LEqual (VDID, 0xFFFFFFFF))
{
Return (Zero)
}
Else
{
Return (0x0F)
}
}
Name (LTRV, Package (0x04)
{
Zero,
Zero,
Zero,
Zero
})
Name (OPTS, Zero)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
While (One)
{
Store (ToInteger (Arg0), _T_0)
If (LEqual (_T_0, Buffer (0x10)
{
/* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
/* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_1)
If (LEqual (_T_1, Zero))
{
If (LEqual (Arg1, 0x02))
{
Store (One, OPTS)
If (LTRE)
{
Or (OPTS, 0x40, OPTS)
}
If (OBFF)
{
Or (OPTS, 0x10, OPTS)
}
Return (OPTS)
}
Else
{
Return (Zero)
}
}
Else
{
If (LEqual (_T_1, 0x04))
{
If (LEqual (Arg1, 0x02))
{
If (OBFF)
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
})
}
Else
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
}
}
}
Else
{
If (LEqual (_T_1, 0x06))
{
If (LEqual (Arg1, 0x02))
{
If (LTRE)
{
Name (MLTR, Zero)
If (LEqual (PCHS, One))
{
Store (0x0846, MLTR)
}
Else
{
If (LEqual (PCHS, 0x02))
{
Store (0x1003, MLTR)
}
}
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
Zero))
Store (And (MLTR, 0x03FF), Index (LTRV, One))
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
0x02))
Store (And (MLTR, 0x03FF), Index (LTRV, 0x03))
Return (LTRV)
}
Else
{
Return (Zero)
}
}
}
}
}
Break
}
}
Break
}
Return (Buffer (One)
{
0x00
})
}
Method (HPME, 0, Serialized)
{
Sleep (0x64)
While (LNotEqual (PSPX, Zero))
{
Store (One, PSPX)
}
If (PMSX)
{
Store (0xC8, Local0)
While (Local0)
{
Store (One, PMSX)
If (PMSX)
{
Decrement (Local0)
}
Else
{
Store (Zero, Local0)
}
}
}
}
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR0E ())
}
Return (PR0E ())
}
Device (BR40)
{
Name (_ADR, Zero) // _ADR: Address
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x0B, 0x04))
}
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR40)
}
Return (PR40)
}
}
}
Device (RP08)
{
Name (_ADR, 0x001C0007) // _ADR: Address
OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
Field (PXCS, AnyAcc, NoLock, Preserve)
{
VDID, 32,
Offset (0x50),
L0SE, 1,
, 3,
LDIS, 1,
Offset (0x51),
Offset (0x52),
, 13,
LASX, 1,
Offset (0x54),
, 6,
HPCE, 1,
Offset (0x5A),
ABPX, 1,
, 2,
PDCX, 1,
, 2,
PDSX, 1,
Offset (0x5B),
Offset (0x60),
Offset (0x62),
PSPX, 1,
Offset (0xA4),
D3HT, 2,
Offset (0xD8),
, 30,
HPEX, 1,
PMEX, 1,
Offset (0xE2),
, 2,
L23E, 1,
L23R, 1,
Offset (0x324),
, 3,
LEDM, 1
}
Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
{
Offset (0xDC),
, 30,
HPSX, 1,
PMSX, 1
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LEqual (VDID, 0xFFFFFFFF))
{
Return (Zero)
}
Else
{
Return (0x0F)
}
}
Name (LTRV, Package (0x04)
{
Zero,
Zero,
Zero,
Zero
})
Name (OPTS, Zero)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
While (One)
{
Store (ToInteger (Arg0), _T_0)
If (LEqual (_T_0, Buffer (0x10)
{
/* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
/* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_1)
If (LEqual (_T_1, Zero))
{
If (LEqual (Arg1, 0x02))
{
Store (One, OPTS)
If (LTRE)
{
Or (OPTS, 0x40, OPTS)
}
If (OBFF)
{
Or (OPTS, 0x10, OPTS)
}
Return (OPTS)
}
Else
{
Return (Zero)
}
}
Else
{
If (LEqual (_T_1, 0x04))
{
If (LEqual (Arg1, 0x02))
{
If (OBFF)
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
})
}
Else
{
Return (Buffer (0x10)
{
/* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
}
}
}
Else
{
If (LEqual (_T_1, 0x06))
{
If (LEqual (Arg1, 0x02))
{
If (LTRE)
{
Name (MLTR, Zero)
If (LEqual (PCHS, One))
{
Store (0x0846, MLTR)
}
Else
{
If (LEqual (PCHS, 0x02))
{
Store (0x1003, MLTR)
}
}
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
Zero))
Store (And (MLTR, 0x03FF), Index (LTRV, One))
Store (And (ShiftRight (MLTR, 0x0A), 0x07), Index (LTRV,
0x02))
Store (And (MLTR, 0x03FF), Index (LTRV, 0x03))
Return (LTRV)
}
Else
{
Return (Zero)
}
}
}
}
}
Break
}
}
Break
}
Return (Buffer (One)
{
0x00
})
}
Method (HPME, 0, Serialized)
{
Sleep (0x64)
While (LNotEqual (PSPX, Zero))
{
Store (One, PSPX)
}
If (PMSX)
{
Store (0xC8, Local0)
While (Local0)
{
Store (One, PMSX)
If (PMSX)
{
Decrement (Local0)
}
Else
{
Store (Zero, Local0)
}
}
}
}
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR0F ())
}
Return (PR0F ())
}
}
Device (P0P2)
{
Name (_ADR, 0x00010000) // _ADR: Address
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR02 ())
}
Return (PR02 ())
}
Device (PEGP)
{
Name (_ADR, 0xFFFF) // _ADR: Address
}
}
Device (P0PA)
{
Name (_ADR, 0x00010001) // _ADR: Address
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR0A ())
}
Return (PR0A ())
}
}
Device (P0PB)
{
Name (_ADR, 0x00010002) // _ADR: Address
Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
{
If (PICM)
{
Return (AR0B ())
}
Return (PR0B ())
}
}
Device (B0D4)
{
Name (_ADR, 0x00040000) // _ADR: Address
}
}
Scope (\_GPE)
{
Method (_L1D, 0, NotSerialized) // _Lxx: Level-Triggered GPE
{
\_SB.PCI0.LPCB.SIOH ()
}
Method (_L08, 0, NotSerialized) // _Lxx: Level-Triggered GPE
{
\_SB.PCI0.LPCB.SIOH ()
}
Method (_L03, 0, NotSerialized) // _Lxx: Level-Triggered GPE
{
Notify (\_SB.PCI0.USB1, 0x02)
Notify (\_SB.PWRB, 0x02)
}
Method (_L0B, 0, NotSerialized) // _Lxx: Level-Triggered GPE
{
Notify (\_SB.PCI0.RP07.BR40, 0x02)
Notify (\_SB.PWRB, 0x02)
}
}
Device (PWRB)
{
Name (_HID, EisaId ("PNP0C0C")) // _HID: Hardware ID
Name (_UID, 0xAA) // _UID: Unique ID
Name (_STA, 0x0B) // _STA: Status
}
}
Name (RPA0, 0x001C0000)
Name (RPA1, 0x001C0001)
Name (RPA2, 0x001C0002)
Name (RPA3, 0x001C0003)
Name (RPA4, 0x001C0004)
Name (RPA5, 0x001C0005)
Name (RPA6, 0x001C0006)
Name (RPA7, 0x001C0007)
Name (PCHS, 0x00000001)
Scope (\)
{
OperationRegion (IO_D, SystemIO, 0x0810, 0x04)
Field (IO_D, ByteAcc, NoLock, Preserve)
{
TRPD, 8
}
OperationRegion (IO_H, SystemIO, 0x1000, 0x04)
Field (IO_H, ByteAcc, NoLock, Preserve)
{
TRPH, 8
}
OperationRegion (PMIO, SystemIO, PMBS, 0x80)
Field (PMIO, ByteAcc, NoLock, Preserve)
{
Offset (0x28),
Offset (0x2A),
, 3,
GPE3, 1,
, 7,
GPEB, 1,
Offset (0x3C),
, 1,
UPRW, 1,
Offset (0x42),
, 1,
GPEC, 1
}
Field (PMIO, ByteAcc, NoLock, WriteAsZeros)
{
Offset (0x20),
Offset (0x22),
, 3,
GPS3, 1,
, 7,
GPSB, 1,
Offset (0x64),
, 9,
SCIS, 1,
Offset (0x66)
}
OperationRegion (PMLP, SystemIO, Add (PMBS, 0x80), 0x20)
Field (PMLP, ByteAcc, NoLock, Preserve)
{
Offset (0x10),
Offset (0x11),
GE08, 1,
, 8,
GE17, 1,
, 17,
GE35, 1,
, 9,
GE45, 1,
, 5,
GE51, 1,
Offset (0x20)
}
Field (PMLP, ByteAcc, NoLock, WriteAsZeros)
{
Offset (0x01),
GS08, 1,
, 8,
GS17, 1,
, 17,
GS35, 1,
, 9,
GS45, 1,
, 5,
GS51, 1,
Offset (0x10)
}
OperationRegion (GPR, SystemIO, GPBS, 0x0400)
Field (GPR, ByteAcc, NoLock, Preserve)
{
GU00, 8,
GU01, 8,
GU02, 8,
GU03, 8,
GIO0, 8,
GIO1, 8,
GIO2, 8,
GIO3, 8,
Offset (0x0C),
GL00, 8,
GL01, 8,
GL02, 8,
GP24, 1,
, 2,
GP27, 1,
GP28, 1,
Offset (0x10),
Offset (0x18),
GB00, 8,
GB01, 8,
GB02, 8,
GB03, 8,
Offset (0x2C),
GIV0, 8,
GIV1, 8,
GIV2, 8,
GIV3, 8,
GU04, 8,
GU05, 8,
GU06, 8,
GU07, 8,
GIO4, 8,
GIO5, 8,
GIO6, 8,
GIO7, 8,
GL04, 8,
GL05, 8,
GL06, 8,
GL07, 8,
Offset (0x40),
GU08, 8,
GU09, 8,
GU0A, 8,
GU0B, 8,
GIO8, 8,
GIO9, 8,
GIOA, 8,
GIOB, 8,
GL08, 8,
GL09, 8,
GL0A, 8,
GL0B, 8
}
OperationRegion (GPRL, SystemIO, GPBS, 0x40)
Field (GPRL, ByteAcc, NoLock, Preserve)
{
Offset (0x01),
GO08, 1,
GO09, 1,
, 4,
GO14, 1,
, 2,
GO17, 1,
, 27,
GO45, 1,
, 5,
GO51, 1,
Offset (0x10),
Offset (0x30),
GR00, 32,
GR01, 32,
GR02, 32
}
OperationRegion (RCRB, SystemMemory, SRCB, 0x4000)
Field (RCRB, DWordAcc, Lock, Preserve)
{
Offset (0x1000),
Offset (0x2330),
AFEA, 32,
AFED, 32,
AFES, 16,
AFER, 16,
Offset (0x3000),
Offset (0x3400),
, 2,
CMUE, 1,
Offset (0x3404),
HPAS, 2,
, 5,
HPAE, 1,
Offset (0x3418),
, 1,
ADSD, 1,
SATD, 1,
SMBD, 1,
HDAD, 1,
Offset (0x341A),
RP1D, 1,
RP2D, 1,
RP3D, 1,
RP4D, 1,
RP5D, 1,
RP6D, 1,
RP7D, 1,
RP8D, 1,
Offset (0x359C),
UP0D, 1,
UP1D, 1,
UP2D, 1,
UP3D, 1,
UP4D, 1,
UP5D, 1,
UP6D, 1,
UP7D, 1,
UP8D, 1,
UP9D, 1,
UPAD, 1,
UPBD, 1,
UPCD, 1,
UPDD, 1,
, 1,
Offset (0x359E)
}
OperationRegion (IO_P, SystemIO, 0x1000, 0x04)
Field (IO_P, ByteAcc, NoLock, Preserve)
{
TRPF, 8
}
}
Scope (_SB)
{
Method (RDGI, 1, NotSerialized)
{
If (LLessEqual (Arg0, 0x5E))
{
Store (Add (Add (GPBS, 0x0100), Multiply (Arg0, 0x08)
), Local0)
OperationRegion (LGPI, SystemIO, Local0, 0x04)
Field (LGPI, AnyAcc, NoLock, Preserve)
{
, 30,
TEMP, 1
}
Return (TEMP)
}
}
Method (RDGP, 1, NotSerialized)
{
If (LLessEqual (Arg0, 0x5E))
{
Store (Add (Add (GPBS, 0x0100), Multiply (Arg0, 0x08)
), Local0)
OperationRegion (LGPI, SystemIO, Local0, 0x04)
Field (LGPI, AnyAcc, NoLock, Preserve)
{
, 31,
TEMP, 1
}
Return (TEMP)
}
}
Method (WTGP, 2, NotSerialized)
{
If (LLessEqual (Arg0, 0x5E))
{
Store (Add (Add (GPBS, 0x0100), Multiply (Arg0, 0x08)
), Local0)
OperationRegion (LGPI, SystemIO, Local0, 0x04)
Field (LGPI, AnyAcc, NoLock, Preserve)
{
, 31,
TEMP, 1
}
Store (Arg1, TEMP)
}
}
Method (WTIN, 2, NotSerialized)
{
If (LLessEqual (Arg0, 0x5E))
{
Store (Add (Add (GPBS, 0x0100), Multiply (Arg0, 0x08)
), Local0)
OperationRegion (LGPI, SystemIO, Local0, 0x04)
Field (LGPI, ByteAcc, NoLock, Preserve)
{
, 3,
TEMP, 1
}
Store (Arg1, TEMP)
}
}
Method (WPGP, 2, NotSerialized)
{
If (LLessEqual (Arg0, 0x5E))
{
Store (Add (Add (GPBS, 0x0104), Multiply (Arg0, 0x08)
), Local0)
OperationRegion (LGPI, SystemIO, Local0, 0x04)
Field (LGPI, AnyAcc, NoLock, Preserve)
{
TEMP, 2
}
Store (Arg1, TEMP)
}
}
Method (GP2N, 2, NotSerialized)
{
If (LLessEqual (Arg0, 0x5E))
{
Store (Add (Add (GPBS, 0x0100), Multiply (Arg0, 0x08)
), Local0)
OperationRegion (LGPI, SystemIO, Local0, 0x04)
Field (LGPI, AnyAcc, NoLock, Preserve)
{
TEMP, 1
}
Store (Arg1, TEMP)
}
}
Method (GP2A, 2, NotSerialized)
{
If (LLessEqual (Arg0, 0x5E))
{
Store (Add (Add (GPBS, 0x0104), Multiply (Arg0, 0x08)
), Local0)
OperationRegion (LGP2, SystemIO, Local0, 0x04)
Field (LGP2, AnyAcc, NoLock, Preserve)
{
GPWP, 2,
GPIS, 1
}
If (LEqual (Arg1, One))
{
Store (Zero, GPIS)
Store (Zero, GPWP)
}
Else
{
Store (0x02, GPWP)
Store (One, GPIS)
}
Store (Add (GPBS, 0x10), Local0)
OperationRegion (LGPI, SystemIO, Local0, 0x02)
Field (LGPI, AnyAcc, NoLock, Preserve)
{
TEMP, 16
}
If (LGreaterEqual (Arg0, 0x2D))
{
Subtract (Arg0, 0x28, Local1)
}
Else
{
If (LLessEqual (Arg0, 0x0A))
{
Subtract (Arg0, 0x08, Local1)
}
Else
{
Subtract (Arg0, 0x0A, Local1)
}
}
Store (ShiftLeft (One, Local1), Local2)
If (Arg1)
{
Or (TEMP, Local2, TEMP)
}
Else
{
And (TEMP, Not (Local2), TEMP)
}
}
}
Method (GP2B, 2, NotSerialized)
{
If (LLessEqual (Arg0, 0x5E))
{
Store (Add (GPBS, 0x10), Local0)
OperationRegion (LGPI, SystemIO, Local0, 0x02)
Field (LGPI, AnyAcc, NoLock, Preserve)
{
TEMP, 16
}
If (LGreaterEqual (Arg0, 0x2D))
{
Subtract (Arg0, 0x28, Local1)
}
Else
{
If (LLessEqual (Arg0, 0x0A))
{
Subtract (Arg0, 0x08, Local1)
}
Else
{
Subtract (Arg0, 0x0A, Local1)
}
}
Store (ShiftLeft (One, Local1), Local2)
If (Arg1)
{
Or (TEMP, Local2, TEMP)
}
Else
{
And (TEMP, Not (Local2), TEMP)
}
}
}
}
Scope (_SB.PCI0)
{
Name (LTRE, Zero)
Name (OBFF, Zero)
Device (GLAN)
{
Name (_ADR, 0x00190000) // _ADR: Address
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x0D, 0x04))
}
}
Device (EHC1)
{
Name (_ADR, 0x001D0000) // _ADR: Address
OperationRegion (PWKE, PCI_Config, 0x54, 0x12)
Field (PWKE, DWordAcc, NoLock, Preserve)
{
Offset (0x01),
PMEE, 1,
, 6,
PMES, 1,
Offset (0x0E),
, 1,
PWUC, 8
}
Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
{
If (Arg0)
{
Store (Ones, PWUC)
}
Else
{
Store (Zero, PWUC)
}
}
Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State
{
Return (0x02)
}
Method (_S4D, 0, NotSerialized) // _S4D: S4 Device State
{
Return (0x02)
}
Device (HUBN)
{
Name (_ADR, Zero) // _ADR: Address
Device (PR01)
{
Name (_ADR, One) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCA, Package (0x04)
{
0xFF,
Zero,
Zero,
Zero
})
Return (UPCA)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
Device (PR11)
{
Name (_ADR, One) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xE1, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
}
Device (PR12)
{
Name (_ADR, 0x02) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xE1, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
}
Device (PR13)
{
Name (_ADR, 0x03) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xE1, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LEqual (And (CDID, 0xF000), 0x9000))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (PR14)
{
Name (_ADR, 0x04) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xE1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
Alias (SBV1, SDGV)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
/* 0008 */ 0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_0)
If (LEqual (_T_0, Zero))
{
If (LEqual (Arg1, One))
{
Return (Buffer (One)
{
0x07
})
}
Else
{
Return (Buffer (One)
{
0x00
})
}
}
Else
{
If (LEqual (_T_0, One))
{
If (LEqual (SDGV, 0xFF))
{
Return (Zero)
}
Else
{
Return (One)
}
}
Else
{
If (LEqual (_T_0, 0x02))
{
Return (SDGV)
}
}
}
Break
}
}
Return (Zero)
}
}
Device (PR15)
{
Name (_ADR, 0x05) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
Alias (SBV2, SDGV)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
/* 0008 */ 0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_0)
If (LEqual (_T_0, Zero))
{
If (LEqual (Arg1, One))
{
Return (Buffer (One)
{
0x07
})
}
Else
{
Return (Buffer (One)
{
0x00
})
}
}
Else
{
If (LEqual (_T_0, One))
{
If (LEqual (SDGV, 0xFF))
{
Return (Zero)
}
Else
{
Return (One)
}
}
Else
{
If (LEqual (_T_0, 0x02))
{
Return (SDGV)
}
}
}
Break
}
}
Return (Zero)
}
}
Device (PR16)
{
Name (_ADR, 0x06) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
Alias (SBV1, SDGV)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
/* 0008 */ 0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_0)
If (LEqual (_T_0, Zero))
{
If (LEqual (Arg1, One))
{
Return (Buffer (One)
{
0x07
})
}
Else
{
Return (Buffer (One)
{
0x00
})
}
}
Else
{
If (LEqual (_T_0, One))
{
If (LEqual (SDGV, 0xFF))
{
Return (Zero)
}
Else
{
Return (One)
}
}
Else
{
If (LEqual (_T_0, 0x02))
{
Return (SDGV)
}
}
}
Break
}
}
Return (Zero)
}
}
Device (PR17)
{
Name (_ADR, 0x07) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
Alias (SBV2, SDGV)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
/* 0008 */ 0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_0)
If (LEqual (_T_0, Zero))
{
If (LEqual (Arg1, One))
{
Return (Buffer (One)
{
0x07
})
}
Else
{
Return (Buffer (One)
{
0x00
})
}
}
Else
{
If (LEqual (_T_0, One))
{
If (LEqual (SDGV, 0xFF))
{
Return (Zero)
}
Else
{
Return (One)
}
}
Else
{
If (LEqual (_T_0, 0x02))
{
Return (SDGV)
}
}
}
Break
}
}
Return (Zero)
}
}
Device (PR18)
{
Name (_ADR, 0x08) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
}
}
}
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x0D, 0x04))
}
}
Device (EHC2)
{
Name (_ADR, 0x001A0000) // _ADR: Address
OperationRegion (PWKE, PCI_Config, 0x54, 0x12)
Field (PWKE, DWordAcc, NoLock, Preserve)
{
Offset (0x01),
PMEE, 1,
, 6,
PMES, 1,
Offset (0x0E),
, 1,
PWUC, 6
}
Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
{
If (Arg0)
{
Store (Ones, PWUC)
}
Else
{
Store (Zero, PWUC)
}
}
Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State
{
Return (0x02)
}
Method (_S4D, 0, NotSerialized) // _S4D: S4 Device State
{
Return (0x02)
}
Device (HUBN)
{
Name (_ADR, Zero) // _ADR: Address
Device (PR01)
{
Name (_ADR, One) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCA, Package (0x04)
{
0xFF,
Zero,
Zero,
Zero
})
Return (UPCA)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
Device (PR11)
{
Name (_ADR, One) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xE1, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
}
Device (PR12)
{
Name (_ADR, 0x02) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xE1, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
Alias (SBV1, SDGV)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
/* 0008 */ 0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_0)
If (LEqual (_T_0, Zero))
{
If (LEqual (Arg1, One))
{
Return (Buffer (One)
{
0x07
})
}
Else
{
Return (Buffer (One)
{
0x00
})
}
}
Else
{
If (LEqual (_T_0, One))
{
If (LEqual (SDGV, 0xFF))
{
Return (Zero)
}
Else
{
Return (One)
}
}
Else
{
If (LEqual (_T_0, 0x02))
{
Return (SDGV)
}
}
}
Break
}
}
Return (Zero)
}
}
Device (PR13)
{
Name (_ADR, 0x03) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xE1, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
Alias (SBV2, SDGV)
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
/* 0008 */ 0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_0)
If (LEqual (_T_0, Zero))
{
If (LEqual (Arg1, One))
{
Return (Buffer (One)
{
0x07
})
}
Else
{
Return (Buffer (One)
{
0x00
})
}
}
Else
{
If (LEqual (_T_0, One))
{
If (LEqual (SDGV, 0xFF))
{
Return (Zero)
}
Else
{
Return (One)
}
}
Else
{
If (LEqual (_T_0, 0x02))
{
Return (SDGV)
}
}
}
Break
}
}
Return (Zero)
}
}
Device (PR14)
{
Name (_ADR, 0x04) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xE1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
}
Device (PR15)
{
Name (_ADR, 0x05) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
}
Device (PR16)
{
Name (_ADR, 0x06) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
Return (PLDP)
}
}
}
}
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x0D, 0x04))
}
}
Device (XHC)
{
Name (_ADR, 0x00140000) // _ADR: Address
OperationRegion (XPRT, PCI_Config, Zero, 0x0100)
Field (XPRT, DWordAcc, NoLock, Preserve)
{
Offset (0x10),
MEMB, 32,
Offset (0x74),
Offset (0x75),
PMEE, 1,
, 6,
PMES, 1,
Offset (0xD0),
PR2, 32,
PR2M, 32,
PR3, 32,
PR3M, 32
}
Name (XRST, Zero)
Method (CUID, 1, Serialized)
{
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0xA9, 0x12, 0x95, 0x7C, 0x05, 0x17, 0xB4, 0x4C,
/* 0008 */ 0xAF, 0x7D, 0x50, 0x6A, 0x24, 0x23, 0xAB, 0x71
}))
{
Return (One)
}
Return (Zero)
}
Method (POSC, 3, Serialized)
{
CreateDWordField (Arg2, Zero, CDW1)
CreateDWordField (Arg2, 0x08, CDW3)
If (LNotEqual (Arg1, One))
{
Or (CDW1, 0x08, CDW1)
}
If (LEqual (XHCI, Zero))
{
Or (CDW1, 0x02, CDW1)
}
If (LNot (And (CDW1, One)))
{
If (And (CDW3, One))
{
ESEL ()
}
Else
{
XSEL ()
}
}
Return (Arg2)
}
Method (XSEL, 0, Serialized)
{
If (LOr (LEqual (XHCI, 0x02), LEqual (XHCI, 0x03)))
{
Store (One, XUSB)
Store (One, XRST)
Store (Zero, Local0)
And (PR3, 0xFFFFFFC0, Local0)
Or (Local0, PR3M, PR3)
Store (Zero, Local0)
And (PR2, 0xFFFF8000, Local0)
Or (Local0, PR2M, PR2)
}
}
Method (ESEL, 0, Serialized)
{
If (LOr (LEqual (XHCI, 0x02), LEqual (XHCI, 0x03)))
{
And (PR3, 0xFFFFFFC0, PR3)
And (PR2, 0xFFFF8000, PR2)
Store (Zero, XUSB)
Store (Zero, XRST)
}
}
Method (XWAK, 0, Serialized)
{
If (LOr (LEqual (XUSB, One), LEqual (XRST, One)))
{
XSEL ()
}
}
Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State
{
Return (0x02)
}
Method (_S4D, 0, NotSerialized) // _S4D: S4 Device State
{
Return (0x02)
}
Device (RHUB)
{
Name (_ADR, Zero) // _ADR: Address
Device (HS01)
{
Name (_ADR, One) // _ADR: Address
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR2, One)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x69, 0x0C, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, One)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS02)
{
Name (_ADR, 0x02) // _ADR: Address
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR2, 0x02)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x69, 0x0C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x02)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS03)
{
Name (_ADR, 0x03) // _ADR: Address
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR2, 0x04)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x71, 0x0C, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x04)))
{
And (VIS, Zero, VIS)
}
If (LEqual (And (CDID, 0xF000), 0x9000))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS04)
{
Name (_ADR, 0x04) // _ADR: Address
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR2, 0x08)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x71, 0x0C, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x08)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS05)
{
Name (_ADR, 0x05) // _ADR: Address
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR2, 0x10)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x69, 0x0C, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x10)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS06)
{
Name (_ADR, 0x06) // _ADR: Address
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR2, 0x20)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x69, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x20)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS07)
{
Name (_ADR, 0x07) // _ADR: Address
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
Zero,
Zero,
Zero
})
If (LNot (And (PR2, 0x40)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x71, 0x0C, 0x80, 0x03, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x40)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS08)
{
Name (_ADR, 0x08) // _ADR: Address
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
Zero,
Zero,
Zero
})
If (LNot (And (PR2, 0x80)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x71, 0x0C, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x80)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS09)
{
Name (_ADR, 0x09) // _ADR: Address
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR2, 0x0100)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x71, 0x0C, 0x80, 0x04, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x0100)))
{
And (VIS, Zero, VIS)
}
If (LEqual (And (CDID, 0xF000), 0x9000))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS10)
{
Method (_ADR, 0, Serialized) // _ADR: Address
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x0A)
}
Else
{
Return (0xFA)
}
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR2, 0x0200)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x71, 0x0C, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x0200)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS11)
{
Method (_ADR, 0, Serialized) // _ADR: Address
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x0B)
}
Else
{
Return (0xFB)
}
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
Zero,
Zero,
Zero
})
If (LNot (And (PR2, 0x0400)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x69, 0x0C, 0x80, 0x05, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x0400)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS12)
{
Method (_ADR, 0, Serialized) // _ADR: Address
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x0C)
}
Else
{
Return (0xFC)
}
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
Zero,
Zero,
Zero
})
If (LNot (And (PR2, 0x0800)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x69, 0x0C, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x0800)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS13)
{
Method (_ADR, 0, Serialized) // _ADR: Address
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x0D)
}
Else
{
Return (0xFD)
}
}
Method (_STA, 0, Serialized) // _STA: Status
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
Zero,
Zero,
Zero
})
If (LNot (And (PR2, 0x1000)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x71, 0x0C, 0x80, 0x06, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x1000)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS14)
{
Name (_ADR, 0x0E) // _ADR: Address
Method (_STA, 0, Serialized) // _STA: Status
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
Zero,
Zero,
Zero
})
If (LNot (And (PR2, 0x2000)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x71, 0x0C, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x2000)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (HS15)
{
Name (_ADR, 0x0F) // _ADR: Address
Method (_STA, 0, Serialized) // _STA: Status
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
Zero,
Zero,
Zero
})
If (LNot (And (PR2, 0x4000)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x70, 0x0C, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR2, 0x4000)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (SSP1)
{
Method (_ADR, 0, Serialized) // _ADR: Address
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x10)
}
Else
{
Return (0x0A)
}
}
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR3, One)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x69, 0x0C, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR3, One)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (SSP2)
{
Method (_ADR, 0, Serialized) // _ADR: Address
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x11)
}
Else
{
Return (0x0B)
}
}
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR3, 0x02)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x69, 0x0C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR3, 0x02)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (SSP3)
{
Method (_ADR, 0, Serialized) // _ADR: Address
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x12)
}
Else
{
Return (0x0C)
}
}
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR3, 0x04)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x71, 0x0C, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR3, 0x04)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (SSP4)
{
Method (_ADR, 0, Serialized) // _ADR: Address
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x13)
}
Else
{
Return (0x0D)
}
}
Name (_STA, 0x0F) // _STA: Status
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR3, 0x08)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x71, 0x0C, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR3, 0x08)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (SSP5)
{
Name (_ADR, 0x14) // _ADR: Address
Method (_STA, 0, Serialized) // _STA: Status
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR3, 0x10)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x71, 0x0C, 0x80, 0x04, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR3, 0x10)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
Device (SSP6)
{
Name (_ADR, 0x15) // _ADR: Address
Method (_STA, 0, Serialized) // _STA: Status
{
If (LEqual (And (CDID, 0xF000), 0x8000))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0x03,
Zero,
Zero
})
If (LNot (And (PR3, 0x20)))
{
Store (Zero, Index (UPCP, Zero))
}
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x10)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x71, 0x0C, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00
}
})
CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
If (LNot (And (PR3, 0x20)))
{
And (VIS, Zero, VIS)
}
Return (PLDP)
}
}
}
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x0D, 0x04))
}
}
Device (HDEF)
{
Name (_ADR, 0x001B0000) // _ADR: Address
OperationRegion (HDAR, PCI_Config, 0x4C, 0x10)
Field (HDAR, WordAcc, NoLock, Preserve)
{
DCKA, 1,
Offset (0x01),
DCKM, 1,
, 6,
DCKS, 1,
Offset (0x08),
Offset (0x09),
PMEE, 1,
, 6,
PMES, 1
}
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x0D, 0x04))
}
}
Device (SAT0)
{
Name (_ADR, 0x001F0002) // _ADR: Address
Name (FDEV, Zero)
Name (FDRP, Zero)
Device (PRT0)
{
Name (_ADR, 0xFFFF) // _ADR: Address
Method (_SDD, 1, NotSerialized) // _SDD: Set Device Data
{
CreateByteField (Arg0, 0x9D, BFDS)
ToInteger (BFDS, FDEV)
CreateByteField (Arg0, 0x9A, BFRP)
ToInteger (BFRP, FDRP)
}
Method (_GTF, 0, NotSerialized) // _GTF: Get Task File
{
If (LAnd (LAnd (LEqual (DVS0, One), LEqual (And (FDEV, One
), One)), LEqual (And (FDRP, 0x80), 0x80)))
{
Name (PIB1, Buffer (0x07)
{
0x10, 0x09, 0x00, 0x00, 0x00, 0xB0, 0xEF
})
Return (PIB1)
}
Name (PIB2, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
Return (PIB2)
}
}
Device (PRT1)
{
Name (_ADR, 0x0001FFFF) // _ADR: Address
Name (FDEV, Zero)
Name (FDRP, Zero)
Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
{
ADBG ("SAta DEP")
If (LAnd (LEqual (S0ID, One), And (PEPY, 0x02)))
{
ADBG ("SAta DEP")
Return (Package (0x01)
{
PEPD
})
}
Else
{
ADBG ("SAta DEP NULL")
Return (Package (0x00) {})
}
}
Method (_SDD, 1, NotSerialized) // _SDD: Set Device Data
{
CreateByteField (Arg0, 0x9D, BFDS)
ToInteger (BFDS, FDEV)
CreateByteField (Arg0, 0x9A, BFRP)
ToInteger (BFRP, FDRP)
}
Method (_GTF, 0, NotSerialized) // _GTF: Get Task File
{
If (LAnd (LAnd (LEqual (DVS1, One), LEqual (And (FDEV, One
), One)), LEqual (And (FDRP, 0x80), 0x80)))
{
Name (PIB1, Buffer (0x07)
{
0x10, 0x09, 0x00, 0x00, 0x00, 0xB0, 0xEF
})
Return (PIB1)
}
Name (PIB2, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
Return (PIB2)
}
}
Device (PRT3)
{
Name (_ADR, 0x0003FFFF) // _ADR: Address
Name (FDEV, Zero)
Name (FDRP, Zero)
Method (_SDD, 1, NotSerialized) // _SDD: Set Device Data
{
CreateByteField (Arg0, 0x9D, BFDS)
ToInteger (BFDS, FDEV)
CreateByteField (Arg0, 0x9A, BFRP)
ToInteger (BFRP, FDRP)
}
Method (_GTF, 0, NotSerialized) // _GTF: Get Task File
{
If (LAnd (LAnd (LEqual (DVS3, One), LEqual (And (FDEV, One
), One)), LEqual (And (FDRP, 0x80), 0x80)))
{
Name (PIB1, Buffer (0x07)
{
0x10, 0x09, 0x00, 0x00, 0x00, 0xB0, 0xEF
})
Return (PIB1)
}
Name (PIB2, Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
Return (PIB2)
}
}
}
Device (SAT1)
{
Name (_ADR, 0x001F0005) // _ADR: Address
}
Device (SBUS)
{
Name (_ADR, 0x001F0003) // _ADR: Address
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)
{
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 (_SB.PCI0.LPCB)
{
OperationRegion (CPSB, SystemMemory, 0xBC0A3D18, 0x10)
Field (CPSB, AnyAcc, NoLock, Preserve)
{
RTCX, 1,
SBB0, 7,
SBB1, 8,
SBB2, 8,
SBB3, 8,
SBB4, 8,
SBB5, 8,
SBB6, 8,
SBB7, 8,
SBB8, 8,
SBB9, 8,
SBBA, 8,
SBBB, 8,
SBBC, 8,
SBBD, 8,
SBBE, 8,
SBBF, 8
}
Method (SPTS, 1, NotSerialized)
{
Store (One, SLPX)
Store (One, SLPE)
}
Method (SWAK, 1, NotSerialized)
{
Store (Zero, SLPE)
If (RTCS)
{
If (PEXS)
{
Notify (PWRB, 0x02)
}
}
Else
{
Notify (PWRB, 0x02)
}
}
OperationRegion (SMIE, SystemIO, PMBS, 0x04)
Field (SMIE, ByteAcc, NoLock, Preserve)
{
, 10,
RTCS, 1,
, 3,
PEXS, 1,
WAKS, 1,
Offset (0x03),
PWBT, 1,
Offset (0x04)
}
OperationRegion (SLPR, SystemIO, SMCR, 0x08)
Field (SLPR, ByteAcc, NoLock, Preserve)
{
, 4,
SLPE, 1,
, 31,
SLPX, 1,
Offset (0x08)
}
}
Scope (_SB.PCI0.RP01)
{
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x09, 0x04))
}
}
Scope (_SB.PCI0.RP02)
{
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x09, 0x04))
}
}
Scope (_SB.PCI0.RP03)
{
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x09, 0x04))
}
}
Scope (_SB.PCI0.RP04)
{
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x09, 0x04))
}
}
Scope (_SB.PCI0.RP05)
{
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x09, 0x04))
}
}
Scope (_SB.PCI0.RP06)
{
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x09, 0x04))
}
}
Scope (_SB.PCI0.RP07)
{
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x09, 0x04))
}
}
Scope (_SB.PCI0.RP08)
{
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW (0x09, 0x04))
}
}
OperationRegion (_SB.PCI0.LPCB.LPCR, PCI_Config, 0x80, 0x04)
Field (\_SB.PCI0.LPCB.LPCR, ByteAcc, NoLock, Preserve)
{
CADR, 3,
, 1,
CBDR, 3,
Offset (0x01),
LTDR, 2,
, 2,
FDDR, 1,
Offset (0x02),
CALE, 1,
CBLE, 1,
LTLE, 1,
FDLE, 1,
Offset (0x03),
GLLE, 1,
GHLE, 1,
KCLE, 1,
MCLE, 1,
C1LE, 1,
C2LE, 1,
Offset (0x04)
}
Method (UXDV, 1, Serialized)
{
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
Store (0xFF, Local0)
While (One)
{
Store (Add (Arg0, Zero), _T_0)
If (LEqual (_T_0, 0x03F8))
{
Store (Zero, Local0)
}
Else
{
If (LEqual (_T_0, 0x02F8))
{
Store (One, Local0)
}
Else
{
If (LEqual (_T_0, 0x0220))
{
Store (0x02, Local0)
}
Else
{
If (LEqual (_T_0, 0x0228))
{
Store (0x03, Local0)
}
Else
{
If (LEqual (_T_0, 0x0238))
{
Store (0x04, Local0)
}
Else
{
If (LEqual (_T_0, 0x02E8))
{
Store (0x05, Local0)
}
Else
{
If (LEqual (_T_0, 0x0338))
{
Store (0x06, Local0)
}
Else
{
If (LEqual (_T_0, 0x03E8))
{
Store (0x07, Local0)
}
}
}
}
}
}
}
}
Break
}
Return (Local0)
}
Method (RRIO, 4, Serialized)
{
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
While (One)
{
Store (Add (Arg0, Zero), _T_0)
If (LEqual (_T_0, Zero))
{
Store (Zero, CALE)
Store (UXDV (Arg2), Local0)
If (LNotEqual (Local0, 0xFF))
{
Store (Local0, CADR)
}
If (Arg1)
{
Store (One, CALE)
}
}
Else
{
If (LEqual (_T_0, One))
{
Store (Zero, CBLE)
Store (UXDV (Arg2), Local0)
If (LNotEqual (Local0, 0xFF))
{
Store (Local0, CBDR)
}
If (Arg1)
{
Store (One, CBLE)
}
}
Else
{
If (LEqual (_T_0, 0x02))
{
Store (Zero, LTLE)
If (LEqual (Arg2, 0x0378))
{
Store (Zero, LTDR)
}
If (LEqual (Arg2, 0x0278))
{
Store (One, LTDR)
}
If (LEqual (Arg2, 0x03BC))
{
Store (0x02, LTDR)
}
If (Arg1)
{
Store (One, LTLE)
}
}
Else
{
If (LEqual (_T_0, 0x03))
{
Store (Zero, FDLE)
If (LEqual (Arg2, 0x03F0))
{
Store (Zero, FDDR)
}
If (LEqual (Arg2, 0x0370))
{
Store (One, FDDR)
}
If (Arg1)
{
Store (One, FDLE)
}
}
Else
{
If (LEqual (_T_0, 0x08))
{
If (LEqual (Arg2, 0x0200))
{
If (Arg1)
{
Store (One, GLLE)
}
Else
{
Store (Zero, GLLE)
}
}
If (LEqual (Arg2, 0x0208))
{
If (Arg1)
{
Store (One, GHLE)
}
Else
{
Store (Zero, GHLE)
}
}
}
Else
{
If (LEqual (_T_0, 0x09))
{
If (LEqual (Arg2, 0x0200))
{
If (Arg1)
{
Store (One, GLLE)
}
Else
{
Store (Zero, GLLE)
}
}
If (LEqual (Arg2, 0x0208))
{
If (Arg1)
{
Store (One, GHLE)
}
Else
{
Store (Zero, GHLE)
}
}
}
Else
{
If (LEqual (_T_0, 0x0A))
{
If (LOr (LEqual (Arg2, 0x60), LEqual (Arg2, 0x64)))
{
If (Arg1)
{
Store (One, KCLE)
}
Else
{
Store (Zero, KCLE)
}
}
}
Else
{
If (LEqual (_T_0, 0x0B))
{
If (LOr (LEqual (Arg2, 0x62), LEqual (Arg2, 0x66)))
{
If (Arg1)
{
Store (One, MCLE)
}
Else
{
Store (Zero, MCLE)
}
}
}
Else
{
If (LEqual (_T_0, 0x0C))
{
If (LEqual (Arg2, 0x2E))
{
If (Arg1)
{
Store (One, C1LE)
}
Else
{
Store (Zero, C1LE)
}
}
If (LEqual (Arg2, 0x4E))
{
If (Arg1)
{
Store (One, C2LE)
}
Else
{
Store (Zero, C2LE)
}
}
}
Else
{
If (LEqual (_T_0, 0x0D))
{
If (LEqual (Arg2, 0x2E))
{
If (Arg1)
{
Store (One, C1LE)
}
Else
{
Store (Zero, C1LE)
}
}
If (LEqual (Arg2, 0x4E))
{
If (Arg1)
{
Store (One, C2LE)
}
Else
{
Store (Zero, C2LE)
}
}
}
}
}
}
}
}
}
}
}
}
Break
}
}
Method (RDMA, 3, NotSerialized)
{
}
Scope (_SB.PCI0)
{
Name (PA0H, Zero)
Name (PA1H, Zero)
Name (PA2H, Zero)
Name (PA3H, Zero)
Name (PA4H, Zero)
Name (PA5H, Zero)
Name (PA6H, Zero)
Method (NPTS, 1, NotSerialized)
{
Store (PM0H, PA0H)
Store (PM1H, PA1H)
Store (PM2H, PA2H)
Store (PM3H, PA3H)
Store (PM4H, PA4H)
Store (PM5H, PA5H)
Store (PM6H, PA6H)
}
Method (NWAK, 1, NotSerialized)
{
Store (PA0H, PM0H)
Store (PA1H, PM1H)
Store (PA2H, PM2H)
Store (PA3H, PM3H)
Store (PA4H, PM4H)
Store (PA5H, PM5H)
Store (PA6H, PM6H)
}
}
Scope (_PR)
{
Processor (CPU0, 0x01, 0x00001810, 0x06) {}
Processor (CPU1, 0x02, 0x00001810, 0x06) {}
Processor (CPU2, 0x03, 0x00001810, 0x06) {}
Processor (CPU3, 0x04, 0x00001810, 0x06) {}
Processor (CPU4, 0x05, 0x00001810, 0x06) {}
Processor (CPU5, 0x06, 0x00001810, 0x06) {}
Processor (CPU6, 0x07, 0x00001810, 0x06) {}
Processor (CPU7, 0x08, 0x00001810, 0x06) {}
}
Scope (\)
{
Device (NFC1)
{
Name (_HID, EisaId ("SKTD000")) // _HID: Hardware ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LEqual (NFCE, 0x03))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
}
Device (NFC2)
{
Name (_HID, EisaId ("NXP5442")) // _HID: Hardware ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LEqual (NFCE, 0x02))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
}
Device (NFC3)
{
Name (_HID, EisaId ("ICV0A12")) // _HID: Hardware ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LEqual (NFCE, One))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
}
}
Mutex (MUTX, 0x00)
OperationRegion (DEB0, SystemIO, 0x80, One)
Field (DEB0, ByteAcc, NoLock, Preserve)
{
DBG8, 8
}
OperationRegion (DEB1, SystemIO, 0x90, 0x02)
Field (DEB1, WordAcc, NoLock, Preserve)
{
DBG9, 16
}
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)
}
Method (ADBG, 1, Serialized)
{
If (CondRefOf (MDBG))
{
Return (MDBG)
Arg0
}
Return (Zero)
}
OperationRegion (SPRT, SystemIO, 0xB2, 0x02)
Field (SPRT, ByteAcc, Lock, Preserve)
{
SSMP, 8
}
Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model
{
Store (Arg0, GPIC)
Store (Arg0, PICM)
If (Arg0)
{
P8XH (Zero, 0xAA)
}
Else
{
P8XH (Zero, 0xAC)
}
}
Method (_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep
{
Store (Zero, P80D)
P8XH (Zero, Arg0)
PTS (Arg0)
If (LEqual (ECNO, One))
{
ADBG ("EC Notify")
If (LEqual (BID, BHB))
{
\_SB.WTGP (0x58, One)
}
\_SB.PCI0.LPCB.H_EC.ECMD (0x2D)
ADBG ("EC Debug")
Store (Zero, \_SB.PCI0.LPCB.H_EC.DLED)
}
ADBG (Concatenate ("_PTS=", ToHexString (Arg0)))
If (And (ICNF, 0x10))
{
If (CondRefOf (\_SB.IAOE.PTSL))
{
Store (Arg0, \_SB.IAOE.PTSL)
}
}
If (LEqual (Arg0, 0x03))
{
If (LAnd (DTSE, LGreater (TCNT, One)))
{
TRAP (TRTD, 0x1E)
}
If (LEqual (ECON, One))
{
If (And (ICNF, One))
{
If (LAnd (And (ICNF, 0x10), LEqual (\_SB.IAOE.ITMR, Zero)))
{
If (LAnd (CondRefOf (\_SB.PCI0.LPCB.H_EC.AWT0), CondRefOf (\_SB.IAOE.ECTM)))
{
If (LGreater (\_SB.IAOE.ECTM, Zero))
{
Store (And (\_SB.IAOE.ECTM, 0xFF), \_SB.PCI0.LPCB.H_EC.AWT0)
Store (ShiftRight (And (\_SB.IAOE.ECTM, 0xFF00), 0x08), \_SB.PCI0.LPCB.H_EC.AWT1)
Store (ShiftRight (And (\_SB.IAOE.ECTM, 0x00FF0000), 0x10), \_SB.PCI0.LPCB.H_EC.AWT2)
Store (\_SB.PCI0.LPCB.H_EC.WTMS, Local0)
Store (Or (0x81, Local0), \_SB.PCI0.LPCB.H_EC.WTMS)
}
}
}
If (LAnd (And (ICNF, 0x10), CondRefOf (\_SB.IFFS.FFSS)))
{
If (And (\_SB.IFFS.FFSS, One))
{
Store (One, \_SB.IAOE.FFSE)
If (LAnd (CondRefOf (\_SB.PCI0.LPCB.H_EC.WTMS), LEqual (\_SB.IAOE.PTSL, 0x03)))
{
Store (\_SB.PCI0.LPCB.H_EC.WTMS, Local0)
Store (Or (0x02, Local0), \_SB.PCI0.LPCB.H_EC.WTMS)
}
}
Else
{
Store (Zero, \_SB.IAOE.FFSE)
}
}
}
}
}
If (CondRefOf (\_SB.TPM.PTS))
{
\_SB.TPM.PTS (Arg0)
}
If (LOr (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)), LEqual (
Arg0, 0x05)))
{
If (LEqual (PFLV, FDTP))
{
Store (One, GP27)
}
}
}
Method (_WAK, 1, Serialized) // _WAK: Wake
{
P8XH (One, 0xAB)
P8XH (Zero, ShiftLeft (Arg0, 0x04))
WAK (Arg0)
ADBG ("_WAK")
If (And (ICNF, 0x10))
{
If (CondRefOf (\_SB.IAOE.PTSL))
{
Store (Zero, \_SB.IAOE.PTSL)
}
If (LEqual (\_SB.IAOE.ITMR, Zero))
{
If (CondRefOf (\_SB.PCI0.LPCB.H_EC.WTMS))
{
Store (Zero, \_SB.PCI0.LPCB.H_EC.WTMS)
}
}
If (CondRefOf (\_SB.IAOE.ECTM))
{
Store (Zero, \_SB.IAOE.ECTM)
}
If (CondRefOf (\_SB.IAOE.RCTM))
{
Store (Zero, \_SB.IAOE.RCTM)
}
}
If (NEXP)
{
If (And (OSCC, 0x02))
{
\_SB.PCI0.NHPG ()
}
If (And (OSCC, 0x04))
{
\_SB.PCI0.NPME ()
}
}
If (LEqual (Arg0, 0x03))
{
If (LEqual (Zero, ACTT))
{
If (LEqual (ECON, One))
{
Store (Zero, \_SB.PCI0.LPCB.H_EC.CFAN)
}
}
}
If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
{
If (And (GBSX, 0x40))
{
\_SB.PCI0.GFX0.IUEH (0x06)
}
If (And (GBSX, 0x80))
{
\_SB.PCI0.GFX0.IUEH (0x07)
}
If (LAnd (DTSE, LGreater (TCNT, One)))
{
TRAP (TRTD, 0x14)
}
If (LEqual (OSYS, 0x07D2))
{
If (And (\_PR.CFGD, One))
{
If (LGreater (\_PR.CPU0._PPC, Zero))
{
Subtract (\_PR.CPU0._PPC, One, \_PR.CPU0._PPC)
PNOT ()
Add (\_PR.CPU0._PPC, One, \_PR.CPU0._PPC)
PNOT ()
}
Else
{
Add (\_PR.CPU0._PPC, One, \_PR.CPU0._PPC)
PNOT ()
Subtract (\_PR.CPU0._PPC, One, \_PR.CPU0._PPC)
PNOT ()
}
}
}
If (LEqual (ECON, One))
{
If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
{
Store (\_SB.PCI0.LPCB.H_EC.LSTE, LIDS)
If (IGDS)
{
If (LEqual (LIDS (), Zero))
{
Store (0x80000000, \_SB.PCI0.GFX0.CLID)
}
If (LEqual (LIDS (), One))
{
Store (0x80000003, \_SB.PCI0.GFX0.CLID)
}
}
Notify (\_SB.LID0, 0x80)
}
If (LNotEqual (\_SB.PCI0.LPCB.H_EC.DOCK, DSTS))
{
Store (\_SB.PCI0.LPCB.H_EC.DOCK, DSTS)
If (LAnd (\_SB.PCI0.HDEF.DCKS, One))
{
Store (DSTS, \_SB.PCI0.HDEF.DCKA)
}
If (LEqual (DSTS, One))
{
If (LEqual (Arg0, 0x03))
{
Sleep (0x03E8)
Store (PDBR, SSMP)
Sleep (0x03E8)
}
Notify (\_SB.PCI0.DOCK, Zero)
}
Else
{
Notify (\_SB.PCI0.DOCK, One)
}
}
If (LEqual (BNUM, Zero))
{
If (LNotEqual (\_SB.PCI0.LPCB.H_EC.VPWR, PWRS))
{
Store (\_SB.PCI0.LPCB.H_EC.VPWR, PWRS)
PNOT ()
}
}
Else
{
If (LNotEqual (\_SB.PCI0.LPCB.H_EC.RPWR, PWRS))
{
Store (\_SB.PCI0.LPCB.H_EC.RPWR, PWRS)
PNOT ()
}
}
}
If (LEqual (RP1D, Zero))
{
Notify (\_SB.PCI0.RP01, Zero)
}
If (LEqual (RP2D, Zero))
{
Notify (\_SB.PCI0.RP02, Zero)
}
If (LEqual (RP3D, Zero))
{
Notify (\_SB.PCI0.RP03, Zero)
}
If (LEqual (RP4D, Zero))
{
Notify (\_SB.PCI0.RP04, Zero)
}
If (LEqual (RP5D, Zero))
{
Notify (\_SB.PCI0.RP05, Zero)
}
If (LEqual (RP6D, Zero))
{
Notify (\_SB.PCI0.RP06, Zero)
}
If (LEqual (RP7D, Zero))
{
If (LEqual (DSTS, Zero))
{
Notify (\_SB.PCI0.RP07, Zero)
}
}
If (LEqual (RP8D, Zero))
{
If (LEqual (DSTS, Zero))
{
Notify (\_SB.PCI0.RP08, Zero)
}
}
}
If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
{
\_SB.PCI0.XHC.XWAK ()
}
Return (Package (0x02)
{
Zero,
Zero
})
}
Method (GETB, 3, Serialized)
{
Multiply (Arg0, 0x08, Local0)
Multiply (Arg1, 0x08, Local1)
CreateField (Arg2, Local0, Local1, TBF3)
Return (TBF3)
}
Method (PNOT, 0, Serialized)
{
If (LGreater (TCNT, One))
{
If (And (PDC0, 0x08))
{
Notify (\_PR.CPU0, 0x80)
If (And (PDC0, 0x10))
{
Notify (\_PR.CPU0, 0x81)
}
}
If (And (PDC1, 0x08))
{
Notify (\_PR.CPU1, 0x80)
If (And (PDC1, 0x10))
{
Notify (\_PR.CPU1, 0x81)
}
}
If (And (PDC2, 0x08))
{
Notify (\_PR.CPU2, 0x80)
If (And (PDC2, 0x10))
{
Notify (\_PR.CPU2, 0x81)
}
}
If (And (PDC3, 0x08))
{
Notify (\_PR.CPU3, 0x80)
If (And (PDC3, 0x10))
{
Notify (\_PR.CPU3, 0x81)
}
}
If (And (PDC4, 0x08))
{
Notify (\_PR.CPU4, 0x80)
If (And (PDC4, 0x10))
{
Notify (\_PR.CPU4, 0x81)
}
}
If (And (PDC5, 0x08))
{
Notify (\_PR.CPU5, 0x80)
If (And (PDC5, 0x10))
{
Notify (\_PR.CPU5, 0x81)
}
}
If (And (PDC6, 0x08))
{
Notify (\_PR.CPU6, 0x80)
If (And (PDC6, 0x10))
{
Notify (\_PR.CPU6, 0x81)
}
}
If (And (PDC7, 0x08))
{
Notify (\_PR.CPU7, 0x80)
If (And (PDC7, 0x10))
{
Notify (\_PR.CPU7, 0x81)
}
}
}
Else
{
Notify (\_PR.CPU0, 0x80)
Notify (\_PR.CPU0, 0x81)
}
If (LEqual (ECON, One))
{
Store (\_SB.PCI0.LPCB.H_EC.B1CC, B1SC)
Store (\_SB.PCI0.LPCB.H_EC.B1ST, B1SS)
Store (\_SB.PCI0.LPCB.H_EC.B2CC, B2SC)
Store (\_SB.PCI0.LPCB.H_EC.B2ST, B2SS)
If (LGreaterEqual (OSYS, 0x07D6))
{
Notify (\_SB.PCI0.LPCB.H_EC.BAT0, 0x81)
Notify (\_SB.PCI0.LPCB.H_EC.BAT1, 0x81)
Notify (\_SB.PCI0.LPCB.H_EC.BAT2, 0x81)
}
Else
{
Notify (\_SB.PCI0.LPCB.H_EC.BAT0, 0x80)
Notify (\_SB.PCI0.LPCB.H_EC.BAT1, 0x80)
Notify (\_SB.PCI0.LPCB.H_EC.BAT2, 0x80)
}
}
If (LEqual (DPTF, One))
{
Notify (\_SB.IETM, 0x86)
}
}
OperationRegion (MBAR, SystemMemory, Add (ShiftLeft (\_SB.PCI0.MHBR, 0x0F), 0x5000), 0x1000)
Field (MBAR, ByteAcc, NoLock, Preserve)
{
Offset (0x938),
PWRU, 4,
Offset (0x9A0),
PPL1, 15,
PL1E, 1,
CLP1, 1
}
Name (CLMP, Zero)
Name (PLEN, Zero)
Name (PLSV, 0x8000)
Name (CSEM, Zero)
Method (SPL1, 0, Serialized)
{
Name (PPUU, Zero)
If (LEqual (CSEM, One))
{
Return (Zero)
}
Store (One, CSEM)
Store (PPL1, PLSV)
Store (PL1E, PLEN)
Store (CLP1, CLMP)
If (LEqual (PWRU, Zero))
{
Store (One, PPUU)
}
Else
{
ShiftLeft (Decrement (PWRU), 0x02, PPUU)
}
Multiply (PLVL, PPUU, Local0)
Divide (Local0, 0x03E8, , Local1)
Store (Local1, PPL1)
Store (One, PL1E)
Store (One, CLP1)
}
Method (RPL1, 0, Serialized)
{
Store (PLSV, PPL1)
Store (PLEN, PL1E)
Store (CLMP, CLP1)
Store (Zero, CSEM)
}
Name (DDPS, Zero)
Name (UAMS, Zero)
Method (TRAP, 2, Serialized)
{
Store (Arg1, SMIF)
If (LEqual (Arg0, TRTD))
{
Store (Arg1, DTSF)
Store (Zero, TRPD)
Return (DTSF)
}
If (LEqual (Arg0, TRTI))
{
Store (Zero, TRPH)
}
If (LEqual (Arg0, PFTI))
{
Store (Zero, TRPF)
}
Return (SMIF)
}
Scope (_SB)
{
Device (BIND)
{
Name (_HID, "INT33D2") // _HID: Hardware ID
Name (_CID, "PNP0C40") // _CID: Compatible ID
Method (_STA, 0, Serialized) // _STA: Status
{
If (LAnd (And (IUBE, One), LEqual (OSYS, 0x07DC)))
{
Return (0x0F)
}
Return (Zero)
}
}
Device (CIND)
{
Name (_HID, "INT33D3") // _HID: Hardware ID
Name (_CID, "PNP0C60") // _CID: Compatible ID
Method (_STA, 0, Serialized) // _STA: Status
{
If (LAnd (And (IUCE, One), LEqual (OSYS, 0x07DC)))
{
Return (0x0F)
}
Return (Zero)
}
}
Device (DIND)
{
Name (_HID, "INT33D4") // _HID: Hardware ID
Name (_CID, "PNP0C70") // _CID: Compatible ID
Method (_STA, 0, Serialized) // _STA: Status
{
If (LAnd (And (IUDE, One), LEqual (OSYS, 0x07DC)))
{
Return (0x0F)
}
Return (Zero)
}
}
}
Scope (_SB.PCI0)
{
Method (PTMA, 0, NotSerialized)
{
Return (PFMA)
}
Method (PTMS, 0, NotSerialized)
{
Return (PFMS)
}
Method (PTIA, 0, NotSerialized)
{
Return (PFIA)
}
Method (_INI, 0, NotSerialized) // _INI: Initialize
{
Store (0x07D0, OSYS)
If (CondRefOf (\_OSI, Local0))
{
If (_OSI ("Linux"))
{
Store (0x03E8, OSYS)
}
If (_OSI ("Windows 2001"))
{
Store (0x07D1, OSYS)
}
If (_OSI ("Windows 2001 SP1"))
{
Store (0x07D1, OSYS)
}
If (_OSI ("Windows 2001 SP2"))
{
Store (0x07D2, OSYS)
}
If (_OSI ("Windows 2001.1"))
{
Store (0x07D3, OSYS)
}
If (_OSI ("Windows 2006"))
{
Store (0x07D6, OSYS)
}
If (_OSI ("Windows 2009"))
{
Store (0x07D9, OSYS)
}
If (_OSI ("Windows 2012"))
{
Store (0x07DC, OSYS)
}
}
}
Method (NHPG, 0, Serialized)
{
Store (Zero, ^RP01.HPEX)
Store (Zero, ^RP02.HPEX)
Store (Zero, ^RP03.HPEX)
Store (Zero, ^RP04.HPEX)
Store (Zero, ^RP05.HPEX)
Store (Zero, ^RP06.HPEX)
Store (Zero, ^RP07.HPEX)
Store (Zero, ^RP08.HPEX)
Store (One, ^RP01.HPSX)
Store (One, ^RP02.HPSX)
Store (One, ^RP03.HPSX)
Store (One, ^RP04.HPSX)
Store (One, ^RP05.HPSX)
Store (One, ^RP06.HPSX)
Store (One, ^RP07.HPSX)
Store (One, ^RP08.HPSX)
}
Method (NPME, 0, Serialized)
{
Store (Zero, ^RP01.PMEX)
Store (Zero, ^RP02.PMEX)
Store (Zero, ^RP03.PMEX)
Store (Zero, ^RP04.PMEX)
Store (Zero, ^RP05.PMEX)
Store (Zero, ^RP06.PMEX)
Store (Zero, ^RP07.PMEX)
Store (Zero, ^RP08.PMEX)
Store (One, ^RP01.PMSX)
Store (One, ^RP02.PMSX)
Store (One, ^RP03.PMSX)
Store (One, ^RP04.PMSX)
Store (One, ^RP05.PMSX)
Store (One, ^RP06.PMSX)
Store (One, ^RP07.PMSX)
Store (One, ^RP08.PMSX)
}
}
Scope (\)
{
Name (PICM, Zero)
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)
FindSetLeftBit (Local0, Index (PRWP, One))
}
Return (PRWP)
}
}
Scope (_SB)
{
Name (OSCI, Zero)
Name (OSCO, Zero)
Method (_OSC, 4, Serialized) // _OSC: Operating System Capabilities
{
If (LNotEqual (OSCM (Arg0, Arg1, Arg2, Arg3), Zero))
{
Return (Arg3)
}
CreateDWordField (Arg3, Zero, STS0)
CreateDWordField (Arg3, 0x04, CAP0)
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0x6E, 0xB0, 0x11, 0x08, 0x27, 0x4A, 0xF9, 0x44,
/* 0008 */ 0x8D, 0x60, 0x3C, 0xBB, 0xC2, 0x2E, 0x7B, 0x48
}))
{
If (LEqual (Arg1, One))
{
If (And (CAP0, 0x04))
{
If (LEqual (RTD3, Zero))
{
And (CAP0, 0x3B, CAP0)
Or (STS0, 0x10, STS0)
}
}
If (And (CAP0, 0x20))
{
If (CondRefOf (\_SB.PCCD.PENB))
{
If (LEqual (^PCCD.PENB, Zero))
{
And (CAP0, 0x1F, CAP0)
Or (STS0, 0x10, STS0)
}
}
Else
{
And (CAP0, 0x1F, CAP0)
Or (STS0, 0x10, STS0)
}
}
}
Else
{
And (STS0, 0xFFFFFF00, STS0)
Or (STS0, 0x0A, STS0)
}
}
Else
{
And (STS0, 0xFFFFFF00, STS0)
Or (STS0, 0x06, STS0)
}
Return (Arg3)
}
Device (PEPD)
{
Name (_HID, "INT33A1") // _HID: Hardware ID
Name (_CID, EisaId ("PNP0D80")) // _CID: Compatible ID
Name (_UID, One) // _UID: Unique ID
Name (PEPP, Zero)
Name (DEVS, Package (0x03)
{
0x02,
Package (0x01)
{
"\\_SB.PCI0.GFX0"
},
Package (0x01)
{
"\\_SB.PCI0.SAT0.PRT1"
}
})
Name (DEVX, Package (0x08)
{
Package (0x02)
{
"\\_SB.PCI0.GFX0",
0xFFFFFFFF
},
Package (0x02)
{
"\\_SB.PCI0.SAT0.PRT1",
0xFFFFFFFF
},
Package (0x02)
{
"\\_SB.PCI0.UA01",
0xFFFFFFFF
},
Package (0x02)
{
"\\_SB.PCI0.SDHC",
0xFFFFFFFF
},
Package (0x02)
{
"\\_SB.PCI0.I2C0",
0xFFFFFFFF
},
Package (0x02)
{
"\\_SB.PCI0.I2C1",
0xFFFFFFFF
},
Package (0x02)
{
"\\_SB.PCI0.XHC",
0xFFFFFFFF
},
Package (0x02)
{
"HDAUDIOFUNC_01&VEN_10EC&DEV_0282&SUBSYS_00000000&REV_1000\x04&a02b74b&0&0001",
0xFFFFFFFF
}
})
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (LGreaterEqual (OSYS, 0x07DC))
{
If (LEqual (And (CDID, 0xF000), 0x9000))
{
If (LEqual (S0ID, One))
{
Return (0x0F)
}
}
}
Return (Zero)
}
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0xE0, 0xBF, 0xFE, 0xB8, 0xF8, 0xBA, 0x4B, 0x45,
/* 0008 */ 0xAE, 0xCD, 0x49, 0xFB, 0x91, 0x13, 0x7B, 0x21
}))
{
If (LEqual (Arg2, Zero))
{
Return (Buffer (One)
{
0x07
})
}
If (LEqual (Arg2, One))
{
Store (One, PEPP)
Return (0x0F)
}
If (LEqual (Arg2, 0x02))
{
If (LEqual (Arg1, Zero))
{
While (One)
{
Store (PEPY, _T_0)
If (LEqual (_T_0, One))
{
Return (Package (0x02)
{
One,
Package (0x01)
{
"\\_SB.PCI0.GFX0"
}
})
}
Else
{
If (LEqual (_T_0, 0x02))
{
Return (Package (0x02)
{
One,
Package (0x01)
{
"\\_SB.PCI0.SAT0.PRT1"
}
})
}
Else
{
If (LEqual (_T_0, 0x03))
{
Return (DEVS)
}
Else
{
Return (Package (0x01)
{
Zero
})
}
}
}
Break
}
}
If (LEqual (Arg1, One))
{
If (LNot (And (PEPY, One)))
{
Store (Zero, Index (DerefOf (Index (DEVX, Zero)), One))
}
If (LNot (And (PEPY, 0x02)))
{
Store (Zero, Index (DerefOf (Index (DEVX, One)), One))
}
If (LNot (And (PEPY, 0x04)))
{
Store (Zero, Index (DerefOf (Index (DEVX, 0x02)), One))
}
If (LNot (And (PEPY, 0x08)))
{
Store (Zero, Index (DerefOf (Index (DEVX, 0x03)), One))
}
If (LNot (And (PEPY, 0x10)))
{
Store (Zero, Index (DerefOf (Index (DEVX, 0x04)), One))
}
If (LNot (And (PEPY, 0x20)))
{
Store (Zero, Index (DerefOf (Index (DEVX, 0x05)), One))
}
If (LNot (And (PEPY, 0x40)))
{
Store (Zero, Index (DerefOf (Index (DEVX, 0x06)), One))
}
If (LNot (And (PEPY, 0x80)))
{
Store (Zero, Index (DerefOf (Index (DEVX, 0x07)), One))
}
Return (DEVX)
}
}
}
Return (One)
}
}
}
Scope (_SB)
{
Device (BTKL)
{
Name (_HID, "INT3420") // _HID: Hardware ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (_OSI ("Windows 2012"))
{
If (LEqual (BID, BW2C))
{
Return (0x0F)
}
}
Return (Zero)
}
Method (_PS0, 0, Serialized) // _PS0: Power State 0
{
And (GL0A, 0x7F, GL0A)
}
Method (_PS3, 0, Serialized) // _PS3: Power State 3
{
Or (GL0A, 0x80, GL0A)
}
Method (PSTS, 0, NotSerialized)
{
Return (RDGP (0x57))
}
}
}
Name (SRMB, 0xF7FF0000)
Scope (_SB.PCI0)
{
Device (PDRC)
{
Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID
Name (_UID, One) // _UID: Unique ID
Name (BUF0, ResourceTemplate ()
{
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00004000, // Address Length
_Y1F)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00008000, // Address Length
_Y22)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00001000, // Address Length
_Y23)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00001000, // Address Length
_Y24)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00000000, // Address Length
_Y25)
Memory32Fixed (ReadWrite,
0xFED20000, // Address Base
0x00020000, // Address Length
)
Memory32Fixed (ReadOnly,
0xFED90000, // Address Base
0x00004000, // Address Length
)
Memory32Fixed (ReadWrite,
0xFED45000, // Address Base
0x0004B000, // Address Length
)
Memory32Fixed (ReadOnly,
0xFF000000, // Address Base
0x01000000, // Address Length
)
Memory32Fixed (ReadOnly,
0xFEE00000, // Address Base
0x00100000, // Address Length
)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00001000, // Address Length
_Y20)
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x00001000, // Address Length
_Y21)
})
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y1F._BAS, RBR0) // _BAS: Base Address
ShiftLeft (^^LPCB.RCBA, 0x0E, RBR0)
CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y20._BAS, TBR0) // _BAS: Base Address
Store (TBAB, TBR0)
CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y20._LEN, TBLN) // _LEN: Length
If (LEqual (TBAB, Zero))
{
Store (Zero, TBLN)
}
CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y21._BAS, SNR0) // _BAS: Base Address
Store (SRMB, SNR0)
CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y22._BAS, MBR0) // _BAS: Base Address
ShiftLeft (MHBR, 0x0F, MBR0)
CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y23._BAS, DBR0) // _BAS: Base Address
ShiftLeft (DIBR, 0x0C, DBR0)
CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y24._BAS, EBR0) // _BAS: Base Address
ShiftLeft (EPBR, 0x0C, EBR0)
CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y25._BAS, XBR0) // _BAS: Base Address
ShiftLeft (PXBR, 0x1A, XBR0)
CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y25._LEN, XSZ0) // _LEN: Length
ShiftRight (0x10000000, PXSZ, XSZ0)
Return (BUF0)
}
}
}
Method (BRTN, 1, Serialized)
{
If (LEqual (And (DIDX, 0x0F00), 0x0400))
{
Notify (\_SB.PCI0.GFX0.DD1F, Arg0)
}
}
Scope (_GPE)
{
Method (_L09, 0, NotSerialized) // _Lxx: Level-Triggered GPE
{
If (LEqual (RP1D, Zero))
{
\_SB.PCI0.RP01.HPME ()
Notify (\_SB.PCI0.RP01, 0x02)
}
If (LEqual (RP2D, Zero))
{
\_SB.PCI0.RP02.HPME ()
Notify (\_SB.PCI0.RP02, 0x02)
}
If (LEqual (RP3D, Zero))
{
\_SB.PCI0.RP03.HPME ()
Notify (\_SB.PCI0.RP03, 0x02)
}
If (LEqual (RP4D, Zero))
{
\_SB.PCI0.RP04.HPME ()
Notify (\_SB.PCI0.RP04, 0x02)
}
If (LEqual (RP5D, Zero))
{
\_SB.PCI0.RP05.HPME ()
Notify (\_SB.PCI0.RP05, 0x02)
}
If (LEqual (RP6D, Zero))
{
\_SB.PCI0.RP06.HPME ()
Notify (\_SB.PCI0.RP06, 0x02)
}
If (LEqual (RP7D, Zero))
{
\_SB.PCI0.RP07.HPME ()
Notify (\_SB.PCI0.RP07, 0x02)
}
If (LEqual (RP8D, Zero))
{
\_SB.PCI0.RP08.HPME ()
Notify (\_SB.PCI0.RP08, 0x02)
}
If (LEqual (D1F0, One))
{
\_SB.PCI0.PEG0.HPME ()
Notify (\_SB.PCI0.PEG0, 0x02)
Notify (\_SB.PCI0.PEG0.PEGP, 0x02)
}
If (LEqual (D1F1, One))
{
\_SB.PCI0.PEG1.HPME ()
Notify (\_SB.PCI0.PEG1, 0x02)
}
If (LEqual (D1F2, One))
{
\_SB.PCI0.PEG2.HPME ()
Notify (\_SB.PCI0.PEG2, 0x02)
}
}
Method (_L0D, 0, NotSerialized) // _Lxx: Level-Triggered GPE
{
If (LAnd (\_SB.PCI0.EHC1.PMEE, \_SB.PCI0.EHC1.PMES))
{
Store (One, \_SB.PCI0.EHC1.PMES)
Store (Zero, \_SB.PCI0.EHC1.PMEE)
Notify (\_SB.PCI0.EHC1, 0x02)
}
If (LAnd (\_SB.PCI0.EHC2.PMEE, \_SB.PCI0.EHC2.PMES))
{
Store (One, \_SB.PCI0.EHC2.PMES)
Store (Zero, \_SB.PCI0.EHC2.PMEE)
Notify (\_SB.PCI0.EHC2, 0x02)
}
If (LAnd (\_SB.PCI0.XHC.PMEE, \_SB.PCI0.XHC.PMES))
{
Store (One, \_SB.PCI0.XHC.PMES)
Store (Zero, \_SB.PCI0.XHC.PMEE)
Notify (\_SB.PCI0.XHC, 0x02)
}
If (LAnd (\_SB.PCI0.HDEF.PMEE, \_SB.PCI0.HDEF.PMES))
{
Store (One, \_SB.PCI0.HDEF.PMES)
Store (Zero, \_SB.PCI0.HDEF.PMEE)
Notify (\_SB.PCI0.HDEF, 0x02)
}
Notify (\_SB.PCI0.GLAN, 0x02)
}
Method (_L01, 0, NotSerialized) // _Lxx: Level-Triggered GPE
{
Add (L01C, One, L01C)
P8XH (Zero, One)
P8XH (One, L01C)
If (LAnd (LEqual (RP1D, Zero), \_SB.PCI0.RP01.HPSX))
{
Sleep (0x64)
If (\_SB.PCI0.RP01.PDCX)
{
Store (One, \_SB.PCI0.RP01.PDCX)
Store (One, \_SB.PCI0.RP01.HPSX)
If (LNot (\_SB.PCI0.RP01.PDSX))
{
Store (Zero, \_SB.PCI0.RP01.L0SE)
}
Notify (\_SB.PCI0.RP01, Zero)
}
Else
{
Store (One, \_SB.PCI0.RP01.HPSX)
}
}
If (LAnd (LEqual (RP2D, Zero), \_SB.PCI0.RP02.HPSX))
{
Sleep (0x64)
If (\_SB.PCI0.RP02.PDCX)
{
Store (One, \_SB.PCI0.RP02.PDCX)
Store (One, \_SB.PCI0.RP02.HPSX)
If (LNot (\_SB.PCI0.RP02.PDSX))
{
Store (Zero, \_SB.PCI0.RP02.L0SE)
}
Notify (\_SB.PCI0.RP02, Zero)
}
Else
{
Store (One, \_SB.PCI0.RP02.HPSX)
}
}
If (LAnd (LEqual (RP3D, Zero), \_SB.PCI0.RP03.HPSX))
{
Sleep (0x64)
If (\_SB.PCI0.RP03.PDCX)
{
Store (One, \_SB.PCI0.RP03.PDCX)
Store (One, \_SB.PCI0.RP03.HPSX)
If (LNot (\_SB.PCI0.RP03.PDSX))
{
Store (Zero, \_SB.PCI0.RP03.L0SE)
}
Notify (\_SB.PCI0.RP03, Zero)
}
Else
{
Store (One, \_SB.PCI0.RP03.HPSX)
}
}
If (LAnd (LEqual (RP4D, Zero), \_SB.PCI0.RP04.HPSX))
{
Sleep (0x64)
If (\_SB.PCI0.RP04.PDCX)
{
Store (One, \_SB.PCI0.RP04.PDCX)
Store (One, \_SB.PCI0.RP04.HPSX)
If (LNot (\_SB.PCI0.RP04.PDSX))
{
Store (Zero, \_SB.PCI0.RP04.L0SE)
}
Notify (\_SB.PCI0.RP04, Zero)
}
Else
{
Store (One, \_SB.PCI0.RP04.HPSX)
}
}
If (LAnd (LEqual (RP5D, Zero), \_SB.PCI0.RP05.HPSX))
{
Sleep (0x64)
If (\_SB.PCI0.RP05.PDCX)
{
Store (One, \_SB.PCI0.RP05.PDCX)
Store (One, \_SB.PCI0.RP05.HPSX)
If (LNot (\_SB.PCI0.RP05.PDSX))
{
Store (Zero, \_SB.PCI0.RP05.L0SE)
}
Notify (\_SB.PCI0.RP05, Zero)
}
Else
{
Store (One, \_SB.PCI0.RP05.HPSX)
}
}
If (LAnd (LEqual (RP6D, Zero), \_SB.PCI0.RP06.HPSX))
{
Sleep (0x64)
If (\_SB.PCI0.RP06.PDCX)
{
Store (One, \_SB.PCI0.RP06.PDCX)
Store (One, \_SB.PCI0.RP06.HPSX)
If (LNot (\_SB.PCI0.RP06.PDSX))
{
Store (Zero, \_SB.PCI0.RP06.L0SE)
}
Notify (\_SB.PCI0.RP06, Zero)
}
Else
{
Store (One, \_SB.PCI0.RP06.HPSX)
}
}
If (LAnd (LEqual (RP7D, Zero), \_SB.PCI0.RP07.HPSX))
{
Sleep (0x64)
If (\_SB.PCI0.RP07.PDCX)
{
Store (One, \_SB.PCI0.RP07.PDCX)
Store (One, \_SB.PCI0.RP07.HPSX)
If (LNot (\_SB.PCI0.RP07.PDSX))
{
Store (Zero, \_SB.PCI0.RP07.L0SE)
}
If (LEqual (PFLV, FDTP))
{
Notify (\_SB.PCI0.RP07, Zero)
}
Else
{
If (ECON)
{
If (LEqual (\_SB.PCI0.LPCB.H_EC.DOCK, Zero))
{
Notify (\_SB.PCI0.RP07, Zero)
}
}
}
}
Else
{
Store (One, \_SB.PCI0.RP07.HPSX)
}
}
If (LAnd (LEqual (RP8D, Zero), \_SB.PCI0.RP08.HPSX))
{
Sleep (0x64)
If (\_SB.PCI0.RP08.PDCX)
{
Store (One, \_SB.PCI0.RP08.PDCX)
Store (One, \_SB.PCI0.RP08.HPSX)
If (LNot (\_SB.PCI0.RP08.PDSX))
{
Store (Zero, \_SB.PCI0.RP08.L0SE)
}
If (LEqual (PFLV, FDTP))
{
Notify (\_SB.PCI0.RP08, Zero)
}
Else
{
If (ECON)
{
If (LEqual (\_SB.PCI0.LPCB.H_EC.DOCK, Zero))
{
Notify (\_SB.PCI0.RP08, Zero)
}
}
}
}
Else
{
Store (One, \_SB.PCI0.RP08.HPSX)
}
}
}
Method (_L02, 0, NotSerialized) // _Lxx: Level-Triggered GPE
{
Store (Zero, GPEC)
If (CondRefOf (DTSE))
{
If (LGreaterEqual (DTSE, One)) {}
}
If (CondRefOf (\_SB.PCCD.PENB))
{
If (LEqual (\_SB.PCCD.PENB, One))
{
Notify (\_SB.PCCD, 0x80)
}
}
}
Method (_L06, 0, NotSerialized) // _Lxx: Level-Triggered GPE
{
If (LAnd (\_SB.PCI0.GFX0.GSSE, LNot (GSMI)))
{
\_SB.PCI0.GFX0.GSCI ()
}
}
Method (_L07, 0, NotSerialized) // _Lxx: Level-Triggered GPE
{
Store (0x20, \_SB.PCI0.SBUS.HSTS)
}
Method (OL1E, 0, NotSerialized)
{
If (LEqual (ECON, Zero))
{
Return (Zero)
}
If (LNotEqual (LIDS (), \_SB.PCI0.LPCB.H_EC.LSTE))
{
Store (\_SB.PCI0.LPCB.H_EC.LSTE, LIDS)
If (IGDS)
{
If (\_SB.PCI0.GFX0.GLID (LIDS ()))
{
Or (0x80000000, \_SB.PCI0.GFX0.CLID, \_SB.PCI0.GFX0.CLID)
}
}
Notify (\_SB.LID0, 0x80)
}
Else
{
If (LEqual (BNUM, Zero))
{
If (LNotEqual (PWRS, \_SB.PCI0.LPCB.H_EC.VPWR))
{
Store (\_SB.PCI0.LPCB.H_EC.VPWR, PWRS)
PNOT ()
}
}
Notify (\_SB.PWRB, 0x02)
}
Return (Zero)
}
}
Device (WCAM)
{
Name (_ADR, One) // _ADR: Address
Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
{
Name (UPCP, Package (0x04)
{
0xFF,
0xFF,
Zero,
Zero
})
Return (UPCP)
}
Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
{
Name (PLDP, Package (0x01)
{
Buffer (0x14)
{
/* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x25, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0010 */ 0xC8, 0x00, 0xA0, 0x00
}
})
Return (PLDP)
}
}
Scope (_SB.PCI0.LPCB)
{
Method (SIOH, 0, NotSerialized)
{
Notify (PWRB, 0x02)
}
}
Device (_SB.TPM)
{
Method (_HID, 0, NotSerialized) // _HID: Hardware ID
{
If (TCMF) {}
Else
{
Return (0x310CD041)
}
}
Name (_STR, Unicode ("TPM 1.2 Device")) // _STR: Description String
Name (_UID, One) // _UID: Unique ID
Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
0x00000000, // Granularity
0xFED40000, // Range Minimum
0xFED44FFF, // Range Maximum
0x00000000, // Translation Offset
0x00005000, // Length
,, , AddressRangeMemory, TypeStatic)
})
OperationRegion (TMMB, SystemMemory, 0xFED40000, 0x5000)
Field (TMMB, ByteAcc, Lock, Preserve)
{
ACCS, 8,
Offset (0x18),
TSTA, 8,
TBCA, 8,
Offset (0xF00),
TVID, 16,
TDID, 16
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (TPMF)
{
Return (0x0F)
}
Return (Zero)
}
}
Scope (_SB.TPM)
{
OperationRegion (ASMI, SystemIO, SMIA, One)
Field (ASMI, ByteAcc, NoLock, Preserve)
{
INQ, 8
}
OperationRegion (BSMI, SystemIO, SMIB, One)
Field (BSMI, ByteAcc, NoLock, Preserve)
{
DAT, 8
}
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0xA6, 0xFA, 0xDD, 0x3D, 0x1B, 0x36, 0xB4, 0x4E,
/* 0008 */ 0xA4, 0x24, 0x8D, 0x10, 0x08, 0x9D, 0x16, 0x53
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_0)
If (LEqual (_T_0, Zero))
{
Return (Buffer (0x02)
{
0xFF, 0x01
})
}
Else
{
If (LEqual (_T_0, One))
{
Return ("1.2")
}
Else
{
If (LEqual (_T_0, 0x02))
{
ToInteger (DerefOf (Index (Arg3, Zero)), TMF2)
Store (0x12, TMF1)
Store (TMF1, DAT)
Store (OFST, INQ)
If (LEqual (DAT, 0xFF))
{
Return (0x02)
}
Store (TMF2, DAT)
Store (OFST, INQ)
If (LEqual (DAT, 0xFF))
{
Return (0x02)
}
If (LEqual (DAT, 0xF1))
{
Return (One)
}
Return (Zero)
}
Else
{
If (LEqual (_T_0, 0x03))
{
Name (PPI1, Package (0x02)
{
Zero,
Zero
})
Store (0x11, DAT)
Store (OFST, INQ)
If (LEqual (DAT, 0xFF))
{
Return (One)
}
Store (DAT, Index (PPI1, One))
Return (PPI1)
}
Else
{
If (LEqual (_T_0, 0x04))
{
Return (TRST)
}
Else
{
If (LEqual (_T_0, 0x05))
{
Name (PPI2, Package (0x03)
{
Zero,
Zero,
Zero
})
Store (0x21, DAT)
Store (OFST, INQ)
Store (DAT, Index (PPI2, One))
If (LEqual (DAT, 0xFF))
{
Return (0x02)
}
Store (0x31, DAT)
Store (OFST, INQ)
If (LEqual (DAT, 0xFF))
{
Return (0x02)
}
If (LEqual (DAT, 0xF0))
{
Store (0x51, DAT)
Store (OFST, INQ)
If (LEqual (DAT, 0xFF))
{
Store (0xFFFFFFF0, Index (PPI2, 0x02))
Return (PPI2)
}
}
Else
{
If (LEqual (DAT, 0xF1))
{
Store (0x51, DAT)
Store (OFST, INQ)
If (LEqual (DAT, 0xFF))
{
Store (0xFFFFFFF1, Index (PPI2, 0x02))
Return (PPI2)
}
}
Else
{
Store (DAT, Index (PPI2, 0x02))
}
}
Return (PPI2)
}
Else
{
If (LEqual (_T_0, 0x06))
{
Return (0x03)
}
Else
{
If (LEqual (_T_0, 0x07))
{
ToInteger (DerefOf (Index (Arg3, Zero)), TMF2)
Store (0x12, TMF1)
Store (TMF1, DAT)
Store (OFST, INQ)
If (LEqual (DAT, 0xFF))
{
Return (0x02)
}
Store (TMF2, DAT)
Store (OFST, INQ)
If (LEqual (DAT, 0xFF))
{
Return (0x02)
}
If (LEqual (DAT, 0xF1))
{
Return (One)
}
Return (Zero)
}
Else
{
If (LEqual (_T_0, 0x08))
{
ToInteger (DerefOf (Index (Arg3, Zero)), TMF2)
Store (0x43, TMF1)
Store (TMF1, DAT)
Store (OFST, INQ)
Store (TMF2, DAT)
Store (OFST, INQ)
Return (DAT)
}
Else
{
}
}
}
}
}
}
}
}
}
Break
}
}
Else
{
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0xED, 0x54, 0x60, 0x37, 0x13, 0xCC, 0x75, 0x46,
/* 0008 */ 0x90, 0x1C, 0x47, 0x56, 0xD7, 0xF2, 0xD4, 0x5D
}))
{
While (One)
{
Store (ToInteger (Arg2), _T_1)
If (LEqual (_T_1, Zero))
{
Return (Buffer (One)
{
0x03
})
}
Else
{
If (LEqual (_T_1, One))
{
Store (0x22, TMF1)
Store (TMF1, DAT)
Store (OFST, INQ)
If (LEqual (DAT, 0xFF))
{
Return (0x02)
}
ToInteger (DerefOf (Index (Arg3, Zero)), TMF1)
Store (TMF1, DAT)
Store (OFST, INQ)
If (LEqual (DAT, 0xFF))
{
Return (0x02)
}
Return (Zero)
}
Else
{
}
}
Break
}
}
}
Return (Buffer (One)
{
0x00
})
}
}
Name (GNLD, 0x02)
Name (OBDP, 0x02)
OperationRegion (LEDM, SystemMemory, 0xFED1F410, One)
Field (LEDM, ByteAcc, NoLock, Preserve)
{
BILD, 1,
, 1,
RPR0, 1,
Offset (0x01)
}
Method (DBGL, 1, NotSerialized)
{
If (LEqual (Arg0, One))
{
Store (Zero, RPR0)
\_SB.PCI0.LPCB.SIO1.ENFG (0x08)
And (\_SB.PCI0.LPCB.SIO1.SCF7, 0xEF, \_SB.PCI0.LPCB.SIO1.SCF7)
\_SB.PCI0.LPCB.SIO1.EXFG ()
}
Else
{
Store (One, RPR0)
\_SB.PCI0.LPCB.SIO1.ENFG (0x08)
Or (\_SB.PCI0.LPCB.SIO1.SCF7, 0x10, \_SB.PCI0.LPCB.SIO1.SCF7)
\_SB.PCI0.LPCB.SIO1.EXFG ()
}
}
Method (SYSL, 1, NotSerialized)
{
If (LEqual (Arg0, One))
{
\_SB.PCI0.LPCB.SIO1.ENFG (0x08)
And (\_SB.PCI0.LPCB.SIO1.OPT0, 0x7F, \_SB.PCI0.LPCB.SIO1.OPT0)
\_SB.PCI0.LPCB.SIO1.EXFG ()
}
Else
{
\_SB.PCI0.LPCB.SIO1.ENFG (0x08)
Or (\_SB.PCI0.LPCB.SIO1.OPT0, 0x80, \_SB.PCI0.LPCB.SIO1.OPT0)
\_SB.PCI0.LPCB.SIO1.EXFG ()
}
}
Method (LEDS, 1, NotSerialized)
{
If (LEqual (OBDP, 0x02))
{
DBGL (One)
Store (Arg0, DBG8)
}
If (LEqual (GNLD, One))
{
\_SB.PCI0.LPCB.SIO1.ENFG (0x0B)
And (\_SB.PCI0.LPCB.SIO1.OPT7, Zero, \_SB.PCI0.LPCB.SIO1.OPT7)
\_SB.PCI0.LPCB.SIO1.EXFG ()
}
}
Method (LEDW, 1, NotSerialized)
{
If (LEqual (OBDP, 0x02))
{
DBGL (Zero)
ShiftLeft (Arg0, 0x04, DBG8)
}
If (LEqual (GNLD, 0x02))
{
SYSL (Zero)
}
If (LEqual (GNLD, One))
{
\_SB.PCI0.LPCB.SIO1.ENFG (0x0B)
And (\_SB.PCI0.LPCB.SIO1.OPT7, Zero, \_SB.PCI0.LPCB.SIO1.OPT7)
\_SB.PCI0.LPCB.SIO1.EXFG ()
}
}
Scope (_SB.PCI0)
{
Name (SLIC, Buffer (0x9E)
{
"987365986456Genuine NVIDIA Certified SLI Ready Motherboard for ASROCK Z87 EXTREME6 faa4-Copyright 2012 NVIDIA Corporation All Rights Reserved-029834757666(R)"
})
Device (WMI1)
{
Name (_HID, "pnp0c14") // _HID: Hardware ID
Name (_UID, "MXM2") // _UID: Unique ID
Name (_WDG, Buffer (0x14)
{
/* 0000 */ 0x3C, 0x5C, 0xCB, 0xF6, 0xAE, 0x9C, 0xBD, 0x4E,
/* 0008 */ 0xB5, 0x77, 0x93, 0x1E, 0xA3, 0x2A, 0x2C, 0xC0,
/* 0010 */ 0x4D, 0x58, 0x01, 0x02
})
Method (WMMX, 3, NotSerialized)
{
CreateDWordField (Arg2, Zero, FUNC)
If (LEqual (FUNC, 0x41494C53))
{
Return (SLIC)
}
Return (Zero)
}
}
}
Scope (_SB.PCI0.LPCB)
{
Device (H_EC)
{
Name (_HID, EisaId ("PNP0C09")) // _HID: Hardware ID
Name (_UID, One) // _UID: Unique ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
Store (0x03, ^^^GFX0.CLID)
Return (Zero)
}
Name (B1CC, Zero)
Name (B1ST, Zero)
Name (B2CC, Zero)
Name (B2ST, Zero)
Name (CFAN, Zero)
Name (CMDR, Zero)
Name (DOCK, Zero)
Name (EJET, Zero)
Name (MCAP, Zero)
Name (PLMX, Zero)
Name (PECH, Zero)
Name (PECL, Zero)
Name (PENV, Zero)
Name (PINV, Zero)
Name (PPSH, Zero)
Name (PPSL, Zero)
Name (PSTP, Zero)
Name (RPWR, Zero)
Name (LIDS, Zero)
Name (LSTE, Zero)
Name (SLPC, Zero)
Name (VPWR, Zero)
Name (WTMS, Zero)
Name (AWT2, Zero)
Name (AWT1, Zero)
Name (AWT0, Zero)
Name (DLED, Zero)
Name (IBT1, Zero)
Method (ECMD, 1, Serialized)
{
If (ECON)
{
While (CMDR)
{
Stall (0x14)
}
Store (Arg0, CMDR)
}
}
Device (BAT0)
{
Name (_HID, EisaId ("PNP0C0A")) // _HID: Hardware ID
Name (_UID, Zero) // _UID: Unique ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (Zero)
}
}
Scope (\)
{
Field (GNVS, AnyAcc, Lock, Preserve)
{
Offset (0x1E),
BNUM, 8,
Offset (0x20),
B1SC, 8,
Offset (0x23),
B1SS, 8
}
}
Device (BAT1)
{
Name (_HID, EisaId ("PNP0C0A")) // _HID: Hardware ID
Name (_UID, One) // _UID: Unique ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (Zero)
}
}
Scope (\)
{
Field (GNVS, AnyAcc, Lock, Preserve)
{
Offset (0x21),
B2SC, 8,
Offset (0x24),
B2SS, 8
}
}
Device (BAT2)
{
Name (_HID, EisaId ("PNP0C0A")) // _HID: Hardware ID
Name (_UID, 0x02) // _UID: Unique ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (Zero)
}
}
}
}
Device (_SB.PCI0.DOCK)
{
Name (_HID, "ABCD0000") // _HID: Hardware ID
Name (_CID, EisaId ("PNP0C15")) // _CID: Compatible ID
Name (_UID, 0x02) // _UID: Unique ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (Zero)
}
}
Scope (_SB)
{
Device (LID0)
{
Name (_HID, EisaId ("PNP0C0D")) // _HID: Hardware ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (Zero)
}
}
}
Name (_S0, Package (0x04) // _S0_: S0 System State
{
Zero,
Zero,
Zero,
Zero
})
If (SS3)
{
Name (_S3, Package (0x04) // _S3_: S3 System State
{
0x05,
Zero,
Zero,
Zero
})
}
If (SS4)
{
Name (_S4, Package (0x04) // _S4_: S4 System State
{
0x06,
Zero,
Zero,
Zero
})
}
Name (_S5, Package (0x04) // _S5_: S5 System State
{
0x07,
Zero,
Zero,
Zero
})
Method (PTS, 1, NotSerialized)
{
If (Arg0)
{
\_SB.PCI0.LPCB.SPTS (Arg0)
\_SB.PCI0.NPTS (Arg0)
S4RS (Arg0)
LEDS (Arg0)
\_SB.PCI0.LPCB.SIOS (Arg0)
}
}
Method (WAK, 1, NotSerialized)
{
\_SB.PCI0.LPCB.SWAK (Arg0)
\_SB.PCI0.NWAK (Arg0)
LEDW (Arg0)
\_SB.PCI0.LPCB.SIOW (Arg0)
}
Method (OSCM, 4, NotSerialized)
{
Return (Zero)
}
Method (PINI, 0, NotSerialized)
{
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment