/* RSD PTR: OEM=DELL, ACPI_Rev=2.0x (2) XSDT=0x000f1048, length=36, cksum=117 */ /* XSDT: Length=164, Revision=1, Checksum=152, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 Entries={ 0xcd3411cc, 0xcd340478, 0xcd3405e4, 0xcd340638, 0xcd340674, 0xcd340990, 0xcd3409d0, 0xcd340b08, 0xcd323920, 0xcd323b90, 0xcd323760, 0xcd323790, 0xcd341164, 0xcd3410f4, 0xcd340d30, 0xcd344000 } */ /* FACP: Length=244, Revision=3, Checksum=1, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 FACS=0xcd343000, DSDT=0xcd31c000 INT_MODEL=PIC Preferred_PM_Profile=Enterprise Server (4) SCI_INT=9 SMI_CMD=0xb2, ACPI_ENABLE=0x70, ACPI_DISABLE=0x71, S4BIOS_REQ=0x0 PSTATE_CNT=0x90 PM1a_EVT_BLK=0x800-0x803 PM1a_CNT_BLK=0x804-0x805 PM2_CNT_BLK=0x850-0x850 PM_TMR_BLK=0x808-0x80b GPE0_BLK=0x820-0x82f CST_CNT=0x90 P_LVL2_LAT=500 us, P_LVL3_LAT=5000 us FLUSH_SIZE=0, FLUSH_STRIDE=0 DUTY_OFFSET=0, DUTY_WIDTH=0 DAY_ALRM=0, MON_ALRM=0, CENTURY=50 IAPC_BOOT_ARCH={NO_ASPM} Flags={WBINVD,C1_SUPPORTED,SLEEP_BUTTON,S4_RTC_WAKE,APIC_CLUSTER} X_FACS=0xcd343000, X_DSDT=0xcd31c000 X_PM1a_EVT_BLK=0x800:0[32] (IO) X_PM1a_CNT_BLK=0x804:0[16] (IO) X_PM2_CNT_BLK=0x850:0[8] (IO) X_PM_TMR_BLK=0x808:0[32] (IO) X_GPE0_BLK=0x820:0[128] (IO) */ /* FACS: Length=64, HwSig=0x00000000, Firm_Wake_Vec=0x00000000 Global_Lock= Flags= Version=1 */ /* DSDT: Length=30560, Revision=1, Checksum=164, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=INTL, Creator Revision=0x20110211 */ /* APIC: Length=362, Revision=1, Checksum=25, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 Local APIC ADDR=0xfee00000 Flags={PC-AT} Type=Local APIC ACPI CPU=1 Flags={ENABLED} APIC ID=0 Type=Local APIC ACPI CPU=2 Flags={ENABLED} APIC ID=32 Type=Local APIC ACPI CPU=3 Flags={ENABLED} APIC ID=2 Type=Local APIC ACPI CPU=4 Flags={ENABLED} APIC ID=34 Type=Local APIC ACPI CPU=5 Flags={ENABLED} APIC ID=4 Type=Local APIC ACPI CPU=6 Flags={ENABLED} APIC ID=36 Type=Local APIC ACPI CPU=7 Flags={ENABLED} APIC ID=6 Type=Local APIC ACPI CPU=8 Flags={ENABLED} APIC ID=38 Type=Local APIC ACPI CPU=9 Flags={ENABLED} APIC ID=8 Type=Local APIC ACPI CPU=10 Flags={ENABLED} APIC ID=40 Type=Local APIC ACPI CPU=11 Flags={ENABLED} APIC ID=10 Type=Local APIC ACPI CPU=12 Flags={ENABLED} APIC ID=42 Type=Local APIC ACPI CPU=13 Flags={ENABLED} APIC ID=1 Type=Local APIC ACPI CPU=14 Flags={ENABLED} APIC ID=33 Type=Local APIC ACPI CPU=15 Flags={ENABLED} APIC ID=3 Type=Local APIC ACPI CPU=16 Flags={ENABLED} APIC ID=35 Type=Local APIC ACPI CPU=17 Flags={ENABLED} APIC ID=5 Type=Local APIC ACPI CPU=18 Flags={ENABLED} APIC ID=37 Type=Local APIC ACPI CPU=19 Flags={ENABLED} APIC ID=7 Type=Local APIC ACPI CPU=20 Flags={ENABLED} APIC ID=39 Type=Local APIC ACPI CPU=21 Flags={ENABLED} APIC ID=9 Type=Local APIC ACPI CPU=22 Flags={ENABLED} APIC ID=41 Type=Local APIC ACPI CPU=23 Flags={ENABLED} APIC ID=11 Type=Local APIC ACPI CPU=24 Flags={ENABLED} APIC ID=43 Type=Local APIC ACPI CPU=25 Flags={DISABLED} APIC ID=88 Type=Local APIC ACPI CPU=26 Flags={DISABLED} APIC ID=89 Type=Local APIC ACPI CPU=27 Flags={DISABLED} APIC ID=90 Type=Local APIC ACPI CPU=28 Flags={DISABLED} APIC ID=91 Type=Local APIC ACPI CPU=29 Flags={DISABLED} APIC ID=92 Type=Local APIC ACPI CPU=30 Flags={DISABLED} APIC ID=93 Type=Local APIC ACPI CPU=31 Flags={DISABLED} APIC ID=94 Type=Local APIC ACPI CPU=32 Flags={DISABLED} APIC ID=95 Type=Local APIC NMI ACPI CPU=ALL LINT Pin=1 Flags={Polarity=active-hi, Trigger=edge} Type=INT Override BUS=0 IRQ=0 INTR=2 Flags={Polarity=conforming, Trigger=conforming} Type=INT Override BUS=0 IRQ=9 INTR=9 Flags={Polarity=active-hi, Trigger=level} Type=IO APIC APIC ID=0 INT BASE=0 ADDR=0x00000000fec00000 Type=IO APIC APIC ID=1 INT BASE=32 ADDR=0x00000000fec3f000 Type=IO APIC APIC ID=2 INT BASE=64 ADDR=0x00000000fec7f000 */ /* SPCR: Length=80, Revision=1, Checksum=224, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 */ /* HPET: Length=56, Revision=1, Checksum=174, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 HPET Number=0 ADDR=0xfed00000:0[0] (Memory) HW Rev=0x1 Comparators=7 Counter Size=1 Legacy IRQ routing capable={TRUE} PCI Vendor ID=0x8086 Minimal Tick=1000 */ /* DMAR: Length=368, Revision=1, Checksum=7, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 */ /* MCFG: Length=60, Revision=1, Checksum=70, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 Base Address=0x00000000e0000000 Segment Group=0x0000 Start Bus=0 End Bus=255 */ /* WD__: Length=308, Revision=1, Checksum=218, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 */ /* SLIC: Length=36, Revision=1, Checksum=47, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 */ /* ERST: Length=624, Revision=1, Checksum=179, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 */ /* HEST: Length=1436, Revision=1, Checksum=52, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 */ /* BERT: Length=48, Revision=1, Checksum=165, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 */ /* EINJ: Length=400, Revision=1, Checksum=218, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 */ /* TCPA: Length=100, Revision=2, Checksum=26, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 Class 1 Base Address 0xcd35e000 Length 65536 */ /* PC__: Length=110, Revision=1, Checksum=0, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 */ /* SRAT: Length=960, Revision=1, Checksum=77, OEMID=DELL, OEM Table ID=PE_SC3, OEM Revision=0x1, Creator ID=DELL, Creator Revision=0x1 Table Revision=1 Type=CPU Flags={ENABLED} APIC ID=0 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=32 Proximity Domain=2 Type=CPU Flags={ENABLED} APIC ID=2 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=34 Proximity Domain=2 Type=CPU Flags={ENABLED} APIC ID=4 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=36 Proximity Domain=2 Type=CPU Flags={ENABLED} APIC ID=6 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=38 Proximity Domain=2 Type=CPU Flags={ENABLED} APIC ID=8 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=40 Proximity Domain=2 Type=CPU Flags={ENABLED} APIC ID=10 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=42 Proximity Domain=2 Type=CPU Flags={ENABLED} APIC ID=1 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=33 Proximity Domain=2 Type=CPU Flags={ENABLED} APIC ID=3 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=35 Proximity Domain=2 Type=CPU Flags={ENABLED} APIC ID=5 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=37 Proximity Domain=2 Type=CPU Flags={ENABLED} APIC ID=7 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=39 Proximity Domain=2 Type=CPU Flags={ENABLED} APIC ID=9 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=41 Proximity Domain=2 Type=CPU Flags={ENABLED} APIC ID=11 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=43 Proximity Domain=2 Type=CPU Flags={DISABLED} APIC ID=88 Proximity Domain=0 Type=CPU Flags={DISABLED} APIC ID=89 Proximity Domain=0 Type=CPU Flags={DISABLED} APIC ID=90 Proximity Domain=0 Type=CPU Flags={DISABLED} APIC ID=91 Proximity Domain=0 Type=CPU Flags={DISABLED} APIC ID=92 Proximity Domain=0 Type=CPU Flags={DISABLED} APIC ID=93 Proximity Domain=0 Type=CPU Flags={DISABLED} APIC ID=94 Proximity Domain=0 Type=CPU Flags={DISABLED} APIC ID=95 Proximity Domain=0 Type=Memory Flags={ENABLED} Base Address=0x0000000000000000 Length=0x0000000830000000 Proximity Domain=1 Type=Memory Flags={ENABLED} Base Address=0x0000000830000000 Length=0x0000000800000000 Proximity Domain=2 Type=Memory Flags={DISABLED} Base Address=0x0000000000000000 Length=0x0000000000000000 Proximity Domain=0 Type=Memory Flags={DISABLED} Base Address=0x0000000000000000 Length=0x0000000000000000 Proximity Domain=0 Type=Memory Flags={DISABLED} Base Address=0x0000000000000000 Length=0x0000000000000000 Proximity Domain=0 Type=Memory Flags={DISABLED} Base Address=0x0000000000000000 Length=0x0000000000000000 Proximity Domain=0 Type=Memory Flags={DISABLED} Base Address=0x0000000000000000 Length=0x0000000000000000 Proximity Domain=0 Type=Memory Flags={DISABLED} Base Address=0x0000000000000000 Length=0x0000000000000000 Proximity Domain=0 Type=Memory Flags={DISABLED} Base Address=0x0000000000000000 Length=0x0000000000000000 Proximity Domain=0 Type=Memory Flags={DISABLED} Base Address=0x0000000000000000 Length=0x0000000000000000 Proximity Domain=0 */ /* SSDT: Length=43060, Revision=1, Checksum=218, OEMID=INTEL, OEM Table ID=PPM RCM, OEM Revision=0x80000001, Creator ID=INTL, Creator Revision=0x20061109 */ /* * Intel ACPI Component Architecture * AML Disassembler version 20121114-64 * Copyright (c) 2000 - 2012 Intel Corporation * * Disassembly of /tmp/acpidump.yEAKFd, Tue Dec 11 18:39:50 2012 * * Original Table Header: * Signature "DSDT" * Length 0x00011F70 (73584) * Revision 0x01 **** 32-bit table (V1), no 64-bit math support * Checksum 0x83 * OEM ID "DELL " * OEM Table ID "PE_SC3 " * OEM Revision 0x00000001 (1) * Compiler ID "INTL" * Compiler Version 0x20110211 (537985553) */ DefinitionBlock ("/tmp/acpidump.aml", "DSDT", 1, "DELL ", "PE_SC3 ", 0x00000001) { Method (DBIN, 0, NotSerialized) { Noop } Scope (\_PR) { Name (PST0, 0x00) Name (PST1, 0x00) Name (PST2, 0x00) Name (PST3, 0x00) Name (TST0, 0x00) Name (TST1, 0x00) Name (TST2, 0x00) Name (TST3, 0x00) Processor (CPU1, 0x01, 0x00000810, 0x06) {} Processor (CPU2, 0x02, 0x00000810, 0x06) {} Processor (CPU3, 0x03, 0x00000810, 0x06) {} Processor (CPU4, 0x04, 0x00000810, 0x06) {} Processor (CPU5, 0x05, 0x00000810, 0x06) {} Processor (CPU6, 0x06, 0x00000810, 0x06) {} Processor (CPU7, 0x07, 0x00000810, 0x06) {} Processor (CPU8, 0x08, 0x00000810, 0x06) {} Processor (CPU9, 0x09, 0x00000810, 0x06) {} Processor (CPUA, 0x0A, 0x00000810, 0x06) {} Processor (CPUB, 0x0B, 0x00000810, 0x06) {} Processor (CPUC, 0x0C, 0x00000810, 0x06) {} Processor (CPUD, 0x0D, 0x00000810, 0x06) {} Processor (CPUE, 0x0E, 0x00000810, 0x06) {} Processor (CPUF, 0x0F, 0x00000810, 0x06) {} Processor (CPUG, 0x10, 0x00000810, 0x06) {} Processor (CP17, 0x11, 0x00000810, 0x06) {} Processor (CP18, 0x12, 0x00000810, 0x06) {} Processor (CP19, 0x13, 0x00000810, 0x06) {} Processor (CP20, 0x14, 0x00000810, 0x06) {} Processor (CP21, 0x15, 0x00000810, 0x06) {} Processor (CP22, 0x16, 0x00000810, 0x06) {} Processor (CP23, 0x17, 0x00000810, 0x06) {} Processor (CP24, 0x18, 0x00000810, 0x06) {} Processor (CP25, 0x19, 0x00000810, 0x06) {} Processor (CP26, 0x1A, 0x00000810, 0x06) {} Processor (CP27, 0x1B, 0x00000810, 0x06) {} Processor (CP28, 0x1C, 0x00000810, 0x06) {} Processor (CP29, 0x1D, 0x00000810, 0x06) {} Processor (CP30, 0x1E, 0x00000810, 0x06) {} Processor (CP31, 0x1F, 0x00000810, 0x06) {} Processor (CP32, 0x20, 0x00000810, 0x06) {} } Name (\_S0, Package (0x04) // _S0_: S0 System State { 0x00, 0x00, 0x00, 0x00 }) Name (\_S4, Package (0x04) // _S4_: S4 System State { 0x07, 0x00, 0x00, 0x00 }) Name (\_S5, Package (0x04) // _S5_: S5 System State { 0x07, 0x00, 0x00, 0x00 }) Method (\_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep { Store ("_PTS", Debug) Store (Arg0, Debug) \_SB.PCI0.HEC2.PTS () Sleep (0x0F) } Method (\_WAK, 1, NotSerialized) // _WAK: Wake { Store ("_WAK", Debug) Store (Arg0, Debug) \_SB.PCI0.HEC2.WAK () Return (Zero) } Scope (\_SI) { Method (_SST, 1, NotSerialized) // _SST: System Status { Store ("_SST", Debug) Store (Arg0, Debug) Sleep (0x0F) } } Scope (\) { Name (PICF, 0x00) Name (SWZL, 0x00) Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model { Store ("_PIC", Debug) Store (Arg0, Debug) Store (Arg0, PICF) } } Scope (\_SB) { Name (WCAP, 0x00) Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { Store ("Platform _OSC", Debug) Store ("UUID ", Debug) Store (Arg0, Debug) CreateDWordField (Arg3, 0x00, CDW1) CreateDWordField (Arg3, 0x04, CDW2) Store ("Revision ", Debug) Store (Arg1, Debug) Store ("Count ", Debug) Store (Arg2, Debug) Store ("DWORD 1 ", Debug) Store (CDW1, Debug) Store ("DWORD 2 ", Debug) Store (CDW2, Debug) Store (CDW2, WCAP) If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0x6E, 0xB0, 0x11, 0x08, 0x27, 0x4A, 0xF9, 0x44, /* 0008 */ 0x8D, 0x60, 0x3C, 0xBB, 0xC2, 0x2E, 0x7B, 0x48 })) { If (And (WCAP, 0x10, Local1)) { Or (\_SB.WSUP, 0x01, \_SB.WSUP) Store ("Platform _OSC, APEI is implementend", Debug) } If (And (WCAP, 0x40000000, Local2)) { Store ("Platform _OSC, Page Retire is supported", Debug) } Or (Local1, Local2, Local1) If (And (0x08, UCMR (0x28))) { If (And (WCAP, 0x01, Local3)) { Store ("Platform _OSC, Processor Aggregator Device is supported", Debug) Store (0x01, \PURE) } Or (Local1, Local3, Local1) } Store (Local1, WCAP) If (LNotEqual (CDW2, WCAP)) { Or (CDW1, 0x10, CDW1) } Store (WCAP, CDW2) } Else { If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0x0C, 0x5E, 0x85, 0xED, 0x90, 0x6C, 0xBF, 0x47, /* 0008 */ 0xA6, 0x2A, 0x26, 0xDE, 0x0F, 0xC5, 0xAD, 0x5C })) { Return (\_SB.OSCW (Arg0, Arg1, Arg2, Arg3)) } Else { Or (CDW1, 0x04, CDW1) } } If (LNotEqual (Arg1, One)) { Or (CDW1, 0x08, CDW1) } If (LNotEqual (Arg2, 0x02)) { Or (CDW1, 0x02, CDW1) } And (CDW1, 0x1E, CDW1) Store ("Return Status ", Debug) Store (CDW1, Debug) Store ("Return Support ", Debug) Store (CDW2, Debug) Return (Arg3) } } Scope (\_SB) { Name (WSUP, 0x00) Name (WCTR, 0x00) Method (OSCW, 4, NotSerialized) { Store ("Method _OSC for WHEA", Debug) If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0x0C, 0x5E, 0x85, 0xED, 0x90, 0x6C, 0xBF, 0x47, /* 0008 */ 0xA6, 0x2A, 0x26, 0xDE, 0x0F, 0xC5, 0xAD, 0x5C })) { CreateDWordField (Arg3, 0x00, CDW1) CreateDWordField (Arg3, 0x04, CDW2) CreateDWordField (Arg3, 0x08, CDW3) Store ("Revision ", Debug) Store (Arg1, Debug) Store ("Count ", Debug) Store (Arg2, Debug) Store ("DWORD 1 ", Debug) Store (CDW1, Debug) Store ("DWORD 2 ", Debug) Store (CDW2, Debug) Store ("DWORD 3 ", Debug) Store (CDW3, Debug) Store (CDW2, WSUP) Store (CDW3, WCTR) If (And (WSUP, 0x01)) { Store ("WHEA is implementend", Debug) } Else { Or (CDW1, 0x02, CDW1) } If (LNotEqual (Arg1, One)) { Or (CDW1, 0x08, CDW1) } If (LNotEqual (CDW3, WCTR)) { Or (CDW1, 0x10, CDW1) } Store (WCTR, CDW3) } Else { Or (CDW1, 0x04, CDW1) } And (CDW1, 0x1E, CDW1) Store ("Return Status ", Debug) Store (CDW1, Debug) Store ("Return Support ", Debug) Store (CDW2, Debug) Store ("Return Control ", Debug) Store (CDW3, Debug) Return (Arg3) } } Scope (\_SB) { Device (WHEA) { Name (_HID, EisaId ("PNP0C33")) // _HID: Hardware ID Name (_CID, EisaId ("PNP0C01")) // _CID: Compatible ID Name (_UID, "WHEA") // _UID: Unique ID Method (_OST, 3, NotSerialized) // _OST: OSPM Status Indication { Store ("WHEA _OST", Debug) Store (Arg0, Local0) Store (Arg1, Local1) Store (Arg2, Local2) Store (Arg0, Debug) Store (Arg1, Debug) Store (Arg2, Debug) } } } Scope (\_SB) { Device (PMI0) { Name (_HID, "ACPI000D") // _HID: Hardware ID Name (_CID, EisaId ("PNP0C01")) // _CID: Compatible ID Name (_UID, "PMI") // _UID: Unique ID Name (_STA, 0x0F) // _STA: Status OperationRegion (SYSI, IPMI, 0x0600, 0x0100) Field (SYSI, BufferAcc, Lock, Preserve) { AccessAs (BufferAcc, 0x01), Offset (0x58), SCMD, 8, GCMD, 8 } OperationRegion (POWR, IPMI, 0x3000, 0x0100) Field (POWR, BufferAcc, Lock, Preserve) { AccessAs (BufferAcc, 0x01), Offset (0xB3), GPMM, 8 } Name (PVAL, 0x00) Name (PAVG, 0x07D0) Name (HLIM, 0x00) Name (PMIN, 0x00) Name (PMAX, 0x00) Method (_PMC, 0, NotSerialized) // _PMC: Power Meter Capabilities { Store ("PMI - _PMC", Debug) Name (RET0, Package (0x0E) {}) Store (0x01, Index (RET0, 0x00)) Store (0x00, Index (RET0, 0x01)) Store (0x00, Index (RET0, 0x02)) Store (0x00015F90, Index (RET0, 0x03)) Store (0x07D0, Index (RET0, 0x04)) Store (0x07D0, Index (RET0, 0x05)) Store (0x240C8400, Index (RET0, 0x06)) Store (0xFFFFFFFF, Index (RET0, 0x07)) Store (Zero, Index (RET0, 0x08)) Name (MDL, "PowerEdge") Name (OEM, "___DELL") Store (MDL, Index (RET0, 0x0B)) Store (0x00, Index (RET0, 0x0C)) Store (OEM, Index (RET0, 0x0D)) _GHL () Store (PMIN, Index (RET0, 0x09)) Store (PMAX, Index (RET0, 0x0A)) Store (RET0, Debug) Return (RET0) } Method (_PMD, 0, NotSerialized) // _PMD: Power Metered Devices { Name (RET0, Package (0x01) { \_SB }) Return (RET0) } Method (_PMM, 0, NotSerialized) // _PMM: Power Meter Measurement { Store ("PMI - _PMM", Debug) If (LEqual (PAVG, 0x07D0)) { Store ("2S Average interval", Debug) Name (BUFF, Buffer (0x42) {}) CreateByteField (BUFF, 0x00, STAT) CreateByteField (BUFF, 0x01, LENG) Store (0x02, LENG) CreateByteField (BUFF, 0x02, IN01) Store (0x0A, IN01) CreateByteField (BUFF, 0x03, IN02) Store (0x00, IN02) CreateByteField (BUFF, 0x02, CMPC) CreateWordField (BUFF, 0x03, APWR) Store (Store (BUFF, GPMM), BUFF) If (LAnd (LEqual (STAT, 0x00), LEqual (CMPC, 0x00))) { Store ("Instantaneous Power reading = ", Debug) Store (APWR, Debug) Store ("BUFF, 0xB3 cmd", Debug) Store (BUFF, Debug) Multiply (APWR, 0x03E8, PVAL) Return (PVAL) } Return (Ones) } Else { Name (BUF2, Buffer (0x42) {}) Store ("Not 2S Average interval", Debug) CreateByteField (BUF2, 0x00, STA2) CreateByteField (BUF2, 0x01, LEN2) Store (0x04, LEN2) CreateByteField (BUF2, 0x02, IN21) Store (0x00, IN21) CreateByteField (BUF2, 0x03, IN22) Store (0xEB, IN22) CreateByteField (BUF2, 0x04, IN23) Store (0x00, IN23) CreateByteField (BUF2, 0x05, IN24) Store (0x00, IN24) CreateByteField (BUF2, 0x02, CMP2) CreateWordField (BUF2, 0x04, AMIN) CreateWordField (BUF2, 0x06, AHOU) CreateWordField (BUF2, 0x08, ADAY) CreateWordField (BUF2, 0x0A, AWEE) Store (Store (BUF2, GCMD), BUF2) If (LAnd (LEqual (STA2, 0x00), LEqual (CMP2, 0x00))) { Store ("BUF2, 0xEB cmd", Debug) Store (BUF2, Debug) Store ("Instantaneous Power reading = ", Debug) If (LEqual (PAVG, 0xEA60)) { Store (AMIN, Debug) Multiply (AMIN, 0x03E8, PVAL) } If (LEqual (PAVG, 0x0036EE80)) { Store (AHOU, Debug) Multiply (AHOU, 0x03E8, PVAL) } If (LEqual (PAVG, 0x05265C00)) { Store (ADAY, Debug) Multiply (ADAY, 0x03E8, PVAL) } If (LEqual (PAVG, 0x240C8400)) { Store (AWEE, Debug) Multiply (AWEE, 0x03E8, PVAL) } Return (PVAL) } Return (Ones) } } Method (_GAI, 0, NotSerialized) // _GAI: Get Averaging Interval { Store ("PMI - _GAI", Debug) Store (PAVG, Debug) Return (PAVG) } Method (_GHL, 0, NotSerialized) // _GHL: Get Hardware Limit { Store ("PMI - _GHL", Debug) Name (BUFF, Buffer (0x42) {}) CreateByteField (BUFF, 0x00, STAT) CreateByteField (BUFF, 0x01, LENG) Store (0x04, LENG) CreateByteField (BUFF, 0x02, IN01) Store (0x00, IN01) CreateByteField (BUFF, 0x03, IN02) Store (0xEA, IN02) CreateByteField (BUFF, 0x04, IN03) Store (0x00, IN03) CreateByteField (BUFF, 0x05, IN04) Store (0x00, IN04) CreateByteField (BUFF, 0x02, CMPC) CreateWordField (BUFF, 0x04, PCAP) CreateWordField (BUFF, 0x07, MAPW) CreateWordField (BUFF, 0x09, MIPW) Store (Store (BUFF, GCMD), BUFF) If (LAnd (LEqual (STAT, 0x00), LEqual (CMPC, 0x00))) { Store ("Power Cap = ", Debug) Store (PCAP, Debug) Store ("Max Power = ", Debug) Store (MAPW, Debug) Store ("Min Power = ", Debug) Store (MIPW, Debug) Store ("BUFF, 0xEA cmd", Debug) Store (BUFF, Debug) Multiply (PCAP, 0x03E8, HLIM) Multiply (MAPW, 0x03E8, PMAX) Multiply (MIPW, 0x03E8, PMIN) Return (HLIM) } Return (Ones) } Method (_SHL, 1, NotSerialized) // _SHL: Set Hardware Limit { Store ("PMI - _SHL", Debug) Return (0x00) } Method (_PTP, 2, NotSerialized) // _PTP: Power Trip Points { Return (0x00) } Method (_PAI, 1, NotSerialized) // _PAI: Power Averaging Interval { Store ("PMI - _PAI", Debug) If (LGreaterEqual (Arg0, 0x240C8400)) { Store (0x240C8400, PAVG) } Else { If (LGreaterEqual (Arg0, 0x05265C00)) { Store (0x05265C00, PAVG) } Else { If (LGreaterEqual (Arg0, 0x0036EE80)) { Store (0x0036EE80, PAVG) } Else { If (LGreaterEqual (Arg0, 0xEA60)) { Store (0xEA60, PAVG) } Else { Store (0x07D0, PAVG) } } } } Store (PAVG, Debug) Return (0x00) } } } Method (KDBG, 3, NotSerialized) { Store ("Min:", Debug) Store (Arg0, Debug) Store ("Max:", Debug) Store (Arg1, Debug) Store ("Length:", Debug) Store (Arg2, Debug) } OperationRegion (SMIR, SystemIO, 0xB2, 0x02) Field (SMIR, ByteAcc, NoLock, Preserve) { SMIC, 8, SMID, 8 } Mutex (SMIM, 0x01) Method (SMI2, 1, NotSerialized) { Acquire (SMIM, 0xFFFF) Store (Arg0, SMIC) Store (SMIC, Local0) Store (SMID, Local0) ShiftLeft (Local0, 0x08, Local0) Add (SMIC, Local0, Local0) Release (SMIM) Return (Local0) } Method (SMI4, 1, NotSerialized) { Add (Arg0, 0x01, Local0) Store (SMI2 (Arg0), Local2) Store (SMI2 (Local0), Local1) ShiftLeft (Local1, 0x10, Local1) Add (Local1, Local2, Local0) Return (Local0) } Mutex (MTX, 0x01) Method (CMRD, 1, NotSerialized) { Acquire (SMIM, 0xFFFF) Store (Arg0, Local0) And (Local0, 0x7F, Local0) Store (Local0, SMID) Store (0x72, SMIC) Store (SMIC, Local0) Store (0x73, SMIC) Store (SMIC, Local0) Store (SMID, Local0) Release (SMIM) Return (Local0) } Method (CMWR, 2, NotSerialized) { Acquire (SMIM, 0xFFFF) Store (Arg0, Local0) Or (Local0, 0x80, Local0) Store (Local0, SMID) Store (0x72, SMIC) Store (SMIC, Local0) Store (Arg1, SMID) Store (0x73, SMIC) Store (SMIC, Local0) Release (SMIM) } Method (UCMR, 1, NotSerialized) { Acquire (SMIM, 0xFFFF) Store (Arg0, Local0) And (Local0, 0x7F, Local0) Store (Local0, SMID) Store (0x74, SMIC) Store (SMIC, Local0) Store (0x75, SMIC) Store (SMIC, Local0) Store (SMID, Local0) Release (SMIM) Return (Local0) } Method (GCKB, 0, NotSerialized) { Return (And (0x40, UCMR (0x7D))) } Method (GCMS, 0, NotSerialized) { Return (And (0x20, UCMR (0x7D))) } Scope (_SB) { Method (MIN, 2, NotSerialized) { If (LLess (Arg0, Arg1)) { Return (Arg0) } Else { Return (Arg1) } } Method (SLEN, 1, NotSerialized) { Store (Arg0, Local0) Return (SizeOf (Local0)) } Method (S2BF, 1, NotSerialized) { Store (Arg0, Local0) Add (SLEN (Local0), One, Local0) Name (BUFF, Buffer (Local0) {}) Store (Arg0, BUFF) Return (BUFF) } Method (SCMP, 2, NotSerialized) { Store (Arg0, Local0) Store (S2BF (Local0), Local0) Store (S2BF (Arg1), Local1) Store (Zero, Local4) Store (SLEN (Arg0), Local5) Store (SLEN (Arg1), Local6) Store (MIN (Local5, Local6), Local7) While (LLess (Local4, Local7)) { Store (DerefOf (Index (Local0, Local4)), Local2) Store (DerefOf (Index (Local1, Local4)), Local3) If (LGreater (Local2, Local3)) { Return (One) } Else { If (LLess (Local2, Local3)) { Return (Ones) } } Increment (Local4) } If (LLess (Local4, Local5)) { Return (One) } Else { If (LLess (Local4, Local6)) { Return (Ones) } Else { Return (Zero) } } } Name (TOOS, 0x00) Method (INIC, 0, NotSerialized) { If (CondRefOf (_OSI, Local0)) { If (\_OSI ("Windows 2001")) { Store (0x05, TOOS) } If (\_OSI ("Windows 2001.1")) { Store (0x06, TOOS) } If (\_OSI ("Windows 2001.1 SP1")) { Store (0x07, TOOS) } If (\_OSI ("Windows 2006")) { Store (0x08, TOOS) } If (\_OSI ("Windows 2006.1")) { Store (0x08, TOOS) } If (\_OSI ("Linux")) { Store (0x01, TOOS) } } Else { Store (\_OS, Local0) Store (SCMP (Local0, "Microsoft Windows NT"), Local1) If (Not (Local1)) { Store (0x04, TOOS) } Else { Store (SCMP (Local0, "Microsoft Windows"), Local2) If (Not (Local2)) { Store (0x02, TOOS) } Else { Store (SCMP (Local0, "Microsoft WindowsME:Millennium Edition"), Local3) If (Not (Local3)) { Store (0x03, TOOS) } } } } } Method (_INI, 0, NotSerialized) // _INI: Initialize { \_SB.INIC () \_SB.INIS () } } OperationRegion (CPE0, SystemIO, 0xE0, 0x01) Field (CPE0, ByteAcc, NoLock, Preserve) { CPIN, 8 } OperationRegion (CPE4, SystemIO, 0xE4, 0x01) Field (CPE4, ByteAcc, NoLock, Preserve) { CPDA, 8 } OperationRegion (CO50, SystemMemory, 0xE0028000, 0x0200) Field (CO50, DWordAcc, NoLock, Preserve) { Offset (0x108), C0IB, 32, Offset (0x180), VTB0, 32 } OperationRegion (P3FA, SystemMemory, 0xE3F6E000, 0x0200) Field (P3FA, DWordAcc, NoLock, Preserve) { P3F0, 32, Offset (0x80), P3I0, 32, Offset (0x88), P3I1, 32, Offset (0x90), P3I2, 32, Offset (0x98), P3I3, 32, Offset (0xA0), P3I4, 32, Offset (0xA8), P3I5, 32, Offset (0xB0), P3I6, 32, Offset (0xB8), P3I7, 32, Offset (0xE0), P3FI, 32, P3FL, 32, P3FM, 32 } OperationRegion (P7FA, SystemMemory, 0xE7F6E000, 0x0200) Field (P7FA, DWordAcc, NoLock, Preserve) { P7F0, 32, Offset (0xE4), P7FL, 32, P7FI, 32 } OperationRegion (PFFA, SystemMemory, 0xEFF6E000, 0x0200) Field (PFFA, DWordAcc, NoLock, Preserve) { PFF0, 32, Offset (0xE4), PFFL, 32 } Scope (\_SB) { Method (INIS, 0, NotSerialized) { If (LGreaterEqual (\_SB.TOOS, 0x08)) { Store (0x080AD041, \_SB.PCI0._HID) Store (0x030AD041, \_SB.PCI0._CID) } Else { Store (0x030AD041, \_SB.PCI0._HID) Store (0x080AD041, \_SB.PCI0._CID) } } Method (IO2P, 0, NotSerialized) { Store (0x09, CPIN) Store (CPDA, Local0) Not (Local0, Local1) And (Local1, 0xF0, Local1) If (And (Local1, 0x20)) { Return (Ones) } Else { Return (Zero) } } Method (RDPT, 0, NotSerialized) { Store (0x02, CPIN) Store (CPDA, Local0) If (LEqual (Local0, 0x04)) { Return (Ones) } Else { Return (Zero) } } Method (CHP0, 0, NotSerialized) { Store (0x0B, CPIN) Store (CPDA, Local0) And (Local0, 0x0C, Local0) Return (Local0) } Method (P2IN, 0, NotSerialized) { Store (C0IB, Local0) And (Local0, 0xFF00, Local0) ShiftRight (Local0, 0x08, Local0) Store ("CPU0 INT BUS1", Debug) Store (Local0, Debug) Return (Local0) } Device (PCI0) { Name (P0BN, Buffer (0x01) { 0x00 }) Name (_HID, EisaId ("PNP0A08")) // _HID: Hardware ID Name (_CID, EisaId ("PNP0A03")) // _CID: Compatible ID Name (_ADR, 0x00) // _ADR: Address Method (_BBN, 0, NotSerialized) // _BBN: BIOS Bus Number { Return (0x00) } Name (_UID, 0x00) // _UID: Unique ID Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake { 0x0B, 0x05 }) Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P100, Package (0x15) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0001FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0002FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0003FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0004FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0004FFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0x0004FFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0x0004FFFF, 0x03, LK03, 0x00 }, Package (0x04) { 0x0011FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0011FFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0x0011FFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0x0011FFFF, 0x03, LK03, 0x00 }, Package (0x04) { 0x001AFFFF, 0x00, LK07, 0x00 }, Package (0x04) { 0x001CFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x001CFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0x001CFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0x001CFFFF, 0x03, LK03, 0x00 }, Package (0x04) { 0x001DFFFF, 0x00, LK06, 0x00 }, Package (0x04) { 0x001FFFFF, 0x00, LK04, 0x00 }, Package (0x04) { 0x001FFFFF, 0x01, LK05, 0x00 }, Package (0x04) { 0x001FFFFF, 0x02, LK05, 0x00 } }) Store (P100, Local0) } Else { Name (A100, Package (0x15) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x20 }, Package (0x04) { 0x0001FFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0002FFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0003FFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0004FFFF, 0x00, 0x00, 0x27 }, Package (0x04) { 0x0004FFFF, 0x01, 0x00, 0x2F }, Package (0x04) { 0x0004FFFF, 0x02, 0x00, 0x27 }, Package (0x04) { 0x0004FFFF, 0x03, 0x00, 0x2F }, Package (0x04) { 0x0011FFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x0011FFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0x0011FFFF, 0x02, 0x00, 0x12 }, Package (0x04) { 0x0011FFFF, 0x03, 0x00, 0x13 }, Package (0x04) { 0x001AFFFF, 0x00, 0x00, 0x17 }, Package (0x04) { 0x001CFFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x001CFFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0x001CFFFF, 0x02, 0x00, 0x12 }, Package (0x04) { 0x001CFFFF, 0x03, 0x00, 0x13 }, Package (0x04) { 0x001DFFFF, 0x00, 0x00, 0x16 }, Package (0x04) { 0x001FFFFF, 0x00, 0x00, 0x14 }, Package (0x04) { 0x001FFFFF, 0x01, 0x00, 0x15 }, Package (0x04) { 0x001FFFFF, 0x02, 0x00, 0x15 } }) Store (A100, Local0) } Return (Local0) } Name (_PXM, 0x01) // _PXM: Device Proximity Device (PEX1) { Name (_ADR, 0x00010000) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (LEqual (\_SB.PCI0.HEC2.PLNR, 0x04)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x10, Unicode ("SLOT 1") }) } } } } } } Device (NDX0) { Name (_ADR, 0x00) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (And (\_SB.P0B1.SPAD.SR05, 0x04)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x03, Unicode ("NIC3") }) } } } } } Else { If (LNotEqual (\_SB.PCI0.HEC2.PLNR, 0x04)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x01, Unicode ("NIC1") }) } } } } } } } } Device (NDX1) { Name (_ADR, 0x01) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (And (\_SB.P0B1.SPAD.SR05, 0x04)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x04, Unicode ("NIC4") }) } } } } } Else { If (LNotEqual (\_SB.PCI0.HEC2.PLNR, 0x04)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x02, Unicode ("NIC2") }) } } } } } } } } Device (NDX2) { Name (_ADR, 0x02) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (And (\_SB.P0B1.SPAD.SR05, 0x10)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x03, Unicode ("NIC3") }) } } } } } } } Device (NDX3) { Name (_ADR, 0x03) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (And (\_SB.P0B1.SPAD.SR05, 0x10)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x04, Unicode ("NIC4") }) } } } } } } } Device (NDX4) { Name (_ADR, 0x04) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (And (\_SB.P0B1.SPAD.SR05, 0x10)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x05, Unicode ("NIC5") }) } } } } } } } Device (NDX5) { Name (_ADR, 0x05) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (And (\_SB.P0B1.SPAD.SR05, 0x10)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x06, Unicode ("NIC6") }) } } } } } } } Device (NDX6) { Name (_ADR, 0x06) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (And (\_SB.P0B1.SPAD.SR05, 0x10)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x07, Unicode ("NIC7") }) } } } } } } } Device (NDX7) { Name (_ADR, 0x07) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (And (\_SB.P0B1.SPAD.SR05, 0x10)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x08, Unicode ("NIC8") }) } } } } } } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P102, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK03, 0x00 } }) Store (P102, Local0) } Else { Name (A102, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x22 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x24 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x25 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x26 } }) Store (A102, Local0) } Return (Local0) } } Device (PE1C) { Name (_ADR, 0x00010001) // _ADR: Address Device (NDX0) { Name (_ADR, 0x00) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (And (\_SB.P0B1.SPAD.SR05, 0x04)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x01, Unicode ("NIC1") }) } } } } } } } Device (NDX1) { Name (_ADR, 0x01) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (And (\_SB.P0B1.SPAD.SR05, 0x04)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x02, Unicode ("NIC2") }) } } } } } } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P103, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK03, 0x00 } }) Store (P103, Local0) } Else { Name (A103, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x23 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x26 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x24 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x25 } }) Store (A103, Local0) } Return (Local0) } } Device (PEX2) { Name (_ADR, 0x00020000) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (LOr (LEqual (\_SB.PCI0.HEC2.PLNR, 0x02), LEqual (\_SB.PCI0.HEC2.PLNR, 0x22))) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x10, Unicode ("SLOT 5") }) } } } } } Else { If (LEqual (\_SB.PCI0.HEC2.PLNR, 0x03)) { If (LEqual (CHP0 (), 0x08)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x10, Unicode ("SLOT 1") }) } } } } } } Else { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x13, Unicode ("SLOT 4") }) } } } } } } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P106, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK03, 0x00 } }) Store (P106, Local0) } Else { Name (A106, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x28 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x2C }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x2D }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x2E } }) Store (A106, Local0) } Return (Local0) } } Device (PEX3) { Name (_ADR, 0x00020002) // _ADR: Address Method (_STA, 0, NotSerialized) // _STA: Status { If (RDPT ()) { Return (0x00) } Else { Return (0x0F) } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P108, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK03, 0x00 } }) Store (P108, Local0) } Else { Name (A108, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x2A }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x2D }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x2C }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x2E } }) Store (A108, Local0) } Return (Local0) } } Device (PEX4) { Name (_ADR, 0x00030000) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (LOr (LEqual (\_SB.PCI0.HEC2.PLNR, 0x02), LEqual (\_SB.PCI0.HEC2.PLNR, 0x22))) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x11, Unicode ("SLOT 6") }) } } } } } Else { If (LEqual (\_SB.PCI0.HEC2.PLNR, 0x03)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { If (LEqual (CHP0 (), 0x0C)) { Return (Package (0x02) { 0x11, Unicode ("SLOT 3") }) } Else { Return (Package (0x02) { 0x11, Unicode ("SLOT 2") }) } } } } } } Else { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x11, Unicode ("SLOT 2") }) } } } } } } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P10A, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK03, 0x00 } }) Store (P10A, Local0) } Else { Name (A10A, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x30 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x34 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x35 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x36 } }) Store (A10A, Local0) } Return (Local0) } } Device (PEX5) { Name (_ADR, 0x00030002) // _ADR: Address Method (_STA, 0, NotSerialized) // _STA: Status { If (RDPT ()) { Return (0x00) } Else { Return (0x0F) } } Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (LOr (LEqual (\_SB.PCI0.HEC2.PLNR, 0x02), LEqual (\_SB.PCI0.HEC2.PLNR, 0x22))) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x12, Unicode ("SLOT 7") }) } } } } } Else { If (LEqual (\_SB.PCI0.HEC2.PLNR, 0x03)) {} Else { } } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P10D, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK03, 0x00 } }) Store (P10D, Local0) } Else { Name (A10D, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x32 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x35 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x34 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x36 } }) Store (A10D, Local0) } Return (Local0) } } Device (PEX6) { Name (_ADR, 0x001C0007) // _ADR: Address Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P11D, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK03, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK02, 0x00 } }) Store (P11D, Local0) } Else { Name (A11D, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x13 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x10 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x11 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x12 } }) Store (A11D, Local0) } Return (Local0) } } Device (PEX7) { Name (_ADR, 0x001C0004) // _ADR: Address Device (NDX0) { Name (_ADR, 0x00) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (And (\_SB.P0B1.SPAD.SR05, 0x08)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x03, Unicode ("NIC3") }) } } } } } If (LEqual (\_SB.PCI0.HEC2.PLNR, 0x04)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x01, Unicode ("NIC1") }) } } } } } } } Device (NDX1) { Name (_ADR, 0x01) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (And (\_SB.P0B1.SPAD.SR05, 0x08)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x04, Unicode ("NIC4") }) } } } } } If (LEqual (\_SB.PCI0.HEC2.PLNR, 0x04)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x02, Unicode ("NIC2") }) } } } } } } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P11C, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK03, 0x00 } }) Store (P11C, Local0) } Else { Name (A11C, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x12 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x13 } }) Store (A11C, Local0) } Return (Local0) } } Device (PEX8) { Name (_ADR, 0x001C0000) // _ADR: Address Method (_STA, 0, NotSerialized) // _STA: Status { If (RDPT ()) { Return (0x0F) } Else { Return (0x00) } } Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { If (LEqual (\_SB.PCI0.HEC2.PLNR, 0x04)) { Name (VAR1, Zero) If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x12, Unicode ("SLOT 3") }) } } } } } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P117, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK03, 0x00 } }) Store (P117, Local0) } Else { Name (A117, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x12 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x13 } }) Store (A117, Local0) } Return (Local0) } } Name (\PETE, 0x00) Name (\NUMP, 0x00) Name (\PURA, 0x00) Name (\PURB, 0x00) Name (\PURE, 0x00) Name (\NUMS, 0x00) Name (\PWRM, 0x00) Device (HEC1) { Name (_ADR, 0x00160000) // _ADR: Address OperationRegion (H1AD, PCI_Config, 0x10, 0x04) Field (H1AD, DWordAcc, NoLock, Preserve) { H1BA, 32 } OperationRegion (H1HS, PCI_Config, 0x4C, 0x04) Field (H1HS, DWordAcc, NoLock, Preserve) { CTS0, 6, CTS1, 6, CTS2, 6, CTS3, 6, CTRV, 8 } Method (_STA, 0, NotSerialized) // _STA: Status { Return (0x0B) } } Device (HEC2) { Name (_ADR, 0x00160001) // _ADR: Address OperationRegion (H2AD, PCI_Config, 0x10, 0x04) Field (H2AD, DWordAcc, NoLock, Preserve) { H2BA, 32 } OperationRegion (H2FS, PCI_Config, 0x40, 0x04) Field (H2FS, DWordAcc, NoLock, Preserve) { RPS0, 6, RPS1, 6, RPS2, 6, RPS3, 6, RPRV, 8 } OperationRegion (H2GS, PCI_Config, 0x48, 0x04) Field (H2GS, DWordAcc, NoLock, Preserve) { RTS0, 6, RTS1, 6, RTS2, 6, RTS3, 6, RTRV, 8 } OperationRegion (H2HS, PCI_Config, 0x4C, 0x04) Field (H2HS, DWordAcc, NoLock, Preserve) { CPS0, 6, CPS1, 6, CPS2, 6, CPS3, 6, CPRV, 8 } OperationRegion (HCSR, SystemMemory, 0xDF8FD000, 0x10) Field (HCSR, DWordAcc, NoLock, Preserve) { CBWW, 32, HIE, 1, HIS, 1, HIG, 1, HRD, 1, HRS, 1, Offset (0x05), HRP, 8, HWP, 8, HBD, 8, CBRW, 32, MIE, 1, MIS, 1, MIG, 1, MRD, 1, MRS, 1, Offset (0x0D), MRP, 8, MWP, 8, MBD, 8 } Method (_INI, 0, Serialized) // _INI: Initialize { WAK () RCPU () RPWM () } Method (WAK, 0, Serialized) { Store (0x01, HRD) Store (0x01, HIE) Store (0x01, HIG) } Method (_STA, 0, NotSerialized) // _STA: Status { Return (0x0B) } Method (PTS, 0, Serialized) { Store (0x00, HIE) Store (0x00, HRD) Store (0x01, HIG) } OperationRegion (CPLD, SystemIO, 0xE0, 0x08) Field (CPLD, ByteAcc, NoLock, Preserve) { CPIN, 8, RES1, 24, CPDA, 8, RES2, 24 } IndexField (CPIN, CPDA, ByteAcc, NoLock, Preserve) { Offset (0x02), PLNR, 8, Offset (0x09), CPUP, 8 } Method (RCPU, 0, NotSerialized) { ShiftRight (Not (CPUP), 0x04, Local0) Store (And (Local0, 0x01), Local1) Store (And (ShiftRight (Local0, 0x01), 0x01), Local2) Store (And (ShiftRight (Local0, 0x02), 0x01), Local3) Store (And (ShiftRight (Local0, 0x03), 0x01), Local4) Store (Add (Add (Add (Local1, Local2), Local3), Local4 ), NUMS) } Method (RPWM, 0, NotSerialized) { Store (\_SB.P0B1.SPAD.SR04, Local0) Store (ShiftRight (And (Local0, 0xC000), 0x0E), Local0) Store (Local0, PWRM) } Method (HSCI, 0, Serialized) { If (HIS) { Store (0x01, HIS) If (MRS) { Store (0x01, HRS) Store (0x01, HIG) } Else { If (MRD) { If (LNot (HRD)) { Store (0x00, HRS) Store (0x01, HRD) Store (0x01, HIG) } If (LNotEqual (MWP, MRP)) { Store (CBRW, Local1) Store (CBRW, Local0) Store (0x01, HIG) If (LEqual (And (Local0, 0xFF), 0x00)) { If (LEqual (PWRM, 0x00)) { Acquire (SMIM, 0xFFFF) Store (0x99, SMIC) Store (SMIC, Local2) Release (SMIM) Store (Local1, CBWW) Store (0x80, PETE) Store (Or (PETE, 0x40), PETE) Store (Or (Local0, And (PETE, 0xFF)), CBWW) Store (0x01, HIG) } Store (RPS0, \_PR.PST0) Store (RTS0, \_PR.TST0) If (LGreater (NUMS, 0x01)) { Store (RPS1, \_PR.PST1) Store (RTS1, \_PR.TST1) } If (LGreater (NUMS, 0x02)) { Store (RPS2, \_PR.PST2) Store (RTS2, \_PR.TST2) } If (LGreater (NUMS, 0x03)) { Store (RPS3, \_PR.PST3) Store (RTS3, \_PR.TST3) } If (CondRefOf (\_PR.CPU1._PSS, Local5)) { Notify (\_PR.CPU1, 0x80) Notify (\_PR.CPU1, 0x82) Notify (\_PR.CPU2, 0x80) Notify (\_PR.CPU2, 0x82) Notify (\_PR.CPU3, 0x80) Notify (\_PR.CPU3, 0x82) Notify (\_PR.CPU4, 0x80) Notify (\_PR.CPU4, 0x82) Notify (\_PR.CPU5, 0x80) Notify (\_PR.CPU5, 0x82) Notify (\_PR.CPU6, 0x80) Notify (\_PR.CPU6, 0x82) Notify (\_PR.CPU7, 0x80) Notify (\_PR.CPU7, 0x82) Notify (\_PR.CPU8, 0x80) Notify (\_PR.CPU8, 0x82) Notify (\_PR.CPU9, 0x80) Notify (\_PR.CPU9, 0x82) Notify (\_PR.CPUA, 0x80) Notify (\_PR.CPUA, 0x82) Notify (\_PR.CPUB, 0x80) Notify (\_PR.CPUB, 0x82) Notify (\_PR.CPUC, 0x80) Notify (\_PR.CPUC, 0x82) Notify (\_PR.CPUD, 0x80) Notify (\_PR.CPUD, 0x82) Notify (\_PR.CPUE, 0x80) Notify (\_PR.CPUE, 0x82) Notify (\_PR.CPUF, 0x80) Notify (\_PR.CPUF, 0x82) Notify (\_PR.CPUG, 0x80) Notify (\_PR.CPUG, 0x82) Notify (\_PR.CP17, 0x80) Notify (\_PR.CP17, 0x82) Notify (\_PR.CP18, 0x80) Notify (\_PR.CP18, 0x82) Notify (\_PR.CP19, 0x80) Notify (\_PR.CP19, 0x82) Notify (\_PR.CP20, 0x80) Notify (\_PR.CP20, 0x82) Notify (\_PR.CP21, 0x80) Notify (\_PR.CP21, 0x82) Notify (\_PR.CP22, 0x80) Notify (\_PR.CP22, 0x82) Notify (\_PR.CP23, 0x80) Notify (\_PR.CP23, 0x82) Notify (\_PR.CP24, 0x80) Notify (\_PR.CP24, 0x82) Notify (\_PR.CP25, 0x80) Notify (\_PR.CP25, 0x82) Notify (\_PR.CP26, 0x80) Notify (\_PR.CP26, 0x82) Notify (\_PR.CP27, 0x80) Notify (\_PR.CP27, 0x82) Notify (\_PR.CP28, 0x80) Notify (\_PR.CP28, 0x82) Notify (\_PR.CP29, 0x80) Notify (\_PR.CP29, 0x82) Notify (\_PR.CP30, 0x80) Notify (\_PR.CP30, 0x82) Notify (\_PR.CP31, 0x80) Notify (\_PR.CP31, 0x82) Notify (\_PR.CP32, 0x80) Notify (\_PR.CP32, 0x82) } If (LEqual (PWRM, 0x01)) { Store (\_PR.TST0, \_SB.PCI0.HEC1.CTS0) Store (\_PR.TST1, \_SB.PCI0.HEC1.CTS1) Store (\_PR.TST2, \_SB.PCI0.HEC1.CTS2) Store (\_PR.TST3, \_SB.PCI0.HEC1.CTS3) Store (RTRV, \_SB.PCI0.HEC1.CTRV) Store (\_PR.PST0, CPS0) Store (\_PR.PST1, CPS1) Store (\_PR.PST2, CPS2) Store (\_PR.PST3, CPS3) Store (RPRV, CPRV) Store (Local1, CBWW) Store (Or (0x80, 0x40), PETE) Store (Or (Local0, And (PETE, 0xFF)), CBWW) Store (0x01, HIG) } } If (LEqual (And (Local0, 0xFF), 0x03)) { Store (Local1, \PURA) Store (Local0, \PURB) If (PURE) { Store (And (ShiftRight (Local0, 0x10), 0xFFFF), \NUMP) Notify (\_SB.PCI0.PRAD, 0x80) } Else { Store (\PURA, CBWW) Store (\PURB, CBWW) Store (0x01, HIG) } } } } } } } } Device (PRAD) { Name (_HID, "ACPI000C") // _HID: Hardware ID Method (_STA, 0, NotSerialized) // _STA: Status { If (\PURE) { Return (0x0B) } Else { Return (0x00) } } Method (_PUR, 0, NotSerialized) // _PUR: Processor Utilization Request { Name (IDL, Package (0x02) { 0x01, 0x00 }) Store (\NUMP, Index (IDL, 0x01)) Return (IDL) } Method (_OST, 3, Serialized) // _OST: OSPM Status Indication { Store (And (Arg1, 0xFF), Local1) Store (ToInteger (Arg2), Local2) If (LEqual (And (\PURB, 0xFF), 0x03)) { Store (\PURA, \_SB.PCI0.HEC2.CBWW) Subtract (\_PR.MAXT, Local2, Local2) Store (Or (And (\PURB, 0xFFFFFF00), 0x83), \PURB) Store (Or (And (\PURB, 0xFFFF), ShiftLeft (Local2, 0x10) ), \_SB.PCI0.HEC2.CBWW) Store (0x01, \_SB.PCI0.HEC2.HIG) } } } Device (ISA) { Name (_ADR, 0x001F0000) // _ADR: Address OperationRegion (LPCC, PCI_Config, 0x00, 0x0100) Device (DMA) { Name (_HID, EisaId ("PNP0200")) // _HID: Hardware ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (DMAB, ResourceTemplate () { IO (Decode16, 0x0080, // Range Minimum 0x0080, // Range Maximum 0x01, // Alignment 0x20, // Length ) IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x01, // Alignment 0x20, // Length ) IO (Decode16, 0x00C0, // Range Minimum 0x00C0, // Range Maximum 0x01, // Alignment 0x20, // Length ) DMA (Compatibility, NotBusMaster, Transfer16, ) {4} }) Store ("DMA_ _CRS", Debug) Return (DMAB) } } Device (FPU) { Name (_HID, EisaId ("PNP0C04")) // _HID: Hardware ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (FPUB, ResourceTemplate () { IO (Decode16, 0x00F0, // Range Minimum 0x00F0, // Range Maximum 0x01, // Alignment 0x10, // Length ) IRQNoFlags () {13} }) Store ("FPU _CRS", Debug) Return (FPUB) } } Device (PIC) { Name (_HID, EisaId ("PNP0000")) // _HID: Hardware ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (PICB, ResourceTemplate () { IO (Decode16, 0x0020, // Range Minimum 0x0020, // Range Maximum 0x01, // Alignment 0x20, // Length ) IO (Decode16, 0x00A0, // Range Minimum 0x00A0, // Range Maximum 0x01, // Alignment 0x20, // Length ) IO (Decode16, 0x04D0, // Range Minimum 0x04D0, // Range Maximum 0x01, // Alignment 0x02, // Length ) IRQNoFlags () {2} }) Store ("PIC _CRS", Debug) Return (PICB) } } Device (SPK) { Name (_HID, EisaId ("PNP0C01")) // _HID: Hardware ID Name (_UID, 0x02) // _UID: Unique ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (SPKB, ResourceTemplate () { IO (Decode16, 0x0061, // Range Minimum 0x0061, // Range Maximum 0x01, // Alignment 0x01, // Length ) }) Store ("SB_NMI _CRS", Debug) Return (SPKB) } } Device (RTC) { Name (_HID, EisaId ("PNP0B00")) // _HID: Hardware ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (RTCB, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x01, // Alignment 0x10, // Length ) IRQNoFlags () {8} }) Store ("RTC _CRS", Debug) Return (RTCB) } } Device (TMR) { Name (_HID, EisaId ("PNP0100")) // _HID: Hardware ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (TMRB, ResourceTemplate () { IO (Decode16, 0x0040, // Range Minimum 0x0040, // Range Maximum 0x01, // Alignment 0x20, // Length ) IRQNoFlags () {0} }) Store ("TMR _CRS", Debug) Return (TMRB) } } OperationRegion (NSIO, SystemIO, 0x0370, 0x02) Field (NSIO, ByteAcc, NoLock, Preserve) { INDX, 8, DATA, 8 } IndexField (INDX, DATA, ByteAcc, NoLock, Preserve) { Offset (0x02), CFG, 8, Offset (0x07), LDN, 8, Offset (0x20), SIID, 8, Offset (0x30), ACTR, 8, Offset (0x60), IOAH, 8, IOAL, 8, Offset (0x70), INTR, 8, Offset (0x74), DMCH, 8, Offset (0xF0), OPT1, 8, OPT2, 8, OPT3, 8 } Mutex (MTX, 0x01) Method (SIOD, 1, NotSerialized) { Store (Arg0, LDN) Store ("LDN: ", Debug) Store (LDN, Debug) } Device (COMA) { Name (_HID, EisaId ("PNP0501")) // _HID: Hardware ID Name (_UID, 0x01) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { Name (RET, Zero) Store ("COMA _STA ", Debug) Acquire (MTX, 0xFFFF) SIOD (0x03) If (ACTR) { Store (0x0F, RET) } Else { Store (0x0D, RET) } Release (MTX) Store (RET, Debug) Return (RET) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store ("COMA _DIS ", Debug) Acquire (MTX, 0xFFFF) SIOD (0x03) Store (Zero, INTR) Store (Zero, ACTR) Release (MTX) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (CMA0, ResourceTemplate () { IO (Decode16, 0x03F8, // Range Minimum 0x03F8, // Range Maximum 0x08, // Alignment 0x08, // Length _Y00) IRQNoFlags (_Y01) {4} }) Store ("COMA _CRS ", Debug) CreateByteField (CMA0, \_SB.PCI0.ISA.COMA._CRS._Y00._MIN, IOL0) // _MIN: Minimum Base Address CreateByteField (CMA0, 0x03, IOH0) CreateByteField (CMA0, \_SB.PCI0.ISA.COMA._CRS._Y00._MAX, IOL1) // _MAX: Maximum Base Address CreateByteField (CMA0, 0x05, IOH1) CreateWordField (CMA0, \_SB.PCI0.ISA.COMA._CRS._Y01._INT, IQR) // _INT: Interrupts Acquire (MTX, 0xFFFF) SIOD (0x03) Store (IOAL, IOL0) Store (IOAL, IOL1) Store (IOAH, IOH0) Store (IOAH, IOH1) ShiftLeft (One, INTR, IQR) Store (IOH0, Debug) Store (IOL0, Debug) Store (" ", Debug) Store (IQR, Debug) Release (MTX) Return (CMA0) } Method (_PRS, 0, NotSerialized) // _PRS: Possible Resource Settings { Name (CMA1, Buffer (0x24) { /* 0000 */ 0x30, 0x47, 0x01, 0xF8, 0x03, 0xF8, 0x03, 0x08, /* 0008 */ 0x08, 0x22, 0x10, 0x00, 0x30, 0x47, 0x01, 0xE8, /* 0010 */ 0x03, 0xE8, 0x03, 0x08, 0x08, 0x22, 0x10, 0x00, /* 0018 */ 0x30, 0x47, 0x01, 0xF8, 0x02, 0xF8, 0x02, 0x08, /* 0020 */ 0x08, 0x22, 0x08, 0x00 }) Concatenate (CMA1, SBCM, Local0) Store (Local0, Debug) Return (Local0) } Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings { Store ("COMA _SRS", Debug) CreateWordField (Arg0, 0x02, IOAD) CreateByteField (Arg0, 0x02, IOLO) CreateByteField (Arg0, 0x03, IOHI) CreateWordField (Arg0, 0x09, IQR) Acquire (MTX, 0xFFFF) SIOD (0x03) Store (IOLO, IOAL) Store (IOHI, IOAH) FindSetRightBit (IQR, Local0) Subtract (Local0, 0x01, INTR) COMD (IOAD, 0x00) Store (IOAD, Debug) Store (" ", Debug) Store (INTR, Debug) Store (One, ACTR) Release (MTX) } } Device (COMB) { Name (_HID, EisaId ("PNP0501")) // _HID: Hardware ID Name (_UID, 0x02) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { Name (RET, Zero) Store ("COMB _STA ", Debug) Acquire (MTX, 0xFFFF) SIOD (0x02) If (ACTR) { Store (0x0F, RET) } Else { Store (0x0D, RET) } Release (MTX) Store (RET, Debug) Return (RET) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store ("COMB _DIS ", Debug) Acquire (MTX, 0xFFFF) SIOD (0x02) Store (Zero, INTR) Store (Zero, ACTR) Release (MTX) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (CMB0, ResourceTemplate () { IO (Decode16, 0x02F8, // Range Minimum 0x02F8, // Range Maximum 0x08, // Alignment 0x08, // Length _Y02) IRQNoFlags (_Y03) {3} }) Store ("COMB _CRS ", Debug) CreateByteField (CMB0, \_SB.PCI0.ISA.COMB._CRS._Y02._MIN, IOL0) // _MIN: Minimum Base Address CreateByteField (CMB0, 0x03, IOH0) CreateByteField (CMB0, \_SB.PCI0.ISA.COMB._CRS._Y02._MAX, IOL1) // _MAX: Maximum Base Address CreateByteField (CMB0, 0x05, IOH1) CreateWordField (CMB0, \_SB.PCI0.ISA.COMB._CRS._Y03._INT, IQR) // _INT: Interrupts Acquire (MTX, 0xFFFF) SIOD (0x02) Store (IOAL, IOL0) Store (IOAL, IOL1) Store (IOAH, IOH0) Store (IOAH, IOH1) ShiftLeft (One, INTR, IQR) Store (IOH0, Debug) Store (IOL0, Debug) Store (" ", Debug) Store (IQR, Debug) Release (MTX) Return (CMB0) } Method (_PRS, 0, NotSerialized) // _PRS: Possible Resource Settings { Name (CMB1, Buffer (0x24) { /* 0000 */ 0x30, 0x47, 0x01, 0xF8, 0x02, 0xF8, 0x02, 0x08, /* 0008 */ 0x08, 0x22, 0x08, 0x00, 0x30, 0x47, 0x01, 0xE8, /* 0010 */ 0x02, 0xE8, 0x02, 0x08, 0x08, 0x22, 0x08, 0x00, /* 0018 */ 0x30, 0x47, 0x01, 0xF8, 0x03, 0xF8, 0x03, 0x08, /* 0020 */ 0x08, 0x22, 0x10, 0x00 }) Concatenate (CMB1, SBCM, Local0) Store (Local0, Debug) Return (Local0) } Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings { Store ("COMB _SRS ", Debug) CreateWordField (Arg0, 0x02, IOAD) CreateByteField (Arg0, 0x02, IOLO) CreateByteField (Arg0, 0x03, IOHI) CreateWordField (Arg0, 0x09, IQR) Acquire (MTX, 0xFFFF) SIOD (0x02) Store (IOLO, IOAL) Store (IOHI, IOAH) FindSetRightBit (IQR, Local0) Subtract (Local0, 0x01, INTR) COMD (IOAD, 0x01) Store (IOAD, Debug) Store (" ", Debug) Store (INTR, Debug) Store (One, ACTR) Release (MTX) } } Device (MBIO) { Name (_HID, EisaId ("PNP0C01")) // _HID: Hardware ID Name (_UID, "MBIO") // _UID: Unique ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (SBDB, ResourceTemplate () { IO (Decode16, 0x0800, // Range Minimum 0x0800, // Range Maximum 0x01, // Alignment 0x80, // Length ) IO (Decode16, 0x00E0, // Range Minimum 0x00E0, // Range Maximum 0x01, // Alignment 0x08, // Length ) IO (Decode16, 0x0880, // Range Minimum 0x0880, // Range Maximum 0x01, // Alignment 0x80, // Length ) IO (Decode16, 0x0900, // Range Minimum 0x0900, // Range Maximum 0x01, // Alignment 0x20, // Length ) IO (Decode16, 0x0920, // Range Minimum 0x0920, // Range Maximum 0x01, // Alignment 0x04, // Length ) IO (Decode16, 0x0924, // Range Minimum 0x0924, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0370, // Range Minimum 0x0370, // Range Maximum 0x01, // Alignment 0x08, // Length ) IO (Decode16, 0x0CA0, // Range Minimum 0x0CA0, // Range Maximum 0x01, // Alignment 0x08, // Length ) IO (Decode16, 0x0CA9, // Range Minimum 0x0CA9, // Range Maximum 0x01, // Alignment 0x03, // Length ) IO (Decode16, 0x0CAD, // Range Minimum 0x0CAD, // Range Maximum 0x01, // Alignment 0x03, // Length ) IO (Decode16, 0x0CB0, // Range Minimum 0x0CB0, // Range Maximum 0x01, // Alignment 0x10, // Length ) IO (Decode16, 0x0060, // Range Minimum 0x0060, // Range Maximum 0x01, // Alignment 0x01, // Length _Y04) IO (Decode16, 0x0064, // Range Minimum 0x0064, // Range Maximum 0x01, // Alignment 0x01, // Length _Y05) }) CreateByteField (SBDB, \_SB.PCI0.ISA.MBIO._CRS._Y04._LEN, KBL1) // _LEN: Length CreateByteField (SBDB, \_SB.PCI0.ISA.MBIO._CRS._Y05._LEN, KBL2) // _LEN: Length If (LOr (GCKB (), GCMS ())) { Store (Zero, KBL1) Store (Zero, KBL2) } Return (SBDB) } } Device (NIPM) { Name (_HID, EisaId ("IPI0001")) // _HID: Hardware ID Name (_CID, EisaId ("PNP0C01")) // _CID: Compatible ID Name (_UID, 0x05) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (TOOS, 0x01)) { Return (0x0F) } Else { If (LOr (LEqual (TOOS, 0x07), LEqual (TOOS, 0x08))) { Return (0x0F) } Else { Return (0x00) } } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { If (LOr (LEqual (TOOS, 0x08), LEqual (TOOS, 0x01))) { Return (ResourceTemplate () { IO (Decode16, 0x0CA8, // Range Minimum 0x0CA8, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x0CAC, // Range Minimum 0x0CAC, // Range Maximum 0x00, // Alignment 0x01, // Length ) IRQNoFlags () {10} }) } Else { If (LEqual (TOOS, 0x07)) { Return (ResourceTemplate () { IO (Decode16, 0x0CA8, // Range Minimum 0x0CA8, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x0CAC, // Range Minimum 0x0CAC, // Range Maximum 0x00, // Alignment 0x01, // Length ) IRQNoFlags () {} }) } Else { Return (ResourceTemplate () { IO (Decode16, 0x0CA8, // Range Minimum 0x0CA8, // Range Maximum 0x00, // Alignment 0x00, // Length ) IO (Decode16, 0x0CAC, // Range Minimum 0x0CAC, // Range Maximum 0x00, // Alignment 0x00, // Length ) IRQNoFlags () {} }) } } } Method (_IFT, 0, NotSerialized) // _IFT: IPMI Interface Type { Return (0x01) } Method (_SRV, 0, NotSerialized) // _SRV: IPMI Spec Revision { Return (0x0200) } } Device (MBI1) { Name (_HID, EisaId ("PNP0C01")) // _HID: Hardware ID Name (_UID, 0x01) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { If (LOr (LEqual (TOOS, 0x08), LEqual (TOOS, 0x01))) { Return (0x00) } Else { If (LEqual (TOOS, 0x07)) { Return (0x00) } Else { Return (0x0F) } } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { If (LOr (LEqual (TOOS, 0x08), LEqual (TOOS, 0x01))) { Return (ResourceTemplate () { IO (Decode16, 0x0CA8, // Range Minimum 0x0CA8, // Range Maximum 0x00, // Alignment 0x00, // Length ) IO (Decode16, 0x0CAC, // Range Minimum 0x0CAC, // Range Maximum 0x00, // Alignment 0x00, // Length ) IRQNoFlags () {} }) } Else { If (LEqual (TOOS, 0x07)) { Return (ResourceTemplate () { IO (Decode16, 0x0CA8, // Range Minimum 0x0CA8, // Range Maximum 0x00, // Alignment 0x00, // Length ) IO (Decode16, 0x0CAC, // Range Minimum 0x0CAC, // Range Maximum 0x00, // Alignment 0x00, // Length ) IRQNoFlags () {} }) } Else { Return (ResourceTemplate () { IO (Decode16, 0x0CA8, // Range Minimum 0x0CA8, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x0CAC, // Range Minimum 0x0CAC, // Range Maximum 0x00, // Alignment 0x01, // Length ) IRQNoFlags () {} }) } } } } Device (TPM) { Name (_HID, EisaId ("PNP0C31")) // _HID: Hardware ID Name (_UID, 0x00) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { If (LNot (And (0x04, UCMR (0x63)))) { If (And (0x30, UCMR (0x4E))) { Return (0x0F) } Else { Return (0x00) } } Else { Return (0x00) } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { If (LNot (And (0x04, UCMR (0x63)))) { If (And (0x30, UCMR (0x4E))) { Return (ResourceTemplate () { Memory32Fixed (ReadWrite, 0xFED40000, // Address Base 0x00005000, // Address Length ) }) } Else { Return (Buffer (0x01) { 0x00 }) } } Else { Return (Buffer (0x01) { 0x00 }) } } Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method { Name (_T_5, Zero) // _T_x: Emitted by ASL Compiler Name (_T_4, "") // _T_x: Emitted by ASL Compiler Name (_T_3, Zero) // _T_x: Emitted by ASL Compiler Name (_T_2, Zero) // _T_x: Emitted by ASL Compiler Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler If (LNot (And (0x04, UCMR (0x63)))) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xA6, 0xFA, 0xDD, 0x3D, 0x1B, 0x36, 0xB4, 0x4E, /* 0008 */ 0xA4, 0x24, 0x8D, 0x10, 0x08, 0x9D, 0x16, 0x53 })) { While (One) { Store (ToInteger (Arg2), _T_0) If (LEqual (_T_0, 0x00)) { Return (Buffer (0x01) { 0x3F }) } Else { If (LEqual (_T_0, 0x01)) { Return ("1.0") } Else { If (LEqual (_T_0, 0x02)) { Store (ToInteger (Arg3), Local0) Store (CMRD (0x33), Local1) CMWR (0x3A, Local0) Or (Local1, 0x40, Local1) CMWR (0x33, Local1) Return (Zero) } Else { If (LEqual (_T_0, 0x03)) { Store (CMRD (0x3A), Local0) Store (CMRD (0x33), Local1) And (Local1, 0x40, Local1) If (LEqual (Local1, 0x40)) { While (One) { Store (ToInteger (Local0), _T_1) If (LEqual (_T_1, 0x00)) { Return (Package (0x02) { 0x00, 0x00 }) } Else { If (LEqual (_T_1, 0x01)) { Return (Package (0x02) { 0x00, 0x01 }) } Else { If (LEqual (_T_1, 0x02)) { Return (Package (0x02) { 0x00, 0x02 }) } Else { If (LEqual (_T_1, 0x03)) { Return (Package (0x02) { 0x00, 0x03 }) } Else { If (LEqual (_T_1, 0x04)) { Return (Package (0x02) { 0x00, 0x04 }) } Else { If (LEqual (_T_1, 0x05)) { Return (Package (0x02) { 0x00, 0x05 }) } Else { If (LEqual (_T_1, 0x06)) { Return (Package (0x02) { 0x00, 0x06 }) } Else { If (LEqual (_T_1, 0x07)) { Return (Package (0x02) { 0x00, 0x07 }) } Else { If (LEqual (_T_1, 0x08)) { Return (Package (0x02) { 0x00, 0x08 }) } Else { If (LEqual (_T_1, 0x09)) { Return (Package (0x02) { 0x00, 0x09 }) } Else { If (LEqual (_T_1, 0x0A)) { Return (Package (0x02) { 0x00, 0x0A }) } Else { If (LEqual (_T_1, 0x0B)) { Return (Package (0x02) { 0x00, 0x0B }) } Else { If (LEqual (_T_1, 0x0C)) { Return (Package (0x02) { 0x00, 0x0C }) } Else { If (LEqual (_T_1, 0x0D)) { Return (Package (0x02) { 0x00, 0x0D }) } Else { If (LEqual (_T_1, 0x0E)) { Return (Package (0x02) { 0x00, 0x0E }) } } } } } } } } } } } } } } } Break } } Return (Package (0x02) { 0x01, 0x00 }) } Else { If (LEqual (_T_0, 0x04)) { Return (0x02) } Else { If (LEqual (_T_0, 0x05)) { Store (CMRD (0x33), Local0) Store (CMRD (0x3A), Local1) Store (CMRD (0x3B), Local2) And (Local0, 0x40, Local0) And (Local2, 0x7F, Local2) If (LAnd (LEqual (Local0, 0x00), LEqual (Local2, 0x00))) { While (One) { Store (ToInteger (Local1), _T_2) If (LEqual (_T_2, 0x00)) { Return (Package (0x03) { 0x00, 0x00, 0x00 }) } Else { If (LEqual (_T_2, 0x01)) { Return (Package (0x03) { 0x00, 0x01, 0x00 }) } Else { If (LEqual (_T_2, 0x02)) { Return (Package (0x03) { 0x00, 0x02, 0x00 }) } Else { If (LEqual (_T_2, 0x03)) { Return (Package (0x03) { 0x00, 0x03, 0x00 }) } Else { If (LEqual (_T_2, 0x04)) { Return (Package (0x03) { 0x00, 0x04, 0x00 }) } Else { If (LEqual (_T_2, 0x05)) { Return (Package (0x03) { 0x00, 0x05, 0x00 }) } Else { If (LEqual (_T_2, 0x06)) { Return (Package (0x03) { 0x00, 0x06, 0x00 }) } Else { If (LEqual (_T_2, 0x07)) { Return (Package (0x03) { 0x00, 0x07, 0x00 }) } Else { If (LEqual (_T_2, 0x08)) { Return (Package (0x03) { 0x00, 0x08, 0x00 }) } Else { If (LEqual (_T_2, 0x09)) { Return (Package (0x03) { 0x00, 0x09, 0x00 }) } Else { If (LEqual (_T_2, 0x0A)) { Return (Package (0x03) { 0x00, 0x0A, 0x00 }) } Else { If (LEqual (_T_2, 0x0B)) { Return (Package (0x03) { 0x00, 0x0B, 0x00 }) } Else { If (LEqual (_T_2, 0x0C)) { Return (Package (0x03) { 0x00, 0x0C, 0x00 }) } Else { If (LEqual (_T_2, 0x0D)) { Return (Package (0x03) { 0x00, 0x0D, 0x00 }) } Else { If (LEqual (_T_2, 0x0E)) { Return (Package (0x03) { 0x00, 0x0E, 0x00 }) } } } } } } } } } } } } } } } Break } Return (Package (0x03) { 0x01, 0x00, 0x00 }) } Else { While (One) { Store (ToInteger (Local1), _T_3) If (LEqual (_T_3, 0x00)) { Return (Package (0x03) { 0x00, 0x00, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x01)) { Return (Package (0x03) { 0x00, 0x01, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x02)) { Return (Package (0x03) { 0x00, 0x02, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x03)) { Return (Package (0x03) { 0x00, 0x03, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x04)) { Return (Package (0x03) { 0x00, 0x04, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x05)) { Return (Package (0x03) { 0x00, 0x05, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x06)) { Return (Package (0x03) { 0x00, 0x06, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x07)) { Return (Package (0x03) { 0x00, 0x07, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x08)) { Return (Package (0x03) { 0x00, 0x08, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x09)) { Return (Package (0x03) { 0x00, 0x09, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x0A)) { Return (Package (0x03) { 0x00, 0x0A, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x0B)) { Return (Package (0x03) { 0x00, 0x0B, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x0C)) { Return (Package (0x03) { 0x00, 0x0C, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x0D)) { Return (Package (0x03) { 0x00, 0x0D, 0xFFFFFFF0 }) } Else { If (LEqual (_T_3, 0x0E)) { Return (Package (0x03) { 0x00, 0x0E, 0xFFFFFFF0 }) } } } } } } } } } } } } } } } Break } Return (Package (0x03) { 0x01, 0x00, 0x00 }) } } Else { If (LEqual (_T_0, 0x06)) { While (One) { Store (ToString (Arg3, Ones), _T_4) If (LEqual (_T_4, "en")) { Return (Zero) } Else { Return (One) } Break } } Else { Return (Buffer (0x01) { 0x00 }) } } } } } } } Break } } If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xED, 0x54, 0x60, 0x37, 0x13, 0xCC, 0x75, 0x46, /* 0008 */ 0x90, 0x1C, 0x47, 0x56, 0xD7, 0xF2, 0xD4, 0x5D })) { While (One) { Store (ToInteger (Arg2), _T_5) If (LEqual (_T_5, 0x00)) { Return (Buffer (0x01) { 0x01 }) } Else { If (LEqual (_T_5, 0x01)) { Store (CMRD (0x3B), Local0) And (Local0, 0x7F, Local0) If (ToInteger (Arg3)) { Store (0x80, Local1) } Else { Store (0x00, Local1) } Or (Local0, Local1, Local0) CMWR (0x3B, Local0) Return (0x00) } } Break } } Return (Buffer (0x01) { 0x00 }) } Return (Buffer (0x01) { 0x00 }) } } } Device (COR0) { Name (_ADR, 0x00050000) // _ADR: Address OperationRegion (MCH0, PCI_Config, 0x00, 0x0200) Method (_REG, 2, NotSerialized) // _REG: Region Availability { Store ("CIBN ready", Debug) } Field (MCH0, DWordAcc, NoLock, Preserve) { CDID, 32, Offset (0xD0), TOLM, 32, Offset (0x108), CIBN, 32 } } Device (PEHB) { Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID Name (_UID, "PEH0") // _UID: Unique ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (HBRS, ResourceTemplate () { DWordMemory (ResourceConsumer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0xE0000000, // Range Minimum 0xE3EFFFFF, // Range Maximum 0x00000000, // Translation Offset 0x03F00000, // Length ,, , AddressRangeMemory, TypeStatic) }) Store ("PEHB _CRS", Debug) Store (HBRS, Debug) Return (HBRS) } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (HB0, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, // Granularity 0x0000, // Range Minimum 0x003E, // Range Maximum 0x0000, // Translation Offset 0x003F, // Length ,, _Y07) IO (Decode16, 0x0CF8, // Range Minimum 0x0CF8, // Range Maximum 0x01, // Alignment 0x08, // Length ) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x03AF, // Range Maximum 0x0000, // Translation Offset 0x03B0, // Length ,, , TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x03E0, // Range Minimum 0x0CF7, // Range Maximum 0x0000, // Translation Offset 0x0918, // Length ,, , TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y08, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0D00, // Range Minimum 0x1FFF, // Range Maximum 0x0000, // Translation Offset 0x1300, // Length ,, , TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y12, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y13, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y14, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y15, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y16, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y17, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y18, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y09, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y0A, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y0B, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y0C, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y0D, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y0E, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y0F, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y10, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y11, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y06, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0xFED40000, // Range Minimum 0xFED44FFF, // Range Maximum 0x00000000, // Translation Offset 0x00005000, // Length ,, , AddressRangeMemory, TypeStatic) }) If (And (0x01, UCMR (0x53))) { CreateDWordField (HB0, \_SB.PCI0._CRS._Y06._MIN, PMNL) // _MIN: Minimum Base Address Add (0x0260, 0x04, Local0) CreateDWordField (HB0, Local0, PMNH) CreateDWordField (HB0, \_SB.PCI0._CRS._Y06._MAX, PMXL) // _MAX: Maximum Base Address Add (0x0268, 0x04, Local0) CreateDWordField (HB0, Local0, PMXH) CreateDWordField (HB0, \_SB.PCI0._CRS._Y06._LEN, PMLL) // _LEN: Length Add (0x0278, 0x04, Local0) CreateDWordField (HB0, Local0, PMLH) Store (0x00, PMNL) Store (0x0F00, PMNH) Store (0xFFFFFFFF, PMXL) Store (0x0FFF, PMXH) Store (0x00, PMLL) Store (0x0100, PMLH) } CreateWordField (HB0, \_SB.PCI0._CRS._Y07._MIN, BR0M) // _MIN: Minimum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y07._MAX, BR0P) // _MAX: Maximum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y07._LEN, BR0L) // _LEN: Length CreateWordField (HB0, \_SB.PCI0._CRS._Y08._MIN, ION) // _MIN: Minimum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y08._MAX, IOX) // _MAX: Maximum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y08._LEN, IOL) // _LEN: Length CreateDWordField (HB0, \_SB.PCI0._CRS._Y09._MIN, VGAN) // _MIN: Minimum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y09._MAX, VGAX) // _MAX: Maximum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y09._LEN, VGAL) // _LEN: Length If (LLess (CMRD (Add (0x73, 0x01)), 0x3F)) { Store (0x03B0, ION) Store (0x03DF, IOX) Store (Add (Subtract (IOX, ION), 0x01), IOL) Store (0x000A0000, VGAN) Store (0x000BFFFF, VGAX) Store (Add (Subtract (VGAX, VGAN), 0x01), VGAL) } CreateDWordField (HB0, \_SB.PCI0._CRS._Y0A._MIN, ME0M) // _MIN: Minimum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y0A._MAX, ME0U) // _MAX: Maximum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y0A._LEN, ME0L) // _LEN: Length CreateDWordField (HB0, \_SB.PCI0._CRS._Y0B._MIN, ME1M) // _MIN: Minimum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y0B._MAX, ME1U) // _MAX: Maximum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y0B._LEN, ME1L) // _LEN: Length CreateDWordField (HB0, \_SB.PCI0._CRS._Y0C._MIN, ME2M) // _MIN: Minimum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y0C._MAX, ME2U) // _MAX: Maximum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y0C._LEN, ME2L) // _LEN: Length CreateDWordField (HB0, \_SB.PCI0._CRS._Y0D._MIN, ME3M) // _MIN: Minimum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y0D._MAX, ME3U) // _MAX: Maximum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y0D._LEN, ME3L) // _LEN: Length CreateDWordField (HB0, \_SB.PCI0._CRS._Y0E._MIN, ME4M) // _MIN: Minimum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y0E._MAX, ME4U) // _MAX: Maximum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y0E._LEN, ME4L) // _LEN: Length CreateDWordField (HB0, \_SB.PCI0._CRS._Y0F._MIN, ME5M) // _MIN: Minimum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y0F._MAX, ME5U) // _MAX: Maximum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y0F._LEN, ME5L) // _LEN: Length CreateDWordField (HB0, \_SB.PCI0._CRS._Y10._MIN, ME6M) // _MIN: Minimum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y10._MAX, ME6U) // _MAX: Maximum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y10._LEN, ME6L) // _LEN: Length CreateDWordField (HB0, \_SB.PCI0._CRS._Y11._MIN, ME7M) // _MIN: Minimum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y11._MAX, ME7U) // _MAX: Maximum Base Address CreateDWordField (HB0, \_SB.PCI0._CRS._Y11._LEN, ME7L) // _LEN: Length CreateWordField (HB0, \_SB.PCI0._CRS._Y12._MIN, IO1M) // _MIN: Minimum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y12._MAX, IO1U) // _MAX: Maximum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y12._LEN, IO1L) // _LEN: Length CreateWordField (HB0, \_SB.PCI0._CRS._Y13._MIN, IO2M) // _MIN: Minimum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y13._MAX, IO2U) // _MAX: Maximum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y13._LEN, IO2L) // _LEN: Length CreateWordField (HB0, \_SB.PCI0._CRS._Y14._MIN, IO3M) // _MIN: Minimum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y14._MAX, IO3U) // _MAX: Maximum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y14._LEN, IO3L) // _LEN: Length CreateWordField (HB0, \_SB.PCI0._CRS._Y15._MIN, IO4M) // _MIN: Minimum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y15._MAX, IO4U) // _MAX: Maximum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y15._LEN, IO4L) // _LEN: Length CreateWordField (HB0, \_SB.PCI0._CRS._Y16._MIN, IO5M) // _MIN: Minimum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y16._MAX, IO5U) // _MAX: Maximum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y16._LEN, IO5L) // _LEN: Length CreateWordField (HB0, \_SB.PCI0._CRS._Y17._MIN, IO6M) // _MIN: Minimum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y17._MAX, IO6U) // _MAX: Maximum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y17._LEN, IO6L) // _LEN: Length CreateWordField (HB0, \_SB.PCI0._CRS._Y18._MIN, IO7M) // _MIN: Minimum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y18._MAX, IO7U) // _MAX: Maximum Base Address CreateWordField (HB0, \_SB.PCI0._CRS._Y18._LEN, IO7L) // _LEN: Length Store (P2IN (), Local1) If (LEqual (Local1, 0x3F)) { Store (P3FL, Local0) } Else { If (LEqual (Local1, 0x1F)) { Store (P3FL, Local0) } Else { Store (0x00, Local0) } } If (LNotEqual (Local0, 0x00)) { Store (0xFF, Local0) Increment (Local0) ShiftRight (Local0, 0x02, Local0) Decrement (Local0) Decrement (Local0) Store (Local0, BR0L) Decrement (Local0) Store (Local0, BR0P) Store (P3FM, Local0) If (LEqual (And (Local0, 0x07), 0x00)) { Store (P3I0, Local6) If (LAnd (LNotEqual (And (Local6, 0x01), 0x00), LEqual ( And (Local6, 0x001FFF80), 0x00))) { And (Local6, 0x001FFFFE, Local7) ShiftLeft (Local7, 0x19, Local7) Store (Local7, ME0M) And (Local6, 0xFC000000, Local7) Or (Local7, 0x03FFFFFF, Local7) Store (Local7, ME0U) Subtract (ME0U, ME0M, ME0L) Increment (ME0L) } } If (LEqual (And (Local0, 0x38), 0x00)) { Store (P3I1, Local6) If (LAnd (LNotEqual (And (Local6, 0x01), 0x00), LEqual ( And (Local6, 0x001FFF80), 0x00))) { And (Local6, 0x001FFFFE, Local7) ShiftLeft (Local7, 0x19, Local7) Store (Local7, ME1M) And (Local6, 0xFC000000, Local7) Or (Local7, 0x03FFFFFF, Local7) Store (Local7, ME1U) Subtract (ME1U, ME1M, ME1L) Increment (ME1L) } } Store (P3FI, Local0) If (LEqual (And (Local0, 0x38), 0x00)) { Store (0x2000, IO1M) Store (0x3FFF, IO1U) Store (0x2000, IO1L) } If (LEqual (And (Local0, 0x01C0), 0x00)) { Store (0x4000, IO2M) Store (0x5FFF, IO2U) Store (0x2000, IO2L) } If (LEqual (And (Local0, 0x0E00), 0x00)) { Store (0x6000, IO3M) Store (0x7FFF, IO3U) Store (0x2000, IO3L) } If (LEqual (And (Local0, 0x7000), 0x00)) { Store (0x8000, IO4M) Store (0x9FFF, IO4U) Store (0x2000, IO4L) } If (LEqual (And (Local0, 0x00038000), 0x00)) { Store (0xA000, IO5M) Store (0xBFFF, IO5U) Store (0x2000, IO5L) } If (LEqual (And (Local0, 0x001C0000), 0x00)) { Store (0xC000, IO6M) Store (0xDFFF, IO6U) Store (0x2000, IO6L) } If (LEqual (And (Local0, 0x00E00000), 0x00)) { Store (0xE000, IO7M) Store (0xFFFF, IO7U) Store (0x2000, IO7L) } } Else { Store (\_SB.PCI0.COR0.TOLM, Local0) And (Local0, 0xFC000000, Local0) Or (Local0, 0x03FFFFFF, Local0) Increment (Local0) Store (Local0, ME0M) Store (0xFBFFFFFF, ME0U) Subtract (ME0U, ME0M, ME0L) Increment (ME0L) Store (0x2000, IO1M) Store (0xFFFF, IO1U) Store (0xE000, IO1L) } Store (HB0, Debug) Return (HB0) } Name (SUPP, 0x00) Name (CTRL, 0x00) Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { Store ("Method _OSC", Debug) If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40, /* 0008 */ 0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66 })) { CreateDWordField (Arg3, 0x00, CDW1) CreateDWordField (Arg3, 0x04, CDW2) CreateDWordField (Arg3, 0x08, CDW3) Store ("Revision ", Debug) Store (Arg1, Debug) Store ("Count ", Debug) Store (Arg2, Debug) Store ("Status ", Debug) Store (CDW1, Debug) Store ("Support ", Debug) Store (CDW2, Debug) Store ("Control ", Debug) Store (CDW3, Debug) Store (CDW2, SUPP) Store (CDW3, CTRL) If (LNotEqual (And (SUPP, 0x16), 0x16)) { And (CTRL, 0x1F, CTRL) } If (Not (And (CDW1, 0x01))) { If (And (CTRL, 0x01)) { Store ("Turn off PCIE hotplug BIOS support", Debug) } If (And (CTRL, 0x04)) { Store ("Turn off PME BIOS support", Debug) } } If (LNotEqual (Arg1, One)) { Or (CDW1, 0x08, CDW1) } If (LNotEqual (CDW3, CTRL)) { Or (CDW1, 0x10, CDW1) } Store (CTRL, CDW3) } Else { Or (CDW1, 0x04, CDW1) } And (CDW1, 0x1F, CDW1) Store ("Return Status ", Debug) Store (CDW1, Debug) Store ("Return Support ", Debug) Store (CDW2, Debug) Store ("Return Control ", Debug) Store (CDW3, Debug) Return (Arg3) } Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Store ("Method _DSM", Debug) If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { Store ("Arg2", Debug) Store (Arg2, Debug) If (LEqual (Arg2, Zero)) { Return (Buffer (0x01) { 0x21 }) } If (LEqual (Arg2, 0x05)) { Store ("Do not allow OS to control PCI resource rebalance", Debug) Return (Buffer (0x01) { 0x00 }) } } Store ("Unsupported function", Debug) Return (Buffer (0x01) { 0x00 }) } } Device (PCI1) { Name (P1BN, Buffer (0x01) { 0x40 }) Name (_HID, EisaId ("PNP0A08")) // _HID: Hardware ID Name (_CID, EisaId ("PNP0A03")) // _CID: Compatible ID Name (_PXM, 0x02) // _PXM: Device Proximity Name (_ADR, 0x00) // _ADR: Address Method (_BBN, 0, NotSerialized) // _BBN: BIOS Bus Number { Store (P1BN, Local0) If (LEqual (Local0, 0x80)) { Return (0x80) } Else { Return (0x40) } } Name (_UID, 0x99) // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { If (IO2P ()) { Return (0x0F) } Else { Return (0x00) } } Method (_INI, 0, Serialized) // _INI: Initialize { If (IO2P ()) { Store (C0IB, Local0) And (Local0, 0xFF00, Local0) ShiftRight (Local0, 0x08, Local0) Increment (Local0) Store (Local0, P1BN) Store ("PCI1 BBN", Debug) Store (Local0, Debug) } } Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake { 0x0B, 0x05 }) Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P101, Package (0x08) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0001FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0002FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0003FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0004FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0004FFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0x0004FFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0x0004FFFF, 0x03, LK03, 0x00 } }) Store (P101, Local0) } Else { Name (A101, Package (0x08) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x40 }, Package (0x04) { 0x0001FFFF, 0x00, 0x00, 0x55 }, Package (0x04) { 0x0002FFFF, 0x00, 0x00, 0x55 }, Package (0x04) { 0x0003FFFF, 0x00, 0x00, 0x55 }, Package (0x04) { 0x0004FFFF, 0x00, 0x00, 0x47 }, Package (0x04) { 0x0004FFFF, 0x01, 0x00, 0x4F }, Package (0x04) { 0x0004FFFF, 0x02, 0x00, 0x47 }, Package (0x04) { 0x0004FFFF, 0x03, 0x00, 0x4F } }) Store (A101, Local0) } Return (Local0) } Device (PEXB) { Name (_ADR, 0x00010000) // _ADR: Address Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P10E, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK03, 0x00 } }) Store (P10E, Local0) } Else { Name (A10E, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x42 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x44 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x45 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x46 } }) Store (A10E, Local0) } Return (Local0) } Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (LOr (LEqual (\_SB.PCI0.HEC2.PLNR, 0x02), LEqual (\_SB.PCI0.HEC2.PLNR, 0x22))) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x13, Unicode ("SLOT 1") }) } } } } } Else { If (LEqual (\_SB.PCI0.HEC2.PLNR, 0x03)) { If (LEqual (CHP0 (), 0x0C)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x13, Unicode ("SLOT 1") }) } } } } } } Else { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x15, Unicode ("SLOT 6") }) } } } } } } } } Device (PEXC) { Name (_ADR, 0x00020000) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (LOr (LEqual (\_SB.PCI0.HEC2.PLNR, 0x02), LEqual (\_SB.PCI0.HEC2.PLNR, 0x22))) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x14, Unicode ("SLOT 4") }) } } } } } Else { If (LEqual (\_SB.PCI0.HEC2.PLNR, 0x03)) { If (LEqual (CHP0 (), 0x04)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x14, Unicode ("SLOT 1") }) } } } } } } Else { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x16, Unicode ("SLOT 7") }) } } } } } } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P110, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK03, 0x00 } }) Store (P110, Local0) } Else { Name (A110, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x48 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x4C }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x4D }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x4E } }) Store (A110, Local0) } Return (Local0) } } Device (PEXD) { Name (_ADR, 0x00030000) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (LOr (LEqual (\_SB.PCI0.HEC2.PLNR, 0x02), LEqual (\_SB.PCI0.HEC2.PLNR, 0x22))) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x15, Unicode ("SLOT 3") }) } } } } } Else { If (LEqual (\_SB.PCI0.HEC2.PLNR, 0x03)) { If (LEqual (CHP0 (), 0x0C)) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x15, Unicode ("SLOT 2") }) } } } } } } Else { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x14, Unicode ("SLOT 5") }) } } } } } } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P114, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK03, 0x00 } }) Store (P114, Local0) } Else { Name (A114, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x50 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x54 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x55 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x56 } }) Store (A114, Local0) } Return (Local0) } } Device (PEXE) { Name (_ADR, 0x00030002) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Name (VAR1, Zero) If (LOr (LEqual (\_SB.PCI0.HEC2.PLNR, 0x02), LEqual (\_SB.PCI0.HEC2.PLNR, 0x22))) { If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { If (LEqual (ToInteger (Arg1), 0x02)) { Store (ToInteger (Arg2), VAR1) If (LEqual (VAR1, 0x00)) { Return (Buffer (0x01) { 0x81 }) } Else { If (LEqual (VAR1, 0x07)) { Return (Package (0x02) { 0x16, Unicode ("SLOT 2") }) } } } } } Else { If (LEqual (\_SB.PCI0.HEC2.PLNR, 0x03)) {} Else { } } } Method (_STA, 0, NotSerialized) // _STA: Status { If (RDPT ()) { Return (0x00) } Else { Return (0x0F) } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (LNot (PICF)) { Name (P112, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LK03, 0x00 } }) Store (P112, Local0) } Else { Name (A112, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x52 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x55 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x54 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x56 } }) Store (A112, Local0) } Return (Local0) } } Device (COR0) { Name (_ADR, 0x00050000) // _ADR: Address OperationRegion (MCH1, PCI_Config, 0x00, 0x0200) Field (MCH1, DWordAcc, NoLock, Preserve) { CDID, 32, Offset (0xD0), TOLM, 32, Offset (0x108), CIBN, 32 } } Device (PEHB) { Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID Name (_UID, "PEH1") // _UID: Unique ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (HBRS, ResourceTemplate () { DWordMemory (ResourceConsumer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0xE4000000, // Range Minimum 0xE7FFFFFF, // Range Maximum 0x00000000, // Translation Offset 0x04000000, // Length ,, _Y19, AddressRangeMemory, TypeStatic) }) CreateDWordField (HBRS, \_SB.PCI1.PEHB._CRS._Y19._MIN, HBAL) // _MIN: Minimum Base Address CreateDWordField (HBRS, \_SB.PCI1.PEHB._CRS._Y19._MAX, HBAU) // _MAX: Maximum Base Address CreateDWordField (HBRS, \_SB.PCI1.PEHB._CRS._Y19._LEN, HBAS) // _LEN: Length If (IO2P ()) { Store (0xE0000000, Local0) Store (0x10000000, Local1) ShiftRight (Local1, 0x02, Local1) Add (Local0, Local1, HBAL) Add (HBAL, Local1, HBAU) Store (Local1, HBAS) Decrement (HBAU) } Store ("PEHB _CRS", Debug) Store (HBRS, Debug) Return (HBRS) } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (HB2P, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, // Granularity 0x0040, // Range Minimum 0x007E, // Range Maximum 0x0000, // Translation Offset 0x003F, // Length ,, ) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y1C, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y26, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y27, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y28, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y29, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y2A, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y2B, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y2C, TypeStatic) WordIO (ResourceProducer, MinNotFixed, MaxNotFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y2D, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y1D, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y1B, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y1E, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y1F, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y20, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y21, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y22, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y23, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y24, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y25, AddressRangeMemory, TypeStatic) QWordMemory (ResourceProducer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite, 0x0000000000000000, // Granularity 0x0000000000000000, // Range Minimum 0x0000000000000000, // Range Maximum 0x0000000000000000, // Translation Offset 0x0000000000000000, // Length ,, _Y1A, AddressRangeMemory, TypeStatic) }) Name (HB2N, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, // Granularity 0x0040, // Range Minimum 0x007F, // Range Maximum 0x0000, // Translation Offset 0x0040, // Length ,, ) }) If (And (0x01, UCMR (0x53))) { CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1A._MIN, PMNL) // _MIN: Minimum Base Address Add (0x0266, 0x04, Local0) CreateDWordField (HB2P, Local0, PMNH) CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1A._MAX, PMXL) // _MAX: Maximum Base Address Add (0x026E, 0x04, Local0) CreateDWordField (HB2P, Local0, PMXH) CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1A._LEN, PMLL) // _LEN: Length Add (0x027E, 0x04, Local0) CreateDWordField (HB2P, Local0, PMLH) Store (0x00, PMNL) Store (0x0E00, PMNH) Store (0xFFFFFFFF, PMXL) Store (0x0EFF, PMXH) Store (0x00, PMLL) Store (0x0100, PMLH) } CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1B._MIN, MRPM) // _MIN: Minimum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1B._MAX, MRPU) // _MAX: Maximum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1B._LEN, MRPL) // _LEN: Length CreateWordField (HB2P, \_SB.PCI1._CRS._Y1C._MIN, ION) // _MIN: Minimum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y1C._MAX, IOX) // _MAX: Maximum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y1C._LEN, IOL) // _LEN: Length CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1D._MIN, VGAN) // _MIN: Minimum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1D._MAX, VGAX) // _MAX: Maximum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1D._LEN, VGAL) // _LEN: Length If (LGreater (CMRD (Add (0x73, 0x01)), 0x3F)) { Store (0x03B0, ION) Store (0x03DF, IOX) Store (Add (Subtract (IOX, ION), 0x01), IOL) Store (0x000A0000, VGAN) Store (0x000BFFFF, VGAX) Store (Add (Subtract (VGAX, VGAN), 0x01), VGAL) } CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1E._MIN, MR0M) // _MIN: Minimum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1E._MAX, MR0U) // _MAX: Maximum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1E._LEN, MR0L) // _LEN: Length CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1F._MIN, MR1M) // _MIN: Minimum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1F._MAX, MR1U) // _MAX: Maximum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y1F._LEN, MR1L) // _LEN: Length CreateDWordField (HB2P, \_SB.PCI1._CRS._Y20._MIN, MR2M) // _MIN: Minimum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y20._MAX, MR2U) // _MAX: Maximum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y20._LEN, MR2L) // _LEN: Length CreateDWordField (HB2P, \_SB.PCI1._CRS._Y21._MIN, MR3M) // _MIN: Minimum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y21._MAX, MR3U) // _MAX: Maximum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y21._LEN, MR3L) // _LEN: Length CreateDWordField (HB2P, \_SB.PCI1._CRS._Y22._MIN, MR4M) // _MIN: Minimum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y22._MAX, MR4U) // _MAX: Maximum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y22._LEN, MR4L) // _LEN: Length CreateDWordField (HB2P, \_SB.PCI1._CRS._Y23._MIN, MR5M) // _MIN: Minimum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y23._MAX, MR5U) // _MAX: Maximum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y23._LEN, MR5L) // _LEN: Length CreateDWordField (HB2P, \_SB.PCI1._CRS._Y24._MIN, MR6M) // _MIN: Minimum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y24._MAX, MR6U) // _MAX: Maximum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y24._LEN, MR6L) // _LEN: Length CreateDWordField (HB2P, \_SB.PCI1._CRS._Y25._MIN, MR7M) // _MIN: Minimum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y25._MAX, MR7U) // _MAX: Maximum Base Address CreateDWordField (HB2P, \_SB.PCI1._CRS._Y25._LEN, MR7L) // _LEN: Length CreateWordField (HB2P, \_SB.PCI1._CRS._Y26._MIN, IO0M) // _MIN: Minimum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y26._MAX, IO0U) // _MAX: Maximum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y26._LEN, IO0L) // _LEN: Length CreateWordField (HB2P, \_SB.PCI1._CRS._Y27._MIN, IO1M) // _MIN: Minimum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y27._MAX, IO1U) // _MAX: Maximum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y27._LEN, IO1L) // _LEN: Length CreateWordField (HB2P, \_SB.PCI1._CRS._Y28._MIN, IO2M) // _MIN: Minimum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y28._MAX, IO2U) // _MAX: Maximum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y28._LEN, IO2L) // _LEN: Length CreateWordField (HB2P, \_SB.PCI1._CRS._Y29._MIN, IO3M) // _MIN: Minimum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y29._MAX, IO3U) // _MAX: Maximum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y29._LEN, IO3L) // _LEN: Length CreateWordField (HB2P, \_SB.PCI1._CRS._Y2A._MIN, IO4M) // _MIN: Minimum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y2A._MAX, IO4U) // _MAX: Maximum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y2A._LEN, IO4L) // _LEN: Length CreateWordField (HB2P, \_SB.PCI1._CRS._Y2B._MIN, IO5M) // _MIN: Minimum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y2B._MAX, IO5U) // _MAX: Maximum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y2B._LEN, IO5L) // _LEN: Length CreateWordField (HB2P, \_SB.PCI1._CRS._Y2C._MIN, IO6M) // _MIN: Minimum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y2C._MAX, IO6U) // _MAX: Maximum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y2C._LEN, IO6L) // _LEN: Length CreateWordField (HB2P, \_SB.PCI1._CRS._Y2D._MIN, IO7M) // _MIN: Minimum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y2D._MAX, IO7U) // _MAX: Maximum Base Address CreateWordField (HB2P, \_SB.PCI1._CRS._Y2D._LEN, IO7L) // _LEN: Length If (IO2P ()) { Store (P2IN (), Local1) If (LEqual (Local1, 0x3F)) { Store (P7FL, Local0) } Else { If (LEqual (Local1, 0x1F)) { Store (P3FL, Local0) } Else { Store (0x00, Local0) } } If (LNotEqual (Local0, 0x00)) { Store (P3FM, Local0) If (LEqual (And (Local0, 0x07), 0x01)) { Store (P3I0, Local6) If (LNotEqual (And (Local6, 0x01), 0x00)) { And (Local6, 0x001FFFFE, Local7) ShiftLeft (Local7, 0x19, Local7) Store (Local7, MR0M) And (Local6, 0xFC000000, Local7) Or (Local7, 0x03FFFFFF, Local7) Store (Local7, MR0U) Subtract (MR0U, MR0M, MR0L) Increment (MR0L) } } If (LEqual (And (Local0, 0x38), 0x08)) { Store (P3I1, Local6) If (LNotEqual (And (Local6, 0x01), 0x00)) { And (Local6, 0x001FFFFE, Local7) ShiftLeft (Local7, 0x19, Local7) Store (Local7, MR1M) And (Local6, 0xFC000000, Local7) Or (Local7, 0x03FFFFFF, Local7) Store (Local7, MR1U) Subtract (MR1U, MR1M, MR1L) Increment (MR1L) } } Store (P3FI, Local0) If (LEqual (And (Local0, 0x38), 0x08)) { Store (0x2000, IO1M) Store (0x3FFF, IO1U) Store (0x2000, IO1L) } If (LEqual (And (Local0, 0x01C0), 0x40)) { Store (0x4000, IO2M) Store (0x5FFF, IO2U) Store (0x2000, IO2L) } If (LEqual (And (Local0, 0x0E00), 0x0200)) { Store (0x6000, IO3M) Store (0x7FFF, IO3U) Store (0x2000, IO3L) } If (LEqual (And (Local0, 0x7000), 0x1000)) { Store (0x8000, IO4M) Store (0x9FFF, IO4U) Store (0x2000, IO4L) } If (LEqual (And (Local0, 0x00038000), 0x8000)) { Store (0xA000, IO5M) Store (0xBFFF, IO5U) Store (0x2000, IO5L) } If (LEqual (And (Local0, 0x001C0000), 0x00040000)) { Store (0xC000, IO6M) Store (0xDFFF, IO6U) Store (0x2000, IO6L) } If (LEqual (And (Local0, 0x00E00000), 0x00200000)) { Store (0xE000, IO7M) Store (0xFFFF, IO7U) Store (0x2000, IO7L) } } Else { Store (0x00, Local0) Store (Local0, MRPM) Store (Local0, MRPU) Store (Local0, MRPL) } } Store ("HB2P _CRS.TOMR", Debug) Store (HB2P, Debug) If (IO2P ()) { Return (HB2P) } Else { Return (HB2N) } } Name (SUPP, 0x00) Name (CTRL, 0x00) Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { Store ("Method _OSC", Debug) If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40, /* 0008 */ 0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66 })) { CreateDWordField (Arg3, 0x00, CDW1) CreateDWordField (Arg3, 0x04, CDW2) CreateDWordField (Arg3, 0x08, CDW3) Store ("Revision ", Debug) Store (Arg1, Debug) Store ("Count ", Debug) Store (Arg2, Debug) Store ("Status ", Debug) Store (CDW1, Debug) Store ("Support ", Debug) Store (CDW2, Debug) Store ("Control ", Debug) Store (CDW3, Debug) Store (CDW2, SUPP) Store (CDW3, CTRL) If (LNotEqual (And (SUPP, 0x16), 0x16)) { And (CTRL, 0x1F, CTRL) } If (Not (And (CDW1, 0x01))) { If (And (CTRL, 0x01)) { Store ("Turn off PCIE hotplug BIOS support", Debug) } If (And (CTRL, 0x04)) { Store ("Turn off PME BIOS support", Debug) } } If (LNotEqual (Arg1, One)) { Or (CDW1, 0x08, CDW1) } If (LNotEqual (CDW3, CTRL)) { Or (CDW1, 0x10, CDW1) } Store (CTRL, CDW3) } Else { Or (CDW1, 0x04, CDW1) } And (CDW1, 0x1F, CDW1) Store ("Return Status ", Debug) Store (CDW1, Debug) Store ("Return Support ", Debug) Store (CDW2, Debug) Store ("Return Control ", Debug) Store (CDW3, Debug) Return (Arg3) } Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Store ("Method _DSM", Debug) If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D, /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D })) { Store ("Arg2", Debug) Store (Arg2, Debug) If (LEqual (Arg2, Zero)) { Return (Buffer (0x01) { 0x21 }) } If (LEqual (Arg2, 0x05)) { Store ("Do not allow OS to control PCI resource rebalance", Debug) Return (Buffer (0x01) { 0x00 }) } } Store ("Unsupported function", Debug) Return (Buffer (0x01) { 0x00 }) } } Device (P0B1) { Name (_PXM, 0x01) // _PXM: Device Proximity Name (_HID, EisaId ("PNP0A08")) // _HID: Hardware ID Name (_CID, EisaId ("PNP0A03")) // _CID: Compatible ID Name (_UID, "Bus 1 of PCI0") // _UID: Unique ID Name (_ADR, 0x00) // _ADR: Address Name (_BBN, 0x3F) // _BBN: BIOS Bus Number Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (PB1R, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, // Granularity 0x003F, // Range Minimum 0x003F, // Range Maximum 0x0000, // Translation Offset 0x0001, // Length ,, _Y2E) }) CreateWordField (PB1R, \_SB.P0B1._CRS._Y2E._MIN, BMIN) // _MIN: Minimum Base Address CreateWordField (PB1R, \_SB.P0B1._CRS._Y2E._MAX, BMAX) // _MAX: Maximum Base Address Store (_BBN, BMIN) Store (_BBN, BMAX) Return (PB1R) } Device (PEHB) { Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID Name (_UID, "PEH2") // _UID: Unique ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (HBRS, ResourceTemplate () { DWordMemory (ResourceConsumer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0xE3F00000, // Range Minimum 0xE3FFFFFF, // Range Maximum 0x00000000, // Translation Offset 0x00100000, // Length ,, , AddressRangeMemory, TypeStatic) }) Store ("PEHB _CRS", Debug) Store (HBRS, Debug) Return (HBRS) } } Device (VTD1) { Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID Name (_UID, "VT1") // _UID: Unique ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (VTIR, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00002000, // Address Length _Y2F) }) CreateDWordField (VTIR, \_SB.P0B1.VTD1._CRS._Y2F._BAS, BASE) // _BAS: Base Address Store (\VTB0, Local0) And (Local0, 0xFFFFFFFE, Local0) Store (Local0, BASE) Return (VTIR) } } Device (VTD2) { Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID Name (_UID, "VT2") // _UID: Unique ID Method (_STA, 0, NotSerialized) // _STA: Status { Store (\_SB.P0B1.SPAD.SR11, Local0) And (Local0, 0xFFFFFFFE, Local0) If (LEqual (Local0, Zero)) { Return (0x00) } If (LEqual (Local0, 0xFFFFFFFE)) { Return (0x00) } Return (0x0F) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (VTIR, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00002000, // Address Length _Y30) }) CreateDWordField (VTIR, \_SB.P0B1.VTD2._CRS._Y30._BAS, BASE) // _BAS: Base Address Store (\_SB.P0B1.SPAD.SR11, Local0) And (Local0, 0xFFFFFFFE, Local0) Store (Local0, BASE) Return (VTIR) } } Device (SPAD) { Name (_ADR, 0x000B0003) // _ADR: Address OperationRegion (STIC, PCI_Config, 0x50, 0x40) Field (STIC, DWordAcc, NoLock, Preserve) { SR04, 32, SR05, 32, Offset (0x1C), SR11, 32, Offset (0x3C), S19I, 8, S19B, 8, S19D, 8 } } Name (SUPP, 0x00) Name (CTRL, 0x00) Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { Store ("Method _OSC", Debug) If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40, /* 0008 */ 0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66 })) { CreateDWordField (Arg3, 0x00, CDW1) CreateDWordField (Arg3, 0x04, CDW2) CreateDWordField (Arg3, 0x08, CDW3) Store ("Revision ", Debug) Store (Arg1, Debug) Store ("Count ", Debug) Store (Arg2, Debug) Store ("Status ", Debug) Store (CDW1, Debug) Store ("Support ", Debug) Store (CDW2, Debug) Store ("Control ", Debug) Store (CDW3, Debug) Store (CDW2, SUPP) Store (CDW3, CTRL) If (LNotEqual (And (SUPP, 0x16), 0x16)) { And (CTRL, 0x1F, CTRL) } If (Not (And (CDW1, 0x01))) { If (And (CTRL, 0x01)) { Store ("Turn off PCIE hotplug BIOS support", Debug) } If (And (CTRL, 0x04)) { Store ("Turn off PME BIOS support", Debug) } } If (LNotEqual (Arg1, One)) { Or (CDW1, 0x08, CDW1) } If (LNotEqual (CDW3, CTRL)) { Or (CDW1, 0x10, CDW1) } Store (CTRL, CDW3) } Else { Or (CDW1, 0x04, CDW1) } And (CDW1, 0x1F, CDW1) Store ("Return Status ", Debug) Store (CDW1, Debug) Store ("Return Support ", Debug) Store (CDW2, Debug) Store ("Return Control ", Debug) Store (CDW3, Debug) Return (Arg3) } } Device (P1B1) { Name (P2BN, Buffer (0x01) { 0x3F }) Name (_HID, EisaId ("PNP0A08")) // _HID: Hardware ID Name (_CID, EisaId ("PNP0A03")) // _CID: Compatible ID Name (_ADR, 0x00) // _ADR: Address Method (_BBN, 0, NotSerialized) // _BBN: BIOS Bus Number { Return (0x7F) } Name (_PXM, 0x02) // _PXM: Device Proximity Name (_UID, 0x55) // _UID: Unique ID Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (HB7, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, // Granularity 0x007F, // Range Minimum 0x007F, // Range Maximum 0x0000, // Translation Offset 0x0001, // Length ,, ) }) Return (HB7) } Name (SUPP, 0x00) Name (CTRL, 0x00) Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { Store ("Method _OSC", Debug) If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40, /* 0008 */ 0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66 })) { CreateDWordField (Arg3, 0x00, CDW1) CreateDWordField (Arg3, 0x04, CDW2) CreateDWordField (Arg3, 0x08, CDW3) Store ("Revision ", Debug) Store (Arg1, Debug) Store ("Count ", Debug) Store (Arg2, Debug) Store ("Status ", Debug) Store (CDW1, Debug) Store ("Support ", Debug) Store (CDW2, Debug) Store ("Control ", Debug) Store (CDW3, Debug) Store (CDW2, SUPP) Store (CDW3, CTRL) If (LNotEqual (And (SUPP, 0x16), 0x16)) { And (CTRL, 0x1F, CTRL) } If (Not (And (CDW1, 0x01))) { If (And (CTRL, 0x01)) { Store ("Turn off PCIE hotplug BIOS support", Debug) } If (And (CTRL, 0x04)) { Store ("Turn off PME BIOS support", Debug) } } If (LNotEqual (Arg1, One)) { Or (CDW1, 0x08, CDW1) } If (LNotEqual (CDW3, CTRL)) { Or (CDW1, 0x10, CDW1) } Store (CTRL, CDW3) } Else { Or (CDW1, 0x04, CDW1) } And (CDW1, 0x1F, CDW1) Store ("Return Status ", Debug) Store (CDW1, Debug) Store ("Return Support ", Debug) Store (CDW2, Debug) Store ("Return Control ", Debug) Store (CDW3, Debug) Return (Arg3) } } Device (HPET) { Name (_HID, EisaId ("PNP0103")) // _HID: Hardware ID Name (_UID, 0x00) // _UID: Unique ID OperationRegion (HPOR, SystemMemory, 0xFED00000, 0x04) Field (HPOR, DWordAcc, NoLock, Preserve) { HPVI, 32 } Method (_STA, 0, NotSerialized) // _STA: Status { If (LEqual (HPVI, 0xFFFFFFFF)) { Return (0x00) } Else { Return (0x0B) } } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Name (HPRS, ResourceTemplate () { DWordMemory (ResourceConsumer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0xFED00000, // Range Minimum 0xFED003FF, // Range Maximum 0x00000000, // Translation Offset 0x00000400, // Length ,, _Y31, AddressRangeMemory, TypeStatic) }) Store ("HPET _CRS", Debug) CreateDWordField (HPRS, \_SB.HPET._CRS._Y31._MAX, HMAX) // _MAX: Maximum Base Address Add (0xFED00000, 0x0400, HMAX) Decrement (HMAX) Store (HPRS, Debug) Return (HPRS) } } Device (SRIO) { Name (_HID, "PNP0C14") // _HID: Hardware ID Name (_UID, "SRIO") // _UID: Unique ID Name (_WDG, Buffer (0x14) { /* 0000 */ 0xF2, 0xF9, 0x7A, 0x0E, 0xA1, 0x44, 0x6F, 0x4C, /* 0008 */ 0xA4, 0xB0, 0xA7, 0x67, 0x84, 0x80, 0xDA, 0x61, /* 0010 */ 0x41, 0x41, 0x01, 0x02 }) Method (_STA, 0, NotSerialized) // _STA: Status { Return (0x0F) } Method (WMAA, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg1, Debug) Store (Arg2, Debug) Store (Arg2, Local0) CreateWordField (Local0, 0x00, CPW0) CreateByteField (Local0, 0x02, CPB2) CreateByteField (Local0, 0x03, CPB3) CreateByteField (Local0, 0x04, CPB4) Store (CPB2, \_SB.P0B1.SPAD.S19B) Store (CPB3, Local1) ShiftLeft (Local1, 0x03, Local1) Or (Local1, CPB4, \_SB.P0B1.SPAD.S19D) If (LEqual (Arg1, 0x01)) { Store ("MethodID = 1", Debug) Store (0x01, \_SB.P0B1.SPAD.S19I) SMI2 (0x40) } If (LEqual (Arg1, 0x02)) { Store ("MethodID = 2", Debug) Store (0x02, \_SB.P0B1.SPAD.S19I) SMI2 (0x40) } If (LEqual (Arg1, 0x03)) { Store ("MethodID = 3", Debug) Store (0x03, \_SB.P0B1.SPAD.S19I) SMI2 (0x40) } Return (\_SB.P0B1.SPAD.S19I) } } Field (\_SB.PCI0.ISA.LPCC, ByteAcc, NoLock, Preserve) { Offset (0x60), PRQ0, 8, PRQ1, 8, PRQ2, 8, PRQ3, 8, Offset (0x68), PRQ4, 8, PRQ5, 8, PRQ6, 8, PRQ7, 8 } Device (LK00) { Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID Name (_UID, 0x01) // _UID: Unique ID Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,11,14,15} }) Method (_STA, 0, NotSerialized) // _STA: Status { Return (MSTA (PRQ0)) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (MDIS (PRQ0), PRQ0) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (MCRS (PRQ0)) } Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings { Store (MSRS (Arg0), PRQ0) } } Device (LK01) { Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID Name (_UID, 0x02) // _UID: Unique ID Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,11,14,15} }) Method (_STA, 0, NotSerialized) // _STA: Status { Return (MSTA (PRQ1)) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (MDIS (PRQ1), PRQ1) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (MCRS (PRQ1)) } Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings { Store (MSRS (Arg0), PRQ1) } } Device (LK02) { Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID Name (_UID, 0x03) // _UID: Unique ID Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,11,14,15} }) Method (_STA, 0, NotSerialized) // _STA: Status { Return (MSTA (PRQ2)) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (MDIS (PRQ2), PRQ2) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (MCRS (PRQ2)) } Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings { Store (MSRS (Arg0), PRQ2) } } Device (LK03) { Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID Name (_UID, 0x04) // _UID: Unique ID Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,11,14,15} }) Method (_STA, 0, NotSerialized) // _STA: Status { Return (MSTA (PRQ3)) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (MDIS (PRQ3), PRQ3) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (MCRS (PRQ3)) } Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings { Store (MSRS (Arg0), PRQ3) } } Device (LK04) { Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID Name (_UID, 0x05) // _UID: Unique ID Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,11,14,15} }) Method (_STA, 0, NotSerialized) // _STA: Status { Return (MSTA (PRQ4)) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (MDIS (PRQ4), PRQ4) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (MCRS (PRQ4)) } Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings { Store (MSRS (Arg0), PRQ4) } } Device (LK05) { Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID Name (_UID, 0x06) // _UID: Unique ID Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,11,14,15} }) Method (_STA, 0, NotSerialized) // _STA: Status { Return (MSTA (PRQ5)) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (MDIS (PRQ5), PRQ5) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (MCRS (PRQ5)) } Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings { Store (MSRS (Arg0), PRQ5) } } Device (LK06) { Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID Name (_UID, 0x07) // _UID: Unique ID Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,11,14,15} }) Method (_STA, 0, NotSerialized) // _STA: Status { Return (MSTA (PRQ6)) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (MDIS (PRQ6), PRQ6) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (MCRS (PRQ6)) } Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings { Store (MSRS (Arg0), PRQ6) } } Device (LK07) { Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID Name (_UID, 0x08) // _UID: Unique ID Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,11,14,15} }) Method (_STA, 0, NotSerialized) // _STA: Status { Return (MSTA (PRQ7)) } Method (_DIS, 0, NotSerialized) // _DIS: Disable Device { Store (MDIS (PRQ7), PRQ7) } Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings { Return (MCRS (PRQ7)) } Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings { Store (MSRS (Arg0), PRQ7) } } Method (MSTA, 1, NotSerialized) { Store (0x0B, Local0) If (And (0x80, Arg0)) { Store (0x09, Local0) } Return (Local0) } Method (MDIS, 1, NotSerialized) { Or (Arg0, 0x80, Local0) Return (Local0) } Method (MCRS, 1, NotSerialized) { Name (CRSB, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, _Y32) {} }) CreateWordField (CRSB, \_SB.MCRS._Y32._INT, IQR) // _INT: Interrupts Store (Arg0, Local0) If (LGreaterEqual (Local0, 0x80)) { Store (Zero, IQR) } Else { ShiftLeft (One, Local0, IQR) } Return (CRSB) } Method (MSRS, 1, NotSerialized) { CreateWordField (Arg0, 0x01, IQR) FindSetRightBit (IQR, Local0) Decrement (Local0) Return (Local0) } Field (\_SB.PCI0.ISA.LPCC, ByteAcc, NoLock, Preserve) { Offset (0x80), NSCA, 3, , 1, NSCB, 3, Offset (0x81) } Name (SBCM, ResourceTemplate () { StartDependentFnNoPri () { IO (Decode16, 0x03F8, // Range Minimum 0x03F8, // Range Maximum 0x08, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,6,7,12} } StartDependentFnNoPri () { IO (Decode16, 0x02F8, // Range Minimum 0x02F8, // Range Maximum 0x08, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,6,7,12} } EndDependentFn () }) Method (COMD, 2, NotSerialized) { If (LNot (Arg1)) { If (LEqual (Arg0, 0x03F8)) { Store (0x00, NSCA) } If (LEqual (Arg0, 0x02F8)) { Store (0x01, NSCA) } If (LEqual (Arg0, 0x0220)) { Store (0x02, NSCA) } If (LEqual (Arg0, 0x0228)) { Store (0x03, NSCA) } If (LEqual (Arg0, 0x0238)) { Store (0x04, NSCA) } If (LEqual (Arg0, 0x02E8)) { Store (0x05, NSCA) } If (LEqual (Arg0, 0x0338)) { Store (0x06, NSCA) } If (LEqual (Arg0, 0x03E8)) { Store (0x07, NSCA) } } Else { If (LEqual (Arg0, 0x03F8)) { Store (0x00, NSCB) } If (LEqual (Arg0, 0x02F8)) { Store (0x01, NSCB) } If (LEqual (Arg0, 0x0220)) { Store (0x02, NSCB) } If (LEqual (Arg0, 0x0228)) { Store (0x03, NSCB) } If (LEqual (Arg0, 0x0238)) { Store (0x04, NSCB) } If (LEqual (Arg0, 0x02E8)) { Store (0x05, NSCB) } If (LEqual (Arg0, 0x0338)) { Store (0x06, NSCB) } If (LEqual (Arg0, 0x03E8)) { Store (0x07, NSCB) } } } } Scope (\_GPE) { OperationRegion (TCOS, SystemIO, 0x0864, 0x02) Field (TCOS, ByteAcc, NoLock, WriteAsZeros) { Offset (0x01), , 1, DSCI, 1 } Method (_L24, 0, Serialized) // _Lxx: Level-Triggered GPE { \_SB.PCI0.HEC2.HSCI () } Method (_L06, 0, Serialized) // _Lxx: Level-Triggered GPE { } Method (_L0B, 0, NotSerialized) // _Lxx: Level-Triggered GPE { Store ("_GPE.L0B ", Debug) Store (0x01, Local0) } Method (_L16, 0, NotSerialized) // _Lxx: Level-Triggered GPE { Store ("GPE 16 occured", Debug) If (And (\_SB.P0B1.SPAD.SR04, 0x0400)) { And (\_SB.P0B1.SPAD.SR04, Not (0x0400), \_SB.P0B1.SPAD.SR04) Store ("Notify CPC event", Debug) Notify (\_PR.CPU1, 0x83) Notify (\_PR.CPU2, 0x83) Notify (\_PR.CPU3, 0x83) Notify (\_PR.CPU4, 0x83) Notify (\_PR.CPU5, 0x83) Notify (\_PR.CPU6, 0x83) Notify (\_PR.CPU7, 0x83) Notify (\_PR.CPU8, 0x83) Notify (\_PR.CPU9, 0x83) Notify (\_PR.CPUA, 0x83) Notify (\_PR.CPUB, 0x83) Notify (\_PR.CPUC, 0x83) Notify (\_PR.CPUD, 0x83) Notify (\_PR.CPUE, 0x83) Notify (\_PR.CPUF, 0x83) Notify (\_PR.CPUG, 0x83) Notify (\_PR.CP17, 0x83) Notify (\_PR.CP18, 0x83) Notify (\_PR.CP19, 0x83) Notify (\_PR.CP20, 0x83) Notify (\_PR.CP21, 0x83) Notify (\_PR.CP22, 0x83) Notify (\_PR.CP23, 0x83) Notify (\_PR.CP24, 0x83) Notify (\_PR.CP25, 0x83) Notify (\_PR.CP26, 0x83) Notify (\_PR.CP27, 0x83) Notify (\_PR.CP28, 0x83) Notify (\_PR.CP29, 0x83) Notify (\_PR.CP30, 0x83) Notify (\_PR.CP31, 0x83) Notify (\_PR.CP32, 0x83) } If (And (\_SB.P0B1.SPAD.SR04, 0x20000000)) { And (\_SB.P0B1.SPAD.SR04, Not (0x20000000), \_SB.P0B1.SPAD.SR04) If (And (\_SB.WSUP, 0x01)) { Store ("Notify WHEA event", Debug) Notify (\_SB.WHEA, 0x80) } } If (And (\_SB.P0B1.SPAD.SR04, 0x10000000)) { Store ("_GPE Page Retire Request", Debug) And (\_SB.P0B1.SPAD.SR04, Not (0x10000000), \_SB.P0B1.SPAD.SR04) If (And (\_SB.WCAP, 0x40000000)) { Store ("Notify Page Retire Request", Debug) Notify (\_SB.WHEA, 0x81) } } If (And (\_SB.P0B1.SPAD.SR04, 0x80000000)) { Store ("_GPE PMI Power Cap Change", Debug) And (\_SB.P0B1.SPAD.SR04, Not (0x80000000), \_SB.P0B1.SPAD.SR04) Notify (\_SB.PMI0, 0x82) } Return (Zero) } } Name (\_PR.MAXT, 0x00000018) Scope (\_PR.CPU1) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST0) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000000, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST0) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000000, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPU2) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST1) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000020, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST1) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000001, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPU3) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST0) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000002, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST0) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000002, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPU4) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST1) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000022, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST1) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000003, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPU5) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST0) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000004, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST0) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000004, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPU6) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST1) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000024, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST1) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000005, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPU7) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST0) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000006, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST0) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000006, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPU8) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST1) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000026, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST1) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000007, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPU9) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST0) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000008, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST0) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000008, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPUA) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST1) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000028, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST1) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000009, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPUB) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST0) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x0000000A, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST0) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x0000000A, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPUC) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST1) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x0000002A, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST1) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x0000000B, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPUD) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST0) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000001, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST0) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x0000000C, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPUE) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST1) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000021, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST1) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x0000000D, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPUF) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST0) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000003, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST0) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x0000000E, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CPUG) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST1) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000023, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST1) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x0000000F, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CP17) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST0) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000005, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST0) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000010, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CP18) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST1) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000025, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST1) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000011, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CP19) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST0) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000007, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST0) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000012, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CP20) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST1) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000027, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST1) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000013, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CP21) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST0) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000009, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST0) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000014, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CP22) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST1) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000029, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST1) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000015, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CP23) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST0) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x0000000B, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST0) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000016, 0x000000FD, 0x00000001 } }) } Return (Zero) } } Scope (\_PR.CP24) { Name (TYPE, 0x00000000) Name (PSEN, 0x00000001) Name (CSEN, 0x00000001) Name (MWOS, 0x00000001) Name (TSEN, 0x00000001) Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities { CreateDWordField (Arg0, 0x08, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg0, 0x00, REVS) CreateDWordField (Arg0, 0x04, SIZE) Store (SizeOf (Arg0), Local0) Store (Subtract (Local0, 0x08), Local1) CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP) Name (STS0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Concatenate (STS0, TEMP, Local2) _OSC (Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }, REVS, SIZE, Local2) } Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities { CreateDWordField (Arg3, 0x04, CAPA) Store (CAPA, TYPE) CreateDWordField (Arg3, 0x00, STS0) CreateDWordField (Arg3, 0x04, CAP0) CreateDWordField (Arg0, 0x00, IID0) CreateDWordField (Arg0, 0x04, IID1) CreateDWordField (Arg0, 0x08, IID2) CreateDWordField (Arg0, 0x0C, IID3) Name (UID0, Buffer (0x10) { /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53 }) CreateDWordField (Arg0, 0x00, EID0) CreateDWordField (Arg0, 0x04, EID1) CreateDWordField (Arg0, 0x08, EID2) CreateDWordField (Arg0, 0x0C, EID3) If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)), LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3))))) { Store (0x06, Index (STS0, 0x00)) Return (Arg3) } If (LNotEqual (Arg1, 0x01)) { Store (0x0A, Index (STS0, 0x00)) Return (Arg3) } If (And (STS0, 0x01)) { And (CAP0, 0x0BFF, CAP0) Return (Arg3) } And (CAP0, 0x0BFF, CAP0) Store (CAP0, TYPE) Return (Arg3) } Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States { If (PSEN) { Return (Package (0x0D) { Package (0x06) { 0x000008FD, 0x00017318, 0x0000000A, 0x0000000A, 0x00001C00, 0x00001C00 }, Package (0x06) { 0x000008FC, 0x00017318, 0x0000000A, 0x0000000A, 0x00001700, 0x00001700 }, Package (0x06) { 0x00000898, 0x00015BA8, 0x0000000A, 0x0000000A, 0x00001600, 0x00001600 }, Package (0x06) { 0x00000834, 0x00014820, 0x0000000A, 0x0000000A, 0x00001500, 0x00001500 }, Package (0x06) { 0x000007D0, 0x00013498, 0x0000000A, 0x0000000A, 0x00001400, 0x00001400 }, Package (0x06) { 0x0000076C, 0x00012110, 0x0000000A, 0x0000000A, 0x00001300, 0x00001300 }, Package (0x06) { 0x00000708, 0x00011170, 0x0000000A, 0x0000000A, 0x00001200, 0x00001200 }, Package (0x06) { 0x000006A4, 0x0000FDE8, 0x0000000A, 0x0000000A, 0x00001100, 0x00001100 }, Package (0x06) { 0x00000640, 0x0000EA60, 0x0000000A, 0x0000000A, 0x00001000, 0x00001000 }, Package (0x06) { 0x000005DC, 0x0000DAC0, 0x0000000A, 0x0000000A, 0x00000F00, 0x00000F00 }, Package (0x06) { 0x00000578, 0x0000CB20, 0x0000000A, 0x0000000A, 0x00000E00, 0x00000E00 }, Package (0x06) { 0x00000514, 0x0000B798, 0x0000000A, 0x0000000A, 0x00000D00, 0x00000D00 }, Package (0x06) { 0x000004B0, 0x0000A7F8, 0x0000000A, 0x0000000A, 0x00000C00, 0x00000C00 } }) } Return (Zero) } Method (_PCT, 0, NotSerialized) // _PCT: Performance Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, // Bit Width 0x00, // Bit Offset 0x0000000000000199, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x10, // Bit Width 0x00, // Bit Offset 0x0000000000000198, // Address ,) } }) } Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilites { Return (PST1) } Method (_PSD, 0, NotSerialized) // _PSD: Power State Dependencies { If (And (TYPE, 0x00000820)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x0000002B, 0x000000FE, 0x00000001 } }) } Return (Zero) } Method (_CST, 0, NotSerialized) // _CST: C-States { If (CSEN) { If (LAnd (MWOS, And (TYPE, 0x0200))) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address 0x01, // Access Size ) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000020, // Address 0x03, // Access Size ) }, 0x02, 0x0029, 0x0000015E } }) } Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, 0x01, 0x0001, 0x000003E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x0000000000000815, // Address ,) }, 0x02, 0x0029, 0x0000015E } }) } Return (Zero) } Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities { Return (TST1) } Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) }, ResourceTemplate () { Register (FFixedHW, 0x05, // Bit Width 0x00, // Bit Offset 0x000000000000019A, // Address ,) } }) } Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States { If (LAnd (TSEN, And (TYPE, 0x0004))) { Return (Package (0x0F) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 }, Package (0x05) { 0x0000005E, 0x00015A5A, 0x00000000, 0x0000001F, 0x00000000 }, Package (0x05) { 0x00000058, 0x0001419D, 0x00000000, 0x0000001E, 0x00000000 }, Package (0x05) { 0x00000051, 0x000128E0, 0x00000000, 0x0000001D, 0x00000000 }, Package (0x05) { 0x0000004B, 0x00011022, 0x00000000, 0x0000001C, 0x00000000 }, Package (0x05) { 0x00000045, 0x0000F765, 0x00000000, 0x0000001B, 0x00000000 }, Package (0x05) { 0x0000003F, 0x0000DEA8, 0x00000000, 0x0000001A, 0x00000000 }, Package (0x05) { 0x00000038, 0x0000C5EA, 0x00000000, 0x00000019, 0x00000000 }, Package (0x05) { 0x00000032, 0x0000AD2D, 0x00000000, 0x00000018, 0x00000000 }, Package (0x05) { 0x0000002C, 0x00009470, 0x00000000, 0x00000017, 0x00000000 }, Package (0x05) { 0x00000026, 0x00007BB2, 0x00000000, 0x00000016, 0x00000000 }, Package (0x05) { 0x0000001F, 0x000062F5, 0x00000000, 0x00000015, 0x00000000 }, Package (0x05) { 0x00000019, 0x00004A38, 0x00000000, 0x00000014, 0x00000000 }, Package (0x05) { 0x00000013, 0x0000317A, 0x00000000, 0x00000013, 0x00000000 }, Package (0x05) { 0x0000000D, 0x000018BD, 0x00000000, 0x00000012, 0x00000000 } }) } Return (Package (0x01) { Package (0x05) { 0x00000064, 0x00017318, 0x00000000, 0x00000000, 0x00000000 } }) } Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies { If (And (TYPE, 0x00000080)) { Return (Package (0x01) { Package (0x05) { 0x05, 0x00, 0x00000017, 0x000000FD, 0x00000001 } }) } Return (Zero) } } }