/* * Intel ACPI Component Architecture * AML/ASL+ Disassembler version 20160409-64(RM) * Copyright (c) 2000 - 2016 Intel Corporation * * Disassembling to non-symbolic legacy ASL operators * * Disassembly of DSDT.aml, Thu Jan 12 00:34:05 2017 * * Original Table Header: * Signature "DSDT" * Length 0x0000CED7 (52951) * Revision 0x02 * Checksum 0xBA * OEM ID "LENOVO" * OEM Table ID "TP-GQ " * OEM Revision 0x00001180 (4480) * Compiler ID "INTL" * Compiler Version 0x20120711 (538052369) */ DefinitionBlock ("", "DSDT", 2, "LENOVO", "TP-GQ ", 0x00001180) { /* * iASL Warning: There were 11 external control methods found during * disassembly, but only 6 were resolved (5 unresolved). Additional * ACPI tables may be required to properly disassemble the code. This * resulting disassembler output file may not compile because the * disassembler did not know how many arguments to assign to the * unresolved methods. Note: SSDTs can be dynamically loaded at * runtime and may or may not be available via the host OS. * * 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 (, MethodObj, ) * Invocation: * iasl -fe refs.txt -d dsdt.aml * * The following methods were unresolved and many not compile properly * because the disassembler had to guess at the number of arguments * required for each: */ External (_GPE.MMTB, MethodObj) // Warning: Unknown method, guessing 1 arguments External (_PR_.ACRT, UnknownObj) // Warning: Unknown object External (_PR_.CPU0._PPC, IntObj) External (_PR_.CPU0._PSS, PkgObj) External (_SB_.IAOE.ECTM, UnknownObj) // Warning: Unknown object External (_SB_.IAOE.IBT1, UnknownObj) // Warning: Unknown object External (_SB_.IAOE.ITMR, UnknownObj) // Warning: Unknown object External (_SB_.IAOE.PTSL, UnknownObj) // Warning: Unknown object External (_SB_.IAOE.RCTM, UnknownObj) // Warning: Unknown object External (_SB_.IAOE.WKRS, UnknownObj) // Warning: Unknown object External (_SB_.PCCD, UnknownObj) // Warning: Unknown object External (_SB_.PCCD.PENB, UnknownObj) // Warning: Unknown object External (_SB_.PCI0.B0D3.ABAR, FieldUnitObj) External (_SB_.PCI0.B0D3.BARA, IntObj) External (_SB_.PCI0.GFX0.AINT, MethodObj) // 2 Arguments External (_SB_.PCI0.GFX0.CLID, FieldUnitObj) External (_SB_.PCI0.GFX0.DD1F, UnknownObj) External (_SB_.PCI0.GFX0.DRDY, FieldUnitObj) External (_SB_.PCI0.GFX0.GSCI, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.GSSE, FieldUnitObj) External (_SB_.PCI0.GFX0.STAT, FieldUnitObj) External (_SB_.PCI0.GFX0.TCHE, FieldUnitObj) External (_SB_.PCI0.PAUD.PUAM, MethodObj) // Warning: Unknown method, guessing 0 arguments External (_SB_.PCI0.PEG0, UnknownObj) External (_SB_.PCI0.PEG0.HPME, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP, UnknownObj) External (_SB_.PCI0.PEG1, UnknownObj) External (_SB_.PCI0.PEG1.HPME, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG2, UnknownObj) External (_SB_.PCI0.PEG2.HPME, MethodObj) // 0 Arguments External (_SB_.PCI0.XHC_.DUAM, MethodObj) // Warning: Unknown method, guessing 0 arguments External (_SB_.TPM_.CMOR, MethodObj) // 0 Arguments External (D1F0, UnknownObj) // Warning: Unknown object External (D1F1, UnknownObj) // Warning: Unknown object External (D1F2, UnknownObj) // Warning: Unknown object External (DIDX, FieldUnitObj) External (GSMI, FieldUnitObj) External (MDBG, IntObj) // Warning: Unknown object External (PDC0, UnknownObj) // Warning: Unknown object External (PDC1, UnknownObj) // Warning: Unknown object External (PDC2, UnknownObj) // Warning: Unknown object External (PDC3, UnknownObj) // Warning: Unknown object External (PDC4, UnknownObj) // Warning: Unknown object External (PDC5, UnknownObj) // Warning: Unknown object External (PDC6, UnknownObj) // Warning: Unknown object External (PDC7, UnknownObj) // Warning: Unknown object External (PS0X, MethodObj) // Warning: Unknown method, guessing 0 arguments External (PS3X, MethodObj) // Warning: Unknown method, guessing 0 arguments External (SGMD, FieldUnitObj) Name (SS1, One) Name (SS2, Zero) Name (SS3, One) Name (SS4, One) Name (FRBN, Zero) Name (SP2O, 0x4E) Name (SP1O, 0x164E) Name (IO1B, 0x0600) Name (IO1L, 0x70) Name (IO2B, 0x0680) Name (IO2L, 0x20) Name (IO3B, 0x0290) Name (IO3L, 0x10) Name (SP3O, 0x2E) Name (IO4B, 0x0A20) Name (IO4L, 0x20) Name (HSCS, One) Name (MCHB, 0xFED10000) Name (MCHL, 0x8000) Name (EGPB, 0xFED19000) Name (EGPL, 0x1000) Name (DMIB, 0xFED18000) Name (DMIL, 0x1000) Name (IFPB, 0xFED14000) Name (IFPL, 0x1000) Name (PEBS, 0xF8000000) Name (PELN, 0x04000000) Name (TTTB, 0xFED20000) Name (TTTL, 0x00020000) Name (SMBS, 0xEFA0) Name (SMBL, 0x10) Name (PBLK, 0x1810) Name (PMBS, 0x1800) Name (PMLN, 0x0100) Name (LVL2, 0x1814) Name (LVL3, 0x1815) Name (LVL4, 0x1816) Name (SMIP, 0xB2) Name (GPBS, 0x0800) Name (GPLN, 0x0400) Name (APCB, 0xFEC00000) Name (APCL, 0x1000) Name (PM30, 0x1830) Name (SRCB, 0xFED1C000) Name (SRCL, 0x4000) Name (HPTB, 0xFED00000) Name (HPTC, 0xFED1F404) Name (ACPH, 0xDE) Name (ASSB, Zero) Name (AOTB, Zero) Name (AAXB, Zero) Name (PEHP, One) Name (SHPC, One) Name (PEPM, One) Name (PEER, One) Name (PECS, One) Name (ITKE, Zero) Name (DSSP, Zero) Name (FHPP, Zero) Name (FMBL, One) Name (FDTP, 0x02) Name (FUPS, 0x03) Name (FEMD, 0x04) Name (BGR, One) Name (BFR, 0x02) Name (BBR, 0x03) Name (BWC, 0x04) Name (BGRP, 0x09) Name (BGRC, 0x0A) Name (BFRP, 0x0B) Name (BBRP, 0x0C) Name (BRPS, 0x10) Name (BRCS, 0x11) Name (BRDS, 0x12) Name (BR4S, 0x13) Name (BR5S, 0x14) Name (BWT1, 0x20) Name (BW1P, 0x21) Name (BW2C, 0x22) Name (BW2P, 0x23) Name (BSPC, 0x24) Name (BSPP, 0x25) Name (BTS, 0x26) Name (BICO, 0x27) Name (BICC, 0x28) Name (BHB, 0x30) Name (BFS2, 0x31) Name (BFS3, 0x32) Name (BFS4, 0x33) Name (BRH, 0x35) Name (BFHC, 0x40) Name (BFD1, 0x41) Name (BFD2, 0x42) Name (BFCC, 0x43) Name (BHCP, 0x44) Name (BCOC, 0x45) Name (BFHP, 0x46) Name (BFCP, 0x47) Name (BTMB, 0x51) Name (BBGB, 0x52) Name (BHC2, 0x53) Name (TCGM, One) 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 (DPPB, 0xFED98000) Name (DPPL, 0x8000) OperationRegion (GNVS, SystemMemory, 0xDCF4AC18, 0x02B2) 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, Offset (0x11), THOF, 8, ACT1, 8, ACTT, 8, PSVT, 8, TC1V, 8, TC2V, 8, TSPV, 8, CRTT, 8, Offset (0x1A), Offset (0x1B), DTS2, 8, DTSF, 8, Offset (0x1E), Offset (0x25), REVN, 8, IFFS, 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 (0x47), TPMP, 8, MORD, 8, TCGP, 8, PPRP, 32, PPRQ, 8, LPPR, 8, GTF0, 56, GTF2, 56, IDEM, 8, GTF1, 56, BID, 16, PLID, 8, ECTG, 8, ISCT, 8, SLDR, 32, WAKR, 8, 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 (0x121), TBTE, 8, Offset (0x207), PWRE, 8, PWRP, 8, XHPR, 8, SDS0, 8, SDS1, 16, SDS2, 8, SDS3, 8, SDS4, 8, SDS5, 8, Offset (0x212), 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, I20D, 16, I21D, 16, Offset (0x231), 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, Offset (0x27E), SHSB, 8, PLCS, 8, PLVL, 16, GN1E, 8, G1AT, 8, G1PT, 8, G1CT, 8, G1HT, 8, GN2E, 8, G2AT, 8, G2PT, 8, G2CT, 8, G2HT, 8, WWSD, 8, CVSD, 8, SSDD, 8, INLD, 8, IFAT, 8, IFPT, 8, IFCT, 8, IFHT, 8, DOSD, 8, USBH, 8, BCV4, 8, WTV0, 8, WTV1, 8, APFU, 8, SOHP, 8, NOHP, 8, TBSE, 8, WKFN, 8, PEPC, 16, VRSD, 16, PB1E, 8, WAND, 8, WWAT, 8, WWPT, 8, WWCT, 8, WWHT, 8, Offset (0x2AD), MPLT, 16, GR13, 8, SPST, 8, ECLP, 8 } OperationRegion (MNVS, SystemMemory, 0xDCF7D018, 0x1000) Field (MNVS, DWordAcc, NoLock, Preserve) { Offset (0xD00), GAPA, 32, GAPL, 32, DCKI, 32, DCKS, 32, VCDL, 1, VCDC, 1, VCDT, 1, VCDD, 1, , 1, VCSS, 1, VCDB, 1, VCIN, 1, VVPO, 8, BNTL, 8, BRLV, 8, CDFL, 8, CDAH, 8, PMOD, 2, PDIR, 1, PDMA, 1, Offset (0xD17), LFDC, 1, Offset (0xD18), C2NA, 1, C3NA, 1, C4NA, 1, C6NA, 1, C7NA, 1, Offset (0xD19), Offset (0xD1A), , 2, , 1, NHPS, 1, , 1, Offset (0xD1B), UOPT, 8, BTID, 32, DPP0, 1, DPP1, 1, DPP2, 1, DPP3, 1, DPP4, 1, DPP5, 1, Offset (0xD21), Offset (0xD22), TCRT, 16, TPSV, 16, TTC1, 16, TTC2, 16, TTSP, 16, SRAH, 8, SRHE, 8, SRE1, 8, SRE2, 8, SRE3, 8, SRE4, 8, SRE5, 8, SRE6, 8, SRU1, 8, SRU2, 8, SRU3, 8, SRU7, 8, SRU4, 8, SRU5, 8, SRU8, 8, SRPB, 8, SRLP, 8, SRSA, 8, SRSM, 8, CWAC, 1, CWAS, 1, CWUE, 1, CWUS, 1, Offset (0xD40), CWAP, 16, CWAT, 16, DBGC, 1, Offset (0xD45), FS1L, 16, FS1M, 16, FS1H, 16, FS2L, 16, FS2M, 16, FS2H, 16, FS3L, 16, FS3M, 16, FS3H, 16, TATC, 1, , 6, TATL, 1, TATW, 8, TNFT, 4, TNTT, 4, TDFA, 4, TDTA, 4, TDFD, 4, TDTD, 4, TCFA, 4, TCTA, 4, TCFD, 4, TCTD, 4, TSFT, 4, TSTT, 4, TIT0, 8, TCR0, 16, TPS0, 16, TIT1, 8, TCR1, 16, TPS1, 16, TIT2, 8, TCR2, 16, TPS2, 16, TIF0, 8, TIF1, 8, TIF2, 8, Offset (0xD78), BTHI, 1, Offset (0xD79), HDIR, 1, HDEH, 1, HDSP, 1, HDPP, 1, HDUB, 1, HDMC, 1, NFCF, 1, Offset (0xD7A), TPME, 8, BIDE, 4, IDET, 4, , 1, DTSE, 1, Offset (0xD7D), DTS0, 8, DTS1, 8, DT00, 1, DT01, 1, DT02, 1, DT03, 1, Offset (0xD80), LIDB, 1, C4WR, 1, C4AC, 1, ODDX, 1, CMPR, 1, ILNF, 1, PLUX, 1, Offset (0xD81), Offset (0xD8C), , 4, , 1, IDMM, 1, Offset (0xD8D), , 3, , 1, , 1, LIDA, 1, Offset (0xD8E), Offset (0xD8F), , 4, Offset (0xD90), TCG0, 1, TCG1, 1, Offset (0xD91), SWGP, 8, IPMS, 8, IPMB, 120, IPMR, 24, IPMO, 24, IPMA, 8, VIGD, 1, VDSC, 1, , 2, VDSP, 1, Offset (0xDAA), Offset (0xDAD), ASFT, 8, PL1L, 8, PL1M, 8, CHKC, 32, CHKE, 32, ATRB, 32, Offset (0xDBD), PPCR, 8, TPCR, 5, Offset (0xDBF), Offset (0xDCF), PPCA, 8, TPCA, 5, Offset (0xDD1), BFWB, 296, OSPX, 1, OSC4, 1, Offset (0xDF7), SPEN, 1, SCRM, 1, GFPL, 1, ETAU, 1, IHBC, 1, APMD, 1, APMF, 1, Offset (0xDF8), FTPS, 8, HIST, 8, LPST, 8, LWST, 8, Offset (0xDFF), MTAU, 8, Offset (0xE20), HPET, 32, PKLI, 16, VLCX, 16, VNIT, 8, VBD0, 8, VBDT, 128, VBPL, 16, VBPH, 16, VBML, 8, VBMH, 8, VEDI, 1024, PDCI, 16, ISCG, 32, ISSP, 1, ISWK, 2, Offset (0xEC7), SHA1, 160, FFDT, 1, Offset (0xEDC), LWCP, 1, LWEN, 1, IOCP, 1, IOEN, 1, IOST, 1, Offset (0xEDD), USBR, 1, Offset (0xEDE), Offset (0xEDF), Offset (0xEE1), BT2T, 1, Offset (0xEE2), TPPP, 8, TPPC, 8, WKRS, 8, FNWK, 8 } Field (MNVS, ByteAcc, NoLock, Preserve) { Offset (0xB00), WITM, 8, WSEL, 8, WLS0, 8, WLS1, 8, WLS2, 8, WLS3, 8, WLS4, 8, WLS5, 8, WLS6, 8, WLS7, 8, WLS8, 8, WLS9, 8, WLSA, 8, WLSB, 8, WLSC, 8, WLSD, 8, WENC, 8, WKBD, 8, WPTY, 8, WPAS, 1032, WPNW, 1032, WSPM, 8, WSPS, 8, WSMN, 8, WSMX, 8, WSEN, 8, WSKB, 8, WASB, 8, WASI, 16, WASD, 8, WASS, 32 } Field (MNVS, ByteAcc, NoLock, Preserve) { Offset (0xA00), DBGS, 1024 } OperationRegion (OEMN, SystemMemory, 0xDCF6BF18, 0x64) Field (OEMN, AnyAcc, Lock, Preserve) { SIGN, 32, BRID, 8, OPID, 8, OSID, 8, CPPS, 8, CPUT, 8, ECIF, 8, CTID, 8, ORV1, 608 } Scope (_SB) { Name (PR00, Package (0x19) { 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) { 0x001DFFFF, Zero, LNKH, Zero }, Package (0x04) { 0x001AFFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0013FFFF, Zero, LNKH, Zero }, Package (0x04) { 0x001BFFFF, Zero, LNKG, Zero }, Package (0x04) { 0x0018FFFF, Zero, LNKE, Zero }, Package (0x04) { 0x0019FFFF, Zero, LNKE, Zero }, Package (0x04) { 0x0016FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0016FFFF, One, LNKB, Zero }, Package (0x04) { 0x0016FFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x0016FFFF, 0x03, LNKD, 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) { 0x0002FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0003FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0004FFFF, Zero, LNKA, Zero } }) Name (AR00, Package (0x19) { 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) { 0x001DFFFF, Zero, Zero, 0x17 }, Package (0x04) { 0x001AFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0013FFFF, Zero, Zero, 0x17 }, Package (0x04) { 0x001BFFFF, Zero, Zero, 0x16 }, Package (0x04) { 0x0018FFFF, Zero, Zero, 0x14 }, Package (0x04) { 0x0019FFFF, Zero, Zero, 0x14 }, Package (0x04) { 0x0016FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0016FFFF, One, Zero, 0x11 }, Package (0x04) { 0x0016FFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x0016FFFF, 0x03, Zero, 0x13 }, 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) { 0x0002FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0003FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0004FFFF, 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 (PR01, Package (0x18) { Package (0x04) { 0xFFFF, Zero, LNKF, Zero }, Package (0x04) { 0xFFFF, One, LNKG, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKH, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKE, Zero }, Package (0x04) { 0x0001FFFF, Zero, LNKG, Zero }, Package (0x04) { 0x0001FFFF, One, LNKF, Zero }, Package (0x04) { 0x0001FFFF, 0x02, LNKE, Zero }, Package (0x04) { 0x0001FFFF, 0x03, LNKH, Zero }, Package (0x04) { 0x0002FFFF, Zero, LNKH, Zero }, Package (0x04) { 0x0002FFFF, One, LNKE, Zero }, Package (0x04) { 0x0002FFFF, 0x02, LNKF, Zero }, Package (0x04) { 0x0002FFFF, 0x03, LNKG, Zero }, Package (0x04) { 0x0003FFFF, Zero, LNKD, Zero }, Package (0x04) { 0x0003FFFF, One, LNKC, Zero }, Package (0x04) { 0x0003FFFF, 0x02, LNKF, Zero }, Package (0x04) { 0x0003FFFF, 0x03, LNKG, Zero }, Package (0x04) { 0x0004FFFF, Zero, LNKC, Zero }, Package (0x04) { 0x0004FFFF, One, LNKH, Zero }, Package (0x04) { 0x0004FFFF, 0x02, LNKA, Zero }, Package (0x04) { 0x0004FFFF, 0x03, LNKE, Zero }, Package (0x04) { 0x0005FFFF, Zero, LNKC, Zero }, Package (0x04) { 0x0005FFFF, One, LNKE, Zero }, Package (0x04) { 0x0005FFFF, 0x02, LNKG, Zero }, Package (0x04) { 0x0005FFFF, 0x03, LNKF, Zero } }) Name (AR01, Package (0x18) { Package (0x04) { 0xFFFF, Zero, Zero, 0x15 }, Package (0x04) { 0xFFFF, One, Zero, 0x16 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x17 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x14 }, Package (0x04) { 0x0001FFFF, Zero, Zero, 0x16 }, Package (0x04) { 0x0001FFFF, One, Zero, 0x15 }, Package (0x04) { 0x0001FFFF, 0x02, Zero, 0x14 }, Package (0x04) { 0x0001FFFF, 0x03, Zero, 0x17 }, Package (0x04) { 0x0002FFFF, Zero, Zero, 0x17 }, Package (0x04) { 0x0002FFFF, One, Zero, 0x14 }, Package (0x04) { 0x0002FFFF, 0x02, Zero, 0x15 }, Package (0x04) { 0x0002FFFF, 0x03, Zero, 0x16 }, Package (0x04) { 0x0003FFFF, Zero, Zero, 0x13 }, Package (0x04) { 0x0003FFFF, One, Zero, 0x12 }, Package (0x04) { 0x0003FFFF, 0x02, Zero, 0x15 }, Package (0x04) { 0x0003FFFF, 0x03, Zero, 0x16 }, Package (0x04) { 0x0004FFFF, Zero, Zero, 0x12 }, Package (0x04) { 0x0004FFFF, One, Zero, 0x17 }, Package (0x04) { 0x0004FFFF, 0x02, Zero, 0x10 }, Package (0x04) { 0x0004FFFF, 0x03, Zero, 0x14 }, Package (0x04) { 0x0005FFFF, Zero, Zero, 0x12 }, Package (0x04) { 0x0005FFFF, One, Zero, 0x14 }, Package (0x04) { 0x0005FFFF, 0x02, Zero, 0x16 }, Package (0x04) { 0x0005FFFF, 0x03, Zero, 0x15 } }) 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) OperationRegion (MBAR, SystemMemory, Add (ShiftLeft (MHBR, 0x0F), 0x5000), 0x1000) Field (MBAR, ByteAcc, NoLock, Preserve) { Offset (0x938), PWRU, 4, Offset (0x939), EGYU, 5, Offset (0x93A), TIMU, 4, Offset (0x9A0), PPL1, 15, PL1E, 1, CLP1, 1, PL1T, 7, Offset (0x9A4), PPL2, 15, PL2E, 1, CLP2, 1, PL2T, 7 } 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, ToUUID ("33db4d5b-1ff7-401c-9657-7441c03dd766") /* PCI Host Bridge Device */) 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)) } ElseIf (LGreaterEqual (OSYS, 0x07DC)) { If (LEqual (XCNT, Zero)) { ^XHC.XSEL () Increment (XCNT) } } If (LAnd (LEqual (Arg0, GUID), NEXP)) { Store (CDW2, SUPP) Store (CDW3, CTRL) 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 (AR01, 0, NotSerialized) { Return (^^AR01) } Method (PR01, 0, NotSerialized) { Return (^^PR01) } 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 (AR0A, 0, NotSerialized) { Return (^^AR0A) } Method (PR0A, 0, NotSerialized) { Return (^^PR0A) } Method (AR0B, 0, NotSerialized) { Return (^^AR0B) } Method (PR0B, 0, NotSerialized) { Return (^^PR0B) } } Device (P0P1) { Name (_ADR, 0x001E0000) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x6B, 0x04)) } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (PICM) { Return (AR01 ()) } Return (PR01 ()) } } 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) } } } Device (PWRB) { Name (_HID, EisaId ("PNP0C0C")) // _HID: Hardware ID } } 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) } } ElseIf (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 (_CRS, ResourceTemplate () // _CRS: Current Resource Settings { 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, 0x1800, // Range Minimum 0x1800, // Range Maximum 0x01, // Alignment 0xFF, // Length ) IO (Decode16, 0x164E, // Range Minimum 0x164E, // Range Maximum 0x01, // Alignment 0x02, // Length ) }) } Device (LDR2) { Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID Name (_UID, 0x05) // _UID: Unique ID Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings { IO (Decode16, 0x0800, // Range Minimum 0x0800, // Range Maximum 0x01, // Alignment 0x80, // Length ) }) Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (CDID, 0xF000), 0x8000)) { Return (0x0F) } Else { Return (Zero) } } } 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 (EC0) { Device (HKEY) { Name (_HID, EisaId ("LEN0068")) // _HID: Hardware ID Method (_STA, 0, NotSerialized) // _STA: Status { Return (0x0F) } Method (MHKV, 0, NotSerialized) { Return (0x0100) } Name (DHKC, Zero) Name (DHKB, One) Mutex (XDHK, 0x07) Name (DHKH, Zero) Name (DHKW, Zero) Name (DHKS, Zero) Name (DHKD, Zero) Name (DHKN, 0x0C018070) Name (DHKT, Zero) Name (DHWW, Zero) Method (MHKA, 0, NotSerialized) { Return (0xFFFFFFFB) } Method (MHKN, 0, NotSerialized) { Return (DHKN) } Method (MHKK, 1, NotSerialized) { If (DHKC) { Return (And (DHKN, Arg0)) } Else { Return (Zero) } } Method (MHKM, 2, NotSerialized) { Acquire (XDHK, 0xFFFF) If (LGreater (Arg0, 0x20)) { Noop } Else { ShiftLeft (One, Decrement (Arg0), Local0) If (And (Local0, 0xFFFFFFFB)) { If (Arg1) { Or (Local0, DHKN, DHKN) } Else { And (DHKN, XOr (Local0, 0xFFFFFFFF), DHKN) } } Else { Noop } } Release (XDHK) } Method (MHKC, 1, NotSerialized) { Store (Arg0, DHKC) } Method (MHKP, 0, NotSerialized) { Acquire (XDHK, 0xFFFF) If (DHWW) { Store (DHWW, Local1) Store (Zero, DHWW) } ElseIf (DHKW) { Store (DHKW, Local1) Store (Zero, DHKW) } ElseIf (DHKD) { Store (DHKD, Local1) Store (Zero, DHKD) } ElseIf (DHKS) { Store (DHKS, Local1) Store (Zero, DHKS) } ElseIf (DHKT) { Store (DHKT, Local1) Store (Zero, DHKT) } Else { Store (DHKH, Local1) Store (Zero, DHKH) } Release (XDHK) Return (Local1) } Method (MHKE, 1, NotSerialized) { Store (Arg0, DHKB) Acquire (XDHK, 0xFFFF) Store (Zero, DHKH) Store (Zero, DHKW) Store (Zero, DHKS) Store (Zero, DHKD) Store (Zero, DHKT) Store (Zero, DHWW) Release (XDHK) } Method (GMMS, 1, NotSerialized) { Store (AMBX (Zero, 0x68F3, Zero), Local0) If (LEqual (Local0, Zero)) { Return (0x00010001) } ElseIf (LEqual (Local0, One)) { Return (0x00010004) } ElseIf (LEqual (Local0, 0x03)) { Return (0x00010003) } } Method (MHKQ, 1, NotSerialized) { If (DHKB) { If (DHKC) { Acquire (XDHK, 0xFFFF) If (LLess (Arg0, 0x1000)) {} ElseIf (LLess (Arg0, 0x2000)) { Store (Arg0, DHKH) } ElseIf (LLess (Arg0, 0x3000)) { Store (Arg0, DHKW) } ElseIf (LLess (Arg0, 0x4000)) { Store (Arg0, DHKS) } ElseIf (LLess (Arg0, 0x5000)) { Store (Arg0, DHKD) } ElseIf (LLess (Arg0, 0x6000)) { Store (Arg0, DHKH) } ElseIf (LLess (Arg0, 0x7000)) { Store (Arg0, DHKT) } ElseIf (LLess (Arg0, 0x8000)) { Store (Arg0, DHWW) } Else { } Release (XDHK) Notify (HKEY, 0x80) } Else { } } } Method (MHKB, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { BEEP (0x11) Store (Zero, LIDB) } ElseIf (LEqual (Arg0, One)) { BEEP (0x10) Store (One, LIDB) } Else { } } Method (MHKD, 0, NotSerialized) { } Method (MHQC, 1, NotSerialized) { If (WNTF) { If (LEqual (Arg0, Zero)) { Return (CWAC) } ElseIf (LEqual (Arg0, One)) { Return (CWAP) } ElseIf (LEqual (Arg0, 0x02)) { Return (CWAT) } Else { Noop } } Else { Noop } Return (Zero) } Method (MHGC, 0, NotSerialized) { If (WNTF) { Acquire (XDHK, 0xFFFF) If (CKC4 (Zero)) { Store (0x03, Local0) } Else { Store (0x04, Local0) } Release (XDHK) Return (Local0) } Else { Noop } Return (Zero) } Method (MHSC, 1, NotSerialized) { If (LAnd (CWAC, WNTF)) { Acquire (XDHK, 0xFFFF) If (OSC4) { If (LEqual (Arg0, 0x03)) { If (LNot (CWAS)) { PNTF (0x81) Store (One, CWAS) } } ElseIf (LEqual (Arg0, 0x04)) { If (CWAS) { PNTF (0x81) Store (Zero, CWAS) } } Else { Noop } } Release (XDHK) } Else { Noop } } Method (CKC4, 1, NotSerialized) { Store (Zero, Local0) If (C4WR) { If (LNot (C4AC)) { Or (Local0, One, Local0) } } If (C4NA) { Or (Local0, 0x02, Local0) } If (LAnd (CWAC, CWAS)) { Or (Local0, 0x04, Local0) } If (LAnd (CWUE, CWUS)) { Or (Local0, 0x08, Local0) } And (Local0, Not (Arg0), Local0) Return (Local0) } Method (MHQE, 0, NotSerialized) { Return (C4WR) } Method (MHGE, 0, NotSerialized) { If (LAnd (C4WR, C4AC)) { Return (0x04) } Return (0x03) } Method (MHSE, 1, NotSerialized) { If (C4WR) { Store (C4AC, Local0) If (LEqual (Arg0, 0x03)) { Store (Zero, C4AC) If (XOr (Local0, C4AC)) { If (OSC4) { PNTF (0x81) } } } ElseIf (LEqual (Arg0, 0x04)) { Store (One, C4AC) If (XOr (Local0, C4AC)) { If (OSC4) { PNTF (0x81) } } } } } Method (UAWO, 1, NotSerialized) { Return (UAWS (Arg0)) } Method (KBAG, 1, NotSerialized) { Sleep (0x14) Store (KBLS (0x02, Zero), Local0) Or (Local0, 0x00020000, Local0) Or (Local0, 0x00040000, Local0) Return (Local0) } Method (KBAS, 1, NotSerialized) { If (LGreater (Arg0, 0x02)) { Return (0x80000000) } Store (Arg0, KBBL) Return (Zero) } Method (MLCS, 1, NotSerialized) { Store (KBLS (One, Arg0), Local0) If (LNot (And (Local0, 0x80000000))) { If (And (Arg0, 0x00010000)) { MHKQ (0x6001) } ElseIf (MHKK (0x00020000)) { MHKQ (0x1012) } } Return (Local0) } Method (DSSG, 1, NotSerialized) { Or (0x0400, PDCI, Local0) Return (Local0) } Method (DSSS, 1, NotSerialized) { Or (PDCI, Arg0, PDCI) } Method (SBSG, 1, NotSerialized) { Return (SYBC (Zero, Zero)) } Method (SBSS, 1, NotSerialized) { Return (SYBC (One, Arg0)) } Method (PBLG, 1, NotSerialized) { Store (BRLV, Local0) Or (Local0, 0x0F00, Local1) Return (Local1) } Method (PBLS, 1, NotSerialized) { Store (Arg0, BRLV) If (VIGD) { BRNS () } Else { VBRC (BRLV) } If (LNot (NBCF)) { MHKQ (0x6050) } Return (Zero) } Method (PMSG, 1, NotSerialized) { Store (PRSM (Zero, Zero), Local0) Return (Local0) } Method (PMSS, 1, NotSerialized) { PRSM (One, Arg0) Return (Zero) } Method (ISSG, 1, NotSerialized) { Store (ISSP, Local0) Or (Local0, And (ISCG, 0x30), Local0) Return (Zero) } Method (ISSS, 1, NotSerialized) { Store (Arg0, ISCG) Return (Zero) } Method (FFSG, 1, NotSerialized) { Return (Zero) } Method (FFSS, 1, NotSerialized) { IFRS (One, Arg0) Return (Zero) } Method (GMKS, 0, NotSerialized) { Store (And (One, FNKC), Local0) Or (Local0, 0x0200, Local0) Return (Local0) } Method (SMKS, 1, NotSerialized) { If (And (Arg0, One)) { Store (One, FNKC) Store (One, HKFA) } Else { Store (Zero, FNKC) Store (Zero, HKFA) } Return (Zero) } Method (INSG, 1, NotSerialized) { Store (IOEN, Local0) Or (Local0, ShiftLeft (IOST, 0x07), Local0) Or (Local0, ShiftLeft (IOCP, 0x08), Local0) Return (Zero) } Method (INSS, 1, NotSerialized) { If (LAnd (IOCP, And (Arg0, One))) { Store (One, IOEN) } Else { Store (Zero, IOEN) If (IOST) { If (LNot (ISOC (Zero))) { Store (Zero, IOST) } } } Return (Zero) } Method (GTPD, 0, NotSerialized) { Acquire (XDHK, 0xFFFF) Store (Zero, Local0) If (TPDS) { Or (Local0, One, Local0) } Else { And (Local0, 0xFE, Local0) } Or (Local0, 0x02, Local0) Release (XDHK) Return (Local0) } } Name (_HID, EisaId ("PNP0C09")) // _HID: Hardware ID Name (_GPE, 0x0A) // _GPE: General Purpose Events Name (OKEC, Zero) Name (ECAV, Zero) Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings { IO (Decode16, 0x0062, // Range Minimum 0x0062, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0066, // Range Minimum 0x0066, // Range Maximum 0x01, // Alignment 0x01, // Length ) }) Method (_REG, 2, NotSerialized) // _REG: Region Availability { If (LAnd (LEqual (Arg0, 0x03), LEqual (Arg1, One))) { Store (One, ECAV) Store (Zero, PENV) Store (0x80, PLMX) Store (Arg1, OKEC) Store (Arg1, H8DR) Store (One, ECON) Store (HPAC, PWRS) PNOT () } } OperationRegion (ECOR, EmbeddedControl, Zero, 0x0800) Field (ECOR, ByteAcc, NoLock, Preserve) { HDBM, 1, , 1, HKFA, 1, HFNE, 1, , 1, , 1, HLDM, 1, Offset (0x01), BBLS, 1, BTCM, 1, , 1, , 1, , 1, HBPR, 1, , 1, Offset (0x02), HDUE, 1, , 4, SNLK, 1, Offset (0x03), , 5, HAUM, 2, Offset (0x05), HSPA, 1, Offset (0x06), HSUN, 8, HSRP, 8, Offset (0x0B), , 4, AAEN, 1, AAEW, 1, Offset (0x0C), HLCL, 8, , 4, CALM, 1, , 1, KBBL, 2, HFNS, 2, Offset (0x0F), , 6, NULS, 1, Offset (0x10), HAM0, 8, HAM1, 8, HAM2, 8, HAM3, 8, HAM4, 8, HAM5, 8, HAM6, 8, HAM7, 8, HAM8, 8, HAM9, 8, HAMA, 8, HAMB, 8, HAMC, 8, HAMD, 8, HAME, 8, HAMF, 8, Offset (0x23), HANT, 8, Offset (0x26), , 2, HANA, 2, Offset (0x27), Offset (0x2A), HATR, 8, HT0H, 8, HT0L, 8, HT1H, 8, HT1L, 8, HFSP, 8, , 6, HMUT, 1, Offset (0x31), , 2, HUWB, 1, Offset (0x32), HWWL, 1, HWLB, 1, HWLO, 1, HWDK, 1, HWFN, 1, HWBT, 1, HWAO, 1, HWBU, 1, HWLU, 1, Offset (0x34), , 3, PIBS, 1, , 3, HPLO, 1, Offset (0x36), Offset (0x38), HB0S, 7, HB0A, 1, HB1S, 7, HB1A, 1, HCMU, 1, , 2, OVRQ, 1, DCBD, 1, DCWL, 1, DCWW, 1, HB1I, 1, , 1, KBLT, 1, BTPW, 1, FNKC, 1, HUBS, 1, BDPW, 1, BDDT, 1, HUBB, 1, Offset (0x46), , 1, BTWK, 1, HPLD, 1, TPDS, 1, HPAC, 1, BTST, 1, Offset (0x47), HPBU, 1, , 1, HBID, 1, , 3, HBCS, 1, HPNF, 1, , 1, GSTS, 1, , 2, HLBU, 1, DOCD, 1, HCBL, 1, Offset (0x49), SLUL, 1, Offset (0x4A), ESDL, 8, ESDH, 8, HTMH, 8, HTML, 8, WAK0,8,WAK1,8, HMPR, 8, , 7, HMDN, 1, Offset (0x78), TMP0, 8, Offset (0x80), Offset (0x81), HIID, 8, Offset (0x83), HFNI, 8, HSPD, 16, Offset (0x88), TSL0, 7, TSR0, 1, TSL1, 7, TSR1, 1, TSL2, 7, TSR2, 1, TSL3, 7, TSR3, 1, Offset (0x8D), HDAA, 3, HDAB, 3, HDAC, 2, Offset (0xB0), HDEN, 32, HDEP, 32, HDEM, 8, HDES, 8, Offset (0xBB), PLSL, 8, PLMS, 8, PLLS, 8, PLTU, 8, Offset (0xC8), ATMX, 8, HWAT, 8, Offset (0xCC), PWMH, 8, PWML, 8, Offset (0xED), , 4, HDDD, 1, Offset (0xF8), TSHT, 8, TSLT, 8, PENV, 8, PLMX, 8, CFAN, 1, Offset (0x668), CPU1, 8, GPU1, 8, TML0, 8, TMR0, 8, TMR1, 8 } Method (_INI, 0, NotSerialized) // _INI: Initialize { ^HKEY.WGIN () } Method (LED, 2, NotSerialized) { Or (Arg0, Arg1, Local0) If (H8DR) { Store (Local0, HLCL) } Else { WBEC (0x0C, Local0) } } Name (BAON, Zero) Name (WBON, Zero) Method (BEEP, 1, NotSerialized) { If (LEqual (Arg0, 0x05)) { Store (Zero, WBON) } Store (WBON, Local2) If (BAON) { If (LEqual (Arg0, Zero)) { Store (Zero, BAON) If (WBON) { Store (0x03, Local0) Store (0x08, Local1) } Else { Store (Zero, Local0) Store (Zero, Local1) } } Else { Store (0xFF, Local0) Store (0xFF, Local1) If (LEqual (Arg0, 0x11)) { Store (Zero, WBON) } If (LEqual (Arg0, 0x10)) { Store (One, WBON) } } } Else { Store (Arg0, Local0) Store (0xFF, Local1) If (LEqual (Arg0, 0x0F)) { Store (Arg0, Local0) Store (0x08, Local1) Store (One, BAON) } If (LEqual (Arg0, 0x11)) { Store (Zero, Local0) Store (Zero, Local1) Store (Zero, WBON) } If (LEqual (Arg0, 0x10)) { Store (0x03, Local0) Store (0x08, Local1) Store (One, WBON) } } If (LEqual (Arg0, 0x03)) { Store (Zero, WBON) If (Local2) { Store (0x07, Local0) If (LOr (LEqual (SPS, 0x03), LEqual (SPS, 0x04))) { Store (Zero, Local2) Store (0xFF, Local0) Store (0xFF, Local1) } } } If (LEqual (Arg0, 0x07)) { If (Local2) { Store (Zero, Local2) Store (0xFF, Local0) Store (0xFF, Local1) } } If (H8DR) { If (LAnd (Local2, LNot (WBON))) { Store (Zero, HSRP) Store (Zero, HSUN) Sleep (0x64) } If (LNotEqual (Local1, 0xFF)) { Store (Local1, HSRP) } If (LNotEqual (Local0, 0xFF)) { Store (Local0, HSUN) } } Else { If (LAnd (Local2, LNot (WBON))) { WBEC (0x07, Zero) WBEC (0x06, Zero) Sleep (0x64) } If (LNotEqual (Local1, 0xFF)) { WBEC (0x07, Local1) } If (LNotEqual (Local0, 0xFF)) { WBEC (0x06, Local0) } } If (LEqual (Arg0, 0x03)) {} If (LEqual (Arg0, 0x07)) { Sleep (0x01F4) } } Method (EVNT, 1, NotSerialized) { If (H8DR) { If (Arg0) { Or (HAM5, 0x04, HAM5) } Else { And (HAM5, 0xFB, HAM5) } } ElseIf (Arg0) { MBEC (0x15, 0xFF, 0x04) } Else { MBEC (0x15, 0xFB, Zero) } } Method (CHKS, 0, NotSerialized) { Store (0x03E8, Local0) While (HMPR) { Sleep (0x14) Decrement (Local0) If (LNot (Local0)) { Return (0x8080) } } If (HMDN) { Return (Zero) } Return (0x8081) } Method (LPMD, 0, NotSerialized) { Store (Zero, Local0) Store (Zero, Local1) Store (Zero, Local2) Return (Local0) } Method (CLPM, 0, NotSerialized) { If (And (PPMF, One)) { If (OSPX) { PNTF (0x80) } Else { Store (LPMD (), Local0) If (Local0) { STEP (0x04) } Else { STEP (0x05) } } } } Method (ECTT, 6, Serialized) { Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler If (ECIF) { Return (One) } Store (Arg0, Local0) Store (Arg1, Local1) Store (Arg2, Local2) Store (Arg3, Local3) Store (Arg4, Local4) Store (Arg5, Local5) While (One) { Store (Local0, _T_0) If (LEqual (_T_0, 0x03)) { Return (^HKEY.MHKK (Local1)) } ElseIf (LEqual (_T_0, 0x04)) { ^HKEY.MHKM (Local1, Local2) } ElseIf (LEqual (_T_0, 0x06)) { ^HKEY.MHKC (Local1) } ElseIf (LEqual (_T_0, 0x07)) { Return (^HKEY.MHKP ()) } ElseIf (LEqual (_T_0, 0x08)) { ^HKEY.MHKE (Local1) } ElseIf (LEqual (_T_0, 0x09)) { ^HKEY.MHKQ (Local1) } ElseIf (LEqual (_T_0, 0x0A)) { Return (^HKEY.UAWO (Local1)) } ElseIf (LEqual (_T_0, 0x0B)) { Return (^HKEY.NUMG ()) } ElseIf (LEqual (_T_0, 0x0C)) { Return (^HKEY.WPWS ()) } ElseIf (LEqual (_T_0, 0x0D)) { ^HKEY.WPWC (Local1) } ElseIf (LEqual (_T_0, 0x0E)) { Return (^HKEY.BPWS ()) } ElseIf (LEqual (_T_0, 0x0F)) { ^HKEY.BPWC (Local1) } ElseIf (LEqual (_T_0, 0x10)) { Return (^HKEY.CKC4 (Local1)) } ElseIf (LEqual (_T_0, 0x11)) { ^HKEY.MHSC (Local1) } ElseIf (LEqual (_T_0, 0x12)) { Return (^HKEY.PBLS (Local1)) } ElseIf (LEqual (_T_0, 0x13)) { Return (GBST (Local1, Local2, Local3, Local4)) } ElseIf (LEqual (_T_0, 0x14)) { Return (GBIF (Local1, Local2, Local3)) } ElseIf (LEqual (_T_0, 0x15)) { _Q1D () } ElseIf (LEqual (_T_0, 0x16)) { ^HKEY.SBIG (Local1) } ElseIf (LEqual (_T_0, 0x17)) { _Q70 () } ElseIf (LEqual (_T_0, 0x18)) { Return (^HKEY.GMKS ()) } ElseIf (LEqual (_T_0, 0x19)) { ^HKEY.SMKS (Local1) } Else { Return (One) } Break } } Method (CMFC, 4, Serialized) { Name (_T_4, Zero) // _T_x: Emitted by ASL Compiler Name (_T_3, Zero) // _T_x: Emitted by ASL Compiler Name (_T_2, Zero) // _T_x: Emitted by ASL Compiler Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler Store (Buffer (0x82) {}, Local0) CreateWordField (Local0, Zero, RTST) CreateField (Local0, 0x10, 0x0400, RTDT) While (One) { Store (ToInteger (Arg0), _T_0) If (LEqual (_T_0, 0x10)) { While (One) { Store (ToInteger (Arg1), _T_1) If (LEqual (_T_1, One)) { While (One) { Store (ToInteger (Arg2), _T_2) If (LEqual (_T_2, One)) { Store (One, RTST) Store (Zero, RTDT) Return (Local0) } Else { Store (Zero, RTST) Store (Zero, RTDT) Return (Local0) } Break } } ElseIf (LEqual (_T_1, 0x02)) { Store (One, RTST) Store (0x11, RTDT) Return (Local0) } Else { Store (Zero, RTST) Store (Zero, RTDT) Return (Local0) } Break } } ElseIf (LEqual (_T_0, 0x23)) { While (One) { Store (ToInteger (Arg1), _T_3) If (LEqual (_T_3, 0x10)) { Store (One, RTST) Store (0x06, RTDT) Return (Local0) } Else { Store (Zero, RTST) Store (Zero, RTDT) Return (Local0) } Break } } ElseIf (LEqual (_T_0, 0x86)) { While (One) { Store (ToInteger (Arg1), _T_4) If (LEqual (_T_4, One)) { Store (RDGI (Zero), Local1) Store (One, RTST) Store (Local1, RTDT) Return (Local0) } ElseIf (LEqual (_T_4, 0x02)) { Store (RDGI (One), Local1) Store (One, RTST) Store (Local1, RTDT) Return (Local0) } Else { Store (Zero, RTST) Store (Zero, RTDT) Return (Local0) } Break } } Else { Store (CBBM (Arg0, Arg1), Local1) If (LEqual (Local1, 0xFF)) { Store (Zero, RTST) Store (Zero, RTDT) Return (Local0) } Else { Store (One, RTST) Store (Local1, RTDT) Return (Local0) } } Break } } Method (CTMP, 0, NotSerialized) { Store (AMBX (Zero, 0xB0F4, Zero), Local0) Return (Local0) } Method (SKTA, 0, NotSerialized) { Store (AMBX (Zero, 0xB2F4, Zero), Local0) Return (Local0) } Method (SKTB, 0, NotSerialized) { Store (AMBX (Zero, 0xB3F4, Zero), Local0) Return (Local0) } Method (SKTC, 0, NotSerialized) { Store (AMBX (Zero, 0xB4F4, Zero), Local0) Return (Local0) } Method (CDTS, 0, NotSerialized) { Store (AMBX (Zero, 0xB5F4, Zero), Local0) Return (Local0) } Method (PJID, 0, NotSerialized) { Store (AMBX (Zero, 0xBCF4, Zero), Local0) Return (Local0) } Method (FANU, 0, NotSerialized) { Store (AMBX (Zero, 0xADF4, Zero), Local0) And (Local0, 0x0F, Local0) Return (Local0) } Method (FSSN, 0, NotSerialized) { Store (AMBX (Zero, 0xADF4, Zero), Local0) ShiftRight (Local0, 0x04, Local0) Return (Local0) } Method (TCNL, 0, NotSerialized) { Store (AMBX (Zero, 0xAAF4, Zero), Local0) Return (Local0) } Method (BRC0, 0, NotSerialized) { Store (AMBX (Zero, 0xC3F4, Zero), Local0) Store (AMBX (Zero, 0xC2F4, Zero), Local1) ShiftLeft (Local0, 0x08, Local0) Or (Local0, Local1, Local1) Return (Local1) } Mutex (FAMX, 0x00) Method (FANG, 1, NotSerialized) { Return (Zero) } Method (FANW, 2, NotSerialized) { Acquire (FAMX, 0xFFFF) ShiftRight (Arg0, 0x08, Local0) AMBX (One, 0x94F4, Local0) And (Arg0, 0xFF, Local1) AMBX (One, 0x95F4, Local1) AMBX (One, 0x96F4, Arg1) Release (FAMX) Return (Arg1) } Method (TUVR, 1, NotSerialized) { Return (0x04) } OperationRegion (CCLK, SystemIO, 0x1810, 0x04) Field (CCLK, DWordAcc, NoLock, Preserve) { , 1, DUTY, 3, THEN, 1, Offset (0x01), FTT, 1, , 8, TSTS, 1 } OperationRegion (ECRM, EmbeddedControl, Zero, 0xFF) Field (ECRM, ByteAcc, Lock, Preserve) { Offset (0x94), ERIB, 16, ERBD, 8, Offset (0xAC), Offset (0xAD), , 4, Offset (0xAE), , 3, , 4, Offset (0xAF), Offset (0xBC), Offset (0xBD), Offset (0xBE), Offset (0xF9), RFRD, 16 } Name (BTBF, Buffer (0x0100) { 0x00 }) OperationRegion (MMEC, SystemMemory, 0xFF000000, 0x0100) Field (MMEC, AnyAcc, Lock, Preserve) { TWBT, 2048 } Method (BTIF, 0, NotSerialized) { Store (TWBT, BTBF) Return (BTBF) } OperationRegion (MAIO, SystemIO, 0x0705, 0x03) Field (MAIO, ByteAcc, NoLock, Preserve) { MAIN, 16, MADT, 8 } Method (AMBX, 3, Serialized) { If (LEqual (Arg0, Zero)) { Store (Arg1, MAIN) Store (MADT, Local2) Return (Local2) } Else { Store (Arg1, MAIN) Store (Arg2, MADT) Store (Zero, Local2) Return (Local2) } } Method (THRO, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Return (THEN) } ElseIf (LEqual (Arg0, One)) { Return (DUTY) } ElseIf (LEqual (Arg0, 0x02)) { Store (AMBX (Zero, 0xAEF4, Zero), Local0) And (Local0, 0x40, Local0) Return (Local0) } Else { Return (0xFF) } } Method (CLCK, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Store (Zero, THEN) Store (Zero, FTT) } Else { Store (Arg0, DUTY) Store (One, THEN) } Return (THEN) } Method (PCLK, 0, NotSerialized) { Store (AMBX (Zero, 0xAEF4, Zero), Local0) Store (Local0, \_PR.CPU0._PPC) PNOT () } Method (_Q22, 0, NotSerialized) // _Qxx: EC Query { If (HB0A) { Notify (BAT0, 0x80) } } Method (_Q4A, 0, NotSerialized) // _Qxx: EC Query { Store (0x4A, P80H) Notify (BAT0, 0x81) } Method (_Q4B, 0, NotSerialized) // _Qxx: EC Query { Notify (BAT0, 0x80) } Method (_Q24, 0, NotSerialized) // _Qxx: EC Query { Notify (BAT0, 0x80) } Method (BATW, 1, NotSerialized) { } Field (ECOR, ByteAcc, NoLock, Preserve) { Offset (0xA0), BSC0,8,BSC1,8, BFC0,8,BFC1,8, SBAE, 16, SBRS, 16, BAC0,8,BAC1,8, BVO0,8,BVO1,8, SBAF, 16, SBBS, 16 } Field (ECOR, ByteAcc, NoLock, Preserve) { Offset (0xA0), , 15, SBCM, 1, SBMD, 16, SBCC, 16 } Field (ECOR, ByteAcc, NoLock, Preserve) { Offset (0xA0), BDC0,8,BDC1,8, BDV0,8,BDV1,8, SBOM, 16, SBSI, 16, SBDT, 16, BSN0,8,BSN1,8 } Field (ECOR, ByteAcc, NoLock, Preserve) { Offset (0xA0), BCH0,8,BCH1,8,BCH2,8,BCH3,8 } Field (ECOR, ByteAcc, NoLock, Preserve) { Offset (0xA0), SBMX,128 } Field (ECOR, ByteAcc, NoLock, Preserve) { Offset (0xA0), SBDX,128 } Mutex (BATM, 0x07) Method (GBIF, 3, NotSerialized) { Acquire (BATM, 0xFFFF) If (Arg2) { Or (Arg0, One, HIID) Sleep (0x14) Store (SBCM, Local7) XOr (Local7, One, Index (Arg1, Zero)) Store (Arg0, HIID) Sleep (0x14) If (Local7) { Multiply (B1B2(BFC0,BFC1), 0x0A, Local1) } Else { Store (B1B2(BFC0,BFC1), Local1) } Store (Local1, Index (Arg1, 0x02)) Or (Arg0, 0x02, HIID) Sleep (0x14) If (Local7) { Multiply (B1B2(BDC0,BDC1), 0x0A, Local0) } Else { Store (B1B2(BDC0,BDC1), Local0) } Store (Local0, Index (Arg1, One)) Divide (Local1, 0x14, Local2, Index (Arg1, 0x05)) If (Local7) { Store (0xC8, Index (Arg1, 0x06)) } ElseIf (B1B2(BDV0,BDV1)) { Divide (0x00030D40,B1B2(BDV0,BDV1), Local2, Index (Arg1, 0x06)) } Else { Store (Zero, Index (Arg1, 0x06)) } Store (B1B2(BDV0,BDV1), Index (Arg1, 0x04)) /* Store (B1B2(BSN0,BSN1), Local0) Name (SERN, Buffer (0x06) { " " }) Store (0x04, Local2) While (Local0) { Divide (Local0, 0x0A, Local1, Local0) Add (Local1, 0x30, Index (SERN, Local2)) Decrement (Local2) } Store (SERN, Index (Arg1, 0x0A)) Or (Arg0, 0x06, HIID) Sleep (0x14) Store (RECB(0xA0, 128), Index (Arg1, 0x09)) Or (Arg0, 0x04, HIID) Sleep (0x14) Name (BTYP, Buffer (0x05) { 0x00, 0x00, 0x00, 0x00, 0x00 }) Store (B1B4(BCH0,BCH1,BCH2,BCH3), BTYP) Store (BTYP, Index (Arg1, 0x0B)) Or (Arg0, 0x05, HIID) Sleep (0x14) Store (RECB(0xA0, 128), Index (Arg1, 0x0C)) */ } Else { Store (0xFFFFFFFF, Index (Arg1, One)) Store (Zero, Index (Arg1, 0x05)) Store (Zero, Index (Arg1, 0x06)) Store (0xFFFFFFFF, Index (Arg1, 0x02)) } Release (BATM) Return (Arg1) } Scope (HKEY) { Method (SBIG, 1, NotSerialized) { If (ECIF) { Return (Zero) } Return (BTIF ()) } } Method (GBST, 4, NotSerialized) { Acquire (BATM, 0xFFFF) If (And (Arg1, 0x20)) { Store (0x02, Local0) } ElseIf (And (Arg1, 0x40)) { Store (One, Local0) } Else { Store (Zero, Local0) } If (And (Arg1, 0x07)) {} Else { Or (Local0, 0x04, Local0) } If (LEqual (And (Arg1, 0x07), 0x07)) { Store (0x04, Local0) Store (Zero, Local1) Store (Zero, Local2) Store (Zero, Local3) } Else { Sleep (0x32) Store (Arg0, HIID) Sleep (0x32) Store (HIID, Local6) If (LNotEqual (Arg0, Local6)) { Release (BATM) Return (Arg3) } Store (B1B2(BVO0,BVO1), Local3) If (Arg2) { Multiply (B1B2(BSC0,BSC1), 0x0A, Local2) } Else { Store (B1B2(BSC0,BSC1), Local2) } Store (B1B2(BAC0,BAC1), Local1) If (LGreaterEqual (Local1, 0x8000)) { If (And (Local0, One)) { Subtract (0x00010000, Local1, Local1) } Else { Store (Zero, Local1) } } ElseIf (LNot (And (Local0, 0x02))) { Store (Zero, Local1) } If (Arg2) { Multiply (Local3, Local1, Local1) Divide (Local1, 0x03E8, Local7, Local1) } } Store (Local0, Index (Arg3, Zero)) Store (Local1, Index (Arg3, One)) Store (Local2, Index (Arg3, 0x02)) Store (Local3, Index (Arg3, 0x03)) Release (BATM) Return (Arg3) } Device (BAT0) { Name (_HID, EisaId ("PNP0C0A")) // _HID: Hardware ID Name (_UID, Zero) // _UID: Unique ID Name (_PCL, Package (0x01) // _PCL: Power Consumer List { _SB }) Name (B0ST, Zero) Name (BT0I, Package (0x0D) { Zero, 0xFFFFFFFF, 0xFFFFFFFF, One, 0x2A30, Zero, Zero, One, One, "", "", "", "" }) Name (BT0P, Package (0x04) {}) Method (_STA, 0, NotSerialized) // _STA: Status { If (ECIF) { Return (0x0F) } If (H8DR) { Store (HB0A, B0ST) } ElseIf (And (RBEC (0x38), 0x80)) { Store (One, B0ST) } Else { Store (Zero, B0ST) } If (B0ST) { Return (0x1F) } Else { Return (0x0F) } } Method (_BIF, 0, NotSerialized) // _BIF: Battery Information { Store (Zero, Local7) Store (0x0A, Local6) While (LAnd (LNot (Local7), Local6)) { If (HB0A) { If (LEqual (And (HB0S, 0x07), 0x07)) { Sleep (0x03E8) Decrement (Local6) } Else { Store (One, Local7) } } Else { Store (Zero, Local6) } } Return (GBIF (Zero, BT0I, Local7)) } Method (_BST, 0, NotSerialized) // _BST: Battery Status { If (ECIF) { Return (BT0P) } XOr (DerefOf (Index (BT0I, Zero)), One, Local0) Return (GBST (Zero, HB0S, Local0, BT0P)) } Method (_BTP, 1, NotSerialized) // _BTP: Battery Trip Point { And (HAM4, 0xEF, HAM4) If (Arg0) { Store (Arg0, Local1) If (LNot (DerefOf (Index (BT0I, Zero)))) { Divide (Local1, 0x0A, Local0, Local1) } And (Local1, 0xFF, HT0L) And (ShiftRight (Local1, 0x08), 0xFF, HT0H) Or (HAM4, 0x10, HAM4) } } } Scope (HKEY) { Mutex (BFWM, 0x07) Method (MHCF, 1, NotSerialized) { Store (BFWC (Arg0), Local0) Return (Local0) } Method (MHPF, 1, NotSerialized) { Name (RETB, Buffer (0x25) {}) Acquire (BFWM, 0xFFFF) If (LLessEqual (SizeOf (Arg0), 0x25)) { Store (Arg0, BFWB) If (BFWP ()) { CHKS () BFWL () } Store (BFWB, RETB) } Release (BFWM) Return (RETB) } Method (MHIF, 1, NotSerialized) { Name (RETB, Buffer (0x0A) {}) Acquire (BFWM, 0xFFFF) BFWG (Arg0) Store (BFWB, RETB) Release (BFWM) Return (RETB) } Method (MHDM, 1, NotSerialized) { BDMC (Arg0) } } Device (AC) { Name (_HID, "ACPI0003") // _HID: Hardware ID Name (_UID, Zero) // _UID: Unique ID Name (_PCL, Package (0x01) // _PCL: Power Consumer List { _SB }) Method (_PSR, 0, NotSerialized) // _PSR: Power Source { If (ECIF) { Return (One) } If (H8DR) { If (HPAC) { If (DOCD) { If (One) { Return (One) } Else { Return (Zero) } } Else { Return (One) } } Else { Return (Zero) } } ElseIf (And (RBEC (0x46), 0x10)) { Return (One) } Else { Return (Zero) } } Method (_STA, 0, NotSerialized) // _STA: Status { Return (0x0F) } } Scope (HKEY) { Method (PWMC, 0, NotSerialized) { Return (One) } Method (PWMG, 0, NotSerialized) { If (ECIF) { Return (Zero) } Store (PWMH, Local0) ShiftLeft (Local0, 0x08, Local0) Or (Local0, PWML, Local0) Return (Local0) } } Mutex (MCPU, 0x07) Method (_Q64, 0, NotSerialized) // _Qxx: EC Query { If (^HKEY.MHKK (0x10)) { ^HKEY.MHKQ (0x1005) } } Method (_Q65, 0, NotSerialized) // _Qxx: EC Query { If (^HKEY.MHKK (0x20)) { ^HKEY.MHKQ (0x1006) } } Method (_Q5F, 0, NotSerialized) // _Qxx: EC Query { If (^HKEY.MHKK (0x01000000)) { ^HKEY.MHKQ (0x60A0) } } Method (_Q5E, 0, NotSerialized) // _Qxx: EC Query { If (^HKEY.MHKK (0x1000)) { ^HKEY.MHKQ (0x6000) } } Method (_Q1F, 0, NotSerialized) // _Qxx: EC Query { If (^HKEY.MHKK (0x08000000)) { ^HKEY.MHKQ (0x101C) } UCMS (0x0E) } Method (_Q5A, 0, NotSerialized) // _Qxx: EC Query { If (^HKEY.MHKK (0x10000000)) { ^HKEY.MHKQ (0x101D) } } Method (_Q5B, 0, NotSerialized) // _Qxx: EC Query { If (^HKEY.MHKK (0x20000000)) { ^HKEY.MHKQ (0x101E) } } Method (_Q5C, 0, NotSerialized) // _Qxx: EC Query { If (^HKEY.MHKK (0x40000000)) { ^HKEY.MHKQ (0x101F) } } Method (_Q5D, 0, NotSerialized) // _Qxx: EC Query { If (^HKEY.MHKK (0x80000000)) { ^HKEY.MHKQ (0x1020) } } Method (_Q26, 0, NotSerialized) // _Qxx: EC Query { Notify (AC, 0x80) Sleep (0x03E8) Store (One, PWRS) PNOT () } Method (_Q27, 0, NotSerialized) // _Qxx: EC Query { Notify (AC, 0x80) Sleep (0x03E8) Store (Zero, PWRS) PNOT () } Method (_Q2A, 0, NotSerialized) // _Qxx: EC Query { Store (0x2A, P80H) If (LEqual (^^^^LID0._LID (), Zero)) { Return (Zero) } VCMS (One, ^^^^LID0._LID ()) If (LEqual (ILNF, Zero)) { If (IOST) { If (LNot (ISOC (Zero))) { Store (Zero, IOST) ^HKEY.MHKQ (0x60D0) } } Else { ^HKEY.MHKQ (0x5002) If (LEqual (PLUX, Zero)) { Store (One, ^^^GFX0.CLID) If (LEqual (RDGI (0x23), Zero)) { WTGP (0x37, One) } Notify (LID0, 0x80) } } } } Method (_Q2B, 0, NotSerialized) // _Qxx: EC Query { Store (0x2B, P80H) If (LEqual (^^^^LID0._LID (), One)) { Return (Zero) } UCMS (0x0D) VCMS (One, ^^^^LID0._LID ()) If (LEqual (ILNF, Zero)) { If (LAnd (IOEN, LNot (IOST))) { If (LNot (ISOC (One))) { Store (One, IOST) ^HKEY.MHKQ (0x60D0) } } Else { ^HKEY.MHKQ (0x5001) If (LEqual (PLUX, Zero)) { If (VIGD) { Store (Zero, ^^^GFX0.CLID) } If (LEqual (RDGI (0x23), Zero)) { WTGP (0x37, Zero) } Notify (LID0, 0x80) } } } } Method (_Q78, 0, NotSerialized) // _Qxx: EC Query { Store (0x78, APMC) } Method (_Q40, 0, NotSerialized) // _Qxx: EC Query { Notify (^^^PEG0.PEGP, 0xD3) } Method (_Q41, 0, NotSerialized) // _Qxx: EC Query { Notify (^^^PEG0.PEGP, 0xD2) } Method (_Q1D, 0, NotSerialized) // _Qxx: EC Query { PCLK () } Method (_Q36, 0, NotSerialized) // _Qxx: EC Query { If (H8DR) { If (HPLD) { ^HKEY.MHKQ (0x60C0) } } Store (0x68F3, MAIN) Store (MADT, Local0) If (LEqual (PWRU, Zero)) { Store (One, Local1) } Else { ShiftLeft (Decrement (PWRU), 0x02, Local1) } If (LEqual (Local0, 0x03)) { Multiply (0x0A, Local1, Local2) Multiply (0x13, Local1, Local3) Store (0x6F, Local4) } Else { Multiply (0x0E, Local1, Local2) Multiply (0x19, Local1, Local3) Store (0x6E, Local4) } Store (Local4, PL1T) Store (Local2, PPL1) Store (One, PL1E) Store (One, CLP1) Store (Local3, PPL2) Store (One, PL2E) Store (One, CLP2) } Method (_Q35, 0, NotSerialized) // _Qxx: EC Query { If (H8DR) { If (HPLD) { ^HKEY.MHKQ (0x60C0) } } Store (0x68F3, MAIN) Store (MADT, Local0) If (LEqual (PWRU, Zero)) { Store (One, Local1) } Else { ShiftLeft (Decrement (PWRU), 0x02, Local1) } If (LEqual (Local0, 0x03)) { Multiply (0x0A, Local1, Local2) Multiply (0x13, Local1, Local3) Store (0x6F, Local4) } Else { Multiply (0x0E, Local1, Local2) Multiply (0x19, Local1, Local3) Store (0x6E, Local4) } Store (Local4, PL1T) Store (Local2, PPL1) Store (One, PL1E) Store (One, CLP1) Store (Local3, PPL2) Store (One, PL2E) Store (One, CLP2) } Scope (\_SB.PCI0.LPCB.EC0) { Method (_Q6A, 0, NotSerialized) // _Qxx: EC Query { If (HDMC) { Noop } ElseIf (^HKEY.MHKK (0x04000000)) { ^HKEY.MHKQ (0x101B) } } } Scope (HKEY) { Method (MMTG, 0, NotSerialized) { Store (0x0101, Local0) If (HDMC) { Or (Local0, 0x00010000, Local0) } Return (Local0) } Method (MMTS, 1, NotSerialized) { If (HDMC) { Noop } ElseIf (LEqual (Arg0, 0x02)) { LED (0x0E, 0x80) } ElseIf (LEqual (Arg0, 0x03)) { LED (0x0E, 0xC0) } Else { LED (0x0E, Zero) } } } Scope (\_SB.PCI0.LPCB.EC0) { Method (_Q3F, 0, NotSerialized) // _Qxx: EC Query { ^HKEY.MHKQ (0x6000) } Method (_Q74, 0, NotSerialized) // _Qxx: EC Query { XOr (FNKC, One, FNKC) Store (FNKC, HKFA) ^HKEY.MHKQ (0x6060) } } Scope (HKEY) { Method (NUMG, 0, NotSerialized) { If (ECIF) { Return (0x03) } Store (Zero, Local0) Return (Local0) } } Scope (HKEY) { Name (WGFL, Zero) Method (WSIF, 0, NotSerialized) { Return (Zero) } Method (GWLS, 0, NotSerialized) { Return (GSTS) } Method (SWLS, 1, NotSerialized) { If (And (Arg0, One)) { Store (WLSR (Arg0), Local0) If (And (Local0, One)) { Store (One, DCBD) WTGP (0x4D, One) WTGP (0x50, One) } If (And (Local0, 0x02)) { Store (One, DCWL) } If (And (Local0, 0x04)) { Store (One, DCWW) WTGP (0x10, Zero) } Store (One, GSTS) } Else { WLSR (Arg0) WTGP (0x4D, Zero) WTGP (0x50, Zero) WTGP (0x10, One) Store (Zero, DCBD) Store (Zero, DCWL) Store (Zero, DCWW) Store (Zero, GSTS) } } Method (GWLN, 0, NotSerialized) { Store (Zero, Local0) If (And (WGFL, 0x0100)) { Or (Local0, One, Local0) } If (And (WGFL, 0x0800)) { Return (Local0) } If (LPWS ()) { Or (Local0, 0x02, Local0) } Or (Local0, 0x04, Local0) Return (Local0) } Method (SWLN, 1, NotSerialized) { If (And (Arg0, 0x02)) { LPWC (One) } Else { LPWC (Zero) } } Method (GWAN, 0, NotSerialized) { Store (Zero, Local0) If (And (WGFL, One)) { Or (Local0, One, Local0) } If (And (WGFL, 0x08)) { Return (Local0) } If (WPWS ()) { Or (Local0, 0x02, Local0) } Or (Local0, 0x04, Local0) Return (Local0) } Method (SWAN, 1, NotSerialized) { If (And (Arg0, 0x02)) { WPWC (One) } Else { WPWC (Zero) } } Method (GBDC, 0, NotSerialized) { If (ECIF) { Return (0x04) } Store (Zero, Local0) If (And (WGFL, 0x10)) { Or (Local0, One, Local0) } If (And (WGFL, 0x80)) { Return (Local0) } If (BPWS ()) { Or (Local0, 0x02, Local0) } Or (Local0, 0x04, Local0) Return (Local0) } Method (SBDC, 1, NotSerialized) { If (And (Arg0, 0x02)) { BPWC (One) } Else { BPWC (Zero) } } Method (LPWS, 0, NotSerialized) { If (H8DR) { Store (DCWL, Local0) } Else { Store (ShiftRight (And (RBEC (0x3A), 0x40), 0x05), Local0) } Return (Local0) } Method (LPWC, 1, NotSerialized) { Store (Zero, Local0) If (LAnd (Arg0, LAnd (And (WGFL, 0x0100), LNot (And (WGFL, 0x0800))))) { If (H8DR) { Store (One, DCWL) } Else { MBEC (0x3A, 0xFF, 0x20) } Or (WGFL, 0x0200, WGFL) } ElseIf (H8DR) { Store (Zero, DCWL) } Else { MBEC (0x3A, 0xDF, Zero) } } Method (WPWS, 0, NotSerialized) { If (H8DR) { Store (DCWW, Local0) Store (Local0, Local1) WTGP (0x10, Not (Local1)) } Else { Store (ShiftRight (And (RBEC (0x3A), 0x40), 0x06), Local0) } Return (Local0) } Method (WPWC, 1, NotSerialized) { Store (Zero, Local0) If (LAnd (Arg0, LAnd (And (WGFL, One), LNot (And (WGFL, 0x08))))) { If (H8DR) { Store (One, DCWW) WTGP (0x10, Zero) } Else { MBEC (0x3A, 0xFF, 0x40) WTGP (0x10, Zero) } Or (WGFL, 0x02, WGFL) } ElseIf (H8DR) { Store (Zero, DCWW) WTGP (0x10, One) } Else { MBEC (0x3A, 0xBF, Zero) WTGP (0x10, One) } } Method (BPWS, 0, NotSerialized) { If (H8DR) { Store (DCBD, Local0) WTGP (0x4D, Local0) WTGP (0x50, Local0) } Else { Store (ShiftRight (And (RBEC (0x3A), 0x10), 0x04), Local0) } Return (Local0) } Method (BPWC, 1, NotSerialized) { Store (Zero, Local0) If (LAnd (Arg0, LAnd (And (WGFL, 0x10), LNot (And (WGFL, 0x80))))) { If (H8DR) { Store (One, DCBD) WTGP (0x4D, One) WTGP (0x50, One) } Else { MBEC (0x3A, 0xFF, 0x10) WTGP (0x4D, One) WTGP (0x50, One) } Or (WGFL, 0x20, WGFL) } ElseIf (H8DR) { Store (Zero, DCBD) WTGP (0x4D, Zero) WTGP (0x50, Zero) } Else { MBEC (0x3A, 0xEF, Zero) WTGP (0x4D, Zero) WTGP (0x50, Zero) } } Method (WGIN, 0, NotSerialized) { Store (Zero, WGFL) Store (WGSV (One), WGFL) If (WIN8) { Or (WGFL, 0x0100, WGFL) } If (WIN8) { If (LAnd (WGFL, 0x10)) { BPWC (One) } If (LAnd (WGFL, 0x0100)) { LPWC (One) } If (LAnd (WGFL, One)) { WPWC (One) } } If (LPWS ()) { Or (WGFL, 0x0200, WGFL) } If (WPWS ()) { Or (WGFL, 0x02, WGFL) } If (BPWS ()) { Or (WGFL, 0x20, WGFL) } } Method (WGPS, 1, NotSerialized) { If (LGreaterEqual (Arg0, 0x04)) { BLTH (0x05) } } Method (WGWK, 1, NotSerialized) { If (LEqual (DCWL, One)) { LPWC (One) } If (LEqual (DCBD, One)) { BPWC (One) } If (LEqual (DCWW, One)) { WPWC (One) } } } Scope (HKEY) { Name (INDV, Zero) Method (MHQI, 0, NotSerialized) { Return (Zero) } Method (MHGI, 1, NotSerialized) { } Method (MHSI, 2, NotSerialized) { } } Scope (HKEY) { Method (PSSG, 1, NotSerialized) { Return (PSIF (Zero, Zero)) } Method (PSSS, 1, NotSerialized) { Sleep (0x14) Return (PSIF (One, Arg0)) } Method (PSBS, 1, NotSerialized) { Return (PSIF (0x02, Arg0)) } Method (BICG, 1, NotSerialized) { If (ECIF) { Return (Zero) } Return (PSIF (0x03, Arg0)) } Method (BICS, 1, NotSerialized) { Return (PSIF (0x04, Arg0)) } Method (BCTG, 1, NotSerialized) { Return (PSIF (0x05, Arg0)) } Method (BCCS, 1, NotSerialized) { Return (PSIF (0x06, Arg0)) } Method (BCSG, 1, NotSerialized) { Return (PSIF (0x07, Arg0)) } Method (BCSS, 1, NotSerialized) { Return (PSIF (0x08, Arg0)) } Method (BDSG, 1, NotSerialized) { Return (PSIF (0x09, Arg0)) } Method (BDSS, 1, NotSerialized) { Return (PSIF (0x0A, Arg0)) } } Scope (\_SB.PCI0.LPCB.EC0) { Method (_Q43, 0, NotSerialized) // _Qxx: EC Query { UCMS (0x18) } Method (SAUM, 1, NotSerialized) { If (LGreater (Arg0, 0x03)) { Noop } ElseIf (H8DR) { Store (Arg0, HAUM) } Else { MBEC (0x03, 0x9F, ShiftLeft (Arg0, 0x05)) } } } Scope (HKEY) { Method (GSMS, 1, NotSerialized) { Return (AUDC (Zero, Zero)) } Method (SSMS, 1, NotSerialized) { Return (AUDC (One, And (Arg0, One))) } Method (SHDA, 1, NotSerialized) { Return (AUDC (0x02, And (Arg0, One))) } } Scope (\_SB.PCI0.LPCB.EC0) { Method (_Q70, 0, NotSerialized) // _Qxx: EC Query { FNST () } Method (_Q72, 0, NotSerialized) // _Qxx: EC Query { FNST () } Method (_Q73, 0, NotSerialized) // _Qxx: EC Query { FNST () } Method (FNST, 0, NotSerialized) { If (H8DR) { Store (HFNS, Local0) Store (HFNE, Local1) } Else { And (RBEC (0x0E), 0x03, Local0) And (RBEC (Zero), 0x08, Local1) } If (Local1) { If (LEqual (Local0, Zero)) { UCMS (0x11) } If (LEqual (Local0, One)) { UCMS (0x0F) } If (LEqual (Local0, 0x02)) { UCMS (0x10) } ^HKEY.MHKQ (0x6005) } } } Scope (HKEY) { Method (GHSL, 1, NotSerialized) { Return (FNSC (Zero, Zero)) } Method (SHSL, 1, NotSerialized) { Return (FNSC (One, And (Arg0, One))) } } Scope (HKEY) { Method (GILN, 0, NotSerialized) { Return (Or (0x02, ILNF)) } Method (SILN, 1, NotSerialized) { If (LEqual (One, Arg0)) { Store (One, ILNF) Store (Zero, BBLS) Return (Zero) } ElseIf (LEqual (0x02, Arg0)) { Store (Zero, ILNF) Store (One, BBLS) Return (Zero) } Else { Return (One) } } Method (GLSI, 0, NotSerialized) { If (H8DR) { Return (Add (0x02, HPLD)) } ElseIf (And (RBEC (0x46), 0x04)) { Return (0x03) } Else { Return (0x02) } } } Scope (\_SB.PCI0.LPCB.EC0) { Name (BRTW, Package (0x12) { 0x64, 0x64, 0x05, 0x0A, 0x14, 0x19, 0x1E, 0x23, 0x28, 0x2D, 0x32, 0x37, 0x3C, 0x41, 0x46, 0x50, 0x5A, 0x64 }) Name (BRTB, Package (0x04) { Package (0x16) { 0x1B, 0x04, 0x03, 0x09, 0x0F, 0x17, 0x21, 0x2C, 0x3A, 0x4A, 0x59, 0x6D, 0x82, 0x96, 0xAF, 0xC9, 0xE1, 0xFF, 0xC8, 0xC8, 0x04, 0x04 }, Package (0x16) { 0x24, 0x04, 0x03, 0x09, 0x0F, 0x17, 0x21, 0x2C, 0x3A, 0x4A, 0x59, 0x6D, 0x82, 0x96, 0xAF, 0xC9, 0xE1, 0xFF, 0x0393, 0x0393, 0x04, 0x04 }, Package (0x16) { 0x1E, 0x04, 0x03, 0x05, 0x08, 0x0A, 0x0D, 0x0F, 0x12, 0x19, 0x22, 0x2E, 0x3E, 0x54, 0x6E, 0x93, 0xC0, 0xFF, 0xDC, 0xDC, 0x04, 0x04 }, Package (0x16) { Zero, 0x04, 0x04, 0x07, 0x09, 0x0C, 0x10, 0x15, 0x1C, 0x25, 0x32, 0x40, 0x50, 0x64, 0x82, 0xA5, 0xCD, 0xFF, 0xDC, 0xDC, 0x04, 0x04 } }) Name (BRTD, Package (0x04) { Package (0x65) { 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1C, 0x1D, 0x1F, 0x21, 0x22, 0x24, 0x26, 0x28, 0x2A, 0x2C, 0x2E, 0x30, 0x33, 0x35, 0x37, 0x3A, 0x3C, 0x3F, 0x41, 0x44, 0x46, 0x49, 0x4C, 0x4F, 0x51, 0x54, 0x57, 0x5A, 0x5D, 0x61, 0x64, 0x67, 0x6A, 0x6E, 0x71, 0x75, 0x78, 0x7C, 0x80, 0x83, 0x87, 0x8B, 0x8F, 0x93, 0x97, 0x9B, 0x9F, 0xA3, 0xA8, 0xAC, 0xB0, 0xB5, 0xB9, 0xBE, 0xC3, 0xC7, 0xCC, 0xCE, 0xD1, 0xD3, 0xD6, 0xD8, 0xDB, 0xDD, 0xE0, 0xE2, 0xE5, 0xE7, 0xEA, 0xEC, 0xEF, 0xF2, 0xF4, 0xF7, 0xFA, 0xFC, 0xFF }, Package (0x65) { 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x25, 0x26, 0x28, 0x2A, 0x2C, 0x2E, 0x2F, 0x31, 0x33, 0x35, 0x37, 0x3A, 0x3C, 0x3E, 0x40, 0x42, 0x45, 0x47, 0x4A, 0x4C, 0x4E, 0x51, 0x54, 0x56, 0x59, 0x5C, 0x5E, 0x61, 0x64, 0x67, 0x6A, 0x6D, 0x70, 0x73, 0x76, 0x79, 0x7D, 0x80, 0x83, 0x86, 0x8A, 0x8D, 0x91, 0x94, 0x98, 0x9C, 0x9F, 0xA3, 0xA7, 0xAB, 0xAF, 0xB4, 0xB8, 0xBC, 0xC1, 0xC5, 0xCA, 0xCE, 0xD3, 0xD8, 0xDC, 0xE1, 0xE6, 0xEB, 0xF0, 0xF5, 0xFA, 0xFF }, Package (0x65) { 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1C, 0x1D, 0x1F, 0x21, 0x22, 0x24, 0x26, 0x28, 0x2A, 0x2C, 0x2E, 0x30, 0x33, 0x35, 0x37, 0x3A, 0x3C, 0x3F, 0x41, 0x44, 0x46, 0x49, 0x4C, 0x4F, 0x51, 0x54, 0x57, 0x5A, 0x5D, 0x61, 0x64, 0x67, 0x6A, 0x6E, 0x71, 0x75, 0x78, 0x7C, 0x80, 0x83, 0x87, 0x8B, 0x8F, 0x93, 0x97, 0x9B, 0x9F, 0xA3, 0xA8, 0xAC, 0xB0, 0xB5, 0xB9, 0xBE, 0xC3, 0xC7, 0xCC, 0xCE, 0xD1, 0xD3, 0xD6, 0xD8, 0xDB, 0xDD, 0xE0, 0xE2, 0xE5, 0xE7, 0xEA, 0xEC, 0xEF, 0xF2, 0xF4, 0xF7, 0xFA, 0xFC, 0xFF }, Package (0x65) { 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1C, 0x1D, 0x1F, 0x21, 0x22, 0x24, 0x26, 0x28, 0x2A, 0x2C, 0x2E, 0x30, 0x33, 0x35, 0x37, 0x3A, 0x3C, 0x3F, 0x41, 0x44, 0x46, 0x49, 0x4C, 0x4F, 0x51, 0x54, 0x57, 0x5A, 0x5D, 0x61, 0x64, 0x67, 0x6A, 0x6E, 0x71, 0x75, 0x78, 0x7C, 0x80, 0x83, 0x87, 0x8B, 0x8F, 0x93, 0x97, 0x9B, 0x9F, 0xA3, 0xA8, 0xAC, 0xB0, 0xB5, 0xB9, 0xBE, 0xC3, 0xC7, 0xCC, 0xCE, 0xD1, 0xD3, 0xD6, 0xD8, 0xDB, 0xDD, 0xE0, 0xE2, 0xE5, 0xE7, 0xEA, 0xEC, 0xEF, 0xF2, 0xF4, 0xF7, 0xFA, 0xFC, 0xFF } }) Method (_Q14, 0, NotSerialized) // _Qxx: EC Query { If (^HKEY.MHKK (0x8000)) { ^HKEY.MHKQ (0x1010) } If (NBCF) { Notify (^^^GFX0.DD1F, 0x86) } Else { Store (BRLV, Local0) If (LNotEqual (Local0, 0x0F)) { Increment (Local0) Store (Local0, BRLV) } Notify (^^^GFX0.DD1F, 0x86) BRNS () ^HKEY.MHKQ (0x6050) } } Method (_Q15, 0, NotSerialized) // _Qxx: EC Query { If (^HKEY.MHKK (0x00010000)) { ^HKEY.MHKQ (0x1011) } If (NBCF) { Notify (^^^GFX0.DD1F, 0x87) } Else { Store (BRLV, Local0) If (Local0) { Decrement (Local0) Store (Local0, BRLV) } Notify (^^^GFX0.DD1F, 0x87) BRNS () ^HKEY.MHKQ (0x6050) } Return (Zero) } Method (BRNS, 0, NotSerialized) { Add (BRLV, 0x02, Local0) Store (BNTL, Local3) If (^^^GFX0.DRDY) { If (LEqual (Zero, Local0)) { Store (DerefOf (Index (DerefOf (Index (BRTB, Local3)), 0x14)), Local1) Store (DerefOf (Index (DerefOf (Index (BRTB, Local3)), 0x12)), Local2) } Else { Store (DerefOf (Index (DerefOf (Index (BRTB, Local3)), 0x15)), Local1) Store (DerefOf (Index (DerefOf (Index (BRTB, Local3)), 0x13)), Local2) } Or (Local1, ShiftLeft (Local2, 0x09), Local2) ^^^GFX0.AINT (0x03, Local2) Store (DerefOf (Index (DerefOf (Index (BRTB, Local3)), Local0)), Local2) ^^^GFX0.AINT (One, Local2) } Else { UCMS (0x12) } } Method (BRCD, 1, NotSerialized) { Store (DerefOf (Index (DerefOf (Index (BRTD, BNTL)), Arg0)), Local0) Return (Local0) } } Method (RE1B, 1, NotSerialized) { OperationRegion(ECOR, EmbeddedControl, Arg0, 1) Field(ECOR, ByteAcc, NoLock, Preserve) { BYTE, 8 } Return(BYTE) } Method (RECB, 2, Serialized) { ShiftRight(Arg1, 3, Arg1) Name(TEMP, Buffer(Arg1) { }) Add(Arg0, Arg1, Arg1) Store(0, Local0) While (LLess(Arg0, Arg1)) { Store(RE1B(Arg0), Index(TEMP, Local0)) Increment(Arg0) Increment(Local0) } Return(TEMP) } } Method (ECOK, 0, NotSerialized) { If (LEqual (^EC0.OKEC, One)) { Return (One) } Else { Return (Zero) } } OperationRegion (PKBS, SystemIO, 0x60, 0x05) Field (PKBS, ByteAcc, Lock, Preserve) { PKBD, 8, Offset (0x02), Offset (0x03), Offset (0x04), PKBC, 8 } Device (PS2K) { Name (_HID, "MSFT0001") // _HID: Hardware ID Name (_CID, EisaId ("PNP0303")) // _CID: Compatible ID Method (_STA, 0, NotSerialized) // _STA: Status { Return (0x0F) } Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings { IO (Decode16, 0x0060, // Range Minimum 0x0060, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0064, // Range Minimum 0x0064, // Range Maximum 0x01, // Alignment 0x01, // Length ) IRQ (Edge, ActiveHigh, Exclusive, ) {1} }) Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { StartDependentFn (0x00, 0x00) { FixedIO ( 0x0060, // Address 0x01, // Length ) FixedIO ( 0x0064, // Address 0x01, // Length ) IRQNoFlags () {1} } EndDependentFn () }) } Device (MOU) { Name (_HID, EisaId ("LEN0042")) // _HID: Hardware ID Name (_CID, EisaId ("PNP0F13")) // _CID: Compatible ID Method (_STA, 0, NotSerialized) // _STA: Status { Return (0x0F) } Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings { IRQ (Edge, ActiveHigh, Exclusive, ) {12} }) Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { StartDependentFn (0x00, 0x00) { IRQNoFlags () {12} } EndDependentFn () }) Method (MHID, 0, NotSerialized) { If (LEqual (RDGI (0x40), Zero)) { Store (0x4100AE30, _HID) } Else { Store (0x4200AE30, _HID) } } } } } Device (LID0) { Name (_HID, EisaId ("PNP0C0D")) // _HID: Hardware ID Method (_LID, 0, NotSerialized) // _LID: Lid Status { If (LAnd (LEqual (ILNF, Zero), LEqual (PLUX, Zero))) { If (H8DR) { Return (^^PCI0.LPCB.EC0.HPLD) } ElseIf (And (RBEC (0x46), 0x04)) { Return (One) } Else { Return (Zero) } } Else { Return (One) } } Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake { 0x0F, 0x04 }) Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake { If (H8DR) { If (Arg0) { Store (One, ^^PCI0.LPCB.EC0.HWLO) } Else { Store (Zero, ^^PCI0.LPCB.EC0.HWLO) } } ElseIf (Arg0) { MBEC (0x32, 0xFF, 0x04) } Else { MBEC (0x32, 0xFB, Zero) } } } Scope (PCI0) { Device (SMBU) { Name (_ADR, 0x001F0003) // _ADR: Address Name (_S3D, 0x03) // _S3D: S3 Device State Name (RID, Zero) Device (NFC) { Name (_HID, EisaId ("BCM2F10")) // _HID: Hardware ID Name (_CID, EisaId ("BCM2F10")) // _CID: Compatible ID Name (_UID, Zero) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { If (LAnd (LEqual (RDGI (0x40), Zero), LEqual (NFCF, Zero))) { Return (0x0F) } Else { Return (Zero) } } Method (GPEN, 0, NotSerialized) { Store (One, \_GPE.GPFG) } Method (SNFC, 1, NotSerialized) { If (Arg0) { WTGP (0x41, One) } Else { WTGP (0x41, Zero) } } } } } Device (WBTN) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { Return ("MSFT9000") } Name (_CID, "PNP0C40") // _CID: Compatible ID Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings { }) Method (_STA, 0, NotSerialized) // _STA: Status { If (WIN8) { Return (0x0F) } Else { Return (Zero) } } } Device (LSID) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { Return ("MSFT9001") } Name (_CID, "PNP0C60") // _CID: Compatible ID Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings { }) Method (_STA, 0, NotSerialized) // _STA: Status { If (WIN8) { Return (0x0F) } Else { Return (Zero) } } } Method (_INI, 0, NotSerialized) // _INI: Initialize { If (CondRefOf (\_OSI, Local0)) { If (_OSI ("Windows 2001")) { Store (One, WNTF) Store (One, WXPF) Store (Zero, WSPV) } If (_OSI ("Windows 2001 SP1")) { Store (One, WSPV) ^PCI0.LPCB.EC0.AMBX (One, 0xA3F4, Zero) } If (_OSI ("Windows 2001 SP2")) { Store (0x02, WSPV) ^PCI0.LPCB.EC0.AMBX (One, 0xA3F4, Zero) } If (_OSI ("Windows 2006")) { Store (One, WVIS) ^PCI0.LPCB.EC0.AMBX (One, 0xA3F4, One) } If (_OSI ("Windows 2009")) { Store (One, WIN7) ^PCI0.LPCB.EC0.AMBX (One, 0xA3F4, 0x03) } If (_OSI ("Windows 2012")) { Store (One, WIN8) ^PCI0.LPCB.EC0.AMBX (One, 0xA3F4, 0x04) } If (_OSI ("Linux")) { Store (One, LNUX) ^PCI0.LPCB.EC0.AMBX (One, 0xA3F4, 0x02) } If (_OSI ("FreeBSD")) { Store (One, LNUX) } } ElseIf (LEqual (SCMP (_OS, "Microsoft Windows NT"), Zero)) { Store (One, WNTF) } UCMS (0x1D) } } Name (SPS, Zero) Name (OSIF, Zero) Name (WNTF, Zero) Name (WXPF, Zero) Name (WVIS, Zero) Name (WIN7, Zero) Name (WIN8, Zero) Name (WSPV, Zero) Name (LNUX, Zero) Name (H8DR, Zero) Name (MEMX, Zero) Name (ACST, Zero) Name (FNID, Zero) Name (RRBF, Zero) Name (NBCF, Zero) OperationRegion (SMI0, SystemIO, 0xB2, One) Field (SMI0, ByteAcc, NoLock, Preserve) { APMC, 8 } Field (MNVS, AnyAcc, NoLock, Preserve) { Offset (0xFC0), CMD, 8, ERR, 32, PAR0, 32, PAR1, 32, PAR2, 32, PAR3, 32 } Mutex (MSMI, 0x07) Method (SMI, 5, NotSerialized) { Acquire (MSMI, 0xFFFF) Store (0x05, Local1) Store (Arg0, CMD) Store (One, ERR) Store (Arg1, PAR0) Store (Arg2, PAR1) Store (Arg3, PAR2) Store (Arg4, PAR3) Store (0xF5, APMC) While (LEqual (ERR, One)) { Store (0xF5, APMC) Decrement (Local1) If (LEqual (Local1, Zero)) { Store (Zero, ERR) } Else { Sleep (0x64) } } Store (PAR0, Local0) Release (MSMI) Return (Local0) } Method (RPCI, 1, NotSerialized) { Return (SMI (Zero, Zero, Arg0, Zero, Zero)) } Method (WPCI, 2, NotSerialized) { SMI (Zero, One, Arg0, Arg1, Zero) } Method (MPCI, 3, NotSerialized) { SMI (Zero, 0x02, Arg0, Arg1, Arg2) } Method (RBEC, 1, NotSerialized) { Return (SMI (Zero, 0x03, Arg0, Zero, Zero)) } Method (WBEC, 2, NotSerialized) { SMI (Zero, 0x04, Arg0, Arg1, Zero) } Method (MBEC, 3, NotSerialized) { SMI (Zero, 0x05, Arg0, Arg1, Arg2) } Method (RISA, 1, NotSerialized) { Return (SMI (Zero, 0x06, Arg0, Zero, Zero)) } Method (WISA, 2, NotSerialized) { SMI (Zero, 0x07, Arg0, Arg1, Zero) } Method (MISA, 3, NotSerialized) { SMI (Zero, 0x08, Arg0, Arg1, Arg2) } Method (VEXP, 0, NotSerialized) { SMI (One, Zero, Zero, Zero, Zero) } Method (VUPS, 1, NotSerialized) { SMI (One, One, Arg0, Zero, Zero) } Method (VSDS, 2, NotSerialized) { SMI (One, 0x02, Arg0, Arg1, Zero) } Method (VDDC, 0, NotSerialized) { SMI (One, 0x03, Zero, Zero, Zero) } Method (VVPD, 1, NotSerialized) { SMI (One, 0x04, Arg0, Zero, Zero) } Method (VNRS, 1, NotSerialized) { SMI (One, 0x05, Arg0, Zero, Zero) } Method (GLPW, 0, NotSerialized) { Return (SMI (One, 0x06, Zero, Zero, Zero)) } Method (VSLD, 1, NotSerialized) { SMI (One, 0x07, Arg0, Zero, Zero) } Method (VEVT, 1, NotSerialized) { Return (SMI (One, 0x08, Arg0, Zero, Zero)) } Method (VTHR, 0, NotSerialized) { Return (SMI (One, 0x09, Zero, Zero, Zero)) } Method (VBRC, 1, NotSerialized) { SMI (One, 0x0A, Arg0, Zero, Zero) } Method (VBRG, 0, NotSerialized) { Return (SMI (One, 0x0E, Zero, Zero, Zero)) } Method (VCMS, 2, NotSerialized) { Return (SMI (One, 0x0B, Arg0, Arg1, Zero)) } Method (VBTD, 0, NotSerialized) { Return (SMI (One, 0x0F, Zero, Zero, Zero)) } Method (VDYN, 2, NotSerialized) { Return (SMI (One, 0x11, Arg0, Arg1, Zero)) } Method (UCMS, 1, NotSerialized) { Return (SMI (0x02, Arg0, Zero, Zero, Zero)) } Method (BHDP, 2, NotSerialized) { Return (SMI (0x03, Zero, Arg0, Arg1, Zero)) } Method (STEP, 1, NotSerialized) { SMI (0x04, Arg0, Zero, Zero, Zero) } Method (TRAP, 0, NotSerialized) { SMI (0x05, Zero, Zero, Zero, Zero) } Method (CBRI, 0, NotSerialized) { SMI (0x05, One, Zero, Zero, Zero) } Method (BCHK, 0, NotSerialized) { Return (SMI (0x05, 0x04, Zero, Zero, Zero)) } Method (BYRS, 0, NotSerialized) { SMI (0x05, 0x05, Zero, Zero, Zero) } Method (LCHK, 1, NotSerialized) { Return (SMI (0x05, 0x06, Arg0, Zero, Zero)) } Method (BLTH, 1, NotSerialized) { Return (SMI (0x06, Arg0, Zero, Zero, Zero)) } Method (PRSM, 2, NotSerialized) { Return (SMI (0x07, Zero, Arg0, Arg1, Zero)) } Method (IFRS, 2, NotSerialized) { Return (SMI (0x07, One, Arg0, Arg1, Zero)) } Method (TDPC, 1, NotSerialized) { Return (SMI (0x07, 0x02, Arg0, Zero, Zero)) } Method (ISOC, 1, NotSerialized) { Return (SMI (0x07, 0x03, Arg0, Zero, Zero)) } Method (WGSV, 1, NotSerialized) { Return (SMI (0x09, Arg0, Zero, Zero, Zero)) } Method (TSDL, 0, NotSerialized) { Return (SMI (0x0A, 0x03, Zero, Zero, Zero)) } Method (TPHY, 1, NotSerialized) { SMI (0x0C, Arg0, Zero, Zero, Zero) } Method (CSUM, 1, NotSerialized) { Return (SMI (0x0E, Arg0, Zero, Zero, Zero)) } Method (NVSS, 1, NotSerialized) { Return (SMI (0x0F, Arg0, Zero, Zero, Zero)) } Method (WMIS, 2, NotSerialized) { Return (SMI (0x10, Arg0, Arg1, Zero, Zero)) } Method (AWON, 1, NotSerialized) { Return (SMI (0x12, Arg0, Zero, Zero, Zero)) } Method (PMON, 2, NotSerialized) { Store (SizeOf (Arg0), Local0) Name (TSTR, Buffer (Local0) {}) Store (Arg0, TSTR) Store (TSTR, DBGS) SMI (0x11, Arg1, Zero, Zero, Zero) } Method (UAWS, 1, NotSerialized) { Return (SMI (0x13, Arg0, Zero, Zero, Zero)) } Method (BFWC, 1, NotSerialized) { Return (SMI (0x14, Zero, Arg0, Zero, Zero)) } Method (BFWP, 0, NotSerialized) { Return (SMI (0x14, One, Zero, Zero, Zero)) } Method (BFWL, 0, NotSerialized) { SMI (0x14, 0x02, Zero, Zero, Zero) } Method (BFWG, 1, NotSerialized) { SMI (0x14, 0x03, Arg0, Zero, Zero) } Method (BDMC, 1, NotSerialized) { SMI (0x14, 0x04, Arg0, Zero, Zero) } Method (PSIF, 2, NotSerialized) { If (ECIF) { Return (Zero) } Return (SMI (0x14, 0x05, Arg0, Arg1, Zero)) } Method (FNSC, 2, NotSerialized) { Return (SMI (0x14, 0x06, Arg0, Arg1, Zero)) } Method (AUDC, 2, NotSerialized) { Return (SMI (0x14, 0x07, Arg0, Arg1, Zero)) } Method (SYBC, 2, NotSerialized) { Return (SMI (0x14, 0x08, Arg0, Arg1, Zero)) } Method (HKFE, 2, NotSerialized) { Return (SMI (0x14, 0x0A, Arg0, Arg1, Zero)) } Method (KBLS, 2, NotSerialized) { Return (SMI (0x14, 0x09, Arg0, Arg1, Zero)) } Method (CBBM, 2, NotSerialized) { Return (SMI (0x14, 0x0B, Arg0, Arg1, Zero)) } Method (SOST, 2, NotSerialized) { Return (SMI (0x14, 0x0C, Arg0, Arg1, Zero)) } Method (UBIS, 1, NotSerialized) { Return (SMI (0x15, Zero, Arg0, Zero, Zero)) } Method (WLSR, 1, NotSerialized) { Return (SMI (0x14, 0x0A, Arg0, Zero, Zero)) } Mutex (MUTX, 0x00) Mutex (WFDM, 0x00) 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) { Return(0) } 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) } Name (TBTS, Package (0x08) { 0x15488086, 0x15138086, 0x151A8086, 0x151B8086, 0x15478086, 0x15488086, 0x15678086, 0x15698086 }) Method (HRPR, 0, NotSerialized) { OperationRegion (HRPE, SystemMemory, \_GPE.MMTB (0x04), 0x04) Field (HRPE, DWordAcc, Lock, Preserve) { VDPC, 32 } Return (Zero) } Method (MMRP, 0, NotSerialized) { Store (PEBS, Local0) Add (Local0, 0x000E0000, Local0) Subtract (ToInteger (TBSE), One, Local1) Multiply (Local1, 0x1000, Local1) Add (Local0, Local1, Local0) Return (Local0) } Method (GETB, 3, Serialized) { Multiply (Arg0, 0x08, Local0) Multiply (Arg1, 0x08, Local1) CreateField (Arg2, Local0, Local1, TBF3) Return (TBF3) } Method (PNOT, 0, Serialized) { If (CondRefOf (\_SB.PCCD.PENB)) { Notify (\_SB.PCCD, 0x82) } ElseIf (LGreater (TCNT, One)) { If (And (PDC0, 0x08)) { Notify (\_PR.CPU0, 0x80) } If (And (PDC1, 0x08)) { Notify (\_PR.CPU1, 0x80) } If (And (PDC2, 0x08)) { Notify (\_PR.CPU2, 0x80) } If (And (PDC3, 0x08)) { Notify (\_PR.CPU3, 0x80) } If (And (PDC4, 0x08)) { Notify (\_PR.CPU4, 0x80) } If (And (PDC5, 0x08)) { Notify (\_PR.CPU5, 0x80) } If (And (PDC6, 0x08)) { Notify (\_PR.CPU6, 0x80) } If (And (PDC7, 0x08)) { Notify (\_PR.CPU7, 0x80) } } Else { Notify (\_PR.CPU0, 0x80) } If (LGreater (TCNT, One)) { If (LAnd (And (PDC0, 0x08), And (PDC0, 0x10))) { Notify (\_PR.CPU0, 0x81) } If (LAnd (And (PDC1, 0x08), And (PDC1, 0x10))) { Notify (\_PR.CPU1, 0x81) } If (LAnd (And (PDC2, 0x08), And (PDC2, 0x10))) { Notify (\_PR.CPU2, 0x81) } If (LAnd (And (PDC3, 0x08), And (PDC3, 0x10))) { Notify (\_PR.CPU3, 0x81) } If (LAnd (And (PDC4, 0x08), And (PDC4, 0x10))) { Notify (\_PR.CPU4, 0x81) } If (LAnd (And (PDC5, 0x08), And (PDC5, 0x10))) { Notify (\_PR.CPU5, 0x81) } If (LAnd (And (PDC6, 0x08), And (PDC6, 0x10))) { Notify (\_PR.CPU6, 0x81) } If (LAnd (And (PDC7, 0x08), And (PDC7, 0x10))) { Notify (\_PR.CPU7, 0x81) } } Else { Notify (\_PR.CPU0, 0x81) } } 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 (GUAM, 1, Serialized) { If (LNotEqual (Arg0, DDPS)) { Store (Arg0, DDPS) Store (LAnd (Arg0, Not (PWRS)), UAMS) If (Arg0) { P8XH (Zero, 0xC5) P8XH (One, Zero) ADBG ("Enter CS") If (PSCP) { If (LAnd (CondRefOf (\_PR.CPU0._PSS), CondRefOf (\_PR.CPU0._PPC))) { Subtract (SizeOf (\_PR.CPU0._PSS), One, \_PR.CPU0._PPC) PNOT () } } If (PLCS) { SPL1 () } } Else { P8XH (Zero, 0xC5) P8XH (One, 0xAB) ADBG ("Exit CS") If (PSCP) { If (CondRefOf (\_PR.CPU0._PPC)) { Store (Zero, \_PR.CPU0._PPC) PNOT () } } If (PLCS) { RPL1 () } } P_CS () } } Method (P_CS, 0, Serialized) { If (CondRefOf (\_SB.PCI0.PAUD.PUAM)) { \_SB.PCI0.PAUD.PUAM () } If (LEqual (OSYS, 0x07DC)) { If (CondRefOf (\_SB.PCI0.XHC.DUAM)) { \_SB.PCI0.XHC.DUAM () } } } 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), LGreaterEqual (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), LGreaterEqual (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), LGreaterEqual (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 { ^LPCB.MOU.MHID () 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) } If (_OSI ("Windows 2013")) { Store (0x07DD, OSYS) } } Acquire (WFDM, 0xFFFF) Store (One, WKFN) Release (WFDM) } Method (NHPG, 0, Serialized) { } Method (NPME, 0, Serialized) { } } 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 { CreateDWordField (Arg3, Zero, STS0) CreateDWordField (Arg3, 0x04, CAP0) If (LEqual (Arg0, ToUUID ("0811b06e-4a27-44f9-8d60-3cbbc22e7b48") /* Platform-wide Capabilities */)) { If (LEqual (Arg1, One)) { If (And (CAP0, 0x04)) { Store (0x04, OSCO) If (LNotEqual (And (SGMD, 0x0F), 0x02)) { 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) } } If (_OSI ("Windows 2013")) { Or (CAP0, 0x04, CAP0) Store (STS0, OSCI) Store (CAP0, OSCO) } } 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) { "HDAUDIO\\FUNC_01&VEN_10EC&DEV_0282&SUBSYS_00000000&REV_1000\\4&a02b74b&0&0001", 0xFFFFFFFF } }) Name (DEVY, Package (0x12) { Package (0x03) { "\\_PR.CPU0", One, Package (0x02) { Zero, Package (0x02) { 0xFF, Zero } } }, Package (0x03) { "\\_PR.CPU1", One, Package (0x02) { Zero, Package (0x02) { 0xFF, Zero } } }, Package (0x03) { "\\_PR.CPU2", One, Package (0x02) { Zero, Package (0x02) { 0xFF, Zero } } }, Package (0x03) { "\\_PR.CPU3", One, Package (0x02) { Zero, Package (0x02) { 0xFF, Zero } } }, Package (0x03) { "\\_SB.PCI0.GFX0", One, Package (0x02) { Zero, Package (0x02) { 0xFF, 0x03 } } }, Package (0x03) { "\\_SB.PCI0.SAT0", One, Package (0x02) { Zero, Package (0x02) { 0xFF, 0x03 } } }, Package (0x03) { "\\_SB.PCI0.SAT0.PRT0", One, Package (0x02) { Zero, Package (0x03) { 0xFF, Zero, 0x81 } } }, Package (0x03) { "\\_SB.PCI0.SAT0.PRT1", One, Package (0x02) { Zero, Package (0x03) { 0xFF, Zero, 0x81 } } }, Package (0x03) { "\\_SB.PCI0.SAT0.PRT2", One, Package (0x02) { Zero, Package (0x03) { 0xFF, Zero, 0x81 } } }, Package (0x03) { "\\_SB.PCI0.SAT0.PRT3", One, Package (0x02) { Zero, Package (0x03) { 0xFF, Zero, 0x81 } } }, Package (0x03) { "\\_SB.PCI0.UA00", One, Package (0x02) { Zero, Package (0x02) { 0xFF, 0x03 } } }, Package (0x03) { "\\_SB.PCI0.UA01", One, Package (0x02) { Zero, Package (0x02) { 0xFF, 0x03 } } }, Package (0x03) { "\\_SB.PCI0.SDHC", One, Package (0x02) { Zero, Package (0x02) { 0xFF, 0x03 } } }, Package (0x03) { "\\_SB.PCI0.I2C0", One, Package (0x02) { Zero, Package (0x02) { 0xFF, 0x03 } } }, Package (0x03) { "\\_SB.PCI0.I2C1", One, Package (0x02) { Zero, Package (0x02) { 0xFF, 0x03 } } }, Package (0x03) { "\\_SB.PCI0.XHC", One, Package (0x02) { Zero, Package (0x02) { 0xFF, 0x03 } } }, Package (0x03) { "HDAUDIO\\FUNC_01&VEN_10EC&DEV_0282*", One, Package (0x03) { Zero, Package (0x02) { Zero, Zero }, Package (0x02) { One, 0x03 } } }, Package (0x03) { "\\_SB.PCI0.ADSP", One, Package (0x03) { Zero, Package (0x02) { Zero, Zero }, Package (0x02) { One, 0x03 } } } }) Name (BCCD, Package (0x05) { Package (0x02) { "\\_SB.PCI0.SAT0", Package (0x01) { Package (0x03) { Package (0x05) { One, 0x08, Zero, One, 0xB2 }, Package (0x03) { Zero, 0xCD, One }, 0x3E80 } } }, Package (0x02) { "\\_SB.PCI0.SAT0.PRT0", Package (0x01) { Package (0x03) { Package (0x05) { One, 0x08, Zero, One, 0xB2 }, Package (0x03) { Zero, 0xCD, One }, 0x3E80 } } }, Package (0x02) { "\\_SB.PCI0.SAT0.PRT1", Package (0x01) { Package (0x03) { Package (0x05) { One, 0x08, Zero, One, 0xB2 }, Package (0x03) { Zero, 0xCD, One }, 0x3E80 } } }, Package (0x02) { "\\_SB.PCI0.SAT0.PRT2", Package (0x01) { Package (0x03) { Package (0x05) { One, 0x08, Zero, One, 0xB2 }, Package (0x03) { Zero, 0xCD, One }, 0x3E80 } } }, Package (0x02) { "\\_SB.PCI0.SAT0.PRT3", Package (0x01) { Package (0x03) { Package (0x05) { One, 0x08, Zero, One, 0xB2 }, Package (0x03) { Zero, 0xCD, One }, 0x3E80 } } } }) 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, ToUUID ("b8febfe0-baf8-454b-aecd-49fb91137b21"))) { 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" } }) } ElseIf (LEqual (_T_0, 0x02)) { Return (Package (0x02) { One, Package (0x01) { "\\_SB.PCI0.SAT0.PRT1" } }) } ElseIf (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) } } } If (LEqual (Arg0, ToUUID ("c4eb40a0-6cd2-11e2-bcfd-0800200c9a66"))) { If (LEqual (Arg2, Zero)) { Return (Buffer (One) { 0x07 }) } If (LEqual (Arg2, One)) { If (LNotEqual (And (PEPC, 0x03), One)) { Store (Zero, Index (DerefOf (Index (DEVY, 0x06)), One)) Store (Zero, Index (DerefOf (Index (DEVY, 0x07)), One)) Store (Zero, Index (DerefOf (Index (DEVY, 0x08)), One)) Store (Zero, Index (DerefOf (Index (DEVY, 0x09)), One)) } If (LNotEqual (And (PEPC, 0x03), 0x02)) { Store (Zero, Index (DerefOf (Index (DEVY, 0x05)), One)) If (LNot (And (SPST, One))) { Store (Zero, Index (DerefOf (Index (DEVY, 0x06)), One)) } If (LNot (And (SPST, 0x02))) { Store (Zero, Index (DerefOf (Index (DEVY, 0x07)), One)) } If (LNot (And (SPST, 0x04))) { Store (Zero, Index (DerefOf (Index (DEVY, 0x08)), One)) } If (LNot (And (SPST, 0x08))) { Store (Zero, Index (DerefOf (Index (DEVY, 0x09)), One)) } } If (LEqual (And (PEPC, 0x04), Zero)) { Store (Zero, Index (DerefOf (Index (DEVY, 0x0A)), One)) } If (LEqual (And (PEPC, 0x08), Zero)) { Store (Zero, Index (DerefOf (Index (DEVY, 0x0B)), One)) } If (LEqual (And (PEPC, 0x10), Zero)) { Store (Zero, Index (DerefOf (Index (DEVY, 0x0C)), One)) } If (LEqual (And (PEPC, 0x20), Zero)) { Store (Zero, Index (DerefOf (Index (DEVY, 0x0D)), One)) } If (LEqual (And (PEPC, 0x40), Zero)) { Store (Zero, Index (DerefOf (Index (DEVY, 0x0E)), One)) } If (LEqual (And (PEPC, 0x80), Zero)) { Store (Zero, Index (DerefOf (Index (DEVY, 0x0F)), One)) } If (LEqual (And (PEPC, 0x0100), Zero)) { Store (Zero, Index (DerefOf (Index (DEVY, 0x10)), One)) } If (LEqual (And (PEPC, 0x0200), Zero)) { Store (Zero, Index (DerefOf (Index (DEVY, 0x11)), One)) } Return (DEVY) } If (LEqual (Arg2, 0x02)) { Return (BCCD) } } 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)) } } } OperationRegion (TMMB, SystemMemory, 0xFED40000, 0x1000) Field (TMMB, ByteAcc, Lock, Preserve) { ACCS, 8, Offset (0x18), TSTA, 8, TBCA, 8, Offset (0xF00), TVID, 16, TDID, 16 } Method (_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep { If (LEqual (Arg0, 0x03)) { Store (0x53, P80H) } If (LEqual (Arg0, 0x04)) { Store (0x54, P80H) } If (LEqual (Arg0, 0x05)) { Store (0x55, P80H) } Store (One, Local0) If (LEqual (Arg0, SPS)) { Store (Zero, Local0) } If (LOr (LEqual (Arg0, Zero), LGreaterEqual (Arg0, 0x06))) { Store (Zero, Local0) } If (Local0) { Store (Arg0, SPS) \_SB.PCI0.LPCB.EC0.HKEY.MHKE (Zero) If (\_SB.PCI0.LPCB.EC0.KBLT) { UCMS (0x0D) } If (LEqual (Arg0, One)) { Store (\_SB.PCI0.LPCB.EC0.HFNI, FNID) Store (Zero, \_SB.PCI0.LPCB.EC0.HFNI) Store (Zero, \_SB.PCI0.LPCB.EC0.HFSP) } If (LEqual (Arg0, 0x03)) { If (And (ICNF, One)) { If (LAnd (And (ICNF, 0x10), LEqual (\_SB.IAOE.ITMR, Zero))) { If (LAnd (CondRefOf (\_SB.PCI0.LPCB.EC0.ESDL), CondRefOf (\_SB.IAOE.ECTM))) { If (LGreater (\_SB.IAOE.ECTM, Zero)) { Store (Divide (\_SB.IAOE.ECTM, 0x3C, ), Local0) Store (And (Local0, 0xFF), \_SB.PCI0.LPCB.EC0.ESDL) Store (ShiftRight (And (Local0, 0xFF00), 0x08), \_SB.PCI0.LPCB.EC0.ESDH) } } } } VVPD (0x03) TRAP () Store (\_SB.PCI0.LPCB.EC0.AC._PSR (), ACST) Store (Zero, \_SB.PCI0.LPCB.EC0.AAEW) } If (LEqual (Arg0, 0x04)) { TRAP () If (LAnd (LNotEqual (ACCS, 0xFF), LNotEqual (TPME, Zero))) { \_SB.TPM.CMOR () } AWON (0x04) \_SB.PCI0.LPCB.EC0.LED (Zero, 0xC0) } If (LEqual (Arg0, 0x05)) { TRAP () \_SB.WTGP (0x4D, Zero) \_SB.WTGP (0x50, Zero) If (LAnd (LNotEqual (ACCS, 0xFF), LNotEqual (TPME, Zero))) { \_SB.TPM.CMOR () } AWON (0x05) } If (LGreaterEqual (Arg0, 0x04)) { Store (Zero, \_SB.PCI0.LPCB.EC0.HWLB) } Else { Store (One, \_SB.PCI0.LPCB.EC0.HWLB) } If (LGreaterEqual (Arg0, 0x03)) { Store (One, \_SB.PCI0.LPCB.EC0.HCMU) } If (LNotEqual (Arg0, 0x05)) {} \_SB.PCI0.LPCB.EC0.HKEY.WGPS (Arg0) Store (0xF6, P80H) } } Name (WAKI, Package (0x02) { Zero, Zero }) Mutex (XAKW, 0x00) Method (_WAK, 1, Serialized) // _WAK: Wake { If (LEqual (Arg0, 0x03)) { Store (0xE3, P80H) } If (LEqual (Arg0, 0x04)) { Store (0xE4, P80H) } If (LEqual (Arg0, 0x05)) { Store (0xE5, P80H) } If (LOr (LEqual (Arg0, Zero), LGreaterEqual (Arg0, 0x05))) { Return (WAKI) } If (LAnd (LNotEqual (And (\_SB.PCI0.B0D3.ABAR, 0xFFFFC004), 0xFFFFC004), LNotEqual (And (\_SB.PCI0.B0D3.ABAR, 0xFFFFC000), Zero))) { Store (\_SB.PCI0.B0D3.ABAR, \_SB.PCI0.B0D3.BARA) } If (And (ICNF, 0x10)) { If (And (\_SB.PCI0.GFX0.TCHE, 0x0100)) { If (LEqual (\_SB.IAOE.ITMR, One)) { If (LAnd (And (\_SB.IAOE.IBT1, One), LOr (And (\_SB.IAOE.WKRS, 0x02), And (\_SB.IAOE.WKRS, 0x10)))) { Store (Or (And (\_SB.PCI0.GFX0.STAT, 0xFFFFFFFFFFFFFFFC), One), \_SB.PCI0.GFX0.STAT) } Else { Store (And (\_SB.PCI0.GFX0.STAT, 0xFFFFFFFFFFFFFFFC), \_SB.PCI0.GFX0.STAT) } } ElseIf (CondRefOf (\_SB.PCI0.LPCB.EC0.AAEN)) { If (LAnd (And (\_SB.PCI0.LPCB.EC0.AAEN, One), LOr (And (\_SB.IAOE.WKRS, 0x02), And (\_SB.IAOE.WKRS, 0x10)))) { Store (Or (And (\_SB.PCI0.GFX0.STAT, 0xFFFFFFFFFFFFFFFC), One), \_SB.PCI0.GFX0.STAT) } Else { Store (And (\_SB.PCI0.GFX0.STAT, 0xFFFFFFFFFFFFFFFC), \_SB.PCI0.GFX0.STAT) } } } If (CondRefOf (\_SB.IAOE.PTSL)) { Store (Zero, \_SB.IAOE.PTSL) } If (LEqual (\_SB.IAOE.ITMR, Zero)) { Store (Zero, \_SB.PCI0.LPCB.EC0.ESDL) Store (Zero, \_SB.PCI0.LPCB.EC0.ESDH) } If (CondRefOf (\_SB.IAOE.ECTM)) { Store (Zero, \_SB.IAOE.ECTM) } If (CondRefOf (\_SB.IAOE.RCTM)) { Store (Zero, \_SB.IAOE.RCTM) } } Acquire (XAKW, 0xFFFF) Store (Zero, SPS) Store (Zero, \_SB.PCI0.LPCB.EC0.HCMU) \_SB.PCI0.LPCB.EC0.EVNT (One) \_SB.PCI0.LPCB.EC0.HKEY.MHKE (One) \_SB.PCI0.LPCB.EC0.FNST () UCMS (0x0D) Store (Zero, \_SB.PCI0.RP03.PMEX) Store (One, \_SB.PCI0.RP03.PMSX) Store (Zero, LIDB) If (LEqual (Arg0, One)) { Store (\_SB.PCI0.LPCB.EC0.HFNI, FNID) } If (LEqual (Arg0, 0x03)) { \_SB.PCI0.LPCB.EC0.LED (Zero, 0x80) NVSS (Zero) Store (\_SB.PCI0.LPCB.EC0.AC._PSR (), PWRS) \_SB.PCI0.LPCB.EC0.HKEY.WGIN () If (OSC4) { PNTF (0x81) } If (LNotEqual (ACST, \_SB.PCI0.LPCB.EC0.AC._PSR ())) {} Store (Zero, IOEN) Store (Zero, IOST) If (LEqual (ISWK, One)) { If (\_SB.PCI0.LPCB.EC0.HKEY.DHKC) { \_SB.PCI0.LPCB.EC0.HKEY.MHKQ (0x6070) } } If (VIGD) { If (WVIS) { VBTD () } } VCMS (One, \_SB.LID0._LID ()) AWON (Zero) If (CMPR) { Store (Zero, CMPR) } Store (B1B2(\_SB.PCI0.LPCB.EC0.WAK0,\_SB.PCI0.LPCB.EC0.WAK1), Local0) If (And (Local0, 0x04)) { If (LNotEqual (ISWK, One)) { Notify (\_SB.PWRB, 0x02) } } If (LEqual (\_SB.RDGI (0x23), Zero)) { \_SB.WTGP (0x37, One) } } If (LEqual (Arg0, 0x04)) { NVSS (Zero) If (_OSI ("Windows 2001 SP1")) { SOST (One, Zero) } If (_OSI ("Windows 2001 SP2")) { SOST (One, Zero) } If (_OSI ("Windows 2006")) { SOST (One, One) } If (_OSI ("Windows 2009")) { SOST (One, 0x03) } If (_OSI ("Windows 2012")) { SOST (One, 0x04) } If (_OSI ("Linux")) { SOST (One, 0x02) } \_SB.PCI0.LPCB.EC0.HKEY.WGIN () Store (Zero, \_SB.PCI0.LPCB.EC0.HSPA) Store (\_SB.PCI0.LPCB.EC0.AC._PSR (), PWRS) If (LEqual (\_SB.PCI0.LPCB.EC0.DCWW, One)) {} Else { } If (OSC4) { PNTF (0x81) } If (LNot (NBCF)) { If (VIGD) { \_SB.PCI0.LPCB.EC0.BRNS () } Else { VBRC (BRLV) } } Store (Zero, IOEN) Store (Zero, IOST) } \_SB.PCI0.LPCB.EC0.BATW (Arg0) \_SB.PCI0.LPCB.EC0.HKEY.WGWK (Arg0) VSLD (\_SB.LID0._LID ()) If (VIGD) { Store (\_SB.LID0._LID (), \_SB.PCI0.GFX0.CLID) } If (LLess (Arg0, 0x04)) { If (And (RRBF, 0x02)) { ShiftLeft (Arg0, 0x08, Local0) Store (Or (0x2013, Local0), Local0) \_SB.PCI0.LPCB.EC0.HKEY.MHKQ (Local0) } } If (LEqual (Arg0, 0x04)) { Store (Zero, Local0) Store (CSUM (Zero), Local1) If (LNotEqual (Local1, CHKC)) { Store (One, Local0) Store (Local1, CHKC) } Store (CSUM (One), Local1) If (LNotEqual (Local1, CHKE)) { Store (One, Local0) Store (Local1, CHKE) } If (Local0) { Notify (_SB, Zero) } } Store (B1B2(\_SB.PCI0.LPCB.EC0.WAK0,\_SB.PCI0.LPCB.EC0.WAK1), Local0) If (And (Local0, One)) { And (Local0, 0xFE, Local0) Store (ShiftRight(Local0,8),\_SB.PCI0.LPCB.EC0.WAK0) Store (Local0,\_SB.PCI0.LPCB.EC0.WAK1) } If (And (Local0, 0x02)) { And (Local0, 0xFD, Local0) Store (ShiftRight(Local0,8),\_SB.PCI0.LPCB.EC0.WAK0) Store (Local0,\_SB.PCI0.LPCB.EC0.WAK1) } If (And (Local0, 0x04)) { And (Local0, 0xFB, Local0) Store (ShiftRight(Local0,8),\_SB.PCI0.LPCB.EC0.WAK0) Store (Local0,\_SB.PCI0.LPCB.EC0.WAK1) } If (And (Local0, 0x10)) { And (Local0, 0xEF, Local0) Store (ShiftRight(Local0,8),\_SB.PCI0.LPCB.EC0.WAK0) Store (Local0,\_SB.PCI0.LPCB.EC0.WAK1) } If (And (Local0, 0x40)) { And (Local0, 0xBF, Local0) Store (ShiftRight(Local0,8),\_SB.PCI0.LPCB.EC0.WAK0) Store (Local0,\_SB.PCI0.LPCB.EC0.WAK1) } Release (XAKW) If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04))) { \_SB.PCI0.XHC.XWAK () } Store (Zero, RRBF) Store (0xD0, P80H) Return (WAKI) } Scope (_PR) { Processor (CPU0, 0x01, 0x00001810, 0x06) { Method (_DEP, 0, NotSerialized) // _DEP: Dependencies { ADBG ("CPU0 DEP Call") If (LEqual (S0ID, One)) { ADBG ("CPU0 DEP") Return (Package (0x01) { \_SB.PEPD }) } Else { ADBG ("CPU0 DEP NULL") Return (Package (0x00) {}) } } } Processor (CPU1, 0x02, 0x00001810, 0x06) { Method (_DEP, 0, NotSerialized) // _DEP: Dependencies { ADBG ("CPU1 DEP Call") If (LEqual (S0ID, One)) { ADBG ("CPU1 DEP") Return (Package (0x01) { \_SB.PEPD }) } Else { ADBG ("CPU1 DEP NULL") Return (Package (0x00) {}) } } } Processor (CPU2, 0x03, 0x00001810, 0x06) { Method (_DEP, 0, NotSerialized) // _DEP: Dependencies { ADBG ("CPU2 DEP Call") If (LEqual (S0ID, One)) { ADBG ("CPU2 DEP") Return (Package (0x01) { \_SB.PEPD }) } Else { ADBG ("CPU2 DEP NULL") Return (Package (0x00) {}) } } } Processor (CPU3, 0x04, 0x00001810, 0x06) { Method (_DEP, 0, NotSerialized) // _DEP: Dependencies { ADBG ("CPU3 DEP Call") If (LEqual (S0ID, One)) { ADBG ("CPU3 DEP") Return (Package (0x01) { \_SB.PEPD }) } Else { ADBG ("CPU3 DEP NULL") Return (Package (0x00) {}) } } } Processor (CPU4, 0x05, 0x00001810, 0x06) { Method (_DEP, 0, NotSerialized) // _DEP: Dependencies { ADBG ("CPU4 DEP Call") If (LEqual (S0ID, One)) { ADBG ("CPU4 DEP") Return (Package (0x01) { \_SB.PEPD }) } Else { ADBG ("CPU4 DEP NULL") Return (Package (0x00) {}) } } } Processor (CPU5, 0x06, 0x00001810, 0x06) { Method (_DEP, 0, NotSerialized) // _DEP: Dependencies { ADBG ("CPU5 DEP Call") If (LEqual (S0ID, One)) { ADBG ("CPU5 DEP") Return (Package (0x01) { \_SB.PEPD }) } Else { ADBG ("CPU5 DEP NULL") Return (Package (0x00) {}) } } } Processor (CPU6, 0x07, 0x00001810, 0x06) { Method (_DEP, 0, NotSerialized) // _DEP: Dependencies { ADBG ("CPU6 DEP Call") If (LEqual (S0ID, One)) { ADBG ("CPU6 DEP") Return (Package (0x01) { \_SB.PEPD }) } Else { ADBG ("CPU6 DEP NULL") Return (Package (0x00) {}) } } } Processor (CPU7, 0x08, 0x00001810, 0x06) { Method (_DEP, 0, NotSerialized) // _DEP: Dependencies { ADBG ("CPU7 DEP Call") If (LEqual (S0ID, One)) { ADBG ("CPU7 DEP") Return (Package (0x01) { \_SB.PEPD }) } Else { ADBG ("CPU7 DEP NULL") Return (Package (0x00) {}) } } } } Scope (\) { Method (PNTF, 1, NotSerialized) { If (And (PPMF, 0x0200)) { If (LOr (LAnd (And (PDC0, 0x08), LOr (LEqual (Arg0, 0x80), LEqual (Arg0, 0x82))), LAnd (And (PDC0, 0x10), LEqual (Arg0, 0x81)))) { Notify (\_PR.CPU0, Arg0) } If (LOr (LAnd (And (PDC1, 0x08), LOr (LEqual (Arg0, 0x80), LEqual (Arg0, 0x82))), LAnd (And (PDC1, 0x10), LEqual (Arg0, 0x81)))) { Notify (\_PR.CPU1, Arg0) } If (LOr (LAnd (And (PDC2, 0x08), LOr (LEqual (Arg0, 0x80), LEqual (Arg0, 0x82))), LAnd (And (PDC2, 0x10), LEqual (Arg0, 0x81)))) { Notify (\_PR.CPU2, Arg0) } If (LOr (LAnd (And (PDC3, 0x08), LOr (LEqual (Arg0, 0x80), LEqual (Arg0, 0x82))), LAnd (And (PDC3, 0x10), LEqual (Arg0, 0x81)))) { Notify (\_PR.CPU3, Arg0) } If (LOr (LAnd (And (PDC4, 0x08), LOr (LEqual (Arg0, 0x80), LEqual (Arg0, 0x82))), LAnd (And (PDC4, 0x10), LEqual (Arg0, 0x81)))) { Notify (\_PR.CPU4, Arg0) } If (LOr (LAnd (And (PDC5, 0x08), LOr (LEqual (Arg0, 0x80), LEqual (Arg0, 0x82))), LAnd (And (PDC5, 0x10), LEqual (Arg0, 0x81)))) { Notify (\_PR.CPU5, Arg0) } If (LOr (LAnd (And (PDC6, 0x08), LOr (LEqual (Arg0, 0x80), LEqual (Arg0, 0x82))), LAnd (And (PDC6, 0x10), LEqual (Arg0, 0x81)))) { Notify (\_PR.CPU6, Arg0) } If (LOr (LAnd (And (PDC7, 0x08), LOr (LEqual (Arg0, 0x80), LEqual (Arg0, 0x82))), LAnd (And (PDC7, 0x10), LEqual (Arg0, 0x81)))) { Notify (\_PR.CPU7, Arg0) } } ElseIf (LOr (LEqual (Arg0, 0x80), LOr (LEqual (Arg0, 0x81), LEqual (Arg0, 0x82)))) { Notify (\_PR.CPU0, Arg0) } } } Scope (_TZ) { Name (ETMD, One) Name (THLD, 0x78) Name (YBT4, 0x37) Name (YBT3, 0x40) Name (YBT2, 0x49) Name (YBT1, 0x50) Name (YBT0, 0x5B) ThermalZone (TZ01) { Name (PTMP, 0x0BB8) Method (_SCP, 1, Serialized) // _SCP: Set Cooling Policy { Store (Arg0, CTYP) } Method (_CRT, 0, Serialized) // _CRT: Critical Temperature { If (CondRefOf (\_PR.ACRT)) { If (LNotEqual (\_PR.ACRT, Zero)) { Return (Add (0x0AAC, Multiply (\_PR.ACRT, 0x0A))) } } Return (Add (0x0AAC, Multiply (CRTT, 0x0A))) } Method (_TMP, 0, Serialized) // _TMP: Temperature { Store (\_SB.PCI0.LPCB.EC0.CPU1, Local0) Return (Local0) } } } Name (XWMB, 0xDFA00000) 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 _Y10) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00008000, // Address Length _Y14) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y15) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y16) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00000000, // Address Length _Y17) 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 _Y11) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00010000, // Address Length _Y12) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00010000, // Address Length _Y13) }) Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y10._BAS, RBR0) // _BAS: Base Address ShiftLeft (^^LPCB.RCBA, 0x0E, RBR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y11._BAS, TBR0) // _BAS: Base Address Store (TBAB, TBR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y11._LEN, TBLN) // _LEN: Length If (LEqual (TBAB, Zero)) { Store (Zero, TBLN) } CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y12._BAS, SNR0) // _BAS: Base Address Store (SRMB, SNR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y13._BAS, XWT0) // _BAS: Base Address Store (XWMB, XWT0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y14._BAS, MBR0) // _BAS: Base Address ShiftLeft (MHBR, 0x0F, MBR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y15._BAS, DBR0) // _BAS: Base Address ShiftLeft (DIBR, 0x0C, DBR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y16._BAS, EBR0) // _BAS: Base Address ShiftLeft (EPBR, 0x0C, EBR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y17._BAS, XBR0) // _BAS: Base Address ShiftLeft (PXBR, 0x1A, XBR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y17._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 (_L69, 0, NotSerialized) // _Lxx: Level-Triggered GPE { If (LEqual (RP1D, Zero)) { \_SB.PCI0.RP01.HPME () Notify (\_SB.PCI0.RP01, 0x02) } If (LEqual (RP2D, Zero)) { Notify (\_SB.PCI0.RP02, 0x02) } If (LEqual (RP3D, Zero)) { \_SB.PCI0.RP03.HPME () Notify (\_SB.PCI0.RP03, 0x02) } If (LEqual (RP4D, Zero)) { Notify (\_SB.PCI0.RP04, 0x02) } If (LEqual (RP5D, Zero)) { Notify (\_SB.PCI0.RP05, 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 (_L0F, 0, NotSerialized) // _Lxx: Level-Triggered GPE { Store (B1B2(\_SB.PCI0.LPCB.EC0.WAK0,\_SB.PCI0.LPCB.EC0.WAK1), Local0) } Method (_L6D, 0, NotSerialized) // _Lxx: Level-Triggered GPE { If (LAnd (\_SB.PCI0.EHC1.PMEE, \_SB.PCI0.EHC1.PMES)) { Notify (\_SB.PCI0.EHC1, 0x02) } If (LAnd (\_SB.PCI0.EHC2.PMEE, \_SB.PCI0.EHC2.PMES)) { Notify (\_SB.PCI0.EHC2, 0x02) } If (LAnd (\_SB.PCI0.XHC.PMEE, \_SB.PCI0.XHC.PMES)) { Notify (\_SB.PCI0.XHC, 0x02) } ElseIf (LEqual (\_SB.PCI0.XHC.PMEE, Zero)) { Store (One, \_SB.PCI0.XHC.PMES) } If (LAnd (\_SB.PCI0.HDEF.PMEE, \_SB.PCI0.HDEF.PMES)) { Notify (\_SB.PCI0.HDEF, 0x02) } } Method (_L61, 0, NotSerialized) // _Lxx: Level-Triggered GPE { Add (L01C, One, L01C) P8XH (Zero, One) P8XH (One, L01C) } Method (_L62, 0, NotSerialized) // _Lxx: Level-Triggered GPE { Store (Zero, GPEC) If (CondRefOf (\_SB.PCCD.PENB)) { If (LEqual (\_SB.PCCD.PENB, One)) { Notify (\_SB.PCCD, 0x80) } } } Method (_L66, 0, NotSerialized) // _Lxx: Level-Triggered GPE { If (LAnd (\_SB.PCI0.GFX0.GSSE, LNot (GSMI))) { \_SB.PCI0.GFX0.GSCI () } } Method (_L67, 0, NotSerialized) // _Lxx: Level-Triggered GPE { Store (0x20, \_SB.PCI0.SBUS.HSTS) } Name (GPFG, Zero) Method (_L0B, 0, NotSerialized) // _Lxx: Level-Triggered GPE { If (LAnd (GPFG, LNot (\_SB.RDGI (0x0B)))) { Store (Zero, GPFG) Notify (\_SB.PCI0.SMBU.NFC, 0xC0) } } } 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, 0x00000002) Name (SRMB, 0xDFA10000) Name (PML1, 0x00000846) Name (PML2, 0x00000846) Name (PML3, 0x00000846) Name (PML4, 0x00000846) Name (PML5, 0x00000846) Name (PML6, 0x00000846) Name (PML7, 0xFFFFFFFF) Name (PML8, 0xFFFFFFFF) Name (PNL1, 0x00000846) Name (PNL2, 0x00000846) Name (PNL3, 0x00000846) Name (PNL4, 0x00000846) Name (PNL5, 0x00000846) Name (PNL6, 0x00000846) Name (PNL7, 0xFFFFFFFF) Name (PNL8, 0xFFFFFFFF) 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, , 27, GE45, 1, , 5, GE51, 1, Offset (0x20) } Field (PMLP, ByteAcc, NoLock, WriteAsZeros) { Offset (0x01), GS08, 1, , 8, GS17, 1, , 27, 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, , 3, GO13, 1, 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 (0x3000), Offset (0x331C), Offset (0x331F), PMFS, 1, Offset (0x3320), CKEN, 32, 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, Serialized) { 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, Serialized) { 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, Serialized) { 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, Serialized) { 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, Serialized) { 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) } ElseIf (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, Serialized) { 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) } ElseIf (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) Name (LMSL, Zero) Name (LNSL, Zero) 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 (_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 */ 0xE0, 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, ToUUID ("a5fc708f-8775-4ba6-bd0c-ba90a1ec72f8"))) { 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 }) } } ElseIf (LEqual (_T_0, One)) { If (LEqual (SDGV, 0xFF)) { Return (Zero) } Else { Return (One) } } ElseIf (LEqual (_T_0, 0x02)) { Return (SDGV) } Break } } Return (Zero) } } Device (PR15) { Name (_ADR, 0x05) // _ADR: Address Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (RDGI (0x23), Zero)) { Return (0x0F) } Return (Zero) } 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 */ 0x30, 0x1C, 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, ToUUID ("a5fc708f-8775-4ba6-bd0c-ba90a1ec72f8"))) { 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 }) } } ElseIf (LEqual (_T_0, One)) { If (LEqual (SDGV, 0xFF)) { Return (Zero) } Else { Return (One) } } ElseIf (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 */ 0xB0, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) Name (PLDC, Buffer (0x14) { /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x24, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x0A, 0x00, 0xBE, 0x00 }) If (WIN8) { Return (PLDC) } Return (PLDP) } Device (CAM0) { Name (_ADR, 0x06) // _ADR: Address 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 } }) Name (PLDC, Buffer (0x14) { /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x24, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x0A, 0x00, 0xBE, 0x00 }) If (WIN8) { Return (PLDC) } 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, ToUUID ("a5fc708f-8775-4ba6-bd0c-ba90a1ec72f8"))) { 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 }) } } ElseIf (LEqual (_T_0, One)) { If (LEqual (SDGV, 0xFF)) { Return (Zero) } Else { Return (One) } } ElseIf (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 */ 0xB0, 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, ToUUID ("a5fc708f-8775-4ba6-bd0c-ba90a1ec72f8"))) { 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 }) } } ElseIf (LEqual (_T_0, One)) { If (LEqual (SDGV, 0xFF)) { Return (Zero) } Else { Return (One) } } ElseIf (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 */ 0xB0, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) Return (PLDP) } } } } } 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 (_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, ToUUID ("a5fc708f-8775-4ba6-bd0c-ba90a1ec72f8"))) { 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 }) } } ElseIf (LEqual (_T_0, One)) { If (LEqual (SDGV, 0xFF)) { Return (Zero) } Else { Return (One) } } ElseIf (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, ToUUID ("a5fc708f-8775-4ba6-bd0c-ba90a1ec72f8"))) { 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 }) } } ElseIf (LEqual (_T_0, One)) { If (LEqual (SDGV, 0xFF)) { Return (Zero) } Else { Return (One) } } ElseIf (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) } } } } } Device (XHC) { Name (_ADR, 0x00140000) // _ADR: Address Method (_DEP, 0, NotSerialized) // _DEP: Dependencies { If (LEqual (S0ID, One)) { Return (Package (0x01) { PEPD }) } Else { Return (Package (0x00) {}) } } OperationRegion (XPRT, PCI_Config, Zero, 0x0100) Field (XPRT, AnyAcc, NoLock, Preserve) { DVID, 16, Offset (0x40), , 11, SWAI, 1, Offset (0x44), , 12, SAIP, 2, Offset (0x48), Offset (0x74), D0D3, 2, Offset (0x75), PMEE, 1, , 6, PMES, 1, Offset (0xB0), , 13, MB13, 1, MB14, 1, Offset (0xB4), Offset (0xD0), PR2, 32, PR2M, 32, PR3, 32, PR3M, 32 } OperationRegion (XHCP, SystemMemory, Add (PEBS, 0x000A0000), 0x0100) Field (XHCP, AnyAcc, Lock, Preserve) { Offset (0x04), PDBM, 16, Offset (0x10), MEMB, 64 } Method (PR2S, 1, Serialized) { Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler If (LEqual (And (CDID, 0xF000), 0x8000)) { While (One) { Store (Arg0, _T_0) If (LEqual (_T_0, One)) { Return (One) } ElseIf (LEqual (_T_0, 0x02)) { Return (0x02) } ElseIf (LEqual (_T_0, 0x03)) { Return (0x04) } ElseIf (LEqual (_T_0, 0x04)) { Return (0x08) } ElseIf (LEqual (_T_0, 0x05)) { Return (0x0100) } ElseIf (LEqual (_T_0, 0x06)) { Return (0x0200) } ElseIf (LEqual (_T_0, 0x07)) { Return (0x0400) } ElseIf (LEqual (_T_0, 0x08)) { Return (0x0800) } ElseIf (LEqual (_T_0, 0x09)) { Return (0x10) } ElseIf (LEqual (_T_0, 0x0A)) { Return (0x20) } ElseIf (LEqual (_T_0, 0x0B)) { Return (0x1000) } ElseIf (LEqual (_T_0, 0x0C)) { Return (0x2000) } ElseIf (LEqual (_T_0, 0x0D)) { Return (0x40) } ElseIf (LEqual (_T_0, 0x0E)) { Return (0x80) } ElseIf (LEqual (_T_0, 0x0F)) { Return (0x4000) } Break } } Else { While (One) { Store (Arg0, _T_1) If (LEqual (_T_1, One)) { Return (One) } ElseIf (LEqual (_T_1, 0x02)) { Return (0x02) } ElseIf (LEqual (_T_1, 0x03)) { Return (0x04) } ElseIf (LEqual (_T_1, 0x04)) { Return (0x08) } ElseIf (LEqual (_T_1, 0x05)) { Return (0x10) } ElseIf (LEqual (_T_1, 0x06)) { Return (0x20) } ElseIf (LEqual (_T_1, 0x07)) { Return (0x40) } ElseIf (LEqual (_T_1, 0x08)) { Return (0x80) } ElseIf (LEqual (_T_1, 0x09)) { Return (0x0100) } Break } } } Name (XRST, Zero) Method (_PS0, 0, Serialized) // _PS0: Power State 0 { If (LEqual (DVID, 0xFFFF)) { Return (Zero) } Store (MEMB, Local2) Store (PDBM, Local1) And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM) Store (D0D3, Local3) Store (Zero, D0D3) Store (SRMB, MEMB) Or (Local1, 0x02, PDBM) OperationRegion (MCA1, SystemMemory, SRMB, 0x9000) Field (MCA1, DWordAcc, Lock, Preserve) { Offset (0x510), PSC1, 32, Offset (0x520), PSC2, 32, Offset (0x530), PSC3, 32, Offset (0x540), PSC4, 32, Offset (0x80E0), , 15, AX15, 1, Offset (0x8154), , 31, CLK2, 1, Offset (0x816C), , 2, CLK0, 1, , 11, CLK1, 1 } If (LEqual (PCHS, 0x02)) { Store (Zero, MB13) Store (Zero, MB14) Store (Zero, CLK0) Store (Zero, CLK1) } Store (One, CLK2) If (LEqual (PCHS, 0x02)) { While (LOr (LOr (LEqual (And (PSC1, 0x03F8), 0x02E0), LEqual (And (PSC2, 0x03F8), 0x02E0)), LOr (LEqual (And (PSC3, 0x03F8), 0x02E0), LEqual (And (PSC4, 0x03F8), 0x02E0)))) { Stall (0x0A) } Store (Zero, Local4) And (PSC1, 0xFFFFFFFFFFFFFFFD, Local0) If (LEqual (And (Local0, 0x000203F9), 0x02A0)) { Or (Local0, 0x80000000, PSC1) Or (Local4, One, Local4) } And (PSC2, 0xFFFFFFFFFFFFFFFD, Local0) If (LEqual (And (Local0, 0x000203F9), 0x02A0)) { Or (Local0, 0x80000000, PSC2) Or (Local4, 0x02, Local4) } And (PSC3, 0xFFFFFFFFFFFFFFFD, Local0) If (LEqual (And (Local0, 0x000203F9), 0x02A0)) { Or (Local0, 0x80000000, PSC3) Or (Local4, 0x04, Local4) } And (PSC4, 0xFFFFFFFFFFFFFFFD, Local0) If (LEqual (And (Local0, 0x000203F9), 0x02A0)) { Or (Local0, 0x80000000, PSC4) Or (Local4, 0x08, Local4) } If (Local4) { Sleep (0x65) If (And (Local4, One)) { And (PSC1, 0xFFFFFFFFFFFFFFFD, Local0) Or (Local0, 0x00FE0000, PSC1) } If (And (Local4, 0x02)) { And (PSC2, 0xFFFFFFFFFFFFFFFD, Local0) Or (Local0, 0x00FE0000, PSC2) } If (And (Local4, 0x04)) { And (PSC3, 0xFFFFFFFFFFFFFFFD, Local0) Or (Local0, 0x00FE0000, PSC3) } If (And (Local4, 0x08)) { And (PSC4, 0xFFFFFFFFFFFFFFFD, Local0) Or (Local0, 0x00FE0000, PSC4) } } Store (One, AX15) } Store (Zero, SWAI) Store (Zero, SAIP) If (CondRefOf (\_SB.PCI0.XHC.PS0X)) { PS0X () } And (PDBM, 0xFFFFFFFFFFFFFFFD, PDBM) Store (Local2, MEMB) Store (Local1, PDBM) } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { If (LEqual (DVID, 0xFFFF)) { Return (Zero) } Store (One, PMES) Store (One, PMEE) Store (MEMB, Local2) Store (PDBM, Local1) And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM) Store (SRMB, MEMB) Or (PDBM, 0x02, PDBM) OperationRegion (MCA1, SystemMemory, SRMB, 0x9000) Field (MCA1, DWordAcc, Lock, Preserve) { Offset (0x80E0), , 15, AX15, 1, Offset (0x8154), , 31, CLK2, 1, Offset (0x816C), , 2, CLK0, 1, , 11, CLK1, 1, Offset (0x8170) } Store (D0D3, Local3) If (LEqual (Local3, 0x03)) { Store (Zero, D0D3) } If (LEqual (PCHS, 0x02)) { Store (One, MB13) Store (One, MB14) Store (One, CLK0) Store (One, CLK1) } Store (Zero, CLK2) If (LEqual (PCHS, 0x02)) { Store (Zero, AX15) } Store (One, SWAI) Store (One, SAIP) If (CondRefOf (\_SB.PCI0.XHC.PS3X)) { PS3X () } If (LEqual (Local3, 0x03)) { Store (0x03, D0D3) } And (PDBM, 0xFFFFFFFFFFFFFFFD, PDBM) Store (Local2, MEMB) Store (Local1, PDBM) } Method (CUID, 1, Serialized) { If (LEqual (Arg0, ToUUID ("7c9512a9-1705-4cb4-af7d-506a2423ab71"))) { Return (One) } Return (Zero) } Method (POSC, 3, Serialized) { CreateDWordField (Arg2, Zero, CDW1) CreateDWordField (Arg2, 0x08, CDW3) If (LEqual (XHCI, Zero)) { Or (CDW1, 0x02, CDW1) } If (LNot (And (CDW1, One))) { If (And (CDW3, One)) { ESEL () } ElseIf (LEqual (And (CDID, 0xF000), 0x8000)) { If (LGreater (Arg0, One)) { XSEL () } Else { Or (CDW1, 0x0A, CDW1) } } ElseIf (LGreater (Arg0, 0x02)) { XSEL () } Else { Or (CDW1, 0x0A, CDW1) } } 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 (PR2S (One), PR2))) { 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 (PR2S (One), PR2))) { 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 (PR2S (0x02), PR2))) { 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 (PR2S (0x02), PR2))) { 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 (PR2S (0x03), PR2))) { 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 (PR2S (0x03), PR2))) { 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, 0xFF, Zero, 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 */ 0x70, 0x0C, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00 } }) CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS) If (LNot (And (PR2S (0x04), PR2))) { And (VIS, Zero, VIS) } Return (PLDP) } } Device (HS05) { Name (_ADR, 0x05) // _ADR: Address Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (RDGI (0x23), Zero)) { Return (0x0F) } Return (Zero) } Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { Name (UPCP, Package (0x04) { 0xFF, Zero, Zero, Zero }) If (LNot (And (PR2S (0x05), PR2))) { Store (Zero, Index (UPCP, 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 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) 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, 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 */ 0x68, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00 } }) CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS) If (LNot (And (PR2S (0x06), PR2))) { And (VIS, Zero, VIS) } Name (PLDC, Buffer (0x14) { /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x24, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x0A, 0x00, 0xBE, 0x00 }) If (WIN8) { Return (PLDC) } Return (PLDP) } Device (CAM0) { Name (_ADR, 0x06) // _ADR: Address 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 } }) Name (PLDC, Buffer (0x14) { /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x24, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x0A, 0x00, 0xBE, 0x00 }) If (WIN8) { Return (PLDC) } 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, 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 */ 0x70, 0x0C, 0x80, 0x03, 0x00, 0x00, 0x00, 0x00 } }) CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS) If (LNot (And (PR2S (0x07), PR2))) { 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 (PR2S (0x08), PR2))) { Store (Zero, Index (UPCP, 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 */ 0x70, 0x0C, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00 } }) CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS) If (LNot (And (PR2S (0x08), PR2))) { 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 (PR2S (0x09), PR2))) { 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, 0x04, 0x00, 0x00, 0x00, 0x00 } }) CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS) If (LNot (And (PR2S (0x09), PR2))) { 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 (PR2S (0x0A), PR2))) { 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, 0x05, 0x00, 0x00, 0x00, 0x00 } }) CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS) If (LNot (And (PR2S (0x0A), PR2))) { 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, 0xFF, Zero, Zero }) If (LNot (And (PR2S (0x0B), PR2))) { Store (Zero, Index (UPCP, 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 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS) If (LNot (And (PR2S (0x0B), PR2))) { 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, 0xFF, Zero, Zero }) If (LNot (And (PR2S (0x0C), PR2))) { Store (Zero, Index (UPCP, 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 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS) If (LNot (And (PR2S (0x0C), PR2))) { 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, 0xFF, Zero, Zero }) If (LNot (And (PR2S (0x0D), PR2))) { Store (Zero, Index (UPCP, 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 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS) If (LNot (And (PR2S (0x0D), PR2))) { 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, 0xFF, Zero, Zero }) If (LNot (And (PR2S (0x0E), PR2))) { Store (Zero, Index (UPCP, 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 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS) If (LNot (And (PR2S (0x0E), PR2))) { 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) { Zero, Zero, Zero, Zero }) If (LNot (And (PR2S (0x0F), PR2))) { Store (Zero, Index (UPCP, 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 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS) If (LNot (And (PR2S (0x0F), PR2))) { 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, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x02, 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, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x03, 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 (0x6D, 0x03)) } } 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 (0x6D, 0x04)) } } Device (RP01) { Method (_ADR, 0, NotSerialized) // _ADR: Address { Return (RPA0) } Name (PDSF, Zero) Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR1, LTRE) Store (PML1, LMSL) Store (PNL1, LNSL) Store (OBF1, OBFF) } 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 (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), Offset (0x60), Offset (0x62), PSPX, 1, PP, 1, Offset (0xA4), D3HT, 2, Offset (0xD8), , 30, HPEX, 1, PMEX, 1, Offset (0xDF), , 6, HPCS, 1, PMCS, 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, ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */)) { 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) } } ElseIf (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 }) } } } ElseIf (LEqual (_T_1, 0x06)) { If (LEqual (Arg1, 0x02)) { If (LTRE) { If (LOr (LEqual (LMSL, 0xFFFFFFFF), LEqual (LNSL, 0xFFFFFFFF))) { If (LEqual (PCHS, One)) { Store (0x0846, LMSL) Store (0x0846, LNSL) } ElseIf (LEqual (PCHS, 0x02)) { Store (0x1003, LMSL) Store (0x1003, LNSL) } } Store (And (ShiftRight (LMSL, 0x0A), 0x07), Index (LTRV, Zero)) Store (And (LMSL, 0x03FF), Index (LTRV, One)) Store (And (ShiftRight (LNSL, 0x0A), 0x07), Index (LTRV, 0x02)) Store (And (LNSL, 0x03FF), Index (LTRV, 0x03)) Return (LTRV) } Else { Return (Zero) } } } Break } } Break } Return (Buffer (One) { 0x00 }) } Device (PXSX) { Name (_ADR, Zero) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x69, 0x04)) } } Method (HPME, 0, Serialized) { If (PMSX) { Store (0xC8, Local0) While (Local0) { Store (One, PMSX) If (PMSX) { Decrement (Local0) } Else { Store (Zero, Local0) } } Notify (PXSX, 0x02) } } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x69, 0x04)) } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (PICM) { Return (AR04 ()) } Return (PR04 ()) } } Device (RP02) { Method (_ADR, 0, NotSerialized) // _ADR: Address { Return (RPA1) } Name (PDSF, Zero) Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR2, LTRE) Store (PML2, LMSL) Store (PNL2, LNSL) Store (OBF2, OBFF) } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (PICM) { Return (AR05 ()) } Return (PR05 ()) } } Device (RP03) { Method (_ADR, 0, NotSerialized) // _ADR: Address { Return (RPA2) } Name (PDSF, Zero) Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR3, LTRE) Store (PML3, LMSL) Store (PNL3, LNSL) Store (OBF3, OBFF) } 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 (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), Offset (0x60), Offset (0x62), PSPX, 1, PP, 1, Offset (0xA4), D3HT, 2, Offset (0xD8), , 30, HPEX, 1, PMEX, 1, Offset (0xDF), , 6, HPCS, 1, PMCS, 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, ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */)) { 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) } } ElseIf (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 }) } } } ElseIf (LEqual (_T_1, 0x06)) { If (LEqual (Arg1, 0x02)) { If (LTRE) { If (LOr (LEqual (LMSL, 0xFFFFFFFF), LEqual (LNSL, 0xFFFFFFFF))) { If (LEqual (PCHS, One)) { Store (0x0846, LMSL) Store (0x0846, LNSL) } ElseIf (LEqual (PCHS, 0x02)) { Store (0x1003, LMSL) Store (0x1003, LNSL) } } Store (And (ShiftRight (LMSL, 0x0A), 0x07), Index (LTRV, Zero)) Store (And (LMSL, 0x03FF), Index (LTRV, One)) Store (And (ShiftRight (LNSL, 0x0A), 0x07), Index (LTRV, 0x02)) Store (And (LNSL, 0x03FF), Index (LTRV, 0x03)) Return (LTRV) } Else { Return (Zero) } } } Break } } Break } Return (Buffer (One) { 0x00 }) } Device (PXSX) { Name (_ADR, Zero) // _ADR: Address Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake { 0x0F, 0x05 }) Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake { If (Arg0) { Store (One, ^^^LPCB.EC0.HWAO) } Else { Store (Zero, ^^^LPCB.EC0.HWAO) } } } Method (HPME, 0, Serialized) { If (PMSX) { Store (0xC8, Local0) While (Local0) { Store (One, PMSX) If (PMSX) { Decrement (Local0) } Else { Store (Zero, Local0) } } Notify (PXSX, 0x02) } } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x69, 0x04)) } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (PICM) { Return (AR06 ()) } Return (PR06 ()) } } Device (RP04) { Method (_ADR, 0, NotSerialized) // _ADR: Address { Return (RPA3) } Name (PDSF, Zero) Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR4, LTRE) Store (PML4, LMSL) Store (PNL4, LNSL) Store (OBF4, OBFF) } 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 (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), Offset (0x60), Offset (0x62), PSPX, 1, PP, 1, Offset (0xA4), D3HT, 2, Offset (0xD8), , 30, HPEX, 1, PMEX, 1, Offset (0xDF), , 6, HPCS, 1, PMCS, 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, ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */)) { 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) } } ElseIf (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 }) } } } ElseIf (LEqual (_T_1, 0x06)) { If (LEqual (Arg1, 0x02)) { If (LTRE) { If (LOr (LEqual (LMSL, 0xFFFFFFFF), LEqual (LNSL, 0xFFFFFFFF))) { If (LEqual (PCHS, One)) { Store (0x0846, LMSL) Store (0x0846, LNSL) } ElseIf (LEqual (PCHS, 0x02)) { Store (0x1003, LMSL) Store (0x1003, LNSL) } } Store (And (ShiftRight (LMSL, 0x0A), 0x07), Index (LTRV, Zero)) Store (And (LMSL, 0x03FF), Index (LTRV, One)) Store (And (ShiftRight (LNSL, 0x0A), 0x07), Index (LTRV, 0x02)) Store (And (LNSL, 0x03FF), Index (LTRV, 0x03)) Return (LTRV) } Else { Return (Zero) } } } Break } } Break } Return (Buffer (One) { 0x00 }) } Device (PXSX) { Name (_ADR, Zero) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x69, 0x04)) } } Method (HPME, 0, Serialized) { If (PMSX) { Store (0xC8, Local0) While (Local0) { Store (One, PMSX) If (PMSX) { Decrement (Local0) } Else { Store (Zero, Local0) } } Notify (PXSX, 0x02) } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (PICM) { Return (AR07 ()) } Return (PR07 ()) } } Device (RP05) { Method (_ADR, 0, NotSerialized) // _ADR: Address { Return (RPA4) } Name (PDSF, Zero) Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR5, LTRE) Store (PML5, LMSL) Store (PNL5, LNSL) Store (OBF5, OBFF) } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (PICM) { Return (AR08 ()) } Return (PR08 ()) } } Device (SAT0) { Name (_ADR, 0x001F0002) // _ADR: Address Name (FDEV, Zero) Name (FDRP, Zero) Method (_DEP, 0, NotSerialized) // _DEP: Dependencies { ADBG ("SAT0 DEP Call") If (LGreaterEqual (OSYS, 0x07DD)) { If (LAnd (LEqual (S0ID, One), LNotEqual (And (PEPC, 0x03), Zero))) { ADBG ("SAT0 DEP") Return (Package (0x01) { PEPD }) } } ADBG ("SAT0 DEP NULL") Return (Package (0x00) {}) } Device (PRT0) { Name (_ADR, 0xFFFF) // _ADR: Address Name (HDTF, Buffer (0x0E) { /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5 }) Name (HETF, Buffer (0x15) { /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x09, /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF }) Name (ERTF, Buffer (0x15) { /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF }) Name (HPTF, Buffer (0x15) { /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF }) Name (HQTF, Buffer (0x1C) { /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x09, 0x00, /* 0018 */ 0x00, 0x00, 0xA0, 0xEF }) Name (HXTF, Buffer (0x1C) { /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x03, 0x00, /* 0018 */ 0x00, 0x00, 0xA0, 0xEF }) Name (DDTF, Buffer (0x0E) { /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3 }) CreateByteField (DDTF, One, DTAT) CreateByteField (DDTF, 0x08, DTFT) Name (DGTF, Buffer (0x15) { /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x10, 0x03, /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF }) CreateByteField (DGTF, One, GTAT) CreateByteField (DGTF, 0x08, GTFT) Method (_SDD, 1, Serialized) // _SDD: Set Device Data { CreateByteField (Arg0, 0x9D, BFDS) ToInteger (BFDS, FDEV) CreateByteField (Arg0, 0x9A, BFRP) ToInteger (BFRP, FDRP) } Method (_GTF, 0, Serialized) // _GTF: Get Task File { If (LAnd (LAnd (LEqual (DVS0, One), LEqual (And (FDEV, One), One)), LEqual (And (FDRP, 0x80), 0x80))) { Return (HETF) } Else { Return (HDTF) } } } Device (PRT1) { Name (_ADR, 0x0001FFFF) // _ADR: Address Name (HDTF, Buffer (0x0E) { /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5 }) Name (HETF, Buffer (0x15) { /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x09, /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF }) Name (ERTF, Buffer (0x15) { /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF }) Name (HPTF, Buffer (0x15) { /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF }) Name (HQTF, Buffer (0x1C) { /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03, /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x09, 0x00, /* 0018 */ 0x00, 0x00, 0xA0, 0xEF }) Name (HXTF, Buffer (0x1C) { /* 0000 */ 0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x03, 0x00, /* 0018 */ 0x00, 0x00, 0xA0, 0xEF }) Name (DDTF, Buffer (0x0E) { /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3 }) CreateByteField (DDTF, One, DTAT) CreateByteField (DDTF, 0x08, DTFT) Name (DGTF, Buffer (0x15) { /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x10, 0x03, /* 0010 */ 0x00, 0x00, 0x00, 0xA0, 0xEF }) CreateByteField (DGTF, One, GTAT) CreateByteField (DGTF, 0x08, GTFT) Name (FDEV, Zero) Name (FDRP, Zero) Method (_SDD, 1, Serialized) // _SDD: Set Device Data { CreateByteField (Arg0, 0x9D, BFDS) ToInteger (BFDS, FDEV) CreateByteField (Arg0, 0x9A, BFRP) ToInteger (BFRP, FDRP) } Method (_GTF, 0, Serialized) // _GTF: Get Task File { If (LAnd (LAnd (LEqual (DVS1, One), LEqual (And (FDEV, One), One)), LEqual (And (FDRP, 0x80), 0x80))) { Return (HETF) } Else { Return (HDTF) } } } Device (PRT2) { Name (_ADR, 0x0002FFFF) // _ADR: Address Name (FDEV, Zero) Name (FDRP, Zero) Method (_SDD, 1, Serialized) // _SDD: Set Device Data { CreateByteField (Arg0, 0x9D, BFDS) ToInteger (BFDS, FDEV) CreateByteField (Arg0, 0x9A, BFRP) ToInteger (BFRP, FDRP) } Method (_GTF, 0, Serialized) // _GTF: Get Task File { If (LAnd (LAnd (LEqual (DVS2, 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, Serialized) // _SDD: Set Device Data { CreateByteField (Arg0, 0x9D, BFDS) ToInteger (BFDS, FDEV) CreateByteField (Arg0, 0x9A, BFRP) ToInteger (BFRP, FDRP) } Method (_GTF, 0, Serialized) // _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) } } } Method (SCMP, 2, NotSerialized) { Store (SizeOf (Arg0), Local0) If (LNotEqual (Local0, SizeOf (Arg1))) { Return (One) } Increment (Local0) Name (STR1, Buffer (Local0) {}) Name (STR2, Buffer (Local0) {}) Store (Arg0, STR1) Store (Arg1, STR2) Store (Zero, Local1) While (LLess (Local1, Local0)) { Store (DerefOf (Index (STR1, Local1)), Local2) Store (DerefOf (Index (STR2, Local1)), Local3) If (LNotEqual (Local2, Local3)) { Return (One) } Increment (Local1) } Return (Zero) } Scope (_SI) { Method (_SST, 1, NotSerialized) // _SST: System Status { If (LEqual (Arg0, Zero)) { \_SB.PCI0.LPCB.EC0.LED (Zero, 0x80) } If (LEqual (Arg0, One)) { If (LEqual (\_SB.PCI0.LPCB.EC0.HMUT, Zero)) { If (LOr (SPS, WNTF)) { \_SB.PCI0.LPCB.EC0.BEEP (0x05) Sleep (0x7D) } } \_SB.PCI0.LPCB.EC0.LED (Zero, 0x80) } If (LEqual (Arg0, 0x02)) { \_SB.PCI0.LPCB.EC0.LED (Zero, 0xC0) } If (LEqual (Arg0, 0x03)) { If (LGreater (SPS, 0x03)) { \_SB.PCI0.LPCB.EC0.BEEP (0x07) } ElseIf (LEqual (\_SB.PCI0.LPCB.EC0.HMUT, Zero)) { If (LEqual (SPS, 0x03)) { \_SB.PCI0.LPCB.EC0.BEEP (0x03) } Else { \_SB.PCI0.LPCB.EC0.BEEP (0x04) } } If (LEqual (SPS, 0x03)) {} Else { \_SB.PCI0.LPCB.EC0.LED (Zero, 0x80) } \_SB.PCI0.LPCB.EC0.LED (Zero, 0xC0) } If (LEqual (Arg0, 0x04)) { If (LEqual (\_SB.PCI0.LPCB.EC0.HMUT, Zero)) { Store (0xF7, P80H) \_SB.PCI0.LPCB.EC0.BEEP (0x03) } Store (0xF8, P80H) \_SB.PCI0.LPCB.EC0.LED (Zero, 0xC0) } } } Scope (_SB) { Device (WMI3) { Name (_HID, EisaId ("PNP0C14")) // _HID: Hardware ID Name (_UID, 0x03) // _UID: Unique ID Name (_WDG, /**** Is ResourceTemplate, but EndTag not at buffer end ****/ Buffer (0x3C) { /* 0000 */ 0x79, 0x36, 0x4D, 0x8F, 0x9E, 0x74, 0x79, 0x44, /* 0008 */ 0x9B, 0x16, 0xC6, 0x26, 0x01, 0xFD, 0x25, 0xF0, /* 0010 */ 0x41, 0x42, 0x01, 0x02, 0x69, 0xE8, 0xD2, 0x85, /* 0018 */ 0x5A, 0x36, 0xCE, 0x4A, 0xA4, 0xD3, 0xCD, 0x69, /* 0020 */ 0x2B, 0x16, 0x98, 0xA0, 0x41, 0x43, 0x01, 0x02, /* 0028 */ 0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11, /* 0030 */ 0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, /* 0038 */ 0x42, 0x43, 0x01, 0x00 }) Mutex (MWMI, 0x07) Method (WMAB, 3, NotSerialized) { CreateByteField (Arg2, Zero, ASS0) CreateWordField (Arg2, One, ASS1) CreateByteField (Arg2, 0x03, ASS2) Acquire (MWMI, 0xFFFF) Store (ASS0, WASB) Store (ASS1, WASI) Store (ASS2, WASD) WMIS (0x0B, Zero) Store (WASS, Local0) Release (MWMI) Return (Local0) } Method (WMAC, 3, NotSerialized) { CreateByteField (Arg2, Zero, ASS0) CreateWordField (Arg2, One, ASS1) Acquire (MWMI, 0xFFFF) Store (ASS0, WASB) Store (ASS1, WASI) WMIS (0x0C, Arg1) Store (WASS, Local0) Release (MWMI) Return (Local0) } Name (WQBC, Buffer (0x040A) { /* 0000 */ 0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00, /* 0008 */ 0xFA, 0x03, 0x00, 0x00, 0x32, 0x12, 0x00, 0x00, /* 0010 */ 0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54, /* 0018 */ 0x98, 0xC3, 0x88, 0x00, 0x01, 0x06, 0x18, 0x42, /* 0020 */ 0x10, 0x07, 0x10, 0x8A, 0x0D, 0x21, 0x02, 0x0B, /* 0028 */ 0x83, 0x50, 0x50, 0x18, 0x14, 0xA0, 0x45, 0x41, /* 0030 */ 0xC8, 0x05, 0x14, 0x95, 0x02, 0x21, 0xC3, 0x02, /* 0038 */ 0x14, 0x0B, 0x70, 0x2E, 0x40, 0xBA, 0x00, 0xE5, /* 0040 */ 0x28, 0x72, 0x0C, 0x22, 0x02, 0xF7, 0xEF, 0x0F, /* 0048 */ 0x31, 0x10, 0x88, 0x14, 0x40, 0x48, 0x28, 0x84, /* 0050 */ 0x44, 0x00, 0x53, 0x21, 0x70, 0x84, 0xA0, 0x5F, /* 0058 */ 0x01, 0x08, 0x1D, 0x0A, 0x90, 0x29, 0xC0, 0xA0, /* 0060 */ 0x00, 0xA7, 0x08, 0x22, 0x88, 0xD2, 0xB2, 0x00, /* 0068 */ 0xDD, 0x02, 0x7C, 0x0B, 0xD0, 0x0E, 0x21, 0xB4, /* 0070 */ 0x58, 0x07, 0x11, 0x21, 0xD2, 0x31, 0x34, 0x29, /* 0078 */ 0x40, 0xA2, 0x00, 0x8B, 0x02, 0x64, 0xC3, 0xC8, /* 0080 */ 0x36, 0x22, 0x99, 0x87, 0x45, 0x0E, 0x02, 0x25, /* 0088 */ 0x66, 0x10, 0x28, 0x9D, 0xE0, 0xB2, 0x89, 0xAB, /* 0090 */ 0x41, 0x9C, 0x4C, 0x94, 0xF3, 0x88, 0x92, 0xE0, /* 0098 */ 0xA8, 0x0E, 0x22, 0x42, 0xEC, 0x72, 0x05, 0x48, /* 00A0 */ 0x1E, 0x80, 0x34, 0x4F, 0x4C, 0xD6, 0xE7, 0xA0, /* 00A8 */ 0x91, 0xB1, 0x11, 0xF0, 0x94, 0x1A, 0x40, 0x58, /* 00B0 */ 0xA0, 0x75, 0x2A, 0xE0, 0x7A, 0x0D, 0x43, 0x3D, /* 00B8 */ 0x80, 0x48, 0xCE, 0x58, 0x51, 0xC0, 0xF6, 0x3A, /* 00C0 */ 0x11, 0x8D, 0xEA, 0x40, 0x99, 0x24, 0x38, 0xD4, /* 00C8 */ 0x30, 0x3D, 0xB5, 0xE6, 0x27, 0xA6, 0x89, 0x9C, /* 00D0 */ 0x5A, 0xD3, 0x43, 0x16, 0x24, 0x93, 0x36, 0x14, /* 00D8 */ 0xD4, 0xD8, 0x3D, 0xAD, 0x93, 0xF2, 0x4C, 0x23, /* 00E0 */ 0x1E, 0x94, 0x61, 0x12, 0x78, 0x14, 0x0C, 0x8D, /* 00E8 */ 0x13, 0x94, 0x75, 0x22, 0xA0, 0x03, 0xE5, 0x80, /* 00F0 */ 0x27, 0xE1, 0x39, 0x16, 0x2F, 0x40, 0xF8, 0x88, /* 00F8 */ 0xC9, 0xB4, 0x4D, 0xE0, 0x33, 0x81, 0x87, 0x79, /* 0100 */ 0xCC, 0xD8, 0x11, 0x85, 0x0B, 0x78, 0x3E, 0xC7, /* 0108 */ 0x10, 0x39, 0xEE, 0xA1, 0xC6, 0x38, 0x8A, 0xC8, /* 0110 */ 0x47, 0x60, 0x24, 0x03, 0xC5, 0x2B, 0x08, 0x89, /* 0118 */ 0x80, 0xF8, 0x76, 0x70, 0x70, 0x91, 0xFC, 0xFF, /* 0120 */ 0x47, 0x89, 0x11, 0x2A, 0xC6, 0xDB, 0x00, 0x6E, /* 0128 */ 0x5E, 0x09, 0x8A, 0x1E, 0x07, 0x4A, 0x06, 0x84, /* 0130 */ 0x3C, 0x0A, 0xB0, 0x7A, 0x28, 0x20, 0x04, 0x16, /* 0138 */ 0x27, 0x40, 0xE3, 0x38, 0x05, 0xD3, 0x99, 0x00, /* 0140 */ 0x6D, 0x02, 0xBC, 0x09, 0x30, 0x27, 0xC0, 0x16, /* 0148 */ 0x86, 0x80, 0x82, 0x9C, 0x59, 0x94, 0x20, 0x11, /* 0150 */ 0x42, 0x31, 0x88, 0x0A, 0x05, 0x18, 0x43, 0x14, /* 0158 */ 0xCA, 0x3B, 0x41, 0x8C, 0xCA, 0x20, 0x74, 0x82, /* 0160 */ 0x08, 0x14, 0x3D, 0x78, 0x98, 0xD6, 0x40, 0x74, /* 0168 */ 0x89, 0xF0, 0xC8, 0xB1, 0x47, 0x00, 0x9F, 0x19, /* 0170 */ 0xCE, 0xE9, 0x04, 0x1F, 0x01, 0xDE, 0x16, 0x4C, /* 0178 */ 0xE0, 0x79, 0xBF, 0x24, 0x1C, 0x6A, 0xD8, 0x03, /* 0180 */ 0x8E, 0x1A, 0xE3, 0x28, 0x12, 0x58, 0xD0, 0x33, /* 0188 */ 0x42, 0x16, 0x40, 0x14, 0x09, 0x1E, 0x75, 0x64, /* 0190 */ 0xF0, 0xE1, 0xC0, 0x23, 0x3B, 0x72, 0xCF, 0xF0, /* 0198 */ 0x04, 0x82, 0x1C, 0xC2, 0x11, 0x3C, 0x36, 0x3C, /* 01A0 */ 0x15, 0x78, 0x0C, 0xEC, 0xBA, 0xE0, 0x73, 0x80, /* 01A8 */ 0x8F, 0x09, 0x78, 0xD7, 0x80, 0x9A, 0xF3, 0xD3, /* 01B0 */ 0x01, 0x9B, 0x72, 0x38, 0xCC, 0x70, 0x3D, 0xFD, /* 01B8 */ 0x70, 0x27, 0x70, 0xD2, 0x06, 0x64, 0xB3, 0xF3, /* 01C0 */ 0xE0, 0x70, 0xE3, 0x3C, 0x99, 0x23, 0x2B, 0x55, /* 01C8 */ 0x80, 0xD9, 0x13, 0x82, 0x4E, 0x13, 0x3E, 0x73, /* 01D0 */ 0xB0, 0xBB, 0xC0, 0xF9, 0xF4, 0x0C, 0x49, 0xE4, /* 01D8 */ 0x0F, 0x02, 0x35, 0x32, 0x43, 0xFB, 0x2C, 0xF0, /* 01E0 */ 0xEA, 0x61, 0xC8, 0x87, 0x85, 0xC3, 0x62, 0x62, /* 01E8 */ 0xCF, 0x1E, 0x74, 0x3C, 0xE0, 0x3F, 0x25, 0x3C, /* 01F0 */ 0x6C, 0x78, 0xFA, 0x9E, 0xAF, 0x09, 0xA2, 0x3D, /* 01F8 */ 0x8F, 0x80, 0xE1, 0xFF, 0x7F, 0x1E, 0x81, 0x39, /* 0200 */ 0x9C, 0x07, 0x84, 0x27, 0x07, 0x76, 0x80, 0xC0, /* 0208 */ 0x1C, 0x48, 0x80, 0xC9, 0xF9, 0x02, 0x77, 0x28, /* 0210 */ 0xF0, 0x10, 0xF8, 0x00, 0x1E, 0x25, 0xCE, 0xD1, /* 0218 */ 0x4A, 0x67, 0x86, 0x3C, 0xB9, 0x80, 0x2D, 0xFB, /* 0220 */ 0x1B, 0x40, 0x07, 0x0F, 0xE7, 0x06, 0x91, 0x8D, /* 0228 */ 0x57, 0x80, 0x09, 0x74, 0x38, 0xB1, 0x1E, 0x20, /* 0230 */ 0x4D, 0x14, 0x0C, 0x04, 0xD3, 0xD3, 0x6B, 0x00, /* 0238 */ 0x3E, 0x15, 0x38, 0x37, 0x89, 0x92, 0x0F, 0x8C, /* 0240 */ 0xC2, 0x39, 0xEB, 0x79, 0x84, 0x82, 0x18, 0xD0, /* 0248 */ 0x41, 0x20, 0xE4, 0xE4, 0xA0, 0x80, 0x3A, 0xAA, /* 0250 */ 0xF8, 0x3C, 0x72, 0xAA, 0x0F, 0x3D, 0x9E, 0x94, /* 0258 */ 0x47, 0xE1, 0xAB, 0x8A, 0x0F, 0x21, 0x3E, 0x4F, /* 0260 */ 0x78, 0xF4, 0x3E, 0x29, 0xF0, 0xEF, 0x8C, 0xAF, /* 0268 */ 0x0E, 0x46, 0xB7, 0x9A, 0xE3, 0x0A, 0x0A, 0xCC, /* 0270 */ 0x67, 0x11, 0x4E, 0x50, 0xD7, 0x6D, 0x01, 0xFA, /* 0278 */ 0x29, 0xE0, 0x08, 0x3C, 0x94, 0x77, 0x92, 0xC7, /* 0280 */ 0x90, 0x04, 0xF5, 0x9D, 0x16, 0x40, 0x01, 0xE4, /* 0288 */ 0x9B, 0x81, 0x4F, 0x02, 0x21, 0xFE, 0xFF, 0x4F, /* 0290 */ 0x07, 0x1E, 0xC3, 0xC3, 0x80, 0xD1, 0x8C, 0xCE, /* 0298 */ 0xC3, 0x4F, 0x16, 0x15, 0x77, 0xB2, 0x14, 0xC4, /* 02A0 */ 0x93, 0x75, 0x94, 0xC9, 0xA2, 0x67, 0xE2, 0xAB, /* 02A8 */ 0x85, 0x27, 0x74, 0x4A, 0x41, 0xCE, 0xD1, 0x13, /* 02B0 */ 0xF6, 0x55, 0x04, 0xD6, 0xF9, 0x20, 0xE4, 0x8B, /* 02B8 */ 0x81, 0xA7, 0x61, 0x38, 0x4F, 0x96, 0xC3, 0x79, /* 02C0 */ 0xB2, 0x7C, 0x2C, 0xBE, 0x6A, 0xC0, 0x1F, 0x2D, /* 02C8 */ 0x96, 0xA0, 0xC0, 0xD9, 0x82, 0x1C, 0x1E, 0x13, /* 02D0 */ 0x6F, 0x54, 0xF4, 0x46, 0xE4, 0xE1, 0xF1, 0xCB, /* 02D8 */ 0x81, 0xE7, 0xF3, 0x8C, 0x70, 0x94, 0x6F, 0x12, /* 02E0 */ 0x38, 0x8C, 0xC7, 0x12, 0x0F, 0xD1, 0x97, 0x23, /* 02E8 */ 0x58, 0x13, 0x39, 0x69, 0xDF, 0x16, 0x4E, 0x36, /* 02F0 */ 0xE8, 0x4B, 0x10, 0xBB, 0x1C, 0x01, 0xBF, 0x88, /* 02F8 */ 0x26, 0x86, 0xC1, 0x22, 0x2D, 0x45, 0x11, 0x17, /* 0300 */ 0x45, 0x61, 0x7C, 0xC5, 0x82, 0xFD, 0xFF, 0xBF, /* 0308 */ 0x62, 0x01, 0x16, 0x04, 0x0F, 0x1B, 0x34, 0x87, /* 0310 */ 0x83, 0x97, 0x1E, 0x36, 0x6B, 0x38, 0x07, 0x99, /* 0318 */ 0xD3, 0xF1, 0x48, 0x4E, 0x1B, 0xC6, 0x1D, 0x0B, /* 0320 */ 0xFE, 0x9D, 0xEA, 0xA9, 0xCA, 0xD3, 0x8A, 0xF2, /* 0328 */ 0x64, 0xF5, 0x7A, 0xE5, 0x63, 0x96, 0xA1, 0xCE, /* 0330 */ 0xE0, 0x1D, 0xCB, 0xB7, 0x3C, 0x4F, 0x21, 0x4A, /* 0338 */ 0x9C, 0x97, 0x2D, 0x76, 0xC7, 0x32, 0x48, 0x50, /* 0340 */ 0x23, 0x3F, 0x68, 0x31, 0x94, 0xE0, 0xF1, 0xDE, /* 0348 */ 0xB1, 0x00, 0x6F, 0xFF, 0xFF, 0x3B, 0x16, 0x60, /* 0350 */ 0xFC, 0x04, 0xC1, 0x09, 0x7C, 0xC7, 0x02, 0x1C, /* 0358 */ 0xC5, 0x7E, 0x37, 0xE8, 0x4A, 0x45, 0xEE, 0x58, /* 0360 */ 0x28, 0x0E, 0xAB, 0xB9, 0x63, 0x41, 0x9C, 0x28, /* 0368 */ 0xE6, 0x8A, 0x05, 0x86, 0xFF, 0xFF, 0x15, 0x0B, /* 0370 */ 0xE0, 0x75, 0xC0, 0x2B, 0x16, 0x68, 0xFE, 0xFF, /* 0378 */ 0x57, 0x2C, 0xF0, 0x5E, 0x8E, 0x80, 0xDF, 0x09, /* 0380 */ 0xD1, 0x77, 0x0D, 0x7E, 0x9A, 0xB6, 0xA2, 0xBB, /* 0388 */ 0x06, 0x94, 0x19, 0xBE, 0x07, 0xF9, 0xB0, 0x13, /* 0390 */ 0x2C, 0xD2, 0xA3, 0x8D, 0x6F, 0x49, 0xE1, 0x7C, /* 0398 */ 0xDB, 0x00, 0xD8, 0xF2, 0xFF, 0xBF, 0x6D, 0x00, /* 03A0 */ 0x4C, 0x19, 0xBF, 0x6F, 0x1B, 0xC0, 0x4F, 0xA1, /* 03A8 */ 0x4D, 0x9F, 0x1A, 0x8D, 0x5A, 0x35, 0x28, 0x53, /* 03B0 */ 0xA3, 0x4C, 0x83, 0x5A, 0x7D, 0x2A, 0x35, 0x66, /* 03B8 */ 0x4C, 0xC9, 0xC1, 0xCE, 0x77, 0x0C, 0x2A, 0x6C, /* 03C0 */ 0x65, 0x1A, 0x9A, 0x63, 0x81, 0xD0, 0x10, 0xC7, /* 03C8 */ 0x26, 0x19, 0x01, 0x51, 0x22, 0x10, 0x01, 0x59, /* 03D0 */ 0xFD, 0x6F, 0x42, 0x40, 0xCE, 0x02, 0x22, 0x20, /* 03D8 */ 0x2B, 0x58, 0x9A, 0xC0, 0x9D, 0xFF, 0xD8, 0x28, /* 03E0 */ 0x40, 0xA2, 0x02, 0x84, 0x29, 0x7D, 0x93, 0x09, /* 03E8 */ 0xD4, 0xB2, 0x41, 0x04, 0xF4, 0xFF, 0x3F, 0x42, /* 03F0 */ 0xD9, 0x00, 0x62, 0x82, 0x41, 0x04, 0x64, 0x91, /* 03F8 */ 0x3E, 0x80, 0x98, 0x62, 0x10, 0x01, 0x59, 0xDD, /* 0400 */ 0xA3, 0x40, 0x40, 0xD6, 0x0A, 0x22, 0x20, 0xFF, /* 0408 */ 0xFF, 0x01 }) } } Scope (_SB.PCI0.SAT0.PRT2) { 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, ToUUID ("bdfaef30-aebb-11de-8a39-0800200c9a66"))) { While (One) { Store (ToInteger (Arg2), _T_0) If (LEqual (_T_0, Zero)) { While (One) { Store (ToInteger (Arg1), _T_1) If (LEqual (_T_1, One)) { If (LEqual (PFLV, FDTP)) { Return (Buffer (One) { 0x00 }) } Return (Buffer (One) { 0x0F }) } Else { Return (Buffer (One) { 0x00 }) } Break } } ElseIf (LEqual (_T_0, One)) { Return (One) } ElseIf (LEqual (_T_0, 0x02)) { Store (Zero, GPE3) If (LEqual (And (GL00, 0x08), 0x08)) { Or (GIV0, 0x08, GIV0) } Else { And (GIV0, 0xF7, GIV0) } And (GL08, 0xEF, GL08) Sleep (0xC8) Store (One, GPS3) Store (One, GPE3) Return (One) } ElseIf (LEqual (_T_0, 0x03)) { Store (Zero, GPE3) Store (One, GPS3) Or (GL08, 0x10, GL08) Return (One) } Else { Return (Zero) } Break } } Else { Return (Zero) } } } Scope (_GPE) { Method (_L13, 0, NotSerialized) // _Lxx: Level-Triggered GPE { If (LEqual (PFLV, FDTP)) { Return (Zero) } Store (Zero, GPE3) Or (GL08, 0x10, GL08) Notify (\_SB.PCI0.SAT0, 0x82) Return (Zero) } } Name (_S0, Package (0x04) // _S0_: S0 System State { Zero, Zero, Zero, Zero }) If (SS1) { Name (_S1, Package (0x04) // _S1_: S1 System State { One, 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) {} } Method (WAK, 1, NotSerialized) { } Method (B1B2, 2, NotSerialized) { Return(Or(Arg0, ShiftLeft(Arg1, 8))) } Method (B1B4, 4, NotSerialized) { Store(Arg3, Local0) Or(Arg2, ShiftLeft(Local0, 8), Local0) Or(Arg1, ShiftLeft(Local0, 8), Local0) Or(Arg0, ShiftLeft(Local0, 8), Local0) Return(Local0) } }