/* * Intel ACPI Component Architecture * AML/ASL+ Disassembler version 20160422-64(RM) * Copyright (c) 2000 - 2016 Intel Corporation * * Disassembling to non-symbolic legacy ASL operators * * Disassembly of iASLXxa7h7.aml, Wed Jul 26 01:34:02 2017 * * Original Table Header: * Signature "DSDT" * Length 0x000118CB (71883) * Revision 0x02 * Checksum 0xC6 * OEM ID "Apple " * OEM Table ID "A M I" * OEM Revision 0x00000088 (136) * Compiler ID "INTL" * Compiler Version 0x20120711 (538052369) */ DefinitionBlock ("", "DSDT", 2, "Apple ", "A M I", 0x00000088) { /* * iASL Warning: There were 18 external control methods found during * disassembly, but only 0 were resolved (18 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. * * To specify the tables needed to resolve external control method * references, the -e option can be used to specify the filenames. * Example iASL invocations: * iasl -e ssdt1.aml ssdt2.aml ssdt3.aml -d dsdt.aml * iasl -e dsdt.aml ssdt2.aml -d ssdt1.aml * iasl -e ssdt*.aml -d dsdt.aml * * In addition, the -fe option can be used to specify a file containing * control method external declarations with the associated method * argument counts. Each line of the file must be of the form: * External (, 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 (_PR_.BGIA, IntObj) // Warning: Unknown object External (_PR_.BGMA, IntObj) // Warning: Unknown object External (_PR_.BGMS, IntObj) // Warning: Unknown object External (_PR_.CPU0._PPC) // Warning: Unknown object External (_PR_.CPU0._PSS) // Warning: Unknown object External (_PR_.DTSE) // Warning: Unknown object External (_PR_.DTSF, IntObj) // Warning: Unknown object External (_PR_.TRPD) // Warning: Unknown object External (_PR_.TRPF) // Warning: Unknown object External (_SB_.IAOE.ECTM) // Warning: Unknown object External (_SB_.IAOE.IBT1) // Warning: Unknown object External (_SB_.IAOE.ITIMR) // Warning: Unknown object External (_SB_.IAOE.RCTM) // Warning: Unknown object External (_SB_.IAOE.WKRS) // Warning: Unknown object External (_SB_.PCCD) // Warning: Unknown object External (_SB_.PCCD.PENB) // Warning: Unknown object External (_SB_.PCI0.HDAU.ABAR, IntObj) // Warning: Unknown object External (_SB_.PCI0.HDAU.BARA) // Warning: Unknown object External (_SB_.PCI0.EPON, MethodObj) // Warning: Unknown method, guessing 0 arguments External (_SB_.PCI0.IGPU.CLID) // Warning: Unknown object External (_SB_.PCI0.IGPU.DD1F) // Warning: Unknown object External (_SB_.PCI0.IGPU.GLID, MethodObj) // Warning: Unknown method, guessing 1 arguments External (_SB_.PCI0.IGPU.GSCI, MethodObj) // Warning: Unknown method, guessing 0 arguments External (_SB_.PCI0.IGPU.GSSE) // Warning: Unknown object External (_SB_.PCI0.IGPU.IUEH, MethodObj) // Warning: Unknown method, guessing 1 arguments External (_SB_.PCI0.IGPU.STAT) // Warning: Unknown object External (_SB_.PCI0.IGPU.TCHE) // Warning: Unknown object External (_SB_.PCI0.I2C0.SHUB.PS0X, MethodObj) // Warning: Unknown method, guessing 0 arguments External (_SB_.PCI0.I2C0.SHUB.PS3X, MethodObj) // Warning: Unknown method, guessing 0 arguments External (_SB_.PCI0.PAUD.PUAM, MethodObj) // Warning: Unknown method, guessing 0 arguments External (_SB_.PCI0.PEG0.HPME, MethodObj) // Warning: Unknown method, guessing 0 arguments External (_SB_.PCI0.PEG1.HPME, MethodObj) // Warning: Unknown method, guessing 0 arguments External (_SB_.PCI0.PEG2.HPME, MethodObj) // Warning: Unknown method, guessing 0 arguments External (_SB_.PCI0.RP05.PEGP.EPON, MethodObj) // Warning: Unknown method, guessing 0 arguments External (_SB_.PCI0.XHC_.DUAM, MethodObj) // Warning: Unknown method, guessing 0 arguments External (_SB_.TPM_.PTS_, MethodObj) // Warning: Unknown method, guessing 1 arguments External (_TZ_.TZ00) // Warning: Unknown object External (_TZ_.TZ01) // Warning: Unknown object External (D1F0) // Warning: Unknown object External (D1F1) // Warning: Unknown object External (D1F2) // Warning: Unknown object External (DIDX) // Warning: Unknown object External (DTGP, MethodObj) // Warning: Unknown method, guessing 5 arguments External (GSMI) // Warning: Unknown object External (IGDS, IntObj) // Warning: Unknown object External (LIDS, MethodObj) // Warning: Unknown method, guessing 0 arguments External (M64B, IntObj) // Warning: Unknown object External (M64L, IntObj) // Warning: Unknown object External (MDBG, IntObj) // Warning: Unknown object External (PDC0) // Warning: Unknown object External (PDC1) // Warning: Unknown object External (PDC2) // Warning: Unknown object External (PDC3) // Warning: Unknown object External (PDC4) // Warning: Unknown object External (PDC5) // Warning: Unknown object External (PDC6) // Warning: Unknown object External (PDC7) // Warning: Unknown object External (PS0X, MethodObj) // Warning: Unknown method, guessing 0 arguments External (PS2X, MethodObj) // Warning: Unknown method, guessing 0 arguments External (PS3X, MethodObj) // Warning: Unknown method, guessing 0 arguments External (SGMD) // Warning: Unknown object Name (SP1O, 0x2E) Name (GPIB, 0x0A00) Name (GPIL, 0x10) Name (PMEB, 0x0A20) Name (PMEL, 0x10) Name (HWMB, 0x0A30) Name (HWML, 0x10) Name (IOES, Zero) Name (SMBS, 0x0580) Name (SMBL, 0x20) Name (PMBA, 0x1800) Name (GPBA, 0x1C00) Name (SMIP, 0xB2) Name (DSSP, Zero) Name (FHPP, Zero) Name (APCB, 0xFEC00000) Name (APCL, 0x1000) Name (SMCR, 0x1830) Name (HPTB, 0xFED00000) Name (HPTC, 0xFED1F404) Name (FLSZ, 0x00E00000) Name (SRCB, 0xFED1C000) Name (RCLN, 0x4000) Name (PEBS, 0xF8000000) Name (PELN, 0x04000000) Name (LAPB, 0xFEE00000) Name (EGPB, 0xFED19000) Name (MCHB, 0xFED10000) Name (VTBS, 0xFED90000) Name (VTLN, 0x4000) Name (ACPH, 0xDE) Name (ASSB, Zero) Name (AOTB, Zero) Name (AAXB, Zero) Name (PEHP, One) Name (SHPC, Zero) Name (PEPM, One) Name (PEER, One) Name (PECS, One) Name (ITKE, Zero) Name (MBEC, 0xFFFF) Name (FMBL, One) Name (FDTP, 0x02) Name (FUPS, 0x03) Name (FUWS, 0x04) Name (FEMD, 0x04) Name (BGR, One) Name (BFR, 0x02) Name (BBR, 0x03) Name (BWC, 0x04) Name (BWT1, 0x20) Name (BFHC, 0x43) Name (TRTP, One) Name (WDTE, One) Name (TRTD, 0x02) Name (TRTI, 0x03) Name (BGTI, 0x04) Name (GCDD, One) Name (DSTA, 0x0A) Name (DSLO, 0x0C) Name (DSLC, 0x0E) Name (PITS, 0x10) Name (SBCS, 0x12) Name (SALS, 0x13) Name (LSSS, 0x2A) Name (SOOT, 0x35) Name (PDBR, 0x4D) Name (BW1P, 0x21) Name (BW2C, 0x22) Name (BW2P, 0x23) Name (BSPC, 0x24) Name (BSPP, 0x25) Name (BICO, 0x27) Name (BICC, 0x28) Name (BADH, 0x29) Name (BHB, 0x30) Name (BWB, 0x31) Name (BFS3, 0x32) Name (BFS4, 0x33) Name (BRH, 0x35) Name (BFCC, 0x43) Name (SBDT, 0x4A) Name (BPVC, 0x80) Name (BPVP, 0x81) Name (BRVC, 0x82) Name (BDVC, 0x83) Name (BSRC, 0x84) Name (BBRC, 0x85) Name (BSRP, 0x86) Name (BOBT, 0x37) Name (SMIA, 0xB2) Name (SMIB, 0xB3) Name (OFST, 0x35) Name (TPMF, Zero) Name (TCMF, Zero) Name (TMF1, Zero) Name (TMF2, Zero) Name (TMF3, Zero) Name (TRST, 0x02) Name (HIDK, "MSFT0001") Name (HIDM, "MSFT0003") Name (CIDK, 0x0303D041) Name (CIDM, 0x030FD041) Name (PMLN, 0x0100) Name (GPLN, 0x0400) Name (SS1, Zero) Name (SS2, Zero) Name (SS3, One) Name (SS4, One) Name (IOST, 0x0001) Name (TOPM, 0x00000000) Name (ROMS, 0xFFE00000) Name (VGAF, One) OperationRegion (GNVS, SystemMemory, 0xBF263A98, 0x0350) Field (GNVS, AnyAcc, Lock, Preserve) { OSYS, 16, SMIF, 8, PRM0, 8, PRM1, 8, SCIF, 8, PRM2, 8, PRM3, 8, LCKF, 8, PRM4, 8, PRM5, 8, P80D, 32, PWRS, 8, DBGS, 8, THOF, 8, ACT1, 8, ACTT, 8, PSVT, 8, TC1V, 8, TC2V, 8, TSPV, 8, CRTT, 8, DTSE, 8, DTS1, 8, DTS2, 8, DTSF, 8, Offset (0x1E), Offset (0x25), REVN, 8, Offset (0x28), APIC, 8, TCNT, 8, PCP0, 8, PCP1, 8, PPCM, 8, PPMF, 32, C67L, 8, NATP, 8, CMAP, 8, CMBP, 8, LPTP, 8, FDCP, 8, CMCP, 8, CIRP, 8, SMSC, 8, W381, 8, SMC1, 8, EMAE, 8, EMAP, 16, EMAL, 16, Offset (0x42), MEFE, 8, DSTS, 8, TL2F, 32, MORD, 8, TCGP, 8, PPRP, 32, PPRQ, 8, LPPR, 8, GTF0, 56, GTF2, 56, IDEM, 8, GTF1, 56, BID, 16, PLID, 8, ECTG, 8, SDPO, 8, SKID, 8, Offset (0x70), OSCC, 8, NEXP, 8, SBV1, 8, SBV2, 8, Offset (0x7A), DSEN, 8, ECON, 8, GPIC, 8, CTYP, 8, L01C, 8, VFN0, 8, VFN1, 8, VFN2, 8, VFN3, 8, VFN4, 8, VFN5, 8, VFN6, 8, VFN7, 8, VFN8, 8, VFN9, 8, Offset (0x8F), ATMC, 8, PTMC, 8, ATRA, 8, PTRA, 8, PNHM, 32, Offset (0x9F), 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, BGMA, 64, BGMS, 8, BGIA, 16, ICNF, 8, DSP0, 32, DSP1, 32, NFCE, 8, DFUE, 8, CODS, 8, SNHE, 8, S0ID, 8, CTDB, 8, DKSM, 8, SIO1, 8, SIO2, 8, SPBA, 16, 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, PLT0, 8, RCG0, 16, 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, ANCS, 8, SHTP, 8, BCV4, 8, WTV0, 8, WTV1, 8, APFU, 8, SOHP, 8, NOHP, 8, TBSE, 8, WKFN, 8, PEPC, 16, VRSD, 16, PB1E, 8, GNID, 8, MPLT, 16, GR13, 8, CHGE, 8, Offset (0x2B2), SAC3, 8, PCH3, 8, MEM3, 8, AMC3, 8, SKC3, 8, EFC3, 8, VRC3, 8, G1C3, 8, G2C3, 8, IFC3, 8, Offset (0x2BF), SPST, 8, GN3E, 8, G3AT, 8, G3PT, 8, G3CT, 8, G3HT, 8, GN4E, 8, G4AT, 8, G4PT, 8, G4CT, 8, G4HT, 8, GN5E, 8, G5AT, 8, G5PT, 8, G5CT, 8, G5HT, 8, GN6E, 8, G6AT, 8, G6PT, 8, G6CT, 8, G6HT, 8, ECLP, 8, Offset (0x2D6), G3C3, 8, G4C3, 8, G5C3, 8, G6C3, 8, S1DE, 8, S1AT, 8, S1PT, 8, S1CT, 8, S1HT, 8, S2DE, 8, S2AT, 8, S2PT, 8, S2CT, 8, S2HT, 8, S3DE, 8, S3AT, 8, S3PT, 8, S3CT, 8, S3HT, 8, S4DE, 8, S4AT, 8, S4PT, 8, S4CT, 8, S4HT, 8, S5DE, 8, S5AT, 8, S5PT, 8, S5CT, 8, S5HT, 8, S6DE, 8, S6AT, 8, S6PT, 8, S6CT, 8, S6HT, 8, S7DE, 8, S7AT, 8, S7PT, 8, S7CT, 8, S7HT, 8, S1S3, 8, S2S3, 8, S3S3, 8, S4S3, 8, S5S3, 8, S6S3, 8, S7S3, 8, DACT, 8, Offset (0x33E), TBTS, 8, Offset (0x348), OSTY, 16 } Scope (_SB) { Name (PR00, Package (0x1B) { Package (0x04) { 0x001FFFFF, Zero, LNKF, Zero }, Package (0x04) { 0x001FFFFF, One, LNKD, Zero }, Package (0x04) { 0x001FFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001FFFFF, 0x03, LNKA, Zero }, Package (0x04) { 0x0014FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x001DFFFF, Zero, LNKH, Zero }, Package (0x04) { 0x001AFFFF, Zero, LNKA, Zero }, Package (0x04) { 0x001BFFFF, Zero, LNKG, Zero }, Package (0x04) { 0x0016FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0016FFFF, One, LNKD, Zero }, Package (0x04) { 0x0016FFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x0016FFFF, 0x03, LNKB, Zero }, Package (0x04) { 0x001CFFFF, Zero, LNKA, Zero }, Package (0x04) { 0x001CFFFF, One, LNKB, Zero }, Package (0x04) { 0x001CFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001CFFFF, 0x03, LNKD, Zero }, Package (0x04) { 0x0001FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0001FFFF, One, LNKB, Zero }, Package (0x04) { 0x0001FFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x0001FFFF, 0x03, LNKD, Zero }, Package (0x04) { 0x0002FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0003FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0004FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0004FFFF, One, LNKB, Zero }, Package (0x04) { 0x0004FFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x0004FFFF, 0x03, LNKD, Zero }, Package (0x04) { 0x0019FFFF, Zero, LNKE, Zero } }) Name (AR00, Package (0x1B) { Package (0x04) { 0x001FFFFF, Zero, Zero, 0x15 }, Package (0x04) { 0x001FFFFF, One, Zero, 0x13 }, Package (0x04) { 0x001FFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001FFFFF, 0x03, Zero, 0x10 }, Package (0x04) { 0x0014FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x001DFFFF, Zero, Zero, 0x17 }, Package (0x04) { 0x001AFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x001BFFFF, Zero, Zero, 0x16 }, Package (0x04) { 0x0016FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0016FFFF, One, Zero, 0x13 }, Package (0x04) { 0x0016FFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x0016FFFF, 0x03, Zero, 0x11 }, Package (0x04) { 0x001CFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x001CFFFF, One, Zero, 0x11 }, Package (0x04) { 0x001CFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001CFFFF, 0x03, Zero, 0x13 }, Package (0x04) { 0x0001FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0001FFFF, One, Zero, 0x11 }, Package (0x04) { 0x0001FFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x0001FFFF, 0x03, Zero, 0x13 }, Package (0x04) { 0x0002FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0003FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0004FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0004FFFF, One, Zero, 0x11 }, Package (0x04) { 0x0004FFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x0004FFFF, 0x03, Zero, 0x13 }, Package (0x04) { 0x0019FFFF, Zero, Zero, 0x14 } }) 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 (PR18, 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 (AR18, 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 (PRSA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {4,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 } 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 ,, _Y02, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000C4000, // Range Minimum 0x000C7FFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y04, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000C8000, // Range Minimum 0x000CBFFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y06, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000CC000, // Range Minimum 0x000CFFFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y08, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000D0000, // Range Minimum 0x000D3FFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y0A, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000D4000, // Range Minimum 0x000D7FFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y0C, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000D8000, // Range Minimum 0x000DBFFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y0E, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000DC000, // Range Minimum 0x000DFFFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y10, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000E0000, // Range Minimum 0x000E3FFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y12, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000E4000, // Range Minimum 0x000E7FFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y14, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000E8000, // Range Minimum 0x000EBFFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y16, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000EC000, // Range Minimum 0x000EFFFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y18, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000F0000, // Range Minimum 0x000FFFFF, // Range Maximum 0x00000000, // Translation Offset 0x00010000, // Length ,, _Y1A, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0xFEAFFFFF, // Range Maximum 0x00000000, // Translation Offset 0xFEB00000, // Length ,, _Y1C, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000010000, // Range Minimum 0x000000000001FFFF, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000010000, // Length ,, _Y1E, AddressRangeMemory, TypeStatic) }) Name (BUF1, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, // Granularity 0x0000, // Range Minimum 0x00FF, // Range Maximum 0x0000, // Translation Offset 0x0100, // Length ,, _Y01) 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 ,, _Y03, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000C4000, // Range Minimum 0x000C7FFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y05, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000C8000, // Range Minimum 0x000CBFFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y07, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000CC000, // Range Minimum 0x000CFFFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y09, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000D0000, // Range Minimum 0x000D3FFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y0B, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000D4000, // Range Minimum 0x000D7FFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y0D, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000D8000, // Range Minimum 0x000DBFFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y0F, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000DC000, // Range Minimum 0x000DFFFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y11, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000E0000, // Range Minimum 0x000E3FFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y13, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000E4000, // Range Minimum 0x000E7FFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y15, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000E8000, // Range Minimum 0x000EBFFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y17, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000EC000, // Range Minimum 0x000EFFFF, // Range Maximum 0x00000000, // Translation Offset 0x00004000, // Length ,, _Y19, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000F0000, // Range Minimum 0x000FFFFF, // Range Maximum 0x00000000, // Translation Offset 0x00010000, // Length ,, _Y1B, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0xFEAFFFFF, // Range Maximum 0x00000000, // Translation Offset 0xFEB00000, // Length ,, _Y1D, AddressRangeMemory, TypeStatic) }) Name (EP_B, Zero) Name (MH_B, Zero) Name (PC_B, Zero) Name (PC_L, Zero) Name (DM_B, Zero) Method (GEPB, 0, Serialized) { If (LEqual (EP_B, Zero)) { ShiftLeft (EPBR, 0x0C, EP_B) } Return (EP_B) } Method (GMHB, 0, Serialized) { If (LEqual (MH_B, Zero)) { ShiftLeft (MHBR, 0x0F, MH_B) } Return (MH_B) } Method (GPCB, 0, Serialized) { If (LEqual (PC_B, Zero)) { ShiftLeft (PXBR, 0x1A, PC_B) } Return (PC_B) } Method (GPCL, 0, Serialized) { If (LEqual (PC_L, Zero)) { ShiftRight (0x10000000, PXSZ, PC_L) } Return (PC_L) } Method (GDMB, 0, Serialized) { If (LEqual (DM_B, Zero)) { ShiftLeft (DIBR, 0x0C, DM_B) } Return (DM_B) } Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Store (OSTY, Local1) Store (GPCL (), Local0) If (LGreaterEqual (Local1, 0x07D9)) { CreateWordField (BUF0, \_SB.PCI0._Y00._MAX, PBMX) // _MAX: Maximum Base Address Store (Subtract (ShiftRight (Local0, 0x14), 0x02), PBMX) } Else { CreateWordField (BUF1, \_SB.PCI0._Y01._MAX, PBM2) // _MAX: Maximum Base Address Store (Subtract (ShiftRight (Local0, 0x14), 0x02), PBM2) } If (LGreaterEqual (Local1, 0x07D9)) { CreateWordField (BUF0, \_SB.PCI0._Y00._LEN, PBLN) // _LEN: Length Store (Subtract (ShiftRight (Local0, 0x14), One), PBLN) } Else { CreateWordField (BUF1, \_SB.PCI0._Y01._LEN, PBL2) // _LEN: Length Store (Subtract (ShiftRight (Local0, 0x14), One), PBL2) } If (PM1L) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y02._LEN, C0LN) // _LEN: Length Store (Zero, C0LN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y03._LEN, C0L2) // _LEN: Length Store (Zero, C0L2) } } If (LEqual (PM1L, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y02._RW, C0RW) // _RW_: Read-Write Status Store (Zero, C0RW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y03._RW, C0R2) // _RW_: Read-Write Status Store (Zero, C0R2) } } If (PM1H) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y04._LEN, C4LN) // _LEN: Length Store (Zero, C4LN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y05._LEN, C4L2) // _LEN: Length Store (Zero, C4L2) } } If (LEqual (PM1H, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y04._RW, C4RW) // _RW_: Read-Write Status Store (Zero, C4RW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y05._RW, C4R2) // _RW_: Read-Write Status Store (Zero, C4R2) } } If (PM2L) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y06._LEN, C8LN) // _LEN: Length Store (Zero, C8LN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y07._LEN, C8L2) // _LEN: Length Store (Zero, C8L2) } } If (LEqual (PM2L, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y06._RW, C8RW) // _RW_: Read-Write Status Store (Zero, C8RW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y07._RW, C8R2) // _RW_: Read-Write Status Store (Zero, C8R2) } } If (PM2H) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y08._LEN, CCLN) // _LEN: Length Store (Zero, CCLN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y09._LEN, CCL2) // _LEN: Length Store (Zero, CCL2) } } If (LEqual (PM2H, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y08._RW, CCRW) // _RW_: Read-Write Status Store (Zero, CCRW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y09._RW, CCR2) // _RW_: Read-Write Status Store (Zero, CCR2) } } If (PM3L) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y0A._LEN, D0LN) // _LEN: Length Store (Zero, D0LN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y0B._LEN, D0L2) // _LEN: Length Store (Zero, D0L2) } } If (LEqual (PM3L, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y0A._RW, D0RW) // _RW_: Read-Write Status Store (Zero, D0RW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y0B._RW, D0R2) // _RW_: Read-Write Status Store (Zero, D0R2) } } If (PM3H) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y0C._LEN, D4LN) // _LEN: Length Store (Zero, D4LN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y0D._LEN, D4L2) // _LEN: Length Store (Zero, D4L2) } } If (LEqual (PM3H, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y0C._RW, D4RW) // _RW_: Read-Write Status Store (Zero, D4RW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y0D._RW, D4R2) // _RW_: Read-Write Status Store (Zero, D4R2) } } If (PM4L) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y0E._LEN, D8LN) // _LEN: Length Store (Zero, D8LN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y0F._LEN, D8L2) // _LEN: Length Store (Zero, D8L2) } } If (LEqual (PM4L, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y0E._RW, D8RW) // _RW_: Read-Write Status Store (Zero, D8RW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y0F._RW, D8R2) // _RW_: Read-Write Status Store (Zero, D8R2) } } If (PM4H) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y10._LEN, DCLN) // _LEN: Length Store (Zero, DCLN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y11._LEN, DCL2) // _LEN: Length Store (Zero, DCL2) } } If (LEqual (PM4H, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y10._RW, DCRW) // _RW_: Read-Write Status Store (Zero, DCRW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y11._RW, DCR2) // _RW_: Read-Write Status Store (Zero, DCR2) } } If (PM5L) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y12._LEN, E0LN) // _LEN: Length Store (Zero, E0LN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y13._LEN, E0L2) // _LEN: Length Store (Zero, E0L2) } } If (LEqual (PM5L, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y12._RW, E0RW) // _RW_: Read-Write Status Store (Zero, E0RW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y13._RW, E0R2) // _RW_: Read-Write Status Store (Zero, E0R2) } } If (PM5H) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y14._LEN, E4LN) // _LEN: Length Store (Zero, E4LN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y15._LEN, E4L2) // _LEN: Length Store (Zero, E4L2) } } If (LEqual (PM5H, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y14._RW, E4RW) // _RW_: Read-Write Status Store (Zero, E4RW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y15._RW, E4R2) // _RW_: Read-Write Status Store (Zero, E4R2) } } If (PM6L) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y16._LEN, E8LN) // _LEN: Length Store (Zero, E8LN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y17._LEN, E8L2) // _LEN: Length Store (Zero, E8L2) } } If (LEqual (PM6L, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y16._RW, E8RW) // _RW_: Read-Write Status Store (Zero, E8RW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y17._RW, E8R2) // _RW_: Read-Write Status Store (Zero, E8R2) } } If (PM6H) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y18._LEN, ECLN) // _LEN: Length Store (Zero, ECLN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y19._LEN, ECL2) // _LEN: Length Store (Zero, ECL2) } } If (LEqual (PM6H, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y18._RW, ECRW) // _RW_: Read-Write Status Store (Zero, ECRW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y19._RW, ECR2) // _RW_: Read-Write Status Store (Zero, ECR2) } } If (PM0H) { If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y1A._LEN, F0LN) // _LEN: Length Store (Zero, F0LN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y1B._LEN, F0L2) // _LEN: Length Store (Zero, F0L2) } } If (LEqual (PM0H, One)) { If (LGreaterEqual (Local1, 0x07D9)) { CreateBitField (BUF0, \_SB.PCI0._Y1A._RW, F0RW) // _RW_: Read-Write Status Store (Zero, F0RW) } Else { CreateBitField (BUF1, \_SB.PCI0._Y1B._RW, F0R2) // _RW_: Read-Write Status Store (Zero, F0R2) } } If (LGreaterEqual (Local1, 0x07D9)) { CreateDWordField (BUF0, \_SB.PCI0._Y1C._MIN, M1MN) // _MIN: Minimum Base Address CreateDWordField (BUF0, \_SB.PCI0._Y1C._MAX, M1MX) // _MAX: Maximum Base Address CreateDWordField (BUF0, \_SB.PCI0._Y1C._LEN, M1LN) // _LEN: Length ShiftLeft (TLUD, 0x14, M1MN) Add (Subtract (M1MX, M1MN), One, M1LN) } Else { CreateDWordField (BUF1, \_SB.PCI0._Y1D._MIN, M1N2) // _MIN: Minimum Base Address CreateDWordField (BUF1, \_SB.PCI0._Y1D._MAX, M1X2) // _MAX: Maximum Base Address CreateDWordField (BUF1, \_SB.PCI0._Y1D._LEN, M1L2) // _LEN: Length ShiftLeft (TLUD, 0x14, M1N2) Add (Subtract (M1X2, M1N2), One, M1L2) } If (LGreaterEqual (Local1, 0x07D9)) { If (LEqual (M64L, Zero)) { CreateQWordField (BUF0, \_SB.PCI0._Y1E._LEN, MSLN) // _LEN: Length Store (Zero, MSLN) } Else { CreateQWordField (BUF0, \_SB.PCI0._Y1E._LEN, M2LN) // _LEN: Length CreateQWordField (BUF0, \_SB.PCI0._Y1E._MIN, M2MN) // _MIN: Minimum Base Address CreateQWordField (BUF0, \_SB.PCI0._Y1E._MAX, M2MX) // _MAX: Maximum Base Address Store (M64L, M2LN) Store (M64B, M2MN) Subtract (Add (M2MN, M2LN), One, M2MX) } } If (LGreaterEqual (Local1, 0x07D9)) { Return (BUF0) } Else { Return (BUF1) } } 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 (LEqual (Arg0, GUID)) { Store (CDW2, SUPP) Store (CDW3, CTRL) If (LEqual (NEXP, Zero)) { And (CTRL, 0xFFFFFFF8, CTRL) } If (NEXP) { If (Not (And (CDW1, One))) { If (And (CTRL, One)) { NHPG () } If (And (CTRL, 0x04)) { NPME () } } } If (LNotEqual (Arg1, One)) { Or (CDW1, 0x08, CDW1) } If (LNotEqual (CDW3, CTRL)) { Or (CDW1, 0x10, CDW1) } Store (CTRL, CDW3) Store (CTRL, OSCC) Return (Local0) } Else { Or (CDW1, 0x04, CDW1) Return (Local0) } } Scope (\_SB.PCI0) { Method (AR00, 0, NotSerialized) { Return (^^AR00) } Method (PR00, 0, NotSerialized) { Return (^^PR00) } Method (AR02, 0, NotSerialized) { Return (^^AR02) } Method (PR02, 0, NotSerialized) { Return (^^PR02) } Method (AR04, 0, NotSerialized) { Return (^^AR04) } Method (PR04, 0, NotSerialized) { Return (^^PR04) } Method (AR05, 0, NotSerialized) { Return (^^AR05) } Method (PR05, 0, NotSerialized) { Return (^^PR05) } Method (AR06, 0, NotSerialized) { Return (^^AR06) } Method (PR06, 0, NotSerialized) { Return (^^PR06) } Method (AR07, 0, NotSerialized) { Return (^^AR07) } Method (PR07, 0, NotSerialized) { Return (^^PR07) } Method (AR08, 0, NotSerialized) { Return (^^AR08) } Method (PR08, 0, NotSerialized) { Return (^^PR08) } Method (AR09, 0, NotSerialized) { Return (^^AR09) } Method (PR09, 0, NotSerialized) { Return (^^PR09) } Method (AR0E, 0, NotSerialized) { Return (^^AR0E) } Method (PR0E, 0, NotSerialized) { Return (^^PR0E) } Method (AR0F, 0, NotSerialized) { Return (^^AR0F) } Method (PR0F, 0, NotSerialized) { Return (^^PR0F) } Method (AR0A, 0, NotSerialized) { Return (^^AR0A) } Method (PR0A, 0, NotSerialized) { Return (^^PR0A) } Method (AR0B, 0, NotSerialized) { Return (^^AR0B) } Method (PR0B, 0, NotSerialized) { Return (^^PR0B) } Device (PEG0) { Name (_ADR, 0x00010000) // _ADR: Address Device (GFX0) { Name (_ADR, Zero) Name (_SUN, One) } Device (HDAU) { Name (_ADR, One) } Device (PEGP) { Name (_ADR, 0x0F) } } Device (PEG1) { Name (_ADR, 0x00010001) // _ADR: Address Device (PEGP) { Name (_ADR, Zero) // _ADR: Address } } Device (PEG2) { Name (_ADR, 0x00010002) // _ADR: Address Device (PEGP) { Name (_ADR, Zero) // _ADR: Address } } Device (HDAU) { Name (_ADR, 0x00030000) // _ADR: Address } Device (IGPU) { Name (_ADR, 0x00020000) // _ADR: Address } Device (B0D4) { Name (_ADR, 0x00040000) // _ADR: Address } } Device (TPMX) { Name (_HID, EisaId ("PNP0C01")) // _HID: Hardware ID Name (_UID, One) // _UID: Unique ID Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0xFED40000, // Address Base 0x00005000, // Address Length ) }) Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (CRS) } Method (_STA, 0, NotSerialized) // _STA: Status { If (TPMF) { Return (Zero) } Return (0x0F) } } Device (LPCB) { Name (_ADR, 0x001F0000) // _ADR: Address 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() { IRQNoFlags() { 0, 8, 11, 15 } Memory32Fixed (ReadWrite, 0xFED00000, // Address Base 0x00000400, // Address Length _Y1F) }) Method (_STA, 0, NotSerialized) // _STA: Status { If (HPAE) { Return (0x0F) } Return (Zero) } Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { If (HPAE) { CreateDWordField (BUF0, \_SB.PCI0.LPCB.HPET._Y1F._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 ) }) } Device (MATH) { Name (_HID, EisaId ("PNP0C04")) // _HID: Hardware ID Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings { IO (Decode16, 0x00F0, // Range Minimum 0x00F0, // Range Maximum 0x01, // Alignment 0x01, // Length ) IRQNoFlags () {13} }) Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (PCHS, One)) { Return (0x1F) } Else { Return (Zero) } } } Device (LDRC) { Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID Name (_UID, 0x02) // _UID: Unique ID Name (BUF0, ResourceTemplate () { IO (Decode16, 0x002E, // Range Minimum 0x002E, // Range Maximum 0x01, // Alignment 0x02, // Length ) IO (Decode16, 0x004E, // Range Minimum 0x004E, // Range Maximum 0x01, // Alignment 0x02, // Length ) IO (Decode16, 0x0061, // Range Minimum 0x0061, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0063, // Range Minimum 0x0063, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0065, // Range Minimum 0x0065, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0067, // Range Minimum 0x0067, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0080, // Range Minimum 0x0080, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0092, // Range Minimum 0x0092, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x00B2, // Range Minimum 0x00B2, // Range Maximum 0x01, // Alignment 0x02, // Length ) IO (Decode16, 0x0680, // Range Minimum 0x0680, // Range Maximum 0x01, // Alignment 0x20, // Length ) IO (Decode16, 0xFFFF, // Range Minimum 0xFFFF, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0xFFFF, // Range Minimum 0xFFFF, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0xFFFF, // Range Minimum 0xFFFF, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 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 (PCHS, One)) { 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 0x02, // Length ) }) } 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 ) }) } 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 { Return (0x0F) } Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Return (BUF0) } } Device (SIO1) { Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID Name (_UID, 0x0111) // _UID: Unique ID Name (CRS, ResourceTemplate () { IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x00, // Alignment 0x00, // Length _Y20) IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x00, // Alignment 0x00, // Length _Y21) IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x00, // Alignment 0x00, // Length _Y22) IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x00, // Alignment 0x00, // Length _Y23) }) Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { If (LAnd (LLess (SP1O, 0x03F0), LGreater (SP1O, 0xF0))) { CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y20._MIN, IOIM) // _MIN: Minimum Base Address CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y20._MAX, IOIX) // _MAX: Maximum Base Address CreateByteField (CRS, \_SB.PCI0.LPCB.SIO1._Y20._LEN, IOIL) // _LEN: Length Store (SP1O, IOIM) Store (SP1O, IOIX) Store (0x02, IOIL) } If (GPIB) { CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y21._MIN, GP0M) // _MIN: Minimum Base Address CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y21._MAX, GP0X) // _MAX: Maximum Base Address CreateByteField (CRS, \_SB.PCI0.LPCB.SIO1._Y21._LEN, GP0L) // _LEN: Length Store (GPIB, GP0M) Store (GPIB, GP0X) Store (GPIL, GP0L) } If (HWMB) { CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y22._MIN, HW0M) // _MIN: Minimum Base Address CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y22._MAX, HW0X) // _MAX: Maximum Base Address CreateByteField (CRS, \_SB.PCI0.LPCB.SIO1._Y22._LEN, HW0L) // _LEN: Length Store (HWMB, HW0M) Store (HWMB, HW0X) Store (HWML, HW0L) } If (PMEB) { CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y23._MIN, PM0M) // _MIN: Minimum Base Address CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y23._MAX, PM0X) // _MAX: Maximum Base Address CreateByteField (CRS, \_SB.PCI0.LPCB.SIO1._Y23._LEN, PM0L) // _LEN: Length Store (PMEB, PM0M) Store (PMEB, PM0X) Store (PMEL, PM0L) } Return (CRS) } Name (DCAT, Package (0x16) { One, 0x02, 0x03, Zero, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0xFF, 0xFF, 0xFF, 0x06, 0xFF, 0xFF, 0xFF, 0x0A, 0xFF, 0xFF, 0xFF }) Mutex (MUT0, 0x00) Method (ENFG, 1, NotSerialized) { Acquire (MUT0, 0xFFFF) Store (0x87, INDX) Store (One, INDX) Store (0x55, INDX) If (LEqual (SP1O, 0x2E)) { Store (0x55, INDX) } Else { Store (0xAA, INDX) } Store (Arg0, LDN) } Method (EXFG, 0, NotSerialized) { Store (0x02, INDX) Store (0x02, DATA) Release (MUT0) } Method (LPTM, 1, NotSerialized) { ENFG (CGLD (Arg0)) And (OPT0, Arg0, Local0) EXFG () Return (Local0) } Method (UHID, 1, NotSerialized) { ENFG (CGLD (Arg0)) And (OPT0, 0x70, Local0) EXFG () If (Local0) { Return (0x1005D041) } Else { Return (0x0105D041) } } OperationRegion (IOID, SystemIO, SP1O, 0x02) Field (IOID, ByteAcc, NoLock, Preserve) { INDX, 8, DATA, 8 } IndexField (INDX, DATA, ByteAcc, NoLock, Preserve) { Offset (0x07), LDN, 8, Offset (0x21), SCF1, 8, SCF2, 8, SCF3, 8, SCF4, 8, SCF5, 8, SCF6, 8, Offset (0x29), CKCF, 8, Offset (0x30), ACTR, 8, Offset (0x60), IOAH, 8, IOAL, 8, IOH2, 8, IOL2, 8, Offset (0x70), INTR, 8, Offset (0x74), DMCH, 8, Offset (0xD0), RGD0, 8, RGD1, 8, RGD2, 8, RGD3, 8, RGD4, 8, Offset (0xE0), RGE0, 8, RGE1, 8, RGE2, 8, RGE3, 8, RGE4, 8, RGE5, 8, RGE6, 8, RGE7, 8, RGE8, 8, RGE9, 8, Offset (0xF0), OPT0, 8, OPT1, 8, OPT2, 8, OPT3, 8, OPT4, 8, OPT5, 8, OPT6, 8, OPT7, 8, OPT8, 8, OPT9, 8 } OperationRegion (RNTR, SystemIO, PMEB, PMEL) Field (RNTR, ByteAcc, NoLock, Preserve) { PMES, 8, Offset (0x04), PMEE, 1, Offset (0x05), Offset (0x08), PMS3, 8, PMS2, 8, PMS1, 8, Offset (0x0C), PME3, 8, PME2, 8, PME1, 8 } Method (CGLD, 1, NotSerialized) { Return (DerefOf (Index (DCAT, Arg0))) } Method (DSTA, 1, NotSerialized) { ENFG (CGLD (Arg0)) Store (ACTR, Local0) EXFG () If (LEqual (Local0, 0xFF)) { Return (Zero) } And (Local0, One, Local0) If (LGreaterEqual (Arg0, 0x10)) { Or (IOES, ShiftLeft (Local0, And (Arg0, 0x0F)), IOES) } Else { Or (IOST, ShiftLeft (Local0, Arg0), IOST) } If (Local0) { Return (0x0F) } ElseIf (LGreaterEqual (Arg0, 0x10)) { Store (IOES, Local0) } Else { Store (IOST, Local0) } } Method (DCNT, 2, NotSerialized) { ENFG (CGLD (Arg0)) If (LAnd (LLess (DMCH, 0x04), LNotEqual (And (DMCH, 0x03, Local1), Zero))) { RDMA (Arg0, Arg1, Increment (Local1)) } Store (Arg1, ACTR) ShiftLeft (IOAH, 0x08, Local1) Or (IOAL, Local1, Local1) RRIO (Arg0, Arg1, Local1, 0x08) EXFG () } Name (CRS1, ResourceTemplate () { IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x01, // Alignment 0x00, // Length _Y26) IRQNoFlags (_Y24) {} DMA (Compatibility, NotBusMaster, Transfer8, _Y25) {} }) CreateWordField (CRS1, \_SB.PCI0.LPCB.SIO1._Y24._INT, IRQM) // _INT: Interrupts CreateByteField (CRS1, \_SB.PCI0.LPCB.SIO1._Y25._DMA, DMAM) // _DMA: Direct Memory Access CreateWordField (CRS1, \_SB.PCI0.LPCB.SIO1._Y26._MIN, IO11) // _MIN: Minimum Base Address CreateWordField (CRS1, \_SB.PCI0.LPCB.SIO1._Y26._MAX, IO12) // _MAX: Maximum Base Address CreateByteField (CRS1, \_SB.PCI0.LPCB.SIO1._Y26._LEN, LEN1) // _LEN: Length Name (CRS2, ResourceTemplate () { IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x01, // Alignment 0x00, // Length _Y29) IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x01, // Alignment 0x00, // Length _Y2A) IRQNoFlags (_Y27) {} DMA (Compatibility, NotBusMaster, Transfer8, _Y28) {2} }) CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y27._INT, IRQE) // _INT: Interrupts CreateByteField (CRS2, \_SB.PCI0.LPCB.SIO1._Y28._DMA, DMAE) // _DMA: Direct Memory Access CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y29._MIN, IO21) // _MIN: Minimum Base Address CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y29._MAX, IO22) // _MAX: Maximum Base Address CreateByteField (CRS2, \_SB.PCI0.LPCB.SIO1._Y29._LEN, LEN2) // _LEN: Length CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y2A._MIN, IO31) // _MIN: Minimum Base Address CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y2A._MAX, IO32) // _MAX: Maximum Base Address CreateByteField (CRS2, \_SB.PCI0.LPCB.SIO1._Y2A._LEN, LEN3) // _LEN: Length Name (CRS4, ResourceTemplate () { IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x01, // Alignment 0x00, // Length _Y2C) IRQ (Edge, ActiveLow, Shared, _Y2B) {} }) CreateWordField (CRS4, \_SB.PCI0.LPCB.SIO1._Y2B._INT, IRQL) // _INT: Interrupts CreateWordField (CRS4, \_SB.PCI0.LPCB.SIO1._Y2C._MIN, IOHL) // _MIN: Minimum Base Address CreateWordField (CRS4, \_SB.PCI0.LPCB.SIO1._Y2C._MAX, IORL) // _MAX: Maximum Base Address CreateByteField (CRS4, \_SB.PCI0.LPCB.SIO1._Y2C._ALN, ALMN) // _ALN: Alignment CreateByteField (CRS4, \_SB.PCI0.LPCB.SIO1._Y2C._LEN, LENG) // _LEN: Length Method (DCRS, 2, NotSerialized) { ENFG (CGLD (Arg0)) ShiftLeft (IOAH, 0x08, IO11) Or (IOAL, IO11, IO11) Store (IO11, IO12) Store (0x08, LEN1) If (INTR) { ShiftLeft (One, INTR, IRQM) } Else { Store (Zero, IRQM) } If (LOr (LGreater (DMCH, 0x03), LEqual (Arg1, Zero))) { Store (Zero, DMAM) } Else { And (DMCH, 0x03, Local1) ShiftLeft (One, Local1, DMAM) } EXFG () Return (CRS1) } Method (DCR2, 2, NotSerialized) { ENFG (CGLD (Arg0)) ShiftLeft (IOAH, 0x08, IO21) Or (IOAL, IO21, IO21) Store (IO21, IO22) Store (0x08, LEN2) ShiftLeft (IOH2, 0x08, IO31) Or (IOL2, IO31, IO31) Store (IO21, IO32) Store (0x08, LEN3) If (INTR) { ShiftLeft (One, INTR, IRQE) } Else { Store (Zero, IRQE) } If (LOr (LGreater (DMCH, 0x03), LEqual (Arg1, Zero))) { Store (Zero, DMAE) } Else { And (DMCH, 0x03, Local1) ShiftLeft (One, Local1, DMAE) } EXFG () Return (CRS2) } Method (DCR4, 2, NotSerialized) { ENFG (CGLD (Arg0)) ShiftLeft (IOAH, 0x08, IOHL) Or (IOAL, IOHL, IOHL) Store (IOHL, IORL) Store (0x08, LENG) If (INTR) { And (INTR, 0x0F, INTR) ShiftLeft (One, INTR, IRQL) } Else { Store (Zero, IRQL) } EXFG () Return (CRS4) } Method (DSRS, 2, NotSerialized) { If (LEqual (Arg1, 0x02)) { If (LPTM (Arg1)) { DSR2 (Arg0, Arg1) } } Else { CreateWordField (Arg0, 0x09, IRQM) CreateByteField (Arg0, 0x0C, DMAM) CreateWordField (Arg0, 0x02, IO11) ENFG (CGLD (Arg1)) And (IO11, 0xFF, IOAL) ShiftRight (IO11, 0x08, IOAH) If (IRQM) { FindSetRightBit (IRQM, Local0) Subtract (Local0, One, INTR) } Else { Store (Zero, INTR) } If (DMAM) { FindSetRightBit (DMAM, Local0) Subtract (Local0, One, DMCH) } Else { Store (0x04, DMCH) } EXFG () DCNT (Arg1, One) Store (Arg1, Local2) If (LGreater (Local2, Zero)) { Subtract (Local2, One, Local2) } } } Method (DSR2, 2, NotSerialized) { CreateWordField (Arg0, 0x11, IRQT) CreateByteField (Arg0, 0x14, DMAT) CreateWordField (Arg0, 0x02, IOT1) CreateWordField (Arg0, 0x0A, IOT2) ENFG (CGLD (Arg1)) And (IOT1, 0xFF, IOAL) ShiftRight (IOT1, 0x08, IOAH) And (IOT2, 0xFF, IOL2) ShiftRight (IOT2, 0x08, IOH2) If (IRQT) { FindSetRightBit (IRQT, Local0) Subtract (Local0, One, INTR) } Else { Store (Zero, INTR) } If (DMAT) { FindSetRightBit (DMAT, Local0) Subtract (Local0, One, DMCH) } Else { Store (0x04, DMCH) } EXFG () DCNT (Arg1, One) Store (Arg1, Local2) If (LGreater (Local2, Zero)) { Subtract (Local2, One, Local2) } } Method (DSR4, 2, NotSerialized) { CreateWordField (Arg0, 0x02, IOHL) CreateWordField (Arg0, 0x09, IRQL) ENFG (CGLD (Arg1)) And (IOHL, 0xFF, IOAL) ShiftRight (IOHL, 0x08, IOAH) If (IRQL) { FindSetRightBit (IRQL, Local0) Subtract (Local0, One, INTR) } Else { Store (Zero, INTR) } EXFG () DCNT (Arg1, One) Store (Arg1, Local2) If (LGreater (Local2, Zero)) { Subtract (Local2, One, Local2) } } } Name (PMFG, Zero) Method (SIOS, 1, NotSerialized) { Store ("SIOS", Debug) If (LNotEqual (0x05, Arg0)) { ^SIO1.ENFG (0x04) If (KBFG) { Or (^SIO1.OPT0, 0x08, ^SIO1.OPT0) } Else { And (^SIO1.OPT0, 0xF7, ^SIO1.OPT0) } If (MSFG) { Or (^SIO1.OPT0, 0x10, ^SIO1.OPT0) } Else { And (^SIO1.OPT0, 0xEF, ^SIO1.OPT0) } Store (0xFF, ^SIO1.OPT1) And (0xBF, ^SIO1.OPT2, Local0) Store (Local0, ^SIO1.OPT2) Store (0x06, ^SIO1.LDN) Store (Zero, ^SIO1.ACTR) Store (0x05, ^SIO1.LDN) Store (Zero, ^SIO1.ACTR) ^SIO1.EXFG () } } Method (SIOW, 1, NotSerialized) { Store ("SIOW", Debug) ^SIO1.ENFG (0x04) Store (^SIO1.OPT1, PMFG) Store (0xFF, ^SIO1.OPT1) And (^SIO1.OPT0, 0xE7, ^SIO1.OPT0) Or (0x40, ^SIO1.OPT2, Local0) Store (Local0, ^SIO1.OPT2) Store (0x06, ^SIO1.LDN) Store (One, ^SIO1.ACTR) Store (0x05, ^SIO1.LDN) Store (One, ^SIO1.ACTR) ^SIO1.EXFG () } Device (UAR1) { Name (_UID, One) // _UID: Unique ID Method (_HID, 0, NotSerialized) // _HID: Hardware ID { Return (^^SIO1.UHID (Zero)) } Method (_STA, 0, NotSerialized) // _STA: Status { Return (^^SIO1.DSTA (Zero)) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { ^^SIO1.DCNT (Zero, Zero) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (^^SIO1.DCRS (Zero, Zero)) } Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings { ^^SIO1.DSRS (Arg0, Zero) } Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x03F8, // Range Minimum 0x03F8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {4} DMA (Compatibility, NotBusMaster, Transfer8, ) {} } StartDependentFnNoPri () { IO (Decode16, 0x03F8, // Range Minimum 0x03F8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8, ) {} } StartDependentFnNoPri () { IO (Decode16, 0x02F8, // Range Minimum 0x02F8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8, ) {} } StartDependentFnNoPri () { IO (Decode16, 0x03E8, // Range Minimum 0x03E8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8, ) {} } StartDependentFnNoPri () { IO (Decode16, 0x02E8, // Range Minimum 0x02E8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8, ) {} } EndDependentFn () }) } Device (RMSC) { Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID Name (_UID, 0x10) // _UID: Unique ID Name (CRS1, ResourceTemplate () { IO (Decode16, 0x0010, // Range Minimum 0x0010, // Range Maximum 0x00, // Alignment 0x10, // Length ) IO (Decode16, 0x0022, // Range Minimum 0x0022, // Range Maximum 0x00, // Alignment 0x1E, // Length ) IO (Decode16, 0x0044, // Range Minimum 0x0044, // Range Maximum 0x00, // Alignment 0x1C, // Length ) IO (Decode16, 0x0062, // Range Minimum 0x0062, // Range Maximum 0x00, // Alignment 0x02, // Length ) IO (Decode16, 0x0065, // Range Minimum 0x0065, // Range Maximum 0x00, // Alignment 0x0B, // Length ) IO (Decode16, 0x0072, // Range Minimum 0x0072, // Range Maximum 0x00, // Alignment 0x0E, // Length ) IO (Decode16, 0x0080, // Range Minimum 0x0080, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x0084, // Range Minimum 0x0084, // Range Maximum 0x00, // Alignment 0x03, // Length ) IO (Decode16, 0x0088, // Range Minimum 0x0088, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x008C, // Range Minimum 0x008C, // Range Maximum 0x00, // Alignment 0x03, // Length ) IO (Decode16, 0x0090, // Range Minimum 0x0090, // Range Maximum 0x00, // Alignment 0x10, // Length ) IO (Decode16, 0x00A2, // Range Minimum 0x00A2, // Range Maximum 0x00, // Alignment 0x1E, // Length ) IO (Decode16, 0x00E0, // Range Minimum 0x00E0, // Range Maximum 0x00, // Alignment 0x10, // Length ) IO (Decode16, 0x04D0, // Range Minimum 0x04D0, // Range Maximum 0x00, // Alignment 0x02, // Length ) }) Name (CRS2, ResourceTemplate () { IO (Decode16, 0x0010, // Range Minimum 0x0010, // Range Maximum 0x00, // Alignment 0x10, // Length ) IO (Decode16, 0x0022, // Range Minimum 0x0022, // Range Maximum 0x00, // Alignment 0x1E, // Length ) IO (Decode16, 0x0044, // Range Minimum 0x0044, // Range Maximum 0x00, // Alignment 0x1C, // Length ) IO (Decode16, 0x0072, // Range Minimum 0x0072, // Range Maximum 0x00, // Alignment 0x0E, // Length ) IO (Decode16, 0x0080, // Range Minimum 0x0080, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x0084, // Range Minimum 0x0084, // Range Maximum 0x00, // Alignment 0x03, // Length ) IO (Decode16, 0x0088, // Range Minimum 0x0088, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x008C, // Range Minimum 0x008C, // Range Maximum 0x00, // Alignment 0x03, // Length ) IO (Decode16, 0x0090, // Range Minimum 0x0090, // Range Maximum 0x00, // Alignment 0x10, // Length ) IO (Decode16, 0x00A2, // Range Minimum 0x00A2, // Range Maximum 0x00, // Alignment 0x1E, // Length ) IO (Decode16, 0x00E0, // Range Minimum 0x00E0, // Range Maximum 0x00, // Alignment 0x10, // Length ) IO (Decode16, 0x04D0, // Range Minimum 0x04D0, // Range Maximum 0x00, // Alignment 0x02, // Length ) }) Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { If (And (MBEC, 0xFFFF)) { Return (CRS1) } Else { Return (CRS2) } } } Device (PS2K) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { Return (HIDK) } Method (_CID, 0, NotSerialized) // _CID: Compatible ID { Return (CIDK) } Method (_STA, 0, NotSerialized) // _STA: Status { If (And (IOST, 0x0400)) { Return (0x0F) } Else { Return (Zero) } } Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings { IO (Decode16, 0x0060, // Range Minimum 0x0060, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x0064, // Range Minimum 0x0064, // Range Maximum 0x00, // Alignment 0x01, // Length ) IRQNoFlags () {1} }) Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x0060, // Range Minimum 0x0060, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x0064, // Range Minimum 0x0064, // Range Maximum 0x00, // Alignment 0x01, // Length ) IRQNoFlags () {1} } EndDependentFn () }) Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake { Store (Arg0, KBFG) } } Scope (\) { Name (KBFG, One) } Method (PS2K._PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x1B, 0x03)) } Device (PS2M) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { Return (HIDM) } Method (_CID, 0, NotSerialized) // _CID: Compatible ID { Return (CIDM) } Method (_STA, 0, NotSerialized) // _STA: Status { If (And (IOST, 0x4000)) { Return (0x0F) } Else { Return (Zero) } } Name (CRS1, ResourceTemplate () { IRQNoFlags () {12} }) Name (CRS2, ResourceTemplate () { IO (Decode16, 0x0060, // Range Minimum 0x0060, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x0064, // Range Minimum 0x0064, // Range Maximum 0x00, // Alignment 0x01, // Length ) IRQNoFlags () {12} }) Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { If (And (IOST, 0x0400)) { Return (CRS1) } Else { Return (CRS2) } } Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { StartDependentFn (0x00, 0x00) { IRQNoFlags () {12} } EndDependentFn () }) Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake { Store (Arg0, MSFG) } } Scope (\) { Name (MSFG, One) } Method (PS2M._PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x1B, 0x03)) } } Device (RP01) { Name (_ADR, 0x001C0000) // _ADR: Address OperationRegion (PXCS, PCI_Config, Zero, 0x0380) Field (PXCS, AnyAcc, NoLock, Preserve) { VDID, 32, Offset (0x19), SCBN, 8, Offset (0x50), L0SE, 1, , 3, LDIS, 1, Offset (0x51), Offset (0x52), , 13, LASX, 1, Offset (0x54), , 6, HPCE, 1, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), Offset (0x60), Offset (0x62), PSPX, 1, PMEP, 1, Offset (0xA4), D3HT, 2, Offset (0xD8), , 30, HPEX, 1, PMEX, 1, Offset (0xE2), , 2, L23E, 1, L23R, 1, Offset (0x324), , 3, LEDM, 1 } Field (PXCS, AnyAcc, NoLock, WriteAsZeros) { Offset (0xDC), , 30, HPSX, 1, PMSX, 1 } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (VDID, 0xFFFFFFFF)) { Return (Zero) } Else { Return (0x0F) } } Name (LTRV, Package (0x04) { Zero, Zero, Zero, Zero }) Name (OPTS, Zero) Name (RPAV, Zero) Device (PXSX) { Name (_ADR, Zero) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (HPCE) } } Method (_REG, 2, NotSerialized) // _REG: Region Availability { If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One))) { Store (One, RPAV) } } Method (HPME, 0, Serialized) { If (LOr (PSPX, PMEP)) { Store (PMEX, Local1) Store (Zero, PMEX) Sleep (0x32) Store (One, PSPX) Sleep (0x32) If (PSPX) { Store (One, PSPX) Sleep (0x32) } Store (Local1, PMEX) } 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 (AR04 ()) } Return (PR04 ()) } } Device (RP02) { Name (_ADR, 0x001C0001) // _ADR: Address OperationRegion (PXCS, PCI_Config, Zero, 0x0380) Field (PXCS, AnyAcc, NoLock, Preserve) { VDID, 32, Offset (0x19), SCBN, 8, Offset (0x50), L0SE, 1, , 3, LDIS, 1, Offset (0x51), Offset (0x52), , 13, LASX, 1, Offset (0x54), , 6, HPCE, 1, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), Offset (0x60), Offset (0x62), PSPX, 1, PMEP, 1, Offset (0xA4), D3HT, 2, Offset (0xD8), , 30, HPEX, 1, PMEX, 1, Offset (0xE2), , 2, L23E, 1, L23R, 1, Offset (0x324), , 3, LEDM, 1 } Field (PXCS, AnyAcc, NoLock, WriteAsZeros) { Offset (0xDC), , 30, HPSX, 1, PMSX, 1 } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (VDID, 0xFFFFFFFF)) { Return (Zero) } Else { Return (0x0F) } } Name (LTRV, Package (0x04) { Zero, Zero, Zero, Zero }) Name (OPTS, Zero) Name (RPAV, Zero) Device (PXSX) { Name (_ADR, Zero) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (HPCE) } } Method (_REG, 2, NotSerialized) // _REG: Region Availability { If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One))) { Store (One, RPAV) } } Method (HPME, 0, Serialized) { If (LOr (PSPX, PMEP)) { Store (PMEX, Local1) Store (Zero, PMEX) Sleep (0x32) Store (One, PSPX) Sleep (0x32) If (PSPX) { Store (One, PSPX) Sleep (0x32) } Store (Local1, PMEX) } 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 (AR05 ()) } Return (PR05 ()) } } Device (RP03) { Name (_ADR, 0x001C0002) // _ADR: Address OperationRegion (PXCS, PCI_Config, Zero, 0x0380) Field (PXCS, AnyAcc, NoLock, Preserve) { VDID, 32, Offset (0x19), SCBN, 8, Offset (0x50), L0SE, 1, , 3, LDIS, 1, Offset (0x51), Offset (0x52), , 13, LASX, 1, Offset (0x54), , 6, HPCE, 1, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), Offset (0x60), Offset (0x62), PSPX, 1, PMEP, 1, Offset (0xA4), D3HT, 2, Offset (0xD8), , 30, HPEX, 1, PMEX, 1, Offset (0xE2), , 2, L23E, 1, L23R, 1, Offset (0x324), , 3, LEDM, 1 } Field (PXCS, AnyAcc, NoLock, WriteAsZeros) { Offset (0xDC), , 30, HPSX, 1, PMSX, 1 } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (VDID, 0xFFFFFFFF)) { Return (Zero) } Else { Return (0x0F) } } Name (LTRV, Package (0x04) { Zero, Zero, Zero, Zero }) Name (OPTS, Zero) Name (RPAV, Zero) Device (PXSX) { Name (_ADR, Zero) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (HPCE) } } Method (_REG, 2, NotSerialized) // _REG: Region Availability { If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One))) { Store (One, RPAV) } } Method (HPME, 0, Serialized) { If (LOr (PSPX, PMEP)) { Store (PMEX, Local1) Store (Zero, PMEX) Sleep (0x32) Store (One, PSPX) Sleep (0x32) If (PSPX) { Store (One, PSPX) Sleep (0x32) } Store (Local1, PMEX) } 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 (AR06 ()) } Return (PR06 ()) } } Device (RP04) { Name (_ADR, 0x001C0003) // _ADR: Address OperationRegion (PXCS, PCI_Config, Zero, 0x0380) Field (PXCS, AnyAcc, NoLock, Preserve) { VDID, 32, Offset (0x19), SCBN, 8, Offset (0x50), L0SE, 1, , 3, LDIS, 1, Offset (0x51), Offset (0x52), , 13, LASX, 1, Offset (0x54), , 6, HPCE, 1, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), Offset (0x60), Offset (0x62), PSPX, 1, PMEP, 1, Offset (0xA4), D3HT, 2, Offset (0xD8), , 30, HPEX, 1, PMEX, 1, Offset (0xE2), , 2, L23E, 1, L23R, 1, Offset (0x324), , 3, LEDM, 1 } Field (PXCS, AnyAcc, NoLock, WriteAsZeros) { Offset (0xDC), , 30, HPSX, 1, PMSX, 1 } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (VDID, 0xFFFFFFFF)) { Return (Zero) } Else { Return (0x0F) } } Name (LTRV, Package (0x04) { Zero, Zero, Zero, Zero }) Name (OPTS, Zero) Name (RPAV, Zero) Device (PXSX) { Name (_ADR, Zero) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (HPCE) } } Method (_REG, 2, NotSerialized) // _REG: Region Availability { If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One))) { Store (One, RPAV) } } Method (HPME, 0, Serialized) { If (LOr (PSPX, PMEP)) { Store (PMEX, Local1) Store (Zero, PMEX) Sleep (0x32) Store (One, PSPX) Sleep (0x32) If (PSPX) { Store (One, PSPX) Sleep (0x32) } Store (Local1, PMEX) } 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) { Name (_ADR, 0x001C0004) // _ADR: Address OperationRegion (PXCS, PCI_Config, Zero, 0x0380) Field (PXCS, AnyAcc, NoLock, Preserve) { VDID, 32, Offset (0x19), SCBN, 8, Offset (0x50), L0SE, 1, , 3, LDIS, 1, Offset (0x51), Offset (0x52), , 13, LASX, 1, Offset (0x54), , 6, HPCE, 1, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), Offset (0x60), Offset (0x62), PSPX, 1, PMEP, 1, Offset (0xA4), D3HT, 2, Offset (0xD8), , 30, HPEX, 1, PMEX, 1, Offset (0xE2), , 2, L23E, 1, L23R, 1, Offset (0x324), , 3, LEDM, 1 } Field (PXCS, AnyAcc, NoLock, WriteAsZeros) { Offset (0xDC), , 30, HPSX, 1, PMSX, 1 } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (VDID, 0xFFFFFFFF)) { Return (Zero) } Else { Return (0x0F) } } Name (LTRV, Package (0x04) { Zero, Zero, Zero, Zero }) Name (OPTS, Zero) Name (RPAV, Zero) Device (PXSX) { Name (_ADR, Zero) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (HPCE) } } Method (_REG, 2, NotSerialized) // _REG: Region Availability { If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One))) { Store (One, RPAV) } } Method (HPME, 0, Serialized) { If (LOr (PSPX, PMEP)) { Store (PMEX, Local1) Store (Zero, PMEX) Sleep (0x32) Store (One, PSPX) Sleep (0x32) If (PSPX) { Store (One, PSPX) Sleep (0x32) } Store (Local1, PMEX) } 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 (AR08 ()) } Return (PR08 ()) } Device (MVL1) { Name (_ADR, Zero) // _ADR: Address OperationRegion (CF40, PCI_Config, 0x40, 0x04) Field (CF40, ByteAcc, NoLock, Preserve) { CHE0, 1, MULT, 1, , 1, CAB0, 1, CHE1, 1, Offset (0x01), AHEN, 1, , 3, PRT0, 1, AHM0, 1, PRT1, 1, AHM1, 1, CF42, 6, SWAP, 1, PATA, 1, , 6, WTEN, 1, Offset (0x04) } Name (PIOT, Package (0x05) { 0x0258, 0x0186, 0x014A, 0xB4, 0x78 }) Name (UDMA, Package (0x07) { 0x78, 0x50, 0x3C, 0x28, 0x1E, 0x14, 0x0F }) Name (MDMA, Package (0x03) { 0x01E0, 0x96, 0x78 }) Name (IDEB, Buffer (0x14) {}) CreateDWordField (IDEB, Zero, GTM0) CreateDWordField (IDEB, 0x04, GTM1) CreateDWordField (IDEB, 0x08, GTM2) CreateDWordField (IDEB, 0x0C, GTM3) CreateDWordField (IDEB, 0x10, GTM4) Name (PIO0, 0x04) Name (DMA0, 0x06) Name (MDA0, 0x02) Name (PIO1, 0x04) Name (DMA1, 0x06) Name (MDA1, 0x02) Name (PIO2, 0x04) Name (DMA2, 0x06) Name (MDA2, 0x02) Name (PIO3, 0x04) Name (DMA3, 0x06) Name (MDA3, 0x02) Name (FLGP, 0x1F) Name (FLGS, 0x1F) Device (IDE0) { Name (_ADR, Zero) // _ADR: Address Method (_GTM, 0, NotSerialized) // _GTM: Get Timing Mode { Store (DerefOf (Index (PIOT, PIO0)), Local0) Store (DerefOf (Index (PIOT, PIO1)), Local2) Store (0x1A, Local4) If (LAnd (FLGP, One)) { If (LNot (MULT)) { If (LAnd (CAB0, SWAP)) { Store (0x02, DMA0) } } Store (DerefOf (Index (UDMA, DMA0)), Local1) Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, MDA0)), Local1) } If (LAnd (FLGP, 0x04)) { If (LAnd (CAB0, SWAP)) { Store (0x02, DMA1) } Store (DerefOf (Index (UDMA, DMA1)), Local3) Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, MDA1)), Local3) } Store (Local0, GTM0) Store (Local1, GTM1) Store (Local2, GTM2) Store (Local3, GTM3) Store (Local4, GTM4) Return (IDEB) } Method (_STM, 3, NotSerialized) // _STM: Set Timing Mode { Store (Arg0, IDEB) Store (GTM0, Local0) Store (GTM1, Local1) Store (GTM2, Local2) Store (GTM3, Local3) Store (GTM4, Local4) Store (Local4, FLGP) If (LAnd (LNotEqual (Local0, 0xFFFFFFFF), LNotEqual (Local0, Zero))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PIO0) } If (LAnd (LNotEqual (Local1, 0xFFFFFFFF), LNotEqual (Local1, Zero))) { If (LAnd (FLGP, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), DMA0) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), MDA0) } } If (LAnd (LNotEqual (Local2, 0xFFFFFFFF), LNotEqual (Local2, Zero))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PIO1) } If (LAnd (LNotEqual (Local3, 0xFFFFFFFF), LNotEqual (Local3, Zero))) { If (LAnd (FLGP, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), DMA1) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), MDA1) } } } Device (DRV0) { Name (_ADR, Zero) // _ADR: Address Method (_GTF, 0, NotSerialized) // _GTF: Get Task File { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PIO0, PIOM) Or (PIOM, 0x08, PIOM) If (LAnd (FLGP, One)) { Store (DMA0, DMAM) Or (DMAM, 0x40, DMAM) } Else { Store (MDA0, DMAM) Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } Device (DRV1) { Name (_ADR, One) // _ADR: Address Method (_GTF, 0, NotSerialized) // _GTF: Get Task File { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PIO1, PIOM) Or (PIOM, 0x08, PIOM) If (LAnd (FLGP, 0x04)) { Store (DMA1, DMAM) Or (DMAM, 0x40, DMAM) } Else { Store (MDA1, DMAM) Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } Device (IDE1) { Name (_ADR, One) // _ADR: Address Method (_GTM, 0, NotSerialized) // _GTM: Get Timing Mode { Store (DerefOf (Index (PIOT, PIO2)), Local0) Store (DerefOf (Index (PIOT, PIO3)), Local2) Store (0x1A, Local4) If (LAnd (FLGS, One)) { If (LNot (MULT)) { If (LAnd (CAB0, LNot (SWAP))) { Store (0x02, DMA2) } } Store (DerefOf (Index (UDMA, DMA2)), Local1) Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, MDA2)), Local1) } If (LAnd (FLGS, 0x04)) { If (LAnd (CAB0, LNot (SWAP))) { Store (0x02, DMA3) } Store (DerefOf (Index (UDMA, DMA3)), Local3) Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, MDA3)), Local3) } Store (Local0, GTM0) Store (Local1, GTM1) Store (Local2, GTM2) Store (Local3, GTM3) Store (Local4, GTM4) Return (IDEB) } Method (_STM, 3, NotSerialized) // _STM: Set Timing Mode { Store (Arg0, IDEB) Store (GTM0, Local0) Store (GTM1, Local1) Store (GTM2, Local2) Store (GTM3, Local3) Store (GTM4, Local4) Store (Local4, FLGS) If (LAnd (LNotEqual (Local0, 0xFFFFFFFF), LNotEqual (Local0, Zero))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PIO2) } If (LAnd (LNotEqual (Local1, 0xFFFFFFFF), LNotEqual (Local1, Zero))) { If (LAnd (FLGS, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), DMA2) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), MDA2) } } If (LAnd (LNotEqual (Local2, 0xFFFFFFFF), LNotEqual (Local2, Zero))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PIO3) } If (LAnd (LNotEqual (Local3, 0xFFFFFFFF), LNotEqual (Local3, Zero))) { If (LAnd (FLGS, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), DMA3) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), MDA3) } } } Device (DRV0) { Name (_ADR, Zero) // _ADR: Address Method (_GTF, 0, NotSerialized) // _GTF: Get Task File { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PIO2, PIOM) Or (PIOM, 0x08, PIOM) If (LAnd (FLGS, One)) { Store (DMA2, DMAM) Or (DMAM, 0x40, DMAM) } Else { Store (MDA2, DMAM) Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } Device (DRV1) { Name (_ADR, One) // _ADR: Address Method (_GTF, 0, NotSerialized) // _GTF: Get Task File { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PIO3, PIOM) Or (PIOM, 0x08, PIOM) If (LAnd (FLGS, 0x04)) { Store (DMA3, DMAM) Or (DMAM, 0x40, DMAM) } Else { Store (MDA3, DMAM) Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } } Device (MVL2) { Name (_ADR, One) // _ADR: Address OperationRegion (CF40, PCI_Config, 0x40, 0x04) Field (CF40, ByteAcc, NoLock, Preserve) { CHE0, 1, MULT, 1, , 1, CAB0, 1, CHE1, 1, Offset (0x01), AHEN, 1, , 3, PRT0, 1, AHM0, 1, PRT1, 1, AHM1, 1, CF42, 6, SWAP, 1, PATA, 1, , 6, WTEN, 1, Offset (0x04) } Name (PIOT, Package (0x05) { 0x0258, 0x0186, 0x014A, 0xB4, 0x78 }) Name (UDMA, Package (0x07) { 0x78, 0x50, 0x3C, 0x28, 0x1E, 0x14, 0x0F }) Name (MDMA, Package (0x03) { 0x01E0, 0x96, 0x78 }) Name (IDEB, Buffer (0x14) {}) CreateDWordField (IDEB, Zero, GTM0) CreateDWordField (IDEB, 0x04, GTM1) CreateDWordField (IDEB, 0x08, GTM2) CreateDWordField (IDEB, 0x0C, GTM3) CreateDWordField (IDEB, 0x10, GTM4) Name (PIO0, 0x04) Name (DMA0, 0x06) Name (MDA0, 0x02) Name (PIO1, 0x04) Name (DMA1, 0x06) Name (MDA1, 0x02) Name (PIO2, 0x04) Name (DMA2, 0x06) Name (MDA2, 0x02) Name (PIO3, 0x04) Name (DMA3, 0x06) Name (MDA3, 0x02) Name (FLGP, 0x1F) Name (FLGS, 0x1F) Device (IDE0) { Name (_ADR, Zero) // _ADR: Address Method (_GTM, 0, NotSerialized) // _GTM: Get Timing Mode { Store (DerefOf (Index (PIOT, PIO0)), Local0) Store (DerefOf (Index (PIOT, PIO1)), Local2) Store (0x1A, Local4) If (LAnd (FLGP, One)) { If (LAnd (CAB0, SWAP)) { Store (0x02, DMA0) } Store (DerefOf (Index (UDMA, DMA0)), Local1) Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, MDA0)), Local1) } If (LAnd (FLGP, 0x04)) { If (LAnd (CAB0, SWAP)) { Store (0x02, DMA1) } Store (DerefOf (Index (UDMA, DMA1)), Local3) Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, MDA1)), Local3) } Store (Local0, GTM0) Store (Local1, GTM1) Store (Local2, GTM2) Store (Local3, GTM3) Store (Local4, GTM4) Return (IDEB) } Method (_STM, 3, NotSerialized) // _STM: Set Timing Mode { Store (Arg0, IDEB) Store (GTM0, Local0) Store (GTM1, Local1) Store (GTM2, Local2) Store (GTM3, Local3) Store (GTM4, Local4) Store (Local4, FLGP) If (LAnd (LNotEqual (Local0, 0xFFFFFFFF), LNotEqual (Local0, Zero))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PIO0) } If (LAnd (LNotEqual (Local1, 0xFFFFFFFF), LNotEqual (Local1, Zero))) { If (LAnd (FLGP, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), DMA0) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), MDA0) } } If (LAnd (LNotEqual (Local2, 0xFFFFFFFF), LNotEqual (Local2, Zero))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PIO1) } If (LAnd (LNotEqual (Local3, 0xFFFFFFFF), LNotEqual (Local3, Zero))) { If (LAnd (FLGP, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), DMA1) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), MDA1) } } } Device (DRV0) { Name (_ADR, Zero) // _ADR: Address Method (_GTF, 0, NotSerialized) // _GTF: Get Task File { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PIO0, PIOM) Or (PIOM, 0x08, PIOM) If (LAnd (FLGP, One)) { Store (DMA0, DMAM) Or (DMAM, 0x40, DMAM) } Else { Store (MDA0, DMAM) Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } Device (DRV1) { Name (_ADR, One) // _ADR: Address Method (_GTF, 0, NotSerialized) // _GTF: Get Task File { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PIO1, PIOM) Or (PIOM, 0x08, PIOM) If (LAnd (FLGP, 0x04)) { Store (DMA1, DMAM) Or (DMAM, 0x40, DMAM) } Else { Store (MDA1, DMAM) Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } Device (IDE1) { Name (_ADR, One) // _ADR: Address Method (_GTM, 0, NotSerialized) // _GTM: Get Timing Mode { Store (DerefOf (Index (PIOT, PIO2)), Local0) Store (DerefOf (Index (PIOT, PIO3)), Local2) Store (0x1A, Local4) If (LAnd (FLGS, One)) { If (LAnd (CAB0, LNot (SWAP))) { Store (0x02, DMA2) } Store (DerefOf (Index (UDMA, DMA2)), Local1) Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, MDA2)), Local1) } If (LAnd (FLGS, 0x04)) { If (LAnd (CAB0, LNot (SWAP))) { Store (0x02, DMA3) } Store (DerefOf (Index (UDMA, DMA3)), Local3) Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, MDA3)), Local3) } Store (Local0, GTM0) Store (Local1, GTM1) Store (Local2, GTM2) Store (Local3, GTM3) Store (Local4, GTM4) Return (IDEB) } Method (_STM, 3, NotSerialized) // _STM: Set Timing Mode { Store (Arg0, IDEB) Store (GTM0, Local0) Store (GTM1, Local1) Store (GTM2, Local2) Store (GTM3, Local3) Store (GTM4, Local4) Store (Local4, FLGS) If (LAnd (LNotEqual (Local0, 0xFFFFFFFF), LNotEqual (Local0, Zero))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PIO2) } If (LAnd (LNotEqual (Local1, 0xFFFFFFFF), LNotEqual (Local1, Zero))) { If (LAnd (FLGS, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), DMA2) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), MDA2) } } If (LAnd (LNotEqual (Local2, 0xFFFFFFFF), LNotEqual (Local2, Zero))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PIO3) } If (LAnd (LNotEqual (Local3, 0xFFFFFFFF), LNotEqual (Local3, Zero))) { If (LAnd (FLGS, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), DMA3) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), MDA3) } } } Device (DRV0) { Name (_ADR, Zero) // _ADR: Address Method (_GTF, 0, NotSerialized) // _GTF: Get Task File { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PIO2, PIOM) Or (PIOM, 0x08, PIOM) If (LAnd (FLGS, One)) { Store (DMA2, DMAM) Or (DMAM, 0x40, DMAM) } Else { Store (MDA2, DMAM) Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } Device (DRV1) { Name (_ADR, One) // _ADR: Address Method (_GTF, 0, NotSerialized) // _GTF: Get Task File { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PIO3, PIOM) Or (PIOM, 0x08, PIOM) If (LAnd (FLGS, 0x04)) { Store (DMA3, DMAM) Or (DMAM, 0x40, DMAM) } Else { Store (MDA3, DMAM) Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } } } Device (RP06) { Name (_ADR, 0x001C0005) // _ADR: Address OperationRegion (PXCS, PCI_Config, Zero, 0x0380) Field (PXCS, AnyAcc, NoLock, Preserve) { VDID, 32, Offset (0x19), SCBN, 8, Offset (0x50), L0SE, 1, , 3, LDIS, 1, Offset (0x51), Offset (0x52), , 13, LASX, 1, Offset (0x54), , 6, HPCE, 1, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), Offset (0x60), Offset (0x62), PSPX, 1, PMEP, 1, Offset (0xA4), D3HT, 2, Offset (0xD8), , 30, HPEX, 1, PMEX, 1, Offset (0xE2), , 2, L23E, 1, L23R, 1, Offset (0x324), , 3, LEDM, 1 } Field (PXCS, AnyAcc, NoLock, WriteAsZeros) { Offset (0xDC), , 30, HPSX, 1, PMSX, 1 } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (VDID, 0xFFFFFFFF)) { Return (Zero) } Else { Return (0x0F) } } Name (LTRV, Package (0x04) { Zero, Zero, Zero, Zero }) Name (OPTS, Zero) Name (RPAV, Zero) Device (PXSX) { Name (_ADR, Zero) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (HPCE) } } Method (_REG, 2, NotSerialized) // _REG: Region Availability { If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One))) { Store (One, RPAV) } } Method (HPME, 0, Serialized) { If (LOr (PSPX, PMEP)) { Store (PMEX, Local1) Store (Zero, PMEX) Sleep (0x32) Store (One, PSPX) Sleep (0x32) If (PSPX) { Store (One, PSPX) Sleep (0x32) } Store (Local1, PMEX) } 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 (AR09 ()) } Return (PR09 ()) } } Device (RP07) { Name (_ADR, 0x001C0006) // _ADR: Address OperationRegion (PXCS, PCI_Config, Zero, 0x0380) Field (PXCS, AnyAcc, NoLock, Preserve) { VDID, 32, Offset (0x19), SCBN, 8, Offset (0x50), L0SE, 1, , 3, LDIS, 1, Offset (0x51), Offset (0x52), , 13, LASX, 1, Offset (0x54), , 6, HPCE, 1, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), Offset (0x60), Offset (0x62), PSPX, 1, PMEP, 1, Offset (0xA4), D3HT, 2, Offset (0xD8), , 30, HPEX, 1, PMEX, 1, Offset (0xE2), , 2, L23E, 1, L23R, 1, Offset (0x324), , 3, LEDM, 1 } Field (PXCS, AnyAcc, NoLock, WriteAsZeros) { Offset (0xDC), , 30, HPSX, 1, PMSX, 1 } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (VDID, 0xFFFFFFFF)) { Return (Zero) } Else { Return (0x0F) } } Name (LTRV, Package (0x04) { Zero, Zero, Zero, Zero }) Name (OPTS, Zero) Name (RPAV, Zero) Device (PXSX) { Name (_ADR, Zero) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (HPCE) } } Method (_REG, 2, NotSerialized) // _REG: Region Availability { If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One))) { Store (One, RPAV) } } Method (HPME, 0, Serialized) { If (LOr (PSPX, PMEP)) { Store (PMEX, Local1) Store (Zero, PMEX) Sleep (0x32) Store (One, PSPX) Sleep (0x32) If (PSPX) { Store (One, PSPX) Sleep (0x32) } Store (Local1, PMEX) } 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 (AR0E ()) } Return (PR0E ()) } } Device (RP08) { Name (_ADR, 0x001C0007) // _ADR: Address OperationRegion (PXCS, PCI_Config, Zero, 0x0380) Field (PXCS, AnyAcc, NoLock, Preserve) { VDID, 32, Offset (0x19), SCBN, 8, Offset (0x50), L0SE, 1, , 3, LDIS, 1, Offset (0x51), Offset (0x52), , 13, LASX, 1, Offset (0x54), , 6, HPCE, 1, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), Offset (0x60), Offset (0x62), PSPX, 1, PMEP, 1, Offset (0xA4), D3HT, 2, Offset (0xD8), , 30, HPEX, 1, PMEX, 1, Offset (0xE2), , 2, L23E, 1, L23R, 1, Offset (0x324), , 3, LEDM, 1 } Field (PXCS, AnyAcc, NoLock, WriteAsZeros) { Offset (0xDC), , 30, HPSX, 1, PMSX, 1 } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (VDID, 0xFFFFFFFF)) { Return (Zero) } Else { Return (0x0F) } } Name (LTRV, Package (0x04) { Zero, Zero, Zero, Zero }) Name (OPTS, Zero) Name (RPAV, Zero) Device (PXSX) { Name (_ADR, Zero) // _ADR: Address Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (HPCE) } } Method (_REG, 2, NotSerialized) // _REG: Region Availability { If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One))) { Store (One, RPAV) } } Method (HPME, 0, Serialized) { If (LOr (PSPX, PMEP)) { Store (PMEX, Local1) Store (Zero, PMEX) Sleep (0x32) Store (One, PSPX) Sleep (0x32) If (PSPX) { Store (One, PSPX) Sleep (0x32) } Store (Local1, PMEX) } 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 (AR0F ()) } Return (PR0F ()) } } Device (GFX0) { Name (_ADR, 0x00020001) } Device (B0D3) { Name (_ADR, 0x00030001) } Device (MEI) { Name (_ADR, 0x00160000) } Device (MCHC) { Name (_ADR, Zero) } } Scope (\_GPE) { Method (_L1B, 0, NotSerialized) // _Lxx: Level-Triggered GPE { \_SB.PCI0.LPCB.SIOH () Notify (\_SB.PWRB, 0x02) } } Device (PWRB) { Name (_HID, EisaId ("PNP0C0C")) // _HID: Hardware ID Name (_UID, 0xAA) // _UID: Unique ID Name (_STA, 0x0B) // _STA: Status Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x1B, 0x03)) } } } Name (PNVB, 0xBF264D98) Name (PNVL, 0x00E0) OperationRegion (PNVA, SystemMemory, PNVB, PNVL) Field (PNVA, AnyAcc, Lock, Preserve) { RCRV, 32, PCHS, 16, PCHG, 16, RPA0, 32, RPA1, 32, RPA2, 32, RPA3, 32, RPA4, 32, RPA5, 32, RPA6, 32, RPA7, 32, SRMB, 32, ADB0, 32, ADB1, 32, ADI0, 32, GPMN, 32, GPMX, 32, PML1, 16, PML2, 16, PML3, 16, PML4, 16, PML5, 16, PML6, 16, PML7, 16, PML8, 16, PNL1, 16, PNL2, 16, PNL3, 16, PNL4, 16, PNL5, 16, PNL6, 16, PNL7, 16, PNL8, 16, U0C0, 32, U1C0, 32, ADFM, 32, ADBT, 8, XHPC, 8, XRPC, 8, XSPC, 8, XSPA, 8, SMD0, 8, SMD1, 8, SMD2, 8, SMD3, 8, SMD4, 8, SMD5, 8, SMD6, 8, SMD7, 8, SIR0, 8, SIR1, 8, SIR2, 8, SIR3, 8, SIR4, 8, SIR5, 8, SIR6, 8, SIR7, 8, SB00, 32, SB01, 32, SB02, 32, SB03, 32, SB04, 32, SB05, 32, SB06, 32, SB07, 32, SB10, 32, SB11, 32, SB12, 32, SB13, 32, SB14, 32, SB15, 32, SB16, 32, SB17, 32, SMGP, 8, GBEP, 8, PMSI, 8, PMCP, 8, PCLP, 8, PL1P, 16, PL1A, 32, PL1B, 8, PEPL, 16, PRPL, 16, PCIT, 8, PLTP, 16, PLTD, 32, PED2, 16, PRDC, 16, PED1, 16, PCHP, 16 } Name (LPTH, One) Name (LPTL, 0x02) Name (WPTL, 0x03) Method (PCHV, 0, NotSerialized) { If (LAnd (LEqual (PCHG, One), LEqual (PCHS, One))) { Return (LPTH) } If (LAnd (LEqual (PCHG, One), LEqual (PCHS, 0x02))) { Return (LPTL) } If (LAnd (LEqual (PCHG, 0x02), LEqual (PCHS, 0x02))) { Return (WPTL) } Return (Zero) } Method (LXDH, 0, NotSerialized) { \_SB.PCI0.XHC.GPEH () \_SB.PCI0.EH01.GPEH () \_SB.PCI0.EH02.GPEH () \_SB.PCI0.HDEF.GPEH () \_SB.PCI0.GLAN.GPEH () } If (LEqual (PCHS, 0x02)) { Scope (_GPE) { Method (_L6D, 0, Serialized) // _Lxx: Level-Triggered GPE { LXDH () } } } Else { Scope (_GPE) { Method (_L0D, 0, Serialized) // _Lxx: Level-Triggered GPE { LXDH () } } } Scope (_SB.PCI0.LPCB) { OperationRegion (LPC, PCI_Config, Zero, 0x0100) Field (LPC, AnyAcc, NoLock, Preserve) { Offset (0x02), CDID, 16, Offset (0x08), CRID, 8, Offset (0x40), , 7, ACBA, 9, Offset (0x48), , 7, GPBA, 9, Offset (0x60), PARC, 8, PBRC, 8, PCRC, 8, PDRC, 8, Offset (0x68), PERC, 8, PFRC, 8, PGRC, 8, PHRC, 8, Offset (0x80), IOD0, 8, IOD1, 8, Offset (0xA0), , 9, PRBL, 1, Offset (0xAC), Offset (0xAD), Offset (0xAE), XUSB, 1, Offset (0xB8), , 6, GR03, 2, Offset (0xBA), GR08, 2, GR09, 2, GR0A, 2, GR0B, 2, Offset (0xBC), , 2, GR19, 2, Offset (0xC0), Offset (0xF0), RAEN, 1, , 13, RCBA, 18 } } Scope (_SB) { Device (LNKA) { Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID Name (_UID, One) // _UID: Unique ID Method (_DIS, 0, Serialized) // _DIS: Disable Device { Or (^^PCI0.LPCB.PARC, 0x80, ^^PCI0.LPCB.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 (^^PCI0.LPCB.PARC, 0x0F), IRQ0) Return (RTLA) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { CreateWordField (Arg0, One, IRQ0) FindSetRightBit (IRQ0, Local0) Decrement (Local0) Store (Local0, ^^PCI0.LPCB.PARC) } Method (_STA, 0, Serialized) // _STA: Status { If (And (^^PCI0.LPCB.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 (^^PCI0.LPCB.PBRC, 0x80, ^^PCI0.LPCB.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 (^^PCI0.LPCB.PBRC, 0x0F), IRQ0) Return (RTLB) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { CreateWordField (Arg0, One, IRQ0) FindSetRightBit (IRQ0, Local0) Decrement (Local0) Store (Local0, ^^PCI0.LPCB.PBRC) } Method (_STA, 0, Serialized) // _STA: Status { If (And (^^PCI0.LPCB.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 (^^PCI0.LPCB.PCRC, 0x80, ^^PCI0.LPCB.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 (^^PCI0.LPCB.PCRC, 0x0F), IRQ0) Return (RTLC) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { CreateWordField (Arg0, One, IRQ0) FindSetRightBit (IRQ0, Local0) Decrement (Local0) Store (Local0, ^^PCI0.LPCB.PCRC) } Method (_STA, 0, Serialized) // _STA: Status { If (And (^^PCI0.LPCB.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 (^^PCI0.LPCB.PDRC, 0x80, ^^PCI0.LPCB.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 (^^PCI0.LPCB.PDRC, 0x0F), IRQ0) Return (RTLD) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { CreateWordField (Arg0, One, IRQ0) FindSetRightBit (IRQ0, Local0) Decrement (Local0) Store (Local0, ^^PCI0.LPCB.PDRC) } Method (_STA, 0, Serialized) // _STA: Status { If (And (^^PCI0.LPCB.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 (^^PCI0.LPCB.PERC, 0x80, ^^PCI0.LPCB.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 (^^PCI0.LPCB.PERC, 0x0F), IRQ0) Return (RTLE) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { CreateWordField (Arg0, One, IRQ0) FindSetRightBit (IRQ0, Local0) Decrement (Local0) Store (Local0, ^^PCI0.LPCB.PERC) } Method (_STA, 0, Serialized) // _STA: Status { If (And (^^PCI0.LPCB.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 (^^PCI0.LPCB.PFRC, 0x80, ^^PCI0.LPCB.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 (^^PCI0.LPCB.PFRC, 0x0F), IRQ0) Return (RTLF) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { CreateWordField (Arg0, One, IRQ0) FindSetRightBit (IRQ0, Local0) Decrement (Local0) Store (Local0, ^^PCI0.LPCB.PFRC) } Method (_STA, 0, Serialized) // _STA: Status { If (And (^^PCI0.LPCB.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 (^^PCI0.LPCB.PGRC, 0x80, ^^PCI0.LPCB.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 (^^PCI0.LPCB.PGRC, 0x0F), IRQ0) Return (RTLG) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { CreateWordField (Arg0, One, IRQ0) FindSetRightBit (IRQ0, Local0) Decrement (Local0) Store (Local0, ^^PCI0.LPCB.PGRC) } Method (_STA, 0, Serialized) // _STA: Status { If (And (^^PCI0.LPCB.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 (^^PCI0.LPCB.PHRC, 0x80, ^^PCI0.LPCB.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 (^^PCI0.LPCB.PHRC, 0x0F), IRQ0) Return (RTLH) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { CreateWordField (Arg0, One, IRQ0) FindSetRightBit (IRQ0, Local0) Decrement (Local0) Store (Local0, ^^PCI0.LPCB.PHRC) } Method (_STA, 0, Serialized) // _STA: Status { If (And (^^PCI0.LPCB.PHRC, 0x80)) { Return (0x09) } Else { Return (0x0B) } } } } Scope (\) { Name (PMBV, Zero) Method (PMBS, 0, NotSerialized) { If (LEqual (PMBV, Zero)) { Store (ShiftLeft (\_SB.PCI0.LPCB.ACBA, 0x07), PMBV) } Return (PMBV) } Name (GPBV, Zero) Method (GPBS, 0, NotSerialized) { If (LEqual (GPBV, Zero)) { Store (ShiftLeft (\_SB.PCI0.LPCB.GPBA, 0x07), GPBV) } Return (GPBV) } Name (RCBV, Zero) Method (RCBS, 0, NotSerialized) { If (LEqual (RCBV, Zero)) { Store (ShiftLeft (\_SB.PCI0.LPCB.RCBA, 0x0E), RCBV) } Return (RCBV) } OperationRegion (PMIO, SystemIO, PMBS (), 0x80) Field (PMIO, ByteAcc, NoLock, Preserve) { Offset (0x08), PBSS, 1, 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 (LGPE, SystemIO, Add (PMBS (), 0x80), 0x20) Field (LGPE, ByteAcc, NoLock, Preserve) { Offset (0x10), Offset (0x11), GE08, 1, , 8, GE17, 1, , 17, GE35, 1, , 9, GE45, 1, Offset (0x16), GE48, 1, , 2, GE51, 1, Offset (0x20) } Field (LGPE, ByteAcc, NoLock, WriteAsZeros) { Offset (0x01), GS08, 1, , 8, GS17, 1, , 17, GS35, 1, , 9, GS45, 1, Offset (0x06), GS48, 1, , 2, GS51, 1, , 2, GS54, 1, GS55, 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, Offset (0x06), GO48, 1, , 2, GO51, 1, , 2, GO54, 1, GO55, 1, GO56, 1, Offset (0x10), Offset (0x30), GR00, 32, GR01, 32, GR02, 32 } OperationRegion (RCRB, SystemMemory, RCBS (), 0x4000) Field (RCRB, DWordAcc, Lock, Preserve) { Offset (0x1000), Offset (0x2330), AFEA, 32, AFED, 32, AFES, 16, AFER, 16, Offset (0x3000), Offset (0x3310), , 4, PWST, 1, Offset (0x3318), , 4, WLPE, 1, Offset (0x331C), Offset (0x331F), PMFS, 1, Offset (0x3320), CKEN, 32, Offset (0x33E0), Offset (0x33E2), WLP2, 2, 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) } } Scope (_SB) { Method (RDGI, 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) { , 30, TEMP, 1 } Return (TEMP) } Return (Zero) } 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) } Return (Zero) } Method (WTGP, 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) { , 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 (GLAN) { Name (_ADR, 0x00190000) // _ADR: Address OperationRegion (GLBA, PCI_Config, Zero, 0x0100) Field (GLBA, AnyAcc, NoLock, Preserve) { DVID, 16, Offset (0xCC), Offset (0xCD), PMEE, 1, , 6, PMES, 1 } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x0D, 0x04)) } Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake { Store (Arg0, PMEE) } Method (GPEH, 0, NotSerialized) { If (LEqual (DVID, 0xFFFF)) { Return (Zero) } If (LAnd (PMEE, PMES)) { Store (One, PWST) Store (One, PMES) Notify (GLAN, 0x02) } Return (Zero) Return (Zero) } } Device (EH01) { Name (_ADR, 0x001D0000) // _ADR: Address OperationRegion (PWKE, PCI_Config, Zero, 0x0100) Field (PWKE, AnyAcc, NoLock, Preserve) { DVID, 16, Offset (0x54), Offset (0x55), PMEE, 1, , 6, PMES, 1 } Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake { Store (Arg0, PMEE) } Method (GPEH, 0, NotSerialized) { If (LEqual (DVID, 0xFFFF)) { Return (Zero) } If (LAnd (PMEE, PMES)) { Store (One, PMES) Notify (EH01, 0x02) } Return (Zero) Return (Zero) } 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 } Device (PR12) { Name (_ADR, 0x02) // _ADR: Address } Device (PR13) { Name (_ADR, 0x03) // _ADR: Address } Device (PR14) { Name (_ADR, 0x04) // _ADR: Address Alias (SBV1, SDGV) } Device (PR15) { Name (_ADR, 0x05) // _ADR: Address Alias (SBV2, SDGV) } Device (PR16) { Name (_ADR, 0x06) // _ADR: Address Alias (SBV1, SDGV) } Device (PR17) { Name (_ADR, 0x07) // _ADR: Address Alias (SBV2, SDGV) } Device (PR18) { Name (_ADR, 0x08) // _ADR: Address } } } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x0D, 0x04)) } } Device (EH02) { Name (_ADR, 0x001A0000) // _ADR: Address OperationRegion (PWKE, PCI_Config, Zero, 0x0100) Field (PWKE, AnyAcc, NoLock, Preserve) { DVID, 16, Offset (0x54), Offset (0x55), PMEE, 1, , 6, PMES, 1 } Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake { Store (Arg0, PMEE) } Method (GPEH, 0, NotSerialized) { If (LEqual (DVID, 0xFFFF)) { Return (Zero) } If (LAnd (PMEE, PMES)) { Store (One, PMES) Notify (EH02, 0x02) } Return (Zero) Return (Zero) } 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 } Device (PR12) { Name (_ADR, 0x02) // _ADR: Address Alias (SBV1, SDGV) } Device (PR13) { Name (_ADR, 0x03) // _ADR: Address Alias (SBV2, SDGV) } Device (PR14) { Name (_ADR, 0x04) // _ADR: Address } Device (PR15) { Name (_ADR, 0x05) // _ADR: Address } Device (PR16) { Name (_ADR, 0x06) // _ADR: Address } } } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x0D, 0x04)) } } } Scope (_SB.PCI0) { Device (XHC) { Name (_ADR, 0x00140000) // _ADR: Address 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 (0xA8), , 13, MW13, 1, MW14, 1, Offset (0xAC), Offset (0xB0), , 13, MB13, 1, MB14, 1, Offset (0xB4), Offset (0xD0), PR2, 32, PR2M, 32, PR3, 32, PR3M, 32 } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x0D, 0x04)) } Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake { Store (Arg0, PMEE) } Method (GPEH, 0, NotSerialized) { If (LEqual (DVID, 0xFFFF)) { Return (Zero) } Store (PMES, Local0) Store (One, PMES) If (LAnd (PMEE, Local0)) { Notify (XHC, 0x02) } Return (Zero) Return (Zero) } OperationRegion (XHCP, SystemMemory, Add (GPCB (), 0x000A0000), 0x0100) Field (XHCP, AnyAcc, Lock, Preserve) { Offset (0x04), PDBM, 16, Offset (0x10), MEMB, 64 } Method (PRTE, 1, Serialized) { 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 If (LLessEqual (Arg0, XHPC)) { If (LEqual (PCHV (), LPTH)) { While (One) { Store (Arg0, T_0) If (LEqual (T_0, One)) { Return (And (PR2, One)) } ElseIf (LEqual (T_0, 0x02)) { Return (And (PR2, 0x02)) } ElseIf (LEqual (T_0, 0x03)) { Return (And (PR2, 0x04)) } ElseIf (LEqual (T_0, 0x04)) { Return (And (PR2, 0x08)) } ElseIf (LEqual (T_0, 0x05)) { Return (And (PR2, 0x0100)) } ElseIf (LEqual (T_0, 0x06)) { Return (And (PR2, 0x0200)) } ElseIf (LEqual (T_0, 0x07)) { Return (And (PR2, 0x0400)) } ElseIf (LEqual (T_0, 0x08)) { Return (And (PR2, 0x0800)) } ElseIf (LEqual (T_0, 0x09)) { Return (And (PR2, 0x10)) } ElseIf (LEqual (T_0, 0x0A)) { Return (And (PR2, 0x20)) } ElseIf (LEqual (T_0, 0x0B)) { Return (And (PR2, 0x1000)) } ElseIf (LEqual (T_0, 0x0C)) { Return (And (PR2, 0x2000)) } ElseIf (LEqual (T_0, 0x0D)) { Return (And (PR2, 0x40)) } ElseIf (LEqual (T_0, 0x0E)) { Return (And (PR2, 0x80)) } Else { Return (Zero) } Break } } Else { While (One) { Store (Arg0, T_1) If (LEqual (T_1, One)) { Return (And (PR2, One)) } ElseIf (LEqual (T_1, 0x02)) { Return (And (PR2, 0x02)) } ElseIf (LEqual (T_1, 0x03)) { Return (And (PR2, 0x04)) } ElseIf (LEqual (T_1, 0x04)) { Return (And (PR2, 0x08)) } ElseIf (LEqual (T_1, 0x05)) { Return (And (PR2, 0x10)) } ElseIf (LEqual (T_1, 0x06)) { Return (And (PR2, 0x20)) } ElseIf (LEqual (T_1, 0x07)) { Return (And (PR2, 0x40)) } ElseIf (LEqual (T_1, 0x08)) { Return (And (PR2, 0x80)) } ElseIf (LEqual (T_1, 0x09)) { Return (And (PR2, 0x0100)) } ElseIf (LEqual (T_1, 0x0A)) { Return (And (PR2, 0x0200)) } Else { Return (Zero) } Break } } } If (LAnd (LEqual (Arg0, Add (XHPC, One)), LEqual (XRPC, One))) { If (LEqual (PCHV (), LPTH)) { Return (And (PR2, 0x4000)) } If (LEqual (PCHV (), LPTL)) { Return (And (PR2, 0x0100)) } If (LEqual (PCHV (), WPTL)) { Return (And (PR2, 0x0400)) } } If (LGreaterEqual (Arg0, XSPA)) { Subtract (Arg0, XSPA, Local0) While (One) { Store (Local0, T_2) If (LEqual (T_2, Zero)) { Return (And (PR3, One)) } ElseIf (LEqual (T_2, One)) { Return (And (PR3, 0x02)) } ElseIf (LEqual (T_2, 0x02)) { Return (And (PR3, 0x04)) } ElseIf (LEqual (T_2, 0x03)) { Return (And (PR3, 0x08)) } ElseIf (LEqual (T_2, 0x04)) { Return (And (PR3, 0x10)) } ElseIf (LEqual (T_2, 0x05)) { Return (And (PR3, 0x20)) } Else { Return (Zero) } Break } } Return (Zero) } Name (XRST, Zero) Method (_PS0, 0, Serialized) // _PS0: Power State 0 { If (LEqual (DVID, 0xFFFF)) { } 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 (0x80E0), , 15, AX15, 1, Offset (0x8154), , 31, CLK2, 1, Offset (0x816C), , 2, CLK0, 1, , 11, CLK1, 1 } If (LOr (LEqual (PCHV (), LPTL), LAnd (LEqual (PCHV (), WPTL), LEqual (PCHP, 0x40)))) { If (LEqual (PCHG, One)) { Store (Zero, MB13) Store (Zero, MB14) } If (LEqual (PCHG, 0x02)) { Store (Zero, MW13) Store (Zero, MW14) } Store (Zero, CLK0) Store (Zero, CLK1) } If (LOr (LEqual (PCHG, One), LAnd (LEqual (PCHV (), WPTL), LEqual (PCHP, 0x40)))) { Store (One, CLK2) } If (LEqual (PCHS, 0x02)) { Store (SRMB, Local3) If (LEqual (PCHG, One)) { Add (Local3, 0x0510, Local3) } If (LEqual (PCHG, 0x02)) { Add (Local3, 0x0530, Local3) } OperationRegion (PSCA, SystemMemory, Local3, 0x40) Field (PSCA, DWordAcc, Lock, Preserve) { PSC1, 32, Offset (0x10), PSC2, 32, Offset (0x20), PSC3, 32, Offset (0x30), PSC4, 32 } 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) } If (LOr (LEqual (PCHG, One), LAnd (LEqual (PCHV (), WPTL), LOr (LEqual (PCHP, 0x40), LEqual (PCHP, 0x41))))) { Store (Zero, SWAI) Store (Zero, SAIP) } If (CondRefOf (\_SB.PCI0.XHC.PS0X)) { PS0X () } And (PDBM, 0xFFFFFFFFFFFFFFFD, PDBM) Store (Local2, MEMB) Store (Local1, PDBM) Return (Zero) } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { Store (PDBM, Local1) Store (MEMB, Local2) And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM) Store (Zero, D0D3) Store (SRMB, MEMB) Or (Local1, 0x02, PDBM) Store (One, PMES) Store (One, PMEE) 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 } If (LOr (LEqual (PCHV (), LPTL), LAnd (LEqual (PCHV (), WPTL), LEqual (PCHP, 0x40)))) { If (LEqual (PCHG, One)) { Store (One, MB13) Store (One, MB14) } If (LEqual (PCHG, 0x02)) { Store (One, MW13) Store (One, MW14) } Store (One, CLK0) Store (One, CLK1) } If (LOr (LEqual (PCHG, One), LAnd (LEqual (PCHV (), WPTL), LEqual (PCHP, 0x40)))) { Store (Zero, CLK2) } If (LEqual (PCHS, 0x02)) { Store (Zero, AX15) } If (LOr (LEqual (PCHG, One), LAnd (LEqual (PCHV (), WPTL), LOr (LEqual (PCHP, 0x40), LEqual (PCHP, 0x41))))) { Store (One, SWAI) Store (One, SAIP) } If (CondRefOf (\_SB.PCI0.XHC.PS3X)) { PS3X () } And (PDBM, 0xFFFFFFFFFFFFFFFD, PDBM) Store (0x03, D0D3) Store (Local2, MEMB) Store (Local1, PDBM) Return (Zero) } 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 (PCHS, One)) { 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, ^^LPCB.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, ^^LPCB.XUSB) Store (Zero, XRST) } } Method (XWAK, 0, Serialized) { If (LOr (LEqual (^^LPCB.XUSB, One), LEqual (XRST, One))) { XSEL () } } Device (RHUB) { Name (_ADR, Zero) // _ADR: Address Method (_PS0, 0, Serialized) // _PS0: Power State 0 { If (LEqual (DVID, 0xFFFF)) { } If (CondRefOf (\_SB.PCI0.XHC.RHUB.PS0X)) { PS0X () } Return (Zero) } Method (_PS2, 0, Serialized) // _PS2: Power State 2 { If (CondRefOf (\_SB.PCI0.XHC.RHUB.PS2X)) { PS2X () } } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { If (CondRefOf (\_SB.PCI0.XHC.RHUB.PS3X)) { PS3X () } } Device (HS01) { Name (_ADR, One) // _ADR: Address } Device (HS02) { Name (_ADR, 0x02) // _ADR: Address } Device (HS03) { Name (_ADR, 0x03) // _ADR: Address } Device (HS04) { Name (_ADR, 0x04) // _ADR: Address } Device (HS05) { Name (_ADR, 0x05) // _ADR: Address } Device (HS06) { Name (_ADR, 0x06) // _ADR: Address } Device (HS07) { Name (_ADR, 0x07) // _ADR: Address } Device (HS08) { Name (_ADR, 0x08) // _ADR: Address } Device (SSP1) { Method (_ADR, 0, NotSerialized) // _ADR: Address { Return (Add (XSPA, Zero)) } } Device (SSP2) { Method (_ADR, 0, NotSerialized) // _ADR: Address { Return (Add (XSPA, One)) } } } } } If (LGreaterEqual (XHPC, 0x0A)) { Scope (_SB.PCI0.XHC.RHUB) { Device (HS09) { Name (_ADR, 0x09) // _ADR: Address } Device (HS10) { Name (_ADR, 0x0A) // _ADR: Address } } } If (LGreaterEqual (XHPC, 0x0C)) { Scope (_SB.PCI0.XHC.RHUB) { Device (HS11) { Name (_ADR, 0x0B) // _ADR: Address } Device (HS12) { Name (_ADR, 0x0C) // _ADR: Address } } } If (LGreaterEqual (XHPC, 0x0E)) { Scope (_SB.PCI0.XHC.RHUB) { Device (HS13) { Name (_ADR, 0x0D) // _ADR: Address } Device (HS14) { Name (_ADR, 0x0E) // _ADR: Address } } } If (LGreaterEqual (XRPC, One)) { Scope (_SB.PCI0.XHC.RHUB) { Device (USBR) { Method (_ADR, 0, NotSerialized) // _ADR: Address { Return (Add (XHPC, One)) } } } } If (LGreaterEqual (XSPC, 0x04)) { Scope (_SB.PCI0.XHC.RHUB) { Device (SSP3) { Method (_ADR, 0, NotSerialized) // _ADR: Address { Return (Add (XSPA, 0x02)) } } Device (SSP4) { Method (_ADR, 0, NotSerialized) // _ADR: Address { Return (Add (XSPA, 0x03)) } } } } If (LGreaterEqual (XSPC, 0x06)) { Scope (_SB.PCI0.XHC.RHUB) { Device (SSP5) { Method (_ADR, 0, NotSerialized) // _ADR: Address { Return (Add (XSPA, 0x04)) } } Device (SSP6) { Method (_ADR, 0, NotSerialized) // _ADR: Address { Return (Add (XSPA, 0x05)) } } } } Scope (_SB.PCI0) { Method (LPD3, 1, Serialized) { OperationRegion (ICB1, SystemMemory, Add (Arg0, 0x84), 0x04) Field (ICB1, DWordAcc, NoLock, Preserve) { TEMP, 32 } Or (TEMP, 0x03, TEMP) Store (TEMP, Local0) } Method (LPD0, 1, Serialized) { OperationRegion (ICB1, SystemMemory, Add (Arg0, 0x84), 0x04) Field (ICB1, DWordAcc, NoLock, Preserve) { TEMP, 32 } And (TEMP, 0xFFFFFFFC, TEMP) Store (TEMP, Local0) } Method (LCRS, 2, Serialized) { Name (RBUF, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y2D) Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, _Y2E) { 0x00000014, } }) CreateDWordField (RBUF, \_SB.PCI0.LCRS._Y2D._BAS, BVAL) // _BAS: Base Address CreateDWordField (RBUF, \_SB.PCI0.LCRS._Y2E._INT, IRQN) // _INT: Interrupts Store (Arg0, BVAL) Store (Arg1, IRQN) Return (RBUF) } Method (PKG1, 1, Serialized) { Name (PKG, Package (0x01) { Zero }) Store (Arg0, Index (PKG, Zero)) Return (PKG) } Method (PKG3, 3, Serialized) { Name (PKG, Package (0x03) { Zero, Zero, Zero }) Store (Arg0, Index (PKG, Zero)) Store (Arg1, Index (PKG, One)) Store (Arg2, Index (PKG, 0x02)) Return (PKG) } Device (SIRC) { Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID Name (_UID, 0x04) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { If (LLess (OSYS, 0x07DC)) { Return (Zero) } If (LEqual (PCHS, One)) { Return (Zero) } Return (0x0F) } Name (BUF1, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y2F) }) Name (BUF2, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y30) }) Name (BUF3, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y31) }) Name (BUF4, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y32) }) Name (BUF5, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y33) }) Name (BUF6, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y34) }) Name (BUF7, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y35) }) Name (BUF8, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y36) }) Name (BUA6, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y37) }) Name (BUA7, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y38) }) Name (BUFL, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00000008, // Address Length _Y39) }) Name (BUFH, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00000FEC, // Address Length _Y3A) }) Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Store (ResourceTemplate () { }, Local0) CreateDWordField (BUF1, \_SB.PCI0.SIRC._Y2F._BAS, BR01) // _BAS: Base Address CreateDWordField (BUF2, \_SB.PCI0.SIRC._Y30._BAS, BR02) // _BAS: Base Address CreateDWordField (BUF3, \_SB.PCI0.SIRC._Y31._BAS, BR03) // _BAS: Base Address CreateDWordField (BUF4, \_SB.PCI0.SIRC._Y32._BAS, BR04) // _BAS: Base Address CreateDWordField (BUF5, \_SB.PCI0.SIRC._Y33._BAS, BR05) // _BAS: Base Address CreateDWordField (BUF6, \_SB.PCI0.SIRC._Y34._BAS, BR06) // _BAS: Base Address CreateDWordField (BUF7, \_SB.PCI0.SIRC._Y35._BAS, BR07) // _BAS: Base Address CreateDWordField (BUF8, \_SB.PCI0.SIRC._Y36._BAS, BR08) // _BAS: Base Address CreateDWordField (BUA6, \_SB.PCI0.SIRC._Y37._BAS, BR09) // _BAS: Base Address CreateDWordField (BUA7, \_SB.PCI0.SIRC._Y38._BAS, BR10) // _BAS: Base Address CreateDWordField (BUFL, \_SB.PCI0.SIRC._Y39._BAS, BR11) // _BAS: Base Address CreateDWordField (BUFH, \_SB.PCI0.SIRC._Y3A._BAS, BR12) // _BAS: Base Address Store (SB10, BR01) Store (SB11, BR02) Store (SB12, BR03) Store (SB13, BR04) Store (SB14, BR05) Store (SB15, BR06) Store (SB16, BR07) Store (SB17, BR08) Store (SB05, BR09) Store (SB06, BR10) If (LNotEqual (SB07, Zero)) { Store (Add (SB07, 0x1000), BR11) } If (LNotEqual (SB07, Zero)) { Store (Add (SB07, 0x1014), BR12) } If (LAnd (LEqual (SMD0, One), LNotEqual (BR01, Zero))) { ConcatenateResTemplate (Local0, BUF1, Local0) } If (LAnd (LEqual (SMD1, One), LNotEqual (BR02, Zero))) { ConcatenateResTemplate (Local0, BUF2, Local0) } If (LAnd (LEqual (SMD2, One), LNotEqual (BR03, Zero))) { ConcatenateResTemplate (Local0, BUF3, Local0) } If (LAnd (LEqual (SMD3, One), LNotEqual (BR04, Zero))) { ConcatenateResTemplate (Local0, BUF4, Local0) } If (LAnd (LEqual (SMD4, One), LNotEqual (BR05, Zero))) { ConcatenateResTemplate (Local0, BUF5, Local0) } If (LAnd (LEqual (SMD5, One), LNotEqual (BR06, Zero))) { ConcatenateResTemplate (Local0, BUF6, Local0) } If (LAnd (LEqual (SMD6, One), LNotEqual (BR07, Zero))) { ConcatenateResTemplate (Local0, BUF7, Local0) } If (LAnd (LEqual (SMD7, One), LNotEqual (BR08, Zero))) { ConcatenateResTemplate (Local0, BUF8, Local0) ConcatenateResTemplate (Local0, BUFL, Local0) ConcatenateResTemplate (Local0, BUFH, Local0) } If (LAnd (LEqual (SMD5, 0x03), LNotEqual (BR06, Zero))) { ConcatenateResTemplate (Local0, BUF6, Local0) } If (LAnd (LEqual (SMD6, 0x03), LNotEqual (BR07, Zero))) { ConcatenateResTemplate (Local0, BUF7, Local0) } If (LAnd (LEqual (SMD5, 0x03), LNotEqual (BR09, Zero))) { ConcatenateResTemplate (Local0, BUA6, Local0) } If (LAnd (LEqual (SMD6, 0x03), LNotEqual (BR10, Zero))) { ConcatenateResTemplate (Local0, BUA7, Local0) } Return (Local0) } } Device (GPI0) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { If (LEqual (PCHG, 0x02)) { Return ("INT3437") } Return ("INT33C7") } Method (_CID, 0, NotSerialized) // _CID: Compatible ID { Return (_HID ()) } Name (_UID, One) // _UID: Unique ID Name (RBUF, ResourceTemplate () { DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x000003FF, // Range Maximum 0x00000000, // Translation Offset 0x00000400, // Length ,, _Y3B, TypeStatic) }) CreateDWordField (RBUF, \_SB.PCI0.GPI0._Y3B._MIN, BMIN) // _MIN: Minimum Base Address CreateDWordField (RBUF, \_SB.PCI0.GPI0._Y3B._MAX, BMAX) // _MAX: Maximum Base Address Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Store (GPMN, BMIN) Store (GPMX, BMAX) Return (RBUF) } Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision { Return (^^LPCB.CRID) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (GPMN, Zero)) { Return (Zero) } If (LLess (OSYS, 0x07DC)) { Return (Zero) } If (LEqual (SMGP, Zero)) { Return (Zero) } Return (0x0F) } } } Scope (_SB.PCI0) { Device (SDMA) { } } If (LNotEqual (SMD0, 0x02)) { Scope (_SB.PCI0.SDMA) { Name (_HID, "INTL9C60") // _HID: Hardware ID Name (_UID, One) // _UID: Unique ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (LCRS (SB00, SIR0)) } Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision { Return (^^LPCB.CRID) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (SMD0, Zero)) { Return (Zero) } If (LLess (OSYS, 0x07DD)) { LPD3 (SB10) Return (Zero) } Return (0x0F) } } } If (LEqual (SMD0, 0x02)) { Scope (_SB.PCI0.SDMA) { Name (_ADR, 0x00150000) // _ADR: Address } } Scope (_SB.PCI0) { Device (I2C0) { Method (SSCN, 0, NotSerialized) { Return (PKG3 (SSH0, SSL0, SSD0)) } Method (FMCN, 0, NotSerialized) { Return (PKG3 (FMH0, FML0, FMD0)) } Method (FPCN, 0, NotSerialized) { Return (PKG3 (FPH0, FPL0, FPD0)) } Method (M0D3, 0, NotSerialized) { Return (PKG1 (M0C0)) } Method (M1D3, 0, NotSerialized) { Return (PKG1 (M1C0)) } Method (M0D0, 0, NotSerialized) { Return (PKG1 (M2C0)) } Method (_PS0, 0, Serialized) // _PS0: Power State 0 { LPD0 (SB11) If (CondRefOf (\_SB.PCI0.I2C0.PS0X)) { PS0X () } } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { LPD3 (SB11) If (CondRefOf (\_SB.PCI0.I2C0.PS3X)) { PS3X () } } } } If (LNotEqual (SMD1, 0x02)) { Scope (_SB.PCI0.I2C0) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { If (LEqual (PCHG, 0x02)) { Return ("INT3432") } Return ("INT33C2") } Method (_CID, 0, NotSerialized) // _CID: Compatible ID { Return (_HID ()) } Name (_UID, One) // _UID: Unique ID Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Name (DBUF, ResourceTemplate () { FixedDMA (0x0018, 0x0004, Width32bit, ) FixedDMA (0x0019, 0x0005, Width32bit, ) }) If (LNotEqual (^^SDMA._STA (), Zero)) { Return (ConcatenateResTemplate (LCRS (SB01, SIR1), DBUF)) } Else { Return (LCRS (SB01, SIR1)) } } Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision { Return (^^LPCB.CRID) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (SMD1, Zero)) { Return (Zero) } If (LLess (OSYS, 0x07DC)) { Return (Zero) } Return (0x0F) } } } If (LEqual (SMD1, 0x02)) { Scope (_SB.PCI0.I2C0) { Name (_ADR, 0x00150001) // _ADR: Address } } Scope (_SB.PCI0) { Device (I2C1) { Method (SSCN, 0, NotSerialized) { Return (PKG3 (SSH1, SSL1, SSD1)) } Method (FMCN, 0, NotSerialized) { Return (PKG3 (FMH1, FML1, FMD1)) } Method (FPCN, 0, NotSerialized) { Return (PKG3 (FPH1, FPL1, FPD1)) } Method (M0D3, 0, NotSerialized) { Return (PKG1 (M0C1)) } Method (M1D3, 0, NotSerialized) { Return (PKG1 (M1C1)) } Method (M0D0, 0, NotSerialized) { Return (PKG1 (M2C1)) } Method (_PS0, 0, Serialized) // _PS0: Power State 0 { If (CondRefOf (\_SB.PCI0.I2C1.PS0X)) { PS0X () } LPD0 (SB12) } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { LPD3 (SB12) } } } If (LNotEqual (SMD2, 0x02)) { Scope (_SB.PCI0.I2C1) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { If (LEqual (PCHG, 0x02)) { Return ("INT3433") } Return ("INT33C3") } Method (_CID, 0, NotSerialized) // _CID: Compatible ID { Return (_HID ()) } Name (_UID, 0x02) // _UID: Unique ID Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Name (DBUF, ResourceTemplate () { FixedDMA (0x001A, 0x0006, Width32bit, ) FixedDMA (0x001B, 0x0007, Width32bit, ) }) If (LNotEqual (^^SDMA._STA (), Zero)) { Return (ConcatenateResTemplate (LCRS (SB02, SIR2), DBUF)) } Else { Return (LCRS (SB02, SIR2)) } } Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision { Return (^^LPCB.CRID) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (SMD2, Zero)) { Return (Zero) } If (LLess (OSYS, 0x07DC)) { Return (Zero) } Return (0x0F) } } } If (LEqual (SMD2, 0x02)) { Scope (_SB.PCI0.I2C1) { Name (_ADR, 0x00150002) // _ADR: Address } } Scope (_SB.PCI0) { Device (SPI0) { Method (M0D3, 0, NotSerialized) { Return (PKG1 (M0C2)) } Method (M1D3, 0, NotSerialized) { Return (PKG1 (M1C2)) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (SMD3, Zero)) { Return (Zero) } If (LLess (OSYS, 0x07DD)) { Return (Zero) } Return (0x0F) } Method (_PS0, 0, Serialized) // _PS0: Power State 0 { LPD0 (SB13) } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { LPD3 (SB13) } } } If (LNotEqual (SMD3, 0x02)) { Scope (_SB.PCI0.SPI0) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { If (LEqual (PCHG, 0x02)) { Return ("INT3430") } Return ("INT33C0") } Method (_CID, 0, NotSerialized) // _CID: Compatible ID { Return (_HID ()) } Name (_UID, One) // _UID: Unique ID Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Return (LCRS (SB03, SIR3)) } Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision { Return (^^LPCB.CRID) } } } If (LEqual (SMD3, 0x02)) { Scope (_SB.PCI0.SPI0) { Name (_ADR, 0x00150003) // _ADR: Address } } Scope (_SB.PCI0) { Device (SPI1) { Method (M0D3, 0, NotSerialized) { Return (PKG1 (M0C3)) } Method (M1D3, 0, NotSerialized) { Return (PKG1 (M1C3)) } Method (_PS0, 0, Serialized) // _PS0: Power State 0 { LPD0 (SB14) } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { LPD3 (SB14) } } } If (LNotEqual (SMD4, 0x02)) { Scope (_SB.PCI0.SPI1) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { If (LEqual (PCHG, 0x02)) { Return ("INT3431") } Return ("INT33C1") } Method (_CID, 0, NotSerialized) // _CID: Compatible ID { Return (_HID ()) } Name (_UID, 0x02) // _UID: Unique ID Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Name (DBUF, ResourceTemplate () { FixedDMA (0x0010, 0x0000, Width32bit, ) FixedDMA (0x0011, 0x0001, Width32bit, ) }) If (LNotEqual (^^SDMA._STA (), Zero)) { Return (ConcatenateResTemplate (LCRS (SB04, SIR4), DBUF)) } Else { Return (LCRS (SB04, SIR4)) } } Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision { Return (^^LPCB.CRID) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (SMD4, Zero)) { Return (Zero) } If (LLess (OSYS, 0x07DD)) { Return (Zero) } Return (0x0F) } } } If (LEqual (SMD4, 0x02)) { Scope (_SB.PCI0.SPI1) { Name (_ADR, 0x00150004) // _ADR: Address } } Scope (_SB.PCI0) { Device (UA00) { Method (M0D3, 0, NotSerialized) { Return (PKG1 (M0C4)) } Method (M1D3, 0, NotSerialized) { Return (PKG1 (M1C4)) } Method (_PS0, 0, Serialized) // _PS0: Power State 0 { LPD0 (SB15) } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { LPD3 (SB15) } } } If (LNotEqual (SMD5, 0x02)) { Scope (_SB.PCI0.UA00) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { If (LEqual (PCHG, 0x02)) { Return ("INT3434") } Return ("INT33C4") } Method (_CID, 0, NotSerialized) // _CID: Compatible ID { Return (_HID ()) } Name (_UID, One) // _UID: Unique ID Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Return (LCRS (SB05, SIR5)) } Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision { Return (^^LPCB.CRID) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (SMD5, Zero)) { Return (Zero) } If (LLess (OSYS, 0x07DD)) { Return (Zero) } Return (0x0F) } } } If (LEqual (SMD5, 0x02)) { Scope (_SB.PCI0.UA00) { Name (_ADR, 0x00150005) // _ADR: Address } } Scope (_SB.PCI0) { Device (UA01) { Method (M0D3, 0, NotSerialized) { Return (PKG1 (M0C5)) } Method (M1D3, 0, NotSerialized) { Return (PKG1 (M1C5)) } Method (_PS0, 0, Serialized) // _PS0: Power State 0 { LPD0 (SB16) } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { LPD3 (SB16) } } } If (LNotEqual (SMD6, 0x02)) { Scope (_SB.PCI0.UA01) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { If (LEqual (PCHG, 0x02)) { Return ("INT3435") } Return ("INT33C5") } Method (_CID, 0, NotSerialized) // _CID: Compatible ID { Return (_HID ()) } Name (_UID, 0x02) // _UID: Unique ID Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Name (DBUF, ResourceTemplate () { FixedDMA (0x0016, 0x0002, Width32bit, ) FixedDMA (0x0017, 0x0003, Width32bit, ) }) If (LNotEqual (^^SDMA._STA (), Zero)) { Return (ConcatenateResTemplate (LCRS (SB06, SIR6), DBUF)) } Else { Return (LCRS (SB06, SIR6)) } } Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision { Return (^^LPCB.CRID) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (SMD6, Zero)) { Return (Zero) } If (LLess (OSYS, 0x07DD)) { Return (Zero) } Return (0x0F) } } } If (LEqual (SMD6, 0x02)) { Scope (_SB.PCI0.UA01) { Name (_ADR, 0x00150006) // _ADR: Address } } Scope (_SB.PCI0) { Device (SDHC) { Method (_PS0, 0, Serialized) // _PS0: Power State 0 { LPD0 (SB17) If (CondRefOf (\_SB.PCI0.SDHC.PS0X)) { PS0X () } } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { LPD3 (SB17) } } } If (LNotEqual (SMD7, 0x02)) { Scope (_SB.PCI0.SDHC) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { If (LEqual (PCHG, 0x02)) { Return ("INT3436") } Return ("INT33C6") } Name (_CID, "PNP0D40") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (LCRS (SB07, SIR7)) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (SMD7, Zero)) { Return (Zero) } If (LLess (OSYS, 0x07DC)) { Return (Zero) } Return (0x0F) } } } If (LEqual (SMD7, 0x02)) { Scope (_SB.PCI0.SDHC) { Name (_ADR, 0x00170000) // _ADR: Address } } Scope (_SB.PCI0) { } Scope (_SB.PCI0.I2C0) { Device (ACD0) { Name (_ADR, 0x1C) // _ADR: Address Method (_HID, 0, Serialized) // _HID: Hardware ID { If (LEqual (CODS, Zero)) { Return ("INT33CA") } Return ("INT343A") } Method (_CID, 0, Serialized) // _CID: Compatible ID { If (LEqual (CODS, Zero)) { Return ("INT33CA") } Return ("INT343A") } Name (_DDN, "Intel(R) Smart Sound Technology Audio Codec") // _DDN: DOS Device Name Name (_UID, One) // _UID: Unique ID Name (MCLK, Zero) Name (SCLK, Zero) Name (SSPM, Zero) Name (EOD, One) Method (_INI, 0, NotSerialized) // _INI: Initialize { If (LEqual (CODS, Zero)) { Store (Zero, MCLK) } ElseIf (LEqual (CODS, One)) { Store (0x18, MCLK) } Store (0x09, SCLK) Store (Zero, SSPM) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (RBUF, ResourceTemplate () { I2cSerialBusV2 (0x001C, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C0", 0x00, ResourceConsumer, , Exclusive, ) }) Name (IRB0, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveLow, ExclusiveAndWake, ,, _Y3C) { 0x00000025, } }) Name (IRB1, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveHigh, ExclusiveAndWake, ,, _Y3D) { 0x00000025, } }) Name (IRB2, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveHigh, ExclusiveAndWake, ,, ) { 0x0000001E, } }) If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { CreateByteField (IRB0, \_SB.PCI0.I2C0.ACD0._CRS._Y3C._INT, VAL1) // _INT: Interrupts Store (0x1E, VAL1) CreateByteField (IRB1, \_SB.PCI0.I2C0.ACD0._CRS._Y3D._INT, VAL3) // _INT: Interrupts Store (0x1E, VAL3) } If (LEqual (CODS, Zero)) { Return (ConcatenateResTemplate (RBUF, IRB0)) } ElseIf (LEqual (CODS, One)) { If (LEqual (BID, 0x31)) { Return (ConcatenateResTemplate (RBUF, IRB2)) } Else { Return (ConcatenateResTemplate (RBUF, IRB1)) } } Return (RBUF) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { Store (One, EOD) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LOr (LAnd (LNotEqual (CODS, Zero), LNotEqual (CODS, One)), LNotEqual (ADSD, Zero))) { Return (Zero) } If (And (EOD, One, EOD)) { Return (0x0F) } Else { Return (0x0D) } } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (Zero, EOD) } } Device (ACD1) { Name (_ADR, 0x1A) // _ADR: Address Name (_HID, "INT3439") // _HID: Hardware ID Name (_CID, "INT3439") // _CID: Compatible ID Name (_DDN, "Intel(R) Smart Sound Technology Audio Codec") // _DDN: DOS Device Name Name (_UID, One) // _UID: Unique ID Name (MCLK, Zero) Name (SCLK, Zero) Name (SSPM, Zero) Name (EOD, One) Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (0x18, MCLK) Store (0x09, SCLK) Store (Zero, SSPM) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (RBUF, ResourceTemplate () { I2cSerialBusV2 (0x001A, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C0", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Edge, ActiveLow, ExclusiveAndWake, ,, _Y3E) { 0x00000025, } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x000F } }) If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { CreateByteField (RBUF, \_SB.PCI0.I2C0.ACD1._CRS._Y3E._INT, VAL1) // _INT: Interrupts Store (0x1E, VAL1) CreateByteField (RBUF, 0x41, VAL2) Store (0x55, VAL2) } Return (RBUF) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { Store (One, EOD) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LOr (LNotEqual (CODS, 0x02), LNotEqual (ADSD, Zero))) { Return (Zero) } If (And (EOD, One, EOD)) { Return (0x0F) } Else { Return (0x0D) } } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (Zero, EOD) } } Device (ACD2) { Name (_ADR, 0x69) // _ADR: Address Method (_HID, 0, Serialized) // _HID: Hardware ID { If (LEqual (CODS, 0x03)) { Return ("INT33CB") } Return ("INT343B") } Method (_CID, 0, Serialized) // _CID: Compatible ID { If (LEqual (CODS, 0x03)) { Return ("INT33CB") } Return ("INT343B") } Name (_DDN, "Intel(R) Smart Sound Technology Audio Codec") // _DDN: DOS Device Name Name (_UID, One) // _UID: Unique ID Name (MCLK, Zero) Name (SCLK, Zero) Name (SSPM, Zero) Name (EOD, One) Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (0x18, MCLK) Store (0x09, SCLK) Store (Zero, SSPM) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (RBUF, ResourceTemplate () { I2cSerialBusV2 (0x0069, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C0", 0x00, ResourceConsumer, , Exclusive, ) GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x0033 } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x0035 } Interrupt (ResourceConsumer, Edge, ActiveHigh, ExclusiveAndWake, ,, ) { 0x00000023, } Interrupt (ResourceConsumer, Edge, ActiveHigh, ExclusiveAndWake, ,, _Y3F) { 0x00000025, } }) If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { CreateByteField (RBUF, 0x60, VAL1) Store (0x2E, VAL1) CreateByteField (RBUF, \_SB.PCI0.I2C0.ACD2._CRS._Y3F._INT, VAL3) // _INT: Interrupts Store (0x1E, VAL3) } Name (RBF4, ResourceTemplate () { I2cSerialBusV2 (0x0068, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C0", 0x00, ResourceConsumer, , Exclusive, ) }) If (LEqual (CODS, 0x04)) { Return (ConcatenateResTemplate (RBF4, RBUF)) } Return (RBUF) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { Store (One, EOD) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LOr (LAnd (LNotEqual (CODS, 0x03), LNotEqual (CODS, 0x04)), LNotEqual (ADSD, Zero))) { Return (Zero) } If (And (EOD, One, EOD)) { Return (0x0F) } Else { Return (0x0D) } } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (Zero, EOD) } } Device (ACD3) { Name (_ADR, 0x4A) // _ADR: Address Name (_HID, "INT33C9") // _HID: Hardware ID Name (_CID, "INT33C9") // _CID: Compatible ID Name (_DDN, "Intel(R) Smart Sound Technology Audio Codec") // _DDN: DOS Device Name Name (_UID, One) // _UID: Unique ID Name (MCLK, Zero) Name (SCLK, Zero) Name (SSPM, Zero) Name (RBUF, ResourceTemplate () { I2cSerialBusV2 (0x004A, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C0", 0x00, ResourceConsumer, , Exclusive, ) }) Name (EOD, One) Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (0x06, MCLK) Store (Zero, SCLK) Store (One, SSPM) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (RBUF) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { Store (One, EOD) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LOr (LNotEqual (CODS, 0x05), LNotEqual (ADSD, Zero))) { Return (Zero) } If (And (EOD, One, EOD)) { Return (0x0F) } Else { Return (0x0D) } } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (Zero, EOD) } } Device (SHUB) { Method (_HID, 0, Serialized) // _HID: Hardware ID { Name (T_0, Zero) // _T_x: Emitted by ASL Compiler While (One) { Store (SHTP, T_0) If (LEqual (T_0, 0x03)) { Return ("SMO91D0") } Break } Return ("INT33D1") } Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_ADR, Zero) // _ADR: Address Name (_UID, One) // _UID: Unique ID Method (_STA, 0, Serialized) // _STA: Status { Name (T_0, Zero) // _T_x: Emitted by ASL Compiler While (One) { Store (SHTP, T_0) If (LEqual (T_0, 0x03)) { If (LEqual (_HID (), "SMO91D0")) { Return (0x0F) } } ElseIf (LEqual (T_0, 0x02)) { If (LAnd (LEqual (RDGP (0x2C), One), LEqual (_HID (), "INT33D1"))) { Return (0x0F) } If (LAnd (LEqual (RDGP (0x2C), Zero), LEqual (_HID (), "INT33D7"))) { Return (0x0F) } } Break } Return (Zero) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x0040, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C0", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, ) { 0x0000001C, } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x002E } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x0049 } }) Return (SBFI) } Method (_PS0, 0, Serialized) // _PS0: Power State 0 { WTGP (0x49, One) Sleep (0x10) If (CondRefOf (\_SB.PCI0.I2C0.SHUB.PS0X)) { PS0X () } } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { WTGP (0x49, Zero) If (CondRefOf (\_SB.PCI0.I2C0.SHUB.PS3X)) { PS3X () } } } Device (DFUD) { Name (_HID, "INT33D7") // _HID: Hardware ID Name (_ADR, Zero) // _ADR: Address Name (_UID, One) // _UID: Unique ID Method (_STA, 0, Serialized) // _STA: Status { Name (T_0, Zero) // _T_x: Emitted by ASL Compiler While (One) { Store (SHTP, T_0) If (LEqual (T_0, 0x03)) { If (LEqual (_HID, "SMO91D0")) { Return (0x0F) } } ElseIf (LEqual (T_0, 0x02)) { If (LAnd (LEqual (RDGP (0x2C), One), LEqual (_HID, "INT33D1"))) { Return (0x0F) } If (LAnd (LEqual (RDGP (0x2C), Zero), LEqual (_HID, "INT33D7"))) { Return (0x0F) } } Break } Return (Zero) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x0040, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C0", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, ) { 0x0000001C, } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x002E } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x0049 } }) Return (SBFI) } Method (_PS0, 0, Serialized) // _PS0: Power State 0 { WTGP (0x49, One) Sleep (0x10) If (CondRefOf (\_SB.PCI0.I2C0.SHUB.PS0X)) { ^^SHUB.PS0X () } } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { WTGP (0x49, Zero) If (CondRefOf (\_SB.PCI0.I2C0.SHUB.PS3X)) { ^^SHUB.PS3X () } } } Device (TPD4) { Name (_ADR, Zero) // _ADR: Address Name (_HID, "MSFT1111") // _HID: Hardware ID Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS0, 0x04), 0x04)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x0060, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C0", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, ) { 0x0000001C, } }) Return (SBFI) } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (Package (0x02) { 0x0E, 0x04 }) } Method (_S3W, 0, NotSerialized) // _S3W: S3 Device Wake State { Return (0x03) } Method (_S4W, 0, NotSerialized) // _S4W: S4 Device Wake State { Return (0x03) } Method (_PS0, 0, Serialized) // _PS0: Power State 0 { WTIN (0x0E, Zero) Store (One, GO14) } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { WTIN (0x0E, One) Store (Zero, GO14) } } Device (TPD9) { Name (_ADR, One) // _ADR: Address Name (_HID, "SYNA2393") // _HID: Hardware ID Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Name (_S0W, 0x03) // _S0W: S0 Device Wake State Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS0, 0x08), 0x08)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C0", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, ExclusiveAndWake, ,, ) { 0x0000001A, } }) Return (SBFI) } } } Scope (_SB.PCI0.I2C1) { Device (TPL0) { Name (_ADR, Zero) // _ADR: Address Name (_HID, "ATML1000") // _HID: Hardware ID Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Name (_S0W, 0x04) // _S0W: S0 Device Wake State Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS1, One), One)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x004C, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y40) { 0x00000022, } }) If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPL0._CRS._Y40._INT, VAL4) // _INT: Interrupts Store (0x1F, VAL4) } Return (SBFI) } } Device (TPFU) { Name (_ADR, Zero) // _ADR: Address Name (_HID, "ATML2000") // _HID: Hardware ID Name (_CID, "PNP0C02") // _CID: Compatible ID Name (_UID, 0x0A) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { If (LAnd (And (SDS1, One), And (APFU, One))) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x0026, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, , Exclusive, ) I2cSerialBusV2 (0x0027, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, , Exclusive, ) }) Return (SBFI) } } Device (TPL1) { Name (_HID, "ELAN1001") // _HID: Hardware ID Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Name (_S0W, 0x04) // _S0W: S0 Device Wake State Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS1, 0x02), 0x02)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y41) { 0x00000022, } }) CreateByteField (SBFI, \_SB.PCI0.I2C1.TPL1._CRS._Y41._INT, VAL4) // _INT: Interrupts If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { Store (0x1F, VAL4) } If (LEqual (BID, 0x38)) { Store (0x22, VAL4) } Return (SBFI) } } Device (TPL2) { Name (_ADR, One) // _ADR: Address Name (_HID, "NTRG0001") // _HID: Hardware ID Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Name (_S0W, 0x04) // _S0W: S0 Device Wake State Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS1, 0x20), 0x20)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x0007, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, _Y43, Exclusive, ) }) Name (IRBY, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, ) { 0x0000001F, } }) Name (IRBU, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y42) { 0x00000022, } }) If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { CreateByteField (IRBU, \_SB.PCI0.I2C1.TPL2._CRS._Y42._INT, VAL4) // _INT: Interrupts Store (0x1F, VAL4) } CreateDWordField (SBFI, \_SB.PCI0.I2C1.TPL2._CRS._Y43._SPE, I2CG) // _SPE: Speed Store (TL2F, I2CG) If (LEqual (BID, 0x31)) { Return (ConcatenateResTemplate (SBFI, IRBY)) } Else { Return (ConcatenateResTemplate (SBFI, IRBU)) } Return (SBFI) } } Device (TPL3) { Name (_ADR, One) // _ADR: Address Name (_HID, "EETI7900") // _HID: Hardware ID Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Name (_S0W, 0x04) // _S0W: S0 Device Wake State Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS1, 0x40), 0x40)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x002A, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y44) { 0x00000022, } }) CreateByteField (SBFI, \_SB.PCI0.I2C1.TPL3._CRS._Y44._INT, VAL4) // _INT: Interrupts If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { Store (0x1F, VAL4) } If (LEqual (BID, 0x37)) { Store (0x22, VAL4) } Return (SBFI) } } Device (TPD0) { Name (_ADR, One) // _ADR: Address Name (_HID, "ELAN1000") // _HID: Hardware ID Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Name (_S0W, 0x04) // _S0W: S0 Device Wake State Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS1, 0x04), 0x04)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x0015, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y45) { 0x00000027, } }) If (LEqual (GR13, One)) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD0._CRS._Y45._INT, VAL3) // _INT: Interrupts Store (0x1B, VAL3) } If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD0._CRS._Y45._INT, VAL4) // _INT: Interrupts Store (0x1A, VAL4) } Return (SBFI) } } Device (TPD1) { Name (_ADR, One) // _ADR: Address Name (_HID, "MSFT0001") // _HID: Hardware ID Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Name (_S0W, 0x04) // _S0W: S0 Device Wake State Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS1, 0x08), 0x08)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y46) { 0x00000027, } }) If (LEqual (GR13, One)) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD1._CRS._Y46._INT, VAL3) // _INT: Interrupts Store (0x1B, VAL3) } If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD1._CRS._Y46._INT, VAL4) // _INT: Interrupts Store (0x1A, VAL4) } Return (SBFI) } } Device (TPD2) { Name (_ADR, One) // _ADR: Address Name (_HID, "ALP0001") // _HID: Hardware ID Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Name (_S0W, 0x04) // _S0W: S0 Device Wake State Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS1, 0x80), 0x80)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x002A, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y47) { 0x00000027, } }) If (LEqual (GR13, One)) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD2._CRS._Y47._INT, VAL3) // _INT: Interrupts Store (0x1B, VAL3) } If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD2._CRS._Y47._INT, VAL4) // _INT: Interrupts Store (0x1A, VAL4) } Return (SBFI) } } Device (TPD3) { Name (_ADR, One) // _ADR: Address Name (_HID, "CYP0001") // _HID: Hardware ID Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Name (_S0W, 0x04) // _S0W: S0 Device Wake State Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS1, 0x0100), 0x0100)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x0024, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y48) { 0x00000027, } }) If (LEqual (GR13, One)) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD3._CRS._Y48._INT, VAL3) // _INT: Interrupts Store (0x1B, VAL3) } If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD3._CRS._Y48._INT, VAL4) // _INT: Interrupts Store (0x1A, VAL4) } Return (SBFI) } } Device (TPD7) { Name (_ADR, One) // _ADR: Address Name (_HID, "ELAN1010") // _HID: Hardware ID Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Name (_S0W, 0x03) // _S0W: S0 Device Wake State Method (_S3W, 0, NotSerialized) // _S3W: S3 Device Wake State { If (LEqual (S0ID, Zero)) { Return (0x03) } Else { Return (Zero) } } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS1, 0x0800), 0x0800)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x0015, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, ExclusiveAndWake, ,, _Y49) { 0x00000027, } }) If (LEqual (GR13, One)) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD7._CRS._Y49._INT, VAL3) // _INT: Interrupts Store (0x1B, VAL3) If (LEqual (S0ID, Zero)) { CreateByteField (SBFI, 0x24, VAL4) And (VAL4, 0xE7, VAL4) } } If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD7._CRS._Y49._INT, VAL7) // _INT: Interrupts Store (0x1A, VAL7) } Return (SBFI) } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { If (LAnd (LEqual (S0ID, Zero), LEqual (GR13, One))) { Return (Package (0x02) { 0x0D, 0x03 }) } Return (Package (0x02) { Zero, Zero }) } Method (_PS0, 0, Serialized) // _PS0: Power State 0 { ADBG ("TPD7 Ctrlr D0") If (LAnd (LEqual (S0ID, Zero), LEqual (GR13, One))) { WTIN (0x0D, Zero) Store (One, GO13) } If (CondRefOf (\_SB.PCI0.I2C1.TPD7.PS0X)) { PS0X () } } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { ADBG ("TPD7 Ctrlr D3") If (LAnd (LEqual (S0ID, Zero), LEqual (GR13, One))) { WTIN (0x0D, One) Store (Zero, GO13) } } } Device (TPD8) { Name (_ADR, One) // _ADR: Address Name (_HID, "SYNA2393") // _HID: Hardware ID Name (_CID, "PNP0C50") // _CID: Compatible ID Name (_UID, One) // _UID: Unique ID Name (_S0W, 0x03) // _S0W: S0 Device Wake State Method (_S3W, 0, NotSerialized) // _S3W: S3 Device Wake State { If (LEqual (S0ID, Zero)) { Return (0x03) } Else { Return (Zero) } } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS1, 0x1000), 0x1000)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { Name (SBFI, ResourceTemplate () { I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, ExclusiveAndWake, ,, _Y4A) { 0x00000027, } }) If (LEqual (GR13, One)) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD8._CRS._Y4A._INT, VAL3) // _INT: Interrupts Store (0x1B, VAL3) If (LEqual (S0ID, Zero)) { CreateByteField (SBFI, 0x24, VAL4) And (VAL4, 0xE7, VAL4) } } If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD8._CRS._Y4A._INT, VAL7) // _INT: Interrupts Store (0x1A, VAL7) } Return (SBFI) } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { If (LAnd (LEqual (S0ID, Zero), LEqual (GR13, One))) { Return (Package (0x02) { 0x0D, 0x03 }) } Return (Package (0x02) { Zero, Zero }) } Method (_PS0, 0, Serialized) // _PS0: Power State 0 { ADBG ("TPD8 Ctrlr D0") If (LAnd (LEqual (S0ID, Zero), LEqual (GR13, One))) { WTIN (0x0D, Zero) Store (One, GO13) } If (CondRefOf (\_SB.PCI0.I2C1.TPD8.PS0X)) { PS0X () } } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { ADBG ("TPD8 Ctrlr D3") If (LAnd (LEqual (S0ID, Zero), LEqual (GR13, One))) { WTIN (0x0D, One) Store (Zero, GO13) } } } } Scope (_SB.PCI0.UA00) { Device (BTH0) { Name (_HID, "INT33E0") // _HID: Hardware ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (UBUF, ResourceTemplate () { UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne, 0xC0, LittleEndian, ParityTypeNone, FlowControlHardware, 0x0020, 0x0020, "\\_SB.PCI0.UA00", 0x00, ResourceConsumer, , Exclusive, ) }) Return (UBUF) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS4, One), One)) { Return (0x0F) } Else { Return (Zero) } } } } If (LEqual (BID, 0x37)) { Scope (_SB.PCI0.UA00) { Device (BTH2) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { Return ("BCM2E40") } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (UBUF, ResourceTemplate () { UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne, 0xC0, LittleEndian, ParityTypeNone, FlowControlHardware, 0x0020, 0x0020, "\\_SB.PCI0.UA00", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Edge, ActiveLow, Exclusive, ,, ) { 0x00000019, } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x000B } }) Return (UBUF) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS4, 0x04), 0x04)) { Return (0x0F) } Else { Return (Zero) } } Name (_S0W, 0x02) // _S0W: S0 Device Wake State } } } Scope (_SB.PCI0.UA01) { Device (BTH1) { Name (_HID, "INT33E0") // _HID: Hardware ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (UBUF, ResourceTemplate () { UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne, 0xC0, LittleEndian, ParityTypeNone, FlowControlHardware, 0x0020, 0x0020, "\\_SB.PCI0.UA01", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Level, ActiveLow, SharedAndWake, ,, ) { 0x00000019, } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x0057 } }) Return (UBUF) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS5, One), One)) { Return (0x0F) } Else { Return (Zero) } } } Device (BTH2) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { If (LEqual (BCV4, Zero)) { Return ("BCM2E20") } ElseIf (LEqual (BCV4, One)) { Return ("BCM2E40") } Else { Return ("BCM2E37") } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { If (LOr (LEqual (BID, 0x20), LEqual (BID, 0x24))) { Name (UBUF, ResourceTemplate () { UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne, 0xC0, LittleEndian, ParityTypeNone, FlowControlHardware, 0x0020, 0x0020, "\\_SB.PCI0.UA01", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Edge, ActiveLow, Exclusive, ,, ) { 0x00000019, } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x0039 } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x0055 } }) Return (UBUF) } ElseIf (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82))) { Name (PBUF, ResourceTemplate () { UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne, 0xC0, LittleEndian, ParityTypeNone, FlowControlHardware, 0x0020, 0x0020, "\\_SB.PCI0.UA01", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Edge, ActiveLow, Exclusive, ,, ) { 0x00000019, } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x0039 } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x003B } }) Return (PBUF) } Else { Name (OBUF, ResourceTemplate () { UartSerialBusV2 (0x0001C200, DataBitsEight, StopBitsOne, 0xC0, LittleEndian, ParityTypeNone, FlowControlHardware, 0x0020, 0x0020, "\\_SB.PCI0.UA01", 0x00, ResourceConsumer, , Exclusive, ) Interrupt (ResourceConsumer, Edge, ActiveLow, Exclusive, ,, ) { 0x00000019, } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x0039 } GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x0057 } }) Return (OBUF) } } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS5, 0x02), 0x02)) { Return (0x0F) } Else { Return (Zero) } } Name (_S0W, 0x02) // _S0W: S0 Device Wake State } } If (LEqual (BID, 0x37)) { Scope (_SB.PCI0.UA01) { Device (GPS2) { Name (_HID, "BCM4752") // _HID: Hardware ID Name (_HRV, Zero) // _HRV: Hardware Revision Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (UBUF, ResourceTemplate () { UartSerialBusV2 (0x000E1000, DataBitsEight, StopBitsOne, 0xC0, LittleEndian, ParityTypeNone, FlowControlHardware, 0x0020, 0x0020, "\\_SB.PCI0.UA01", 0x00, ResourceConsumer, , Exclusive, ) GpioIo (Exclusive, PullDown, 0x0000, 0x0000, IoRestrictionNoneAndPreserve, "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, , ) { // Pin list 0x000D } }) Return (UBUF) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (And (SDS5, 0x08), 0x08)) { Return (0x0F) } Else { Return (Zero) } } } } } Scope (_SB.PCI0.SDHC) { Device (WI01) { Name (_ADR, One) // _ADR: Address Name (_DDN, "SDIO Wifi device Function 1") // _DDN: DOS Device Name Method (_STA, 0, NotSerialized) // _STA: Status { Return (0x0F) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (Zero) } Name (_S4W, 0x02) // _S4W: S4 Device Wake State Name (_S0W, 0x02) // _S0W: S0 Device Wake State Method (_PS0, 0, Serialized) // _PS0: Power State 0 { If (CondRefOf (\_SB.PCI0.SDHC.WI01.PS0X)) { PS0X () } } Method (_PS2, 0, Serialized) // _PS2: Power State 2 { } Method (_PS3, 0, Serialized) // _PS3: Power State 3 { If (CondRefOf (\_SB.PCI0.SDHC.WI01.PS3X)) { PS3X () } } Name (RBUF, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00000000, // Address Length _Y4B) Interrupt (ResourceConsumer, Level, ActiveLow, SharedAndWake, ,, ) { 0x00000026, } }) Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { If (LNotEqual (SB07, Zero)) { CreateDWordField (RBUF, \_SB.PCI0.SDHC.WI01._Y4B._LEN, WLN0) // _LEN: Length Store (0x0C, WLN0) CreateDWordField (RBUF, \_SB.PCI0.SDHC.WI01._Y4B._BAS, WVAL) // _BAS: Base Address Add (SB07, 0x1008, WVAL) } Return (RBUF) } } } Scope (_SB.PCI0) { Device (HDEF) { Name (_ADR, 0x001B0000) // _ADR: Address OperationRegion (HDAR, PCI_Config, Zero, 0x0100) Field (HDAR, AnyAcc, NoLock, Preserve) { DVID, 16, Offset (0x4C), DCKA, 1, Offset (0x4D), DCKM, 1, , 6, DCKS, 1, Offset (0x54), Offset (0x55), PMEE, 1, , 6, PMES, 1 } Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake { Store (Arg0, PMEE) } Method (GPEH, 0, NotSerialized) { If (LEqual (DVID, 0xFFFF)) { Return (Zero) } If (LAnd (PMEE, PMES)) { Store (One, PMES) Notify (HDEF, 0x02) } Return (Zero) Return (Zero) } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x0D, 0x04)) } } Device (ADSP) { Method (_HID, 0, Serialized) // _HID: Hardware ID { If (LEqual (PCHG, 0x02)) { Return ("INT3438") } Return ("INT33C8") } Method (_CID, 0, Serialized) // _CID: Compatible ID { If (LEqual (PCHG, 0x02)) { Return ("INT3438") } Return ("INT33C8") } Name (_DDN, "Intel(R) Smart Sound Technology (Intel(R) SST)") // _DDN: DOS Device Name Name (_UID, One) // _UID: Unique ID Name (RBUF, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00100000, // Address Length _Y4C) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y4D) Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y4E) { 0x00000003, } }) CreateDWordField (RBUF, \_SB.PCI0.ADSP._Y4C._BAS, B0VL) // _BAS: Base Address CreateDWordField (RBUF, \_SB.PCI0.ADSP._Y4D._BAS, B1VL) // _BAS: Base Address CreateDWordField (RBUF, \_SB.PCI0.ADSP._Y4E._INT, IRQN) // _INT: Interrupts Name (MCLK, Zero) Name (SCLK, Zero) Name (SSPM, Zero) Name (ABTH, Zero) Name (FMSK, Zero) Name (EOD, One) Name (SSPP, Package (0x0B) { Package (0x02) { "CodecId", "UNKNOWN" }, Package (0x02) { "DevPort", "PORT0" }, Package (0x02) { "MCLK", Zero }, Package (0x02) { "BCLK", 0x00BB8000 }, Package (0x02) { "Master", Zero }, Package (0x02) { "Format", "I2S" }, Package (0x02) { "Rate", 0xBB80 }, Package (0x02) { "Channels", 0x02 }, Package (0x02) { "Bits", 0x18 }, Package (0x02) { "FrameSize", 0x40 }, Package (0x02) { "SlotMask", 0x0C } }) Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Store (ADB0, B0VL) Store (ADB1, B1VL) If (LNotEqual (ADI0, Zero)) { Store (ADI0, IRQN) } Return (RBUF) } Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings { Store (One, EOD) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (ADB0, Zero)) { Return (Zero) } If (LLess (OSYS, 0x07DC)) { Return (Zero) } If (LEqual (EOD, Zero)) { Return (0x0D) } If (LEqual (S0ID, One)) { Return (0x0F) } If (LEqual (ANCS, One)) { Return (0x0F) } Return (Zero) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (Zero, EOD) } Device (I2S0) { Name (_ADR, Zero) // _ADR: Address } Device (I2S1) { Name (_ADR, One) // _ADR: Address } } Device (SATA) { Name (_ADR, 0x001F0002) // _ADR: Address Name (PRBI, Zero) Name (PRBD, Zero) Name (PCMD, Zero) Device (PRT0) { Name (_ADR, 0xFFFF) // _ADR: Address } Device (PRT1) { Name (_ADR, 0x0001FFFF) // _ADR: Address } Device (PRT2) { Name (_ADR, 0x0002FFFF) // _ADR: Address } Device (PRT3) { Name (_ADR, 0x0003FFFF) // _ADR: Address } Method (RDCA, 5, Serialized) { OperationRegion (RPAC, SystemMemory, Add (GPCB (), Add (0x000FA100, Arg1)), 0x04) Field (RPAC, DWordAcc, Lock, Preserve) { RPCD, 32 } OperationRegion (EPAC, SystemMemory, Add (GPCB (), 0x000FA308), 0x08) Field (EPAC, DWordAcc, Lock, Preserve) { CAIR, 32, CADR, 32 } If (LEqual (Arg4, Zero)) { Return (RPCD) } ElseIf (LEqual (Arg4, 0x02)) { Store (Arg1, CAIR) Return (CADR) } ElseIf (LEqual (Arg4, One)) { And (Arg2, RPCD, Local0) Or (Arg3, Local0, Local0) Store (Local0, RPCD) } ElseIf (LEqual (Arg4, 0x03)) { Store (Arg1, CAIR) And (Arg2, CADR, Local0) Or (Arg3, Local0, Local0) Store (Local0, CADR) } Else { Return (Zero) } Return (Zero) Return (Zero) } Method (RPD0, 0, Serialized) { RDCA (Zero, 0xA4, 0xFFFFFFFC, Zero, One) } Method (RPD3, 0, Serialized) { RDCA (Zero, 0xA4, 0xFFFFFFFC, 0x03, One) } Method (EPD0, 0, Serialized) { RDCA (Zero, Add (PMCP, 0x04), 0xFFFFFFFC, Zero, 0x03) } Method (EPD3, 0, Serialized) { RDCA (Zero, Add (PMCP, 0x04), 0xFFFFFFFC, 0x03, 0x03) } Method (CNRS, 0, Serialized) { If (LEqual (PCIT, Zero)) { Return (Zero) } RDCA (Zero, 0x10, Zero, Zero, 0x03) RDCA (Zero, 0x14, Zero, Zero, 0x03) RDCA (Zero, 0x18, Zero, Zero, 0x03) RDCA (Zero, 0x1C, Zero, Zero, 0x03) RDCA (Zero, 0x20, Zero, Zero, 0x03) RDCA (Zero, 0x24, Zero, Zero, 0x03) RDCA (Zero, 0x04, 0xFFFFFFF8, PCMD, 0x03) RDCA (Zero, PRBI, Zero, PRBD, 0x03) If (LNotEqual (PMSI, Zero)) { RDCA (Zero, Add (PMSI, 0x08), Zero, Zero, 0x03) } If (LNotEqual (PL1P, Zero)) { RDCA (Zero, Add (PL1P, 0x0C), 0xFFFFFF00, PL1B, 0x03) RDCA (Zero, Add (PL1P, 0x08), 0x0F, And (PL1A, 0xFFFFFFF0), 0x03) RDCA (Zero, Add (PL1P, 0x08), 0xFFFFFFFF, PL1A, 0x03) } If (LNotEqual (PLTP, Zero)) { RDCA (Zero, Add (PLTP, 0x04), 0xFFFFFFFF, PLTD, 0x03) } RDCA (Zero, Add (PCLP, 0x10), 0xFFFFFEBF, And (PEPL, 0xFFFC), 0x03) RDCA (Zero, Add (PCLP, 0x28), 0xFFFFFBFF, PED2, 0x03) RDCA (Zero, Add (PCLP, 0x08), 0xFFFFFF1F, PED1, 0x03) RDCA (Zero, 0x50, 0xFFFFFFBF, PRPL, One) RDCA (Zero, 0x68, 0xFFFFFBFF, PRDC, One) RDCA (Zero, 0xD4, 0xFFFFFFBF, 0x40, One) RDCA (Zero, 0x50, 0xFFFFFFDF, 0x20, One) While (LEqual (And (RDCA (Zero, 0x52, Zero, Zero, Zero), 0x2000), Zero)) { Stall (0x0A) } RDCA (Zero, Add (PCLP, 0x10), 0xFFFFFFFC, And (PEPL, 0x03), 0x03) Return (Zero) Return (Zero) } Device (NVM0) { Name (_ADR, 0x00C1FFFF) // _ADR: Address Method (_PS3, 0, Serialized) // _PS3: Power State 3 { If (LEqual (PCIT, Zero)) { } Store (RDCA (Zero, 0x04, Zero, Zero, 0x02), PCMD) If (LEqual (PCIT, One)) { Store (0x24, PRBI) Store (RDCA (Zero, 0x24, Zero, Zero, 0x02), PRBD) } ElseIf (LEqual (PCIT, 0x02)) { Store (0x10, PRBI) Store (RDCA (Zero, 0x10, Zero, Zero, 0x02), PRBD) } EPD3 () RPD3 () Return (Zero) } Method (_PS0, 0, Serialized) // _PS0: Power State 0 { If (LEqual (PCIT, Zero)) { } RPD0 () EPD0 () Store (RDCA (Zero, Add (PMCP, 0x04), Zero, Zero, 0x02), Local0) If (LEqual (And (Local0, 0x08), Zero)) { CNRS () } Return (Zero) } } } 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) } Device (BUS0) { Name (_CID, "smbus") Name (_ADR, Zero) Device (DVL0) { Name (_ADR, 0x57) Name (_CID, "diagsvault") } } } } Scope (_SB.PCI0.LPCB) { OperationRegion (CPSB, SystemMemory, 0xBF0B9E98, 0x10) Field (CPSB, AnyAcc, NoLock, Preserve) { RTCX, 1, SBB0, 7, SBB1, 8, SBB2, 8, SBB3, 8, SBB4, 8, SBB5, 8, SBB6, 8, SBB7, 8, SBB8, 8, SBB9, 8, SBBA, 8, SBBB, 8, SBBC, 8, SBBD, 8, SBBE, 8, SBBF, 8 } Method (SPTS, 1, NotSerialized) { Store (One, SLPX) Store (One, SLPE) Store (Zero, ^^RP01.RPAV) Store (Zero, ^^RP02.RPAV) Store (Zero, ^^RP03.RPAV) Store (Zero, ^^RP04.RPAV) Store (Zero, ^^RP05.RPAV) Store (Zero, ^^RP06.RPAV) Store (Zero, ^^RP07.RPAV) Store (Zero, ^^RP08.RPAV) } Method (SWAK, 1, NotSerialized) { Store (Zero, SLPE) If (RTCS) {} Else { Notify (PWRB, 0x02) } } OperationRegion (SMIE, SystemIO, PMBA, 0x04) Field (SMIE, ByteAcc, NoLock, Preserve) { , 10, RTCS, 1, , 3, PEXS, 1, WAKS, 1, Offset (0x03), PWBT, 1, Offset (0x04) } OperationRegion (SLPR, SystemIO, SMCR, 0x08) Field (SLPR, ByteAcc, NoLock, Preserve) { , 4, SLPE, 1, , 31, SLPX, 1, Offset (0x08) } } Scope (_SB.PCI0.RP01) { Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR1, LTRE) Store (PML1, LMSL) Store (PNL1, LNSL) Store (OBF1, OBFF) } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } } Scope (_SB.PCI0.RP02) { Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR2, LTRE) Store (PML2, LMSL) Store (PNL2, LNSL) Store (OBF2, OBFF) } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } } Scope (_SB.PCI0.RP03) { Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR3, LTRE) Store (PML3, LMSL) Store (PNL3, LNSL) Store (OBF3, OBFF) } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } } Scope (_SB.PCI0.RP04) { Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR4, LTRE) Store (PML4, LMSL) Store (PNL4, LNSL) Store (OBF4, OBFF) } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } } Scope (_SB.PCI0.RP05) { Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR5, LTRE) Store (PML5, LMSL) Store (PNL5, LNSL) Store (OBF5, OBFF) } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } } Scope (_SB.PCI0.RP06) { Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR6, LTRE) Store (PML6, LMSL) Store (PNL6, LNSL) Store (OBF6, OBFF) } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } } Scope (_SB.PCI0.RP07) { Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR7, LTRE) Store (PML7, LMSL) Store (PNL7, LNSL) Store (OBF7, OBFF) } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } } Scope (_SB.PCI0.RP08) { Method (_INI, 0, NotSerialized) // _INI: Initialize { Store (LTR8, LTRE) Store (PML8, LMSL) Store (PNL8, LNSL) Store (OBF8, OBFF) } Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake { Return (GPRW (0x09, 0x04)) } } OperationRegion (_SB.PCI0.LPCB.LPCR, PCI_Config, 0x80, 0x04) Field (\_SB.PCI0.LPCB.LPCR, ByteAcc, NoLock, Preserve) { CARN, 3, , 1, CBDR, 3, Offset (0x01), LTDR, 2, , 2, FDDR, 1, Offset (0x02), CALE, 1, CBLE, 1, LTLE, 1, FDLE, 1, Offset (0x03), GLLE, 1, GHLE, 1, KCLE, 1, MCLE, 1, C1LE, 1, C2LE, 1, Offset (0x04) } Method (UXDV, 1, Serialized) { Name (T_0, Zero) // _T_x: Emitted by ASL Compiler Store (0xFF, Local0) While (One) { Store (Add (Arg0, Zero), T_0) If (LEqual (T_0, 0x03F8)) { Store (Zero, Local0) } ElseIf (LEqual (T_0, 0x02F8)) { Store (One, Local0) } ElseIf (LEqual (T_0, 0x0220)) { Store (0x02, Local0) } ElseIf (LEqual (T_0, 0x0228)) { Store (0x03, Local0) } ElseIf (LEqual (T_0, 0x0238)) { Store (0x04, Local0) } ElseIf (LEqual (T_0, 0x02E8)) { Store (0x05, Local0) } ElseIf (LEqual (T_0, 0x0338)) { Store (0x06, Local0) } ElseIf (LEqual (T_0, 0x03E8)) { Store (0x07, Local0) } Break } Return (Local0) } Method (RRIO, 4, Serialized) { Name (T_0, Zero) // _T_x: Emitted by ASL Compiler While (One) { Store (Add (Arg0, Zero), T_0) If (LEqual (T_0, Zero)) { Store (Zero, CALE) Store (UXDV (Arg2), Local0) If (LNotEqual (Local0, 0xFF)) { Store (Local0, CARN) } If (Arg1) { Store (One, CALE) } } ElseIf (LEqual (T_0, One)) { Store (Zero, CBLE) Store (UXDV (Arg2), Local0) If (LNotEqual (Local0, 0xFF)) { Store (Local0, CBDR) } If (Arg1) { Store (One, CBLE) } } ElseIf (LEqual (T_0, 0x02)) { Store (Zero, LTLE) If (LEqual (Arg2, 0x0378)) { Store (Zero, LTDR) } If (LEqual (Arg2, 0x0278)) { Store (One, LTDR) } If (LEqual (Arg2, 0x03BC)) { Store (0x02, LTDR) } If (Arg1) { Store (One, LTLE) } } ElseIf (LEqual (T_0, 0x03)) { Store (Zero, FDLE) If (LEqual (Arg2, 0x03F0)) { Store (Zero, FDDR) } If (LEqual (Arg2, 0x0370)) { Store (One, FDDR) } If (Arg1) { Store (One, FDLE) } } ElseIf (LEqual (T_0, 0x08)) { If (LEqual (Arg2, 0x0200)) { If (Arg1) { Store (One, GLLE) } Else { Store (Zero, GLLE) } } If (LEqual (Arg2, 0x0208)) { If (Arg1) { Store (One, GHLE) } Else { Store (Zero, GHLE) } } } ElseIf (LEqual (T_0, 0x09)) { If (LEqual (Arg2, 0x0200)) { If (Arg1) { Store (One, GLLE) } Else { Store (Zero, GLLE) } } If (LEqual (Arg2, 0x0208)) { If (Arg1) { Store (One, GHLE) } Else { Store (Zero, GHLE) } } } ElseIf (LEqual (T_0, 0x0A)) { If (LOr (LEqual (Arg2, 0x60), LEqual (Arg2, 0x64))) { If (Arg1) { Store (One, KCLE) } Else { Store (Zero, KCLE) } } } ElseIf (LEqual (T_0, 0x0B)) { If (LOr (LEqual (Arg2, 0x62), LEqual (Arg2, 0x66))) { If (Arg1) { Store (One, MCLE) } Else { Store (Zero, MCLE) } } } ElseIf (LEqual (T_0, 0x0C)) { If (LEqual (Arg2, 0x2E)) { If (Arg1) { Store (One, C1LE) } Else { Store (Zero, C1LE) } } If (LEqual (Arg2, 0x4E)) { If (Arg1) { Store (One, C2LE) } Else { Store (Zero, C2LE) } } } ElseIf (LEqual (T_0, 0x0D)) { If (LEqual (Arg2, 0x2E)) { If (Arg1) { Store (One, C1LE) } Else { Store (Zero, C1LE) } } If (LEqual (Arg2, 0x4E)) { If (Arg1) { Store (One, C2LE) } Else { Store (Zero, C2LE) } } } Break } } Method (RDMA, 3, NotSerialized) { } Scope (_SB.PCI0) { Name (PA0H, Zero) Name (PA1H, Zero) Name (PA1L, Zero) Name (PA2H, Zero) Name (PA2L, Zero) Name (PA3H, Zero) Name (PA3L, Zero) Name (PA4H, Zero) Name (PA4L, Zero) Name (PA5H, Zero) Name (PA5L, Zero) Name (PA6H, Zero) Name (PA6L, Zero) Method (NPTS, 1, NotSerialized) { Store (PM0H, PA0H) Store (PM1H, PA1H) Store (PM1L, PA1L) Store (PM2H, PA2H) Store (PM2L, PA2L) Store (PM3H, PA3H) Store (PM3L, PA3L) Store (PM4H, PA4H) Store (PM4L, PA4L) Store (PM5H, PA5H) Store (PM5L, PA5L) Store (PM6H, PA6H) Store (PM6L, PA6L) } Method (NWAK, 1, NotSerialized) { Store (PA0H, PM0H) Store (PA1H, PM1H) Store (PA1L, PM1L) Store (PA2H, PM2H) Store (PA2L, PM2L) Store (PA3H, PM3H) Store (PA3L, PM3L) Store (PA4H, PM4H) Store (PA4L, PM4L) Store (PA5H, PM5H) Store (PA5L, PM5L) Store (PA6H, PM6H) Store (PA6L, PM6L) } } Scope (_PR) { Processor (CPU0, 0x01, 0x00001810, 0x06) {} Processor (CPU1, 0x02, 0x00001810, 0x06) {} Processor (CPU2, 0x03, 0x00001810, 0x06) {} Processor (CPU3, 0x04, 0x00001810, 0x06) {} Processor (CPU4, 0x05, 0x00001810, 0x06) {} Processor (CPU5, 0x06, 0x00001810, 0x06) {} Processor (CPU6, 0x07, 0x00001810, 0x06) {} Processor (CPU7, 0x08, 0x00001810, 0x06) {} } Scope (_SB) { Device (PAGD) { Name (_HID, "ACPI000C") // _HID: Hardware ID Method (_STA, 0, NotSerialized) // _STA: Status { If (_OSI ("Processor Aggregator Device")) { Return (0x0F) } Else { Return (Zero) } } Name (PURX, Package (0x02) { One, Zero }) Method (_PUR, 0, NotSerialized) // _PUR: Processor Utilization Request { Return (PURX) } } } Name (ECUP, One) Mutex (EHLD, 0x00) Scope (\) { Device (NFC) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { If (LEqual (NFCE, 0x02)) { Return (0x4254103B) } ElseIf (LEqual (NFCE, 0x03)) { Return (0x0210103B) } Return (Zero) } Method (_STA, 0, NotSerialized) // _STA: Status { If (LOr (LEqual (NFCE, 0x02), LEqual (NFCE, 0x03))) { Return (0x0F) } Return (Zero) } } Device (DFUD) { Name (_HID, EisaId ("INT3397")) // _HID: Hardware ID Name (DFUP, Zero) Method (_INI, 0, NotSerialized) // _INI: Initialize { If (LOr (LEqual (BID, 0x43), LEqual (BID, 0x4A))) { Store (0x42, DFUP) } Else { Store (0x46, DFUP) } } Method (_STA, 0, Serialized) // _STA: Status { Name (T_0, Zero) // _T_x: Emitted by ASL Compiler While (One) { Store (BID, T_0) If (LEqual (T_0, 0x30)) { Return (Zero) } ElseIf (LEqual (DFUE, 0x03)) { Return (0x0F) } Else { Return (Zero) } Break } Return (Zero) } } } Mutex (MUTX, 0x00) OperationRegion (DEB0, SystemIO, 0x80, One) Field (DEB0, ByteAcc, NoLock, Preserve) { DBG8, 8 } OperationRegion (DEB1, SystemIO, 0x90, 0x02) Field (DEB1, WordAcc, NoLock, Preserve) { DBG9, 16 } OperationRegion (PRT0, SystemIO, 0x80, 0x04) Field (PRT0, DWordAcc, Lock, Preserve) { P80H, 32 } Method (P8XH, 2, Serialized) { If (LEqual (Arg0, Zero)) { Store (Or (And (P80D, 0xFFFFFF00), Arg1), P80D) } If (LEqual (Arg0, One)) { Store (Or (And (P80D, 0xFFFF00FF), ShiftLeft (Arg1, 0x08)), P80D) } If (LEqual (Arg0, 0x02)) { Store (Or (And (P80D, 0xFF00FFFF), ShiftLeft (Arg1, 0x10)), P80D) } If (LEqual (Arg0, 0x03)) { Store (Or (And (P80D, 0x00FFFFFF), ShiftLeft (Arg1, 0x18)), P80D) } Store (P80D, P80H) } Method (ADBG, 1, Serialized) { If (CondRefOf (MDBG)) { Return (MDBG) } Return (Zero) } OperationRegion (SPRT, SystemIO, 0xB2, 0x02) Field (SPRT, ByteAcc, Lock, Preserve) { SSMP, 8 } Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model { Store (Arg0, GPIC) Store (Arg0, PICM) } Method (_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep { Store (Zero, P80D) P8XH (Zero, Arg0) PTS (Arg0) If (CondRefOf (\_SB.TPM.PTS)) { \_SB.TPM.PTS (Arg0) } If (LOr (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)), LEqual (Arg0, 0x05))) { If (LEqual (PFLV, 0x02)) { Store (One, GP27) } } If (LEqual (BID, 0x31)) { \_SB.WTGP (0x3C, Zero) \_SB.WTGP (0x54, Zero) } If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x81)), LOr (LEqual (BID, 0x82), LEqual (BID, 0x83)))) { \_SB.WTGP (0x3C, Zero) \_SB.WTGP (0x54, Zero) } If (LOr (LOr (LEqual (BID, 0x84), LEqual (BID, 0x85)), LEqual (BID, 0x86))) { \_SB.WTGP (0x3C, Zero) \_SB.WTGP (0x54, Zero) } If (LEqual (BID, 0x31)) { \_SB.WTGP (0x3A, Zero) } } Method (_WAK, 1, Serialized) // _WAK: Wake { P8XH (One, 0xAB) WAK (Arg0) ADBG ("_WAK") If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04))) { If (CondRefOf (\_SB.PCI0.EPON)) { \_SB.PCI0.EPON () } If (CondRefOf (\_SB.PCI0.RP05.PEGP.EPON)) { \_SB.PCI0.RP05.PEGP.EPON () } } If (LAnd (LNotEqual (And (\_SB.PCI0.HDAU.ABAR, 0xFFFFC004), 0xFFFFC004), LNotEqual (And (\_SB.PCI0.HDAU.ABAR, 0xFFFFC000), Zero))) { Store (\_SB.PCI0.HDAU.ABAR, \_SB.PCI0.HDAU.BARA) } If (And (ICNF, 0x10)) { If (And (\_SB.PCI0.IGPU.TCHE, 0x0100)) { If (LAnd (And (\_SB.IAOE.IBT1, One), And (\_SB.IAOE.WKRS, 0x10))) { Store (Or (And (\_SB.PCI0.IGPU.STAT, 0xFFFFFFFFFFFFFFFC), One), \_SB.PCI0.IGPU.STAT) } Else { Store (And (\_SB.PCI0.IGPU.STAT, 0xFFFFFFFFFFFFFFFC), \_SB.PCI0.IGPU.STAT) } } If (LEqual (\_SB.IAOE.ITIMR, Zero)) { If (CondRefOf (\_SB.PCI0.LPCB.H_EC.WTMS)) { \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.WTMS)) } } If (CondRefOf (\_SB.IAOE.ECTM)) { Store (Zero, \_SB.IAOE.ECTM) } If (CondRefOf (\_SB.IAOE.RCTM)) { Store (Zero, \_SB.IAOE.RCTM) } } If (NEXP) { If (And (OSCC, 0x02)) { \_SB.PCI0.NHPG () } If (And (OSCC, 0x04)) { \_SB.PCI0.NPME () } } If (LEqual (Arg0, 0x03)) { If (LEqual (Zero, ACTT)) { If (LEqual (ECON, One)) { \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.CFAN)) } } } If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04))) { If (LAnd (CondRefOf (\_SB.PCI0.LPCB.H_EC.PB10), ECON)) { If (And (PB1E, 0x80)) { \_SB.PCI0.LPCB.H_EC.ECWT (One, RefOf (\_SB.PCI0.LPCB.H_EC.PB10)) } } If (And (GBSX, 0x40)) { \_SB.PCI0.IGPU.IUEH (0x06) } If (And (GBSX, 0x80)) { \_SB.PCI0.IGPU.IUEH (0x07) } If (LAnd (\_PR.DTSE, LGreater (TCNT, One))) { TRAP (0x02, 0x14) } If (LEqual (ECON, One)) { If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04))) { Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.LSTE)), LIDS) If (IGDS) { If (LEqual (LIDS (), Zero)) { Store (0x80000000, \_SB.PCI0.IGPU.CLID) } If (LEqual (LIDS (), One)) { Store (0x80000003, \_SB.PCI0.IGPU.CLID) } } Notify (\_SB.LID0, 0x80) } If (LNotEqual (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.DOCK)), DSTS)) { Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.DOCK)), DSTS) If (LAnd (\_SB.PCI0.HDEF.DCKS, One)) { Store (DSTS, \_SB.PCI0.HDEF.DCKA) } If (LEqual (DSTS, One)) { If (LEqual (Arg0, 0x03)) { Sleep (0x03E8) Store (DKSM, SSMP) Sleep (0x03E8) } Notify (\_SB.PCI0.DOCK, Zero) } Else { Notify (\_SB.PCI0.DOCK, One) } } If (LEqual (BNUM, Zero)) { If (LNotEqual (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.VPWR)), PWRS)) { Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.VPWR)), PWRS) PNOT () } } ElseIf (LNotEqual (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.RPWR)), PWRS)) { Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.RPWR)), PWRS) PNOT () } } If (LEqual (RP1D, Zero)) { Notify (\_SB.PCI0.RP01, Zero) } If (LEqual (RP2D, Zero)) { Notify (\_SB.PCI0.RP02, Zero) } If (LEqual (RP3D, Zero)) { Notify (\_SB.PCI0.RP03, Zero) } If (LEqual (RP4D, Zero)) { Notify (\_SB.PCI0.RP04, Zero) } If (LEqual (RP5D, Zero)) { Notify (\_SB.PCI0.RP05, Zero) } If (LEqual (RP6D, Zero)) { Notify (\_SB.PCI0.RP06, Zero) } If (LEqual (RP7D, Zero)) { If (LEqual (DSTS, Zero)) { Notify (\_SB.PCI0.RP07, Zero) } } If (LEqual (RP8D, Zero)) { If (LEqual (DSTS, Zero)) { Notify (\_SB.PCI0.RP08, Zero) } } } If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04))) { \_SB.PCI0.XHC.XWAK () } Return (Package (0x02) { Zero, Zero }) } Method (GETB, 3, Serialized) { Multiply (Arg0, 0x08, Local0) Multiply (Arg1, 0x08, Local1) CreateField (Arg2, Local0, Local1, TBF3) Return (TBF3) } Method (PNOT, 0, Serialized) { If (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) } If (LEqual (ECON, One)) { Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.B1CC)), B1SC) Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.B1ST)), B1SS) Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.B2CC)), B2SC) Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.B2ST)), B2SS) Notify (\_SB.PCI0.LPCB.H_EC.BAT0, 0x81) Notify (\_SB.PCI0.LPCB.H_EC.BAT1, 0x81) Notify (\_SB.PCI0.LPCB.H_EC.BAT2, 0x81) } } OperationRegion (MBAR, SystemMemory, Add (\_SB.PCI0.GMHB (), 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) Return (Zero) Return (Zero) } 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, LNot (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 (\) { OperationRegion (IO_H, SystemIO, 0x1000, 0x04) Field (IO_H, ByteAcc, NoLock, Preserve) { TRPH, 8 } } Method (TRAP, 2, Serialized) { Store (Arg1, SMIF) If (LEqual (Arg0, 0x02)) { Store (Arg1, \_PR.DTSF) Store (Zero, \_PR.TRPD) Return (\_PR.DTSF) } If (LEqual (Arg0, 0x03)) { Store (Zero, TRPH) } If (LEqual (Arg0, 0x04)) { Store (Zero, \_PR.TRPF) } Return (SMIF) } Scope (_SB.PCI0) { Method (PTMA, 0, NotSerialized) { Return (\_PR.BGMA) } Method (PTMS, 0, NotSerialized) { Return (\_PR.BGMS) } Method (PTIA, 0, NotSerialized) { Return (\_PR.BGIA) } Method (_INI, 0, Serialized) // _INI: Initialize { Store (0x07D9, OSYS) Store (0x07D9, OSTY) If (CondRefOf (\_OSI, Local0)) { If (_OSI ("Darwin")) { Store (0x2710, OSYS) } If (_OSI ("Windows 2001")) { Store (0x07D1, OSTY) } If (_OSI ("Windows 2001.1")) { Store (0x07D1, OSTY) } If (_OSI ("FreeBSD")) { Store (0x07D1, OSTY) } If (_OSI ("HP-UX")) { Store (0x07D1, OSTY) } If (_OSI ("OpenVMS")) { Store (0x07D1, OSTY) } If (_OSI ("Windows 2001 SP1")) { Store (0x07D1, OSTY) } If (_OSI ("Windows 2001 SP2")) { Store (0x07D1, OSTY) } If (_OSI ("Windows 2001 SP3")) { Store (0x07D1, OSTY) } If(LOr(_OSI("Darwin"),_OSI("Windows 2006"))) { Store (0x07D6, OSTY) } If (_OSI ("Windows 2006 SP1")) { Store (0x07D6, OSTY) } If(LOr(_OSI("Darwin"),_OSI("Windows 2009"))) { Store (0x07D9, OSYS) Store (0x07D9, OSTY) } If(LOr(_OSI("Darwin"),_OSI("Windows 2012"))) { Store (0x07DC, OSYS) Store (0x07DC, OSTY) } If (_OSI ("Windows 2013")) { Store (0x07DD, OSYS) Store (0x07DD, OSTY) } } PINI () } Method (NHPG, 0, Serialized) { Store (Zero, ^RP01.HPEX) Store (Zero, ^RP02.HPEX) Store (Zero, ^RP03.HPEX) Store (Zero, ^RP04.HPEX) Store (Zero, ^RP05.HPEX) Store (Zero, ^RP06.HPEX) Store (Zero, ^RP07.HPEX) Store (Zero, ^RP08.HPEX) Store (One, ^RP01.HPSX) Store (One, ^RP02.HPSX) Store (One, ^RP03.HPSX) Store (One, ^RP04.HPSX) Store (One, ^RP05.HPSX) Store (One, ^RP06.HPSX) Store (One, ^RP07.HPSX) Store (One, ^RP08.HPSX) } Method (NPME, 0, Serialized) { Store (Zero, ^RP01.PMEX) Store (Zero, ^RP02.PMEX) Store (Zero, ^RP03.PMEX) Store (Zero, ^RP04.PMEX) Store (Zero, ^RP05.PMEX) Store (Zero, ^RP06.PMEX) Store (Zero, ^RP07.PMEX) Store (Zero, ^RP08.PMEX) Store (One, ^RP01.PMSX) Store (One, ^RP02.PMSX) Store (One, ^RP03.PMSX) Store (One, ^RP04.PMSX) Store (One, ^RP05.PMSX) Store (One, ^RP06.PMSX) Store (One, ^RP07.PMSX) Store (One, ^RP08.PMSX) } } Scope (\) { Name (PICM, Zero) Name (PRWP, Package (0x02) { Zero, Zero }) Method (GPRW, 2, NotSerialized) { Store (Arg0, Index (PRWP, Zero)) Store (ShiftLeft (SS1, One), Local0) Or (Local0, ShiftLeft (SS2, 0x02), Local0) Or (Local0, ShiftLeft (SS3, 0x03), Local0) Or (Local0, ShiftLeft (SS4, 0x04), Local0) If (And (ShiftLeft (One, Arg1), Local0)) { Store (Arg1, Index (PRWP, One)) } Else { ShiftRight (Local0, One, Local0) FindSetLeftBit (Local0, Index (PRWP, One)) } Return (PRWP) } } Scope (_SB) { Name (OSCI, Zero) Name (OSCO, Zero) Method (_OSC, 4, Serialized) // _OSC: Operating System Capabilities { If (LNotEqual (OSCM (Arg0, Arg1, Arg2, Arg3), Zero)) { Return (Arg3) } CreateDWordField (Arg3, Zero, STS0) CreateDWordField (Arg3, 0x04, CAP0) If (LEqual (Arg0, 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) } } } Else { And (STS0, 0xFFFFFF00, STS0) Or (STS0, 0x0A, STS0) } } Else { And (STS0, 0xFFFFFF00, STS0) Or (STS0, 0x06, STS0) } Return (Arg3) } } Scope (_SB) { Device (SLPB) { Name (_HID, EisaId ("PNP0C0E")) // _HID: Hardware ID Name (_STA, 0x0B) // _STA: Status } } 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 _Y4F) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00008000, // Address Length _Y51) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y52) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00001000, // Address Length _Y53) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00000000, // Address Length _Y54) 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 0x00010000, // Address Length _Y50) }) Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings { CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y4F._BAS, RBR0) // _BAS: Base Address ShiftLeft (^^LPCB.RCBA, 0x0E, RBR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y50._BAS, SNR0) // _BAS: Base Address Store (SRMB, SNR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y51._BAS, MBR0) // _BAS: Base Address Store (GMHB (), MBR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y52._BAS, DBR0) // _BAS: Base Address Store (GDMB (), DBR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y53._BAS, EBR0) // _BAS: Base Address Store (GEPB (), EBR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y54._BAS, XBR0) // _BAS: Base Address Store (GPCB (), XBR0) CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y54._LEN, XSZ0) // _LEN: Length Store (GPCL (), XSZ0) Return (BUF0) } } } Method (BRTN, 1, Serialized) { If (LEqual (And (DIDX, 0x0F00), 0x0400)) { Notify (\_SB.PCI0.IGPU.DD1F, Arg0) } } Scope (_GPE) { Method (_L09, 0, NotSerialized) // _Lxx: Level-Triggered GPE { If (LEqual (RP1D, Zero)) { \_SB.PCI0.RP01.HPME () Notify (\_SB.PCI0.RP01, 0x02) } If (LEqual (RP2D, Zero)) { \_SB.PCI0.RP02.HPME () Notify (\_SB.PCI0.RP02, 0x02) } If (LEqual (RP3D, Zero)) { \_SB.PCI0.RP03.HPME () Notify (\_SB.PCI0.RP03, 0x02) } If (LEqual (RP4D, Zero)) { \_SB.PCI0.RP04.HPME () Notify (\_SB.PCI0.RP04, 0x02) } If (LEqual (RP5D, Zero)) { \_SB.PCI0.RP05.HPME () Notify (\_SB.PCI0.RP05, 0x02) } If (LEqual (RP6D, Zero)) { \_SB.PCI0.RP06.HPME () Notify (\_SB.PCI0.RP06, 0x02) } If (LEqual (RP7D, Zero)) { \_SB.PCI0.RP07.HPME () Notify (\_SB.PCI0.RP07, 0x02) } If (LEqual (RP8D, Zero)) { \_SB.PCI0.RP08.HPME () Notify (\_SB.PCI0.RP08, 0x02) } If (LEqual (D1F0, One)) { \_SB.PCI0.PEG0.HPME () Notify (\_SB.PCI0.PEG0, 0x02) Notify (\_SB.PCI0.PEG0.PEGP, 0x02) } If (LEqual (D1F1, One)) { \_SB.PCI0.PEG1.HPME () Notify (\_SB.PCI0.PEG1, 0x02) } If (LEqual (D1F2, One)) { \_SB.PCI0.PEG2.HPME () Notify (\_SB.PCI0.PEG2, 0x02) } } Method (_L01, 0, NotSerialized) // _Lxx: Level-Triggered GPE { Add (L01C, One, L01C) P8XH (Zero, One) P8XH (One, L01C) If (LAnd (LEqual (RP1D, Zero), \_SB.PCI0.RP01.HPSX)) { Sleep (0x64) If (\_SB.PCI0.RP01.PDCX) { Store (One, \_SB.PCI0.RP01.PDCX) Store (One, \_SB.PCI0.RP01.HPSX) If (LNot (\_SB.PCI0.RP01.PDSX)) { Store (Zero, \_SB.PCI0.RP01.L0SE) } Notify (\_SB.PCI0.RP01, Zero) } Else { Store (One, \_SB.PCI0.RP01.HPSX) } } If (LAnd (LEqual (RP2D, Zero), \_SB.PCI0.RP02.HPSX)) { Sleep (0x64) If (\_SB.PCI0.RP02.PDCX) { Store (One, \_SB.PCI0.RP02.PDCX) Store (One, \_SB.PCI0.RP02.HPSX) If (LNot (\_SB.PCI0.RP02.PDSX)) { Store (Zero, \_SB.PCI0.RP02.L0SE) } Notify (\_SB.PCI0.RP02, Zero) } Else { Store (One, \_SB.PCI0.RP02.HPSX) } } If (LAnd (LEqual (RP3D, Zero), \_SB.PCI0.RP03.HPSX)) { Sleep (0x64) If (\_SB.PCI0.RP03.PDCX) { Store (One, \_SB.PCI0.RP03.PDCX) Store (One, \_SB.PCI0.RP03.HPSX) If (LNot (\_SB.PCI0.RP03.PDSX)) { Store (Zero, \_SB.PCI0.RP03.L0SE) } Notify (\_SB.PCI0.RP03, Zero) } Else { Store (One, \_SB.PCI0.RP03.HPSX) } } If (LAnd (LEqual (RP4D, Zero), \_SB.PCI0.RP04.HPSX)) { Sleep (0x64) If (\_SB.PCI0.RP04.PDCX) { Store (One, \_SB.PCI0.RP04.PDCX) Store (One, \_SB.PCI0.RP04.HPSX) If (LNot (\_SB.PCI0.RP04.PDSX)) { Store (Zero, \_SB.PCI0.RP04.L0SE) } Notify (\_SB.PCI0.RP04, Zero) } Else { Store (One, \_SB.PCI0.RP04.HPSX) } } If (LAnd (LEqual (RP5D, Zero), \_SB.PCI0.RP05.HPSX)) { If (LOr (LNotEqual (TBTS, One), LNotEqual (TBSE, 0x05))) { Sleep (0x64) } If (\_SB.PCI0.RP05.PDCX) { Store (One, \_SB.PCI0.RP05.PDCX) Store (One, \_SB.PCI0.RP05.HPSX) If (LNot (\_SB.PCI0.RP05.PDSX)) { Store (Zero, \_SB.PCI0.RP05.L0SE) } If (LOr (LNotEqual (TBTS, One), LNotEqual (TBSE, 0x05))) { Notify (\_SB.PCI0.RP05, Zero) } } Else { Store (One, \_SB.PCI0.RP05.HPSX) } } If (LAnd (LEqual (RP6D, Zero), \_SB.PCI0.RP06.HPSX)) { If (LOr (LNotEqual (TBTS, One), LNotEqual (TBSE, 0x06))) { Sleep (0x64) } If (\_SB.PCI0.RP06.PDCX) { Store (One, \_SB.PCI0.RP06.PDCX) Store (One, \_SB.PCI0.RP06.HPSX) If (LNot (\_SB.PCI0.RP06.PDSX)) { Store (Zero, \_SB.PCI0.RP06.L0SE) } If (LOr (LNotEqual (TBTS, One), LNotEqual (TBSE, 0x06))) { Notify (\_SB.PCI0.RP06, Zero) } } Else { Store (One, \_SB.PCI0.RP06.HPSX) } } If (LAnd (LEqual (RP7D, Zero), \_SB.PCI0.RP07.HPSX)) { If (LOr (LNotEqual (TBTS, One), LNotEqual (TBSE, 0x07))) { Sleep (0x64) } If (\_SB.PCI0.RP07.PDCX) { Store (One, \_SB.PCI0.RP07.PDCX) Store (One, \_SB.PCI0.RP07.HPSX) If (LNot (\_SB.PCI0.RP07.PDSX)) { Store (Zero, \_SB.PCI0.RP07.L0SE) } If (LEqual (PFLV, 0x02)) { If (LOr (LNotEqual (TBTS, One), LNotEqual (TBSE, 0x07))) { Notify (\_SB.PCI0.RP07, Zero) } } ElseIf (ECON) { If (LEqual (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.DOCK)), Zero)) { Notify (\_SB.PCI0.RP07, Zero) } } } Else { Store (One, \_SB.PCI0.RP07.HPSX) } } If (LAnd (LEqual (RP8D, Zero), \_SB.PCI0.RP08.HPSX)) { If (LOr (LNotEqual (TBTS, One), LNotEqual (TBSE, 0x08))) { Sleep (0x64) } If (\_SB.PCI0.RP08.PDCX) { Store (One, \_SB.PCI0.RP08.PDCX) Store (One, \_SB.PCI0.RP08.HPSX) If (LNot (\_SB.PCI0.RP08.PDSX)) { Store (Zero, \_SB.PCI0.RP08.L0SE) } If (LEqual (PFLV, 0x02)) { If (LOr (LNotEqual (TBTS, One), LNotEqual (TBSE, 0x08))) { Notify (\_SB.PCI0.RP08, Zero) } } ElseIf (ECON) { If (LEqual (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.DOCK)), Zero)) { Notify (\_SB.PCI0.RP08, Zero) } } } Else { Store (One, \_SB.PCI0.RP08.HPSX) } } } Method (_L02, 0, NotSerialized) // _Lxx: Level-Triggered GPE { Store (Zero, GPEC) If (CondRefOf (\_PR.DTSE)) { If (LGreaterEqual (\_PR.DTSE, One)) { Notify (\_TZ.TZ00, 0x80) Notify (\_TZ.TZ01, 0x80) } } If (CondRefOf (\_SB.PCCD.PENB)) { If (LEqual (\_SB.PCCD.PENB, One)) { Notify (\_SB.PCCD, 0x80) } } } Method (_L06, 0, NotSerialized) // _Lxx: Level-Triggered GPE { If (LAnd (\_SB.PCI0.IGPU.GSSE, LNot (GSMI))) { \_SB.PCI0.IGPU.GSCI () } } Method (_L07, 0, NotSerialized) // _Lxx: Level-Triggered GPE { Store (0x20, \_SB.PCI0.SBUS.HSTS) } Method (_L1E, 0, NotSerialized) // _Lxx: Level-Triggered GPE { If (LEqual (ECON, Zero)) { Return (Zero) } If (LNotEqual (LIDS (), \_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.LSTE)))) { Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.LSTE)), LIDS) If (IGDS) { If (\_SB.PCI0.IGPU.GLID (LIDS ())) { Or (0x80000000, \_SB.PCI0.IGPU.CLID, \_SB.PCI0.IGPU.CLID) } } Notify (\_SB.LID0, 0x80) } Else { If (LEqual (BNUM, Zero)) { If (LNotEqual (PWRS, \_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.VPWR)))) { Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.VPWR)), PWRS) PNOT () } } Notify (\_SB.PWRB, 0x02) } Return (Zero) } Method (_L00, 0, NotSerialized) // _Lxx: Level-Triggered GPE { If (LEqual (BID, 0x35)) { ADBG ("Rotation Lock") Sleep (0x03E8) \_SB.PCI0.IGPU.IUEH (0x04) } } } Scope (_SB.PCI0.RP01.PXSX) { } Scope (_SB.PCI0.RP02.PXSX) { } Scope (_SB.PCI0.RP03.PXSX) { } Scope (_SB.PCI0.RP04.PXSX) { } Scope (_SB.PCI0.RP05.PXSX) { } Scope (_SB.PCI0.RP06.PXSX) { } Scope (_SB.PCI0.RP07.PXSX) { } Scope (_SB.PCI0.RP08.PXSX) { } Scope (_SB.PCI0) { Method (WHIT, 0, NotSerialized) { Return (Package (0x01) { Package (0x05) { "DockOemId", "DockSkuId", Zero, 0x02, 0x02 } }) } Method (SELF, 0, NotSerialized) { Return (Package (0x02) { "PcOemId", "PcSkuId" }) } } Scope (_SB.PCI0.ADSP) { Method (SSPI, 1, NotSerialized) { Store (Arg0, Index (DerefOf (Index (SSPP, Zero)), One)) Multiply (MCLK, 0x000FA000, Local0) XOr (SSPM, One, Local1) Store (Local0, Index (DerefOf (Index (SSPP, 0x02)), One)) Store (Local1, Index (DerefOf (Index (SSPP, 0x04)), One)) } Method (_INI, 0, Serialized) // _INI: Initialize { Name (T_0, Zero) // _T_x: Emitted by ASL Compiler Store (ADBT, ABTH) Store (ADFM, FMSK) While (One) { Store (ToInteger (CODS), T_0) If (LEqual (T_0, Zero)) { ^^I2C0.ACD0._INI () Store (^^I2C0.ACD0.MCLK, MCLK) Store (^^I2C0.ACD0.SCLK, SCLK) Store (^^I2C0.ACD0.SSPM, SSPM) Store (^^I2C0.ACD0._HID (), Local0) } ElseIf (LEqual (T_0, One)) { ^^I2C0.ACD0._INI () Store (^^I2C0.ACD0.MCLK, MCLK) Store (^^I2C0.ACD0.SCLK, SCLK) Store (^^I2C0.ACD0.SSPM, SSPM) Store (^^I2C0.ACD0._HID (), Local0) } ElseIf (LEqual (T_0, 0x02)) { ^^I2C0.ACD1._INI () Store (^^I2C0.ACD1.MCLK, MCLK) Store (^^I2C0.ACD1.SCLK, SCLK) Store (^^I2C0.ACD1.SSPM, SSPM) Store (^^I2C0.ACD1._HID, Local0) } ElseIf (LEqual (T_0, 0x03)) { ^^I2C0.ACD2._INI () Store (^^I2C0.ACD2.MCLK, MCLK) Store (^^I2C0.ACD2.SCLK, SCLK) Store (^^I2C0.ACD2.SSPM, SSPM) Store (^^I2C0.ACD2._HID (), Local0) } ElseIf (LEqual (T_0, 0x04)) { ^^I2C0.ACD2._INI () Store (^^I2C0.ACD2.MCLK, MCLK) Store (^^I2C0.ACD2.SCLK, SCLK) Store (^^I2C0.ACD2.SSPM, SSPM) Store (^^I2C0.ACD2._HID (), Local0) } ElseIf (LEqual (T_0, 0x05)) { ^^I2C0.ACD3._INI () Store (^^I2C0.ACD3.MCLK, MCLK) Store (^^I2C0.ACD3.SCLK, SCLK) Store (^^I2C0.ACD3.SSPM, SSPM) Store (^^I2C0.ACD3._HID, Local0) } Else { ^^I2C0.ACD0._INI () Store (^^I2C0.ACD0.MCLK, MCLK) Store (^^I2C0.ACD0.SCLK, SCLK) Store (^^I2C0.ACD0.SSPM, SSPM) } Break } SSPI (Local0) } } Scope (_SB.PCI0.SATA.PRT0) { 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 (DVS0, One), LEqual (And (FDEV, One), One)), LEqual (And (FDRP, 0x80), 0x80))) { Name (PIB1, Buffer (0x07) { 0x10, 0x09, 0x00, 0x00, 0x00, 0xB0, 0xEF }) Return (PIB1) } Name (PIB2, Buffer (0x07) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) Return (PIB2) } } Scope (_SB.PCI0.SATA.PRT1) { Name (FDEV, Zero) Name (FDRP, Zero) Name (SSDF, Zero) Method (_SDD, 1, Serialized) // _SDD: Set Device Data { CreateWordField (Arg0, 0xA0, W080) CreateWordField (Arg0, 0x01B2, W217) If (LEqual (SDPO, One)) { Store (One, SSDF) } ElseIf (LEqual (SDPO, 0x02)) { If (LNotEqual (W080, 0xFFFF)) { If (LAnd (W080, 0x0100)) { If (LEqual (W217, One)) { Store (One, SSDF) } } } } 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))) { 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) } } Scope (_SB.PCI0.SATA.PRT2) { Name (FDEV, Zero) Name (FDRP, Zero) Name (SSDF, Zero) Method (_SDD, 1, Serialized) // _SDD: Set Device Data { CreateWordField (Arg0, 0xA0, W080) CreateWordField (Arg0, 0x01B2, W217) If (LEqual (SDPO, One)) { Store (One, SSDF) } ElseIf (LEqual (SDPO, 0x02)) { If (LNotEqual (W080, 0xFFFF)) { If (LAnd (W080, 0x0100)) { If (LEqual (W217, One)) { Store (One, SSDF) } } } } 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) } } Scope (_SB.PCI0.SATA.PRT3) { 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) } } Scope (_SB.PCI0) { Device (HECI) { Name (_ADR, 0x00160000) // _ADR: Address } } Scope (_SB.PCI0.XHC.RHUB) { Name (UPCN, Package (0x04) { Zero, Zero, Zero, Zero }) Name (UPC3, Package (0x04) { 0xFF, 0x03, Zero, Zero }) Name (UPC2, Package (0x04) { 0xFF, Zero, Zero, Zero }) Name (UPCP, Package (0x04) { 0xFF, 0xFF, Zero, Zero }) Name (PLDN, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) Name (PLDV, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) Name (PLDR, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) Name (PLD1, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x69, 0x0C, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00 } }) Name (PLD2, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x69, 0x0C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00 } }) Name (PLD3, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00 } }) Name (PLD4, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00 } }) Name (PLD5, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00 } }) Name (PLD6, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x69, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00 } }) Name (PLD7, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x03, 0x00, 0x00, 0x00, 0x00 } }) Name (PLD8, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00 } }) Name (PLD9, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x04, 0x00, 0x00, 0x00, 0x00 } }) Name (PLDA, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00 } }) Name (PLDB, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x31, 0x1C, 0x80, 0x05, 0x00, 0x00, 0x00, 0x00 } }) Name (PLDC, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x31, 0x1C, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00 } }) Name (PLDD, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x31, 0x1C, 0x80, 0x06, 0x00, 0x00, 0x00, 0x00 } }) Name (PLDE, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x31, 0x1C, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00 } }) Name (PLDF, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x30, 0x1C, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00 } }) Name (PLG1, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00 } }) Name (PLG2, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x41, 0x00, 0x00, 0x00, 0x00 } }) Name (PLG3, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x42, 0x00, 0x00, 0x00, 0x00 } }) Name (PLG4, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x42, 0x00, 0x00, 0x00, 0x00 } }) Name (PLG5, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x43, 0x00, 0x00, 0x00, 0x00 } }) Name (PLG6, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x43, 0x00, 0x00, 0x00, 0x00 } }) Name (PLG7, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x44, 0x00, 0x00, 0x00, 0x00 } }) Name (PLG8, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x44, 0x00, 0x00, 0x00, 0x00 } }) Name (PLH1, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x45, 0x00, 0x00, 0x00, 0x00 } }) Name (PLH2, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x45, 0x00, 0x00, 0x00, 0x00 } }) Name (PLH3, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x46, 0x00, 0x00, 0x00, 0x00 } }) Name (PLH4, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x46, 0x00, 0x00, 0x00, 0x00 } }) Name (PLH5, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x47, 0x00, 0x00, 0x00, 0x00 } }) Name (PLH6, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x47, 0x00, 0x00, 0x00, 0x00 } }) Name (PLH7, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x48, 0x00, 0x00, 0x00, 0x00 } }) Name (PLH8, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x48, 0x00, 0x00, 0x00, 0x00 } }) Name (PLJ1, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00 } }) Name (PLJ2, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x49, 0x00, 0x00, 0x00, 0x00 } }) Name (PLJ3, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x4A, 0x00, 0x00, 0x00, 0x00 } }) Name (PLJ4, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x4A, 0x00, 0x00, 0x00, 0x00 } }) Name (PLJ5, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x4B, 0x00, 0x00, 0x00, 0x00 } }) Name (PLJ6, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x4B, 0x00, 0x00, 0x00, 0x00 } }) Name (PLJ7, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x00, 0x4C, 0x00, 0x00, 0x00, 0x00 } }) Name (PLJ8, Package (0x01) { Buffer (0x10) { /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x71, 0x0C, 0x80, 0x4C, 0x00, 0x00, 0x00, 0x00 } }) } Scope (_SB.PCI0.XHC.RHUB.HS01) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPC3) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { Return (PLD1) } } Scope (_SB.PCI0.XHC.RHUB.HS02) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } If (LEqual (BID, 0x24)) { Return (UPC2) } Return (UPC3) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { Return (PLD2) } } Scope (_SB.PCI0.XHC.RHUB.HS03) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPC3) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { Return (PLD3) } } Scope (_SB.PCI0.XHC.RHUB.HS04) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPC3) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { Return (PLD4) } } Scope (_SB.PCI0.XHC.RHUB.HS05) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPC2) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR))) { Return (PLDN) } Return (PLD5) } } Scope (_SB.PCI0.XHC.RHUB.HS06) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPC2) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR))) { Return (PLDN) } Return (PLD6) } } Scope (_SB.PCI0.XHC.RHUB.HS07) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPC2) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR))) { Return (PLDN) } If (LEqual (SHTP, One)) { Return (PLDV) } Return (PLD7) } } Scope (_SB.PCI0.XHC.RHUB.HS08) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPC2) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR))) { Return (PLDN) } Return (PLD8) } } If (CondRefOf (\_SB.PCI0.XHC.RHUB.HS09)) { Scope (_SB.PCI0.XHC.RHUB.HS09) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPC3) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR))) { Return (PLDN) } Return (PLD9) } } } If (CondRefOf (\_SB.PCI0.XHC.RHUB.HS10)) { Scope (_SB.PCI0.XHC.RHUB.HS10) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPC3) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR))) { Return (PLDN) } Return (PLDA) } } } If (CondRefOf (\_SB.PCI0.XHC.RHUB.HS11)) { Scope (_SB.PCI0.XHC.RHUB.HS11) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPCP) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR))) { Return (PLDN) } Return (PLDB) } } } If (CondRefOf (\_SB.PCI0.XHC.RHUB.HS12)) { Scope (_SB.PCI0.XHC.RHUB.HS12) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPCP) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR))) { Return (PLDN) } Return (PLDC) } } } If (CondRefOf (\_SB.PCI0.XHC.RHUB.HS13)) { Scope (_SB.PCI0.XHC.RHUB.HS13) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPCP) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR))) { Return (PLDN) } Return (PLDD) } } } If (CondRefOf (\_SB.PCI0.XHC.RHUB.HS14)) { Scope (_SB.PCI0.XHC.RHUB.HS14) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR))) { Return (UPCN) } Return (UPCP) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR))) { Return (PLDN) } Return (PLDE) } } } If (CondRefOf (\_SB.PCI0.XHC.RHUB.USBR)) { Scope (_SB.PCI0.XHC.RHUB.USBR) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { Return (UPCN) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { Return (PLDR) } } } Scope (_SB.PCI0.XHC.RHUB.SSP1) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR ()))) { Return (UPCN) } Return (UPC3) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR ()))) { Return (PLDN) } Return (PLD1) } } Scope (_SB.PCI0.XHC.RHUB.SSP2) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR ()))) { Return (UPCN) } If (LEqual (BID, 0x24)) { Return (UPCN) } Return (UPC3) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR ()))) { Return (PLDN) } If (LEqual (BID, 0x24)) { Return (PLDN) } Return (PLD2) } } If (CondRefOf (\_SB.PCI0.XHC.RHUB.SSP3)) { Scope (_SB.PCI0.XHC.RHUB.SSP3) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR ()))) { Return (UPCN) } If (LEqual (PFLV, 0x02)) { Return (UPC3) } Return (UPCN) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR ()))) { Return (PLDN) } If (LEqual (PFLV, 0x02)) { Return (PLD3) } Return (PLDN) } } } If (CondRefOf (\_SB.PCI0.XHC.RHUB.SSP4)) { Scope (_SB.PCI0.XHC.RHUB.SSP4) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR ()))) { Return (UPCN) } If (LNotEqual (PCHV (), LPTH)) { Return (UPCP) } If (LEqual (PFLV, 0x02)) { Return (UPC3) } If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83))) { Return (UPCN) } Return (UPCN) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR ()))) { Return (PLDN) } If (LNotEqual (PCHV (), LPTH)) { Return (PLD4) } If (LEqual (PFLV, 0x02)) { Return (PLD4) } Return (PLDN) } } } If (CondRefOf (\_SB.PCI0.XHC.RHUB.SSP5)) { Scope (_SB.PCI0.XHC.RHUB.SSP5) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR ()))) { Return (UPCN) } Return (UPC3) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR ()))) { Return (PLDN) } If (LEqual (PFLV, 0x02)) { Return (PLD9) } Return (PLD3) } } } If (CondRefOf (\_SB.PCI0.XHC.RHUB.SSP6)) { Scope (_SB.PCI0.XHC.RHUB.SSP6) { Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities { If (LNot (PRTE (_ADR ()))) { Return (UPCN) } If (LEqual (PFLV, 0x02)) { Return (UPC3) } Return (UPCP) } Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { If (LNot (PRTE (_ADR ()))) { Return (PLDN) } If (LEqual (PFLV, 0x02)) { Return (PLDA) } Return (PLD4) } } } Scope (_SB.PCI0.EHC1.HUBN.PR01.PR11) { 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) } } Scope (_SB.PCI0.EHC1.HUBN.PR01.PR12) { 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) } } Scope (_SB.PCI0.EHC1.HUBN.PR01.PR13) { 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 (PCHS, 0x02)) { And (VIS, Zero, VIS) } Return (PLDP) } } Scope (_SB.PCI0.EHC1.HUBN.PR01.PR14) { 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) } } Scope (_SB.PCI0.EHC1.HUBN.PR01.PR15) { 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) } } Scope (_SB.PCI0.EHC1.HUBN.PR01.PR16) { 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) } } Scope (_SB.PCI0.EHC1.HUBN.PR01.PR17) { 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) } } Scope (_SB.PCI0.EHC1.HUBN.PR01.PR18) { 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) } } Scope (_SB.PCI0.EHC2.HUBN.PR01.PR11) { 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) } } Scope (_SB.PCI0.EHC2.HUBN.PR01.PR12) { 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) } } Scope (_SB.PCI0.EHC2.HUBN.PR01.PR13) { 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) } } Scope (_SB.PCI0.EHC2.HUBN.PR01.PR14) { 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) } } Scope (_SB.PCI0.EHC2.HUBN.PR01.PR15) { 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) } } Scope (_SB.PCI0.EHC2.HUBN.PR01.PR16) { 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) } } Scope (_SB.PCI0.I2C0.ACD0) { Device (MIC0) { Name (_ADR, Zero) // _ADR: Address Name (_PLD, Package (0x03) // _PLD: Physical Location of Device { Buffer (0x14) { /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, /* 0008 */ 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x05, 0x00, 0x41, 0x00 }, Buffer (0x20) { /* 0000 */ 0x8D, 0x33, 0x54, 0x84, 0x9E, 0x12, 0x52, 0x40, /* 0008 */ 0x8C, 0x21, 0x37, 0x5C, 0x01, 0x2B, 0x3A, 0xB7, /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0xCE, 0xFF, 0x56, 0xFF, /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, Buffer (0x20) { /* 0000 */ 0x8E, 0x33, 0x54, 0x84, 0x9E, 0x12, 0x52, 0x40, /* 0008 */ 0x8C, 0x21, 0x37, 0x5C, 0x01, 0x2B, 0x3A, 0xB7, /* 0010 */ 0x52, 0xE1, 0xAE, 0x1E, 0x00, 0x00, 0x00, 0x00, /* 0018 */ 0x50, 0x00, 0x20, 0x4E, 0x00, 0x00, 0x00, 0x00 } }) Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (BID, 0x31)) { Return (0x0F) } Else { Return (Zero) } } } Device (MIC1) { Name (_ADR, One) // _ADR: Address Name (_PLD, Package (0x02) // _PLD: Physical Location of Device { Buffer (0x14) { /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, /* 0008 */ 0xA0, 0x02, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x05, 0x00, 0xA5, 0x00 }, Buffer (0x20) { /* 0000 */ 0x8D, 0x33, 0x54, 0x84, 0x9E, 0x12, 0x52, 0x40, /* 0008 */ 0x8C, 0x21, 0x37, 0x5C, 0x01, 0x2B, 0x3A, 0xB7, /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x56, 0xFF, /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (BID, 0x31)) { Return (0x0F) } Else { Return (Zero) } } } Device (MIC2) { Name (_ADR, 0x02) // _ADR: Address Name (_PLD, Package (0x03) // _PLD: Physical Location of Device { Buffer (0x14) { /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, /* 0008 */ 0x28, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x59, 0x01, 0x73, 0x00 }, Buffer (0x20) { /* 0000 */ 0x8D, 0x33, 0x54, 0x84, 0x9E, 0x12, 0x52, 0x40, /* 0008 */ 0x8C, 0x21, 0x37, 0x5C, 0x01, 0x2B, 0x3A, 0xB7, /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xAA, 0x00, /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, Buffer (0x20) { /* 0000 */ 0x8E, 0x33, 0x54, 0x84, 0x9E, 0x12, 0x52, 0x40, /* 0008 */ 0x8C, 0x21, 0x37, 0x5C, 0x01, 0x2B, 0x3A, 0xB7, /* 0010 */ 0xAE, 0x1E, 0x52, 0xE1, 0x00, 0x00, 0x00, 0x00, /* 0018 */ 0x50, 0x00, 0x20, 0x4E, 0x00, 0x00, 0x00, 0x00 } }) Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (BID, 0x31)) { Return (0x0F) } Else { Return (Zero) } } } Device (MIC3) { Name (_ADR, 0x03) // _ADR: Address Name (_PLD, Package (0x02) // _PLD: Physical Location of Device { Buffer (0x14) { /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, /* 0008 */ 0xA8, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x05, 0x00, 0x73, 0x00 }, Buffer (0x20) { /* 0000 */ 0x8D, 0x33, 0x54, 0x84, 0x9E, 0x12, 0x52, 0x40, /* 0008 */ 0x8C, 0x21, 0x37, 0x5C, 0x01, 0x2B, 0x3A, 0xB7, /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0xFF, /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }) Method (_STA, 0, NotSerialized) // _STA: Status { If (LAnd (LAnd (LEqual (BID, 0x31), LGreaterEqual (BREV, One)), LEqual (SKID, 0x0A))) { Return (0x0F) } Else { Return (Zero) } } } } Scope (_SB.PCI0.LPCB) { Method (SIOH, 0, NotSerialized) { If (And (PMFG, 0x08)) { Notify (PS2K, 0x02) } If (And (PMFG, 0x10)) { Notify (PS2M, 0x02) } } } Scope (_SB.PCI0) { Name (SLIC, Buffer (0x9E) { "937308352451Genuine NVIDIA Certified SLI Ready Motherboard for GIGABYTE Z97X-UD5H edc8-Copyright 2014 NVIDIA Corporation All Rights Reserved-950249559801(R)" }) } Device (_SB.TPM) { Method (_HID, 0, NotSerialized) // _HID: Hardware ID { If (TCMF) {} Else { Return (0x0201D824) } } Name (_CID, EisaId ("PNP0C31")) // _CID: Compatible ID Name (_STR, Unicode ("TPM 1.2 Device")) // _STR: Description String Name (_UID, One) // _UID: Unique ID Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings { DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0xFED40000, // Range Minimum 0xFED44FFF, // Range Maximum 0x00000000, // Translation Offset 0x00005000, // Length ,, , AddressRangeMemory, TypeStatic) }) OperationRegion (TMMB, SystemMemory, 0xFED40000, 0x5000) Field (TMMB, ByteAcc, Lock, Preserve) { ACCS, 8, Offset (0x18), TSTA, 8, TBCA, 8, Offset (0xF00), TVID, 16, TDID, 16 } Method (_STA, 0, NotSerialized) // _STA: Status { If (TPMF) { Return (0x0F) } Return (Zero) } } Scope (_SB.TPM) { OperationRegion (ASMI, SystemIO, SMIA, One) Field (ASMI, ByteAcc, NoLock, Preserve) { INQ, 8 } OperationRegion (BSMI, SystemIO, SMIB, One) Field (BSMI, ByteAcc, NoLock, Preserve) { DAT, 8 } } Scope (_SB.PCI0.LPCB) { Device (H_EC) { Name (_HID, EisaId ("PNP0C09")) // _HID: Hardware ID Name (_UID, One) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { Store (0x03, ^^^IGPU.CLID) Return (Zero) } Name (B1CC, Zero) Name (B1ST, Zero) Name (B2CC, Zero) Name (B2ST, Zero) Name (CFAN, Zero) Name (CMDR, Zero) Name (DOCK, Zero) Name (EJET, Zero) Name (MCAP, Zero) Name (PLMX, Zero) Name (PECH, Zero) Name (PECL, Zero) Name (PENV, Zero) Name (PINV, Zero) Name (PPSH, Zero) Name (PPSL, Zero) Name (PSTP, Zero) Name (RPWR, Zero) Name (LIDS, Zero) Name (LSTE, Zero) Name (SLPC, Zero) Name (VPWR, Zero) Name (WTMS, Zero) Name (AWT2, Zero) Name (AWT1, Zero) Name (AWT0, Zero) Name (DLED, Zero) Name (IBT1, Zero) Name (ECAV, Zero) Name (SPT2, Zero) Name (PB10, Zero) Method (ECRD, 1, Serialized) { Return (DerefOf (Arg0)) } Method (ECWT, 2, Serialized) { Store (Arg0, Arg1) } Method (ECMD, 1, Serialized) { If (ECON) { While (CMDR) { Stall (0x14) } Store (Arg0, CMDR) } } Device (BAT0) { Name (_HID, EisaId ("PNP0C0A")) // _HID: Hardware ID Name (_UID, Zero) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { Return (Zero) } } Scope (\) { Field (GNVS, AnyAcc, Lock, Preserve) { Offset (0x1E), BNUM, 8, Offset (0x20), B1SC, 8, Offset (0x23), B1SS, 8 } } Device (BAT1) { Name (_HID, EisaId ("PNP0C0A")) // _HID: Hardware ID Name (_UID, One) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { Return (Zero) } } Scope (\) { Field (GNVS, AnyAcc, Lock, Preserve) { Offset (0x21), B2SC, 8, Offset (0x24), B2SS, 8 } } Device (BAT2) { Name (_HID, EisaId ("PNP0C0A")) // _HID: Hardware ID Name (_UID, 0x02) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { Return (Zero) } } } } Device (_SB.PCI0.DOCK) { Name (_HID, "ABCD0000") // _HID: Hardware ID Name (_CID, EisaId ("PNP0C15")) // _CID: Compatible ID Name (_UID, 0x02) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { Return (Zero) } } Scope (_SB) { Device (LID0) { Name (_HID, EisaId ("PNP0C0D")) // _HID: Hardware ID Method (_STA, 0, NotSerialized) // _STA: Status { Return (Zero) } } } Name (_S0, Package (0x04) // _S0_: S0 System State { Zero, Zero, Zero, Zero }) If (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) { \_SB.PCI0.LPCB.SPTS (Arg0) \_SB.PCI0.NPTS (Arg0) \_SB.PCI0.LPCB.SIOS (Arg0) } } Method (WAK, 1, NotSerialized) { \_SB.PCI0.LPCB.SWAK (Arg0) \_SB.PCI0.NWAK (Arg0) \_SB.PCI0.LPCB.SIOW (Arg0) } Method (OSCM, 4, NotSerialized) { Return (Zero) } Method (PINI, 0, NotSerialized) { } Store ("hsr1-dsdt-ami-9series_hdmi_audio-1_v3.1 dsdt edits, github.com/toleda", Debug) OperationRegion (PMRS, SystemIO, 0x0430, One) Field (PMRS, ByteAcc, NoLock, Preserve) { , 4, SLPE, 1 } Method (DTGP, 5, NotSerialized) { If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, /* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B })) { If (LEqual (Arg1, One)) { If (LEqual (Arg2, Zero)) { Store (Buffer (One) { 0x03 }, Arg4) Return (One) } If (LEqual (Arg2, One)) { Return (One) } } } Store (Buffer (One) { 0x00 }, Arg4) Return (Zero) } }