/* * Intel ACPI Component Architecture * AML Disassembler version 20090123 * * Disassembly of dsdt.bin, Wed Mar 6 22:37:27 2013 * * * Original Table Header: * Signature "DSDT" * Length 0x00003B44 (15172) * Revision 0x01 **** ACPI 1.0, no 64-bit math support * Checksum 0x27 * OEM ID "DELL " * OEM Table ID "PE_SC3 " * OEM Revision 0x00000001 (1) * Compiler ID "INTL" * Compiler Version 0x20050624 (537200164) */ DefinitionBlock ("dsdt.aml", "DSDT", 1, "DELL ", "PE_SC3 ", 0x00000001) { External (\_PR_.CPU1._PSS) Method (DBIN, 0, NotSerialized) { Noop } Scope (\_PR) { Name (PSLL, 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) {} } Name (\_S0, Package (0x04) { 0x00, 0x00, 0x00, 0x00 }) Name (\_S4, Package (0x04) { 0x07, 0x00, 0x00, 0x00 }) Name (\_S5, Package (0x04) { 0x07, 0x00, 0x00, 0x00 }) Method (\_PTS, 1, NotSerialized) { Store ("_PTS", Debug) Store (Arg0, Debug) Sleep (0x0F) } Method (\_WAK, 1, NotSerialized) { Store ("_WAK", Debug) Store (Arg0, Debug) Return (Zero) } Scope (\_SI) { Method (_SST, 1, NotSerialized) { Store ("_SST", Debug) Store (Arg0, Debug) Sleep (0x0F) } } Scope (\) { Name (PICF, 0x00) Name (SWZL, 0x00) Method (_PIC, 1, NotSerialized) { Store ("_PIC", Debug) Store (Arg0, Debug) Store (Arg0, PICF) } } Scope (\_SB) { Name (WCAP, 0x00) Method (_OSC, 4, NotSerialized) { If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0x6E, 0xB0, 0x11, 0x08, 0x27, 0x4A, 0xF9, 0x44, /* 0008 */ 0x8D, 0x60, 0x3C, 0xBB, 0xC2, 0x2E, 0x7B, 0x48 })) { Store ("Platform _OSC", 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 (And (WCAP, 0x10, WCAP)) { Or (\_SB.WSUP, 0x01, \_SB.WSUP) Store ("Platform _OSC, APEI is implementend", Debug) } If (LNotEqual (Arg1, One)) { Or (CDW1, 0x08, CDW1) } If (LNotEqual (Arg2, 0x02)) { Or (CDW1, 0x02, CDW1) } 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) } } 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")) Name (_CID, EisaId ("PNP0C01")) Name (_UID, "WHEA") } } Scope (\_SB) { Device (PMI0) { Name (_HID, "ACPI000D") Name (_CID, EisaId ("PNP0C01")) Name (_UID, "PMI") Name (_STA, 0x0F) OperationRegion (IPMI, DataTable, 0x0658, 0x00010000) Field (IPMI, BufferAcc, Lock, Preserve) { AccessAs (BufferAcc, 0x01), SCMD, 8, GCMD, 8, Offset (0x2A5B), GPMM, 8 } Name (PVAL, 0x00) Name (PAVG, 0x07D0) Name (HLIM, 0x00) Name (PMIN, 0x00) Name (PMAX, 0x00) Method (_PMC, 0, NotSerialized) { Store ("PMI - _PMC", Debug) Name (RET0, Package (0x0E) {}) Store (0x05, 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 (SER, "") Name (OEM, "___DELL") Store (MDL, Index (RET0, 0x0B)) Store (SER, Index (RET0, 0x0C)) Store (OEM, Index (RET0, 0x0D)) _GHL () Store (PMIN, Index (RET0, 0x09)) Store (PMAX, Index (RET0, 0x0A)) Return (RET0) } Method (_PMD, 0, NotSerialized) { Name (RET0, Package (0x01) { \_SB }) Return (RET0) } Method (_PMM, 0, NotSerialized) { Store ("PMI - _PMM", Debug) If (LEqual (PAVG, 0x07D0)) { 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, Debug) Multiply (APWR, 0x03E8, PVAL) Return (PVAL) } Return (Ones) } Else { Name (BUF2, Buffer (0x42) {}) 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, 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) { Store ("PMI - _GAI", Debug) Store (PAVG, Debug) Return (PAVG) } Method (_GHL, 0, NotSerialized) { 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, Debug) Multiply (PCAP, 0x03E8, HLIM) Multiply (MAPW, 0x03E8, PMAX) Multiply (MIPW, 0x03E8, PMIN) Return (HLIM) } Return (Ones) } Method (_SHL, 1, NotSerialized) { Store ("PMI - _SHL", Debug) Return (0x00) } Method (_PTP, 2, NotSerialized) { Return (0x00) } Method (_PAI, 1, NotSerialized) { 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) { \_SB.INIC () \_SB.INIS () } } OperationRegion (CPGP, SystemIO, 0x0C4B, 0x01) Field (CPGP, ByteAcc, NoLock, Preserve) { PLTP, 3 } OperationRegion (GPI6, SystemIO, 0x0C50, 0x01) Field (GPI6, ByteAcc, NoLock, Preserve) { , 4, LRIS, 1, CRIS, 1 } 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) } } Device (PCI0) { Name (_HID, EisaId ("PNP0A08")) Name (_CID, EisaId ("PNP0A03")) Name (_ADR, 0x00) Name (_BBN, 0x00) Name (_PRW, Package (0x02) { 0x0B, 0x05 }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Name (P100, Package (0x1F) { 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) { 0x0005FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0006FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0007FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0008FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0009FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x000AFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x000DFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0016FFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x0016FFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0x0016FFFF, 0x02, LK02, 0x00 }, Package (0x04) { 0x0016FFFF, 0x03, LK03, 0x00 }, Package (0x04) { 0x001AFFFF, 0x00, LK01, 0x00 }, Package (0x04) { 0x001AFFFF, 0x01, LK02, 0x00 }, Package (0x04) { 0x001AFFFF, 0x02, LK03, 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, LK05, 0x00 }, Package (0x04) { 0x001DFFFF, 0x01, LK04, 0x00 }, Package (0x04) { 0x001DFFFF, 0x02, LK05, 0x00 }, Package (0x04) { 0x001DFFFF, 0x03, LK04, 0x00 }, Package (0x04) { 0x001FFFFF, 0x00, LK00, 0x00 }, Package (0x04) { 0x001FFFFF, 0x01, LK01, 0x00 }, Package (0x04) { 0x001FFFFF, 0x02, LK07, 0x00 }, Package (0x04) { 0x001FFFFF, 0x03, LK06, 0x00 } }) Store (P100, Local0) } Else { Name (A100, Package (0x1F) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0001FFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0002FFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0003FFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0004FFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0005FFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0006FFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0007FFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0008FFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0009FFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x000AFFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x000DFFFF, 0x00, 0x00, 0x35 }, Package (0x04) { 0x0016FFFF, 0x00, 0x00, 0x33 }, Package (0x04) { 0x0016FFFF, 0x01, 0x00, 0x34 }, Package (0x04) { 0x0016FFFF, 0x02, 0x00, 0x35 }, Package (0x04) { 0x0016FFFF, 0x03, 0x00, 0x36 }, Package (0x04) { 0x001AFFFF, 0x00, 0x00, 0x11 }, Package (0x04) { 0x001AFFFF, 0x01, 0x00, 0x12 }, Package (0x04) { 0x001AFFFF, 0x02, 0x00, 0x13 }, 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, 0x15 }, Package (0x04) { 0x001DFFFF, 0x01, 0x00, 0x14 }, Package (0x04) { 0x001DFFFF, 0x02, 0x00, 0x15 }, Package (0x04) { 0x001DFFFF, 0x03, 0x00, 0x14 }, Package (0x04) { 0x001FFFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x001FFFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0x001FFFFF, 0x02, 0x00, 0x17 }, Package (0x04) { 0x001FFFFF, 0x03, 0x00, 0x16 } }) Store (A100, Local0) } Return (Local0) } Device (PEX1) { Name (_ADR, 0x00010000) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Name (P104, 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 (P104, Local0) } Else { Name (A104, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x24 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x30 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x31 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x37 } }) Store (A104, Local0) } Return (Local0) } } Device (PEX3) { Name (_ADR, 0x00030000) Method (_PRT, 0, NotSerialized) { 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, 0x20 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x2A }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x2B }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x2C } }) Store (A108, Local0) } Return (Local0) } } Device (PEX7) { Name (_ADR, 0x00070000) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Name (P101, 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 (P101, Local0) } Else { Name (A101, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x26 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x2D }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x2F }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x2E } }) Store (A101, Local0) } Return (Local0) } } Device (PEX9) { Name (_ADR, 0x00090000) Method (_PRT, 0, NotSerialized) { 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, 0x32 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x37 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x31 } }) Store (A106, Local0) } Return (Local0) } } Device (PEXA) { Name (_ADR, 0x000A0000) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Name (P105, 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 (P105, Local0) } Else { Name (A105, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x29 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x27 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x36 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x35 } }) Store (A105, Local0) } Return (Local0) } } Device (SBEX) { Name (_ADR, 0x001C0000) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Name (P107, Package (0x00) {}) Store (P107, Local0) } Else { Name (A107, Package (0x00) {}) Store (A107, Local0) } Return (Local0) } } Device (COMP) { Name (_ADR, 0x001E0000) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Name (P10A, Package (0x01) { Package (0x04) { 0x0003FFFF, 0x00, LK03, 0x00 } }) Store (P10A, Local0) } Else { Name (A10A, Package (0x01) { Package (0x04) { 0x0003FFFF, 0x00, 0x00, 0x13 } }) Store (A10A, Local0) } Return (Local0) } } Device (IOBA) { Name (_ADR, 0x00140001) Name (_STA, 0x0F) OperationRegion (SCRA, PCI_Config, 0x98, 0x20) Field (SCRA, ByteAcc, NoLock, Preserve) { SR07, 16, SR7H, 16, Offset (0x14), SR12, 8, S12H, 8, S12I, 8 } } Device (ISA) { Name (_ADR, 0x001F0000) OperationRegion (LPCC, PCI_Config, 0x00, 0x0100) Device (DMA) { Name (_HID, EisaId ("PNP0200")) Method (_CRS, 0, NotSerialized) { 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")) Method (_CRS, 0, NotSerialized) { 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")) Method (_CRS, 0, NotSerialized) { 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")) Name (_UID, 0x02) Method (_CRS, 0, NotSerialized) { 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")) Method (_CRS, 0, NotSerialized) { 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")) Method (_CRS, 0, NotSerialized) { 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, 0x2E, 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 (0x55, INDX) Store (Arg0, LDN) Store ("LDN: ", Debug) Store (LDN, Debug) } Device (COMA) { Name (_HID, EisaId ("PNP0501")) Name (_UID, 0x01) Method (_STA, 0, NotSerialized) { Name (RET, Zero) Store ("COMA _STA ", Debug) Acquire (MTX, 0xFFFF) SIOD (0x04) If (ACTR) { Store (0x0F, RET) } Else { Store (0x0D, RET) } Store (0xAA, INDX) Release (MTX) Store (RET, Debug) Return (RET) } Method (_DIS, 0, NotSerialized) { Store ("COMA _DIS ", Debug) Acquire (MTX, 0xFFFF) SIOD (0x04) Store (Zero, INTR) Store (Zero, ACTR) Store (0xAA, INDX) Release (MTX) } Method (_CRS, 0, NotSerialized) { 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) CreateByteField (CMA0, 0x03, IOH0) CreateByteField (CMA0, \_SB.PCI0.ISA.COMA._CRS._Y00._MAX, IOL1) CreateByteField (CMA0, 0x05, IOH1) CreateWordField (CMA0, \_SB.PCI0.ISA.COMA._CRS._Y01._INT, IQR) Acquire (MTX, 0xFFFF) SIOD (0x04) 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) Store (0xAA, INDX) Release (MTX) Return (CMA0) } Method (_PRS, 0, NotSerialized) { 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) { Store ("COMA _SRS", Debug) CreateWordField (Arg0, 0x02, IOAD) CreateByteField (Arg0, 0x02, IOLO) CreateByteField (Arg0, 0x03, IOHI) CreateWordField (Arg0, 0x09, IQR) Acquire (MTX, 0xFFFF) SIOD (0x04) 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) Store (0xAA, INDX) Release (MTX) } } Device (COMB) { Name (_HID, EisaId ("PNP0501")) Name (_UID, 0x02) Method (_STA, 0, NotSerialized) { Name (RET, Zero) Store ("COMB _STA ", Debug) Acquire (MTX, 0xFFFF) SIOD (0x05) If (ACTR) { Store (0x0F, RET) } Else { Store (0x0D, RET) } Store (0xAA, INDX) Release (MTX) Store (RET, Debug) Return (RET) } Method (_DIS, 0, NotSerialized) { Store ("COMB _DIS ", Debug) Acquire (MTX, 0xFFFF) SIOD (0x05) Store (Zero, INTR) Store (Zero, ACTR) Store (0xAA, INDX) Release (MTX) } Method (_CRS, 0, NotSerialized) { 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) CreateByteField (CMB0, 0x03, IOH0) CreateByteField (CMB0, \_SB.PCI0.ISA.COMB._CRS._Y02._MAX, IOL1) CreateByteField (CMB0, 0x05, IOH1) CreateWordField (CMB0, \_SB.PCI0.ISA.COMB._CRS._Y03._INT, IQR) Acquire (MTX, 0xFFFF) SIOD (0x05) 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) Store (0xAA, INDX) Release (MTX) Return (CMB0) } Method (_PRS, 0, NotSerialized) { 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) { Store ("COMB _SRS ", Debug) CreateWordField (Arg0, 0x02, IOAD) CreateByteField (Arg0, 0x02, IOLO) CreateByteField (Arg0, 0x03, IOHI) CreateWordField (Arg0, 0x09, IQR) Acquire (MTX, 0xFFFF) SIOD (0x05) 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) Store (0xAA, INDX) Release (MTX) } } Device (KBD) { Name (_HID, EisaId ("PNP0303")) Method (_STA, 0, NotSerialized) { Name (RET, Zero) Store ("KYBD _STA ", Debug) Store (0x00, RET) If (GCKB ()) { Store (0x0F, RET) } Store (RET, Debug) Return (RET) } Method (_CRS, 0, NotSerialized) { Name (KBDB, ResourceTemplate () { IO (Decode16, 0x0060, // Range Minimum 0x0060, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0064, // Range Minimum 0x0064, // Range Maximum 0x01, // Alignment 0x01, // Length ) IRQNoFlags () {1} }) Store ("KBD _CRS", Debug) Return (KBDB) } } Device (MOU) { Name (_HID, EisaId ("PNP0F13")) Method (_STA, 0, NotSerialized) { Name (RET, Zero) Store ("MOU _STA ", Debug) Store (0x00, RET) If (GCMS ()) { Store (0x0F, RET) } Store (RET, Debug) Return (RET) } Method (_CRS, 0, NotSerialized) { Name (MOUB, ResourceTemplate () { IRQNoFlags () {12} }) Name (MOKB, ResourceTemplate () { IO (Decode16, 0x0060, // Range Minimum 0x0060, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0064, // Range Minimum 0x0064, // Range Maximum 0x01, // Alignment 0x01, // Length ) IRQNoFlags () {12} }) Store ("MOU _CRS", Debug) If (GCKB ()) { Return (MOUB) } Else { Return (MOKB) } } } Device (MBIO) { Name (_HID, EisaId ("PNP0C01")) Name (_UID, 0x00) Method (_CRS, 0, NotSerialized) { 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, 0x0C00, // Range Minimum 0x0C00, // Range Maximum 0x01, // Alignment 0x80, // 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, 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) CreateByteField (SBDB, \_SB.PCI0.ISA.MBIO._CRS._Y05._LEN, KBL2) If (LOr (GCKB (), GCMS ())) { Store (Zero, KBL1) Store (Zero, KBL2) } Return (SBDB) } } Device (NIPM) { Name (_HID, EisaId ("IPI0001")) Name (_CID, EisaId ("PNP0C01")) Name (_UID, 0x05) Method (_STA, 0, NotSerialized) { If (LEqual (TOOS, 0x01)) { Return (0x0F) } Else { If (LOr (LEqual (TOOS, 0x07), LEqual (TOOS, 0x08))) { Return (0x0F) } Else { Return (0x00) } } } Method (_CRS, 0, NotSerialized) { 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 () {} }) } 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) { Return (0x01) } Method (_SRV, 0, NotSerialized) { Return (0x0200) } } Device (MBI1) { Name (_HID, EisaId ("PNP0C01")) Name (_UID, 0x01) Method (_STA, 0, NotSerialized) { If (LOr (LEqual (TOOS, 0x08), LEqual (TOOS, 0x01))) { Return (0x00) } Else { If (LEqual (TOOS, 0x07)) { Return (0x00) } Else { Return (0x0F) } } } Method (_CRS, 0, NotSerialized) { 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")) Name (_UID, 0x00) Method (_STA, 0, NotSerialized) { If (LNot (And (0x04, UCMR (0x63)))) { If (And (0x30, UCMR (0x4E))) { Return (0x0F) } Else { Return (0x00) } } Else { Return (0x00) } } Method (_CRS, 0, NotSerialized) { If (LNot (And (0x04, UCMR (0x63)))) { If (And (0x30, UCMR (0x4E))) { Return (ResourceTemplate () { Memory32Fixed (ReadWrite, 0xFED40000, // Address Base 0x00005000, // Address Length ) }) } Else { Return (0x00) } } Else { Return (0x00) } } Method (_DSM, 4, NotSerialized) { 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 })) { Name (_T_0, Zero) 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 (CMRD (0x3A), Local0) And (Local0, 0xF0, Local0) Or (Local0, ToInteger (Arg3), Local0) CMWR (0x3A, Local0) Return (Zero) } Else { If (LEqual (_T_0, 0x03)) { Store (CMRD (0x3A), Local0) And (Local0, 0x0F, Local0) Name (_T_1, Zero) 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 }) } } } } } } } } } } } } } } } Return (Package (0x02) { 0x01, 0x00 }) } Else { If (LEqual (_T_0, 0x04)) { Return (0x02) } Else { If (LEqual (_T_0, 0x05)) { Store (CMRD (0x3A), Local0) ShiftRight (Local0, 0x04, Local0) Store (CMRD (0x3B), Local1) And (Local1, 0x7F, Local1) If (LEqual (Local1, 0x00)) { Name (_T_2, Zero) Store (ToInteger (Local0), _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 }) } } } } } } } } } } } } } } } Return (Package (0x03) { 0x01, 0x00, 0x00 }) } Else { Name (_T_3, Zero) Store (ToInteger (Local0), _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 }) } } } } } } } } } } } } } } } Return (Package (0x03) { 0x01, 0x00, 0x00 }) } } Else { If (LEqual (_T_0, 0x06)) { Name (_T_4, "") Store (ToString (Arg3, Ones), _T_4) If (LEqual (_T_4, "en")) { Return (Zero) } Else { Return (One) } } Else { Return (Buffer (0x01) { 0x00 }) } } } } } } } } If (LEqual (ToBuffer (Arg0), Buffer (0x10) { /* 0000 */ 0xED, 0x54, 0x60, 0x37, 0x13, 0xCC, 0x75, 0x46, /* 0008 */ 0x90, 0x1C, 0x47, 0x56, 0xD7, 0xF2, 0xD4, 0x5D })) { Name (_T_5, Zero) 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) } } } Return (Buffer (0x01) { 0x00 }) } } } Device (_TCM) { Name (_HID, EisaId ("ZIC0101")) Name (_UID, 0x00) Method (_STA, 0, NotSerialized) { If (And (0x04, UCMR (0x63))) { If (And (0x30, UCMR (0x4E))) { Return (0x0F) } Else { Return (0x00) } } Else { Return (0x00) } } Method (_CRS, 0, NotSerialized) { If (And (0x04, UCMR (0x63))) { If (And (0x30, UCMR (0x4E))) { Return (ResourceTemplate () { Memory32Fixed (ReadOnly, 0xFED40000, // Address Base 0x00005000, // Address Length ) }) } Else { Return (0x00) } } Else { Return (0x00) } } } } Device (MCHM) { Name (_ADR, 0x00140000) OperationRegion (MCH0, PCI_Config, 0x00, 0x0100) Field (MCH0, DWordAcc, NoLock, Preserve) { Offset (0xD0), TOLM, 32 } } Device (PEHB) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x00) Method (_CRS, 0, NotSerialized) { Name (HBRS, ResourceTemplate () { DWordMemory (ResourceConsumer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x10000000, // Length ,, _Y06, AddressRangeMemory, TypeStatic) }) CreateDWordField (HBRS, \_SB.PCI0.PEHB._CRS._Y06._MIN, HBAL) CreateDWordField (HBRS, \_SB.PCI0.PEHB._CRS._Y06._MAX, HBAU) Store (0xE0000000, HBAL) Store (0xE0000000, Local0) ShiftRight (Local0, 0x10, Local0) Add (0x10000000, HBAL, HBAU) Decrement (HBAU) Store ("PEHB _CRS", Debug) Store (HBRS, Debug) CreateDWordField (HBRS, \_SB.PCI0.PEHB._CRS._Y06._LEN, HBAS) If (LGreaterEqual (Local0, 0x00010000)) { Store (Zero, HBAS) Store (HBAL, HBAU) Decrement (HBAU) } Return (HBRS) } } OperationRegion (D80P, SystemIO, 0x80, 0x02) Field (D80P, ByteAcc, NoLock, Preserve) { D80S, 8 } Method (_CRS, 0, NotSerialized) { Name (HB0, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, // Granularity 0x0000, // Range Minimum 0x00FF, // Range Maximum 0x0000, // Translation Offset 0x0100, // Length ,, ) IO (Decode16, 0x0CF8, // Range Minimum 0x0CF8, // Range Maximum 0x01, // Alignment 0x08, // Length ) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0CF7, // Range Maximum 0x0000, // Translation Offset 0x0CF8, // Length ,, , TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, SubDecode, EntireRange, 0x0000, // Granularity 0x0D00, // Range Minimum 0xFFFF, // Range Maximum 0x0000, // Translation Offset 0xF300, // Length ,, , TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x000A0000, // Range Minimum 0x000BFFFF, // Range Maximum 0x00000000, // Translation Offset 0x00020000, // Length ,, , AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x10000000, // Range Minimum 0xFDFFFFFF, // Range Maximum 0x00000000, // Translation Offset 0xEEC00000, // Length ,, _Y07, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0xFED40000, // Range Minimum 0xFED44FFF, // Range Maximum 0x00000000, // Translation Offset 0x00005000, // Length ,, , AddressRangeMemory, TypeStatic) }) Store (0xF2, D80S) Store (0xF2, D80S) CreateDWordField (HB0, \_SB.PCI0._CRS._Y07._MIN, MEMM) CreateDWordField (HB0, \_SB.PCI0._CRS._Y07._LEN, MEML) Store (\_SB.PCI0.MCHM.TOLM, Local0) And (Local0, 0xFC000000, Local0) Or (Local0, 0x03FFFFFF, Local0) Increment (Local0) Store (Local0, MEMM) Subtract (0xFDFFFFFF, MEMM, MEML) Increment (MEML) Store ("HB0 _CRS.TOMR", Debug) KDBG (MEMM, 0xFDFFFFFF, MEML) Store (HB0, Debug) Return (HB0) } Name (SUPP, 0x00) Name (CTRL, 0x00) Method (_OSC, 4, NotSerialized) { 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, 0x1E, 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, 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) } Method (_DSM, 4, NotSerialized) { 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 (HPET) { Name (_HID, EisaId ("PNP0103")) Name (_UID, 0x00) OperationRegion (HPOR, SystemMemory, 0xFED00000, 0x04) Field (HPOR, DWordAcc, NoLock, Preserve) { HPVI, 32 } Method (_STA, 0, NotSerialized) { If (LEqual (HPVI, 0xFFFFFFFF)) { Return (0x00) } Else { Return (0x0B) } } Method (_CRS, 0, NotSerialized) { Name (HPRS, ResourceTemplate () { DWordMemory (ResourceConsumer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0xFED00000, // Range Minimum 0xFED003FF, // Range Maximum 0x00000000, // Translation Offset 0x00000400, // Length ,, _Y08, AddressRangeMemory, TypeStatic) }) Store ("HPET _CRS", Debug) CreateDWordField (HPRS, \_SB.HPET._CRS._Y08._MAX, HMAX) Add (0xFED00000, 0x0400, HMAX) Decrement (HMAX) Store (HPRS, Debug) Return (HPRS) } } Device (VTD) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, "VTd") Method (_CRS, 0, NotSerialized) { Return (ResourceTemplate () { Memory32Fixed (ReadWrite, 0xFED90000, // Address Base 0x00002000, // Address Length ) }) } } Device (SRIO) { Name (_HID, "PNP0C14") Name (_UID, "SRIO") 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) { Return (0x0F) } Method (WMAA, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg1, Debug) Store (Arg2, Debug) Return (0x00) } } 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")) Name (_UID, 0x01) Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,10,11,14,15} }) Method (_STA, 0, NotSerialized) { Return (MSTA (PRQ0)) } Method (_DIS, 0, NotSerialized) { Store (MDIS (PRQ0), PRQ0) } Method (_CRS, 0, NotSerialized) { Return (MCRS (PRQ0)) } Method (_SRS, 1, NotSerialized) { Store (MSRS (Arg0), PRQ0) } } Device (LK01) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x02) Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,10,11,14,15} }) Method (_STA, 0, NotSerialized) { Return (MSTA (PRQ1)) } Method (_DIS, 0, NotSerialized) { Store (MDIS (PRQ1), PRQ1) } Method (_CRS, 0, NotSerialized) { Return (MCRS (PRQ1)) } Method (_SRS, 1, NotSerialized) { Store (MSRS (Arg0), PRQ1) } } Device (LK02) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x03) Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,10,11,14,15} }) Method (_STA, 0, NotSerialized) { Return (MSTA (PRQ2)) } Method (_DIS, 0, NotSerialized) { Store (MDIS (PRQ2), PRQ2) } Method (_CRS, 0, NotSerialized) { Return (MCRS (PRQ2)) } Method (_SRS, 1, NotSerialized) { Store (MSRS (Arg0), PRQ2) } } Device (LK03) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x04) Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,10,11,14,15} }) Method (_STA, 0, NotSerialized) { Return (MSTA (PRQ3)) } Method (_DIS, 0, NotSerialized) { Store (MDIS (PRQ3), PRQ3) } Method (_CRS, 0, NotSerialized) { Return (MCRS (PRQ3)) } Method (_SRS, 1, NotSerialized) { Store (MSRS (Arg0), PRQ3) } } Device (LK04) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x05) Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,10,11,14,15} }) Method (_STA, 0, NotSerialized) { Return (MSTA (PRQ4)) } Method (_DIS, 0, NotSerialized) { Store (MDIS (PRQ4), PRQ4) } Method (_CRS, 0, NotSerialized) { Return (MCRS (PRQ4)) } Method (_SRS, 1, NotSerialized) { Store (MSRS (Arg0), PRQ4) } } Device (LK05) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x06) Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,10,11,14,15} }) Method (_STA, 0, NotSerialized) { Return (MSTA (PRQ5)) } Method (_DIS, 0, NotSerialized) { Store (MDIS (PRQ5), PRQ5) } Method (_CRS, 0, NotSerialized) { Return (MCRS (PRQ5)) } Method (_SRS, 1, NotSerialized) { Store (MSRS (Arg0), PRQ5) } } Device (LK06) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x07) Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,10,11,14,15} }) Method (_STA, 0, NotSerialized) { Return (MSTA (PRQ6)) } Method (_DIS, 0, NotSerialized) { Store (MDIS (PRQ6), PRQ6) } Method (_CRS, 0, NotSerialized) { Return (MCRS (PRQ6)) } Method (_SRS, 1, NotSerialized) { Store (MSRS (Arg0), PRQ6) } } Device (LK07) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x08) Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,10,11,14,15} }) Method (_STA, 0, NotSerialized) { Return (MSTA (PRQ7)) } Method (_DIS, 0, NotSerialized) { Store (MDIS (PRQ7), PRQ7) } Method (_CRS, 0, NotSerialized) { Return (MCRS (PRQ7)) } Method (_SRS, 1, NotSerialized) { 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, _Y09) {} }) CreateWordField (CRSB, \_SB.MCRS._Y09._INT, IQR) 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), LPTO, 2, , 2, FDDC, 1 } 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} } StartDependentFnNoPri () { IO (Decode16, 0x0220, // Range Minimum 0x0220, // Range Maximum 0x08, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,6,7,12} } StartDependentFnNoPri () { IO (Decode16, 0x0228, // Range Minimum 0x0228, // Range Maximum 0x08, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,6,7,12} } StartDependentFnNoPri () { IO (Decode16, 0x0238, // Range Minimum 0x0238, // Range Maximum 0x08, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,6,7,12} } StartDependentFnNoPri () { IO (Decode16, 0x02E8, // Range Minimum 0x02E8, // Range Maximum 0x08, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,6,7,12} } StartDependentFnNoPri () { IO (Decode16, 0x0338, // Range Minimum 0x0338, // Range Maximum 0x08, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,6,7,12} } StartDependentFnNoPri () { IO (Decode16, 0x03E8, // Range Minimum 0x03E8, // 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) } } } Method (LPTD, 1, NotSerialized) { If (LEqual (Arg0, 0x0378)) { Store (0x00, LPTO) } If (LEqual (Arg0, 0x0278)) { Store (0x01, LPTO) } If (LEqual (Arg0, 0x03BC)) { Store (0x02, LPTO) } } Method (FDCD, 1, NotSerialized) { If (LEqual (Arg0, 0x03F0)) { Store (0x00, FDDC) } If (LEqual (Arg0, 0x0370)) { Store (0x01, FDDC) } } } Scope (\_GPE) { Method (_L0B, 0, NotSerialized) { Store ("_GPE.L0B ", Debug) Store (0x01, Local0) } Method (_L17, 0, NotSerialized) { Store ("GPE 17 occured", Debug) Name (EFLG, 0x00) Store (0x00, EFLG) If (And (\_SB.PCI0.IOBA.SR07, 0x8000)) { Store ("_GPE Power Capping Event", Debug) Store (0x01, EFLG) Name (PSL1, 0x00) And (\_SB.PCI0.IOBA.SR07, 0x7FFF, \_SB.PCI0.IOBA.SR07) Store (\_SB.PCI0.IOBA.SR07, Local0) Store (\_SB.PCI0.IOBA.S12I, Local1) Store (\_SB.PCI0.IOBA.S12H, Local2) Subtract (Local0, Local2, Local0) If (LGreaterEqual (Local0, Local1)) { Return (Zero) } Subtract (Local1, Local0, Local1) Decrement (Local1) Store (Local1, \_PR.PSLL) If (CondRefOf (\_PR.CPU1._PSS, Local5)) { Notify (\_PR.CPU1, 0x80) Notify (\_PR.CPU2, 0x80) Notify (\_PR.CPU3, 0x80) Notify (\_PR.CPU4, 0x80) Notify (\_PR.CPU5, 0x80) Notify (\_PR.CPU6, 0x80) Notify (\_PR.CPU7, 0x80) Notify (\_PR.CPU8, 0x80) Notify (\_PR.CPU9, 0x80) Notify (\_PR.CPUA, 0x80) Notify (\_PR.CPUB, 0x80) Notify (\_PR.CPUC, 0x80) Notify (\_PR.CPUD, 0x80) Notify (\_PR.CPUE, 0x80) Notify (\_PR.CPUF, 0x80) Notify (\_PR.CPUG, 0x80) Notify (\_PR.CP17, 0x80) Notify (\_PR.CP18, 0x80) Notify (\_PR.CP19, 0x80) Notify (\_PR.CP20, 0x80) Notify (\_PR.CP21, 0x80) Notify (\_PR.CP22, 0x80) Notify (\_PR.CP23, 0x80) Notify (\_PR.CP24, 0x80) } Else { Notify (\_PR.CPU1, 0xBE) Notify (\_PR.CPU2, 0xBE) Notify (\_PR.CPU3, 0xBE) Notify (\_PR.CPU4, 0xBE) Notify (\_PR.CPU5, 0xBE) Notify (\_PR.CPU6, 0xBE) Notify (\_PR.CPU7, 0xBE) Notify (\_PR.CPU8, 0xBE) Notify (\_PR.CPU9, 0xBE) Notify (\_PR.CPUA, 0xBE) Notify (\_PR.CPUB, 0xBE) Notify (\_PR.CPUC, 0xBE) Notify (\_PR.CPUD, 0xBE) Notify (\_PR.CPUE, 0xBE) Notify (\_PR.CPUF, 0xBE) Notify (\_PR.CPUG, 0xBE) Notify (\_PR.CP17, 0xBE) Notify (\_PR.CP18, 0xBE) Notify (\_PR.CP19, 0xBE) Notify (\_PR.CP20, 0xBE) Notify (\_PR.CP21, 0xBE) Notify (\_PR.CP22, 0xBE) Notify (\_PR.CP23, 0xBE) Notify (\_PR.CP24, 0xBE) } } If (And (\_SB.PCI0.IOBA.SR7H, 0x8000)) { Store ("_GPE PMI Power Cap Change", Debug) Store (0x01, EFLG) And (\_SB.PCI0.IOBA.SR7H, 0x7FFF, \_SB.PCI0.IOBA.SR7H) Notify (\_SB.PMI0, 0x82) } If (And (\_SB.PCI0.IOBA.SR7H, 0x4000)) { Store ("_GPE PMI Power Cap Enforce", Debug) Store (0x01, EFLG) And (\_SB.PCI0.IOBA.SR7H, 0xBFFF, \_SB.PCI0.IOBA.SR7H) Store (\_SB.PMI0.HLIM, Debug) Store (\_SB.PMI0.PVAL, Debug) If (LAnd (LNotEqual (\_SB.PMI0.HLIM, 0x00), LNotEqual (\_SB.PMI0.PVAL, 0x00))) { If (LGreater (\_SB.PMI0.HLIM, \_SB.PMI0.PVAL)) { Store (\_SB.PMI0.HLIM, \_SB.PMI0.PVAL) Store ("Notify Power Cap Enforce", Debug) Notify (\_SB.PMI0, 0x83) } } } If (LEqual (EFLG, 0x00)) { If (And (\_SB.WSUP, 0x01)) { Store ("Notify WHEA event", Debug) Notify (\_SB.WHEA, 0x80) } } Return (Zero) } } }