Date: Sat, 29 Jul 2006 01:03:07 +0200 From: "O. Hartmann" <ohartman@mail.uni-mainz.de> To: John Baldwin <jhb@freebsd.org> Cc: stable@freebsd.org, Bruno Ducrot <ducrot@poupinou.org>, freebsd-stable@freebsd.org, Mike Jakubik <mikej@rogers.com>, David Duchscher <daved@tamu.edu>, Jiawei Ye <leafy7382@gmail.com> Subject: Re: Monitoring temperature with acpi (sysctls) Message-ID: <44CA97AB.2070100@mail.uni-mainz.de> In-Reply-To: <200607280948.51239.jhb@freebsd.org> References: <44C63DFD.5040401@rogers.com> <c21e92e20607261917q51cbd5f4r32f4b8ee3a5469eb@mail.gmail.com> <44C85C4F.7030902@rogers.com> <200607280948.51239.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------060902000402000309040604 Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit John Baldwin wrote: > On Thursday 27 July 2006 02:25, Mike Jakubik wrote: > >> Jiawei Ye wrote: >> >>> On 7/27/06, Mike Jakubik <mikej@rogers.com> wrote: >>> >>>> I don't want to spend $50 extra per system, just so i can read the >>>> temperature, and not even use any of the IPMI functions. I need a simple >>>> and scriptable way to get the values, acpi sysctls are ideal for this. >>>> >>> What about using SMBus? Is it available on your system? xmbmon reads >>> temperatures off the SMBus IIRC. >>> >> I tried that, unfortunately it does not work. All i want to know is if >> this a shortcoming of freebsd or the motherboard, if its the later, i >> will contact the manufacturer. >> > > If ACPI doesn't include the sysctl's that's due to your BIOS, not FreeBSD. > You can verify by doing an acpidump and seeing if you have any thermal > zones listed in your ASL. > > This is a 'acpidump -d' of my BIOS, mainboard ASUS A8N32-SLI Deluxe, latest BIOS, V1205 as seen on ASUS homepage. Please see attachment. Oliver --------------060902000402000309040604 Content-Type: text/plain; name="acpi.txt" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="acpi.txt" /* * Intel ACPI Component Architecture * AML Disassembler version 20041119 * * Disassembly of /tmp/acpidump.nhd4SF, Fri Jul 28 23:00:44 2006 */ DefinitionBlock ("DSDT.aml", "DSDT", 1, "A0371", "A0371001", 1) { Name (DP80, 0x1080) Name (DP90, 0x90) Name (SPIO, 0x2E) Name (IOPB, 0x0C00) Name (IOPL, 0x10) Name (IOEB, 0x0D00) Name (IOEL, 0x10) Name (IOGB, 0x0A20) Name (IOGL, 0x10) Name (IODB, 0x0A30) Name (IODL, 0x10) Name (IO1B, 0x0A20) Name (IO1L, 0x08) Name (IO3B, 0x0D00) Name (IO3L, 0x80) Name (PMBS, 0x0500) Name (PMLN, 0x0100) Name (SCBS, 0x0800) Name (SCLN, 0x0100) Name (ACBS, 0x0900) Name (ACLN, 0x0100) Name (SCIO, 0x0800) Name (SCTL, 0x0590) Name (EXTS, 0x00) Name (APIC, 0x01) Name (ABWV, 0xAB) Name (PCIB, 0xE0000000) Name (PCIL, 0x10000000) Name (SMBS, 0x0700) OperationRegion (BIOS, SystemMemory, 0x7FFBE064, 0xFF) Field (BIOS, ByteAcc, NoLock, Preserve) { SS1, 1, SS2, 1, SS3, 1, SS4, 1, Offset (0x01), IOST, 16, TOPM, 32, ROMS, 32, MG1B, 32, MG1L, 32, MG2B, 32, MG2L, 32, Offset (0x1C), CPB0, 32, CPB1, 32, CPB2, 32, CPB3, 32, ASSB, 8, AOTB, 8, AAXB, 32 } Method (RRIO, 4, NotSerialized) { Store ("RRIO", Debug) } Method (RDMA, 3, NotSerialized) { Store ("rDMA", Debug) } Name (PICM, 0x00) Method (_PIC, 1, NotSerialized) { If (Arg0) { Store (0xAA, DBG8) } Else { Store (0xAC, DBG8) } Store (Arg0, PICM) } Name (OSVR, Ones) Method (OSFL, 0, NotSerialized) { If (LNot (LEqual (OSVR, Ones))) { Return (OSVR) } If (LEqual (PICM, 0x00)) { Store (0xAC, DBG8) } Store (0x01, OSVR) If (CondRefOf (\_OSI, Local1)) { If (\_OSI ("Windows 2001")) { Store (0x00, OSVR) } } Else { If (MCTH (\_OS, "Microsoft Windows NT")) { Store (0x04, OSVR) } Else { If (MCTH (\_OS, "Microsoft WindowsME: Millennium Edition")) { Store (0x02, OSVR) } If (MCTH (\_OS, "Linux")) { Store (0x03, OSVR) } } } Return (OSVR) } Method (MCTH, 2, NotSerialized) { If (LLess (SizeOf (Arg0), SizeOf (Arg1))) { Return (Zero) } Add (SizeOf (Arg0), 0x01, Local0) Name (BUF0, Buffer (Local0) {}) Name (BUF1, Buffer (Local0) {}) Store (Arg0, BUF0) Store (Arg1, BUF1) While (Local0) { Decrement (Local0) If (LNot (LEqual (DerefOf (Index (BUF0, Local0)), DerefOf (Index (BUF1, Local0))))) { Return (Zero) } } Return (One) } Name (PRWP, Package (0x02) { Zero, Zero }) Method (GPRW, 2, NotSerialized) { Store (Arg0, Index (PRWP, 0x00)) Store (ShiftLeft (SS1, 0x01), Local0) Or (Local0, ShiftLeft (SS2, 0x02), Local0) Or (Local0, ShiftLeft (SS3, 0x03), Local0) Or (Local0, ShiftLeft (SS4, 0x04), Local0) If (And (ShiftLeft (0x01, Arg1), Local0)) { Store (Arg1, Index (PRWP, 0x01)) } Else { ShiftRight (Local0, 0x01, Local0) If (LOr (LEqual (OSFL (), 0x01), LEqual (OSFL (), 0x02))) { FindSetLeftBit (Local0, Index (PRWP, 0x01)) } Else { FindSetRightBit (Local0, Index (PRWP, 0x01)) } } Return (PRWP) } Name (WAKP, Package (0x02) { Zero, Zero }) OperationRegion (DEB0, SystemIO, DP80, 0x01) Field (DEB0, ByteAcc, NoLock, Preserve) { DBG8, 8 } OperationRegion (DEB1, SystemIO, DP90, 0x02) Field (DEB1, WordAcc, NoLock, Preserve) { DBG9, 16 } Scope (\_SB) { Name (PR00, Package (0x20) { Package (0x04) { 0x000AFFFF, 0x00, LSMB, 0x00 }, Package (0x04) { 0x000BFFFF, 0x00, LUB0, 0x00 }, Package (0x04) { 0x000BFFFF, 0x01, LUB2, 0x00 }, Package (0x04) { 0x0013FFFF, 0x00, LMAC, 0x00 }, Package (0x04) { 0x0010FFFF, 0x00, LSA0, 0x00 }, Package (0x04) { 0x0011FFFF, 0x00, LSA1, 0x00 }, Package (0x04) { 0x000DFFFF, 0x00, LACI, 0x00 }, Package (0x04) { 0x000DFFFF, 0x01, LMC9, 0x00 }, Package (0x04) { 0x0002FFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0x0002FFFF, 0x01, LNKC, 0x00 }, Package (0x04) { 0x0002FFFF, 0x02, LNKD, 0x00 }, Package (0x04) { 0x0002FFFF, 0x03, LNKA, 0x00 }, Package (0x04) { 0x0003FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0003FFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0x0003FFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0x0003FFFF, 0x03, LNKD, 0x00 }, Package (0x04) { 0x0004FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0004FFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0x0004FFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0x0004FFFF, 0x03, LNKD, 0x00 }, Package (0x04) { 0x0017FFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0x0017FFFF, 0x01, LNKC, 0x00 }, Package (0x04) { 0x0017FFFF, 0x02, LNKD, 0x00 }, Package (0x04) { 0x0017FFFF, 0x03, LNKA, 0x00 }, Package (0x04) { 0x0016FFFF, 0x00, LNKC, 0x00 }, Package (0x04) { 0x0016FFFF, 0x01, LNKD, 0x00 }, Package (0x04) { 0x0016FFFF, 0x02, LNKA, 0x00 }, Package (0x04) { 0x0016FFFF, 0x03, LNKB, 0x00 }, Package (0x04) { 0x0015FFFF, 0x00, LNKD, 0x00 }, Package (0x04) { 0x0015FFFF, 0x01, LNKA, 0x00 }, Package (0x04) { 0x0015FFFF, 0x02, LNKB, 0x00 }, Package (0x04) { 0x0015FFFF, 0x03, LNKC, 0x00 } }) Name (AR00, Package (0x20) { Package (0x04) { 0x000AFFFF, 0x00, LSMB, 0x00 }, Package (0x04) { 0x000BFFFF, 0x00, LUB0, 0x00 }, Package (0x04) { 0x000BFFFF, 0x01, LUB2, 0x00 }, Package (0x04) { 0x0013FFFF, 0x00, LMAC, 0x00 }, Package (0x04) { 0x0010FFFF, 0x00, LSA0, 0x00 }, Package (0x04) { 0x0011FFFF, 0x00, LSA1, 0x00 }, Package (0x04) { 0x000DFFFF, 0x00, LACI, 0x00 }, Package (0x04) { 0x000DFFFF, 0x01, LMC9, 0x00 }, Package (0x04) { 0x0002FFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0x0002FFFF, 0x01, LNKC, 0x00 }, Package (0x04) { 0x0002FFFF, 0x02, LNKD, 0x00 }, Package (0x04) { 0x0002FFFF, 0x03, LNKA, 0x00 }, Package (0x04) { 0x0003FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0003FFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0x0003FFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0x0003FFFF, 0x03, LNKD, 0x00 }, Package (0x04) { 0x0004FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0004FFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0x0004FFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0x0004FFFF, 0x03, LNKD, 0x00 }, Package (0x04) { 0x0017FFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0x0017FFFF, 0x01, LNKC, 0x00 }, Package (0x04) { 0x0017FFFF, 0x02, LNKD, 0x00 }, Package (0x04) { 0x0017FFFF, 0x03, LNKA, 0x00 }, Package (0x04) { 0x0016FFFF, 0x00, LNKC, 0x00 }, Package (0x04) { 0x0016FFFF, 0x01, LNKD, 0x00 }, Package (0x04) { 0x0016FFFF, 0x02, LNKA, 0x00 }, Package (0x04) { 0x0016FFFF, 0x03, LNKB, 0x00 }, Package (0x04) { 0x0015FFFF, 0x00, LNKD, 0x00 }, Package (0x04) { 0x0015FFFF, 0x01, LNKA, 0x00 }, Package (0x04) { 0x0015FFFF, 0x02, LNKB, 0x00 }, Package (0x04) { 0x0015FFFF, 0x03, LNKC, 0x00 } }) Name (PR01, Package (0x0D) { Package (0x04) { 0x000BFFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0006FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0006FFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0x0006FFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0x0006FFFF, 0x03, LNKD, 0x00 }, Package (0x04) { 0x0007FFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0x0007FFFF, 0x01, LNKC, 0x00 }, Package (0x04) { 0x0007FFFF, 0x02, LNKD, 0x00 }, Package (0x04) { 0x0007FFFF, 0x03, LNKA, 0x00 }, Package (0x04) { 0x0008FFFF, 0x00, LNKC, 0x00 }, Package (0x04) { 0x0008FFFF, 0x01, LNKD, 0x00 }, Package (0x04) { 0x0008FFFF, 0x02, LNKA, 0x00 }, Package (0x04) { 0x0008FFFF, 0x03, LNKB, 0x00 } }) Name (AR01, Package (0x0D) { Package (0x04) { 0x000BFFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0006FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0006FFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0x0006FFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0x0006FFFF, 0x03, LNKD, 0x00 }, Package (0x04) { 0x0007FFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0x0007FFFF, 0x01, LNKC, 0x00 }, Package (0x04) { 0x0007FFFF, 0x02, LNKD, 0x00 }, Package (0x04) { 0x0007FFFF, 0x03, LNKA, 0x00 }, Package (0x04) { 0x0008FFFF, 0x00, LNKC, 0x00 }, Package (0x04) { 0x0008FFFF, 0x01, LNKD, 0x00 }, Package (0x04) { 0x0008FFFF, 0x02, LNKA, 0x00 }, Package (0x04) { 0x0008FFFF, 0x03, LNKB, 0x00 } }) Name (PR02, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LNKC, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LNKD, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKA, 0x00 } }) Name (AR02, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LNKC, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LNKD, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKA, 0x00 } }) Name (PR03, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKD, 0x00 } }) Name (AR03, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKD, 0x00 } }) Name (PR04, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKD, 0x00 } }) Name (AR04, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKD, 0x00 } }) Name (PR05, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LNKC, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LNKD, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKA, 0x00 } }) Name (AR05, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LNKC, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LNKD, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKA, 0x00 } }) Name (PR06, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LNKC, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LNKD, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LNKA, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKB, 0x00 } }) Name (AR06, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LNKC, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LNKD, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LNKA, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKB, 0x00 } }) Name (PR07, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LNKD, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LNKA, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LNKB, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKC, 0x00 } }) Name (AR07, Package (0x04) { Package (0x04) { 0xFFFF, 0x00, LNKD, 0x00 }, Package (0x04) { 0xFFFF, 0x01, LNKA, 0x00 }, Package (0x04) { 0xFFFF, 0x02, LNKB, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKC, 0x00 } }) Name (PRSA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {5,7,10,14,15} }) Alias (PRSA, PRSB) Alias (PRSA, PRSC) Alias (PRSA, PRSD) Alias (PRSA, RSMB) Alias (PRSA, RSB2) Name (RSA1, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {11} }) Alias (RSA1, RSA0) Alias (PRSA, RSB0) Alias (PRSA, RSAC) Alias (PRSA, RSCI) Alias (PRSA, RSC9) Alias (PRSA, RSTA) Name (RSIR, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveLow, Shared) { 0x00000010, 0x00000011, 0x00000012, 0x00000013, } }) Name (RSII, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveLow, Shared) { 0x00000014, 0x00000015, 0x00000016, 0x00000017, } }) Device (PCI0) { Name (_HID, EisaId ("PNP0A03")) Name (_ADR, 0x00180000) Method (^BN00, 0, NotSerialized) { Return (0x00) } Method (_BBN, 0, NotSerialized) { Return (BN00 ()) } Name (_UID, 0x00) Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR00) } Return (PR00) } Device (NB2N) { Name (_ADR, 0x00) Method (NPTS, 1, NotSerialized) { } Method (NWAK, 1, NotSerialized) { } } Device (PCLK) { Name (_ADR, 0x02) } Device (SBRG) { Name (_ADR, 0x000A0000) Method (SPTS, 1, NotSerialized) { Store (Arg0, \_SB.PCI0.IDE0.PTS0) Store (\_SB.PCI0.IDE0.ID20, \_SB.PCI0.IDE0.SID0) Store (\_SB.PCI0.IDE0.IDTS, \_SB.PCI0.IDE0.SID1) Store (\_SB.PCI0.IDE0.IDTP, \_SB.PCI0.IDE0.SID2) Store (\_SB.PCI0.IDE0.ID22, \_SB.PCI0.IDE0.SID3) Store (\_SB.PCI0.IDE0.UMSS, \_SB.PCI0.IDE0.SID4) Store (\_SB.PCI0.IDE0.UMSP, \_SB.PCI0.IDE0.SID5) Store (One, PS1S) Store (One, PS1E) Store (One, \_SB.SLPS) } Method (SWAK, 1, NotSerialized) { Store (Zero, \_SB.SLPS) Store (Zero, PS1E) Store (0x02, S1CT) Store (0x02, S3CT) Store (0x02, S4CT) Store (0x02, S5CT) } OperationRegion (SMIE, SystemIO, SCIO, 0x08) Field (SMIE, ByteAcc, NoLock, Preserve) { , 15, PS1S, 1, , 31, PS1E, 1, Offset (0x08) } OperationRegion (SXCT, SystemIO, SCTL, 0x10) Field (SXCT, ByteAcc, NoLock, Preserve) { S1CT, 2, Offset (0x04), S3CT, 2, Offset (0x08), S4CT, 2, Offset (0x0C), S5CT, 2, Offset (0x10) } Scope (\_SB) { Name (SLPS, 0x00) Device (SLPB) { Name (_HID, EisaId ("PNP0C0E")) Method (_STA, 0, NotSerialized) { If (EXTS) { Return (0x0F) } Return (0x00) } Method (SBEV, 0, NotSerialized) { If (SLPS) { Notify (SLPB, 0x02) } Else { Notify (SLPB, 0x80) } } Method (\_GPE._L01, 0, NotSerialized) { \_SB.SLPB.SBEV () } Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x01, 0x04 }) } } Scope (PCI0) { Method (_S3D, 0, NotSerialized) { If (LEqual (OSFL (), 0x02)) { Return (0x02) } Else { Return (0x03) } } Name (_S1D, 0x01) Name (NATA, Package (0x01) { 0x00100000 }) Device (NVRB) { Name (_HID, "NVRAIDBUS") Method (_STA, 0, NotSerialized) { If (And (CPB0, 0x01)) { Return (0x0F) } Else { Return (0x00) } } Name (_CRS, ResourceTemplate () { IO (Decode16, 0x04D2, 0x04D2, 0x01, 0x01) }) } } } Device (PIC) { Name (_HID, EisaId ("PNP0000")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0020, 0x0020, 0x00, 0x02) IO (Decode16, 0x00A0, 0x00A0, 0x00, 0x02) IRQNoFlags () {2} }) } Device (DMAD) { Name (_HID, EisaId ("PNP0200")) Name (_CRS, ResourceTemplate () { DMA (Compatibility, BusMaster, Transfer8) {4} IO (Decode16, 0x0000, 0x0000, 0x00, 0x10) IO (Decode16, 0x0081, 0x0081, 0x00, 0x03) IO (Decode16, 0x0087, 0x0087, 0x00, 0x01) IO (Decode16, 0x0089, 0x0089, 0x00, 0x03) IO (Decode16, 0x008F, 0x008F, 0x00, 0x01) IO (Decode16, 0x00C0, 0x00C0, 0x00, 0x20) }) } Device (TMR) { Name (_HID, EisaId ("PNP0100")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0040, 0x0040, 0x00, 0x04) IRQNoFlags () {0} }) } Device (RTC0) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, 0x0070, 0x00, 0x02) IRQNoFlags () {8} }) } Device (SPKR) { Name (_HID, EisaId ("PNP0800")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0061, 0x0061, 0x00, 0x01) }) } Device (COPR) { Name (_HID, EisaId ("PNP0C04")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x00F0, 0x00F0, 0x00, 0x10) IRQNoFlags () {13} }) } Device (FDC) { Name (_HID, EisaId ("PNP0700")) Method (_FDE, 0, NotSerialized) { Name (FDEP, Package (0x05) { 0x00, 0x00, 0x02, 0x02, 0x02 }) If (_STA ()) { Store (0x01, Index (FDEP, 0x00)) } Return (FDEP) } Method (_STA, 0, NotSerialized) { Return (DSTA (0x03)) } Method (_DIS, 0, NotSerialized) { DCNT (0x03, 0x00) } Method (_CRS, 0, NotSerialized) { DCRS (0x03, 0x01) Store (IRQM, IRQE) Store (DMAM, DMAE) Store (IO11, IO21) Store (IO12, IO22) Store (0x06, LEN2) Add (IO21, 0x07, IO31) Store (IO31, IO32) Store (0x01, LEN3) Return (CRS2) } Method (_SRS, 1, NotSerialized) { DSRS (Arg0, 0x03) CreateWordField (Arg0, 0x11, IRQE) CreateByteField (Arg0, 0x14, DMAE) ENFG (CGLD (0x03)) If (IRQE) { FindSetRightBit (IRQE, Local0) Subtract (Local0, 0x01, INTR) } Else { Store (0x00, INTR) } If (DMAE) { FindSetRightBit (DMAE, Local0) Subtract (Local0, 0x01, DMCH) } Else { Store (0x04, DMCH) } EXFG () } Name (_PRS, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x03F0, 0x03F0, 0x01, 0x06) IO (Decode16, 0x03F7, 0x03F7, 0x01, 0x01) IRQNoFlags () {6} DMA (Compatibility, NotBusMaster, Transfer8) {2} } StartDependentFnNoPri () { IO (Decode16, 0x03F0, 0x03F0, 0x01, 0x06) IO (Decode16, 0x03F7, 0x03F7, 0x01, 0x01) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } StartDependentFnNoPri () { IO (Decode16, 0x0370, 0x0370, 0x01, 0x06) IO (Decode16, 0x0377, 0x0377, 0x01, 0x01) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } EndDependentFn () }) } Device (LPTE) { Method (_HID, 0, NotSerialized) { If (LPTM (0x02)) { Return (0x0104D041) } Else { Return (0x0004D041) } } Method (_STA, 0, NotSerialized) { Return (DSTA (0x02)) } Method (_DIS, 0, NotSerialized) { DCNT (0x02, 0x00) } Method (_CRS, 0, NotSerialized) { DCRS (0x02, 0x01) If (LPTM (0x02)) { Store (IRQM, IRQE) Store (DMAM, DMAE) Store (IO11, IO21) Store (IO12, IO22) Store (LEN1, LEN2) Add (IO21, 0x0400, IO31) Store (IO31, IO32) Store (LEN2, LEN3) Return (CRS2) } Else { Return (CRS1) } } Method (_SRS, 1, NotSerialized) { DSRS (Arg0, 0x02) } Method (_PRS, 0, NotSerialized) { If (LPTM (0x02)) { Return (EPPR) } Else { Return (LPPR) } } Name (LPPR, ResourceTemplate () { StartDependentFnNoPri () { IO (Decode16, 0x0378, 0x0378, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x0278, 0x0278, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x03BC, 0x03BC, 0x01, 0x04) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } EndDependentFn () }) Name (EPPR, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x0378, 0x0378, 0x01, 0x08) IO (Decode16, 0x0778, 0x0778, 0x01, 0x08) IRQNoFlags () {7} DMA (Compatibility, NotBusMaster, Transfer8) {3} } StartDependentFnNoPri () { IO (Decode16, 0x0378, 0x0378, 0x01, 0x08) IO (Decode16, 0x0778, 0x0778, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } StartDependentFnNoPri () { IO (Decode16, 0x0278, 0x0278, 0x01, 0x08) IO (Decode16, 0x0678, 0x0678, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } StartDependentFnNoPri () { IO (Decode16, 0x03BC, 0x03BC, 0x01, 0x04) IO (Decode16, 0x07BC, 0x07BC, 0x01, 0x04) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } EndDependentFn () }) } Device (GAME) { Name (_HID, EisaId ("PNPB02F")) Method (_STA, 0, NotSerialized) { Return (DSTA (0x08)) } Method (_DIS, 0, NotSerialized) { DCNT (0x08, 0x00) } Name (GMCR, ResourceTemplate () { IO (Decode16, 0x0000, 0x0000, 0x08, 0x08) }) Method (_CRS, 0, NotSerialized) { CreateWordField (GMCR, 0x02, IOGL) CreateWordField (GMCR, 0x04, IOGH) ENFG (CGLD (0x08)) ShiftLeft (IOAH, 0x08, IOGL) Or (IOAL, IOGL, IOGL) Store (IOGL, IOGH) CreateByteField (GMCR, 0x06, IOAL) Store (0x01, IOAL) EXFG () Return (GMCR) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, 0x02, IO11) ENFG (CGLD (0x08)) And (IO11, 0xFF, IOAL) ShiftRight (IO11, 0x08, IOAH) DCNT (0x08, 0x01) EXFG () } Name (_PRS, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x0201, 0x0201, 0x01, 0x08) } EndDependentFn () }) } Device (MIDI) { Name (_HID, EisaId ("PNPB006")) Method (_STA, 0, NotSerialized) { Return (DSTA (0x05)) } Method (_DIS, 0, NotSerialized) { DCNT (0x05, 0x00) } Name (MDCR, ResourceTemplate () { IO (Decode16, 0x0000, 0x0000, 0x01, 0x02) IRQNoFlags () {5} }) Method (_CRS, 0, NotSerialized) { CreateWordField (MDCR, 0x02, IOML) CreateWordField (MDCR, 0x04, IOMH) CreateWordField (MDCR, 0x09, IRQM) ENFG (CGLD (0x05)) ShiftLeft (IOAH, 0x08, IOML) Or (IOAL, IOML, IOML) Store (IOML, IOMH) If (INTR) { ShiftLeft (0x01, INTR, IRQM) } Else { Store (0x00, IRQM) } EXFG () Return (MDCR) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, 0x02, IO11) CreateWordField (Arg0, 0x09, IRQM) ENFG (CGLD (0x05)) And (IO11, 0xFF, IOAL) ShiftRight (IO11, 0x08, IOAH) If (IRQM) { FindSetRightBit (IRQM, Local0) Subtract (Local0, 0x01, INTR) } Else { Store (0x00, INTR) } DCNT (0x05, 0x01) EXFG () } Name (_PRS, ResourceTemplate () { StartDependentFnNoPri () { IO (Decode16, 0x0300, 0x0300, 0x01, 0x02) } StartDependentFnNoPri () { IO (Decode16, 0x0330, 0x0330, 0x01, 0x02) } EndDependentFn () IRQNoFlags () {5,7,9,10,11} }) } Device (RMSC) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x10) Name (CRS, ResourceTemplate () { IO (Decode16, 0x0010, 0x0010, 0x00, 0x10) IO (Decode16, 0x0022, 0x0022, 0x00, 0x1E) IO (Decode16, 0x0044, 0x0044, 0x00, 0x1C) IO (Decode16, 0x0062, 0x0062, 0x00, 0x02) IO (Decode16, 0x0065, 0x0065, 0x00, 0x0B) IO (Decode16, 0x0072, 0x0072, 0x00, 0x0E) IO (Decode16, 0x0080, 0x0080, 0x00, 0x01) IO (Decode16, 0x0084, 0x0084, 0x00, 0x03) IO (Decode16, 0x0088, 0x0088, 0x00, 0x01) IO (Decode16, 0x008C, 0x008C, 0x00, 0x03) IO (Decode16, 0x0090, 0x0090, 0x00, 0x10) IO (Decode16, 0x00A2, 0x00A2, 0x00, 0x1E) IO (Decode16, 0x00E0, 0x00E0, 0x00, 0x10) IO (Decode16, 0x04D0, 0x04D0, 0x00, 0x02) IO (Decode16, 0x0800, 0x0800, 0x00, 0x10) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) Memory32Fixed (ReadOnly, 0xFEE01000, 0x000FF000) Memory32Fixed (ReadOnly, 0xFEFFF000, 0x00001000) Memory32Fixed (ReadWrite, 0xFFB00000, 0x004F0000) Memory32Fixed (ReadOnly, 0xFFF00000, 0x00100000) }) Method (_CRS, 0, NotSerialized) { CreateWordField (CRS, 0x7A, GP00) CreateWordField (CRS, 0x7C, GP01) CreateByteField (CRS, 0x7F, GP0L) CreateWordField (CRS, 0x82, GP10) CreateWordField (CRS, 0x84, GP11) CreateByteField (CRS, 0x87, GP1L) Store (PMBS, GP00) Store (PMBS, GP01) If (LNot (LLess (PMLN, 0x0100))) { ShiftRight (PMLN, 0x01, GP0L) Add (GP00, GP0L, GP10) Add (GP01, GP0L, GP11) Subtract (PMLN, GP0L, GP1L) } Else { Store (PMLN, GP0L) } If (SCBS) { CreateWordField (CRS, 0x8A, SC00) CreateWordField (CRS, 0x8C, SC01) CreateByteField (CRS, 0x8F, SC0L) CreateWordField (CRS, 0x92, SC10) CreateWordField (CRS, 0x94, SC11) CreateByteField (CRS, 0x97, SC1L) Store (SCBS, SC00) Store (SCBS, SC01) If (LNot (LLess (SCLN, 0x0100))) { ShiftRight (SCLN, 0x01, SC0L) Add (SC00, SC0L, SC10) Add (SC01, SC0L, SC11) Subtract (SCLN, SC0L, SC1L) } Else { Store (SCLN, SC0L) } } If (ACBS) { CreateWordField (CRS, 0x9A, AC00) CreateWordField (CRS, 0x9C, AC01) CreateByteField (CRS, 0x9F, AC0L) CreateWordField (CRS, 0xA2, AC10) CreateWordField (CRS, 0xA4, AC11) CreateByteField (CRS, 0xA7, AC1L) Store (ACBS, AC00) Store (ACBS, AC01) If (LNot (LLess (ACLN, 0x0100))) { ShiftRight (ACLN, 0x01, AC0L) Add (AC00, AC0L, AC10) Add (AC01, AC0L, AC11) Subtract (ACLN, AC0L, AC1L) } Else { Store (ACLN, AC0L) } } Return (CRS) } } Scope (\_SB.PCI0.SBRG) { Device (ASOC) { Name (_HID, "ATK0110") Name (_UID, 0x01010110) Method (_STA, 0, NotSerialized) { Return (0x0F) } } } OperationRegion (\_SB.PCI0.SBRG.LPDC, PCI_Config, 0xA0, 0x06) Field (\_SB.PCI0.SBRG.LPDC, ByteAcc, NoLock, Preserve) { S3F8, 1, S2F8, 1, , 3, S2E8, 1, , 1, S3E8, 1, , 4, M300, 1, , 2, M330, 1, , 4, FDC0, 1, Offset (0x03), P378, 1, P278, 1, P3BC, 1, Offset (0x04), G200, 8, G208, 8 } Method (RRIO, 4, NotSerialized) { If (LOr (LEqual (Arg0, 0x00), LEqual (Arg0, 0x01))) { If (LEqual (Arg2, 0x03F8)) { Store (Arg1, S3F8) } If (LEqual (Arg2, 0x02F8)) { Store (Arg1, S2F8) } If (LEqual (Arg2, 0x03E8)) { Store (Arg1, S3E8) } If (LEqual (Arg2, 0x02E8)) { Store (Arg1, S2E8) } } If (LEqual (Arg0, 0x02)) { If (LEqual (Arg2, 0x0378)) { Store (Arg1, P378) } If (LEqual (Arg2, 0x0278)) { Store (Arg1, P278) } If (LEqual (Arg2, 0x03BC)) { Store (Arg1, P3BC) } } If (LEqual (Arg0, 0x03)) { Store (Arg1, FDC0) } If (LEqual (Arg0, 0x05)) { If (LEqual (Arg2, 0x0330)) { Store (Arg1, M330) } If (LEqual (Arg2, 0x0300)) { Store (Arg1, M300) } } If (LEqual (Arg0, 0x08)) { Store (Zero, Local0) If (Arg1) { Store (0xFF, Local0) } If (LEqual (Arg2, 0x0200)) { Store (Local0, G200) } If (LEqual (Arg2, 0x0208)) { Store (Local0, G208) } } } Method (RDMA, 3, NotSerialized) { } Scope (\) { OperationRegion (\RAMW, SystemMemory, Subtract (TOPM, 0x00010000), 0x00010000) Field (\RAMW, ByteAcc, NoLock, Preserve) { PAR0, 32, PAR1, 32 } OperationRegion (IOB2, SystemIO, 0x082E, 0x02) Field (IOB2, ByteAcc, NoLock, Preserve) { SMIC, 8, SMIS, 8 } Method (ISMI, 1, Serialized) { Store (Arg0, SMIC) } Method (GNVS, 1, Serialized) { Store (Arg0, PAR0) ISMI (0x70) Return (PAR1) } Method (SNVS, 2, Serialized) { Store (Arg0, PAR0) Store (Arg1, PAR1) ISMI (0x71) } } Scope (\) { Field (\RAMW, ByteAcc, NoLock, Preserve) { Offset (0x08), ADSP, 32, FSBF, 16, FVCM, 8, AITU, 8, FIDV, 8, VIDV, 8, OCPI, 8, NOST, 8, NOS1, 8, DDRV, 8, CPUS, 1, CQFS, 3, CQFT, 4, AIDI, 8, OVID, 8, CCAQ, 8, MAXF, 8, MAXV, 8, CURF, 8, CURV, 8, PCEF, 8 } } OperationRegion (\_SB.PCI0.PCLK.MNCK, PCI_Config, 0x44, 0x04) Field (\_SB.PCI0.PCLK.MNCK, ByteAcc, NoLock, Preserve) { MMNN, 16, , 14, MNEN, 1, Offset (0x04) } OperationRegion (\_SB.PCI0.PCLK.SPRD, PCI_Config, 0x54, 0x04) Field (\_SB.PCI0.PCLK.SPRD, ByteAcc, NoLock, Preserve) { SPRE, 1, Offset (0x04) } OperationRegion (QDRV, SystemIO, IOGB, 0x03) Field (QDRV, ByteAcc, NoLock, Preserve) { Offset (0x02), , 1, QDDR, 4, Offset (0x03) } OperationRegion (DEB0, SystemIO, 0x1080, 0x02) Field (DEB0, ByteAcc, NoLock, Preserve) { DB16, 16 } Name (DDRT, Package (0x0A) { 0x0D, 0x0F, 0x0E, 0x0D, 0x0B, 0x07, 0x09, 0x08, 0x03, 0x02 }) Scope (\_SB.PCI0.SBRG.ASOC) { Name (MBIF, Package (0x08) { 0x01, "A8N32-SLI", 0x01, 0x01, 0x02, 0x00, 0x00, 0x00 }) Method (ASIF, 0, NotSerialized) { Return (MBIF) } Name (OC01, Package (0x06) { 0x01010000, "CPU FSB", 0x4E20, 0x9C40, 0xC9, 0x00010003 }) Name (OC02, Package (0x06) { 0x01060001, "CPU Multiplier", 0x04, 0x19, 0x16, 0x00010000 }) Name (OC03, Package (0x06) { 0x01060002, "FID VID Mode", 0x00, 0x01, 0x01, 0x00010000 }) Name (OC04, Package (0x06) { 0x07010003, "PCI Express", 0x2710, 0x332C, 0x65, 0x00 }) Name (OC05, Package (0x06) { 0x05050004, "OC Profile", 0x00, 0x04, 0x05, 0x00010001 }) Name (OC06, Package (0x06) { 0x08050005, "Turbo NOS", 0x00, 0x04, 0x05, 0x00010000 }) Name (OC07, Package (0x06) { 0x08060006, "NOS MODE", 0x00, 0x03, 0x04, 0x00 }) Name (OC08, Package (0x06) { 0x04060003, "CPU Q-Fan Control", 0x00, 0x01, 0x01, 0x00010003 }) Name (OC09, Package (0x06) { 0x01020008, "CPU VID", 0x1F40, 0x3D09, 0x3D, 0x00010000 }) Name (OC0A, Package (0x06) { 0x02020009, "DRAM Voltage", 0x0A28, 0x0BB8, 0x09, 0x00010003 }) Name (OC0B, Package (0x06) { 0x0906000C, "AI Overclock Tuner", 0x00, 0x04, 0x05, 0x00010003 }) Name (OC0C, Package (0x06) { 0x0106000B, "Cool&Quiet Support", 0x00, 0x01, 0x02, 0x00010003 }) Name (OBUF, Package (0x0C) { OC01, OC02, OC03, OC04, OC05, OC06, OC07, OC08, OC09, OC0A, OC0B, OC0C }) Name (OCVO, 0x00) Method (OCIF, 0, NotSerialized) { Store (ShiftLeft (MAXV, 0x01), Local1) Subtract (0x3D09, Multiply (Local1, 0x7D), Index (OC09, 0x03)) Subtract (0x3D, Local1, Index (OC09, 0x04)) Return (OBUF) } Name (TEM1, Package (0x11) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) Method (TEMP, 1, NotSerialized) { Store (FSBF, Index (TEM1, 0x00)) Store (FVCM, Index (TEM1, 0x01)) Store (AITU, Index (TEM1, 0x02)) Store (FIDV, Index (TEM1, 0x03)) Store (VIDV, Index (TEM1, 0x04)) Store (OCPI, Index (TEM1, 0x05)) Store (NOST, Index (TEM1, 0x06)) Store (NOS1, Index (TEM1, 0x07)) Store (DDRV, Index (TEM1, 0x08)) Store (CPUS, Index (TEM1, 0x09)) Store (CQFS, Index (TEM1, 0x0A)) Store (CQFT, Index (TEM1, 0x0B)) Store (AIDI, Index (TEM1, 0x0C)) Store (OVID, Index (TEM1, 0x0D)) Store (CCAQ, Index (TEM1, 0x0E)) Store (MAXF, Index (TEM1, 0x0F)) Store (MAXV, Index (TEM1, 0x10)) Return (TEM1) } Method (OCOP, 1, NotSerialized) { Store (DerefOf (Index (OC01, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (FSBF, Local0) Multiply (Local0, 0x64, Local1) Store (Local1, Index (CPUO, 0x01)) Subtract (Local0, 0xC8, Local2) Store (Local2, Index (CPUO, 0x02)) Return (CPUO) } Store (DerefOf (Index (OC02, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (Add (ShiftRight (CURF, 0x01), 0x04), Index (CPUM, 0x01)) Store (Add (ShiftRight (CURF, 0x01), 0x04), Index (CPUM, 0x02)) If (LEqual (FVCM, 0x01)) { Store (0x00010000, Index (OC02, 0x05)) Store (0x00, Index (CPUM, 0x03)) } Else { Store (0x00010000, Index (OC02, 0x05)) Store (0x00, Index (CPUM, 0x03)) } Store (Add (ShiftRight (MAXF, 0x01), 0x04), Index (OC02, 0x03)) Add (0x01, DerefOf (Index (OC02, 0x03)), Local0) Store (DerefOf (Index (OC02, 0x02)), Local1) Subtract (Local0, Local1, Index (OC02, 0x04)) Return (CPUM) } Store (DerefOf (Index (OC03, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (FVCM, Index (CPFV, 0x02)) If (LEqual (CCAQ, 0x00)) { Store (0x00010000, Index (OC03, 0x05)) Store (0x00, Index (CPFV, 0x03)) } Else { Store (0x00010003, Index (OC03, 0x05)) Store (0x01, Index (CPFV, 0x03)) } Return (CPFV) } Store (DerefOf (Index (OC04, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Return (PCIV) } Store (DerefOf (Index (OC05, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (OCPI, Index (OCPR, 0x02)) If (LNot (LGreater (AITU, 0x03))) { Store (0x00010003, Index (OC05, 0x05)) Store (0x01, Index (OCPR, 0x03)) } Else { Store (0x00010003, Index (OC05, 0x05)) Store (0x01, Index (OCPR, 0x03)) } Return (OCPR) } Store (DerefOf (Index (OC06, 0x00)), Local1) If (LEqual (Arg0, Local1)) { If (LEqual (AITU, 0x04)) { Store (NOS1, Index (NOSP, 0x02)) } Else { Store (0x00, Index (NOSP, 0x02)) } Return (NOSP) } Store (DerefOf (Index (OC07, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (NOST, Index (NOSM, 0x02)) Return (NOSM) } Store (DerefOf (Index (OC08, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (CPUS, Index (FANB, 0x02)) Return (FANB) } Store (DerefOf (Index (OC09, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (Subtract (CURV, MAXV), Local2) ShiftLeft (Local2, 0x01, Local2) And (OVID, 0x01, Local3) Or (Local2, Local3, Local2) Store (Local2, Index (CPUV, 0x02)) Store (ShiftLeft (MAXV, 0x01), Local2) Subtract (0x3D09, Multiply (Local2, 0x7D), Index (OC09, 0x03)) Subtract (0x3D, Local2, Index (OC09, 0x04)) Return (CPUV) } Store (DerefOf (Index (OC0A, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (DDRV, Index (DDVO, 0x02)) Return (DDVO) } Store (DerefOf (Index (OC0B, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (AITU, Index (AIOT, 0x02)) Return (AIOT) } Store (DerefOf (Index (OC0C, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (CCAQ, Index (ACAQ, 0x02)) Return (ACAQ) } } Name (CPUO, Package (0x04) { 0x01010000, 0x4E20, 0x00, 0x01 }) Name (CPUM, Package (0x04) { 0x01060001, 0x00, 0x00, 0x00 }) Name (CPFV, Package (0x06) { 0x01060002, 0x00, 0x00, 0x00, "Auto", "Manual" }) Name (PCIV, Package (0x04) { 0x07010003, 0x2710, 0x64, 0x00 }) Name (OCPR, Package (0x09) { 0x05050004, 0x00, 0x00, 0x00, "Overclock 1%", "Overclock 3%", "Overclock 5%", "Overclock 8%", "Overclock 10%" }) Name (NOSP, Package (0x09) { 0x08050005, 0x00, 0x00, 0x01, "Overclock 1%", "Overclock 3%", "Overclock 5%", "Overclock 8%", "Overclock 10%" }) Name (NOSM, Package (0x08) { 0x08060006, 0x00, 0x00, 0x00, "Auto", "Standard%", "Sensitive", "Heavy Load" }) Name (FANB, Package (0x06) { 0x04040007, 0x00, 0x00, 0x01, "Disabled", "Enabled" }) Name (CPUV, Package (0x04) { 0x01020008, 0x00, 0x00, 0x01 }) Name (DDVO, Package (0x0E) { 0x02020009, 0x00, 0x00, 0x01, "Auto", "2.60V", "2.65V", "2.70V", "2.75V", "2.80V", "2.85V", "2.90V", "2.95V", "3.00V" }) Name (AIOT, Package (0x09) { 0x0906000C, 0x00, 0x00, 0x01, "Manual", "Auto", "Standard", "OverClock Profile", "AI NOS" }) Name (ACAQ, Package (0x06) { 0x0106000B, 0x00, 0x00, 0x00, "Enabled", "Disabled" }) Name (OCST, Package (0x0C) { Package (0x02) { 0x01010000, 0x01 }, Package (0x02) { 0x01060001, 0x01 }, Package (0x02) { 0x01060002, 0x01 }, Package (0x02) { 0x07010003, 0x01 }, Package (0x02) { 0x05050004, 0x01 }, Package (0x02) { 0x08050005, 0x01 }, Package (0x02) { 0x08060006, 0x01 }, Package (0x02) { 0x04060003, 0x01 }, Package (0x02) { 0x01020008, 0x01 }, Package (0x02) { 0x02020009, 0x01 }, Package (0x02) { 0x0906000C, 0x01 }, Package (0x02) { 0x0106000B, 0x01 } }) Method (PROC, 3, NotSerialized) { Store (DerefOf (Index (OC01, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (Arg1, Local2) Add (Local2, 0xC8, Local2) If (LEqual (Arg2, 0x00)) { If (LNot (LGreater (AITU, 0x03))) { If (LNot (LLess (FSBF, Local2))) { Subtract (FSBF, Local2, Local0) } Else { Subtract (Local2, FSBF, Local0) } If (LGreater (Local0, 0x0A)) { Store (0x03, Index (DerefOf (Index (OCST, 0x00)), 0x01)) Return (0x03) } Store (0x01, Index (DerefOf (Index (OCST, 0x00)), 0x01)) Return (0x01) } Else { Store (0x03, Index (DerefOf (Index (OCST, 0x00)), 0x01)) Return (0x03) } } If (LNot (LLess (FSBF, Local2))) { Subtract (FSBF, Local2, Local0) } Else { Subtract (Local2, FSBF, Local0) } Store (Local2, FSBF) If (LNot (LGreater (AITU, 0x03))) { Store (0x00, SMIS) Store (0xAB, SMIC) Store (0x00, AITU) Store (0x02, SMIS) Store (0xAB, SMIC) If (LGreater (Local0, 0x0A)) { Store (0x03, Index (DerefOf (Index (OCST, 0x00)), 0x01)) Return (0x03) } Store (0xAA, SMIS) Store (0xAB, SMIC) Store (0x01, Index (DerefOf (Index (OCST, 0x00)), 0x01)) Return (0x01) } Store (0x00, SMIS) Store (0xAB, SMIC) Store (0x00, AITU) Store (0x02, SMIS) Store (0xAB, SMIC) Store (0x03, Index (DerefOf (Index (OCST, 0x00)), 0x01)) Return (0x03) } Store (DerefOf (Index (OC02, 0x00)), Local1) If (LEqual (Arg0, Local1)) { If (LEqual (Arg2, 0x00)) { Store (0x03, Index (DerefOf (Index (OCST, 0x01)), 0x01)) Return (0x03) } If (LEqual (CCQA, 0x00)) { Store (0x01, CCAQ) Store (0x0C, SMIS) Store (0xAB, SMIC) Store (0x01, FVCM) Store (0x01, SMIS) Store (0xAB, SMIC) Store (ShiftLeft (Subtract (Arg1, 0x04), 0x01), FIDV) Store (0x03, SMIS) Store (0xAB, SMIC) Store (0x03, Index (DerefOf (Index (OCST, 0x01)), 0x01)) Return (0x03) } If (LEqual (FVCM, 0x00)) { Store (0x01, FVCM) Store (0x01, SMIS) Store (0xAB, SMIC) Store (ShiftLeft (Subtract (Arg1, 0x04), 0x01), FIDV) Store (0x03, SMIS) Store (0xAB, SMIC) Store (0x03, Index (DerefOf (Index (OCST, 0x01)), 0x01)) Return (0x03) } Store (ShiftLeft (Subtract (Arg1, 0x04), 0x01), FIDV) Store (0x03, SMIS) Store (0xAB, SMIC) Store (0x03, Index (DerefOf (Index (OCST, 0x01)), 0x01)) Return (0x03) } Store (DerefOf (Index (OC03, 0x00)), Local1) If (LEqual (Arg0, Local1)) { If (LEqual (Arg2, 0x00)) { Store (0x03, Index (DerefOf (Index (OCST, 0x02)), 0x01)) Return (0x03) } If (LEqual (CCAQ, 0x00)) { Store (0x01, CCAQ) Store (0x0C, SMIS) Store (0xAB, SMIC) Store (Arg1, FVCM) Store (0x01, SMIS) Store (0xAB, SMIC) Store (0x03, Index (DerefOf (Index (OCST, 0x02)), 0x01)) Return (0x03) } Store (Arg1, FVCM) Store (0x01, SMIS) Store (0xAB, SMIC) Store (0x03, Index (DerefOf (Index (OCST, 0x02)), 0x01)) Return (0x03) } Store (DerefOf (Index (OC04, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (0x03, Index (DerefOf (Index (OCST, 0x03)), 0x01)) Return (0x03) } Store (DerefOf (Index (OC05, 0x00)), Local1) If (LEqual (Arg0, Local1)) { If (LEqual (Arg2, 0x00)) { If (LNot (LGreater (AITU, 0x03))) { Store (0x01, Index (DerefOf (Index (OCST, 0x04)), 0x01)) Return (0x01) } Store (0x03, Index (DerefOf (Index (OCST, 0x04)), 0x01)) Return (0x03) } If (LNot (LGreater (AITU, 0x03))) { Store (0x03, AITU) Store (0x02, SMIS) Store (0xAB, SMIC) Store (Arg1, OCPI) Store (0x05, SMIS) Store (0xAB, SMIC) If (LEqual (Arg1, 0x00)) { Store (0xCA, FSBF) Store (0x00, SMIS) Store (0xAB, SMIC) } If (LEqual (Arg1, 0x01)) { Store (0xCE, FSBF) Store (0x00, SMIS) Store (0xAB, SMIC) } If (LEqual (Arg1, 0x02)) { Store (0xD2, FSBF) Store (0x00, SMIS) Store (0xAB, SMIC) } If (LEqual (Arg1, 0x03)) { Store (0xD8, FSBF) Store (0x00, SMIS) Store (0xAB, SMIC) } If (LEqual (Arg1, 0x04)) { Store (0xDC, FSBF) Store (0x00, SMIS) Store (0xAB, SMIC) } Store (0xAA, SMIS) Store (0xAB, SMIC) Store (0x01, Index (DerefOf (Index (OCST, 0x04)), 0x01)) Return (0x01) } Store (0x03, AITU) Store (0x02, SMIS) Store (0xAB, SMIC) Store (Arg1, OCPI) Store (0x05, SMIS) Store (0xAB, SMIC) Store (0x03, Index (DerefOf (Index (OCST, 0x04)), 0x01)) Return (0x03) } Store (DerefOf (Index (OC06, 0x00)), Local1) If (LEqual (Arg0, Local1)) { If (LEqual (Arg2, 0x00)) { If (LNot (LGreater (AITU, 0x03))) { Store (0x03, Index (DerefOf (Index (OCST, 0x05)), 0x01)) Return (0x03) } If (LEqual (Arg1, 0x00)) { Store (0x03, Index (DerefOf (Index (OCST, 0x05)), 0x01)) Return (0x03) } Store (0x01, Index (DerefOf (Index (OCST, 0x05)), 0x01)) Return (0x01) } If (LNot (LGreater (AITU, 0x03))) { Store (0x04, AITU) Store (0x02, SMIS) Store (0xAB, SMIC) Store (Arg1, NOS1) Store (0x07, SMIS) Store (0xAB, SMIC) Store (0x03, Index (DerefOf (Index (OCST, 0x05)), 0x01)) Return (0x03) } If (LEqual (Arg1, 0x00)) { Store (0x01, AITU) Store (0x02, SMIS) Store (0xAB, SMIC) Store (Arg1, NOS1) Store (0x07, SMIS) Store (0xAB, SMIC) Store (0x03, Index (DerefOf (Index (OCST, 0x05)), 0x01)) Return (0x03) } Store (Arg1, NOS1) Store (0x07, SMIS) Store (0xAB, SMIC) Store (0x01, Index (DerefOf (Index (OCST, 0x05)), 0x01)) Return (0x01) } Store (DerefOf (Index (OC07, 0x00)), Local1) If (LEqual (Arg0, Local1)) { Store (0x01, Index (DerefOf (Index (OCST, 0x06)), 0x01)) Return (0x01) } Store (DerefOf (Index (OC08, 0x00)), Local1) If (LEqual (Arg0, Local1)) { If (LEqual (Arg2, 0x00)) { Store (0x01, Index (DerefOf (Index (OCST, 0x07)), 0x01)) Return (0x01) } Store (Arg1, CPUS) Store (0x09, SMIS) Store (0xAB, SMIC) Store (0xBB, SMIS) Store (0xAB, SMIC) Store (0x01, Index (DerefOf (Index (OCST, 0x07)), 0x01)) Return (0x01) } Store (DerefOf (Index (OC09, 0x00)), Local1) If (LEqual (Arg0, Local1)) { If (LEqual (Arg2, 0x00)) { Store (0x03, Index (DerefOf (Index (OCST, 0x08)), 0x01)) Return (0x03) } Store (CURF, FIDV) Store (0x03, SMIS) Store (0xAB, SMIC) Store (0x01, CCAQ) Store (0x0C, SMIS) Store (0xAB, SMIC) Store (0x01, FVCM) Store (0x01, SMIS) Store (0xAB, SMIC) Store (Add (Arg1, ShiftLeft (MAXV, 0x01)), OVID) Store (0x0B, SMIS) Store (0xAB, SMIC) Store (ShiftRight (Add (Arg1, ShiftLeft (MAXV, 0x01)), 0x01), VIDV) Store (0x04, SMIS) Store (0xAB, SMIC) Store (0x03, Index (DerefOf (Index (OCST, 0x08)), 0x01)) Return (0x03) } Store (DerefOf (Index (OC0A, 0x00)), Local1) If (LEqual (Arg0, Local1)) { If (LEqual (Arg2, 0x00)) { Store (0x01, Index (DerefOf (Index (OCST, 0x09)), 0x01)) Return (0x01) } If (LEqual (Arg1, DDRV)) { Store (0x01, Index (DerefOf (Index (OCST, 0x09)), 0x01)) Return (0x01) } Store (Arg1, DDRV) Store (0x08, SMIS) Store (0xAB, SMIC) Store (DerefOf (Index (DDRT, Arg1)), QDDR) Store (0x01, Index (DerefOf (Index (OCST, 0x09)), 0x01)) Return (0x01) } Store (DerefOf (Index (OC0B, 0x00)), Local1) If (LEqual (Arg0, Local1)) { If (LEqual (Arg2, 0x00)) { If (LNot (LEqual (Arg1, AITU))) { Store (0x03, Index (DerefOf (Index (OCST, 0x0A)), 0x01)) Return (0x03) } Store (0x01, Index (DerefOf (Index (OCST, 0x0A)), 0x01)) Return (0x01) } If (LNot (LEqual (Arg1, AITU))) { Store (Arg1, AITU) Store (0x02, SMIS) Store (0xAB, SMIC) Store (0x03, Index (DerefOf (Index (OCST, 0x0A)), 0x01)) Return (0x03) } Store (Arg1, AITU) Store (0x02, SMIS) Store (0xAB, SMIC) Store (0x01, Index (DerefOf (Index (OCST, 0x0A)), 0x01)) Return (0x01) } Store (DerefOf (Index (OC0C, 0x00)), Local1) If (LEqual (Arg0, Local1)) { If (LEqual (Arg2, 0x00)) { If (LEqual (Arg1, CCAQ)) { Store (0x01, Index (DerefOf (Index (OCST, 0x0B)), 0x01)) Return (0x01) } Store (0x03, Index (DerefOf (Index (OCST, 0x0B)), 0x01)) Return (0x03) } If (LEqual (Arg1, CCAQ)) { Store (0x01, Index (DerefOf (Index (OCST, 0x0B)), 0x01)) Return (0x01) } Store (Arg1, CCAQ) Store (0x09, SMIS) Store (0xAB, SMIC) Store (0x03, Index (DerefOf (Index (OCST, 0x0B)), 0x01)) Return (0x03) } } Method (GETM, 1, NotSerialized) { Multiply (Add (Arg0, 0x01), 0x03E8, Local0) Store (0xFFFF, Local6) Store (0x10, Local1) While (LNot (LGreater (Local1, 0x80))) { Store (0x10, Local2) While (LNot (LGreater (Local2, 0x80))) { Store (Divide (Multiply (Local2, 0x0005E9AC), Multiply (Local1, 0x04), ), Local3) Multiply (Local3, 0x02, Local3) If (LGreater (Local3, Local0)) { Store (Subtract (Local3, Local0), Local3) } Else { Store (Subtract (Local0, Local3), Local3) } If (LLess (Local3, Local6)) { Store (Local1, Local4) Store (Local2, Local5) Store (Local3, Local6) } Increment (Local2) } Increment (Local1) } ShiftLeft (Local5, 0x08, Local1) Or (Local1, Local4, Local6) And (Local6, 0xFFFF, Local6) Return (Local6) } } Device (\_SB.PCI0.PCIE) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x11) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0xE0000000, 0x10000000) }) Method (_CRS, 0, NotSerialized) { CreateDWordField (CRS, 0x04, BAS1) CreateDWordField (CRS, 0x08, LEN1) Store (\PCIB, BAS1) Store (\PCIL, LEN1) Return (CRS) } } Scope (\_PR) { Processor (CPU1, 0x01, 0x00005010, 0x06) { Name (_PCT, Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x00, 0x00, 0x0000000000000000) }, ResourceTemplate () { Register (FFixedHW, 0x00, 0x00, 0x0000000000000000) } }) Name (_PSS, Package (0x04) { Package (0x06) { 0x00000898, 0x000105B8, 0x00000064, 0x00000007, 0xE020298E, 0x0000018E }, Package (0x06) { 0x000007D0, 0x0000DAC0, 0x00000064, 0x00000007, 0xE0202A0C, 0x0000020C }, Package (0x06) { 0x00000708, 0x0000B3B0, 0x00000064, 0x00000007, 0xE0202A8A, 0x0000028A }, Package (0x06) { 0x000003E8, 0x00004E20, 0x00000064, 0x00000007, 0xE0202C82, 0x00000482 } }) Name (PSXG, Buffer (0x18) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) Name (PSXF, Buffer (0x18) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) Name (PSXE, Buffer (0x18) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) Name (PSXD, Buffer (0x18) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) Name (PSXC, Buffer (0x18) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) Name (PSXB, Buffer (0x18) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) Method (_PPC, 0, NotSerialized) { Return (0x00) } } Processor (CPU2, 0x02, 0x00000000, 0x00) { Name (APCT, Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x00, 0x00, 0x0000000000000000) }, ResourceTemplate () { Register (FFixedHW, 0x00, 0x00, 0x0000000000000000) } }) Name (APSS, Package (0x0A) { Package (0x06) { 0x09999999, 0x00099999, 0x00999999, 0x00999999, 0x99999999, 0x99999999 }, Package (0x06) { 0x09999999, 0x00099999, 0x00999999, 0x00999999, 0x99999999, 0x99999999 }, Package (0x06) { 0x09999999, 0x00099999, 0x00999999, 0x00999999, 0x99999999, 0x99999999 }, Package (0x06) { 0x09999999, 0x00099999, 0x00999999, 0x00999999, 0x99999999, 0x99999999 }, Package (0x06) { 0x09999999, 0x00099999, 0x00999999, 0x00999999, 0x99999999, 0x99999999 }, Package (0x06) { 0x09999999, 0x00099999, 0x00999999, 0x00999999, 0x99999999, 0x99999999 }, Package (0x06) { 0x09999999, 0x00099999, 0x00999999, 0x00999999, 0x99999999, 0x99999999 }, Package (0x06) { 0x09999999, 0x00099999, 0x00999999, 0x00999999, 0x99999999, 0x99999999 }, Package (0x06) { 0x09999999, 0x00099999, 0x00999999, 0x00999999, 0x99999999, 0x99999999 }, Package (0x06) { 0x09999999, 0x00099999, 0x00999999, 0x00999999, 0x99999999, 0x99999999 } }) Method (APPC, 0, NotSerialized) { Return (0x00) } } } Device (OMSC) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x00) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) }) Method (_CRS, 0, NotSerialized) { If (APIC) { CreateDWordField (CRS, 0x08, ML01) CreateDWordField (CRS, 0x04, MB01) CreateDWordField (CRS, 0x14, ML02) CreateDWordField (CRS, 0x10, MB02) Store (0xFEC00000, MB01) Store (0x1000, ML01) Store (0xFEE00000, MB02) Store (0x1000, ML02) } Return (CRS) } } Device (\_SB.RMEM) { Name (_HID, EisaId ("PNP0C01")) Name (_UID, 0x01) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, 0x000A0000) Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) Memory32Fixed (ReadOnly, 0x000E0000, 0x00020000) Memory32Fixed (ReadWrite, 0x00100000, 0x00000000) Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) }) Method (_CRS, 0, NotSerialized) { CreateDWordField (CRS, 0x10, BAS1) CreateDWordField (CRS, 0x14, LEN1) CreateDWordField (CRS, 0x1C, BAS2) CreateDWordField (CRS, 0x20, LEN2) CreateDWordField (CRS, 0x2C, LEN3) CreateDWordField (CRS, 0x34, BAS4) CreateDWordField (CRS, 0x38, LEN4) If (OSFL ()) {} Else { If (MG1B) { If (LGreater (MG1B, 0x000C0000)) { Store (0x000C0000, BAS1) Subtract (MG1B, BAS1, LEN1) } } Else { Store (0x000C0000, BAS1) Store (0x00020000, LEN1) } If (Add (MG1B, MG1L, Local0)) { Store (Local0, BAS2) Subtract (0x00100000, BAS2, LEN2) } } Subtract (MG2B, 0x00100000, LEN3) Add (MG2B, MG2L, BAS4) Subtract (0x00, BAS4, LEN4) Return (CRS) } } Device (PS2K) { Name (_HID, EisaId ("PNP0303")) Name (_CID, 0x0B03D041) Method (_STA, 0, NotSerialized) { ShiftLeft (0x01, 0x0A, Local0) If (And (IOST, Local0)) { Return (0x0F) } Return (0x00) } Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0060, 0x0060, 0x00, 0x01) IO (Decode16, 0x0064, 0x0064, 0x00, 0x01) IRQNoFlags () {1} }) } Method (PS2K._PRW, 0, NotSerialized) { Return (GPRW (0x10, 0x04)) } Device (PS2M) { Name (_HID, EisaId ("PNP0F03")) Name (_CID, 0x130FD041) Method (_STA, 0, NotSerialized) { ShiftLeft (0x01, 0x0C, Local0) If (And (IOST, Local0)) { Return (0x0F) } Return (0x00) } Name (CRS1, ResourceTemplate () { IRQNoFlags () {12} }) Name (CRS2, ResourceTemplate () { IO (Decode16, 0x0060, 0x0060, 0x00, 0x01) IO (Decode16, 0x0064, 0x0064, 0x00, 0x01) IRQNoFlags () {12} }) Method (_CRS, 0, NotSerialized) { ShiftLeft (0x01, 0x0A, Local0) If (And (IOST, Local0)) { Return (CRS1) } Else { Return (CRS2) } } } Method (PS2M._PRW, 0, NotSerialized) { Return (GPRW (0x10, 0x04)) } Device (UAR1) { Name (_UID, 0x01) Method (_HID, 0, NotSerialized) { Return (UHID (0x00)) } Method (_STA, 0, NotSerialized) { Return (DSTA (0x00)) } Method (_DIS, 0, NotSerialized) { DCNT (0x00, 0x00) } Method (_CRS, 0, NotSerialized) { Return (DCRS (0x00, 0x01)) } Method (_SRS, 1, NotSerialized) { DSRS (Arg0, 0x00) } Method (_PRS, 0, NotSerialized) { Return (CMPR) } Name (CMPR, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08) IRQNoFlags () {4} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x02F8, 0x02F8, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x03E8, 0x03E8, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x02E8, 0x02E8, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } StartDependentFnNoPri () { IO (Decode16, 0x02F8, 0x02F8, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } StartDependentFnNoPri () { IO (Decode16, 0x03E8, 0x03E8, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } StartDependentFnNoPri () { IO (Decode16, 0x02E8, 0x02E8, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } EndDependentFn () }) } Method (UAR1._PRW, 0, NotSerialized) { Return (GPRW (0x03, 0x04)) } Device (SIOR) { Name (_HID, EisaId ("PNP0C02")) Method (_UID, 0, NotSerialized) { Return (SPIO) } Name (CRS, ResourceTemplate () { IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) }) Method (_CRS, 0, NotSerialized) { If (LAnd (LNot (LEqual (SPIO, 0x03F0)), LGreater (SPIO, 0xF0))) { CreateWordField (CRS, 0x02, GP10) CreateWordField (CRS, 0x04, GP11) CreateByteField (CRS, 0x07, GPL1) Store (SPIO, GP10) Store (SPIO, GP11) Store (0x02, GPL1) } If (IOPB) { CreateWordField (CRS, 0x0A, GP20) CreateWordField (CRS, 0x0C, GP21) CreateByteField (CRS, 0x0F, GPL2) Store (IOPB, GP20) Store (IOPB, GP21) Store (IOPL, GPL2) } If (IOEB) { CreateWordField (CRS, 0x12, GP30) CreateWordField (CRS, 0x14, GP31) CreateByteField (CRS, 0x17, GPL3) Store (IOEB, GP30) Store (IOEB, GP31) Store (IOEL, GPL3) } If (IOGB) { CreateWordField (CRS, 0x1A, GP40) CreateWordField (CRS, 0x1C, GP41) CreateByteField (CRS, 0x1F, GPL4) Store (IOGB, GP40) Store (IOGB, GP41) Store (IOGL, GPL4) } If (IODB) { CreateWordField (CRS, 0x22, GP50) CreateWordField (CRS, 0x24, GP51) CreateByteField (CRS, 0x27, GPL5) Store (IODB, GP50) Store (IODB, GP51) Store (IODL, GPL5) } Return (CRS) } } Name (DCAT, Package (0x16) { 0x01, 0x02, 0x03, 0x00, 0xFF, 0x08, 0xFF, 0xFF, 0x09, 0xFF, 0x05, 0x04, 0xFF, 0xFF, 0xFF, 0xFF, 0x0A, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF }) Name (IKEY, Package (0x02) { Package (0x04) { 0x87, 0x01, 0x55, 0x55 }, Package (0x04) { 0x87, 0x01, 0x55, 0xAA } }) Name (KBFG, 0x01) Name (MSFG, 0x01) Name (UR1F, 0x01) Method (ENFG, 1, NotSerialized) { Store (0x00, Local1) If (LEqual (SPIO, 0x2E)) { Store (0x00, Local1) } If (LEqual (SPIO, 0x4E)) { Store (0x01, Local1) } Store (0x00, Local0) While (LNot (LEqual (Local0, 0x04))) { Store (DerefOf (Index (DerefOf (Index (IKEY, Local1)), Local0)), INDX) Increment (Local0) } Store (Arg0, LDN) } Method (ENTR, 0, NotSerialized) { Store (0x87, INDX) Store (0x01, INDX) Store (0x55, INDX) If (LEqual (SPIO, 0x2E)) { Store (0x55, INDX) } Else { Store (0xAA, INDX) } } Method (EXFG, 0, NotSerialized) { Store (0x02, INDX) Store (0x02, DATA) } Method (LPTM, 1, NotSerialized) { ENFG (CGLD (Arg0)) And (OPT0, 0x02, Local0) EXFG () Return (Local0) } Method (UHID, 1, NotSerialized) { ENFG (CGLD (Arg0)) And (OPT0, 0x70, Local0) EXFG () If (Local0) { Return (0x1005D041) } Return (0x0105D041) } Method (ORF0, 1, NotSerialized) { ENTR () Or (OPT0, Arg0, OPT0) EXFG () } Method (ORF1, 1, NotSerialized) { ENTR () Or (OPT1, Arg0, OPT1) EXFG () } Method (ORF2, 1, NotSerialized) { ENTR () Or (OPT2, Arg0, OPT2) EXFG () } Method (ANF0, 1, NotSerialized) { ENTR () And (OPT0, Arg0, OPT0) EXFG () } Method (ANF2, 1, NotSerialized) { ENTR () And (OPT2, Arg0, OPT2) EXFG () } Method (ANF4, 1, NotSerialized) { ENTR () And (OPT4, Arg0, OPT4) EXFG () } Method (STF0, 1, NotSerialized) { ENTR () Store (Arg0, OPT0) EXFG () } Method (STF1, 1, NotSerialized) { ENTR () Store (Arg0, OPT1) EXFG () } Method (SIOS, 1, NotSerialized) { Store ("SIOS", Debug) Store (0x00, GP10) If (LLess (Arg0, 0x05)) { ENFG (0x04) Store (0x01, ACTR) EXFG () ANF4 (0xFC) ORF1 (0x18) If (KBFG) { ORF0 (0x08) } Else { ANF0 (0xF7) } If (MSFG) { ORF0 (0x10) } Else { ANF0 (0xEF) ENFG (0x06) Store (0x00, ACTR) EXFG () } ENFG (0x04) ANF2 (0xF0) ENFG (0x07) And (OPF9, 0xFE, OPF9) And (OPC0, 0xFE, OPC0) And (OPC3, 0xFE, OPC3) And (OP29, 0xEF, OP29) EXFG () } Else { ENFG (0x07) And (OPC0, 0x00, OPC0) Or (OPC0, 0x01, OPC0) And (OPC3, 0x00, OPC3) Or (OPC3, 0x01, OPC3) Or (OPF9, 0x01, OPF9) And (OP29, 0xEF, OP29) EXFG () } } Method (SIOW, 1, NotSerialized) { Store (0x01, GP10) Store (0x01, GP40) Store ("SIOW", Debug) ENFG (0x04) Store (0x00, ACTR) EXFG () STF0 (0x00) STF1 (0xFF) ENFG (0x07) Or (OP29, 0x10, OP29) Or (OPC0, 0x01, OPC0) Or (OPC3, 0x01, OPC3) EXFG () ENFG (0x05) Or (ACTR, 0x01, ACTR) EXFG () ENFG (0x06) Or (ACTR, 0x01, ACTR) EXFG () ENFG (0x04) Store (0x01, ACTR) EXFG () } Method (SIOH, 0, NotSerialized) { Store ("SIOH", Debug) } OperationRegion (IOID, SystemIO, SPIO, 0x02) Field (IOID, ByteAcc, NoLock, Preserve) { INDX, 8, DATA, 8 } IndexField (INDX, DATA, ByteAcc, NoLock, Preserve) { Offset (0x07), LDN, 8, Offset (0x29), OP29, 8, Offset (0x30), ACTR, 8, Offset (0x60), IOAH, 8, IOAL, 8, IOH2, 8, IOL2, 8, Offset (0x70), INTR, 8, Offset (0x74), DMCH, 8, Offset (0xC0), OPC0, 8, OPC1, 8, OPC2, 8, OPC3, 8, Offset (0xF0), OPT0, 8, OPT1, 8, OPT2, 8, OPT3, 8, OPT4, 8, Offset (0xF8), OPF8, 8, OPF9, 8, OPFA, 8, OPFB, 8 } Method (PS2K._PSW, 1, NotSerialized) { If (Arg0) { Store (0x01, KBFG) } Else { Store (0x00, KBFG) } } Method (PS2M._PSW, 1, NotSerialized) { If (Arg0) { Store (0x01, MSFG) } Else { Store (0x00, MSFG) } } Method (CGLD, 1, NotSerialized) { Return (DerefOf (Index (DCAT, Arg0))) } Method (DSTA, 1, NotSerialized) { ENFG (CGLD (Arg0)) Store (ACTR, Local0) EXFG () If (LEqual (Local0, 0xFF)) { Return (0x00) } And (Local0, 0x01, Local0) Or (IOST, ShiftLeft (Local0, Arg0), IOST) If (Local0) { Return (0x0F) } Else { If (And (ShiftLeft (0x01, Arg0), IOST)) { Return (0x0D) } Else { Return (0x00) } } } Method (DCNT, 2, NotSerialized) { ENFG (CGLD (Arg0)) ShiftLeft (IOAH, 0x08, Local1) Or (IOAL, Local1, Local1) RRIO (Arg0, Arg1, Local1, 0x08) If (LAnd (LLess (DMCH, 0x04), LNot (LEqual (And (DMCH, 0x03, Local1), 0x00)))) { RDMA (Arg0, Arg1, Increment (Local1)) } Store (Arg1, ACTR) EXFG () } Name (CRS1, ResourceTemplate () { IO (Decode16, 0x0000, 0x0000, 0x01, 0x00) IRQNoFlags () {} DMA (Compatibility, NotBusMaster, Transfer8) {} }) CreateWordField (CRS1, 0x09, IRQM) CreateByteField (CRS1, 0x0C, DMAM) CreateWordField (CRS1, 0x02, IO11) CreateWordField (CRS1, 0x04, IO12) CreateByteField (CRS1, 0x07, LEN1) Name (CRS2, ResourceTemplate () { IO (Decode16, 0x0000, 0x0000, 0x01, 0x00) IO (Decode16, 0x0000, 0x0000, 0x01, 0x00) IRQNoFlags () {6} DMA (Compatibility, NotBusMaster, Transfer8) {2} }) CreateWordField (CRS2, 0x11, IRQE) CreateByteField (CRS2, 0x14, DMAE) CreateWordField (CRS2, 0x02, IO21) CreateWordField (CRS2, 0x04, IO22) CreateByteField (CRS2, 0x07, LEN2) CreateWordField (CRS2, 0x0A, IO31) CreateWordField (CRS2, 0x0C, IO32) CreateByteField (CRS2, 0x0F, LEN3) Method (DCRS, 2, NotSerialized) { ENFG (CGLD (Arg0)) ShiftLeft (IOAH, 0x08, IO11) Or (IOAL, IO11, IO11) Store (IO11, IO12) Subtract (FindSetRightBit (IO11), 0x01, Local0) ShiftLeft (0x01, Local0, LEN1) If (INTR) { ShiftLeft (0x01, INTR, IRQM) } Else { Store (0x00, IRQM) } If (LOr (LGreater (DMCH, 0x03), LEqual (Arg1, 0x00))) { Store (0x00, DMAM) } Else { And (DMCH, 0x03, Local1) ShiftLeft (0x01, Local1, DMAM) } EXFG () Return (CRS1) } Method (DSRS, 2, NotSerialized) { CreateWordField (Arg0, 0x09, IRQM) CreateByteField (Arg0, 0x0C, DMAM) CreateWordField (Arg0, 0x02, IO11) ENFG (CGLD (Arg1)) And (IO11, 0xFF, IOAL) ShiftRight (IO11, 0x08, IOAH) If (IRQM) { FindSetRightBit (IRQM, Local0) Subtract (Local0, 0x01, INTR) } Else { Store (0x00, INTR) } If (DMAM) { FindSetRightBit (DMAM, Local0) Subtract (Local0, 0x01, DMCH) } Else { Store (0x04, DMCH) } EXFG () DCNT (Arg1, 0x01) } OperationRegion (GPIO, SystemIO, IO1B, 0x04) Field (GPIO, ByteAcc, NoLock, Preserve) { GP10, 1, GP11, 1, GP12, 1, GP13, 1, GO14, 1, GO15, 1, GO16, 1, GO17, 1, GP20, 1, GP21, 1, GP22, 1, GP23, 1, GO24, 1, GO25, 1, GO26, 1, GO27, 1, GP30, 1, GP31, 1, GP32, 1, GP33, 1, GO34, 1, GO35, 1, GO36, 1, GO37, 1, GP40, 1, GP41, 1, GP42, 1, GP43, 1, GO44, 1, GO45, 1, GO46, 1, GO47, 1 } } Device (NSMB) { Name (_ADR, 0x000A0001) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } } Device (USB0) { Name (_ADR, 0x000B0000) Name (_S1D, 0x01) Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), 0x01), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0D, 0x04)) } } Device (USB2) { Name (_ADR, 0x000B0001) Name (_S1D, 0x01) Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), 0x01), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x05, 0x04)) } } Device (NMAC) { Name (_ADR, 0x00130000) Name (_PRW, Package (0x02) { 0x0B, 0x05 }) Scope (\_GPE) { Method (_L0B, 0, NotSerialized) { Notify (\_SB.PCI0.NMAC, 0x02) Notify (\_SB.PWRB, 0x02) } } } Device (IDE0) { Name (_ADR, 0x000F0000) Name (PTS0, 0x00) Name (SID0, 0x00) Name (SID1, 0x00) Name (SID2, 0x00) Name (SID3, 0x00) Name (SID4, 0x00) Name (SID5, 0x00) OperationRegion (IRQM, SystemIO, 0x21, 0x01) Field (IRQM, ByteAcc, NoLock, Preserve) { IR0M, 1 } Name (REGF, 0x01) Method (_REG, 2, NotSerialized) { If (LEqual (Arg0, 0x02)) { Store (Arg1, REGF) } } OperationRegion (A090, PCI_Config, 0x50, 0x18) Field (A090, DWordAcc, NoLock, Preserve) { ID20, 16, Offset (0x08), IDTS, 16, IDTP, 16, ID22, 32, UMSS, 16, UMSP, 16 } Name (TIM0, Package (0x07) { Package (0x05) { 0x3C, 0x78, 0xB4, 0xF0, 0x0384 }, Package (0x05) { 0x11, 0x20, 0x22, 0x47, 0xA8 }, Package (0x07) { 0x78, 0x5A, 0x3C, 0x2D, 0x1E, 0x14, 0x0F }, Package (0x05) { 0x05, 0x04, 0x03, 0x02, 0x00 }, Package (0x04) { 0x02, 0x01, 0x00, 0x00 }, Package (0x08) { 0x02, 0x01, 0x00, 0x00, 0x03, 0x04, 0x05, 0x06 }, Package (0x07) { 0x02, 0x01, 0x00, 0x04, 0x05, 0x06, 0x07 } }) Name (TMD0, Buffer (0x14) {}) CreateDWordField (TMD0, 0x00, PIO0) CreateDWordField (TMD0, 0x04, DMA0) CreateDWordField (TMD0, 0x08, PIO1) CreateDWordField (TMD0, 0x0C, DMA1) CreateDWordField (TMD0, 0x10, CHNF) OperationRegion (CFG2, PCI_Config, 0x58, 0x0C) Field (CFG2, DWordAcc, NoLock, Preserve) { SSPT, 8, SMPT, 8, PSPT, 8, PMPT, 8, SSAS, 2, SMAS, 2, PSAS, 2, PMAS, 2, Offset (0x06), SDDR, 4, SDDA, 4, PDDR, 4, PDDA, 4, SSUT, 3, , 3, SSUE, 2, SMUT, 3, , 3, SMUE, 2, PSUT, 3, , 3, PSUE, 2, PMUT, 3, , 3, PMUE, 2 } Name (GMPT, 0x00) Name (GMUE, 0x00) Name (GMUT, 0x00) Name (GSPT, 0x00) Name (GSUE, 0x00) Name (GSUT, 0x00) Device (CHN0) { Name (_ADR, 0x00) Method (_GTM, 0, NotSerialized) { Store ("GTM_CHN0", Debug) Return (GTM (PMPT, PMUE, PMUT, PSPT, PSUE, PSUT)) } Method (_STM, 3, NotSerialized) { Store ("STM_CHN0", Debug) Store (Arg0, Debug) Store (Arg0, TMD0) Store (PMPT, GMPT) Store (PMUE, GMUE) Store (PMUT, GMUT) Store (PSPT, GSPT) Store (PSUE, GSUE) Store (PSUT, GSUT) STM () Store (GMPT, PMPT) Store (GMUE, PMUE) Store (GMUT, PMUT) Store (GSPT, PSPT) Store (GSUE, PSUE) Store (GSUT, PSUT) Store (GTF (0x00, Arg1), ATA0) Store (GTF (0x01, Arg2), ATA1) } Device (DRV0) { Name (_ADR, 0x00) Method (_GTF, 0, NotSerialized) { Store ("_GTF_CHN0_DRV0", Debug) Return (RATA (ATA0)) } } Device (DRV1) { Name (_ADR, 0x01) Method (_GTF, 0, NotSerialized) { Store ("_GTF_CHN0_DRV1", Debug) Return (RATA (ATA1)) } } } Device (CHN1) { Name (_ADR, 0x01) Method (_GTM, 0, NotSerialized) { Store ("GTM_CHN1", Debug) Return (GTM (SMPT, SMUE, SMUT, SSPT, SSUE, SSUT)) } Method (_STM, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg0, TMD0) Store (SMPT, GMPT) Store (SMUE, GMUE) Store (SMUT, GMUT) Store (SSPT, GSPT) Store (SSUE, GSUE) Store (SSUT, GSUT) STM () Store (GMPT, SMPT) Store (GMUE, SMUE) Store (GMUT, SMUT) Store (GSPT, SSPT) Store (GSUE, SSUE) Store (GSUT, SSUT) Store (GTF (0x00, Arg1), ATA2) Store (GTF (0x01, Arg2), ATA3) } Device (DRV0) { Name (_ADR, 0x00) Method (_GTF, 0, NotSerialized) { Store ("_GTF_CHN1_DRV0", Debug) Return (RATA (ATA2)) } } Device (DRV1) { Name (_ADR, 0x01) Method (_GTF, 0, NotSerialized) { Store ("_GTF_CHN1_DRV1", Debug) Return (RATA (ATA3)) } } } Method (DRMP, 0, NotSerialized) { ShiftRight (CPB0, 0x04, Local1) And (Local1, 0x0F, Local0) Return (Local0) } Method (GTM, 6, Serialized) { Store (Ones, PIO0) Store (Ones, PIO1) Store (Ones, DMA0) Store (Ones, DMA1) Store (0x10, CHNF) If (REGF) {} Else { Return (TMD0) } If (LEqual (PTS0, 0x01)) { If (OSFL ()) { Store (0x01, IR0M) } } Store (Match (DerefOf (Index (TIM0, 0x01)), MEQ, Arg0, MTR, 0x00, 0x00), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x00)), Local6)), Local7) Store (Local7, DMA0) Store (Local7, PIO0) Store (Match (DerefOf (Index (TIM0, 0x01)), MEQ, Arg3, MTR, 0x00, 0x00), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x00)), Local6)), Local7) Store (Local7, DMA1) Store (Local7, PIO1) If (Arg1) { Store (DerefOf (Index (DerefOf (Index (TIM0, 0x05)), Arg2)), Local5) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local5)), DMA0) Or (CHNF, 0x01, CHNF) } If (Arg4) { Store (DerefOf (Index (DerefOf (Index (TIM0, 0x05)), Arg5)), Local5) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local5)), DMA1) Or (CHNF, 0x04, CHNF) } Store (TMD0, Debug) Return (TMD0) } Method (STM, 0, Serialized) { If (REGF) {} Else { Return (0x00) } If (PTS0) { Store (SID0, ID20) Store (SID1, IDTS) Store (SID2, IDTP) Store (SID3, ID22) Store (SID4, UMSS) Store (SID5, UMSP) } Else { Store (ID20, SID0) Store (IDTS, SID1) Store (IDTP, SID2) Store (ID22, SID3) Store (UMSS, SID4) Store (UMSP, SID5) } Store (0x00, PTS0) Store (0x00, GMUE) Store (0x00, GMUT) Store (0x00, GSUE) Store (0x00, GSUT) If (And (CHNF, 0x01)) { Store (Match (DerefOf (Index (TIM0, 0x02)), MLE, DMA0, MTR, 0x00, 0x00), Local0) If (LGreater (Local0, 0x06)) { Store (0x06, Local0) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0)), GMUT) Or (GMUE, 0x03, GMUE) } Else { If (Or (LEqual (PIO0, Ones), LEqual (PIO0, 0x00))) { If (And (LLess (DMA0, Ones), LGreater (DMA0, 0x00))) { Store (DMA0, PIO0) } } } If (And (CHNF, 0x04)) { Store (Match (DerefOf (Index (TIM0, 0x02)), MLE, DMA1, MTR, 0x00, 0x00), Local0) If (LGreater (Local0, 0x06)) { Store (0x06, Local0) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0)), GSUT) Or (GSUE, 0x03, GSUE) } Else { If (Or (LEqual (PIO1, Ones), LEqual (PIO1, 0x00))) { If (And (LLess (DMA1, Ones), LGreater (DMA1, 0x00))) { Store (DMA1, PIO1) } } } And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIO0, MTR, 0x00, 0x00), 0x07, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x01)), Local0)), Local1) Store (Local1, GMPT) And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIO1, MTR, 0x00, 0x00), 0x07, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x01)), Local0)), Local1) Store (Local1, GSPT) Return (0x00) } Name (AT01, Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xEF }) Name (AT02, Buffer (0x07) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90 }) Name (AT03, Buffer (0x07) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6 }) Name (AT04, Buffer (0x07) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x91 }) Name (ATA0, Buffer (0x1D) {}) Name (ATA1, Buffer (0x1D) {}) Name (ATA2, Buffer (0x1D) {}) Name (ATA3, Buffer (0x1D) {}) Name (ATAB, Buffer (0x1D) {}) CreateByteField (ATAB, 0x00, CMDC) Method (GTFB, 3, Serialized) { Multiply (CMDC, 0x38, Local0) Add (Local0, 0x08, Local1) CreateField (ATAB, Local1, 0x38, CMDX) Multiply (CMDC, 0x07, Local0) CreateByteField (ATAB, Add (Local0, 0x02), A001) CreateByteField (ATAB, Add (Local0, 0x06), A005) Store (Arg0, CMDX) Store (Arg1, A001) Store (Arg2, A005) Increment (CMDC) } Method (GTF, 2, Serialized) { Store ("GTF_Entry", Debug) Store (Arg1, Debug) Store (0x00, CMDC) Name (ID49, 0x0C00) Name (ID59, 0x00) Name (ID53, 0x04) Name (ID63, 0x0F00) Name (ID88, 0x0F00) Name (IRDY, 0x01) Name (PIOT, 0x00) Name (DMAT, 0x00) If (LEqual (SizeOf (Arg1), 0x0200)) { CreateWordField (Arg1, 0x62, IW49) Store (IW49, ID49) CreateWordField (Arg1, 0x6A, IW53) Store (IW53, ID53) CreateWordField (Arg1, 0x7E, IW63) Store (IW63, ID63) CreateWordField (Arg1, 0x76, IW59) Store (IW59, ID59) CreateWordField (Arg1, 0xB0, IW88) Store (IW88, ID88) } Store (0xA0, Local7) If (Arg0) { Store (0xB0, Local7) And (CHNF, 0x08, IRDY) If (And (CHNF, 0x10)) { Store (PIO1, PIOT) } Else { Store (PIO0, PIOT) } If (And (CHNF, 0x04)) { If (And (CHNF, 0x10)) { Store (DMA1, DMAT) } Else { Store (DMA0, DMAT) } } } Else { And (CHNF, 0x02, IRDY) Store (PIO0, PIOT) If (And (CHNF, 0x01)) { Store (DMA0, DMAT) } } If (LAnd (LAnd (And (ID53, 0x04), And (ID88, 0xFF00)), DMAT)) { Store (Match (DerefOf (Index (TIM0, 0x02)), MLE, DMAT, MTR, 0x00, 0x00), Local1) If (LGreater (Local1, 0x06)) { Store (0x06, Local1) } GTFB (AT01, Or (0x40, Local1), Local7) } Else { If (LAnd (And (ID63, 0xFF00), PIOT)) { And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIOT, MTR, 0x00, 0x00), 0x03, Local0) Or (0x20, DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), Local1) GTFB (AT01, Local1, Local7) } } If (IRDY) { And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIOT, MTR, 0x00, 0x00), 0x07, Local0) Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local0)), Local1) GTFB (AT01, Local1, Local7) } Else { If (And (ID49, 0x0400)) { GTFB (AT01, 0x01, Local7) } } If (LAnd (And (ID59, 0x0100), And (ID59, 0xFF))) { GTFB (AT03, And (ID59, 0xFF), Local7) } Store ("ATAB_GTF", Debug) Store (ATAB, Debug) Return (ATAB) } Method (RATA, 1, NotSerialized) { CreateByteField (Arg0, 0x00, CMDN) Multiply (CMDN, 0x38, Local0) CreateField (Arg0, 0x08, Local0, RETB) Store (RETB, Debug) Return (RETB) } } Device (ATA0) { Name (_ADR, 0x00100000) Device (PRI0) { Name (_ADR, 0x00) Name (SPTM, Buffer (0x14) { 0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x13, 0x00, 0x00, 0x00 }) Method (_GTM, 0, NotSerialized) { Return (SPTM) } Method (_STM, 3, NotSerialized) { Store (Arg0, SPTM) } Device (MAST) { Name (_ADR, 0x00) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x46, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Return (Local0) } } } Device (SEC0) { Name (_ADR, 0x01) Name (SSTM, Buffer (0x14) { 0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x13, 0x00, 0x00, 0x00 }) Method (_GTM, 0, NotSerialized) { Return (SSTM) } Method (_STM, 3, NotSerialized) { Store (Arg0, SSTM) } Device (MAST) { Name (_ADR, 0x00) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x46, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Return (Local0) } } } Method (DRMP, 0, NotSerialized) { Store (0x0C, Local0) If (LEqual (_ADR, 0x00100000)) { Store (0x08, Local0) } ShiftRight (CPB0, Local0, Local1) And (Local1, 0x0F, Local0) Return (Local0) } } Device (ATA1) { Name (_ADR, 0x00110000) Device (PRI0) { Name (_ADR, 0x00) Name (SPTM, Buffer (0x14) { 0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x13, 0x00, 0x00, 0x00 }) Method (_GTM, 0, NotSerialized) { Return (SPTM) } Method (_STM, 3, NotSerialized) { Store (Arg0, SPTM) } Device (MAST) { Name (_ADR, 0x00) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x46, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Return (Local0) } } } Device (SEC0) { Name (_ADR, 0x01) Name (SSTM, Buffer (0x14) { 0x78, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x13, 0x00, 0x00, 0x00 }) Method (_GTM, 0, NotSerialized) { Return (SSTM) } Method (_STM, 3, NotSerialized) { Store (Arg0, SSTM) } Device (MAST) { Name (_ADR, 0x00) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x46, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Return (Local0) } } } Method (DRMP, 0, NotSerialized) { Store (0x0C, Local0) If (LEqual (_ADR, 0x00100000)) { Store (0x08, Local0) } ShiftRight (CPB0, Local0, Local1) And (Local1, 0x0F, Local0) Return (Local0) } } Device (PB2P) { Name (_ADR, 0x00120000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x00, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR01) } Return (PR01) } } Device (MC97) { Name (_ADR, 0x000D0001) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x07, 0x04)) } } Device (PCE0) { Name (_ADR, 0x00020000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x11, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR02) } Return (PR02) } } Device (PCE1) { Name (_ADR, 0x00030000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x11, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR03) } Return (PR03) } } Device (PCE2) { Name (_ADR, 0x00040000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x11, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR04) } Return (PR04) } } Device (PCE3) { Name (_ADR, 0x00170000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x11, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR05) } Return (PR05) } } Device (PCE4) { Name (_ADR, 0x00160000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x11, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR06) } Return (PR06) } } Device (PCE5) { Name (_ADR, 0x00150000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x11, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR07) } Return (PR07) } } } Scope (\_GPE) { Method (_L10, 0, NotSerialized) { \_SB.PCI0.SBRG.SIOH () Notify (\_SB.PWRB, 0x02) } Method (_L03, 0, NotSerialized) { \_SB.PCI0.SBRG.SIOH () Notify (\_SB.PWRB, 0x02) } Method (_L09, 0, NotSerialized) { Notify (\_SB.PCI0.NSMB, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L0D, 0, NotSerialized) { Notify (\_SB.PCI0.USB0, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L05, 0, NotSerialized) { Notify (\_SB.PCI0.USB2, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L00, 0, NotSerialized) { Notify (\_SB.PCI0.PB2P, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L07, 0, NotSerialized) { Notify (\_SB.PCI0.MC97, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L11, 0, NotSerialized) { Notify (\_SB.PCI0.PCE0, 0x02) Notify (\_SB.PCI0.PCE1, 0x02) Notify (\_SB.PCI0.PCE2, 0x02) Notify (\_SB.PCI0.PCE3, 0x02) Notify (\_SB.PCI0.PCE4, 0x02) Notify (\_SB.PCI0.PCE5, 0x02) Notify (\_SB.PWRB, 0x02) } } Device (PWRB) { Name (_HID, EisaId ("PNP0C0C")) Name (_UID, 0xAA) Name (_STA, 0x0B) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x03, 0x04)) } } } OperationRegion (\_SB.PCI0.SBRG.PIMC, PCI_Config, 0x7C, 0x0C) Field (\_SB.PCI0.SBRG.PIMC, ByteAcc, NoLock, Preserve) { PIRA, 4, PIRB, 4, PIRC, 4, PIRD, 4, , 4, PIRF, 4, PIRG, 4, Offset (0x05), PIRM, 4, PIU2, 4, Offset (0x07), SIID, 4, PIID, 4, PIU0, 4, Offset (0x09), PILN, 4, Offset (0x0A), PAUI, 4, PIMO, 4, PR0E, 4, PR0F, 4 } Scope (\_SB) { Name (BUFA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {15} }) CreateWordField (BUFA, 0x01, ICRS) Method (LSTA, 1, NotSerialized) { If (Arg0) { Return (0x0B) } Else { Return (0x09) } } Method (LPRS, 2, NotSerialized) { If (PICM) { Return (Arg1) } Else { Return (Arg0) } } Method (LCRS, 1, NotSerialized) { If (PICM) { Name (BUFB, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveLow, Shared) { 0x00000011, } }) CreateByteField (BUFB, 0x05, AIRQ) Store (Arg0, AIRQ) If (LEqual (Arg0, 0x01)) { Store (0x11, AIRQ) } If (LEqual (Arg0, 0x02)) { Store (0x12, AIRQ) } If (LEqual (Arg0, 0x08)) { Store (0x10, AIRQ) } If (LEqual (Arg0, 0x0D)) { Store (0x13, AIRQ) } Return (BUFB) } Else { ShiftLeft (0x01, Arg0, ICRS) Return (BUFA) } } Method (LCRO, 1, NotSerialized) { If (PICM) { Name (BUFB, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveLow, Shared) { 0x00000014, } }) CreateByteField (BUFB, 0x05, AIRQ) Store (Arg0, AIRQ) If (LEqual (Arg0, 0x01)) { Store (0x17, AIRQ) } If (LEqual (Arg0, 0x02)) { Store (0x16, AIRQ) } If (LEqual (Arg0, 0x08)) { Store (0x14, AIRQ) } If (LEqual (Arg0, 0x0D)) { Store (0x15, AIRQ) } Return (BUFB) } Else { ShiftLeft (0x01, Arg0, ICRS) Return (BUFA) } } Method (LSRS, 1, NotSerialized) { If (PICM) { CreateByteField (Arg0, 0x05, SAIR) Store (SAIR, Local0) If (LEqual (Local0, 0x10)) { Store (0x08, Local0) } If (LEqual (Local0, 0x11)) { Store (0x01, Local0) } If (LEqual (Local0, 0x12)) { Store (0x02, Local0) } If (LEqual (Local0, 0x13)) { Store (0x0D, Local0) } Return (Local0) } Else { CreateWordField (Arg0, 0x01, ISRS) FindSetRightBit (ISRS, Local0) Return (Decrement (Local0)) } } Method (LSRO, 1, NotSerialized) { If (PICM) { CreateByteField (Arg0, 0x05, SAIR) Store (SAIR, Local0) If (LEqual (Local0, 0x14)) { Store (0x08, Local0) } If (LEqual (Local0, 0x15)) { Store (0x0D, Local0) } If (LEqual (Local0, 0x16)) { Store (0x02, Local0) } If (LEqual (Local0, 0x17)) { Store (0x01, Local0) } Return (Local0) } Else { CreateWordField (Arg0, 0x01, ISRS) FindSetRightBit (ISRS, Local0) Return (Decrement (Local0)) } } Device (LNKA) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x01) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRA)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (PRSA, RSIR)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIRA) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRA)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRA) } } Device (LNKB) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x02) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRB)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (PRSB, RSIR)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIRB) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRB)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRB) } } Device (LNKC) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x03) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRC)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (PRSC, RSIR)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIRC) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRC)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRC) } } Device (LNKD) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x04) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRD)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (PRSD, RSIR)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIRD) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRD)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRD) } } Device (LUB0) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x05) Method (_STA, 0, NotSerialized) { Return (LSTA (PIU0)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSB0, RSII)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIU0) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PIU0)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PIU0) } } Device (LUB2) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x07) Method (_STA, 0, NotSerialized) { Return (LSTA (PIU2)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSB2, RSII)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIU2) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PIU2)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PIU2) } } Device (LMAC) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x08) Method (_STA, 0, NotSerialized) { Return (LSTA (PILN)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSAC, RSII)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PILN) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PILN)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PILN) } } Device (LACI) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x09) Method (_STA, 0, NotSerialized) { Return (LSTA (PAUI)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSCI, RSII)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PAUI) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PAUI)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PAUI) } } Device (LMC9) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x0A) Method (_STA, 0, NotSerialized) { Return (LSTA (PIMO)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSC9, RSII)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIMO) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PIMO)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PIMO) } } Device (LSMB) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x0B) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRM)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSMB, RSII)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIRM) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PIRM)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PIRM) } } Device (LSA0) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x0C) Method (_STA, 0, NotSerialized) { Return (LSTA (PIID)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSA0, RSII)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIID) Store (0x00, PIRG) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PIID)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), Local0) Store (Local0, PIID) Store (Local0, PIRG) } } Device (LSA1) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x0D) Method (_STA, 0, NotSerialized) { Return (LSTA (SIID)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSA1, RSII)) } Method (_DIS, 0, NotSerialized) { Store (0x00, SIID) Store (0x00, PIRF) } Method (_CRS, 0, NotSerialized) { Return (LCRO (SIID)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), Local0) Store (Local0, SIID) Store (Local0, PIRF) } } Device (LATA) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x0E) Method (_STA, 0, NotSerialized) { Return (LSTA (PR0E)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSTA, RSII)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PR0E) Store (0x00, PR0F) } Method (_CRS, 0, NotSerialized) { If (OSFL ()) { Return (0x00) } Else { Return (LCRO (PR0E)) } } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PR0E) Store (LSRO (Arg0), PR0F) } } } Scope (\_SB) { Name (XCPD, 0x00) Name (XNPT, 0x01) Name (XCAP, 0x02) Name (XDCP, 0x04) Name (XDCT, 0x08) Name (XDST, 0x0A) Name (XLCP, 0x0C) Name (XLCT, 0x10) Name (XLST, 0x12) Name (XSCP, 0x14) Name (XSCT, 0x18) Name (XSST, 0x1A) Name (XRCT, 0x1C) Mutex (MUTE, 0x00) Method (RBPE, 1, NotSerialized) { Acquire (MUTE, 0x03E8) Add (Arg0, \PCIB, Local0) OperationRegion (PCFG, SystemMemory, Local0, 0x01) Field (PCFG, ByteAcc, NoLock, Preserve) { XCFG, 8 } Release (MUTE) Return (XCFG) } Method (RWPE, 1, NotSerialized) { Acquire (MUTE, 0x03E8) And (Arg0, 0xFFFFFFFE, Arg0) Add (Arg0, \PCIB, Local0) OperationRegion (PCFG, SystemMemory, Local0, 0x02) Field (PCFG, WordAcc, NoLock, Preserve) { XCFG, 16 } Release (MUTE) Return (XCFG) } Method (RDPE, 1, NotSerialized) { Acquire (MUTE, 0x03E8) And (Arg0, 0xFFFFFFFC, Arg0) Add (Arg0, \PCIB, Local0) OperationRegion (PCFG, SystemMemory, Local0, 0x04) Field (PCFG, DWordAcc, NoLock, Preserve) { XCFG, 32 } Release (MUTE) Return (XCFG) } Method (WBPE, 2, NotSerialized) { Acquire (MUTE, 0x0FFF) Add (Arg0, \PCIB, Local0) OperationRegion (PCFG, SystemMemory, Local0, 0x01) Field (PCFG, ByteAcc, NoLock, Preserve) { XCFG, 8 } Store (Arg1, XCFG) Release (MUTE) } Method (WWPE, 2, NotSerialized) { Acquire (MUTE, 0x03E8) And (Arg0, 0xFFFFFFFE, Arg0) Add (Arg0, \PCIB, Local0) OperationRegion (PCFG, SystemMemory, Local0, 0x02) Field (PCFG, WordAcc, NoLock, Preserve) { XCFG, 16 } Store (Arg1, XCFG) Release (MUTE) } Method (WDPE, 2, NotSerialized) { Acquire (MUTE, 0x03E8) And (Arg0, 0xFFFFFFFC, Arg0) Add (Arg0, \PCIB, Local0) OperationRegion (PCFG, SystemMemory, Local0, 0x04) Field (PCFG, DWordAcc, NoLock, Preserve) { XCFG, 32 } Store (Arg1, XCFG) Release (MUTE) } Method (RWDP, 3, NotSerialized) { Acquire (MUTE, 0x03E8) And (Arg0, 0xFFFFFFFC, Arg0) Add (Arg0, \PCIB, Local0) OperationRegion (PCFG, SystemMemory, Local0, 0x04) Field (PCFG, DWordAcc, NoLock, Preserve) { XCFG, 32 } And (XCFG, Arg2, Local1) Or (Local1, Arg1, XCFG) Release (MUTE) } Method (RPME, 1, NotSerialized) { Add (Arg0, 0x84, Local0) Store (\_SB.RDPE (Local0), Local1) If (LEqual (Local1, 0xFFFFFFFF)) { Return (0x00) } Else { If (LAnd (Local1, 0x00010000)) { \_SB.WDPE (Local0, And (Local1, 0x00010000)) Return (0x01) } Return (0x00) } } } Scope (\_SB.PCI0.SBRG.SIOR) { Device (IT87) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x00) Method (HWV0, 0, NotSerialized) { Return (Multiply (VIV0, 0x10)) } Method (HWV1, 0, NotSerialized) { Return (Multiply (VIV1, 0x10)) } Method (HWV2, 0, NotSerialized) { Return (Multiply (VIV2, 0x10)) } Method (HWV3, 0, NotSerialized) { Return (Multiply (VIV3, 0x10)) } Method (HWV4, 0, NotSerialized) { Return (Multiply (VIV4, 0x10)) } Method (HWV5, 0, NotSerialized) { Return (Multiply (VIV5, 0x10)) } Method (HWV6, 0, NotSerialized) { Return (Multiply (VIV6, 0x10)) } Method (HWV7, 0, NotSerialized) { Return (Multiply (VIV7, 0x10)) } Method (HWT1, 0, NotSerialized) { Store (TPI1, Local0) If (LGreater (Local0, 0x80)) { Subtract (0x0100, Local0, Local0) } Return (Multiply (Local0, 0x0A)) } Method (HWT2, 0, NotSerialized) { Store (TPI2, Local0) If (LGreater (Local0, 0x80)) { Subtract (0x0100, Local0, Local0) } Return (Multiply (Local0, 0x0A)) } Method (HWT3, 0, NotSerialized) { Store (TPI3, Local0) If (LGreater (Local0, 0x80)) { Subtract (0x0100, Local0, Local0) } Return (Multiply (Local0, 0x0A)) } Method (HWF1, 0, NotSerialized) { And (ETDE, 0x01, Local0) While (0x01) { ShiftLeft (0x01, FTD1, Local1) If (LEqual (Local0, 0x01)) { Add (Multiply (EFN1, 0x0100), FTC1, Local2) } Else { Store (FTC1, Local2) } If (LEqual (Local0, 0x01)) { If (LNot (LLess (Local2, 0xF000))) { If (LNot (LEqual (Local1, 0x80))) { Add (FTD1, 0x01, FTD1) Sleep (0x64) } Else { Return (0x00) } } Else { If (LNot (LGreater (Local2, 0x1000))) { If (LNot (LEqual (Local1, 0x01))) { Subtract (FTD1, 0x01, FTD1) Sleep (0x64) } Else { Return (0xFFFF) } } Else { Divide (0x00149970, Multiply (Local1, Local2), , Local1) Return (Local1) } } } Else { If (LNot (LLess (Local2, 0xF0))) { If (LNot (LEqual (Local1, 0x80))) { Add (FTD1, 0x01, FTD1) Sleep (0x64) } Else { Return (0x00) } } Else { If (LNot (LGreater (Local2, 0x32))) { If (LNot (LEqual (Local1, 0x01))) { Subtract (FTD1, 0x01, FTD1) Sleep (0x64) } Else { Return (0xFFFF) } } Else { Divide (0x00149970, Multiply (Local1, Local2), , Local1) Return (Local1) } } } } } Method (HWF2, 0, NotSerialized) { And (ETDE, 0x02, Local0) While (0x01) { ShiftLeft (0x01, FTD2, Local1) If (LEqual (Local0, 0x02)) { Add (Multiply (EFN2, 0x0100), FTC2, Local2) } Else { Store (FTC2, Local2) } If (LEqual (Local0, 0x02)) { If (LNot (LLess (Local2, 0xF000))) { If (LNot (LEqual (Local1, 0x80))) { Add (FTD2, 0x01, FTD2) Sleep (0x64) } Else { Return (0x00) } } Else { If (LNot (LGreater (Local2, 0x1000))) { If (LNot (LEqual (Local1, 0x01))) { Subtract (FTD2, 0x01, FTD2) Sleep (0x64) } Else { Return (0xFFFF) } } Else { Divide (0x00149970, Multiply (Local1, Local2), , Local1) Return (Local1) } } } Else { If (LNot (LLess (Local2, 0xF0))) { If (LNot (LEqual (Local1, 0x80))) { Add (FTD2, 0x01, FTD2) Sleep (0x64) } Else { Return (0x00) } } Else { If (LNot (LGreater (Local2, 0x32))) { If (LNot (LEqual (Local1, 0x01))) { Subtract (FTD2, 0x01, FTD2) Sleep (0x64) } Else { Return (0xFFFF) } } Else { Divide (0x00149970, Multiply (Local1, Local2), , Local1) Return (Local1) } } } } } Method (HWF3, 0, NotSerialized) { And (ETDE, 0x04, Local0) While (0x01) { If (LEqual (FTD3, 0x01)) { Store (0x08, Local1) } Else { Store (0x02, Local1) } If (LEqual (Local0, 0x04)) { Add (Multiply (EFN3, 0x0100), FTC3, Local2) } Else { Store (FTC3, Local2) } If (LEqual (Local0, 0x04)) { If (LNot (LLess (Local2, 0xF000))) { If (LNot (LEqual (Local1, 0x08))) { Add (FTD3, 0x01, FTD3) Sleep (0x64) } Else { Return (0x00) } } Else { If (LNot (LGreater (Local2, 0x1000))) { If (LNot (LEqual (Local1, 0x00))) { Subtract (FTD3, 0x01, FTD3) Sleep (0x64) } Else { Return (0xFFFF) } } Else { Divide (0x00149970, Multiply (Local1, Local2), , Local1) Return (Local1) } } } Else { If (LNot (LLess (Local2, 0xF0))) { If (LNot (LEqual (Local1, 0x08))) { Add (FTD3, 0x01, FTD3) Sleep (0x64) } Else { Return (0x00) } } Else { If (LNot (LGreater (Local2, 0x10))) { If (LNot (LEqual (Local1, 0x00))) { Subtract (FTD3, 0x01, FTD3) Sleep (0x64) } Else { Return (0xFFFF) } } Else { Divide (0x00149970, Multiply (Local1, Local2), , Local1) Return (Local1) } } } } } OperationRegion (ECRE, SystemIO, IOEB, 0x20) Field (ECRE, ByteAcc, NoLock, Preserve) { Offset (0x05), HIDX, 8, HDAT, 8 } IndexField (HIDX, HDAT, ByteAcc, NoLock, Preserve) { Offset (0x0B), FTD1, 3, FTD2, 3, FTD3, 1, Offset (0x0C), ETDE, 8, FTC1, 8, FTC2, 8, FTC3, 8, Offset (0x18), EFN1, 8, EFN2, 8, EFN3, 8, Offset (0x20), VIV0, 8, VIV1, 8, VIV2, 8, VIV3, 8, VIV4, 8, VIV5, 8, VIV6, 8, VIV7, 8, Offset (0x29), TPI1, 8, TPI2, 8, TPI3, 8 } } } Scope (\) { Field (\RAMW, ByteAcc, NoLock, Preserve) { Offset (0x20), CPUQ, 8, CPVL, 16, CPVH, 16, CPVC, 1 } } Scope (\_SB.PCI0.SBRG.ASOC) { Name (CORV, Package (0x05) { 0x06020000, "Vcore Voltage", 0x0320, 0x0708, 0x01 }) Name (V3VV, Package (0x05) { 0x06020001, " +3.3 Voltage", 0x0B9A, 0x0E2E, 0x01 }) Name (V5VV, Package (0x05) { 0x06020002, " +5 Voltage", 0x1194, 0x157C, 0x01 }) Name (VV12, Package (0x05) { 0x06020003, " +12 Voltage", 0x27D8, 0x35E8, 0x01 }) Name (VPAR, Package (0x04) { Package (0x03) { 0x00, 0x01, 0x00 }, Package (0x03) { 0x00, 0x01, 0x00 }, Package (0x03) { 0x22, 0x32, 0x00 }, Package (0x03) { 0x0F, 0x05, 0x00 } }) Name (VBUF, Package (0x05) { 0x04, CORV, V3VV, V5VV, VV12 }) Method (VGET, 1, NotSerialized) { If (LEqual (Arg0, 0x00)) { Return (^^SIOR.IT87.HWV0 ()) } If (LEqual (Arg0, 0x01)) { Return (^^SIOR.IT87.HWV2 ()) } If (LEqual (Arg0, 0x02)) { Return (^^SIOR.IT87.HWV3 ()) } If (LEqual (Arg0, 0x03)) { Return (^^SIOR.IT87.HWV4 ()) } } Name (CPUT, Package (0x05) { 0x06030000, "CPU Temperature", 0x0258, 0x03B6, 0x00010001 }) Name (MBTP, Package (0x05) { 0x06030001, "MB Temperature", 0x01C2, 0x03B6, 0x00010001 }) Name (TBUF, Package (0x03) { 0x02, CPUT, MBTP }) Method (TGET, 1, NotSerialized) { If (LEqual (Arg0, 0x00)) { Return (^^SIOR.IT87.HWT1 ()) } If (LEqual (Arg0, 0x01)) { Return (^^SIOR.IT87.HWT2 ()) } } Name (CPUF, Package (0x05) { 0x06040000, "CPU FAN Speed", 0x0320, 0x1C20, 0x00010001 }) Name (CHA1, Package (0x05) { 0x06040001, "CHASSIS FAN Speed", 0x0320, 0x1C20, 0x00010001 }) Name (PWRF, Package (0x05) { 0x06040002, "POWER FAN Speed", 0x0320, 0x1C20, 0x00010001 }) Name (FBUF, Package (0x04) { 0x03, CPUF, CHA1, PWRF }) Method (FGET, 1, NotSerialized) { If (LEqual (Arg0, 0x00)) { Return (^^SIOR.IT87.HWF1 ()) } If (LEqual (Arg0, 0x01)) { Return (^^SIOR.IT87.HWF2 ()) } If (LEqual (Arg0, 0x02)) { Return (^^SIOR.IT87.HWF3 ()) } } Name (QBUF, Package (0x01) { 0x00 }) Method (VSIF, 0, NotSerialized) { Return (VBUF) } Method (RVLT, 1, NotSerialized) { And (Arg0, 0xFFFF, Local0) Store (VGET (Local0), Local1) Store (DerefOf (Index (DerefOf (Index (VPAR, Local0)), 0x00)), Local2) Store (DerefOf (Index (DerefOf (Index (VPAR, Local0)), 0x01)), Local3) Store (DerefOf (Index (DerefOf (Index (VPAR, Local0)), 0x02)), Local4) Multiply (Local1, Add (Local2, Local3), Local5) Divide (Local5, Local3, , Local5) Add (Local5, Local4, Local5) Return (Local5) } Method (SVLT, 1, NotSerialized) { And (DerefOf (Index (Arg0, 0x00)), 0xFFFF, Local0) Store (DerefOf (Index (VBUF, 0x00)), Local1) If (LNot (LLess (Local0, Local1))) { Return (0x00) } Increment (Local0) Store (DerefOf (Index (Arg0, 0x01)), Index (DerefOf (Index (VBUF, Local0)), 0x01)) Store (DerefOf (Index (Arg0, 0x02)), Index (DerefOf (Index (VBUF, Local0)), 0x02)) Store (DerefOf (Index (Arg0, 0x03)), Index (DerefOf (Index (VBUF, Local0)), 0x03)) Store (DerefOf (Index (Arg0, 0x04)), Index (DerefOf (Index (VBUF, Local0)), 0x04)) Return (0x01) } Method (TSIF, 0, NotSerialized) { Return (TBUF) } Method (RTMP, 1, NotSerialized) { And (Arg0, 0xFFFF, Local0) Store (TGET (Local0), Local1) Return (Local1) } Method (STMP, 1, NotSerialized) { Store (And (DerefOf (Index (Arg0, 0x00)), 0xFFFF), Local0) Store (DerefOf (Index (TBUF, 0x00)), Local1) If (LNot (LLess (Local0, Local1))) { Return (0x00) } Increment (Local0) Store (DerefOf (Index (Arg0, 0x01)), Index (DerefOf (Index (TBUF, Local0)), 0x01)) Store (DerefOf (Index (Arg0, 0x02)), Index (DerefOf (Index (TBUF, Local0)), 0x02)) Store (DerefOf (Index (Arg0, 0x03)), Index (DerefOf (Index (TBUF, Local0)), 0x03)) Store (DerefOf (Index (Arg0, 0x04)), Index (DerefOf (Index (TBUF, Local0)), 0x04)) Return (0x01) } Method (FSIF, 0, NotSerialized) { Return (FBUF) } Method (RFAN, 1, NotSerialized) { And (Arg0, 0xFFFF, Local0) Store (FGET (Local0), Local1) Return (Local1) } Method (SFAN, 1, NotSerialized) { And (DerefOf (Index (Arg0, 0x00)), 0xFFFF, Local0) Store (DerefOf (Index (FBUF, 0x00)), Local1) If (LNot (LLess (Local0, Local1))) { Return (0x00) } Increment (Local0) Store (DerefOf (Index (Arg0, 0x01)), Index (DerefOf (Index (FBUF, Local0)), 0x01)) Store (DerefOf (Index (Arg0, 0x02)), Index (DerefOf (Index (FBUF, Local0)), 0x02)) Store (DerefOf (Index (Arg0, 0x03)), Index (DerefOf (Index (FBUF, Local0)), 0x03)) Store (DerefOf (Index (Arg0, 0x04)), Index (DerefOf (Index (FBUF, Local0)), 0x04)) Return (0x01) } Method (QFIF, 0, NotSerialized) { If (LEqual (CPUQ, 0x00)) { And (DerefOf (Index (QCFN, 0x05)), 0xFFFDFFFF, Local0) Store (Local0, Index (QCFN, 0x05)) } Else { Or (DerefOf (Index (QCFN, 0x05)), 0x00020000, Local0) Store (Local0, Index (QCFN, 0x05)) } Return (QBUF) } Method (GCQV, 1, NotSerialized) { If (LEqual (Arg0, 0x00)) { Return (CPVL) } If (LEqual (Arg0, 0x01)) { Return (CPVH) } If (LEqual (Arg0, 0x02)) { Return (CPVC) } Return (0x00) } Method (QFST, 1, NotSerialized) { If (LEqual (Arg0, DerefOf (Index (QCFN, 0x00)))) { Return (CQST) } Return (0x00) } } Scope (\_SB) { Scope (PCI0) { Name (CRS, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, 0x0000, 0x00FF, 0x0000, 0x0100) IO (Decode16, 0x0CF8, 0x0CF8, 0x01, 0x08) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, 0x0000, 0x0CF7, 0x0000, 0x0CF8) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, 0x0D00, 0xFFFF, 0x0000, 0xF300) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000A0000, 0x000BFFFF, 0x00000000, 0x00020000) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000C0000, 0x000DFFFF, 0x00000000, 0x00020000) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000) }) CreateDWordField (CRS, 0x5C, MIN5) CreateDWordField (CRS, 0x60, MAX5) CreateDWordField (CRS, 0x68, LEN5) CreateDWordField (CRS, 0x76, MIN6) CreateDWordField (CRS, 0x7A, MAX6) CreateDWordField (CRS, 0x82, LEN6) Method (_CRS, 0, NotSerialized) { Store (MG1L, Local0) If (Local0) { Store (MG1B, MIN5) Store (MG1L, LEN5) Add (MIN5, Decrement (Local0), MAX5) } Store (MG2B, MIN6) Store (MG2L, LEN6) Store (MG2L, Local0) Add (MIN6, Decrement (Local0), MAX6) Return (CRS) } } } Name (WOTB, 0x00) Name (WSSB, 0x00) Name (WAXB, 0x00) Method (_PTS, 1, NotSerialized) { Store (Arg0, DBG8) PTS (Arg0) Store (0x00, Index (WAKP, 0x00)) Store (0x00, Index (WAKP, 0x01)) If (LAnd (LEqual (Arg0, 0x04), LEqual (OSFL (), 0x02))) { Sleep (0x0BB8) } Store (ASSB, WSSB) Store (AOTB, WOTB) Store (AAXB, WAXB) Store (Arg0, ASSB) Store (OSFL (), AOTB) Store (Zero, AAXB) } Method (_WAK, 1, NotSerialized) { ShiftLeft (Arg0, 0x04, DBG8) WAK (Arg0) If (ASSB) { Store (WSSB, ASSB) Store (WOTB, AOTB) Store (WAXB, AAXB) } If (DerefOf (Index (WAKP, 0x00))) { Store (0x00, Index (WAKP, 0x01)) } Else { Store (Arg0, Index (WAKP, 0x01)) } Return (WAKP) } Name (\_S0, Package (0x04) { 0x00, 0x00, 0x00, 0x00 }) If (SS1) { Name (\_S1, Package (0x04) { 0x01, 0x00, 0x00, 0x00 }) } If (SS3) { Name (\_S3, Package (0x04) { 0x05, 0x00, 0x00, 0x00 }) } If (SS4) { Name (\_S4, Package (0x04) { 0x06, 0x00, 0x00, 0x00 }) } Name (\_S5, Package (0x04) { 0x07, 0x00, 0x00, 0x00 }) Method (PTS, 1, NotSerialized) { If (Arg0) { \_SB.PCI0.SBRG.SIOS (Arg0) \_SB.PCI0.NB2N.NPTS (Arg0) \_SB.PCI0.SBRG.SPTS (Arg0) } } Method (WAK, 1, NotSerialized) { \_SB.PCI0.SBRG.SIOW (Arg0) \_SB.PCI0.NB2N.NWAK (Arg0) \_SB.PCI0.SBRG.SWAK (Arg0) } } --------------060902000402000309040604--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44CA97AB.2070100>