From owner-freebsd-acpi@FreeBSD.ORG Thu Jan 18 11:05:24 2007 Return-Path: X-Original-To: acpi@freebsd.org Delivered-To: freebsd-acpi@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1AA0016A492 for ; Thu, 18 Jan 2007 11:05:24 +0000 (UTC) (envelope-from des@des.no) Received: from tim.des.no (tim.des.no [194.63.250.121]) by mx1.freebsd.org (Postfix) with ESMTP id 9F1FE13C467 for ; Thu, 18 Jan 2007 11:05:14 +0000 (UTC) (envelope-from des@des.no) Received: from tim.des.no (localhost [127.0.0.1]) by spam.des.no (Postfix) with ESMTP id 08E622083 for ; Thu, 18 Jan 2007 11:42:21 +0100 (CET) Received: from dwp.des.no (des.no [80.203.243.180]) by tim.des.no (Postfix) with ESMTP id BA9E62082 for ; Thu, 18 Jan 2007 11:42:14 +0100 (CET) Received: by dwp.des.no (Postfix, from userid 1001) id B74A4B86E; Thu, 18 Jan 2007 11:43:30 +0100 (CET) From: des@des.no (Dag-Erling =?iso-8859-1?Q?Sm=F8rgrav?=) To: acpi@freebsd.org Date: Thu, 18 Jan 2007 11:43:30 +0100 Message-ID: <86irf44nu5.fsf@dwp.des.no> User-Agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.3 (berkeley-unix) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Mailman-Approved-At: Thu, 18 Jan 2007 11:07:00 +0000 Cc: Subject: Asus P5B-V X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 Jan 2007 11:05:24 -0000 --=-=-= Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable I have some ACPI issues with an Asus P5B-V (Intel G965-based) motherboard running amd64 -CURRENT: - no thermal information: root@dma ~# sysctl hw.acpi hw.acpi.supported_sleep_state: S1 S3 S4 S5 hw.acpi.power_button_state: S5 hw.acpi.sleep_button_state: S1 hw.acpi.lid_switch_state: NONE hw.acpi.standby_state: S1 hw.acpi.suspend_state: S3 hw.acpi.sleep_delay: 1 hw.acpi.s4bios: 0 hw.acpi.verbose: 0 hw.acpi.disable_on_reboot: 0 hw.acpi.handle_reboot: 0 hw.acpi.cpu.cx_lowest: C1 - all on-board devices seem to share the same interrupt: root@dma ~# vmstat -i interrupt total rate irq1: atkbd0 8 0 irq19: skc0 uhci3* 5161490 52 irq21: ral0 1209462 12 cpu0: timer 194998438 1999 cpu1: timer 194998251 1999 Total 396367649 4064 (ral0 is the only PCI card in the system, everything else is integrated on the motherboard) - on the bright side, SpeedStep works fine: root@dma ~# sysctl dev.cpu dev.cpu.0.%desc: ACPI CPU dev.cpu.0.%driver: cpu dev.cpu.0.%location: handle=3D\_PR_.CPU1 dev.cpu.0.%pnpinfo: _HID=3Dnone _UID=3D0 dev.cpu.0.%parent: acpi0 dev.cpu.0.freq: 598 dev.cpu.0.freq_levels: 2394/22464 2094/19656 1795/16848 1596/376 1396/329 1= 197/282 997/235 798/188 598/141 399/94 199/47 dev.cpu.0.cx_supported: C1/0 dev.cpu.0.cx_lowest: C1 dev.cpu.0.cx_usage: 100.00% dev.cpu.1.%desc: ACPI CPU dev.cpu.1.%driver: cpu dev.cpu.1.%location: handle=3D\_PR_.CPU2 dev.cpu.1.%pnpinfo: _HID=3Dnone _UID=3D0 dev.cpu.1.%parent: acpi0 dev.cpu.1.cx_supported: C1/0 dev.cpu.1.cx_lowest: C1 dev.cpu.1.cx_usage: 100.00% (no frequency control on CPU1 since they're both on the same die) Attached are the output from acpidump -d and -t with and without ACPI 2.0 support (selectable in BIOS setup) DES --=20 Dag-Erling Sm=F8rgrav - des@des.no --=-=-= Content-Disposition: attachment; filename=p5bv-acpi1.asl /* * Intel ACPI Component Architecture * AML Disassembler version 20051021 * * Disassembly of /tmp/acpidump.e8Rf7q, Wed Jan 17 13:11:06 2007 */ DefinitionBlock ("DSDT.aml", "DSDT", 1, "A0579", "A0579000", 0x00000000) { Scope (_PR) { Processor (CPU1, 0x01, 0x00000810, 0x06) { OperationRegion (STBL, SystemMemory, 0x3EE99C90, 0x02E3) Name (NCPU, 0x02) Name (CFGD, 0x09) Name (TYPE, 0x80000000) Name (HNDL, 0x80000000) Name (TBLD, Zero) Method (_PDC, 1, NotSerialized) { CreateDWordField (Arg0, 0x08, DAT0) Store (DAT0, TYPE) OperationRegion (PMRG, SystemIO, PMBS, 0x50) Field (PMRG, ByteAcc, NoLock, Preserve) { Offset (0x41), DEV4, 1, DEV5, 1, DEV6, 1, DEV7, 1, STS4, 1, STS5, 1, STS6, 1, STS7, 1 } Store (One, STS7) Store (One, DEV7) If (LEqual (TBLD, Zero)) { Load (STBL, HNDL) Store (One, TBLD) } } } } Scope (_PR) { Processor (CPU2, 0x02, 0x00000810, 0x06) { OperationRegion (STBL, SystemMemory, 0x3EE99F80, 0x02DA) Name (NCPU, 0x02) Name (CFGD, 0x09) Name (TYPE, 0x80000000) Name (HNDL, 0x80000000) Name (TBLD, Zero) Method (_PDC, 1, NotSerialized) { CreateDWordField (Arg0, 0x08, DAT0) Store (DAT0, TYPE) If (LEqual (TBLD, Zero)) { Load (STBL, HNDL) Store (One, TBLD) } } } } Scope (_PR) { Processor (CPU3, 0x03, 0x00000000, 0x00) { OperationRegion (STBL, SystemMemory, 0xFFFF0000, 0xFFFF) Name (NCPU, 0x80) Name (CFGD, 0x80) Name (TYPE, 0x80000000) Name (HNDL, 0x80000000) Name (TBLD, Zero) Method (_PDC, 1, NotSerialized) { CreateDWordField (Arg0, 0x08, DAT0) Store (DAT0, TYPE) If (LEqual (TBLD, Zero)) { If (LAnd (LEqual (And (TYPE, One), One), LNot (LGreater (NCPU, 0x08)))) { Load (STBL, HNDL) Store (One, TBLD) } } } } } Scope (_PR) { Processor (CPU4, 0x04, 0x00000000, 0x00) { OperationRegion (STBL, SystemMemory, 0xFFFF0000, 0xFFFF) Name (NCPU, 0x80) Name (CFGD, 0x80) Name (TYPE, 0x80000000) Name (HNDL, 0x80000000) Name (TBLD, Zero) Method (_PDC, 1, NotSerialized) { CreateDWordField (Arg0, 0x08, DAT0) Store (DAT0, TYPE) OperationRegion (PMRG, SystemIO, PMBS, 0x50) Field (PMRG, ByteAcc, NoLock, Preserve) { Offset (0x41), DEV4, 1, DEV5, 1, DEV6, 1, DEV7, 1, STS4, 1, STS5, 1, STS6, 1, STS7, 1 } If (LEqual (TBLD, Zero)) { If (LAnd (LEqual (And (TYPE, One), One), LNot (LGreater (NCPU, 0x08)))) { Store (One, STS6) Store (One, DEV6) Load (STBL, HNDL) Store (One, TBLD) } } } } } Name (DP80, 0x80) Name (DP90, 0x90) Name (SPIO, 0x2E) Name (IOHW, 0x0290) Name (APIC, One) Name (SMIP, 0xB2) Name (PMBS, 0x0800) Name (PMLN, 0x80) Name (GPBS, 0x0480) Name (GPLN, 0x40) Name (SMBL, Zero) Name (PM30, 0x0830) Name (SUSW, 0xFF) Name (HTBA, 0xFED1F404) Name (EAQF, One) Name (CFTE, Zero) Name (TOBS, 0x0860) Name (SUCC, One) Name (NVLD, 0x02) Name (CRIT, 0x04) Name (NCRT, 0x06) Name (LIDS, One) Name (PCIB, 0xE0000000) Name (PCIL, 0x10000000) Name (SMBS, 0x0400) Name (CPUC, 0x04) OperationRegion (BIOS, SystemMemory, 0x3EE9E064, 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, MSC1, 32, MSC2, 32, MSC3, 32, MSC4, 32, MSC5, 32, MSC6, 32, MSC7, 32, MSC8, 32, DMAX, 8, HPTA, 32 } Method (RRIO, 4, NotSerialized) { Store ("RRIO", Debug) } Method (RDMA, 3, NotSerialized) { Store ("rDMA", Debug) } Name (PICM, Zero) 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, Zero)) { Store (0xAC, DBG8) } Store (One, OSVR) If (CondRefOf (_OSI, Local1)) { If (_OSI ("Windows 2001")) { Store (Zero, 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), One, 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, Zero)) Store (ShiftLeft (SS1, One), Local0) Or (Local0, ShiftLeft (SS2, 0x02), Local0) Or (Local0, ShiftLeft (SS3, 0x03), Local0) Or (Local0, ShiftLeft (SS4, 0x04), Local0) If (And (ShiftLeft (One, Arg1), Local0)) { Store (Arg1, Index (PRWP, One)) } Else { ShiftRight (Local0, One, Local0) If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { FindSetLeftBit (Local0, Index (PRWP, One)) } Else { FindSetRightBit (Local0, Index (PRWP, One)) } } Return (PRWP) } Name (WAKP, Package (0x02) { Zero, Zero }) OperationRegion (DEBX, SystemIO, 0x80, 0x02) Field (DEBX, WordAcc, NoLock, Preserve) { DBGX, 16 } OperationRegion (DEB0, SystemIO, DP80, One) Field (DEB0, ByteAcc, NoLock, Preserve) { DBG8, 8 } OperationRegion (DEB1, SystemIO, DP90, 0x02) Field (DEB1, WordAcc, NoLock, Preserve) { DBG9, 16 } Scope (_SB) { Name (PR00, Package (0x18) { Package (0x04) { 0x0001FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0001FFFF, One, LNKB, Zero }, Package (0x04) { 0x0001FFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x0001FFFF, 0x03, LNKD, Zero }, Package (0x04) { 0x0003FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0003FFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x0003FFFF, One, LNKB, Zero }, Package (0x04) { 0x001FFFFF, Zero, LNKC, Zero }, Package (0x04) { 0x001FFFFF, One, LNKD, Zero }, Package (0x04) { 0x001FFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001DFFFF, Zero, LNKH, Zero }, Package (0x04) { 0x001AFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001BFFFF, Zero, LNKG, Zero }, Package (0x04) { 0x001DFFFF, One, LNKD, Zero }, Package (0x04) { 0x001DFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001DFFFF, 0x03, LNKA, Zero }, Package (0x04) { 0x001AFFFF, Zero, LNKA, Zero }, Package (0x04) { 0x001AFFFF, One, LNKB, Zero }, Package (0x04) { 0x0002FFFF, One, LNKB, Zero }, Package (0x04) { 0x001CFFFF, Zero, LNKB, Zero }, Package (0x04) { 0x001CFFFF, One, LNKA, Zero }, Package (0x04) { 0x001CFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001CFFFF, 0x03, LNKD, Zero }, Package (0x04) { 0x0002FFFF, Zero, LNKA, Zero } }) Name (AR00, Package (0x18) { Package (0x04) { 0x0001FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0001FFFF, One, Zero, 0x11 }, Package (0x04) { 0x0001FFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x0001FFFF, 0x03, Zero, 0x13 }, Package (0x04) { 0x0003FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0003FFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x0003FFFF, One, Zero, 0x11 }, Package (0x04) { 0x001FFFFF, Zero, Zero, 0x12 }, Package (0x04) { 0x001FFFFF, One, Zero, 0x13 }, Package (0x04) { 0x001FFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001DFFFF, Zero, Zero, 0x17 }, Package (0x04) { 0x001AFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001BFFFF, Zero, Zero, 0x16 }, Package (0x04) { 0x001DFFFF, One, Zero, 0x13 }, Package (0x04) { 0x001DFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001DFFFF, 0x03, Zero, 0x10 }, Package (0x04) { 0x001AFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x001AFFFF, One, Zero, 0x11 }, Package (0x04) { 0x0002FFFF, One, Zero, 0x11 }, Package (0x04) { 0x001CFFFF, Zero, Zero, 0x11 }, Package (0x04) { 0x001CFFFF, One, Zero, 0x10 }, Package (0x04) { 0x001CFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001CFFFF, 0x03, Zero, 0x13 }, Package (0x04) { 0x0002FFFF, Zero, Zero, 0x10 } }) Name (PR02, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKA, Zero }, Package (0x04) { 0xFFFF, One, LNKB, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKD, Zero } }) Name (AR02, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0xFFFF, One, Zero, 0x11 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x13 } }) Name (PR04, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKA, Zero }, Package (0x04) { 0xFFFF, One, LNKB, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKD, Zero } }) Name (AR04, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0xFFFF, One, Zero, 0x11 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x13 } }) Name (PR05, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKB, Zero }, Package (0x04) { 0xFFFF, One, LNKC, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKD, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKA, Zero } }) Name (AR05, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x11 }, Package (0x04) { 0xFFFF, One, Zero, 0x12 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x13 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x10 } }) Name (PR06, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKC, Zero }, Package (0x04) { 0xFFFF, One, LNKD, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKA, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKB, Zero } }) Name (AR06, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x12 }, Package (0x04) { 0xFFFF, One, Zero, 0x13 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x10 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x11 } }) Name (PR07, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKD, Zero }, Package (0x04) { 0xFFFF, One, LNKA, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKB, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKC, Zero } }) Name (AR07, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x13 }, Package (0x04) { 0xFFFF, One, Zero, 0x10 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x11 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x12 } }) Name (PR08, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKA, Zero }, Package (0x04) { 0xFFFF, One, LNKB, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKD, Zero } }) Name (AR08, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0xFFFF, One, Zero, 0x11 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x13 } }) Name (PR09, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKB, Zero }, Package (0x04) { 0xFFFF, One, LNKC, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKD, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKA, Zero } }) Name (AR09, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x11 }, Package (0x04) { 0xFFFF, One, Zero, 0x12 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x13 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x10 } }) Name (PR01, Package (0x0E) { Package (0x04) { 0xFFFF, Zero, LNKF, Zero }, Package (0x04) { 0xFFFF, One, LNKG, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKH, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKE, Zero }, Package (0x04) { 0x0001FFFF, Zero, LNKG, Zero }, Package (0x04) { 0x0001FFFF, One, LNKH, Zero }, Package (0x04) { 0x0001FFFF, 0x02, LNKE, Zero }, Package (0x04) { 0x0001FFFF, 0x03, LNKF, Zero }, Package (0x04) { 0x0002FFFF, Zero, LNKH, Zero }, Package (0x04) { 0x0002FFFF, One, LNKE, Zero }, Package (0x04) { 0x0002FFFF, 0x02, LNKF, Zero }, Package (0x04) { 0x0002FFFF, 0x03, LNKG, Zero }, Package (0x04) { 0x0003FFFF, Zero, LNKF, Zero }, Package (0x04) { 0x0004FFFF, Zero, LNKD, Zero } }) Name (AR01, Package (0x0E) { Package (0x04) { 0xFFFF, Zero, Zero, 0x15 }, Package (0x04) { 0xFFFF, One, Zero, 0x16 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x17 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x14 }, Package (0x04) { 0x0001FFFF, Zero, Zero, 0x16 }, Package (0x04) { 0x0001FFFF, One, Zero, 0x17 }, Package (0x04) { 0x0001FFFF, 0x02, Zero, 0x14 }, Package (0x04) { 0x0001FFFF, 0x03, Zero, 0x15 }, Package (0x04) { 0x0002FFFF, Zero, Zero, 0x17 }, Package (0x04) { 0x0002FFFF, One, Zero, 0x14 }, Package (0x04) { 0x0002FFFF, 0x02, Zero, 0x15 }, Package (0x04) { 0x0002FFFF, 0x03, Zero, 0x16 }, Package (0x04) { 0x0003FFFF, Zero, Zero, 0x15 }, Package (0x04) { 0x0004FFFF, Zero, Zero, 0x13 } }) Name (PRSA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {3,4,5,6,7,10,11,12,14,15} }) Alias (PRSA, PRSB) Alias (PRSA, PRSC) Alias (PRSA, PRSD) Alias (PRSA, PRSE) Alias (PRSA, PRSF) Alias (PRSA, PRSG) Alias (PRSA, PRSH) Device (PCI0) { Name (_HID, EisaId ("PNP0A08")) Name (_ADR, Zero) Method (^BN00, 0, NotSerialized) { Return (Zero) } Method (_BBN, 0, NotSerialized) { Return (BN00 ()) } Name (_UID, Zero) Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR00) } Return (PR00) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Name (_CID, 0x030AD041) Device (MCH) { Name (_HID, EisaId ("PNP0C01")) Name (_UID, 0x0A) Name (_CRS, ResourceTemplate () { Memory32Fixed (ReadWrite, 0xFED14000, // Address Base 0x00006000, // Address Length ) }) } Method (NPTS, 1, NotSerialized) { } Method (NWAK, 1, NotSerialized) { } Device (P0P2) { Name (_ADR, 0x00010000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR02) } Return (PR02) } } Device (P0P1) { Name (_ADR, 0x001E0000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0B, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR01) } Return (PR01) } } Device (SBRG) { Name (_ADR, 0x001F0000) Device (IELK) { Name (_HID, "AWY0001") OperationRegion (RXA0, PCI_Config, 0xA0, 0x20) Field (RXA0, ByteAcc, NoLock, Preserve) { , 9, PBLV, 1, Offset (0x10), , 1, PBMS, 1, , 1, PMCS, 1, ECNS, 1, Offset (0x11), ECT1, 16, ELEN, 1, Offset (0x14) } Method (\_GPE._L0A, 0, NotSerialized) { Notify (\_SB.PCI0.SBRG.IELK, 0x81) Store (One, \_SB.PCI0.SBRG.IELK.PMCS) } Method (_STA, 0, NotSerialized) { If (ELEN) { Return (0x0F) } Else { Return (Zero) } } Method (SMOD, 1, NotSerialized) { } Method (GPBS, 0, NotSerialized) { Return (XOr (PBLV, One)) } } Method (SPTS, 1, NotSerialized) { Store (One, PS1S) Store (One, PS1E) Store (One, SLPS) } Method (SWAK, 1, NotSerialized) { Store (Zero, SLPS) Store (Zero, PS1E) If (LAnd (LEqual (Arg0, One), RTCS)) { Notify (PWRB, 0x02) } Else { If (LAnd (LEqual (Arg0, 0x03), BRTC)) {} Else { Notify (PWRB, 0x02) } } } OperationRegion (APMP, SystemIO, SMIP, 0x02) Field (APMP, ByteAcc, NoLock, Preserve) { APMC, 8, APMS, 8 } Field (APMP, ByteAcc, NoLock, Preserve) { Offset (0x01), , 1, BRTC, 1 } OperationRegion (PMS0, SystemIO, PMBS, 0x04) Field (PMS0, ByteAcc, NoLock, Preserve) { , 10, RTCS, 1, , 4, WAKS, 1, Offset (0x03), PWBT, 1, Offset (0x04) } OperationRegion (SMIE, SystemIO, PM30, 0x08) Field (SMIE, ByteAcc, NoLock, Preserve) { , 4, PS1E, 1, , 31, PS1S, 1, Offset (0x08) } Scope (\_SB) { Name (SLPS, Zero) } Device (PIC) { Name (_HID, EisaId ("PNP0000")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0020, // Address Range Minimum 0x0020, // Address Range Maximum 0x00, // Address Alignment 0x02, // Address Length ) IO (Decode16, 0x00A0, // Address Range Minimum 0x00A0, // Address Range Maximum 0x00, // Address Alignment 0x02, // Address Length ) IRQNoFlags () {2} }) } Device (DMAD) { Name (_HID, EisaId ("PNP0200")) Name (_CRS, ResourceTemplate () { DMA (Compatibility, BusMaster, Transfer8) {4} IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x00, // Address Alignment 0x10, // Address Length ) IO (Decode16, 0x0081, // Address Range Minimum 0x0081, // Address Range Maximum 0x00, // Address Alignment 0x03, // Address Length ) IO (Decode16, 0x0087, // Address Range Minimum 0x0087, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IO (Decode16, 0x0089, // Address Range Minimum 0x0089, // Address Range Maximum 0x00, // Address Alignment 0x03, // Address Length ) IO (Decode16, 0x008F, // Address Range Minimum 0x008F, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IO (Decode16, 0x00C0, // Address Range Minimum 0x00C0, // Address Range Maximum 0x00, // Address Alignment 0x20, // Address Length ) }) } Device (TMR) { Name (_HID, EisaId ("PNP0100")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0040, // Address Range Minimum 0x0040, // Address Range Maximum 0x00, // Address Alignment 0x04, // Address Length ) IRQNoFlags () {0} }) } Device (RTC0) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, // Address Range Minimum 0x0070, // Address Range Maximum 0x00, // Address Alignment 0x02, // Address Length ) IRQNoFlags () {8} }) } Device (SPKR) { Name (_HID, EisaId ("PNP0800")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0061, // Address Range Minimum 0x0061, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) }) } Device (COPR) { Name (_HID, EisaId ("PNP0C04")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x00F0, // Address Range Minimum 0x00F0, // Address Range Maximum 0x00, // Address Alignment 0x10, // Address Length ) IRQNoFlags () {13} }) } Device (UAR1) { Name (_UID, One) Name (_HID, EisaId ("PNP0501")) Method (_STA, 0, NotSerialized) { Return (DSTA (Zero)) } Method (_DIS, 0, NotSerialized) { DCNT (Zero, Zero) } Method (_CRS, 0, NotSerialized) { Return (DCRS (Zero, Zero)) } Method (_SRS, 1, NotSerialized) { DSRS (Arg0, Zero) } Method (_PRS, 0, NotSerialized) { Return (CMPR) } Name (CMPR, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x03F8, // Address Range Minimum 0x03F8, // Address Range Maximum 0x01, // Address Alignment 0x08, // Address Length ) IRQNoFlags () {4} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x03F8, // Address Range Minimum 0x03F8, // Address Range Maximum 0x01, // Address Alignment 0x08, // Address Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x02F8, // Address Range Minimum 0x02F8, // Address Range Maximum 0x01, // Address Alignment 0x08, // Address Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x03E8, // Address Range Minimum 0x03E8, // Address Range Maximum 0x01, // Address Alignment 0x08, // Address Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x02E8, // Address Range Minimum 0x02E8, // Address Range Maximum 0x01, // Address Alignment 0x08, // Address Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } EndDependentFn () }) } Method (UAR1._PRW, 0, NotSerialized) { Return (GPRW (0x08, 0x04)) } Device (FDC) { Name (_HID, EisaId ("PNP0700")) Method (_FDE, 0, NotSerialized) { Name (FDEP, Package (0x05) { Zero, Zero, 0x02, 0x02, 0x02 }) If (_STA ()) { Store (One, Index (FDEP, Zero)) } Return (FDEP) } Method (_STA, 0, NotSerialized) { Return (DSTA (0x03)) } Method (_DIS, 0, NotSerialized) { DCNT (0x03, Zero) } Method (_CRS, 0, NotSerialized) { DCRS (0x03, One) Store (IRQM, IRQE) Store (DMAM, DMAE) Store (IO11, IO21) Store (IO12, IO22) Store (0x06, LEN2) Add (IO21, 0x07, IO31) Store (IO31, IO32) Store (One, LEN3) Return (CRS2) } Method (_SRS, 1, NotSerialized) { DSRS (Arg0, 0x03) CreateWordField (Arg0, One, IRQE) CreateByteField (Arg0, 0x04, DMAE) ENFG (CGLD (0x03)) If (IRQE) { FindSetRightBit (IRQE, Local0) Subtract (Local0, One, INTR) } Else { Store (Zero, INTR) } If (DMAE) { FindSetRightBit (DMAE, Local0) Subtract (Local0, One, DMCH) } Else { Store (0x04, DMCH) } EXFG () } Name (_PRS, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x03F0, // Address Range Minimum 0x03F0, // Address Range Maximum 0x01, // Address Alignment 0x06, // Address Length ) IO (Decode16, 0x03F7, // Address Range Minimum 0x03F7, // Address Range Maximum 0x01, // Address Alignment 0x01, // Address Length ) IRQNoFlags () {6} DMA (Compatibility, NotBusMaster, Transfer8) {2} } StartDependentFnNoPri () { IO (Decode16, 0x03F0, // Address Range Minimum 0x03F0, // Address Range Maximum 0x01, // Address Alignment 0x06, // Address Length ) IO (Decode16, 0x03F7, // Address Range Minimum 0x03F7, // Address Range Maximum 0x01, // Address Alignment 0x01, // Address Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } StartDependentFnNoPri () { IO (Decode16, 0x0370, // Address Range Minimum 0x0370, // Address Range Maximum 0x01, // Address Alignment 0x06, // Address Length ) IO (Decode16, 0x0377, // Address Range Minimum 0x0377, // Address Range Maximum 0x01, // Address Alignment 0x01, // Address Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } EndDependentFn () }) } Device (SIOR) { Name (_HID, EisaId ("PNP0C02")) Method (_UID, 0, NotSerialized) { Return (SPIO) } Name (CRS, ResourceTemplate () { IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x00, // Address Alignment 0x00, // Address Length ) IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x00, // Address Alignment 0x00, // Address Length ) IO (Decode16, 0x0290, // Address Range Minimum 0x0290, // Address Range Maximum 0x00, // Address Alignment 0x08, // Address Length ) }) 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) } Return (CRS) } } Name (DCAT, Package (0x15) { 0x02, 0x03, One, Zero, 0xFF, 0x07, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x08, 0x09, 0xFF, 0xFF }) Mutex (IOCF, 0x00) Method (ENFG, 1, NotSerialized) { Acquire (IOCF, 0xFFFF) Store (0x87, INDX) Store (0x87, INDX) Store (Arg0, LDN) } Method (EXFG, 0, NotSerialized) { Store (0xAA, INDX) Release (IOCF) } Method (LPTM, 1, NotSerialized) { ENFG (CGLD (Arg0)) And (OPT0, 0x02, Local0) EXFG () Return (Local0) } Method (UHID, 1, NotSerialized) { If (LEqual (Arg0, One)) { ENFG (CGLD (Arg0)) And (OPT1, 0x38, Local0) EXFG () If (Local0) { Return (0x1005D041) } } Return (0x0105D041) } Method (SIOK, 1, NotSerialized) { ENFG (0x0A) If (LGreater (Arg0, One)) { Or (CRE4, 0x10, CRE4) } Store (CRE3, Local0) EXFG () } Method (SIOS, 1, NotSerialized) { Store ("SIOS", Debug) SIOK (Arg0) } Method (SIOW, 1, NotSerialized) { Store ("SIOW", Debug) SIOK (Zero) } Method (SIOH, 0, NotSerialized) { Store ("SIOH", Debug) ENFG (0x0A) If (And (OPT3, 0x10)) { Notify (PS2K, 0x02) } If (And (OPT3, 0x20)) { Notify (PS2M, 0x02) } EXFG () SIOK (Zero) } 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 (0x22), FDCP, 1, , 2, LPTP, 1, URAP, 1, URBP, 1, Offset (0x30), ACTR, 8, Offset (0x60), IOAH, 8, IOAL, 8, IOH2, 8, IOL2, 8, Offset (0x70), INTR, 4, Offset (0x74), DMCH, 3, Offset (0xE0), CRE0, 8, CRE1, 8, CRE2, 8, CRE3, 8, CRE4, 8, CRE5, 8, CRE6, 8, Offset (0xF0), OPT0, 8, OPT1, 8, OPT2, 8, OPT3, 8, Offset (0xF5), OPT5, 8, OPT6, 8, Offset (0xF9), OPT9, 8 } Method (CGLD, 1, NotSerialized) { Return (DerefOf (Index (DCAT, Arg0))) } Method (DSTA, 1, NotSerialized) { ENFG (CGLD (Arg0)) Store (ACTR, Local0) EXFG () If (LEqual (Local0, 0xFF)) { Return (Zero) } If (LEqual (Arg0, 0x05)) { ShiftRight (Local0, 0x02, Local0) } If (LEqual (Arg0, 0x08)) { ShiftRight (Local0, One, Local0) } And (Local0, One, Local0) Or (IOST, ShiftLeft (Local0, Arg0), IOST) If (Local0) { Return (0x0F) } Else { If (And (ShiftLeft (One, Arg0), IOST)) { Return (0x0D) } Else { Return (Zero) } } } Method (DCNT, 2, NotSerialized) { ENFG (CGLD (Arg0)) If (LEqual (Arg0, 0x05)) { ShiftLeft (IOH2, 0x08, Local1) Or (IOL2, Local1, Local1) } Else { ShiftLeft (IOAH, 0x08, Local1) Or (IOAL, Local1, Local1) } RRIO (Arg0, Arg1, Local1, 0x08) If (LAnd (LLess (DMCH, 0x04), LNot (LEqual (And (DMCH, 0x03, Local1), Zero)))) { RDMA (Arg0, Arg1, Increment (Local1)) } Store (Arg1, Local1) Store (One, Local2) If (LEqual (Arg0, 0x05)) { ShiftLeft (Arg1, 0x02, Local1) ShiftLeft (Local2, 0x02, Local2) } If (LEqual (Arg0, 0x08)) { ShiftLeft (Arg1, One, Local1) ShiftLeft (Local2, One, Local2) } Store (ACTR, Local0) Not (Local2, Local3) And (Local0, Local3, Local0) Or (Local0, Local1, Local0) Store (Local0, ACTR) EXFG () } Name (CRS1, ResourceTemplate () { IRQNoFlags () {} DMA (Compatibility, NotBusMaster, Transfer8) {} IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x01, // Address Alignment 0x00, // Address Length ) }) CreateWordField (CRS1, One, IRQM) CreateByteField (CRS1, 0x04, DMAM) CreateWordField (CRS1, 0x08, IO11) CreateWordField (CRS1, 0x0A, IO12) CreateByteField (CRS1, 0x0D, LEN1) Name (CRS2, ResourceTemplate () { IRQNoFlags () {6} DMA (Compatibility, NotBusMaster, Transfer8) {2} IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x01, // Address Alignment 0x00, // Address Length ) IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x01, // Address Alignment 0x00, // Address Length ) }) CreateWordField (CRS2, One, IRQE) CreateByteField (CRS2, 0x04, DMAE) CreateWordField (CRS2, 0x08, IO21) CreateWordField (CRS2, 0x0A, IO22) CreateByteField (CRS2, 0x0D, LEN2) CreateWordField (CRS2, 0x10, IO31) CreateWordField (CRS2, 0x12, IO32) CreateByteField (CRS2, 0x15, LEN3) Method (DCRS, 2, NotSerialized) { ENFG (CGLD (Arg0)) ShiftLeft (IOAH, 0x08, IO11) Or (IOAL, IO11, IO11) Store (IO11, IO12) Subtract (FindSetRightBit (IO11), One, Local0) ShiftLeft (One, Local0, LEN1) If (INTR) { ShiftLeft (One, INTR, IRQM) } Else { Store (Zero, IRQM) } If (LOr (LGreater (DMCH, 0x03), LEqual (Arg1, Zero))) { Store (Zero, DMAM) } Else { And (DMCH, 0x03, Local1) ShiftLeft (One, Local1, DMAM) } EXFG () Return (CRS1) } Method (DSRS, 2, NotSerialized) { CreateWordField (Arg0, One, IRQM) CreateByteField (Arg0, 0x04, DMAM) CreateWordField (Arg0, 0x08, IO11) ENFG (CGLD (Arg1)) And (IO11, 0xFF, IOAL) ShiftRight (IO11, 0x08, IOAH) If (IRQM) { FindSetRightBit (IRQM, Local0) Subtract (Local0, One, INTR) } Else { Store (Zero, INTR) } If (DMAM) { FindSetRightBit (DMAM, Local0) Subtract (Local0, One, DMCH) } Else { Store (0x07, DMCH) } EXFG () DCNT (Arg1, One) } Device (RMSC) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x10) Name (CRS, ResourceTemplate () { IO (Decode16, 0x0010, // Address Range Minimum 0x0010, // Address Range Maximum 0x00, // Address Alignment 0x10, // Address Length ) IO (Decode16, 0x0022, // Address Range Minimum 0x0022, // Address Range Maximum 0x00, // Address Alignment 0x1E, // Address Length ) IO (Decode16, 0x0044, // Address Range Minimum 0x0044, // Address Range Maximum 0x00, // Address Alignment 0x1C, // Address Length ) IO (Decode16, 0x0062, // Address Range Minimum 0x0062, // Address Range Maximum 0x00, // Address Alignment 0x02, // Address Length ) IO (Decode16, 0x0065, // Address Range Minimum 0x0065, // Address Range Maximum 0x00, // Address Alignment 0x0B, // Address Length ) IO (Decode16, 0x0072, // Address Range Minimum 0x0072, // Address Range Maximum 0x00, // Address Alignment 0x0E, // Address Length ) IO (Decode16, 0x0080, // Address Range Minimum 0x0080, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IO (Decode16, 0x0084, // Address Range Minimum 0x0084, // Address Range Maximum 0x00, // Address Alignment 0x03, // Address Length ) IO (Decode16, 0x0088, // Address Range Minimum 0x0088, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IO (Decode16, 0x008C, // Address Range Minimum 0x008C, // Address Range Maximum 0x00, // Address Alignment 0x03, // Address Length ) IO (Decode16, 0x0090, // Address Range Minimum 0x0090, // Address Range Maximum 0x00, // Address Alignment 0x10, // Address Length ) IO (Decode16, 0x00A2, // Address Range Minimum 0x00A2, // Address Range Maximum 0x00, // Address Alignment 0x1E, // Address Length ) IO (Decode16, 0x00E0, // Address Range Minimum 0x00E0, // Address Range Maximum 0x00, // Address Alignment 0x10, // Address Length ) IO (Decode16, 0x04D0, // Address Range Minimum 0x04D0, // Address Range Maximum 0x00, // Address Alignment 0x02, // Address Length ) IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x00, // Address Alignment 0x00, // Address Length ) IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x00, // Address Alignment 0x00, // Address Length ) IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x00, // Address Alignment 0x00, // Address Length ) Memory32Fixed (ReadWrite, 0xFED1C000, // Address Base 0x00004000, // Address Length ) Memory32Fixed (ReadWrite, 0xFED20000, // Address Base 0x00070000, // Address Length ) Memory32Fixed (ReadWrite, 0xFF9FA000, // Address Base 0x00001000, // Address Length ) Memory32Fixed (ReadWrite, 0xFFF00000, // Address Base 0x000FFFFF, // Address Length ) }) Method (_CRS, 0, NotSerialized) { CreateWordField (CRS, 0x72, GP00) CreateWordField (CRS, 0x74, GP01) CreateByteField (CRS, 0x77, GP0L) Store (PMBS, GP00) Store (PMBS, GP01) Store (PMLN, GP0L) If (SMBS) { CreateWordField (CRS, 0x7A, GP10) CreateWordField (CRS, 0x7C, GP11) CreateByteField (CRS, 0x7F, GP1L) Store (SMBS, GP10) Store (SMBS, GP11) Store (SMBL, GP1L) } If (GPBS) { CreateWordField (CRS, 0x82, GP20) CreateWordField (CRS, 0x84, GP21) CreateByteField (CRS, 0x87, GP2L) Store (GPBS, GP20) Store (GPBS, GP21) Store (GPLN, GP2L) } Return (CRS) } } Scope (\_SB.PCI0.SBRG) { Device (ASOC) { Name (_HID, "ATK0110") Name (_UID, 0x01010110) Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_INI, 0, NotSerialized) { Name (_T_0, Zero) Store (GNVS (0x3774), _T_0) If (LEqual (_T_0, Zero)) { Store (0xA6, Index (G3T0, 0x03)) } Else { If (LEqual (_T_0, One)) { Store (0x21, Index (G3T0, 0x03)) } Else { If (LEqual (_T_0, 0x02)) { Store (0x42, Index (G3T0, 0x03)) } Else { If (LEqual (_T_0, 0x03)) { Store (0x64, Index (G3T0, 0x03)) } Else { If (LEqual (_T_0, 0x04)) { Store (0xE9, Index (G3T0, 0x03)) } Else { If (LEqual (_T_0, 0x05)) { Store (Zero, Index (G3T0, 0x03)) } Else { If (LEqual (_T_0, 0x06)) { Store (0x012C, Index (G3T0, 0x03)) } } } } } } } Store (Subtract (GNVS (0x66B9), 0x06), Index (G3T2, 0x03)) } Name (MBIF, Package (0x08) { 0x03, "P5B-V", 0x01010101, 0x01010101, 0xE0000001, Zero, Zero, Zero }) Name (ASBF, Buffer (0x08) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) CreateDWordField (ASBF, Zero, ASB0) CreateDWordField (ASBF, 0x04, ASB1) Method (GGRP, 1, Serialized) { Name (_T_0, Zero) Store (Arg0, _T_0) If (LEqual (_T_0, Zero)) { Return (GRP0) } Else { If (LEqual (_T_0, 0x03)) { Return (GRP3) } Else { If (LEqual (_T_0, 0x04)) { Store (GNVS (0x1787), Local0) If (LEqual (Local0, One)) { Return (GR41) } Else { Return (GR42) } } Else { If (LEqual (_T_0, 0x05)) { Return (GRP5) } Else { If (LEqual (_T_0, 0x06)) { Return (GRP6) } Else { If (LEqual (_T_0, 0x08)) { Return (GRP8) } Else { If (LEqual (_T_0, 0x09)) { Return (GRP9) } Else { If (LEqual (_T_0, 0x0A)) { Return (GRPA) } Else { If (LEqual (_T_0, 0x0B)) { Return (GRPB) } Else { Return (Zero) } } } } } } } } } } Method (GITM, 1, Serialized) { CreateDWordField (Arg0, Zero, PRM0) CreateByteField (Arg0, 0x03, GPID) Store (One, ASB0) Name (_T_0, Zero) Store (GPID, _T_0) If (LEqual (_T_0, Zero)) { GIT0 (PRM0) } Else { If (LEqual (_T_0, 0x03)) { GIT3 (PRM0) } Else { If (LEqual (_T_0, 0x04)) { GIT4 (PRM0) } Else { If (LEqual (_T_0, 0x05)) { GIT5 (PRM0) } Else { If (LEqual (_T_0, 0x06)) { GIT6 (PRM0) } Else { If (LEqual (_T_0, 0x08)) { GIT8 (PRM0) } Else { If (LEqual (_T_0, 0x09)) { GIT9 (PRM0) } Else { If (LEqual (_T_0, 0x0A)) { GITA (PRM0) } Else { If (LEqual (_T_0, 0x0B)) { GITB (PRM0) } Else { Store (Zero, ASB0) } } } } } } } } } Return (ASBF) } Method (SITM, 1, Serialized) { CreateDWordField (Arg0, Zero, PRM0) CreateDWordField (Arg0, 0x04, PRM1) CreateDWordField (Arg0, 0x08, PRM2) CreateByteField (Arg0, 0x03, GPID) Store (One, ASB0) Name (_T_0, Zero) Store (GPID, _T_0) If (LEqual (_T_0, Zero)) { SIT0 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x03)) { SIT3 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x04)) { SIT4 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x05)) { SIT5 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x06)) { SIT6 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x08)) { SIT8 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x09)) { SIT9 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x0A)) { SITA (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x0B)) { SITB (PRM0, PRM1, PRM2) } Else { Store (Zero, ASB0) } } } } } } } } } Return (ASBF) } Method (OP2V, 2, NotSerialized) { Store (DerefOf (Index (Arg1, 0x04)), Local0) Store (DerefOf (Index (Arg1, 0x05)), Local1) Multiply (Arg0, Local1, Local1) Add (Local0, Local1, Local0) Return (Local0) } Method (V2OP, 2, NotSerialized) { Store (DerefOf (Index (Arg1, 0x04)), Local0) Store (DerefOf (Index (Arg1, 0x05)), Local1) Subtract (Arg0, Local0, Local0) Divide (Local0, Local1, Local1, Local0) Return (Local0) } } } Device (HPET) { Name (_HID, EisaId ("PNP0103")) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0xFED00000, // Address Base 0x00000400, // Address Length ) }) OperationRegion (HPTC, SystemMemory, HTBA, 0x04) Field (HPTC, ByteAcc, NoLock, Preserve) { HPTS, 2, , 5, HPTE, 1, Offset (0x04) } Method (_STA, 0, NotSerialized) { If (LEqual (OSFL (), Zero)) { If (HPTE) { Return (0x0F) } } Else { If (HPTE) { Return (0x0B) } } Return (Zero) } Method (_CRS, 0, NotSerialized) { CreateDWordField (CRS, 0x04, HPT) Multiply (HPTS, 0x1000, Local0) Add (Local0, 0xFED00000, HPT) Return (CRS) } } OperationRegion (RX80, PCI_Config, Zero, 0xFF) Field (RX80, ByteAcc, NoLock, Preserve) { Offset (0x80), LPCD, 16, LPCE, 16 } Name (DBPT, Package (0x04) { Package (0x08) { 0x03F8, 0x02F8, 0x0220, 0x0228, 0x0238, 0x02E8, 0x0338, 0x03E8 }, Package (0x08) { 0x03F8, 0x02F8, 0x0220, 0x0228, 0x0238, 0x02E8, 0x0338, 0x03E8 }, Package (0x03) { 0x0378, 0x0278, 0x03BC }, Package (0x02) { 0x03F0, 0x0370 } }) Name (DDLT, Package (0x04) { Package (0x02) { Zero, 0xFFF8 }, Package (0x02) { 0x04, 0xFF8F }, Package (0x02) { 0x08, 0xFCFF }, Package (0x02) { 0x0C, 0xEFFF } }) Method (RRIO, 4, NotSerialized) { If (LAnd (LNot (LGreater (Arg0, 0x03)), LNot (LLess (Arg0, Zero)))) { Store (Match (DerefOf (Index (DBPT, Arg0)), MEQ, Arg2, MTR, Zero, Zero), Local0) If (LNot (LEqual (Local0, Ones))) { Store (DerefOf (Index (DerefOf (Index (DDLT, Arg0)), Zero)), Local1) Store (DerefOf (Index (DerefOf (Index (DDLT, Arg0)), One)), Local2) ShiftLeft (Local0, Local1, Local0) And (LPCD, Local2, LPCD) Or (LPCD, Local0, LPCD) WX82 (Arg0, Arg1) } } If (LEqual (Arg0, 0x08)) { If (LEqual (Arg2, 0x0200)) { WX82 (0x08, Arg0) } Else { If (LEqual (Arg2, 0x0208)) { WX82 (0x09, Arg0) } } } If (LAnd (LNot (LGreater (Arg0, 0x0D)), LNot (LLess (Arg0, 0x0A)))) { WX82 (Arg0, Arg1) } } Method (WX82, 2, NotSerialized) { ShiftLeft (One, Arg0, Local0) If (Arg1) { Or (LPCE, Local0, LPCE) } Else { Not (Local0, Local0) And (LPCE, Local0, LPCE) } } Method (RDMA, 3, NotSerialized) { } Scope (\) { OperationRegion (RAMW, SystemMemory, Subtract (TOPM, 0x00010000), 0x00010000) Field (RAMW, ByteAcc, NoLock, Preserve) { PAR0, 32, PAR1, 32 } OperationRegion (IOB2, SystemIO, 0xB2, 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 (ASOC) { Name (ALAE, Package (0x04) { 0x0A070001, "Music Alarm", Zero, Zero }) Name (ALSU, Package (0x04) { 0x0A070002, "Sunday", Zero, One }) Name (ALMO, Package (0x04) { 0x0A070003, "Monday", Zero, One }) Name (ALTU, Package (0x04) { 0x0A070004, "Tuesday", Zero, One }) Name (ALWE, Package (0x04) { 0x0A070005, "Wednesday", Zero, One }) Name (ALTH, Package (0x04) { 0x0A070006, "Thursday", Zero, One }) Name (ALFR, Package (0x04) { 0x0A070007, "Friday", Zero, One }) Name (ALSA, Package (0x04) { 0x0A070008, "Saturday", Zero, One }) Name (ALAH, Package (0x07) { 0x0A060009, "Alarm Hour", Zero, 0x0C, Zero, One, 0x18 }) Name (ALAM, Package (0x07) { 0x0A06000A, "Alarm Mins", Zero, Zero, Zero, One, 0x3C }) Name (ALAC, Package (0x0A) { 0x0A08000B, "Music Alarm Drive", Zero, 0x03, 0x05, "Primary IDE Master", "Primary IDE Slave", "Secondary IDE Master", "Secondary IDE Slave", "JMicron JMB363 IDE" }) Name (ALAT, Package (0x07) { 0x0A06000C, "Starting Track", Zero, 0x10, Zero, One, 0x20 }) Name (ALAR, Package (0x08) { 0x0A08000D, "Repeat", Zero, Zero, 0x03, "none", "Single", "All" }) Name (ALAL, Package (0x09) { 0x0A08000E, "Length", Zero, Zero, 0x04, "10 mins", "20 mins", "30 mins", "1 hour" }) Name (ALAV, Package (0x07) { 0x0A06000F, "Volume", Zero, 0x0F, Zero, One, 0x20 }) Name (GRPA, Package (0x0F) { ALAE, ALSU, ALMO, ALTU, ALWE, ALTH, ALFR, ALSA, ALAH, ALAM, ALAC, ALAT, ALAR, ALAL, ALAV }) Method (GITA, 1, NotSerialized) { Store (And (Arg0, 0xFF), Local0) Name (_T_0, Zero) Store (Local0, _T_0) If (LEqual (_T_0, One)) { Store (GNVS (0x16EE), ASB1) } Else { If (LEqual (_T_0, 0x02)) { Store (GNVS (0x16EF), ASB1) } Else { If (LEqual (_T_0, 0x03)) { Store (GNVS (0x16F0), ASB1) } Else { If (LEqual (_T_0, 0x04)) { Store (GNVS (0x16F1), ASB1) } Else { If (LEqual (_T_0, 0x05)) { Store (GNVS (0x16F2), ASB1) } Else { If (LEqual (_T_0, 0x06)) { Store (GNVS (0x16F3), ASB1) } Else { If (LEqual (_T_0, 0x07)) { Store (GNVS (0x16F4), ASB1) } Else { If (LEqual (_T_0, 0x08)) { Store (GNVS (0x16F5), ASB1) } Else { If (LEqual (_T_0, 0x09)) { Store (GNVS (0x5368), ASB1) } Else { If (LEqual (_T_0, 0x0A)) { Store (GNVS (0x6338), ASB1) } Else { If (LEqual (_T_0, 0x0B)) { Store (GNVS (0x3445), ASB1) } Else { If (LEqual (_T_0, 0x0C)) { Store (GNVS (0x5360), ASB1) } Else { If (LEqual (_T_0, 0x0D)) { Store (GNVS (0x256A), ASB1) } Else { If (LEqual (_T_0, 0x0E)) { Store (GNVS (0x256C), ASB1) } Else { If (LEqual (_T_0, 0x0F)) { Store (GNVS (0x5378), ASB1) } Else { Store (Zero, ASB0) } } } } } } } } } } } } } } } } Method (SITA, 3, NotSerialized) { Store (And (Arg0, 0xFF), Local0) Name (_T_0, Zero) Store (Local0, _T_0) If (LEqual (_T_0, One)) { SNVS (0x16EE, Arg1) } Else { If (LEqual (_T_0, 0x02)) { SNVS (0x16EF, Arg1) } Else { If (LEqual (_T_0, 0x03)) { SNVS (0x16F0, Arg1) } Else { If (LEqual (_T_0, 0x04)) { SNVS (0x16F1, Arg1) } Else { If (LEqual (_T_0, 0x05)) { SNVS (0x16F2, Arg1) } Else { If (LEqual (_T_0, 0x06)) { SNVS (0x16F3, Arg1) } Else { If (LEqual (_T_0, 0x07)) { SNVS (0x16F4, Arg1) } Else { If (LEqual (_T_0, 0x08)) { SNVS (0x16F5, Arg1) } Else { If (LEqual (_T_0, 0x09)) { SNVS (0x5368, Arg1) } Else { If (LEqual (_T_0, 0x0A)) { SNVS (0x6338, Arg1) } Else { If (LEqual (_T_0, 0x0B)) { SNVS (0x3445, Arg1) } Else { If (LEqual (_T_0, 0x0C)) { SNVS (0x5360, Arg1) } Else { If (LEqual (_T_0, 0x0D)) { SNVS (0x256A, Arg1) } Else { If (LEqual (_T_0, 0x0E)) { SNVS (0x256C, Arg1) } Else { If (LEqual (_T_0, 0x0F)) { SNVS (0x5378, Arg1) } Else { Store (Zero, ASB0) } } } } } } } } } } } } } } } } } Device (^PCIE) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x11) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0xE0000000, // Address Base 0x10000000, // Address Length ) }) Method (_CRS, 0, NotSerialized) { CreateDWordField (CRS, 0x04, BAS1) CreateDWordField (CRS, 0x08, LEN1) Store (PCIB, BAS1) Store (PCIL, LEN1) Return (CRS) } } Scope (\_GPE) { Method (_L1C, 0, NotSerialized) { Notify (\_SB.PCI0.SBRG.ASOC, One) Sleep (0x03E8) } } Scope (ASOC) { Name (VESL, Zero) Method (SPLV, 1, Serialized) { And (Arg0, 0xFFFF, VESL) Store (VESL, PAR0) ISMI (0x88) Store (And (PAR0, 0xFFFF), Local0) Return (Local0) } Method (GPLV, 0, Serialized) { Return (VESL) } } Device (OMSC) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, Zero) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0x00000000, // Address Base 0x00000000, // Address Length ) Memory32Fixed (ReadOnly, 0x00000000, // Address Base 0x00000000, // Address Length ) }) 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 (^^RMEM) { Name (_HID, EisaId ("PNP0C01")) Name (_UID, One) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x000A0000, // Address Length ) Memory32Fixed (ReadOnly, 0x00000000, // Address Base 0x00000000, // Address Length ) Memory32Fixed (ReadOnly, 0x000E0000, // Address Base 0x00020000, // Address Length ) Memory32Fixed (ReadWrite, 0x00100000, // Address Base 0x00000000, // Address Length ) Memory32Fixed (ReadOnly, 0x00000000, // Address Base 0x00000000, // Address Length ) }) 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 (Zero, BAS4, LEN4) Return (CRS) } } Device (PS2K) { Name (_HID, EisaId ("PNP0303")) Name (_CID, 0x0B03D041) Method (_STA, 0, NotSerialized) { ShiftLeft (One, 0x0A, Local0) If (And (IOST, Local0)) { Return (0x0F) } Return (Zero) } Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0060, // Address Range Minimum 0x0060, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IO (Decode16, 0x0064, // Address Range Minimum 0x0064, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IRQNoFlags () {1} }) } Method (PS2K._PRW, 0, NotSerialized) { Return (GPRW (0x1F, 0x04)) } Device (PS2M) { Name (_HID, EisaId ("PNP0F03")) Name (_CID, 0x130FD041) Method (_STA, 0, NotSerialized) { ShiftLeft (One, 0x0C, Local0) If (And (IOST, Local0)) { Return (0x0F) } Return (Zero) } Name (CRS1, ResourceTemplate () { IRQNoFlags () {12} }) Name (CRS2, ResourceTemplate () { IO (Decode16, 0x0060, // Address Range Minimum 0x0060, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IO (Decode16, 0x0064, // Address Range Minimum 0x0064, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IRQNoFlags () {12} }) Method (_CRS, 0, NotSerialized) { ShiftLeft (One, 0x0A, Local0) If (And (IOST, Local0)) { Return (CRS1) } Else { Return (CRS2) } } } Method (PS2M._PRW, 0, NotSerialized) { Return (GPRW (0x1D, 0x04)) } } Device (SATA) { Name (_ADR, 0x001F0002) Name (^NATA, Package (0x01) { 0x001F0002 }) Name (REGF, One) Method (_REG, 2, NotSerialized) { If (LEqual (Arg0, 0x02)) { Store (Arg1, REGF) } } Name (TIM0, Package (0x08) { Package (0x04) { 0x78, 0xB4, 0xF0, 0x0384 }, Package (0x04) { 0x23, 0x21, 0x10, Zero }, Package (0x04) { 0x0B, 0x09, 0x04, Zero }, Package (0x06) { 0x78, 0x5A, 0x3C, 0x28, 0x1E, 0x14 }, Package (0x06) { Zero, One, 0x02, One, 0x02, One }, Package (0x06) { Zero, Zero, Zero, One, One, One }, Package (0x04) { 0x04, 0x03, 0x02, Zero }, Package (0x04) { 0x02, One, Zero, Zero } }) Name (TMD0, Buffer (0x14) {}) CreateDWordField (TMD0, Zero, PIO0) CreateDWordField (TMD0, 0x04, DMA0) CreateDWordField (TMD0, 0x08, PIO1) CreateDWordField (TMD0, 0x0C, DMA1) CreateDWordField (TMD0, 0x10, CHNF) OperationRegion (CFG2, PCI_Config, 0x40, 0x20) Field (CFG2, DWordAcc, NoLock, Preserve) { PMPT, 4, PSPT, 4, PMRI, 6, Offset (0x02), SMPT, 4, SSPT, 4, SMRI, 6, Offset (0x04), PSRI, 4, SSRI, 4, Offset (0x08), PM3E, 1, PS3E, 1, SM3E, 1, SS3E, 1, Offset (0x0A), PMUT, 2, , 2, PSUT, 2, Offset (0x0B), SMUT, 2, , 2, SSUT, 2, Offset (0x0C), Offset (0x14), PM6E, 1, PS6E, 1, SM6E, 1, SS6E, 1, PMCR, 1, PSCR, 1, SMCR, 1, SSCR, 1, , 4, PMAE, 1, PSAE, 1, SMAE, 1, SSAE, 1 } Name (GMPT, Zero) Name (GMUE, Zero) Name (GMUT, Zero) Name (GMCR, Zero) Name (GSPT, Zero) Name (GSUE, Zero) Name (GSUT, Zero) Name (GSCR, Zero) Device (CHN0) { Name (_ADR, Zero) Method (_GTM, 0, NotSerialized) { FZHD () ShiftLeft (PSCR, One, Local1) Or (PMCR, Local1, Local0) ShiftLeft (PMAE, 0x02, Local3) ShiftLeft (PM6E, One, Local4) Or (Local3, Local4, Local3) Or (PM3E, Local3, Local1) ShiftLeft (PMPT, 0x04, Local3) Or (Local1, Local3, Local1) ShiftLeft (PSAE, 0x02, Local3) ShiftLeft (PS6E, One, Local4) Or (Local3, Local4, Local3) Or (PS3E, Local3, Local2) ShiftLeft (PSPT, 0x04, Local3) Or (Local2, Local3, Local2) Return (GTM (PMRI, Local1, PMUT, PSRI, Local2, PSUT, Local0)) } Method (_STM, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg0, TMD0) ShiftLeft (PMAE, 0x02, Local3) ShiftLeft (PM6E, One, Local4) Or (Local3, Local4, Local3) Or (PM3E, Local3, Local0) ShiftLeft (PMPT, 0x04, Local3) Or (Local0, Local3, Local0) ShiftLeft (PSAE, 0x02, Local3) ShiftLeft (PS6E, One, Local4) Or (Local3, Local4, Local3) Or (PS3E, Local3, Local1) ShiftLeft (PSPT, 0x04, Local3) Or (Local1, Local3, Local1) Store (PMRI, GMPT) Store (Local0, GMUE) Store (PMUT, GMUT) Store (PMCR, GMCR) Store (PSRI, GSPT) Store (Local1, GSUE) Store (PSUT, GSUT) Store (PSCR, GSCR) STM () Store (GMPT, PMRI) Store (GMUE, Local0) Store (GMUT, PMUT) Store (GMCR, PMCR) Store (GSUE, Local1) Store (GSUT, PSUT) Store (GSCR, PSCR) If (And (Local0, One)) { Store (One, PM3E) } Else { Store (Zero, PM3E) } If (And (Local0, 0x02)) { Store (One, PM6E) } Else { Store (Zero, PM6E) } If (And (Local0, 0x04)) { Store (One, PMAE) } Else { Store (Zero, PMAE) } If (And (Local1, One)) { Store (One, PS3E) } Else { Store (Zero, PS3E) } If (And (Local1, 0x02)) { Store (One, PS6E) } Else { Store (Zero, PS6E) } If (And (Local1, 0x04)) { Store (One, PSAE) } Else { Store (Zero, PSAE) } Store (GTF (Zero, Arg1), ATA0) Store (GTF (One, Arg2), ATA1) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA0)) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA1)) } } } Device (CHN1) { Name (_ADR, One) Method (_GTM, 0, NotSerialized) { FZHD () ShiftLeft (SSCR, One, Local1) Or (SMCR, Local1, Local0) ShiftLeft (SMAE, 0x02, Local3) ShiftLeft (SM6E, One, Local4) Or (Local3, Local4, Local3) Or (SM3E, Local3, Local1) ShiftLeft (SMPT, 0x04, Local3) Or (Local1, Local3, Local1) ShiftLeft (SSAE, 0x02, Local3) ShiftLeft (SS6E, One, Local4) Or (Local3, Local4, Local3) Or (SS3E, Local3, Local2) ShiftLeft (SSPT, 0x04, Local3) Or (Local2, Local3, Local2) Return (GTM (SMRI, Local1, SMUT, SSRI, Local2, SSUT, Local0)) } Method (_STM, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg0, TMD0) ShiftLeft (SMAE, 0x02, Local3) ShiftLeft (SM6E, One, Local4) Or (Local3, Local4, Local3) Or (SM3E, Local3, Local0) ShiftLeft (SMPT, 0x04, Local3) Or (Local0, Local3, Local0) ShiftLeft (SSAE, 0x02, Local3) ShiftLeft (SS6E, One, Local4) Or (Local3, Local4, Local3) Or (SS3E, Local3, Local1) ShiftLeft (SSPT, 0x04, Local3) Or (Local1, Local3, Local1) Store (SMRI, GMPT) Store (Local0, GMUE) Store (SMUT, GMUT) Store (SMCR, GMCR) Store (SSRI, GSPT) Store (Local1, GSUE) Store (SSUT, GSUT) Store (SSCR, GSCR) STM () Store (GMPT, SMRI) Store (GMUE, Local0) Store (GMUT, SMUT) Store (GMCR, SMCR) Store (GSUE, Local1) Store (GSUT, SSUT) Store (GSCR, SSCR) If (And (Local0, One)) { Store (One, SM3E) } Else { Store (Zero, SM3E) } If (And (Local0, 0x02)) { Store (One, SM6E) } Else { Store (Zero, SM6E) } If (And (Local0, 0x04)) { Store (One, SMAE) } Else { Store (Zero, SMAE) } If (And (Local1, One)) { Store (One, SS3E) } Else { Store (Zero, SS3E) } If (And (Local1, 0x02)) { Store (One, SS6E) } Else { Store (Zero, SS6E) } If (And (Local1, 0x04)) { Store (One, SSAE) } Else { Store (Zero, SSAE) } Store (GTF (Zero, Arg1), ATA2) Store (GTF (One, Arg2), ATA3) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA2)) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA3)) } } } Method (GTM, 7, Serialized) { Store (Ones, PIO0) Store (Ones, PIO1) Store (Ones, DMA0) Store (Ones, DMA1) Store (0x10, CHNF) If (REGF) {} Else { Return (TMD0) } If (And (Arg1, 0x20)) { Or (CHNF, 0x02, CHNF) } Store (Match (DerefOf (Index (TIM0, One)), MEQ, Arg0, MTR, Zero, Zero), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)), Local7) Store (Local7, DMA0) Store (Local7, PIO0) If (And (Arg4, 0x20)) { Or (CHNF, 0x08, CHNF) } Store (Match (DerefOf (Index (TIM0, 0x02)), MEQ, Arg3, MTR, Zero, Zero), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)), Local7) Store (Local7, DMA1) Store (Local7, PIO1) If (And (Arg1, 0x07)) { Store (Arg2, Local5) If (And (Arg1, 0x02)) { Add (Local5, 0x02, Local5) } If (And (Arg1, 0x04)) { Add (Local5, 0x04, Local5) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)), DMA0) Or (CHNF, One, CHNF) } If (And (Arg4, 0x07)) { Store (Arg5, Local5) If (And (Arg4, 0x02)) { Add (Local5, 0x02, Local5) } If (And (Arg4, 0x04)) { Add (Local5, 0x04, Local5) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)), DMA1) Or (CHNF, 0x04, CHNF) } Store (TMD0, Debug) Return (TMD0) } Method (STM, 0, Serialized) { If (REGF) { Store (Zero, GMUE) Store (Zero, GMUT) Store (Zero, GSUE) Store (Zero, GSUT) If (And (CHNF, One)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA0, MTR, Zero, Zero), Local0) If (LGreater (Local0, 0x05)) { Store (0x05, Local0) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), GMUT) Or (GMUE, One, GMUE) If (LGreater (Local0, 0x02)) { Or (GMUE, 0x02, GMUE) } If (LGreater (Local0, 0x04)) { And (GMUE, 0xFD, GMUE) Or (GMUE, 0x04, GMUE) } } Else { If (Or (LEqual (PIO0, Ones), LEqual (PIO0, Zero))) { If (And (LLess (DMA0, Ones), LGreater (DMA0, Zero))) { Store (DMA0, PIO0) Or (GMUE, 0x80, GMUE) } } } If (And (CHNF, 0x04)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA1, MTR, Zero, Zero), Local0) If (LGreater (Local0, 0x05)) { Store (0x05, Local0) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), GSUT) Or (GSUE, One, GSUE) If (LGreater (Local0, 0x02)) { Or (GSUE, 0x02, GSUE) } If (LGreater (Local0, 0x04)) { And (GSUE, 0xFD, GSUE) Or (GSUE, 0x04, GSUE) } } Else { If (Or (LEqual (PIO1, Ones), LEqual (PIO1, Zero))) { If (And (LLess (DMA1, Ones), LGreater (DMA1, Zero))) { Store (DMA1, PIO1) Or (GSUE, 0x80, GSUE) } } } If (And (CHNF, 0x02)) { Or (GMUE, 0x20, GMUE) } If (And (CHNF, 0x08)) { Or (GSUE, 0x20, GSUE) } And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO0, MTR, Zero, Zero), 0x07, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, One)), Local0)), Local1) Store (Local1, GMPT) If (LLess (Local0, 0x03)) { Or (GMUE, 0x50, GMUE) } And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO1, MTR, Zero, Zero), 0x07, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local0)), Local1) Store (Local1, GSPT) If (LLess (Local0, 0x03)) { Or (GSUE, 0x50, GSUE) } } } 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, Zero, 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 (Arg1, Debug) Store (Zero, CMDC) Name (ID49, 0x0C00) Name (ID59, Zero) Name (ID53, 0x04) Name (ID63, 0x0F00) Name (ID88, 0x0F00) Name (IRDY, One) Name (PIOT, Zero) Name (DMAT, Zero) 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, One)) { Store (DMA0, DMAT) } } If (LAnd (LAnd (And (ID53, 0x04), And (ID88, 0xFF00)), DMAT)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMAT, MTR, Zero, Zero), Local1) If (LGreater (Local1, 0x05)) { Store (0x05, Local1) } GTFB (AT01, Or (0x40, Local1), Local7) } Else { If (LAnd (And (ID63, 0xFF00), PIOT)) { And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR, Zero, Zero), 0x03, Local0) Or (0x20, DerefOf (Index (DerefOf (Index (TIM0, 0x07)), Local0)), Local1) GTFB (AT01, Local1, Local7) } } If (IRDY) { And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR, Zero, Zero), 0x07, Local0) Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0)), Local1) GTFB (AT01, Local1, Local7) } Else { If (And (ID49, 0x0400)) { GTFB (AT01, One, Local7) } } If (LAnd (And (ID59, 0x0100), And (ID59, 0xFF))) { GTFB (AT03, And (ID59, 0xFF), Local7) } Store (ATAB, Debug) Return (ATAB) } Method (RATA, 1, NotSerialized) { CreateByteField (Arg0, Zero, CMDN) Multiply (CMDN, 0x38, Local0) CreateField (Arg0, 0x08, Local0, RETB) Store (RETB, Debug) Return (RETB) } } Device (SAT1) { Name (_ADR, 0x001F0005) Name (REGF, One) Method (_REG, 2, NotSerialized) { If (LEqual (Arg0, 0x02)) { Store (Arg1, REGF) } } Name (TIM0, Package (0x08) { Package (0x04) { 0x78, 0xB4, 0xF0, 0x0384 }, Package (0x04) { 0x23, 0x21, 0x10, Zero }, Package (0x04) { 0x0B, 0x09, 0x04, Zero }, Package (0x06) { 0x78, 0x5A, 0x3C, 0x28, 0x1E, 0x14 }, Package (0x06) { Zero, One, 0x02, One, 0x02, One }, Package (0x06) { Zero, Zero, Zero, One, One, One }, Package (0x04) { 0x04, 0x03, 0x02, Zero }, Package (0x04) { 0x02, One, Zero, Zero } }) Name (TMD0, Buffer (0x14) {}) CreateDWordField (TMD0, Zero, PIO0) CreateDWordField (TMD0, 0x04, DMA0) CreateDWordField (TMD0, 0x08, PIO1) CreateDWordField (TMD0, 0x0C, DMA1) CreateDWordField (TMD0, 0x10, CHNF) OperationRegion (CFG2, PCI_Config, 0x40, 0x20) Field (CFG2, DWordAcc, NoLock, Preserve) { PMPT, 4, PSPT, 4, PMRI, 6, Offset (0x02), SMPT, 4, SSPT, 4, SMRI, 6, Offset (0x04), PSRI, 4, SSRI, 4, Offset (0x08), PM3E, 1, PS3E, 1, SM3E, 1, SS3E, 1, Offset (0x0A), PMUT, 2, , 2, PSUT, 2, Offset (0x0B), SMUT, 2, , 2, SSUT, 2, Offset (0x0C), Offset (0x14), PM6E, 1, PS6E, 1, SM6E, 1, SS6E, 1, PMCR, 1, PSCR, 1, SMCR, 1, SSCR, 1, , 4, PMAE, 1, PSAE, 1, SMAE, 1, SSAE, 1 } Name (GMPT, Zero) Name (GMUE, Zero) Name (GMUT, Zero) Name (GMCR, Zero) Name (GSPT, Zero) Name (GSUE, Zero) Name (GSUT, Zero) Name (GSCR, Zero) Device (CHN0) { Name (_ADR, Zero) Method (_GTM, 0, NotSerialized) { ShiftLeft (PSCR, One, Local1) Or (PMCR, Local1, Local0) ShiftLeft (PMAE, 0x02, Local3) ShiftLeft (PM6E, One, Local4) Or (Local3, Local4, Local3) Or (PM3E, Local3, Local1) ShiftLeft (PMPT, 0x04, Local3) Or (Local1, Local3, Local1) ShiftLeft (PSAE, 0x02, Local3) ShiftLeft (PS6E, One, Local4) Or (Local3, Local4, Local3) Or (PS3E, Local3, Local2) ShiftLeft (PSPT, 0x04, Local3) Or (Local2, Local3, Local2) Return (GTM (PMRI, Local1, PMUT, PSRI, Local2, PSUT, Local0)) } Method (_STM, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg0, TMD0) ShiftLeft (PMAE, 0x02, Local3) ShiftLeft (PM6E, One, Local4) Or (Local3, Local4, Local3) Or (PM3E, Local3, Local0) ShiftLeft (PMPT, 0x04, Local3) Or (Local0, Local3, Local0) ShiftLeft (PSAE, 0x02, Local3) ShiftLeft (PS6E, One, Local4) Or (Local3, Local4, Local3) Or (PS3E, Local3, Local1) ShiftLeft (PSPT, 0x04, Local3) Or (Local1, Local3, Local1) Store (PMRI, GMPT) Store (Local0, GMUE) Store (PMUT, GMUT) Store (PMCR, GMCR) Store (PSRI, GSPT) Store (Local1, GSUE) Store (PSUT, GSUT) Store (PSCR, GSCR) STM () Store (GMPT, PMRI) Store (GMUE, Local0) Store (GMUT, PMUT) Store (GMCR, PMCR) Store (GSUE, Local1) Store (GSUT, PSUT) Store (GSCR, PSCR) If (And (Local0, One)) { Store (One, PM3E) } Else { Store (Zero, PM3E) } If (And (Local0, 0x02)) { Store (One, PM6E) } Else { Store (Zero, PM6E) } If (And (Local0, 0x04)) { Store (One, PMAE) } Else { Store (Zero, PMAE) } If (And (Local1, One)) { Store (One, PS3E) } Else { Store (Zero, PS3E) } If (And (Local1, 0x02)) { Store (One, PS6E) } Else { Store (Zero, PS6E) } If (And (Local1, 0x04)) { Store (One, PSAE) } Else { Store (Zero, PSAE) } Store (GTF (Zero, Arg1), ATA0) Store (GTF (One, Arg2), ATA1) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA0)) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA1)) } } } Device (CHN1) { Name (_ADR, One) Method (_GTM, 0, NotSerialized) { ShiftLeft (SSCR, One, Local1) Or (SMCR, Local1, Local0) ShiftLeft (SMAE, 0x02, Local3) ShiftLeft (SM6E, One, Local4) Or (Local3, Local4, Local3) Or (SM3E, Local3, Local1) ShiftLeft (SMPT, 0x04, Local3) Or (Local1, Local3, Local1) ShiftLeft (SSAE, 0x02, Local3) ShiftLeft (SS6E, One, Local4) Or (Local3, Local4, Local3) Or (SS3E, Local3, Local2) ShiftLeft (SSPT, 0x04, Local3) Or (Local2, Local3, Local2) Return (GTM (SMRI, Local1, SMUT, SSRI, Local2, SSUT, Local0)) } Method (_STM, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg0, TMD0) ShiftLeft (SMAE, 0x02, Local3) ShiftLeft (SM6E, One, Local4) Or (Local3, Local4, Local3) Or (SM3E, Local3, Local0) ShiftLeft (SMPT, 0x04, Local3) Or (Local0, Local3, Local0) ShiftLeft (SSAE, 0x02, Local3) ShiftLeft (SS6E, One, Local4) Or (Local3, Local4, Local3) Or (SS3E, Local3, Local1) ShiftLeft (SSPT, 0x04, Local3) Or (Local1, Local3, Local1) Store (SMRI, GMPT) Store (Local0, GMUE) Store (SMUT, GMUT) Store (SMCR, GMCR) Store (SSRI, GSPT) Store (Local1, GSUE) Store (SSUT, GSUT) Store (SSCR, GSCR) STM () Store (GMPT, SMRI) Store (GMUE, Local0) Store (GMUT, SMUT) Store (GMCR, SMCR) Store (GSUE, Local1) Store (GSUT, SSUT) Store (GSCR, SSCR) If (And (Local0, One)) { Store (One, SM3E) } Else { Store (Zero, SM3E) } If (And (Local0, 0x02)) { Store (One, SM6E) } Else { Store (Zero, SM6E) } If (And (Local0, 0x04)) { Store (One, SMAE) } Else { Store (Zero, SMAE) } If (And (Local1, One)) { Store (One, SS3E) } Else { Store (Zero, SS3E) } If (And (Local1, 0x02)) { Store (One, SS6E) } Else { Store (Zero, SS6E) } If (And (Local1, 0x04)) { Store (One, SSAE) } Else { Store (Zero, SSAE) } Store (GTF (Zero, Arg1), ATA2) Store (GTF (One, Arg2), ATA3) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA2)) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA3)) } } } Method (GTM, 7, Serialized) { Store (Ones, PIO0) Store (Ones, PIO1) Store (Ones, DMA0) Store (Ones, DMA1) Store (0x10, CHNF) If (REGF) {} Else { Return (TMD0) } If (And (Arg1, 0x20)) { Or (CHNF, 0x02, CHNF) } Store (Match (DerefOf (Index (TIM0, One)), MEQ, Arg0, MTR, Zero, Zero), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)), Local7) Store (Local7, DMA0) Store (Local7, PIO0) If (And (Arg4, 0x20)) { Or (CHNF, 0x08, CHNF) } Store (Match (DerefOf (Index (TIM0, 0x02)), MEQ, Arg3, MTR, Zero, Zero), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)), Local7) Store (Local7, DMA1) Store (Local7, PIO1) If (And (Arg1, 0x07)) { Store (Arg2, Local5) If (And (Arg1, 0x02)) { Add (Local5, 0x02, Local5) } If (And (Arg1, 0x04)) { Add (Local5, 0x04, Local5) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)), DMA0) Or (CHNF, One, CHNF) } If (And (Arg4, 0x07)) { Store (Arg5, Local5) If (And (Arg4, 0x02)) { Add (Local5, 0x02, Local5) } If (And (Arg4, 0x04)) { Add (Local5, 0x04, Local5) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)), DMA1) Or (CHNF, 0x04, CHNF) } Store (TMD0, Debug) Return (TMD0) } Method (STM, 0, Serialized) { If (REGF) { Store (Zero, GMUE) Store (Zero, GMUT) Store (Zero, GSUE) Store (Zero, GSUT) If (And (CHNF, One)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA0, MTR, Zero, Zero), Local0) If (LGreater (Local0, 0x05)) { Store (0x05, Local0) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), GMUT) Or (GMUE, One, GMUE) If (LGreater (Local0, 0x02)) { Or (GMUE, 0x02, GMUE) } If (LGreater (Local0, 0x04)) { And (GMUE, 0xFD, GMUE) Or (GMUE, 0x04, GMUE) } } Else { If (Or (LEqual (PIO0, Ones), LEqual (PIO0, Zero))) { If (And (LLess (DMA0, Ones), LGreater (DMA0, Zero))) { Store (DMA0, PIO0) Or (GMUE, 0x80, GMUE) } } } If (And (CHNF, 0x04)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA1, MTR, Zero, Zero), Local0) If (LGreater (Local0, 0x05)) { Store (0x05, Local0) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), GSUT) Or (GSUE, One, GSUE) If (LGreater (Local0, 0x02)) { Or (GSUE, 0x02, GSUE) } If (LGreater (Local0, 0x04)) { And (GSUE, 0xFD, GSUE) Or (GSUE, 0x04, GSUE) } } Else { If (Or (LEqual (PIO1, Ones), LEqual (PIO1, Zero))) { If (And (LLess (DMA1, Ones), LGreater (DMA1, Zero))) { Store (DMA1, PIO1) Or (GSUE, 0x80, GSUE) } } } If (And (CHNF, 0x02)) { Or (GMUE, 0x20, GMUE) } If (And (CHNF, 0x08)) { Or (GSUE, 0x20, GSUE) } And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO0, MTR, Zero, Zero), 0x07, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, One)), Local0)), Local1) Store (Local1, GMPT) If (LLess (Local0, 0x03)) { Or (GMUE, 0x50, GMUE) } And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO1, MTR, Zero, Zero), 0x07, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local0)), Local1) Store (Local1, GSPT) If (LLess (Local0, 0x03)) { Or (GSUE, 0x50, GSUE) } } } 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, Zero, 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 (Arg1, Debug) Store (Zero, CMDC) Name (ID49, 0x0C00) Name (ID59, Zero) Name (ID53, 0x04) Name (ID63, 0x0F00) Name (ID88, 0x0F00) Name (IRDY, One) Name (PIOT, Zero) Name (DMAT, Zero) 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, One)) { Store (DMA0, DMAT) } } If (LAnd (LAnd (And (ID53, 0x04), And (ID88, 0xFF00)), DMAT)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMAT, MTR, Zero, Zero), Local1) If (LGreater (Local1, 0x05)) { Store (0x05, Local1) } GTFB (AT01, Or (0x40, Local1), Local7) } Else { If (LAnd (And (ID63, 0xFF00), PIOT)) { And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR, Zero, Zero), 0x03, Local0) Or (0x20, DerefOf (Index (DerefOf (Index (TIM0, 0x07)), Local0)), Local1) GTFB (AT01, Local1, Local7) } } If (IRDY) { And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR, Zero, Zero), 0x07, Local0) Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0)), Local1) GTFB (AT01, Local1, Local7) } Else { If (And (ID49, 0x0400)) { GTFB (AT01, One, Local7) } } If (LAnd (And (ID59, 0x0100), And (ID59, 0xFF))) { GTFB (AT03, And (ID59, 0xFF), Local7) } Store (ATAB, Debug) Return (ATAB) } Method (RATA, 1, NotSerialized) { CreateByteField (Arg0, Zero, CMDN) Multiply (CMDN, 0x38, Local0) CreateField (Arg0, 0x08, Local0, RETB) Store (RETB, Debug) Return (RETB) } } Device (EUSB) { Name (_ADR, 0x001D0007) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0D, 0x04)) } } Device (USBE) { Name (_ADR, 0x001A0007) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0D, 0x04)) } } Device (P0P5) { Name (_ADR, 0x001C0001) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR05) } Return (PR05) } } Device (P0P6) { Name (_ADR, 0x001C0002) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR06) } Return (PR06) } } Device (P0P7) { Name (_ADR, 0x001C0003) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR07) } Return (PR07) } } Device (P0P8) { Name (_ADR, 0x001C0004) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR08) } Return (PR08) } Device (JMF0) { Name (_ADR, Zero) Name (PIOT, Package (0x05) { 0x0258, 0x0186, 0x014A, 0xB4, 0x78 }) Name (UDMA, Package (0x07) { 0x78, 0x50, 0x3C, 0x28, 0x1E, 0x14, 0x0F }) Name (MDMA, Package (0x03) { 0x01E0, 0x96, 0x78 }) OperationRegion (CF40, PCI_Config, 0x40, 0x04) Field (CF40, ByteAcc, NoLock, Preserve) { , 3, CAB0, 1, , 18, SWAP, 1, CHN0, 1, Offset (0x04) } OperationRegion (CF80, PCI_Config, 0x80, 0x04) Field (CF80, ByteAcc, NoLock, Preserve) { , 19, CAB1, 1, Offset (0x03), CHN1, 1, Offset (0x04) } Name (IDEB, Buffer (0x14) {}) CreateDWordField (IDEB, Zero, GTM0) CreateDWordField (IDEB, 0x04, GTM1) CreateDWordField (IDEB, 0x08, GTM2) CreateDWordField (IDEB, 0x0C, GTM3) CreateDWordField (IDEB, 0x10, GTM4) Name (PMIO, 0x04) Name (PMDM, 0x06) Name (PSIO, 0x04) Name (PSDM, 0x06) Name (SMIO, 0x04) Name (SMDM, 0x06) Name (SSIO, 0x04) Name (SSDM, 0x06) Name (MODP, 0x05) Name (MODS, 0x05) Device (SDE0) { Name (_ADR, Zero) Method (_GTM, 0, NotSerialized) { Store (DerefOf (Index (PIOT, PMIO)), Local0) Store (DerefOf (Index (PIOT, PSIO)), Local2) Store (0x1A, Local4) If (LAnd (MODP, One)) { Store (DerefOf (Index (UDMA, PMDM)), Local1) If (LGreater (PMDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, PMDM) Store (DerefOf (Index (UDMA, PMDM)), Local1) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, PMDM) Store (DerefOf (Index (UDMA, PMDM)), Local1) } } } Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, PMDM)), Local1) } If (LAnd (MODP, 0x04)) { Store (DerefOf (Index (UDMA, PSDM)), Local3) If (LGreater (PSDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, PSDM) Store (DerefOf (Index (UDMA, PSDM)), Local3) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, PSDM) Store (DerefOf (Index (UDMA, PSDM)), Local3) } } } Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, PSDM)), Local3) } Store (Local0, GTM0) Store (Local1, GTM1) Store (Local2, GTM2) Store (Local3, GTM3) Store (Local4, GTM4) Return (IDEB) } Method (_STM, 3, NotSerialized) { Store (Arg0, IDEB) Store (GTM0, Local0) Store (GTM1, Local1) Store (GTM2, Local2) Store (GTM3, Local3) Store (GTM4, Local4) If (LAnd (LNot (LEqual (Local0, Ones)), LNot (LEqual (Local0, Zero)))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PMIO) } If (LAnd (LNot (LEqual (Local1, Ones)), LNot (LEqual (Local1, Zero)))) { If (LAnd (Local4, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), PMDM) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), PMDM) } } If (LAnd (LNot (LEqual (Local2, Ones)), LNot (LEqual (Local2, Zero)))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PSIO) } If (LAnd (LNot (LEqual (Local3, Ones)), LNot (LEqual (Local3, Zero)))) { If (LAnd (Local4, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), PSDM) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), PSDM) } } Store (Local4, MODP) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PMIO, PIOM) Or (PIOM, 0x08, PIOM) Store (PMDM, DMAM) If (LAnd (MODP, One)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PSIO, PIOM) Or (PIOM, 0x08, PIOM) Store (PSDM, DMAM) If (LAnd (MODP, 0x04)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } Device (SDE1) { Name (_ADR, One) Method (_GTM, 0, NotSerialized) { Store (DerefOf (Index (PIOT, SMIO)), Local0) Store (DerefOf (Index (PIOT, SSIO)), Local2) Store (0x1A, Local4) If (LAnd (MODS, One)) { Store (DerefOf (Index (UDMA, SMDM)), Local1) If (LGreater (SMDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, SMDM) Store (DerefOf (Index (UDMA, SMDM)), Local1) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, SMDM) Store (DerefOf (Index (UDMA, SMDM)), Local1) } } } Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, SMDM)), Local1) } If (LAnd (MODS, 0x04)) { Store (DerefOf (Index (UDMA, SSDM)), Local3) If (LGreater (SSDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, SSDM) Store (DerefOf (Index (UDMA, SSDM)), Local3) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, SSDM) Store (DerefOf (Index (UDMA, SSDM)), Local3) } } } Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, SSDM)), Local3) } Store (Local0, GTM0) Store (Local1, GTM1) Store (Local2, GTM2) Store (Local3, GTM3) Store (Local4, GTM4) Return (IDEB) } Method (_STM, 3, NotSerialized) { Store (Arg0, IDEB) Store (GTM0, Local0) Store (GTM1, Local1) Store (GTM2, Local2) Store (GTM3, Local3) Store (GTM4, Local4) If (LAnd (LNot (LEqual (Local0, Ones)), LNot (LEqual (Local0, Zero)))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), SMIO) } If (LAnd (LNot (LEqual (Local1, Ones)), LNot (LEqual (Local1, Zero)))) { If (LAnd (Local4, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), SMDM) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), SMDM) } } If (LAnd (LNot (LEqual (Local2, Ones)), LNot (LEqual (Local2, Zero)))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), SSIO) } If (LAnd (LNot (LEqual (Local3, Ones)), LNot (LEqual (Local3, Zero)))) { If (LAnd (Local4, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), SSDM) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), SSDM) } } Store (Local4, MODS) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (SMIO, PIOM) Or (PIOM, 0x08, PIOM) Store (SMDM, DMAM) If (LAnd (MODS, One)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (SSIO, PIOM) Or (PIOM, 0x08, PIOM) Store (SSDM, DMAM) If (LAnd (MODS, 0x04)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } } Device (JMF1) { Name (_ADR, One) Name (PIOT, Package (0x05) { 0x0258, 0x0186, 0x014A, 0xB4, 0x78 }) Name (UDMA, Package (0x07) { 0x78, 0x50, 0x3C, 0x28, 0x1E, 0x14, 0x0F }) Name (MDMA, Package (0x03) { 0x01E0, 0x96, 0x78 }) OperationRegion (CF40, PCI_Config, 0x40, 0x04) Field (CF40, ByteAcc, NoLock, Preserve) { , 3, CAB0, 1, , 18, SWAP, 1, CHN0, 1, Offset (0x04) } OperationRegion (CF80, PCI_Config, 0x80, 0x04) Field (CF80, ByteAcc, NoLock, Preserve) { , 19, CAB1, 1, Offset (0x03), CHN1, 1, Offset (0x04) } Name (IDEB, Buffer (0x14) {}) CreateDWordField (IDEB, Zero, GTM0) CreateDWordField (IDEB, 0x04, GTM1) CreateDWordField (IDEB, 0x08, GTM2) CreateDWordField (IDEB, 0x0C, GTM3) CreateDWordField (IDEB, 0x10, GTM4) Name (PMIO, 0x04) Name (PMDM, 0x06) Name (PSIO, 0x04) Name (PSDM, 0x06) Name (SMIO, 0x04) Name (SMDM, 0x06) Name (SSIO, 0x04) Name (SSDM, 0x06) Name (MODP, 0x05) Name (MODS, 0x05) Device (SDE0) { Name (_ADR, Zero) Method (_GTM, 0, NotSerialized) { Store (DerefOf (Index (PIOT, PMIO)), Local0) Store (DerefOf (Index (PIOT, PSIO)), Local2) Store (0x1A, Local4) If (LAnd (MODP, One)) { Store (DerefOf (Index (UDMA, PMDM)), Local1) If (LGreater (PMDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, PMDM) Store (DerefOf (Index (UDMA, PMDM)), Local1) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, PMDM) Store (DerefOf (Index (UDMA, PMDM)), Local1) } } } Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, PMDM)), Local1) } If (LAnd (MODP, 0x04)) { Store (DerefOf (Index (UDMA, PSDM)), Local3) If (LGreater (PSDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, PSDM) Store (DerefOf (Index (UDMA, PSDM)), Local3) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, PSDM) Store (DerefOf (Index (UDMA, PSDM)), Local3) } } } Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, PSDM)), Local3) } Store (Local0, GTM0) Store (Local1, GTM1) Store (Local2, GTM2) Store (Local3, GTM3) Store (Local4, GTM4) Return (IDEB) } Method (_STM, 3, NotSerialized) { Store (Arg0, IDEB) Store (GTM0, Local0) Store (GTM1, Local1) Store (GTM2, Local2) Store (GTM3, Local3) Store (GTM4, Local4) If (LAnd (LNot (LEqual (Local0, Ones)), LNot (LEqual (Local0, Zero)))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PMIO) } If (LAnd (LNot (LEqual (Local1, Ones)), LNot (LEqual (Local1, Zero)))) { If (LAnd (Local4, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), PMDM) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), PMDM) } } If (LAnd (LNot (LEqual (Local2, Ones)), LNot (LEqual (Local2, Zero)))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PSIO) } If (LAnd (LNot (LEqual (Local3, Ones)), LNot (LEqual (Local3, Zero)))) { If (LAnd (Local4, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), PSDM) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), PSDM) } } Store (Local4, MODP) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PMIO, PIOM) Or (PIOM, 0x08, PIOM) Store (PMDM, DMAM) If (LAnd (MODP, One)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PSIO, PIOM) Or (PIOM, 0x08, PIOM) Store (PSDM, DMAM) If (LAnd (MODP, 0x04)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } Device (SDE1) { Name (_ADR, One) Method (_GTM, 0, NotSerialized) { Store (DerefOf (Index (PIOT, SMIO)), Local0) Store (DerefOf (Index (PIOT, SSIO)), Local2) Store (0x1A, Local4) If (LAnd (MODS, One)) { Store (DerefOf (Index (UDMA, SMDM)), Local1) If (LGreater (SMDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, SMDM) Store (DerefOf (Index (UDMA, SMDM)), Local1) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, SMDM) Store (DerefOf (Index (UDMA, SMDM)), Local1) } } } Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, SMDM)), Local1) } If (LAnd (MODS, 0x04)) { Store (DerefOf (Index (UDMA, SSDM)), Local3) If (LGreater (SSDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, SSDM) Store (DerefOf (Index (UDMA, SSDM)), Local3) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, SSDM) Store (DerefOf (Index (UDMA, SSDM)), Local3) } } } Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, SSDM)), Local3) } Store (Local0, GTM0) Store (Local1, GTM1) Store (Local2, GTM2) Store (Local3, GTM3) Store (Local4, GTM4) Return (IDEB) } Method (_STM, 3, NotSerialized) { Store (Arg0, IDEB) Store (GTM0, Local0) Store (GTM1, Local1) Store (GTM2, Local2) Store (GTM3, Local3) Store (GTM4, Local4) If (LAnd (LNot (LEqual (Local0, Ones)), LNot (LEqual (Local0, Zero)))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), SMIO) } If (LAnd (LNot (LEqual (Local1, Ones)), LNot (LEqual (Local1, Zero)))) { If (LAnd (Local4, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), SMDM) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), SMDM) } } If (LAnd (LNot (LEqual (Local2, Ones)), LNot (LEqual (Local2, Zero)))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), SSIO) } If (LAnd (LNot (LEqual (Local3, Ones)), LNot (LEqual (Local3, Zero)))) { If (LAnd (Local4, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), SSDM) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), SSDM) } } Store (Local4, MODS) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (SMIO, PIOM) Or (PIOM, 0x08, PIOM) Store (SMDM, DMAM) If (LAnd (MODS, One)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (SSIO, PIOM) Or (PIOM, 0x08, PIOM) Store (SSDM, DMAM) If (LAnd (MODS, 0x04)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } } } Device (P0P9) { Name (_ADR, 0x001C0005) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR09) } Return (PR09) } } Device (USB0) { Name (_ADR, 0x001D0000) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x03, 0x04)) } } Device (USB1) { Name (_ADR, 0x001D0001) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x04, 0x04)) } } Device (USB2) { Name (_ADR, 0x001D0002) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0C, 0x04)) } } Device (USB3) { Name (_ADR, 0x001D0003) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0E, 0x04)) } } Device (USB4) { Name (_ADR, 0x001A0000) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0E, 0x04)) } } Device (USB5) { Name (_ADR, 0x001A0001) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x05, 0x04)) } } Device (P0P4) { Name (_ADR, 0x001C0000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR04) } Return (PR04) } } } Scope (\_GPE) { Method (_L09, 0, NotSerialized) { Notify (\_SB.PCI0.P0P2, 0x02) Notify (\_SB.PCI0.P0P5, 0x02) Notify (\_SB.PCI0.P0P6, 0x02) Notify (\_SB.PCI0.P0P7, 0x02) Notify (\_SB.PCI0.P0P8, 0x02) Notify (\_SB.PCI0.P0P9, 0x02) Notify (\_SB.PCI0.P0P4, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L0B, 0, NotSerialized) { Notify (\_SB.PCI0.P0P1, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L08, 0, NotSerialized) { \_SB.PCI0.SBRG.SIOH () } Method (_L1F, 0, NotSerialized) { \_SB.PCI0.SBRG.SIOH () } Method (_L1D, 0, NotSerialized) { \_SB.PCI0.SBRG.SIOH () } Method (_L0D, 0, NotSerialized) { Notify (\_SB.PCI0.EUSB, 0x02) Notify (\_SB.PCI0.USBE, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L03, 0, NotSerialized) { Notify (\_SB.PCI0.USB0, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L04, 0, NotSerialized) { Notify (\_SB.PCI0.USB1, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L0C, 0, NotSerialized) { Notify (\_SB.PCI0.USB2, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L0E, 0, NotSerialized) { Notify (\_SB.PCI0.USB3, 0x02) Notify (\_SB.PCI0.USB4, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L05, 0, NotSerialized) { Notify (\_SB.PCI0.USB5, 0x02) Notify (\_SB.PWRB, 0x02) } } Device (PWRB) { Name (_HID, EisaId ("PNP0C0C")) Name (_UID, 0xAA) Name (_STA, 0x0B) } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G0T0, Package (0x07) { 0x00060000, "AP version", 0x40000000, Zero, Zero, One, 0x02 }) Name (G0T1, Package (0x07) { 0x00060001, "Feature flag", 0x40000000, Zero, Zero, One, 0x04 }) Name (GRP0, Package (0x02) { G0T0, G0T1 }) Method (GIT0, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { Store (Zero, ASB1) } Else { If (LEqual (_T_0, One)) { Store (One, ASB1) } Else { Store (Zero, ASB0) } } } Method (SIT0, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { Store (0x0300, DBG8) } Else { If (LEqual (_T_0, One)) { Store (0x0301, DBG8) } Else { Store (Zero, ASB0) } } } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G3T0, Package (0x07) { 0x03010011, "CPU frequency", Zero, Zero, 0x2710, 0x64, 0x012D }) Name (G3T2, Package (0x07) { 0x03060013, "CPU ratio", Zero, Zero, 0x06, One, 0x14 }) Name (G321, Package (0x09) { 0x03820032, "DRAM voltage", Zero, Zero, 0x0708, 0x32, 0x0D, One, "Auto" }) Name (G322, Package (0x0C) { 0x03080031, "DRAM frequency", Zero, Zero, 0x07, "Auto", Zero, "533 MHz", "667 MHz", "800 MHz", "889 MHz", "1067 MHz" }) Name (G340, Package (0x09) { 0x03810051, "PCI Express frequency", Zero, Zero, 0x2328, 0x64, 0x3D, One, "Auto" }) Name (GRP3, Package (0x05) { G3T0, G3T2, G321, G322, G340 }) Method (GIT3, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, 0x11)) { Subtract (GNVS (0x02C0), 0x64, ASB1) } Else { If (LEqual (_T_0, 0x13)) { Subtract (GNVS (0x8298), 0x06, ASB1) } Else { If (LEqual (_T_0, 0x32)) { Store (GNVS (0x4438), ASB1) } Else { If (LEqual (_T_0, 0x31)) { Store (GNVS (0x3480), ASB1) } Else { If (LEqual (_T_0, 0x51)) { Store (GNVS (0x62D0), ASB1) } Else { Store (Zero, ASB0) } } } } } } Method (SIT3, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, 0x11)) { Add (Arg1, 0x64, Local2) If (LNot (LEqual (GNVS (0x02C0), Local2))) { CreateByteField (CLKR, 0x04, CB04) CreateWordField (CLKR, 0x0E, CBMN) Store (RBLK (0xD2, Zero, 0x13), CLKR) Multiply (Arg1, 0x03, Local0) CreateByteField (MNBF, Local0, MN04) CreateWordField (MNBF, Increment (Local0), MNVL) If (LEqual (CB04, MN04)) { If (And (Arg2, One)) { Store (MNVL, CBMN) WBLK (0xD2, Zero, 0x13, CLKR) } } Else { Or (ASB0, 0x02, ASB0) } If (And (Arg2, One)) { SNVS (0x02C0, Local2) } } } Else { If (LEqual (_T_0, 0x13)) { If (LNot (LEqual (GNVS (0x8298), Add (Arg1, 0x06, Arg1)))) { If (And (Arg2, One)) { SNVS (0x8298, Arg1) } Or (ASB0, 0x02, ASB0) } } Else { If (LEqual (_T_0, 0x32)) { If (LNot (LEqual (GNVS (0x4438), Arg1))) { If (LEqual (Arg1, Zero)) { Or (ASB0, 0x02, ASB0) } Else { If (And (Arg2, One)) { ENFG (0x0A) And (CRE5, 0xE1, Local1) ShiftLeft (Subtract (Arg1, One), One, Local2) Or (Local1, Local2, CRE5) EXFG () } } If (And (Arg2, One)) { SNVS (0x4438, Arg1) } } } Else { If (LEqual (_T_0, 0x31)) { If (LNot (LEqual (GNVS (0x3480), Arg1))) { If (And (Arg2, One)) { SNVS (0x3480, Arg1) } Or (ASB0, 0x02, ASB0) } } Else { If (LEqual (_T_0, 0x51)) { If (LNot (LEqual (GNVS (0x62D0), Arg1))) { CreateByteField (CLKR, 0x10, CB16) Store (RBLK (0xD2, Zero, 0x13), CLKR) CreateByteField (PCEF, Arg1, PC16) If (LEqual (CB16, PC16)) { If (And (Arg2, One)) { Store (PC16, CB16) WBLK (0xD2, Zero, 0x13, CLKR) SNVS (0x62D0, Arg1) } } } } Else { Store (Zero, ASB0) } } } } } } Name (CLKR, 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 (PCEF, Buffer (0x3E) { 0xC8, 0xB4, 0xB6, 0xB8, 0xBA, 0xBC, 0xBE, 0xC0, 0xC2, 0xC4, 0xC6, 0xC8, 0xCA, 0xCC, 0xCE, 0xD0, 0xD2, 0xD4, 0xD6, 0xD8, 0xDA, 0xDC, 0xDE, 0xE0, 0xE2, 0xE4, 0xE6, 0xE8, 0xEA, 0xEC, 0xEE, 0xF0, 0xF2, 0xF4, 0xF6, 0xF8, 0xFA, 0xFC, 0xFE, 0x00, 0x02, 0x04, 0x06, 0x08, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96 }) Name (MNBF, Buffer (0x0387) { 0x05, 0xC8, 0x3C, 0x05, 0xCA, 0x3C, 0x05, 0xCC, 0x3C, 0x05, 0xCE, 0x3C, 0x05, 0xD0, 0x3C, 0x05, 0xD2, 0x3C, 0x05, 0xD4, 0x3C, 0x05, 0xD6, 0x3C, 0x05, 0xD8, 0x3C, 0x05, 0xDA, 0x3C, 0x05, 0xDC, 0x3C, 0x05, 0xDE, 0x3C, 0x05, 0xE0, 0x3C, 0x05, 0xE2, 0x3C, 0x05, 0xE4, 0x3C, 0x05, 0xE6, 0x3C, 0x05, 0xE8, 0x3C, 0x05, 0xEA, 0x3C, 0x05, 0xEC, 0x3C, 0x05, 0xEE, 0x3C, 0x05, 0xF0, 0x3C, 0x05, 0xF2, 0x3C, 0x05, 0xF4, 0x3C, 0x05, 0xF6, 0x3C, 0x05, 0xF8, 0x3C, 0x05, 0xFA, 0x3C, 0x05, 0xFC, 0x3C, 0x05, 0xFE, 0x3C, 0x05, 0x00, 0xBC, 0x05, 0x02, 0xBC, 0x05, 0x04, 0xBC, 0x05, 0x06, 0xBC, 0x05, 0x08, 0xBC, 0x03, 0x8A, 0x3E, 0x03, 0x70, 0x32, 0x03, 0x9E, 0x46, 0x03, 0x7D, 0x37, 0x03, 0x8D, 0x3E, 0x03, 0x8A, 0x3C, 0x03, 0x8B, 0x3C, 0x03, 0x90, 0x3E, 0x03, 0x8D, 0x3C, 0x03, 0x8E, 0x3C, 0x03, 0x93, 0x3E, 0x03, 0x90, 0x3C, 0x03, 0x91, 0x3C, 0x03, 0x92, 0x3C, 0x03, 0x97, 0x3E, 0x03, 0x94, 0x3C, 0x03, 0x95, 0x3C, 0x03, 0x96, 0x3C, 0x03, 0x97, 0x3C, 0x03, 0x98, 0x3C, 0x03, 0x9E, 0x3E, 0x03, 0x9A, 0x3C, 0x03, 0x9B, 0x3C, 0x03, 0x9C, 0x3C, 0x03, 0x9D, 0x3C, 0x03, 0x9E, 0x3C, 0x03, 0x9F, 0x3C, 0x03, 0xA5, 0x3E, 0x03, 0xA1, 0x3C, 0x03, 0xA2, 0x3C, 0x03, 0xA3, 0x3C, 0x03, 0xA4, 0x3C, 0x03, 0xA5, 0x3C, 0x03, 0xA6, 0x3C, 0x03, 0xA7, 0x3C, 0x03, 0xA8, 0x3C, 0x03, 0xA9, 0x3C, 0x03, 0xAA, 0x3C, 0x03, 0xAB, 0x3C, 0x03, 0xAC, 0x3C, 0x03, 0xAD, 0x3C, 0x03, 0xAE, 0x3C, 0x03, 0xAF, 0x3C, 0x03, 0xB0, 0x3C, 0x03, 0xB1, 0x3C, 0x03, 0xB2, 0x3C, 0x03, 0xB3, 0x3C, 0x03, 0xB4, 0x3C, 0x03, 0xB5, 0x3C, 0x03, 0xB6, 0x3C, 0x03, 0xB7, 0x3C, 0x03, 0xB8, 0x3C, 0x03, 0xB9, 0x3C, 0x03, 0xBA, 0x3C, 0x03, 0xBB, 0x3C, 0x03, 0xBC, 0x3C, 0x03, 0xBD, 0x3C, 0x03, 0xBE, 0x3C, 0x03, 0xBF, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC1, 0x3C, 0x03, 0xC2, 0x3C, 0x03, 0xC3, 0x3C, 0x03, 0xC4, 0x3C, 0x03, 0xC5, 0x3C, 0x03, 0xC6, 0x3C, 0x03, 0xC7, 0x3C, 0x02, 0xD6, 0x40, 0x02, 0xA8, 0x32, 0x02, 0xB3, 0x35, 0x02, 0xBE, 0x38, 0x02, 0xBF, 0x38, 0x02, 0xCD, 0x3C, 0x02, 0xDB, 0x40, 0x02, 0xCF, 0x3C, 0x02, 0xD0, 0x3C, 0x02, 0xD1, 0x3C, 0x02, 0xE0, 0x40, 0x02, 0xD3, 0x3C, 0x02, 0xD4, 0x3C, 0x02, 0xD5, 0x3C, 0x02, 0xE4, 0x40, 0x02, 0xD7, 0x3C, 0x02, 0xD8, 0x3C, 0x02, 0xD9, 0x3C, 0x02, 0xDA, 0x3C, 0x02, 0xDB, 0x3C, 0x02, 0xEA, 0x40, 0x02, 0xDD, 0x3C, 0x02, 0xDE, 0x3C, 0x02, 0xDF, 0x3C, 0x02, 0xE0, 0x3C, 0x02, 0xE1, 0x3C, 0x02, 0xE2, 0x3C, 0x02, 0xE3, 0x3C, 0x02, 0xE4, 0x3C, 0x02, 0xE5, 0x3C, 0x02, 0xF5, 0x40, 0x02, 0xE7, 0x3C, 0x02, 0xE8, 0x3C, 0x02, 0xE9, 0x3C, 0x02, 0xEA, 0x3C, 0x02, 0xEB, 0x3C, 0x02, 0xEC, 0x3C, 0x02, 0xED, 0x3C, 0x02, 0xEE, 0x3C, 0x02, 0xEF, 0x3C, 0x02, 0xFF, 0x40, 0x02, 0xF1, 0x3C, 0x02, 0xF2, 0x3C, 0x02, 0xF3, 0x3C, 0x02, 0xF4, 0x3C, 0x02, 0xF5, 0x3C, 0x02, 0xF6, 0x3C, 0x02, 0xF7, 0x3C, 0x02, 0xF8, 0x3C, 0x02, 0xF9, 0x3C, 0x02, 0xFA, 0x3C, 0x02, 0xFB, 0x3C, 0x02, 0xFC, 0x3C, 0x02, 0xFD, 0x3C, 0x02, 0xFE, 0x3C, 0x02, 0xFF, 0x3C, 0x02, 0x00, 0xBC, 0x02, 0x01, 0xBC, 0x02, 0x02, 0xBC, 0x02, 0x03, 0xBC, 0x02, 0x82, 0x1E, 0x02, 0x05, 0xBC, 0x02, 0x06, 0xBC, 0x02, 0x07, 0xBC, 0x02, 0x08, 0xBC, 0x02, 0x09, 0xBC, 0x00, 0xAA, 0x33, 0x00, 0xE7, 0x45, 0x00, 0xA8, 0x32, 0x00, 0xAC, 0x33, 0x00, 0xB0, 0x34, 0x00, 0x69, 0x1F, 0x00, 0x44, 0x14, 0x00, 0x74, 0x22, 0x00, 0xAE, 0x33, 0x00, 0x6E, 0x20, 0x00, 0x45, 0x14, 0x00, 0x5A, 0x1A, 0x00, 0x49, 0x15, 0x00, 0x81, 0x25, 0x00, 0x46, 0x14, 0x00, 0xB3, 0x33, 0x00, 0x4A, 0x15, 0x00, 0x5C, 0x1A, 0x00, 0x47, 0x14, 0x00, 0x72, 0x20, 0x00, 0xB6, 0x33, 0x00, 0x7A, 0x22, 0x00, 0x48, 0x14, 0x00, 0x70, 0x1F, 0x00, 0x57, 0x18, 0x00, 0x50, 0x16, 0x00, 0x49, 0x14, 0x00, 0xE3, 0x3E, 0x00, 0xBB, 0x33, 0x00, 0x76, 0x20, 0x00, 0x4A, 0x14, 0x00, 0xC1, 0x34, 0x00, 0x6C, 0x1D, 0x00, 0x47, 0x13, 0x00, 0x4B, 0x14, 0x00, 0x4F, 0x15, 0x00, 0x75, 0x1F, 0x00, 0x7D, 0x21, 0x00, 0x4C, 0x14, 0x00, 0x7A, 0x20, 0x00, 0xC3, 0x33, 0x00, 0x77, 0x1F, 0x00, 0x4D, 0x14, 0x00, 0x55, 0x16, 0x00, 0x5D, 0x18, 0x00, 0xAB, 0x2C, 0x00, 0x4E, 0x14, 0x00, 0x5A, 0x17, 0x00, 0x6A, 0x1B, 0x00, 0x7E, 0x20, 0x00, 0x4F, 0x14, 0x00, 0x67, 0x1A, 0x00, 0x9B, 0x27, 0x00, 0xF7, 0x3E, 0x00, 0xCC, 0x33, 0x04, 0xC6, 0x4A, 0x04, 0xA1, 0x3C, 0x04, 0x8C, 0x34, 0x04, 0x87, 0x32, 0x04, 0x95, 0x37, 0x04, 0x90, 0x35, 0x04, 0x8B, 0x33, 0x04, 0xA4, 0x3C, 0x04, 0x9F, 0x3A, 0x04, 0x8F, 0x34, 0x04, 0xA0, 0x3A, 0x04, 0xA6, 0x3C, 0x04, 0x56, 0x1F, 0x04, 0x40, 0x17, 0x04, 0x43, 0x18, 0x04, 0x38, 0x14, 0x04, 0x49, 0x1A, 0x04, 0x8A, 0x31, 0x04, 0x71, 0x28, 0x04, 0x44, 0x18, 0x04, 0x6C, 0x26, 0x04, 0x39, 0x14, 0x04, 0xCB, 0x47, 0x04, 0x56, 0x1E, 0x04, 0x45, 0x18, 0x04, 0x7C, 0x2B, 0x04, 0x6B, 0x25, 0x04, 0x3A, 0x14, 0x04, 0x40, 0x16, 0x04, 0x46, 0x18, 0x04, 0x75, 0x28, 0x04, 0x58, 0x1E, 0x04, 0x64, 0x22, 0x04, 0x3B, 0x14, 0x04, 0x47, 0x18, 0x04, 0x59, 0x1E, 0x04, 0x74, 0x27, 0x04, 0xAD, 0x3A, 0x04, 0xEF, 0x50, 0x04, 0x3C, 0x14, 0x04, 0xF1, 0x50, 0x04, 0xAF, 0x3A, 0x04, 0x76, 0x27, 0x04, 0x5B, 0x1E, 0x04, 0x49, 0x18, 0x04, 0x3D, 0x14, 0x04, 0x68, 0x22, 0x04, 0x5C, 0x1E, 0x04, 0x7B, 0x28, 0x04, 0x4A, 0x18, 0x04, 0x44, 0x16, 0x04, 0x3E, 0x14, 0x04, 0x73, 0x25, 0x04, 0x86, 0x2B, 0x04, 0x4B, 0x18, 0x04, 0x5E, 0x1E, 0x04, 0xDF, 0x47, 0x04, 0x3F, 0x14, 0x04, 0x78, 0x26, 0x04, 0x4C, 0x18, 0x04, 0x7F, 0x28, 0x04, 0x9C, 0x31, 0x04, 0x53, 0x1A, 0x04, 0x40, 0x14, 0x04, 0x4D, 0x18, 0x04, 0x4A, 0x17, 0x04, 0x64, 0x1F, 0x04, 0x61, 0x1E, 0x04, 0x5E, 0x1D, 0x04, 0x41, 0x14, 0x04, 0x65, 0x1F, 0x04, 0x62, 0x1E, 0x04, 0x83, 0x28, 0x04, 0x97, 0x2E, 0x04, 0x4F, 0x18, 0x04, 0x42, 0x14, 0x04, 0x56, 0x1A, 0x04, 0x88, 0x29, 0x04, 0x7B, 0x25, 0x04, 0x46, 0x15 }) } Scope (_SB.PCI0.SBRG.ASOC) { Name (OC01, Package (0x06) { 0x01010000, "CPU FSB", 0x2710, 0x9C40, 0x012D, 0x00010003 }) Name (OT00, Package (0x04) { 0x01010000, 0x2710, Zero, One }) Name (OC02, Package (0x06) { 0x01060001, "CPU Multiplier", 0x08, 0x18, 0x11, 0x00010003 }) Name (CPUM, Package (0x04) { 0x01060001, 0x0A, Zero, Zero }) Name (OC03, Package (0x06) { 0x02010002, "Memory Freq", Zero, Zero, 0x07, 0x00010000 }) Name (MEMO, Package (0x0B) { 0x02010002, 0xD034, Zero, One, "Auto", "RESERVE", "533 MHz", "667 MHz", "800 MHz", "889 MHz", "1067 MHz" }) Name (OC04, Package (0x06) { 0x07010003, "PCI Express", 0x2328, 0x3A98, 0x3D, 0x00010000 }) Name (PCIO, Package (0x04) { 0x07010003, 0x2328, Zero, One }) Name (OC0A, Package (0x06) { 0x0202000F, "DRAM Voltage", 0x0708, 0x0992, 0x0E, 0x0001000F }) Name (RAMV, Package (0x13) { 0x0202000F, 0x0708, 0x02, One, "Auto", "1.80V", "1.85V", "1.90V", "1.95V", "2.00V", "2.05V", "2.10V", "2.15V", "2.20V", "2.25V", "2.30V", "2.35V", "2.40V", "2.45V" }) Name (OC0D, Package (0x06) { 0x0906000C, "AI Overclock Tuner", Zero, 0x04, 0x05, 0x00010003 }) Name (AITM, Package (0x09) { 0x0906000C, Zero, One, One, "Manual", "Auto", "Standard", "", "AI N.O.S." }) Name (OC0E, Package (0x06) { 0x0806000D, "NOS Mode", Zero, One, 0x02, 0x00010003 }) Name (NOSM, Package (0x06) { 0x0806000D, Zero, Zero, One, "Auto", "Manual" }) Name (OC06, Package (0x06) { 0x08050005, "Turbo NOS", 0x67, 0x78, 0x07, 0x00010003 }) Name (AOC2, Package (0x0B) { 0x08050005, 0x64, Zero, One, "", "103%", "105%", "107%", "110%", "115%", "120%" }) Name (OC0F, Package (0x06) { 0x0806000E, "Sensitivity", Zero, 0x03, 0x04, 0x00010003 }) Name (SENS, Package (0x07) { 0x0806000E, Zero, Zero, One, "Standard", "Sensitive", "Heavy load" }) Name (EPTY, Package (0x04) { 0x12345678, 0x06, 0x06, Zero }) Name (OBUF, Package (0x09) { OC01, OC02, OC03, OC04, OC06, OC0A, OC0D, OC0E, OC0F }) Method (ASIF, 0, NotSerialized) { Return (MBIF) } Method (OCIF, 0, NotSerialized) { Return (OBUF) } Method (GPRE, 1, NotSerialized) { If (Arg0) { OCOP (0x01010000) Store (ASB1, Index (PREB, One)) OCOP (0x01060001) Store (ASB1, Index (PREB, 0x03)) OCOP (0x02010002) Store (ASB1, Index (PREB, 0x05)) OCOP (0x07010003) Store (ASB1, Index (PREB, 0x07)) OCOP (0x0202000F) Store (ASB1, Index (PREB, 0x09)) OCOP (0x0906000C) Store (ASB1, Index (PREB, 0x0B)) OCOP (0x0806000D) Store (ASB1, Index (PREB, 0x0D)) OCOP (0x0806000E) Store (ASB1, Index (PREB, 0x0F)) OCOP (0x08050005) Store (ASB1, Index (PREB, 0x11)) } Else { Store (DerefOf (Index (G3T0, 0x03)), Index (PREB, One)) Store (DerefOf (Index (G3T2, 0x03)), Index (PREB, 0x03)) Store (DerefOf (Index (G322, 0x03)), Index (PREB, 0x05)) Store (DerefOf (Index (G340, 0x03)), Index (PREB, 0x07)) Store (DerefOf (Index (G321, 0x03)), Index (PREB, 0x09)) Store (DerefOf (Index (G9T0, 0x03)), Index (PREB, 0x0B)) Store (Zero, Index (PREB, 0x0D)) Store (DerefOf (Index (G8T1, 0x03)), Index (PREB, 0x0F)) Store (DerefOf (Index (G8T2, 0x03)), Index (PREB, 0x11)) } Return (PREB) } Name (PREB, Package (0x12) { 0x01010000, Zero, 0x01060001, Zero, 0x02010002, Zero, 0x07010003, Zero, 0x0202000F, Zero, 0x0906000C, Zero, 0x0806000D, Zero, 0x08050005, Zero, 0x0806000E, Zero }) Method (OCOP, 1, NotSerialized) { Store (One, ASB0) Name (_T_0, Zero) Store (Arg0, _T_0) If (LEqual (_T_0, 0x01010000)) { GIT3 (0x03010011) Store (ASB1, Index (OT00, One)) Store (ASB1, Index (OT00, 0x02)) Return (OT00) } Else { If (LEqual (_T_0, 0x01060001)) { GIT3 (0x03060013) Store (ASB1, Index (CPUM, One)) Return (CPUM) } Else { If (LEqual (_T_0, 0x02010002)) { GIT3 (0x03080031) Store (ASB1, Index (MEMO, 0x02)) Return (MEMO) } Else { If (LEqual (_T_0, 0x07010003)) { GIT3 (0x03810051) Store (ASB1, Index (PCIO, 0x02)) Return (PCIO) } Else { If (LEqual (_T_0, 0x0202000F)) { GIT3 (0x03820032) Store (ASB1, Index (RAMV, 0x02)) Return (RAMV) } Else { If (LEqual (_T_0, 0x0906000C)) { GIT9 (0x09080000) Store (ASB1, Index (AITM, 0x02)) Return (AITM) } Else { If (LEqual (_T_0, 0x0806000D)) { GIT8 (0x08080001) If (LGreater (ASB1, Zero)) { Store (One, ASB1) } Else { Store (Zero, ASB1) } Store (ASB1, Index (NOSM, 0x02)) Return (NOSM) } Else { If (LEqual (_T_0, 0x0806000E)) { GIT8 (0x08080001) If (LGreater (ASB1, Zero)) { Decrement (ASB1) } Store (ASB1, Index (SENS, 0x02)) Return (SENS) } Else { If (LEqual (_T_0, 0x08050005)) { GIT8 (0x08080002) Store (ASB1, Index (AOC2, 0x02)) Return (AOC2) } Else { Store (Zero, ASB0) } } } } } } } } } Return (EPTY) } Name (NOSF, Zero) Method (PROC, 3, NotSerialized) { Store (One, ASB0) ShiftRight (Arg0, 0x10, Local0) Name (_T_0, Zero) Store (Arg0, _T_0) If (LEqual (_T_0, 0x01010000)) { SIT3 (0x03010011, Arg1, Arg2) } Else { If (LEqual (_T_0, 0x01060001)) { SIT3 (0x03060013, Arg1, Arg2) } Else { If (LEqual (_T_0, 0x02010002)) { SIT3 (0x03080031, Arg1, Arg2) } Else { If (LEqual (_T_0, 0x07010003)) { SIT3 (0x03810051, Arg1, Arg2) } Else { If (LEqual (_T_0, 0x0202000F)) { Or (Arg1, ShiftLeft (Arg2, 0x08), Local0) Store (Local0, DBGX) SIT3 (0x03820032, Arg1, Arg2) } Else { If (LEqual (_T_0, 0x0906000C)) { SIT9 (0x09080000, Arg1, Arg2) } Else { If (LEqual (_T_0, 0x0806000D)) { If (LEqual (Arg1, Zero)) { SIT8 (0x08080001, Zero, Arg2) Store (Zero, NOSF) } Else { Store (One, NOSF) } } Else { If (LEqual (_T_0, 0x0806000E)) { If (NOSF) { Add (Arg1, One, Local0) SIT8 (0x08080001, Local0, Arg2) } } Else { If (LEqual (_T_0, 0x08050005)) { SIT8 (0x08080002, Arg1, Arg2) } Else { Store (Zero, ASB0) } } } } } } } } } Return (ASB0) } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G4T0, Package (0x04) { 0x04060000, " ASUS Advanced Q-Fan control", 0x40000000, Zero }) Name (G4T1, Package (0x0A) { 0x04080011, " FAN profile", 0x00100001, 0x03, 0x05, "Disabled", "Performance", "Optimal", "Silent", "Ultra Silent" }) Name (G4T2, Package (0x09) { 0x04080011, " FAN profile", 0x00100001, 0x03, 0x04, "Disabled", "Performance", "Optimal", "Silent" }) Name (GR41, Package (0x02) { G4T0, G4T1 }) Name (GR42, Package (0x02) { G4T0, G4T2 }) Method (GIT4, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { Store (GNVS (0x2780), ASB1) } Else { If (LEqual (_T_0, 0x11)) { Store (GNVS (0x3510), ASB1) } Else { Store (Zero, ASB0) } } } Method (SIT4, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, 0x11)) { If (LNot (LEqual (GNVS (0x3510), Arg1))) { SNVS (0x3510, Arg1) Store (0x77, PAR0) ISMI (0x88) } } Else { Store (Zero, ASB0) } } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G5T0, Package (0x07) { 0x05080000, "AI Profile", Zero, Zero, 0x02, "AUTO", Zero }) Name (GRP5, Package (0x01) { G5T0 }) Method (GIT5, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { Store (One, ASB1) } Else { Store (Zero, ASB0) } } Method (SIT5, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { Store (0x03, ASB0) } Else { Store (Zero, ASB0) } } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G6T1, Package (0x07) { 0x06020011, "Vcore Voltage", 0x20000000, Zero, 0x0352, 0x02EE, 0x02 }) Name (G6T2, Package (0x07) { 0x06030012, "CPU Temperature", 0x20000000, Zero, 0x0258, 0x015E, 0x02 }) Name (G6T3, Package (0x07) { 0x06040013, "CPU Fan Speed", 0x20000000, Zero, 0x0320, 0x1900, 0x02 }) Name (G6T4, Package (0x07) { 0x06040073, "Chassis Fan Speed", 0x20000000, Zero, 0x0320, 0x1900, 0x02 }) Name (G6T5, Package (0x07) { 0x060400C3, "Power Fan Speed", 0x20000000, Zero, 0x0320, 0x1900, 0x02 }) Name (G6T6, Package (0x07) { 0x06020061, "+12V Voltage", 0x20000000, 0x2EE0, 0x27D8, 0x0E10, 0x02 }) Name (G6T7, Package (0x07) { 0x06020062, "+5V Voltage", 0x20000000, 0x1388, 0x1194, 0x03E8, 0x02 }) Name (G6T8, Package (0x07) { 0x06020063, "+3.3V Voltage", 0x20000000, 0x0CE4, 0x0B9A, 0x0294, 0x02 }) Name (G6T9, Package (0x07) { 0x06030074, "MB Temperature", 0x20000000, Zero, 0x01C2, 0x01F4, 0x02 }) Name (GRP6, Package (0x09) { G6T1, G6T2, G6T3, G6T4, G6T5, G6T6, G6T7, G6T8, G6T9 }) Method (GIT6, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, 0x11)) { Store (0x0600, ASB1) } Else { If (LEqual (_T_0, 0x12)) { Store (0x0601, ASB1) } Else { If (LEqual (_T_0, 0x13)) { Store (0x0602, ASB1) } Else { If (LEqual (_T_0, 0x73)) { Store (0x0603, ASB1) } Else { If (LEqual (_T_0, 0xC3)) { Store (0x0604, ASB1) } Else { If (LEqual (_T_0, 0x61)) { Store (0x0605, ASB1) } Else { If (LEqual (_T_0, 0x62)) { Store (0x0606, ASB1) } Else { If (LEqual (_T_0, 0x63)) { Store (0x0607, ASB1) } Else { If (LEqual (_T_0, 0x74)) { Store (0x0608, ASB1) } Else { Store (Zero, ASB0) } } } } } } } } } } Method (SIT6, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, 0x11)) { Store (0x0600, DBG8) } Else { If (LEqual (_T_0, 0x12)) { Store (0x0601, DBG8) } Else { If (LEqual (_T_0, 0x13)) { Store (0x0602, DBG8) } Else { If (LEqual (_T_0, 0x73)) { Store (0x0603, DBG8) } Else { If (LEqual (_T_0, 0xC3)) { Store (0x0604, DBG8) } Else { If (LEqual (_T_0, 0x61)) { Store (0x0605, DBG8) } Else { If (LEqual (_T_0, 0x62)) { Store (0x0606, DBG8) } Else { If (LEqual (_T_0, 0x63)) { Store (0x0607, DBG8) } Else { If (LEqual (_T_0, 0x74)) { Store (0x0608, DBG8) } Else { Store (Zero, ASB0) } } } } } } } } } } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G8T1, Package (0x09) { 0x08080001, "N.O.S. sensitivity", Zero, Zero, 0x04, "Auto", "Standard", "Sensitive", "Heavy load" }) Name (G8T2, Package (0x0C) { 0x08080002, "N.O.S. profile", Zero, One, 0x07, Zero, "103%", "105%", "107%", "110%", "115%", "120%" }) Name (GRP8, Package (0x02) { G8T1, G8T2 }) Name (TEMP, Zero) Method (GIT8, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, One)) { Store (GNVS (0x2564), ASB1) } Else { If (LEqual (_T_0, 0x02)) { Store (GNVS (0x34EB), ASB1) } Else { Store (Zero, ASB0) } } } Method (SIT8, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, One)) { If (LNot (LEqual (GNVS (0x2564), Arg1))) { If (And (Arg2, One)) { SNVS (0x2564, Arg1) } Or (ASB0, 0x02, ASB0) } } Else { If (LEqual (_T_0, 0x02)) { If (LNot (LEqual (GNVS (0x34EB), Arg1))) { If (And (Arg2, One)) { SNVS (0x34EB, Arg1) } Or (ASB0, 0x02, ASB0) } } Else { Store (Zero, ASB0) } } } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G9T0, Package (0x0A) { 0x09080000, "AI Tunning", Zero, One, 0x05, "Manual", "Auto", "Standard", Zero, "AI N.O.S" }) Name (GRP9, Package (0x01) { G9T0 }) Method (GIT9, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { Store (GNVS (0x34E3), ASB1) } Else { Store (Zero, ASB0) } } Method (SIT9, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { If (LNot (LEqual (GNVS (0x34E3), Arg1))) { If (And (Arg2, One)) { SNVS (0x34E3, Arg1) } Or (ASB0, 0x02, ASB0) } } Else { Store (Zero, ASB0) } } } Scope (_SB.PCI0.SBRG.ASOC) { Name (GAT1, Package (0x04) { 0x0A070001, "Music Alarm", Zero, Zero }) Name (GAT2, Package (0x04) { 0x0A070002, "Sunday", Zero, One }) Name (GAT3, Package (0x04) { 0x0A070003, "Monday", Zero, One }) Name (GAT4, Package (0x04) { 0x0A070004, "Tuesday", Zero, One }) Name (GAT5, Package (0x04) { 0x0A070005, "Wednesday", Zero, One }) Name (GAT6, Package (0x04) { 0x0A070006, "Thursday", Zero, One }) Name (GAT7, Package (0x04) { 0x0A070007, "Friday", Zero, One }) Name (GAT8, Package (0x04) { 0x0A070008, "Saturday", Zero, One }) Name (GAT9, Package (0x07) { 0x0A060009, "Alarm Hour", Zero, 0x0C, Zero, One, 0x18 }) Name (GATA, Package (0x07) { 0x0A06000A, "Alarm Mins", Zero, Zero, Zero, One, 0x3C }) Name (GATB, Package (0x0A) { 0x0A08000B, "Music Alarm Drive", Zero, 0x03, 0x05, "Primary IDE Master", "Primary IDE Slave", "Secondary IDE Master", "Secondary IDE Slave", "JMicron JMB363 IDE" }) Name (GATC, Package (0x07) { 0x0A06000C, "Starting Track", Zero, 0x10, Zero, One, 0x20 }) Name (GATD, Package (0x08) { 0x0A08000D, "Repeat", Zero, Zero, 0x03, "none", "Single", "All" }) Name (GATE, Package (0x09) { 0x0A08000E, "Length", Zero, Zero, 0x04, "10 mins", "20 mins", "30 mins", "1 hour" }) Name (GATF, Package (0x07) { 0x0A06000F, "Volume", Zero, 0x0F, Zero, One, 0x20 }) } Scope (_SB.PCI0.SBRG.ASOC) { Name (GBT0, Package (0x07) { 0x0B060001, "System performance", 0x00400000, Zero, 0x03, One, 0x04 }) Name (GRPB, Package (0x01) { GBT0 }) Name (VEAL, Zero) Method (GITB, 1, NotSerialized) { Store (VEAL, ASB1) } Method (SITB, 3, NotSerialized) { If (LEqual (And (Arg2, 0xFFFF), One)) { And (Arg1, 0xFFFF, VEAL) Store (VEAL, ASB1) Store (VEAL, PAR0) ISMI (0x88) } } } OperationRegion (_SB.PCI0.SBRG.PIX0, PCI_Config, 0x60, 0x0C) Field (\_SB.PCI0.SBRG.PIX0, ByteAcc, NoLock, Preserve) { PIRA, 8, PIRB, 8, PIRC, 8, PIRD, 8, Offset (0x08), PIRE, 8, PIRF, 8, PIRG, 8, PIRH, 8 } Scope (_SB) { Name (BUFA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {15} }) CreateWordField (BUFA, One, IRA0) Device (LNKA) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, One) Method (_STA, 0, NotSerialized) { And (PIRA, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSA) } Method (_DIS, 0, NotSerialized) { Or (PIRA, 0x80, PIRA) } Method (_CRS, 0, NotSerialized) { And (PIRA, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRA) } } Device (LNKB) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x02) Method (_STA, 0, NotSerialized) { And (PIRB, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSB) } Method (_DIS, 0, NotSerialized) { Or (PIRB, 0x80, PIRB) } Method (_CRS, 0, NotSerialized) { And (PIRB, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRB) } } Device (LNKC) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x03) Method (_STA, 0, NotSerialized) { And (PIRC, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSC) } Method (_DIS, 0, NotSerialized) { Or (PIRC, 0x80, PIRC) } Method (_CRS, 0, NotSerialized) { And (PIRC, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRC) } } Device (LNKD) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x04) Method (_STA, 0, NotSerialized) { And (PIRD, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSD) } Method (_DIS, 0, NotSerialized) { Or (PIRD, 0x80, PIRD) } Method (_CRS, 0, NotSerialized) { And (PIRD, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRD) } } Device (LNKE) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x05) Method (_STA, 0, NotSerialized) { And (PIRE, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSE) } Method (_DIS, 0, NotSerialized) { Or (PIRE, 0x80, PIRE) } Method (_CRS, 0, NotSerialized) { And (PIRE, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRE) } } Device (LNKF) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x06) Method (_STA, 0, NotSerialized) { And (PIRF, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSF) } Method (_DIS, 0, NotSerialized) { Or (PIRF, 0x80, PIRF) } Method (_CRS, 0, NotSerialized) { And (PIRF, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRF) } } Device (LNKG) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x07) Method (_STA, 0, NotSerialized) { And (PIRG, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSG) } Method (_DIS, 0, NotSerialized) { Or (PIRG, 0x80, PIRG) } Method (_CRS, 0, NotSerialized) { And (PIRG, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRG) } } Device (LNKH) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x08) Method (_STA, 0, NotSerialized) { And (PIRH, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSH) } Method (_DIS, 0, NotSerialized) { Or (PIRH, 0x80, PIRH) } Method (_CRS, 0, NotSerialized) { And (PIRH, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRH) } } } Scope (_SB) { Name (XCPD, Zero) Name (XNPT, One) 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, One) 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, One) 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 (RDPE (Local0), Local1) If (LEqual (Local1, Ones)) { Return (Zero) } Else { If (LAnd (Local1, 0x00010000)) { WDPE (Local0, And (Local1, 0x00010000)) Return (One) } Return (Zero) } } } OperationRegion (SMRG, SystemIO, 0x0400, 0x10) Field (SMRG, ByteAcc, NoLock, Preserve) { HSTS, 8, SSTS, 8, HSTC, 8, HCMD, 8, HADR, 8, HDT0, 8, HDT1, 8, BLKD, 8 } Field (SMRG, ByteAcc, NoLock, Preserve) { Offset (0x05), HDTW, 16 } Method (SCMD, 4, Serialized) { Store (0x05, Local0) While (Decrement (Local0)) { Store (0xFFFF, Local1) While (LAnd (HSTS, Decrement (Local1))) { Store (0xFE, HSTS) Stall (0x0A) } Store (HSTC, Local2) Store (Arg0, HADR) Store (Arg1, HCMD) Store (Arg2, HDTW) Store (Arg3, HSTC) Store (0xFFFF, Local1) While (Decrement (Local1)) { If (And (HSTS, 0x0C)) { Store (One, Local1) } If (LEqual (And (HSTS, 0x03), 0x02)) { Return (HDTW) } Stall (0x0A) } Store (0x42, HSTC) Store (0xFFFF, Local1) While (Decrement (Local1)) { If (And (HSTS, 0x10)) { Store (One, Local1) } Stall (0x0A) } Store (Zero, HSTC) } Return (Ones) } Method (SBYT, 2, NotSerialized) { SCMD (Arg0, Arg1, Zero, 0x44) } Method (WBYT, 3, NotSerialized) { SCMD (Arg0, Arg1, Arg2, 0x48) } Method (WWRD, 3, NotSerialized) { SCMD (Arg0, Arg1, Arg2, 0x4C) } Method (RSBT, 2, NotSerialized) { Or (Arg0, One, Arg0) Return (And (SCMD (Arg0, Arg1, Zero, 0x44), 0xFF)) } Method (RBYT, 2, NotSerialized) { Or (Arg0, One, Arg0) Return (And (SCMD (Arg0, Arg1, Zero, 0x48), 0xFF)) } Method (RWRD, 2, NotSerialized) { Or (Arg0, One, Arg0) Return (SCMD (Arg0, Arg1, Zero, 0x4C)) } Method (RBLK, 3, NotSerialized) { Or (Arg0, One, Local0) SCMD (Local0, Arg1, Arg2, 0x54) Store (HSTC, Local0) Store (HDT0, Local0) Add (Local0, One, Local7) Name (RBUF, Buffer (Local7) {}) Store (Zero, Local1) While (Local0) { Store (BLKD, Index (RBUF, Local1)) Decrement (Local0) Increment (Local1) } Return (RBUF) } Method (WBLK, 4, NotSerialized) { Store (HSTC, Local0) Store (Zero, Local0) While (LNot (LGreater (Local0, Arg2))) { Store (DerefOf (Index (Arg3, Local0)), BLKD) Increment (Local0) } And (Arg0, 0xFE, Local0) SCMD (Local0, Arg1, Arg2, 0x54) } Name (HBAS, Zero) Name (HLBA, Zero) Name (HDEV, Zero) OperationRegion (REFP, SystemIO, 0x61, One) Field (REFP, ByteAcc, NoLock, Preserve) { P061, 8 } Method (FZHD, 0, NotSerialized) { Store (0x80, Local0) Store (DMAX, Local1) While (LNot (LGreater (Local0, Local1))) { And (Local0, 0x7F, Local3) Store (One, Local2) ShiftLeft (Local2, Local3, Local2) If (LNot (And (\_SB.PCI0.HFZF, Local2))) { If (FZOD (Local0)) { Or (\_SB.PCI0.HFZF, Local2, \_SB.PCI0.HFZF) } } Increment (Local0) } } Method (FZOD, 1, NotSerialized) { GHET (Arg0) If (LEqual (HBAS, Zero)) { Return (One) } If (LEqual (HDEV, Zero)) { Return (One) } Store (HDEV, Local1) And (Local1, 0x10, Local1) If (LEqual (Local1, Zero)) { Return (One) } WFCF () SDRV () Add (HBAS, 0x07, Local1) OperationRegion (HRGS, SystemIO, Local1, One) Field (HRGS, ByteAcc, NoLock, Preserve) { SREG, 8 } Store (SREG, Local1) And (Local1, 0x80, Local1) If (Local1) { Return (Zero) } Add (HBAS, 0x07, Local1) OperationRegion (HRGC, SystemIO, Local1, One) Field (HRGC, ByteAcc, NoLock, Preserve) { CREG, 8 } Store (0xF5, CREG) If (WFCF ()) { Add (HBAS, 0x07, Local0) Store (SREG, Local1) Return (LNot (And (Local1, One))) } Else { Return (Zero) } } OperationRegion (DBGA, SystemIO, 0x80, 0x04) Field (DBGA, DWordAcc, NoLock, Preserve) { DB32, 32 } Method (GHET, 1, NotSerialized) { And (Arg0, 0x7F, Local0) ShiftLeft (Local0, 0x05, Local0) Add (Local0, HPTA, Local0) OperationRegion (HDPT, SystemMemory, Local0, 0x20) Field (HDPT, ByteAcc, NoLock, Preserve) { HP00, 16, Offset (0x04), HP04, 8, Offset (0x12), HP0C, 8 } Store (HP00, HBAS) Store (HP04, HLBA) Store (HP0C, HDEV) } Method (SDRV, 0, NotSerialized) { Add (HBAS, 0x06, Local0) OperationRegion (HRGH, SystemIO, Local0, One) Field (HRGH, ByteAcc, NoLock, Preserve) { HREG, 8 } Store (HLBA, HREG) } Method (WFCF, 0, NotSerialized) { SDRV () Add (HBAS, One, Local0) OperationRegion (HRGE, SystemIO, Local0, One) Field (HRGE, ByteAcc, NoLock, Preserve) { EREG, 8 } Store (Zero, EREG) Add (HBAS, 0x07, Local1) OperationRegion (HRGC, SystemIO, Local1, One) Field (HRGC, ByteAcc, NoLock, Preserve) { CREG, 8 } Store (0x28, Local0) While (Local0) { And (CREG, One, Local2) If (Local2) { Return (Zero) } WFZF (Local1) And (CREG, 0x80, Local2) If (LEqual (Local2, Zero)) { Return (One) } Decrement (Local0) } Return (Zero) } Method (WFZF, 1, NotSerialized) { OperationRegion (HRGC, SystemIO, Arg0, One) Field (HRGC, ByteAcc, NoLock, Preserve) { CREG, 8 } Store (0xFFFF, Local1) Store (CREG, Local2) And (Local2, 0x80, Local2) If (LEqual (Local2, Zero)) { Return (Zero) } While (Local1) { Stall (0x0F) Decrement (Local1) If (LEqual (Local1, Zero)) { Return (Zero) } Store (CREG, Local2) And (Local2, 0x80, Local2) If (LEqual (Local2, Zero)) { Return (Zero) } Decrement (Local1) } } Scope (_SB.PCI0) { Name (HFZF, 0xFFFF) Method (HWAK, 1, NotSerialized) { If (LEqual (Arg0, 0x03)) { Store (Zero, HFZF) } } } Scope (_SB.PCI0.SBRG.SIOR) { Method (HWV0, 0, NotSerialized) { Return (Multiply (VCOR, 0x08)) } Method (HWV1, 0, NotSerialized) { Return (Multiply (V12V, 0x08)) } Method (HWV3, 0, NotSerialized) { Return (Multiply (V33V, 0x08)) } Method (HWV5, 0, NotSerialized) { Return (Multiply (V50V, 0x08)) } Method (HWT0, 0, NotSerialized) { Store (MBTE, Local1) Multiply (Local1, 0x0A, Local1) Return (Local1) } Method (HWT1, 0, NotSerialized) { Store (One, BSEL) Store (TSR1, Local1) Multiply (Local1, 0x0A, Local1) Store (TSR2, Local2) Multiply (Local2, 0x05, Local2) Add (Local1, Local2, Local1) Return (Local1) } Method (HWT2, 0, NotSerialized) { Store (0x02, BSEL) Store (TSR1, Local1) Multiply (Local1, 0x0A, Local1) Store (TSR2, Local2) Multiply (Local2, 0x05, Local2) Add (Local1, Local2, Local1) Return (Local1) } OperationRegion (DBGE, SystemIO, 0x80, 0x04) Field (DBGE, WordAcc, NoLock, Preserve) { DBGG, 22 } Method (HWF0, 0, NotSerialized) { Store (FAN1, Local0) Store (Zero, BSEL) And (FD21, 0x20, Local1) ShiftRight (Local1, 0x05, Local1) Multiply (Local1, 0x04, Local1) And (FDR1, 0x30, Local2) ShiftRight (Local2, 0x04, Local2) Add (Local1, Local2, Local1) While (LOr (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07)), LAnd (LLess (Local0, 0x64), LGreater (Local1, Zero)))) { If (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07))) { Add (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x05, Local3) Store (FD21, Local4) And (Local4, 0xDF, Local4) Or (Local3, Local4, FD21) Store (FDR1, Local4) And (Local4, 0xCF, Local4) ShiftLeft (Local2, 0x04, Local2) Or (Local4, One, Local4) Or (Local4, Local2, FDR1) Sleep (0x012C) Store (FAN1, Local0) } Else { Subtract (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x05, Local3) Store (FD21, Local4) And (Local4, 0xDF, Local4) Or (Local3, Local4, FD21) Store (FDR1, Local4) And (Local4, 0xCF, Local4) ShiftLeft (Local2, 0x04, Local2) Or (Local4, One, Local4) Or (Local4, Local2, FDR1) Sleep (0x012C) Store (FAN1, Local0) } } If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x07))) { Return (Zero) } If (LAnd (LEqual (Local0, Zero), LEqual (Local1, Zero))) { Return (0xFFFF) } Store (One, Local2) While (Local1) { Multiply (Local2, 0x02, Local2) Decrement (Local1) } Multiply (Local0, Local2, Local0) Divide (0x00149970, Local0, Local1, Local0) Return (Local0) } Method (HWF1, 0, NotSerialized) { Store (FAN2, Local0) Store (Zero, BSEL) And (FD21, 0x40, Local1) ShiftRight (Local1, 0x06, Local1) Multiply (Local1, 0x04, Local1) And (FDR1, 0xC0, Local2) ShiftRight (Local2, 0x06, Local2) Add (Local1, Local2, Local1) While (LOr (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07)), LAnd (LLess (Local0, 0x64), LGreater (Local1, Zero)))) { If (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07))) { Add (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x06, Local3) Store (FD21, Local4) And (Local4, 0xBF, Local4) Or (Local3, Local4, FD21) Store (FDR1, Local4) And (Local4, 0x3F, Local4) ShiftLeft (Local2, 0x06, Local2) Or (Local4, One, Local4) Or (Local4, Local2, FDR1) Sleep (0x012C) Store (FAN2, Local0) } Else { Subtract (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x06, Local3) Store (FD21, Local4) And (Local4, 0xBF, Local4) Or (Local3, Local4, FD21) Store (FDR1, Local4) And (Local4, 0x3F, Local4) ShiftLeft (Local2, 0x06, Local2) Or (Local4, One, Local4) Or (Local4, Local2, FDR1) Sleep (0x012C) Store (FAN2, Local0) } } If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x07))) { Return (Zero) } If (LAnd (LEqual (Local0, Zero), LEqual (Local1, Zero))) { Return (0xFFFF) } Store (One, Local2) While (Local1) { Multiply (Local2, 0x02, Local2) Decrement (Local1) } Multiply (Local0, Local2, Local0) Divide (0x00149970, Local0, Local1, Local0) Return (Local0) } Method (HWF2, 0, NotSerialized) { Store (FAN3, Local0) Store (Zero, BSEL) And (FD21, 0x80, Local1) ShiftRight (Local1, 0x07, Local1) Multiply (Local1, 0x04, Local1) Divide (FD13, 0x40, Local2, Local3) Add (Local1, Local3, Local1) While (LOr (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07)), LAnd (LLess (Local0, 0x64), LGreater (Local1, Zero)))) { If (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07))) { If (LEqual (Local0, 0xFF)) { Store (0x07, Local1) } Else { Add (Local1, One, Local1) } Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x07, Local3) Store (FD21, Local4) And (Local4, 0x7F, Local4) Or (Local3, Local4, FD21) Store (FD13, Local3) And (Local3, 0x3F, Local3) Multiply (Local2, 0x40, Local2) Add (Local3, Local2, Local2) Store (Local2, FD13) If (LNot (LEqual (Local0, 0xFF))) { Sleep (0x012C) } Store (FAN3, Local0) } Else { Subtract (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x07, Local3) Store (FD21, Local4) And (Local4, 0x7F, Local4) Or (Local3, Local4, FD21) Store (FD13, Local3) And (Local3, 0x3F, Local3) Multiply (Local2, 0x40, Local2) Add (Local3, Local2, Local2) Store (Local2, FD13) Sleep (0x012C) Store (FAN3, Local0) } } If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x07))) { Return (Zero) } If (LAnd (LEqual (Local0, Zero), LEqual (Local1, Zero))) { Return (0xFFFF) } Store (One, Local2) While (Local1) { Multiply (Local2, 0x02, Local2) Decrement (Local1) } Multiply (Local0, Local2, Local0) Divide (0x00149970, Local0, Local1, Local0) Return (Local0) } Method (HWF3, 0, NotSerialized) { Store (Zero, BSEL) Store (CFN3, Local0) And (FD15, 0x80, Local1) ShiftRight (Local1, 0x05, Local1) And (FND4, 0x03, Local2) Or (Local1, Local2, Local1) While (LOr (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07)), LAnd (LLess (Local0, 0x64), LGreater (Local1, Zero)))) { If (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07))) { If (LEqual (Local0, 0xFF)) { Store (0x07, Local1) } Else { Add (Local1, One, Local1) } Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x07, Local3) Store (FD15, Local4) And (Local4, 0x7F, Local4) Or (Local3, Local4, FD15) Store (FND4, Local3) And (Local3, 0xFC, Local3) Add (Local3, Local2, Local2) Store (Local2, FND4) If (LNot (LEqual (Local0, 0xFF))) { Sleep (0x012C) } Store (CFN3, Local0) } Else { Subtract (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x07, Local3) Store (FD15, Local4) And (Local4, 0x7F, Local4) Or (Local3, Local4, FD15) Store (FND4, Local3) And (Local3, 0xFC, Local3) Add (Local3, Local2, Local2) Store (Local2, FND4) Sleep (0x012C) Store (CFN3, Local0) } } If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x07))) { Return (Zero) } If (LAnd (LEqual (Local0, Zero), LEqual (Local1, Zero))) { Return (0xFFFF) } Store (One, Local2) While (Local1) { Multiply (Local2, 0x02, Local2) Decrement (Local1) } Multiply (Local0, Local2, Local0) Divide (0x00149970, Local0, Local1, Local0) Return (Local0) } Method (HWF4, 0, NotSerialized) { Store (0x05, BSEL) Store (FAN4, Local0) Store (Zero, BSEL) And (FND4, 0x80, Local1) ShiftRight (Local1, 0x08, Local1) Multiply (Local1, 0x04, Local1) And (FND4, 0x0C, Local2) ShiftRight (Local2, 0x02, Local2) Add (Local1, Local2, Local1) While (LOr (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07)), LAnd (LLess (Local0, 0x64), LGreater (Local1, Zero)))) { If (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07))) { If (LEqual (Local0, 0xFF)) { Store (0x07, Local1) } Else { Add (Local1, One, Local1) } Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x08, Local3) ShiftLeft (Local2, 0x02, Local2) Store (FND4, Local4) And (Local4, 0x73, Local4) Or (Local3, Local2, Local3) Or (Local3, Local4, FND4) If (LNot (LEqual (Local0, 0xFF))) { Sleep (0x012C) } Store (0x05, BSEL) Store (FAN4, Local0) Store (Zero, BSEL) } Else { Subtract (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x08, Local3) ShiftLeft (Local2, 0x02, Local2) Store (FND4, Local4) And (Local4, 0x73, Local4) Or (Local3, Local2, Local3) Or (Local3, Local4, FND4) Sleep (0x012C) Store (0x05, BSEL) Store (FAN4, Local0) Store (Zero, BSEL) } } If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x07))) { Return (Zero) } If (LAnd (LEqual (Local0, Zero), LEqual (Local1, Zero))) { Return (0xFFFF) } Store (One, Local2) While (Local1) { Multiply (Local2, 0x02, Local2) Decrement (Local1) } Multiply (Local0, Local2, Local0) Divide (0x00149970, Local0, Local1, Local0) Return (Local0) } OperationRegion (HWRE, SystemIO, IOHW, 0x0A) Field (HWRE, ByteAcc, NoLock, Preserve) { Offset (0x05), HIDX, 8, HDAT, 8 } IndexField (HIDX, HDAT, ByteAcc, NoLock, Preserve) { Offset (0x04), CHNM, 1, CFNM, 1, CHNS, 2, CFNS, 2, Offset (0x05), SYST, 8, TRGT, 8, Offset (0x08), SSDN, 8, CSDN, 8, SSUP, 8, CSUP, 8, Offset (0x20), VCOR, 8, V12V, 8, Offset (0x23), V33V, 8, Offset (0x25), V50V, 8, Offset (0x27), MBTE, 8, FAN1, 8, FAN2, 8, FAN3, 8, Offset (0x3F), CFN3, 8, Offset (0x47), FDR1, 8, Offset (0x4B), FD13, 8, FD15, 8, Offset (0x4E), BSEL, 3, Offset (0x4F), Offset (0x50), TSR1, 8, , 7, TSR2, 1, Offset (0x53), FAN4, 8, Offset (0x59), FND4, 8, Offset (0x5D), FD21, 8 } } Scope (_SB.PCI0.SBRG.ASOC) { Name (CORV, Package (0x05) { 0x06020000, "Vcore Voltage", 0x0352, 0x0640, One }) Name (V3VV, Package (0x05) { 0x06020001, " +3.3 Voltage", 0x0B9A, 0x0E2E, One }) Name (V5VV, Package (0x05) { 0x06020002, " +5 Voltage", 0x1194, 0x157C, One }) Name (VV12, Package (0x05) { 0x06020003, " +12 Voltage", 0x27D8, 0x35E8, One }) Name (VPAR, Package (0x04) { Package (0x03) { Zero, One, Zero }, Package (0x03) { 0x22, 0x22, Zero }, Package (0x03) { 0x16, 0x0A, Zero }, Package (0x03) { 0x38, 0x0A, Zero } }) Name (VBUF, Package (0x05) { 0x04, CORV, V3VV, V5VV, VV12 }) Method (VGET, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Return (^^SIOR.HWV0 ()) } If (LEqual (Arg0, One)) { Return (^^SIOR.HWV3 ()) } If (LEqual (Arg0, 0x02)) { Return (^^SIOR.HWV5 ()) } If (LEqual (Arg0, 0x03)) { Return (^^SIOR.HWV1 ()) } } 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, Zero)) { Return (^^SIOR.HWT1 ()) } If (LEqual (Arg0, One)) { Return (^^SIOR.HWT0 ()) } } Name (CPUF, Package (0x05) { 0x06040000, "CPU FAN Speed", 0x0320, 0x1C20, 0x00010001 }) Name (CHF1, Package (0x05) { 0x06040001, "CHASSIS1 FAN Speed", 0x0320, 0x1C20, 0x00010001 }) Name (CHF2, Package (0x05) { 0x06040002, "CHASSIS2 FAN Speed", 0x04B0, 0x1C20, 0x00010001 }) Name (CHF3, Package (0x05) { 0x06040003, "CHASSIS3 FAN Speed", 0x0320, 0x1C20, 0x00010001 }) Name (PWRF, Package (0x05) { 0x06040004, "POWER FAN Speed", 0x0320, 0x1C20, 0x00010001 }) Name (FBUF, Package (0x06) { 0x05, CPUF, CHF1, CHF2, CHF3, PWRF }) Method (FGET, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Return (^^SIOR.HWF1 ()) } If (LEqual (Arg0, One)) { Return (^^SIOR.HWF0 ()) } If (LEqual (Arg0, 0x02)) { Return (^^SIOR.HWF4 ()) } If (LEqual (Arg0, 0x03)) { Return (^^SIOR.HWF3 ()) } If (LEqual (Arg0, 0x04)) { Return (^^SIOR.HWF2 ()) } } 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)), Zero)), Local2) Store (DerefOf (Index (DerefOf (Index (VPAR, Local0)), One)), 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, Zero)), 0xFFFF, Local0) Store (DerefOf (Index (VBUF, Zero)), Local1) If (LNot (LLess (Local0, Local1))) { Return (Zero) } Increment (Local0) Store (DerefOf (Index (Arg0, One)), Index (DerefOf (Index (VBUF, Local0)), One)) 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 (One) } 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, Zero)), 0xFFFF), Local0) Store (DerefOf (Index (TBUF, Zero)), Local1) If (LNot (LLess (Local0, Local1))) { Return (Zero) } Increment (Local0) Store (DerefOf (Index (Arg0, One)), Index (DerefOf (Index (TBUF, Local0)), One)) 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 (One) } 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, Zero)), 0xFFFF, Local0) Store (DerefOf (Index (FBUF, Zero)), Local1) If (LNot (LLess (Local0, Local1))) { Return (Zero) } Increment (Local0) Store (DerefOf (Index (Arg0, One)), Index (DerefOf (Index (FBUF, Local0)), One)) 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 (One) } } Scope (_SB.PCI0) { Device (GFX0) { Name (_ADR, 0x00020000) OperationRegion (IGDM, SystemMemory, 0x3EE9E0E4, 0x2000) Field (IGDM, AnyAcc, NoLock, Preserve) { SIGN, 128, SIZE, 32, OVER, 32, SVER, 256, VVER, 128, GVER, 128, MBOX, 32, Offset (0xF0), IBTT, 4, IPSC, 2, IPAT, 4, IBIA, 3, IBLC, 2, Offset (0xF2), ITVF, 4, ITVM, 4, IDVM, 1, IDVS, 2, ISSC, 1, Offset (0xF4), Offset (0x200), SCIE, 1, GEFC, 4, GXFC, 3, GESF, 8, Offset (0x204), PARM, 32 } OperationRegion (TCOI, SystemIO, TOBS, 0x08) Field (TCOI, WordAcc, NoLock, Preserve) { Offset (0x04), , 9, SCIS, 1, Offset (0x06) } Method (GSCI, 0, NotSerialized) { If (LEqual (GEFC, 0x04)) { Store (GBDA (), GXFC) } If (LEqual (GEFC, 0x06)) { Store (SBCB (), GXFC) } Store (One, SCIS) Store (Zero, GEFC) Store (Zero, GSSE) Store (Zero, SCIE) Return (Zero) } Method (GBDA, 0, NotSerialized) { If (LEqual (GESF, Zero)) { Store (0x037B, PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, One)) { Store (Zero, PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x04)) { Name (LOOP, Zero) And (PARM, 0xFFFFFF00, PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x05)) { Store (IPSC, PARM) Or (PARM, ShiftLeft (IPAT, 0x08), PARM) Add (PARM, 0x0100, PARM) Or (PARM, ShiftLeft (LIDS, 0x10), PARM) XOr (PARM, 0x00010000, PARM) Or (PARM, ShiftLeft (IBIA, 0x14), PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x06)) { Store (ITVF, PARM) Or (PARM, ShiftLeft (ITVM, 0x04), PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x07)) { Name (MEMS, 0x0D) Store (GIVD, PARM) XOr (PARM, One, PARM) Or (PARM, ShiftLeft (GMFN, One), PARM) Or (PARM, 0x1000, PARM) Or (ShiftLeft (CDCT, 0x15), PARM, PARM) If (LEqual (IDVM, One)) { Store (0x11, MEMS) } If (LLess (TASM, M512)) { Or (PARM, ShiftLeft (One, MEMS), PARM) } Else { If (LLess (TASM, M1GB)) { If (LLess (IDVS, 0x03)) { Or (PARM, ShiftLeft (IDVS, MEMS), PARM) } Else { Or (PARM, ShiftLeft (0x02, MEMS), PARM) } } Else { Or (PARM, ShiftLeft (IDVS, MEMS), PARM) } } Store (One, GESF) Return (SUCC) } If (LEqual (GESF, 0x0A)) { Store (Zero, PARM) If (ISSC) { Or (0x03, PARM) } Store (Zero, GESF) Return (SUCC) } Store (Zero, GESF) Return (CRIT) } Method (SBCB, 0, NotSerialized) { If (LEqual (GESF, Zero)) { Store (0x20, PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, One)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x03)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x04)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x05)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x06)) { ShiftRight (PARM, 0x1C, Local0) If (LEqual (Local0, Zero)) { And (PARM, 0x0F, ITVF) And (PARM, 0xF0, ITVM) Store (Zero, GESF) Return (SUCC) } Store (Zero, GESF) Return (NVLD) } If (LEqual (GESF, 0x07)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x08)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x09)) { Store (CRIT, GXFC) Return (Zero) } If (LEqual (GESF, 0x0A)) { ShiftRight (PARM, 0x1C, Local0) If (LEqual (Local0, Zero)) { And (PARM, 0xFF, IPSC) Subtract (And (ShiftRight (PARM, 0x08), 0xFF), One, IPAT) And (ShiftRight (PARM, 0x12), 0x03, IBLC) And (ShiftRight (PARM, 0x14), 0x07, IBIA) } Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x0B)) { If (LEqual (And (ShiftRight (PARM, 0x0B), 0x03), 0x02)) { And (ShiftRight (PARM, 0x0D), 0x0F, Local0) And (ShiftRight (PARM, 0x11), 0x0F, Local1) If (Local0) { Store (Zero, IDVM) Store (Local0, IDVS) } If (Local1) { Store (One, IDVM) Store (Local1, IDVS) } } Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x10)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x11)) { Or (PARM, ShiftLeft (LIDS, 0x08), PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x12)) { And (PARM, One, ISSC) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x13)) { Store (Zero, GESF) Return (CRIT) } Store (Zero, GESF) Return (CRIT) } Scope (^^PCI0) { OperationRegion (MCHP, PCI_Config, 0x40, 0xC0) Field (MCHP, AnyAcc, NoLock, Preserve) { Offset (0x60), TASM, 10, Offset (0x62) } } OperationRegion (IGDP, PCI_Config, 0x40, 0xC0) Field (IGDP, AnyAcc, NoLock, Preserve) { Offset (0x12), , 1, GIVD, 1, , 2, GUMA, 3, Offset (0x14), , 4, GMFN, 1, Offset (0x18), Offset (0x8C), CDCT, 10, Offset (0x8E), Offset (0xA8), GSSE, 1, GSSB, 14, GSES, 1, Offset (0xBC), ASLS, 32 } Name (M512, 0x08) Name (M1GB, 0x10) Scope (\_GPE) { Method (_L06, 0, NotSerialized) { \_SB.PCI0.GFX0.GSCI () } } Name (OPBS, 0xFFFFFF00) Method (OPTS, 1, NotSerialized) { If (LEqual (Arg0, 0x03)) { Store (ASLS, OPBS) } } Method (OWAK, 1, NotSerialized) { If (LEqual (Arg0, 0x03)) { Store (OPBS, ASLS) Store (One, GSES) } } } } Scope (_SB) { Scope (PCI0) { Name (CRS, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, // Address Space Granularity 0x0000, // Address Range Minimum 0x00FF, // Address Range Maximum 0x0000, // Address Translation Offset 0x0100, // Address Length ,,) IO (Decode16, 0x0CF8, // Address Range Minimum 0x0CF8, // Address Range Maximum 0x01, // Address Alignment 0x08, // Address Length ) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Address Space Granularity 0x0000, // Address Range Minimum 0x0CF7, // Address Range Maximum 0x0000, // Address Translation Offset 0x0CF8, // Address Length ,,, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Address Space Granularity 0x0D00, // Address Range Minimum 0xFFFF, // Address Range Maximum 0x0000, // Address Translation Offset 0xF300, // Address Length ,,, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Address Space Granularity 0x000A0000, // Address Range Minimum 0x000BFFFF, // Address Range Maximum 0x00000000, // Address Translation Offset 0x00020000, // Address Length ,,, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Address Space Granularity 0x000C0000, // Address Range Minimum 0x000DFFFF, // Address Range Maximum 0x00000000, // Address Translation Offset 0x00020000, // Address Length ,,, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Address Space Granularity 0x00000000, // Address Range Minimum 0x00000000, // Address Range Maximum 0x00000000, // Address Translation Offset 0x00000000, // Address Length ,,, AddressRangeMemory, TypeStatic) }) 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, Zero) Name (WSSB, Zero) Name (WAXB, Zero) Method (_PTS, 1, NotSerialized) { Store (Arg0, DBG8) PTS (Arg0) Store (Zero, Index (WAKP, Zero)) Store (Zero, Index (WAKP, One)) 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 (GNVS (0x8370)) {} Else { Notify (\_SB.PWRB, 0x02) } If (ASSB) { Store (WSSB, ASSB) Store (WOTB, AOTB) Store (WAXB, AAXB) } If (DerefOf (Index (WAKP, Zero))) { Store (Zero, Index (WAKP, One)) } Else { Store (Arg0, Index (WAKP, One)) } Return (WAKP) } OperationRegion (IORK, SystemIO, 0xB3, One) Field (IORK, ByteAcc, NoLock, Preserve) { IOWK, 8 } Name (_S0, Package (0x04) { Zero, Zero, Zero, Zero }) If (SS1) { Name (_S1, Package (0x04) { One, Zero, Zero, Zero }) } If (SS3) { Name (_S3, Package (0x04) { 0x05, Zero, Zero, Zero }) } If (SS4) { Name (_S4, Package (0x04) { 0x06, Zero, Zero, Zero }) } Name (_S5, Package (0x04) { 0x07, Zero, Zero, Zero }) Method (PTS, 1, NotSerialized) { If (Arg0) { \_SB.PCI0.SBRG.SIOS (Arg0) \_SB.PCI0.NPTS (Arg0) \_SB.PCI0.SBRG.SPTS (Arg0) \_SB.PCI0.GFX0.OPTS (Arg0) } } Method (WAK, 1, NotSerialized) { \_SB.PCI0.SBRG.SIOW (Arg0) \_SB.PCI0.NWAK (Arg0) \_SB.PCI0.HWAK (Arg0) \_SB.PCI0.SBRG.SWAK (Arg0) \_SB.PCI0.GFX0.OWAK (Arg0) } } --=-=-= Content-Disposition: attachment; filename=p5bv-acpi1.tab /* RSD PTR: OEM=ACPIAM, ACPI_Rev=1.0x (0) RSDT=0x3ee90000, cksum=15 */ /* RSDT: Length=64, Revision=1, Checksum=236, OEMID=A M I, OEM Table ID=OEMRSDT, OEM Revision=0x10000602, Creator ID=MSFT, Creator Revision=0x97 Entries={ 0x3ee90200, 0x3ee90390, 0x3ee90400, 0x3ee9e040, 0x3ee99bb0, 0x3ee99be8, 0x3ee9e0c0 } */ /* FACP: Length=132, Revision=2, Checksum=108, OEMID=A M I, OEM Table ID=OEMFACP, OEM Revision=0x10000602, Creator ID=MSFT, Creator Revision=0x97 FACS=0x3ee9e000, DSDT=0x3ee90440 INT_MODEL=APIC Preferred_PM_Profile=Unspecified (0) SCI_INT=9 SMI_CMD=0xb2, ACPI_ENABLE=0xe1, ACPI_DISABLE=0x1e, S4BIOS_REQ=0x0 PSTATE_CNT=0xe2 PM1a_EVT_BLK=0x800-0x803 PM1a_CNT_BLK=0x804-0x805 PM_TMR_BLK=0x808-0x80b GPE0_BLK=0x828-0x82f CST_CNT=0xe3 P_LVL2_LAT=101 us, P_LVL3_LAT=1001 us FLUSH_SIZE=1024, FLUSH_STRIDE=16 DUTY_OFFSET=1, DUTY_WIDTH=0 DAY_ALRM=13, MON_ALRM=0, CENTURY=50 IAPC_BOOT_ARCH={LEGACY_DEV,8042} Flags={WBINVD,PROC_C1,SLP_BUTTON,RTC_S4} */ /* FACS: Length=64, HwSig=0x00000000, Firm_Wake_Vec=0x00000000 Global_Lock= Flags= Version=1 */ /* DSDT: Length=38763, Revision=1, Checksum=63, OEMID=A0579, OEM Table ID=A0579000, OEM Revision=0x0, Creator ID=INTL, Creator Revision=0x20060113 */ /* APIC: Length=108, Revision=1, Checksum=33, OEMID=A M I, OEM Table ID=OEMAPIC, OEM Revision=0x10000602, Creator ID=MSFT, Creator Revision=0x97 Local APIC ADDR=0xfee00000 Flags={PC-AT} Type=Local APIC ACPI CPU=1 Flags={ENABLED} APIC ID=0 Type=Local APIC ACPI CPU=2 Flags={ENABLED} APIC ID=1 Type=Local APIC ACPI CPU=3 Flags={DISABLED} APIC ID=130 Type=Local APIC ACPI CPU=4 Flags={DISABLED} APIC ID=131 Type=IO APIC APIC ID=2 INT BASE=0 ADDR=0x00000000fec00000 Type=INT Override BUS=0 IRQ=0 INTR=2 Flags={Polarity=conforming, Trigger=conforming} Type=INT Override BUS=0 IRQ=9 INTR=9 Flags={Polarity=active-hi, Trigger=level} */ /* MCFG: Length=60, Revision=1, Checksum=137, OEMID=A M I, OEM Table ID=OEMMCFG, OEM Revision=0x10000602, Creator ID=MSFT, Creator Revision=0x97 Base Address= 0x00000000e0000000 Segment Group= 0x0000 Start Bus= 0 End Bus= 255 */ /* HPET: Length=56, Revision=1, Checksum=159, OEMID=A M I, OEM Table ID=OEMHPET, OEM Revision=0x10000602, Creator ID=MSFT, Creator Revision=0x97 HPET Number=0 ADDR=0x00000800 HW Rev=0x2 Comparitors=2 Counter Size=1 Legacy IRQ routing capable={TRUE} PCI Vendor ID=0x8086 Minimal Tick=14318 */ /* ASF!: Length=153, Revision=32, Checksum=10, OEMID=LEGEND, OEM Table ID=I865PASF, OEM Revision=0x1, Creator ID=INTL, Creator Revision=0x20060113 */ /* GSCI: Length=8228, Revision=1, Checksum=58, OEMID=A M I, OEM Table ID=GMCHSCI, OEM Revision=0x10000602, Creator ID=MSFT, Creator Revision=0x97 */ --=-=-= Content-Disposition: attachment; filename=p5bv-acpi2.asl /* * Intel ACPI Component Architecture * AML Disassembler version 20051021 * * Disassembly of /tmp/acpidump.p9vSsg, Wed Jan 17 08:17:33 2007 */ DefinitionBlock ("DSDT.aml", "DSDT", 1, "A0579", "A0579000", 0x00000000) { Scope (_PR) { Processor (CPU1, 0x01, 0x00000810, 0x06) { OperationRegion (STBL, SystemMemory, 0x3EE99C90, 0x02E3) Name (NCPU, 0x02) Name (CFGD, 0x09) Name (TYPE, 0x80000000) Name (HNDL, 0x80000000) Name (TBLD, Zero) Method (_PDC, 1, NotSerialized) { CreateDWordField (Arg0, 0x08, DAT0) Store (DAT0, TYPE) OperationRegion (PMRG, SystemIO, PMBS, 0x50) Field (PMRG, ByteAcc, NoLock, Preserve) { Offset (0x41), DEV4, 1, DEV5, 1, DEV6, 1, DEV7, 1, STS4, 1, STS5, 1, STS6, 1, STS7, 1 } Store (One, STS7) Store (One, DEV7) If (LEqual (TBLD, Zero)) { Load (STBL, HNDL) Store (One, TBLD) } } } } Scope (_PR) { Processor (CPU2, 0x02, 0x00000810, 0x06) { OperationRegion (STBL, SystemMemory, 0x3EE99F80, 0x02DA) Name (NCPU, 0x02) Name (CFGD, 0x09) Name (TYPE, 0x80000000) Name (HNDL, 0x80000000) Name (TBLD, Zero) Method (_PDC, 1, NotSerialized) { CreateDWordField (Arg0, 0x08, DAT0) Store (DAT0, TYPE) If (LEqual (TBLD, Zero)) { Load (STBL, HNDL) Store (One, TBLD) } } } } Scope (_PR) { Processor (CPU3, 0x03, 0x00000000, 0x00) { OperationRegion (STBL, SystemMemory, 0xFFFF0000, 0xFFFF) Name (NCPU, 0x80) Name (CFGD, 0x80) Name (TYPE, 0x80000000) Name (HNDL, 0x80000000) Name (TBLD, Zero) Method (_PDC, 1, NotSerialized) { CreateDWordField (Arg0, 0x08, DAT0) Store (DAT0, TYPE) If (LEqual (TBLD, Zero)) { If (LAnd (LEqual (And (TYPE, One), One), LNot (LGreater (NCPU, 0x08)))) { Load (STBL, HNDL) Store (One, TBLD) } } } } } Scope (_PR) { Processor (CPU4, 0x04, 0x00000000, 0x00) { OperationRegion (STBL, SystemMemory, 0xFFFF0000, 0xFFFF) Name (NCPU, 0x80) Name (CFGD, 0x80) Name (TYPE, 0x80000000) Name (HNDL, 0x80000000) Name (TBLD, Zero) Method (_PDC, 1, NotSerialized) { CreateDWordField (Arg0, 0x08, DAT0) Store (DAT0, TYPE) OperationRegion (PMRG, SystemIO, PMBS, 0x50) Field (PMRG, ByteAcc, NoLock, Preserve) { Offset (0x41), DEV4, 1, DEV5, 1, DEV6, 1, DEV7, 1, STS4, 1, STS5, 1, STS6, 1, STS7, 1 } If (LEqual (TBLD, Zero)) { If (LAnd (LEqual (And (TYPE, One), One), LNot (LGreater (NCPU, 0x08)))) { Store (One, STS6) Store (One, DEV6) Load (STBL, HNDL) Store (One, TBLD) } } } } } Name (DP80, 0x80) Name (DP90, 0x90) Name (SPIO, 0x2E) Name (IOHW, 0x0290) Name (APIC, One) Name (SMIP, 0xB2) Name (PMBS, 0x0800) Name (PMLN, 0x80) Name (GPBS, 0x0480) Name (GPLN, 0x40) Name (SMBL, Zero) Name (PM30, 0x0830) Name (SUSW, 0xFF) Name (HTBA, 0xFED1F404) Name (EAQF, One) Name (CFTE, Zero) Name (TOBS, 0x0860) Name (SUCC, One) Name (NVLD, 0x02) Name (CRIT, 0x04) Name (NCRT, 0x06) Name (LIDS, One) Name (PCIB, 0xE0000000) Name (PCIL, 0x10000000) Name (SMBS, 0x0400) Name (CPUC, 0x04) OperationRegion (BIOS, SystemMemory, 0x3EE9E064, 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, MSC1, 32, MSC2, 32, MSC3, 32, MSC4, 32, MSC5, 32, MSC6, 32, MSC7, 32, MSC8, 32, DMAX, 8, HPTA, 32 } Method (RRIO, 4, NotSerialized) { Store ("RRIO", Debug) } Method (RDMA, 3, NotSerialized) { Store ("rDMA", Debug) } Name (PICM, Zero) 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, Zero)) { Store (0xAC, DBG8) } Store (One, OSVR) If (CondRefOf (_OSI, Local1)) { If (_OSI ("Windows 2001")) { Store (Zero, 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), One, 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, Zero)) Store (ShiftLeft (SS1, One), Local0) Or (Local0, ShiftLeft (SS2, 0x02), Local0) Or (Local0, ShiftLeft (SS3, 0x03), Local0) Or (Local0, ShiftLeft (SS4, 0x04), Local0) If (And (ShiftLeft (One, Arg1), Local0)) { Store (Arg1, Index (PRWP, One)) } Else { ShiftRight (Local0, One, Local0) If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { FindSetLeftBit (Local0, Index (PRWP, One)) } Else { FindSetRightBit (Local0, Index (PRWP, One)) } } Return (PRWP) } Name (WAKP, Package (0x02) { Zero, Zero }) OperationRegion (DEBX, SystemIO, 0x80, 0x02) Field (DEBX, WordAcc, NoLock, Preserve) { DBGX, 16 } OperationRegion (DEB0, SystemIO, DP80, One) Field (DEB0, ByteAcc, NoLock, Preserve) { DBG8, 8 } OperationRegion (DEB1, SystemIO, DP90, 0x02) Field (DEB1, WordAcc, NoLock, Preserve) { DBG9, 16 } Scope (_SB) { Name (PR00, Package (0x18) { Package (0x04) { 0x0001FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0001FFFF, One, LNKB, Zero }, Package (0x04) { 0x0001FFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x0001FFFF, 0x03, LNKD, Zero }, Package (0x04) { 0x0003FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0003FFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x0003FFFF, One, LNKB, Zero }, Package (0x04) { 0x001FFFFF, Zero, LNKC, Zero }, Package (0x04) { 0x001FFFFF, One, LNKD, Zero }, Package (0x04) { 0x001FFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001DFFFF, Zero, LNKH, Zero }, Package (0x04) { 0x001AFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001BFFFF, Zero, LNKG, Zero }, Package (0x04) { 0x001DFFFF, One, LNKD, Zero }, Package (0x04) { 0x001DFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001DFFFF, 0x03, LNKA, Zero }, Package (0x04) { 0x001AFFFF, Zero, LNKA, Zero }, Package (0x04) { 0x001AFFFF, One, LNKB, Zero }, Package (0x04) { 0x0002FFFF, One, LNKB, Zero }, Package (0x04) { 0x001CFFFF, Zero, LNKB, Zero }, Package (0x04) { 0x001CFFFF, One, LNKA, Zero }, Package (0x04) { 0x001CFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001CFFFF, 0x03, LNKD, Zero }, Package (0x04) { 0x0002FFFF, Zero, LNKA, Zero } }) Name (AR00, Package (0x18) { Package (0x04) { 0x0001FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0001FFFF, One, Zero, 0x11 }, Package (0x04) { 0x0001FFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x0001FFFF, 0x03, Zero, 0x13 }, Package (0x04) { 0x0003FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0003FFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x0003FFFF, One, Zero, 0x11 }, Package (0x04) { 0x001FFFFF, Zero, Zero, 0x12 }, Package (0x04) { 0x001FFFFF, One, Zero, 0x13 }, Package (0x04) { 0x001FFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001DFFFF, Zero, Zero, 0x17 }, Package (0x04) { 0x001AFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001BFFFF, Zero, Zero, 0x16 }, Package (0x04) { 0x001DFFFF, One, Zero, 0x13 }, Package (0x04) { 0x001DFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001DFFFF, 0x03, Zero, 0x10 }, Package (0x04) { 0x001AFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x001AFFFF, One, Zero, 0x11 }, Package (0x04) { 0x0002FFFF, One, Zero, 0x11 }, Package (0x04) { 0x001CFFFF, Zero, Zero, 0x11 }, Package (0x04) { 0x001CFFFF, One, Zero, 0x10 }, Package (0x04) { 0x001CFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001CFFFF, 0x03, Zero, 0x13 }, Package (0x04) { 0x0002FFFF, Zero, Zero, 0x10 } }) Name (PR02, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKA, Zero }, Package (0x04) { 0xFFFF, One, LNKB, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKD, Zero } }) Name (AR02, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0xFFFF, One, Zero, 0x11 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x13 } }) Name (PR04, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKA, Zero }, Package (0x04) { 0xFFFF, One, LNKB, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKD, Zero } }) Name (AR04, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0xFFFF, One, Zero, 0x11 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x13 } }) Name (PR05, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKB, Zero }, Package (0x04) { 0xFFFF, One, LNKC, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKD, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKA, Zero } }) Name (AR05, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x11 }, Package (0x04) { 0xFFFF, One, Zero, 0x12 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x13 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x10 } }) Name (PR06, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKC, Zero }, Package (0x04) { 0xFFFF, One, LNKD, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKA, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKB, Zero } }) Name (AR06, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x12 }, Package (0x04) { 0xFFFF, One, Zero, 0x13 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x10 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x11 } }) Name (PR07, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKD, Zero }, Package (0x04) { 0xFFFF, One, LNKA, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKB, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKC, Zero } }) Name (AR07, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x13 }, Package (0x04) { 0xFFFF, One, Zero, 0x10 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x11 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x12 } }) Name (PR08, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKA, Zero }, Package (0x04) { 0xFFFF, One, LNKB, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKD, Zero } }) Name (AR08, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0xFFFF, One, Zero, 0x11 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x13 } }) Name (PR09, Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKB, Zero }, Package (0x04) { 0xFFFF, One, LNKC, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKD, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKA, Zero } }) Name (AR09, Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x11 }, Package (0x04) { 0xFFFF, One, Zero, 0x12 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x13 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x10 } }) Name (PR01, Package (0x0E) { Package (0x04) { 0xFFFF, Zero, LNKF, Zero }, Package (0x04) { 0xFFFF, One, LNKG, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKH, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKE, Zero }, Package (0x04) { 0x0001FFFF, Zero, LNKG, Zero }, Package (0x04) { 0x0001FFFF, One, LNKH, Zero }, Package (0x04) { 0x0001FFFF, 0x02, LNKE, Zero }, Package (0x04) { 0x0001FFFF, 0x03, LNKF, Zero }, Package (0x04) { 0x0002FFFF, Zero, LNKH, Zero }, Package (0x04) { 0x0002FFFF, One, LNKE, Zero }, Package (0x04) { 0x0002FFFF, 0x02, LNKF, Zero }, Package (0x04) { 0x0002FFFF, 0x03, LNKG, Zero }, Package (0x04) { 0x0003FFFF, Zero, LNKF, Zero }, Package (0x04) { 0x0004FFFF, Zero, LNKD, Zero } }) Name (AR01, Package (0x0E) { Package (0x04) { 0xFFFF, Zero, Zero, 0x15 }, Package (0x04) { 0xFFFF, One, Zero, 0x16 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x17 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x14 }, Package (0x04) { 0x0001FFFF, Zero, Zero, 0x16 }, Package (0x04) { 0x0001FFFF, One, Zero, 0x17 }, Package (0x04) { 0x0001FFFF, 0x02, Zero, 0x14 }, Package (0x04) { 0x0001FFFF, 0x03, Zero, 0x15 }, Package (0x04) { 0x0002FFFF, Zero, Zero, 0x17 }, Package (0x04) { 0x0002FFFF, One, Zero, 0x14 }, Package (0x04) { 0x0002FFFF, 0x02, Zero, 0x15 }, Package (0x04) { 0x0002FFFF, 0x03, Zero, 0x16 }, Package (0x04) { 0x0003FFFF, Zero, Zero, 0x15 }, Package (0x04) { 0x0004FFFF, Zero, Zero, 0x13 } }) Name (PRSA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {3,4,5,6,7,10,11,12,14,15} }) Alias (PRSA, PRSB) Alias (PRSA, PRSC) Alias (PRSA, PRSD) Alias (PRSA, PRSE) Alias (PRSA, PRSF) Alias (PRSA, PRSG) Alias (PRSA, PRSH) Device (PCI0) { Name (_HID, EisaId ("PNP0A08")) Name (_ADR, Zero) Method (^BN00, 0, NotSerialized) { Return (Zero) } Method (_BBN, 0, NotSerialized) { Return (BN00 ()) } Name (_UID, Zero) Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR00) } Return (PR00) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Name (_CID, 0x030AD041) Device (MCH) { Name (_HID, EisaId ("PNP0C01")) Name (_UID, 0x0A) Name (_CRS, ResourceTemplate () { Memory32Fixed (ReadWrite, 0xFED14000, // Address Base 0x00006000, // Address Length ) }) } Method (NPTS, 1, NotSerialized) { } Method (NWAK, 1, NotSerialized) { } Device (P0P2) { Name (_ADR, 0x00010000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR02) } Return (PR02) } } Device (P0P1) { Name (_ADR, 0x001E0000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0B, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR01) } Return (PR01) } } Device (SBRG) { Name (_ADR, 0x001F0000) Device (IELK) { Name (_HID, "AWY0001") OperationRegion (RXA0, PCI_Config, 0xA0, 0x20) Field (RXA0, ByteAcc, NoLock, Preserve) { , 9, PBLV, 1, Offset (0x10), , 1, PBMS, 1, , 1, PMCS, 1, ECNS, 1, Offset (0x11), ECT1, 16, ELEN, 1, Offset (0x14) } Method (\_GPE._L0A, 0, NotSerialized) { Notify (\_SB.PCI0.SBRG.IELK, 0x81) Store (One, \_SB.PCI0.SBRG.IELK.PMCS) } Method (_STA, 0, NotSerialized) { If (ELEN) { Return (0x0F) } Else { Return (Zero) } } Method (SMOD, 1, NotSerialized) { } Method (GPBS, 0, NotSerialized) { Return (XOr (PBLV, One)) } } Method (SPTS, 1, NotSerialized) { Store (One, PS1S) Store (One, PS1E) Store (One, SLPS) } Method (SWAK, 1, NotSerialized) { Store (Zero, SLPS) Store (Zero, PS1E) If (LAnd (LEqual (Arg0, One), RTCS)) { Notify (PWRB, 0x02) } Else { If (LAnd (LEqual (Arg0, 0x03), BRTC)) {} Else { Notify (PWRB, 0x02) } } } OperationRegion (APMP, SystemIO, SMIP, 0x02) Field (APMP, ByteAcc, NoLock, Preserve) { APMC, 8, APMS, 8 } Field (APMP, ByteAcc, NoLock, Preserve) { Offset (0x01), , 1, BRTC, 1 } OperationRegion (PMS0, SystemIO, PMBS, 0x04) Field (PMS0, ByteAcc, NoLock, Preserve) { , 10, RTCS, 1, , 4, WAKS, 1, Offset (0x03), PWBT, 1, Offset (0x04) } OperationRegion (SMIE, SystemIO, PM30, 0x08) Field (SMIE, ByteAcc, NoLock, Preserve) { , 4, PS1E, 1, , 31, PS1S, 1, Offset (0x08) } Scope (\_SB) { Name (SLPS, Zero) } Device (PIC) { Name (_HID, EisaId ("PNP0000")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0020, // Address Range Minimum 0x0020, // Address Range Maximum 0x00, // Address Alignment 0x02, // Address Length ) IO (Decode16, 0x00A0, // Address Range Minimum 0x00A0, // Address Range Maximum 0x00, // Address Alignment 0x02, // Address Length ) IRQNoFlags () {2} }) } Device (DMAD) { Name (_HID, EisaId ("PNP0200")) Name (_CRS, ResourceTemplate () { DMA (Compatibility, BusMaster, Transfer8) {4} IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x00, // Address Alignment 0x10, // Address Length ) IO (Decode16, 0x0081, // Address Range Minimum 0x0081, // Address Range Maximum 0x00, // Address Alignment 0x03, // Address Length ) IO (Decode16, 0x0087, // Address Range Minimum 0x0087, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IO (Decode16, 0x0089, // Address Range Minimum 0x0089, // Address Range Maximum 0x00, // Address Alignment 0x03, // Address Length ) IO (Decode16, 0x008F, // Address Range Minimum 0x008F, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IO (Decode16, 0x00C0, // Address Range Minimum 0x00C0, // Address Range Maximum 0x00, // Address Alignment 0x20, // Address Length ) }) } Device (TMR) { Name (_HID, EisaId ("PNP0100")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0040, // Address Range Minimum 0x0040, // Address Range Maximum 0x00, // Address Alignment 0x04, // Address Length ) IRQNoFlags () {0} }) } Device (RTC0) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, // Address Range Minimum 0x0070, // Address Range Maximum 0x00, // Address Alignment 0x02, // Address Length ) IRQNoFlags () {8} }) } Device (SPKR) { Name (_HID, EisaId ("PNP0800")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0061, // Address Range Minimum 0x0061, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) }) } Device (COPR) { Name (_HID, EisaId ("PNP0C04")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x00F0, // Address Range Minimum 0x00F0, // Address Range Maximum 0x00, // Address Alignment 0x10, // Address Length ) IRQNoFlags () {13} }) } Device (UAR1) { Name (_UID, One) Name (_HID, EisaId ("PNP0501")) Method (_STA, 0, NotSerialized) { Return (DSTA (Zero)) } Method (_DIS, 0, NotSerialized) { DCNT (Zero, Zero) } Method (_CRS, 0, NotSerialized) { Return (DCRS (Zero, Zero)) } Method (_SRS, 1, NotSerialized) { DSRS (Arg0, Zero) } Method (_PRS, 0, NotSerialized) { Return (CMPR) } Name (CMPR, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x03F8, // Address Range Minimum 0x03F8, // Address Range Maximum 0x01, // Address Alignment 0x08, // Address Length ) IRQNoFlags () {4} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x03F8, // Address Range Minimum 0x03F8, // Address Range Maximum 0x01, // Address Alignment 0x08, // Address Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x02F8, // Address Range Minimum 0x02F8, // Address Range Maximum 0x01, // Address Alignment 0x08, // Address Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x03E8, // Address Range Minimum 0x03E8, // Address Range Maximum 0x01, // Address Alignment 0x08, // Address Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } StartDependentFnNoPri () { IO (Decode16, 0x02E8, // Address Range Minimum 0x02E8, // Address Range Maximum 0x01, // Address Alignment 0x08, // Address Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {} } EndDependentFn () }) } Method (UAR1._PRW, 0, NotSerialized) { Return (GPRW (0x08, 0x04)) } Device (FDC) { Name (_HID, EisaId ("PNP0700")) Method (_FDE, 0, NotSerialized) { Name (FDEP, Package (0x05) { Zero, Zero, 0x02, 0x02, 0x02 }) If (_STA ()) { Store (One, Index (FDEP, Zero)) } Return (FDEP) } Method (_STA, 0, NotSerialized) { Return (DSTA (0x03)) } Method (_DIS, 0, NotSerialized) { DCNT (0x03, Zero) } Method (_CRS, 0, NotSerialized) { DCRS (0x03, One) Store (IRQM, IRQE) Store (DMAM, DMAE) Store (IO11, IO21) Store (IO12, IO22) Store (0x06, LEN2) Add (IO21, 0x07, IO31) Store (IO31, IO32) Store (One, LEN3) Return (CRS2) } Method (_SRS, 1, NotSerialized) { DSRS (Arg0, 0x03) CreateWordField (Arg0, One, IRQE) CreateByteField (Arg0, 0x04, DMAE) ENFG (CGLD (0x03)) If (IRQE) { FindSetRightBit (IRQE, Local0) Subtract (Local0, One, INTR) } Else { Store (Zero, INTR) } If (DMAE) { FindSetRightBit (DMAE, Local0) Subtract (Local0, One, DMCH) } Else { Store (0x04, DMCH) } EXFG () } Name (_PRS, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x03F0, // Address Range Minimum 0x03F0, // Address Range Maximum 0x01, // Address Alignment 0x06, // Address Length ) IO (Decode16, 0x03F7, // Address Range Minimum 0x03F7, // Address Range Maximum 0x01, // Address Alignment 0x01, // Address Length ) IRQNoFlags () {6} DMA (Compatibility, NotBusMaster, Transfer8) {2} } StartDependentFnNoPri () { IO (Decode16, 0x03F0, // Address Range Minimum 0x03F0, // Address Range Maximum 0x01, // Address Alignment 0x06, // Address Length ) IO (Decode16, 0x03F7, // Address Range Minimum 0x03F7, // Address Range Maximum 0x01, // Address Alignment 0x01, // Address Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } StartDependentFnNoPri () { IO (Decode16, 0x0370, // Address Range Minimum 0x0370, // Address Range Maximum 0x01, // Address Alignment 0x06, // Address Length ) IO (Decode16, 0x0377, // Address Range Minimum 0x0377, // Address Range Maximum 0x01, // Address Alignment 0x01, // Address Length ) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,2,3} } EndDependentFn () }) } Device (SIOR) { Name (_HID, EisaId ("PNP0C02")) Method (_UID, 0, NotSerialized) { Return (SPIO) } Name (CRS, ResourceTemplate () { IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x00, // Address Alignment 0x00, // Address Length ) IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x00, // Address Alignment 0x00, // Address Length ) IO (Decode16, 0x0290, // Address Range Minimum 0x0290, // Address Range Maximum 0x00, // Address Alignment 0x08, // Address Length ) }) 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) } Return (CRS) } } Name (DCAT, Package (0x15) { 0x02, 0x03, One, Zero, 0xFF, 0x07, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x08, 0x09, 0xFF, 0xFF }) Mutex (IOCF, 0x00) Method (ENFG, 1, NotSerialized) { Acquire (IOCF, 0xFFFF) Store (0x87, INDX) Store (0x87, INDX) Store (Arg0, LDN) } Method (EXFG, 0, NotSerialized) { Store (0xAA, INDX) Release (IOCF) } Method (LPTM, 1, NotSerialized) { ENFG (CGLD (Arg0)) And (OPT0, 0x02, Local0) EXFG () Return (Local0) } Method (UHID, 1, NotSerialized) { If (LEqual (Arg0, One)) { ENFG (CGLD (Arg0)) And (OPT1, 0x38, Local0) EXFG () If (Local0) { Return (0x1005D041) } } Return (0x0105D041) } Method (SIOK, 1, NotSerialized) { ENFG (0x0A) If (LGreater (Arg0, One)) { Or (CRE4, 0x10, CRE4) } Store (CRE3, Local0) EXFG () } Method (SIOS, 1, NotSerialized) { Store ("SIOS", Debug) SIOK (Arg0) } Method (SIOW, 1, NotSerialized) { Store ("SIOW", Debug) SIOK (Zero) } Method (SIOH, 0, NotSerialized) { Store ("SIOH", Debug) ENFG (0x0A) If (And (OPT3, 0x10)) { Notify (PS2K, 0x02) } If (And (OPT3, 0x20)) { Notify (PS2M, 0x02) } EXFG () SIOK (Zero) } 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 (0x22), FDCP, 1, , 2, LPTP, 1, URAP, 1, URBP, 1, Offset (0x30), ACTR, 8, Offset (0x60), IOAH, 8, IOAL, 8, IOH2, 8, IOL2, 8, Offset (0x70), INTR, 4, Offset (0x74), DMCH, 3, Offset (0xE0), CRE0, 8, CRE1, 8, CRE2, 8, CRE3, 8, CRE4, 8, CRE5, 8, CRE6, 8, Offset (0xF0), OPT0, 8, OPT1, 8, OPT2, 8, OPT3, 8, Offset (0xF5), OPT5, 8, OPT6, 8, Offset (0xF9), OPT9, 8 } Method (CGLD, 1, NotSerialized) { Return (DerefOf (Index (DCAT, Arg0))) } Method (DSTA, 1, NotSerialized) { ENFG (CGLD (Arg0)) Store (ACTR, Local0) EXFG () If (LEqual (Local0, 0xFF)) { Return (Zero) } If (LEqual (Arg0, 0x05)) { ShiftRight (Local0, 0x02, Local0) } If (LEqual (Arg0, 0x08)) { ShiftRight (Local0, One, Local0) } And (Local0, One, Local0) Or (IOST, ShiftLeft (Local0, Arg0), IOST) If (Local0) { Return (0x0F) } Else { If (And (ShiftLeft (One, Arg0), IOST)) { Return (0x0D) } Else { Return (Zero) } } } Method (DCNT, 2, NotSerialized) { ENFG (CGLD (Arg0)) If (LEqual (Arg0, 0x05)) { ShiftLeft (IOH2, 0x08, Local1) Or (IOL2, Local1, Local1) } Else { ShiftLeft (IOAH, 0x08, Local1) Or (IOAL, Local1, Local1) } RRIO (Arg0, Arg1, Local1, 0x08) If (LAnd (LLess (DMCH, 0x04), LNot (LEqual (And (DMCH, 0x03, Local1), Zero)))) { RDMA (Arg0, Arg1, Increment (Local1)) } Store (Arg1, Local1) Store (One, Local2) If (LEqual (Arg0, 0x05)) { ShiftLeft (Arg1, 0x02, Local1) ShiftLeft (Local2, 0x02, Local2) } If (LEqual (Arg0, 0x08)) { ShiftLeft (Arg1, One, Local1) ShiftLeft (Local2, One, Local2) } Store (ACTR, Local0) Not (Local2, Local3) And (Local0, Local3, Local0) Or (Local0, Local1, Local0) Store (Local0, ACTR) EXFG () } Name (CRS1, ResourceTemplate () { IRQNoFlags () {} DMA (Compatibility, NotBusMaster, Transfer8) {} IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x01, // Address Alignment 0x00, // Address Length ) }) CreateWordField (CRS1, One, IRQM) CreateByteField (CRS1, 0x04, DMAM) CreateWordField (CRS1, 0x08, IO11) CreateWordField (CRS1, 0x0A, IO12) CreateByteField (CRS1, 0x0D, LEN1) Name (CRS2, ResourceTemplate () { IRQNoFlags () {6} DMA (Compatibility, NotBusMaster, Transfer8) {2} IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x01, // Address Alignment 0x00, // Address Length ) IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x01, // Address Alignment 0x00, // Address Length ) }) CreateWordField (CRS2, One, IRQE) CreateByteField (CRS2, 0x04, DMAE) CreateWordField (CRS2, 0x08, IO21) CreateWordField (CRS2, 0x0A, IO22) CreateByteField (CRS2, 0x0D, LEN2) CreateWordField (CRS2, 0x10, IO31) CreateWordField (CRS2, 0x12, IO32) CreateByteField (CRS2, 0x15, LEN3) Method (DCRS, 2, NotSerialized) { ENFG (CGLD (Arg0)) ShiftLeft (IOAH, 0x08, IO11) Or (IOAL, IO11, IO11) Store (IO11, IO12) Subtract (FindSetRightBit (IO11), One, Local0) ShiftLeft (One, Local0, LEN1) If (INTR) { ShiftLeft (One, INTR, IRQM) } Else { Store (Zero, IRQM) } If (LOr (LGreater (DMCH, 0x03), LEqual (Arg1, Zero))) { Store (Zero, DMAM) } Else { And (DMCH, 0x03, Local1) ShiftLeft (One, Local1, DMAM) } EXFG () Return (CRS1) } Method (DSRS, 2, NotSerialized) { CreateWordField (Arg0, One, IRQM) CreateByteField (Arg0, 0x04, DMAM) CreateWordField (Arg0, 0x08, IO11) ENFG (CGLD (Arg1)) And (IO11, 0xFF, IOAL) ShiftRight (IO11, 0x08, IOAH) If (IRQM) { FindSetRightBit (IRQM, Local0) Subtract (Local0, One, INTR) } Else { Store (Zero, INTR) } If (DMAM) { FindSetRightBit (DMAM, Local0) Subtract (Local0, One, DMCH) } Else { Store (0x07, DMCH) } EXFG () DCNT (Arg1, One) } Device (RMSC) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x10) Name (CRS, ResourceTemplate () { IO (Decode16, 0x0010, // Address Range Minimum 0x0010, // Address Range Maximum 0x00, // Address Alignment 0x10, // Address Length ) IO (Decode16, 0x0022, // Address Range Minimum 0x0022, // Address Range Maximum 0x00, // Address Alignment 0x1E, // Address Length ) IO (Decode16, 0x0044, // Address Range Minimum 0x0044, // Address Range Maximum 0x00, // Address Alignment 0x1C, // Address Length ) IO (Decode16, 0x0062, // Address Range Minimum 0x0062, // Address Range Maximum 0x00, // Address Alignment 0x02, // Address Length ) IO (Decode16, 0x0065, // Address Range Minimum 0x0065, // Address Range Maximum 0x00, // Address Alignment 0x0B, // Address Length ) IO (Decode16, 0x0072, // Address Range Minimum 0x0072, // Address Range Maximum 0x00, // Address Alignment 0x0E, // Address Length ) IO (Decode16, 0x0080, // Address Range Minimum 0x0080, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IO (Decode16, 0x0084, // Address Range Minimum 0x0084, // Address Range Maximum 0x00, // Address Alignment 0x03, // Address Length ) IO (Decode16, 0x0088, // Address Range Minimum 0x0088, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IO (Decode16, 0x008C, // Address Range Minimum 0x008C, // Address Range Maximum 0x00, // Address Alignment 0x03, // Address Length ) IO (Decode16, 0x0090, // Address Range Minimum 0x0090, // Address Range Maximum 0x00, // Address Alignment 0x10, // Address Length ) IO (Decode16, 0x00A2, // Address Range Minimum 0x00A2, // Address Range Maximum 0x00, // Address Alignment 0x1E, // Address Length ) IO (Decode16, 0x00E0, // Address Range Minimum 0x00E0, // Address Range Maximum 0x00, // Address Alignment 0x10, // Address Length ) IO (Decode16, 0x04D0, // Address Range Minimum 0x04D0, // Address Range Maximum 0x00, // Address Alignment 0x02, // Address Length ) IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x00, // Address Alignment 0x00, // Address Length ) IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x00, // Address Alignment 0x00, // Address Length ) IO (Decode16, 0x0000, // Address Range Minimum 0x0000, // Address Range Maximum 0x00, // Address Alignment 0x00, // Address Length ) Memory32Fixed (ReadWrite, 0xFED1C000, // Address Base 0x00004000, // Address Length ) Memory32Fixed (ReadWrite, 0xFED20000, // Address Base 0x00070000, // Address Length ) Memory32Fixed (ReadWrite, 0xFF9FA000, // Address Base 0x00001000, // Address Length ) Memory32Fixed (ReadWrite, 0xFFF00000, // Address Base 0x000FFFFF, // Address Length ) }) Method (_CRS, 0, NotSerialized) { CreateWordField (CRS, 0x72, GP00) CreateWordField (CRS, 0x74, GP01) CreateByteField (CRS, 0x77, GP0L) Store (PMBS, GP00) Store (PMBS, GP01) Store (PMLN, GP0L) If (SMBS) { CreateWordField (CRS, 0x7A, GP10) CreateWordField (CRS, 0x7C, GP11) CreateByteField (CRS, 0x7F, GP1L) Store (SMBS, GP10) Store (SMBS, GP11) Store (SMBL, GP1L) } If (GPBS) { CreateWordField (CRS, 0x82, GP20) CreateWordField (CRS, 0x84, GP21) CreateByteField (CRS, 0x87, GP2L) Store (GPBS, GP20) Store (GPBS, GP21) Store (GPLN, GP2L) } Return (CRS) } } Scope (\_SB.PCI0.SBRG) { Device (ASOC) { Name (_HID, "ATK0110") Name (_UID, 0x01010110) Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_INI, 0, NotSerialized) { Name (_T_0, Zero) Store (GNVS (0x3774), _T_0) If (LEqual (_T_0, Zero)) { Store (0xA6, Index (G3T0, 0x03)) } Else { If (LEqual (_T_0, One)) { Store (0x21, Index (G3T0, 0x03)) } Else { If (LEqual (_T_0, 0x02)) { Store (0x42, Index (G3T0, 0x03)) } Else { If (LEqual (_T_0, 0x03)) { Store (0x64, Index (G3T0, 0x03)) } Else { If (LEqual (_T_0, 0x04)) { Store (0xE9, Index (G3T0, 0x03)) } Else { If (LEqual (_T_0, 0x05)) { Store (Zero, Index (G3T0, 0x03)) } Else { If (LEqual (_T_0, 0x06)) { Store (0x012C, Index (G3T0, 0x03)) } } } } } } } Store (Subtract (GNVS (0x66B9), 0x06), Index (G3T2, 0x03)) } Name (MBIF, Package (0x08) { 0x03, "P5B-V", 0x01010101, 0x01010101, 0xE0000001, Zero, Zero, Zero }) Name (ASBF, Buffer (0x08) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) CreateDWordField (ASBF, Zero, ASB0) CreateDWordField (ASBF, 0x04, ASB1) Method (GGRP, 1, Serialized) { Name (_T_0, Zero) Store (Arg0, _T_0) If (LEqual (_T_0, Zero)) { Return (GRP0) } Else { If (LEqual (_T_0, 0x03)) { Return (GRP3) } Else { If (LEqual (_T_0, 0x04)) { Store (GNVS (0x1787), Local0) If (LEqual (Local0, One)) { Return (GR41) } Else { Return (GR42) } } Else { If (LEqual (_T_0, 0x05)) { Return (GRP5) } Else { If (LEqual (_T_0, 0x06)) { Return (GRP6) } Else { If (LEqual (_T_0, 0x08)) { Return (GRP8) } Else { If (LEqual (_T_0, 0x09)) { Return (GRP9) } Else { If (LEqual (_T_0, 0x0A)) { Return (GRPA) } Else { If (LEqual (_T_0, 0x0B)) { Return (GRPB) } Else { Return (Zero) } } } } } } } } } } Method (GITM, 1, Serialized) { CreateDWordField (Arg0, Zero, PRM0) CreateByteField (Arg0, 0x03, GPID) Store (One, ASB0) Name (_T_0, Zero) Store (GPID, _T_0) If (LEqual (_T_0, Zero)) { GIT0 (PRM0) } Else { If (LEqual (_T_0, 0x03)) { GIT3 (PRM0) } Else { If (LEqual (_T_0, 0x04)) { GIT4 (PRM0) } Else { If (LEqual (_T_0, 0x05)) { GIT5 (PRM0) } Else { If (LEqual (_T_0, 0x06)) { GIT6 (PRM0) } Else { If (LEqual (_T_0, 0x08)) { GIT8 (PRM0) } Else { If (LEqual (_T_0, 0x09)) { GIT9 (PRM0) } Else { If (LEqual (_T_0, 0x0A)) { GITA (PRM0) } Else { If (LEqual (_T_0, 0x0B)) { GITB (PRM0) } Else { Store (Zero, ASB0) } } } } } } } } } Return (ASBF) } Method (SITM, 1, Serialized) { CreateDWordField (Arg0, Zero, PRM0) CreateDWordField (Arg0, 0x04, PRM1) CreateDWordField (Arg0, 0x08, PRM2) CreateByteField (Arg0, 0x03, GPID) Store (One, ASB0) Name (_T_0, Zero) Store (GPID, _T_0) If (LEqual (_T_0, Zero)) { SIT0 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x03)) { SIT3 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x04)) { SIT4 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x05)) { SIT5 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x06)) { SIT6 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x08)) { SIT8 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x09)) { SIT9 (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x0A)) { SITA (PRM0, PRM1, PRM2) } Else { If (LEqual (_T_0, 0x0B)) { SITB (PRM0, PRM1, PRM2) } Else { Store (Zero, ASB0) } } } } } } } } } Return (ASBF) } Method (OP2V, 2, NotSerialized) { Store (DerefOf (Index (Arg1, 0x04)), Local0) Store (DerefOf (Index (Arg1, 0x05)), Local1) Multiply (Arg0, Local1, Local1) Add (Local0, Local1, Local0) Return (Local0) } Method (V2OP, 2, NotSerialized) { Store (DerefOf (Index (Arg1, 0x04)), Local0) Store (DerefOf (Index (Arg1, 0x05)), Local1) Subtract (Arg0, Local0, Local0) Divide (Local0, Local1, Local1, Local0) Return (Local0) } } } Device (HPET) { Name (_HID, EisaId ("PNP0103")) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0xFED00000, // Address Base 0x00000400, // Address Length ) }) OperationRegion (HPTC, SystemMemory, HTBA, 0x04) Field (HPTC, ByteAcc, NoLock, Preserve) { HPTS, 2, , 5, HPTE, 1, Offset (0x04) } Method (_STA, 0, NotSerialized) { If (LEqual (OSFL (), Zero)) { If (HPTE) { Return (0x0F) } } Else { If (HPTE) { Return (0x0B) } } Return (Zero) } Method (_CRS, 0, NotSerialized) { CreateDWordField (CRS, 0x04, HPT) Multiply (HPTS, 0x1000, Local0) Add (Local0, 0xFED00000, HPT) Return (CRS) } } OperationRegion (RX80, PCI_Config, Zero, 0xFF) Field (RX80, ByteAcc, NoLock, Preserve) { Offset (0x80), LPCD, 16, LPCE, 16 } Name (DBPT, Package (0x04) { Package (0x08) { 0x03F8, 0x02F8, 0x0220, 0x0228, 0x0238, 0x02E8, 0x0338, 0x03E8 }, Package (0x08) { 0x03F8, 0x02F8, 0x0220, 0x0228, 0x0238, 0x02E8, 0x0338, 0x03E8 }, Package (0x03) { 0x0378, 0x0278, 0x03BC }, Package (0x02) { 0x03F0, 0x0370 } }) Name (DDLT, Package (0x04) { Package (0x02) { Zero, 0xFFF8 }, Package (0x02) { 0x04, 0xFF8F }, Package (0x02) { 0x08, 0xFCFF }, Package (0x02) { 0x0C, 0xEFFF } }) Method (RRIO, 4, NotSerialized) { If (LAnd (LNot (LGreater (Arg0, 0x03)), LNot (LLess (Arg0, Zero)))) { Store (Match (DerefOf (Index (DBPT, Arg0)), MEQ, Arg2, MTR, Zero, Zero), Local0) If (LNot (LEqual (Local0, Ones))) { Store (DerefOf (Index (DerefOf (Index (DDLT, Arg0)), Zero)), Local1) Store (DerefOf (Index (DerefOf (Index (DDLT, Arg0)), One)), Local2) ShiftLeft (Local0, Local1, Local0) And (LPCD, Local2, LPCD) Or (LPCD, Local0, LPCD) WX82 (Arg0, Arg1) } } If (LEqual (Arg0, 0x08)) { If (LEqual (Arg2, 0x0200)) { WX82 (0x08, Arg0) } Else { If (LEqual (Arg2, 0x0208)) { WX82 (0x09, Arg0) } } } If (LAnd (LNot (LGreater (Arg0, 0x0D)), LNot (LLess (Arg0, 0x0A)))) { WX82 (Arg0, Arg1) } } Method (WX82, 2, NotSerialized) { ShiftLeft (One, Arg0, Local0) If (Arg1) { Or (LPCE, Local0, LPCE) } Else { Not (Local0, Local0) And (LPCE, Local0, LPCE) } } Method (RDMA, 3, NotSerialized) { } Scope (\) { OperationRegion (RAMW, SystemMemory, Subtract (TOPM, 0x00010000), 0x00010000) Field (RAMW, ByteAcc, NoLock, Preserve) { PAR0, 32, PAR1, 32 } OperationRegion (IOB2, SystemIO, 0xB2, 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 (ASOC) { Name (ALAE, Package (0x04) { 0x0A070001, "Music Alarm", Zero, Zero }) Name (ALSU, Package (0x04) { 0x0A070002, "Sunday", Zero, One }) Name (ALMO, Package (0x04) { 0x0A070003, "Monday", Zero, One }) Name (ALTU, Package (0x04) { 0x0A070004, "Tuesday", Zero, One }) Name (ALWE, Package (0x04) { 0x0A070005, "Wednesday", Zero, One }) Name (ALTH, Package (0x04) { 0x0A070006, "Thursday", Zero, One }) Name (ALFR, Package (0x04) { 0x0A070007, "Friday", Zero, One }) Name (ALSA, Package (0x04) { 0x0A070008, "Saturday", Zero, One }) Name (ALAH, Package (0x07) { 0x0A060009, "Alarm Hour", Zero, 0x0C, Zero, One, 0x18 }) Name (ALAM, Package (0x07) { 0x0A06000A, "Alarm Mins", Zero, Zero, Zero, One, 0x3C }) Name (ALAC, Package (0x0A) { 0x0A08000B, "Music Alarm Drive", Zero, 0x03, 0x05, "Primary IDE Master", "Primary IDE Slave", "Secondary IDE Master", "Secondary IDE Slave", "JMicron JMB363 IDE" }) Name (ALAT, Package (0x07) { 0x0A06000C, "Starting Track", Zero, 0x10, Zero, One, 0x20 }) Name (ALAR, Package (0x08) { 0x0A08000D, "Repeat", Zero, Zero, 0x03, "none", "Single", "All" }) Name (ALAL, Package (0x09) { 0x0A08000E, "Length", Zero, Zero, 0x04, "10 mins", "20 mins", "30 mins", "1 hour" }) Name (ALAV, Package (0x07) { 0x0A06000F, "Volume", Zero, 0x0F, Zero, One, 0x20 }) Name (GRPA, Package (0x0F) { ALAE, ALSU, ALMO, ALTU, ALWE, ALTH, ALFR, ALSA, ALAH, ALAM, ALAC, ALAT, ALAR, ALAL, ALAV }) Method (GITA, 1, NotSerialized) { Store (And (Arg0, 0xFF), Local0) Name (_T_0, Zero) Store (Local0, _T_0) If (LEqual (_T_0, One)) { Store (GNVS (0x16EE), ASB1) } Else { If (LEqual (_T_0, 0x02)) { Store (GNVS (0x16EF), ASB1) } Else { If (LEqual (_T_0, 0x03)) { Store (GNVS (0x16F0), ASB1) } Else { If (LEqual (_T_0, 0x04)) { Store (GNVS (0x16F1), ASB1) } Else { If (LEqual (_T_0, 0x05)) { Store (GNVS (0x16F2), ASB1) } Else { If (LEqual (_T_0, 0x06)) { Store (GNVS (0x16F3), ASB1) } Else { If (LEqual (_T_0, 0x07)) { Store (GNVS (0x16F4), ASB1) } Else { If (LEqual (_T_0, 0x08)) { Store (GNVS (0x16F5), ASB1) } Else { If (LEqual (_T_0, 0x09)) { Store (GNVS (0x5368), ASB1) } Else { If (LEqual (_T_0, 0x0A)) { Store (GNVS (0x6338), ASB1) } Else { If (LEqual (_T_0, 0x0B)) { Store (GNVS (0x3445), ASB1) } Else { If (LEqual (_T_0, 0x0C)) { Store (GNVS (0x5360), ASB1) } Else { If (LEqual (_T_0, 0x0D)) { Store (GNVS (0x256A), ASB1) } Else { If (LEqual (_T_0, 0x0E)) { Store (GNVS (0x256C), ASB1) } Else { If (LEqual (_T_0, 0x0F)) { Store (GNVS (0x5378), ASB1) } Else { Store (Zero, ASB0) } } } } } } } } } } } } } } } } Method (SITA, 3, NotSerialized) { Store (And (Arg0, 0xFF), Local0) Name (_T_0, Zero) Store (Local0, _T_0) If (LEqual (_T_0, One)) { SNVS (0x16EE, Arg1) } Else { If (LEqual (_T_0, 0x02)) { SNVS (0x16EF, Arg1) } Else { If (LEqual (_T_0, 0x03)) { SNVS (0x16F0, Arg1) } Else { If (LEqual (_T_0, 0x04)) { SNVS (0x16F1, Arg1) } Else { If (LEqual (_T_0, 0x05)) { SNVS (0x16F2, Arg1) } Else { If (LEqual (_T_0, 0x06)) { SNVS (0x16F3, Arg1) } Else { If (LEqual (_T_0, 0x07)) { SNVS (0x16F4, Arg1) } Else { If (LEqual (_T_0, 0x08)) { SNVS (0x16F5, Arg1) } Else { If (LEqual (_T_0, 0x09)) { SNVS (0x5368, Arg1) } Else { If (LEqual (_T_0, 0x0A)) { SNVS (0x6338, Arg1) } Else { If (LEqual (_T_0, 0x0B)) { SNVS (0x3445, Arg1) } Else { If (LEqual (_T_0, 0x0C)) { SNVS (0x5360, Arg1) } Else { If (LEqual (_T_0, 0x0D)) { SNVS (0x256A, Arg1) } Else { If (LEqual (_T_0, 0x0E)) { SNVS (0x256C, Arg1) } Else { If (LEqual (_T_0, 0x0F)) { SNVS (0x5378, Arg1) } Else { Store (Zero, ASB0) } } } } } } } } } } } } } } } } } Device (^PCIE) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x11) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0xE0000000, // Address Base 0x10000000, // Address Length ) }) Method (_CRS, 0, NotSerialized) { CreateDWordField (CRS, 0x04, BAS1) CreateDWordField (CRS, 0x08, LEN1) Store (PCIB, BAS1) Store (PCIL, LEN1) Return (CRS) } } Scope (\_GPE) { Method (_L1C, 0, NotSerialized) { Notify (\_SB.PCI0.SBRG.ASOC, One) Sleep (0x03E8) } } Scope (ASOC) { Name (VESL, Zero) Method (SPLV, 1, Serialized) { And (Arg0, 0xFFFF, VESL) Store (VESL, PAR0) ISMI (0x88) Store (And (PAR0, 0xFFFF), Local0) Return (Local0) } Method (GPLV, 0, Serialized) { Return (VESL) } } Device (OMSC) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, Zero) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0x00000000, // Address Base 0x00000000, // Address Length ) Memory32Fixed (ReadOnly, 0x00000000, // Address Base 0x00000000, // Address Length ) }) 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 (^^RMEM) { Name (_HID, EisaId ("PNP0C01")) Name (_UID, One) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x000A0000, // Address Length ) Memory32Fixed (ReadOnly, 0x00000000, // Address Base 0x00000000, // Address Length ) Memory32Fixed (ReadOnly, 0x000E0000, // Address Base 0x00020000, // Address Length ) Memory32Fixed (ReadWrite, 0x00100000, // Address Base 0x00000000, // Address Length ) Memory32Fixed (ReadOnly, 0x00000000, // Address Base 0x00000000, // Address Length ) }) 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 (Zero, BAS4, LEN4) Return (CRS) } } Device (PS2K) { Name (_HID, EisaId ("PNP0303")) Name (_CID, 0x0B03D041) Method (_STA, 0, NotSerialized) { ShiftLeft (One, 0x0A, Local0) If (And (IOST, Local0)) { Return (0x0F) } Return (Zero) } Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0060, // Address Range Minimum 0x0060, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IO (Decode16, 0x0064, // Address Range Minimum 0x0064, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IRQNoFlags () {1} }) } Method (PS2K._PRW, 0, NotSerialized) { Return (GPRW (0x1F, 0x04)) } Device (PS2M) { Name (_HID, EisaId ("PNP0F03")) Name (_CID, 0x130FD041) Method (_STA, 0, NotSerialized) { ShiftLeft (One, 0x0C, Local0) If (And (IOST, Local0)) { Return (0x0F) } Return (Zero) } Name (CRS1, ResourceTemplate () { IRQNoFlags () {12} }) Name (CRS2, ResourceTemplate () { IO (Decode16, 0x0060, // Address Range Minimum 0x0060, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IO (Decode16, 0x0064, // Address Range Minimum 0x0064, // Address Range Maximum 0x00, // Address Alignment 0x01, // Address Length ) IRQNoFlags () {12} }) Method (_CRS, 0, NotSerialized) { ShiftLeft (One, 0x0A, Local0) If (And (IOST, Local0)) { Return (CRS1) } Else { Return (CRS2) } } } Method (PS2M._PRW, 0, NotSerialized) { Return (GPRW (0x1D, 0x04)) } } Device (SATA) { Name (_ADR, 0x001F0002) Name (^NATA, Package (0x01) { 0x001F0002 }) Name (REGF, One) Method (_REG, 2, NotSerialized) { If (LEqual (Arg0, 0x02)) { Store (Arg1, REGF) } } Name (TIM0, Package (0x08) { Package (0x04) { 0x78, 0xB4, 0xF0, 0x0384 }, Package (0x04) { 0x23, 0x21, 0x10, Zero }, Package (0x04) { 0x0B, 0x09, 0x04, Zero }, Package (0x06) { 0x78, 0x5A, 0x3C, 0x28, 0x1E, 0x14 }, Package (0x06) { Zero, One, 0x02, One, 0x02, One }, Package (0x06) { Zero, Zero, Zero, One, One, One }, Package (0x04) { 0x04, 0x03, 0x02, Zero }, Package (0x04) { 0x02, One, Zero, Zero } }) Name (TMD0, Buffer (0x14) {}) CreateDWordField (TMD0, Zero, PIO0) CreateDWordField (TMD0, 0x04, DMA0) CreateDWordField (TMD0, 0x08, PIO1) CreateDWordField (TMD0, 0x0C, DMA1) CreateDWordField (TMD0, 0x10, CHNF) OperationRegion (CFG2, PCI_Config, 0x40, 0x20) Field (CFG2, DWordAcc, NoLock, Preserve) { PMPT, 4, PSPT, 4, PMRI, 6, Offset (0x02), SMPT, 4, SSPT, 4, SMRI, 6, Offset (0x04), PSRI, 4, SSRI, 4, Offset (0x08), PM3E, 1, PS3E, 1, SM3E, 1, SS3E, 1, Offset (0x0A), PMUT, 2, , 2, PSUT, 2, Offset (0x0B), SMUT, 2, , 2, SSUT, 2, Offset (0x0C), Offset (0x14), PM6E, 1, PS6E, 1, SM6E, 1, SS6E, 1, PMCR, 1, PSCR, 1, SMCR, 1, SSCR, 1, , 4, PMAE, 1, PSAE, 1, SMAE, 1, SSAE, 1 } Name (GMPT, Zero) Name (GMUE, Zero) Name (GMUT, Zero) Name (GMCR, Zero) Name (GSPT, Zero) Name (GSUE, Zero) Name (GSUT, Zero) Name (GSCR, Zero) Device (CHN0) { Name (_ADR, Zero) Method (_GTM, 0, NotSerialized) { FZHD () ShiftLeft (PSCR, One, Local1) Or (PMCR, Local1, Local0) ShiftLeft (PMAE, 0x02, Local3) ShiftLeft (PM6E, One, Local4) Or (Local3, Local4, Local3) Or (PM3E, Local3, Local1) ShiftLeft (PMPT, 0x04, Local3) Or (Local1, Local3, Local1) ShiftLeft (PSAE, 0x02, Local3) ShiftLeft (PS6E, One, Local4) Or (Local3, Local4, Local3) Or (PS3E, Local3, Local2) ShiftLeft (PSPT, 0x04, Local3) Or (Local2, Local3, Local2) Return (GTM (PMRI, Local1, PMUT, PSRI, Local2, PSUT, Local0)) } Method (_STM, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg0, TMD0) ShiftLeft (PMAE, 0x02, Local3) ShiftLeft (PM6E, One, Local4) Or (Local3, Local4, Local3) Or (PM3E, Local3, Local0) ShiftLeft (PMPT, 0x04, Local3) Or (Local0, Local3, Local0) ShiftLeft (PSAE, 0x02, Local3) ShiftLeft (PS6E, One, Local4) Or (Local3, Local4, Local3) Or (PS3E, Local3, Local1) ShiftLeft (PSPT, 0x04, Local3) Or (Local1, Local3, Local1) Store (PMRI, GMPT) Store (Local0, GMUE) Store (PMUT, GMUT) Store (PMCR, GMCR) Store (PSRI, GSPT) Store (Local1, GSUE) Store (PSUT, GSUT) Store (PSCR, GSCR) STM () Store (GMPT, PMRI) Store (GMUE, Local0) Store (GMUT, PMUT) Store (GMCR, PMCR) Store (GSUE, Local1) Store (GSUT, PSUT) Store (GSCR, PSCR) If (And (Local0, One)) { Store (One, PM3E) } Else { Store (Zero, PM3E) } If (And (Local0, 0x02)) { Store (One, PM6E) } Else { Store (Zero, PM6E) } If (And (Local0, 0x04)) { Store (One, PMAE) } Else { Store (Zero, PMAE) } If (And (Local1, One)) { Store (One, PS3E) } Else { Store (Zero, PS3E) } If (And (Local1, 0x02)) { Store (One, PS6E) } Else { Store (Zero, PS6E) } If (And (Local1, 0x04)) { Store (One, PSAE) } Else { Store (Zero, PSAE) } Store (GTF (Zero, Arg1), ATA0) Store (GTF (One, Arg2), ATA1) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA0)) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA1)) } } } Device (CHN1) { Name (_ADR, One) Method (_GTM, 0, NotSerialized) { FZHD () ShiftLeft (SSCR, One, Local1) Or (SMCR, Local1, Local0) ShiftLeft (SMAE, 0x02, Local3) ShiftLeft (SM6E, One, Local4) Or (Local3, Local4, Local3) Or (SM3E, Local3, Local1) ShiftLeft (SMPT, 0x04, Local3) Or (Local1, Local3, Local1) ShiftLeft (SSAE, 0x02, Local3) ShiftLeft (SS6E, One, Local4) Or (Local3, Local4, Local3) Or (SS3E, Local3, Local2) ShiftLeft (SSPT, 0x04, Local3) Or (Local2, Local3, Local2) Return (GTM (SMRI, Local1, SMUT, SSRI, Local2, SSUT, Local0)) } Method (_STM, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg0, TMD0) ShiftLeft (SMAE, 0x02, Local3) ShiftLeft (SM6E, One, Local4) Or (Local3, Local4, Local3) Or (SM3E, Local3, Local0) ShiftLeft (SMPT, 0x04, Local3) Or (Local0, Local3, Local0) ShiftLeft (SSAE, 0x02, Local3) ShiftLeft (SS6E, One, Local4) Or (Local3, Local4, Local3) Or (SS3E, Local3, Local1) ShiftLeft (SSPT, 0x04, Local3) Or (Local1, Local3, Local1) Store (SMRI, GMPT) Store (Local0, GMUE) Store (SMUT, GMUT) Store (SMCR, GMCR) Store (SSRI, GSPT) Store (Local1, GSUE) Store (SSUT, GSUT) Store (SSCR, GSCR) STM () Store (GMPT, SMRI) Store (GMUE, Local0) Store (GMUT, SMUT) Store (GMCR, SMCR) Store (GSUE, Local1) Store (GSUT, SSUT) Store (GSCR, SSCR) If (And (Local0, One)) { Store (One, SM3E) } Else { Store (Zero, SM3E) } If (And (Local0, 0x02)) { Store (One, SM6E) } Else { Store (Zero, SM6E) } If (And (Local0, 0x04)) { Store (One, SMAE) } Else { Store (Zero, SMAE) } If (And (Local1, One)) { Store (One, SS3E) } Else { Store (Zero, SS3E) } If (And (Local1, 0x02)) { Store (One, SS6E) } Else { Store (Zero, SS6E) } If (And (Local1, 0x04)) { Store (One, SSAE) } Else { Store (Zero, SSAE) } Store (GTF (Zero, Arg1), ATA2) Store (GTF (One, Arg2), ATA3) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA2)) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA3)) } } } Method (GTM, 7, Serialized) { Store (Ones, PIO0) Store (Ones, PIO1) Store (Ones, DMA0) Store (Ones, DMA1) Store (0x10, CHNF) If (REGF) {} Else { Return (TMD0) } If (And (Arg1, 0x20)) { Or (CHNF, 0x02, CHNF) } Store (Match (DerefOf (Index (TIM0, One)), MEQ, Arg0, MTR, Zero, Zero), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)), Local7) Store (Local7, DMA0) Store (Local7, PIO0) If (And (Arg4, 0x20)) { Or (CHNF, 0x08, CHNF) } Store (Match (DerefOf (Index (TIM0, 0x02)), MEQ, Arg3, MTR, Zero, Zero), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)), Local7) Store (Local7, DMA1) Store (Local7, PIO1) If (And (Arg1, 0x07)) { Store (Arg2, Local5) If (And (Arg1, 0x02)) { Add (Local5, 0x02, Local5) } If (And (Arg1, 0x04)) { Add (Local5, 0x04, Local5) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)), DMA0) Or (CHNF, One, CHNF) } If (And (Arg4, 0x07)) { Store (Arg5, Local5) If (And (Arg4, 0x02)) { Add (Local5, 0x02, Local5) } If (And (Arg4, 0x04)) { Add (Local5, 0x04, Local5) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)), DMA1) Or (CHNF, 0x04, CHNF) } Store (TMD0, Debug) Return (TMD0) } Method (STM, 0, Serialized) { If (REGF) { Store (Zero, GMUE) Store (Zero, GMUT) Store (Zero, GSUE) Store (Zero, GSUT) If (And (CHNF, One)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA0, MTR, Zero, Zero), Local0) If (LGreater (Local0, 0x05)) { Store (0x05, Local0) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), GMUT) Or (GMUE, One, GMUE) If (LGreater (Local0, 0x02)) { Or (GMUE, 0x02, GMUE) } If (LGreater (Local0, 0x04)) { And (GMUE, 0xFD, GMUE) Or (GMUE, 0x04, GMUE) } } Else { If (Or (LEqual (PIO0, Ones), LEqual (PIO0, Zero))) { If (And (LLess (DMA0, Ones), LGreater (DMA0, Zero))) { Store (DMA0, PIO0) Or (GMUE, 0x80, GMUE) } } } If (And (CHNF, 0x04)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA1, MTR, Zero, Zero), Local0) If (LGreater (Local0, 0x05)) { Store (0x05, Local0) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), GSUT) Or (GSUE, One, GSUE) If (LGreater (Local0, 0x02)) { Or (GSUE, 0x02, GSUE) } If (LGreater (Local0, 0x04)) { And (GSUE, 0xFD, GSUE) Or (GSUE, 0x04, GSUE) } } Else { If (Or (LEqual (PIO1, Ones), LEqual (PIO1, Zero))) { If (And (LLess (DMA1, Ones), LGreater (DMA1, Zero))) { Store (DMA1, PIO1) Or (GSUE, 0x80, GSUE) } } } If (And (CHNF, 0x02)) { Or (GMUE, 0x20, GMUE) } If (And (CHNF, 0x08)) { Or (GSUE, 0x20, GSUE) } And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO0, MTR, Zero, Zero), 0x07, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, One)), Local0)), Local1) Store (Local1, GMPT) If (LLess (Local0, 0x03)) { Or (GMUE, 0x50, GMUE) } And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO1, MTR, Zero, Zero), 0x07, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local0)), Local1) Store (Local1, GSPT) If (LLess (Local0, 0x03)) { Or (GSUE, 0x50, GSUE) } } } 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, Zero, 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 (Arg1, Debug) Store (Zero, CMDC) Name (ID49, 0x0C00) Name (ID59, Zero) Name (ID53, 0x04) Name (ID63, 0x0F00) Name (ID88, 0x0F00) Name (IRDY, One) Name (PIOT, Zero) Name (DMAT, Zero) 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, One)) { Store (DMA0, DMAT) } } If (LAnd (LAnd (And (ID53, 0x04), And (ID88, 0xFF00)), DMAT)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMAT, MTR, Zero, Zero), Local1) If (LGreater (Local1, 0x05)) { Store (0x05, Local1) } GTFB (AT01, Or (0x40, Local1), Local7) } Else { If (LAnd (And (ID63, 0xFF00), PIOT)) { And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR, Zero, Zero), 0x03, Local0) Or (0x20, DerefOf (Index (DerefOf (Index (TIM0, 0x07)), Local0)), Local1) GTFB (AT01, Local1, Local7) } } If (IRDY) { And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR, Zero, Zero), 0x07, Local0) Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0)), Local1) GTFB (AT01, Local1, Local7) } Else { If (And (ID49, 0x0400)) { GTFB (AT01, One, Local7) } } If (LAnd (And (ID59, 0x0100), And (ID59, 0xFF))) { GTFB (AT03, And (ID59, 0xFF), Local7) } Store (ATAB, Debug) Return (ATAB) } Method (RATA, 1, NotSerialized) { CreateByteField (Arg0, Zero, CMDN) Multiply (CMDN, 0x38, Local0) CreateField (Arg0, 0x08, Local0, RETB) Store (RETB, Debug) Return (RETB) } } Device (SAT1) { Name (_ADR, 0x001F0005) Name (REGF, One) Method (_REG, 2, NotSerialized) { If (LEqual (Arg0, 0x02)) { Store (Arg1, REGF) } } Name (TIM0, Package (0x08) { Package (0x04) { 0x78, 0xB4, 0xF0, 0x0384 }, Package (0x04) { 0x23, 0x21, 0x10, Zero }, Package (0x04) { 0x0B, 0x09, 0x04, Zero }, Package (0x06) { 0x78, 0x5A, 0x3C, 0x28, 0x1E, 0x14 }, Package (0x06) { Zero, One, 0x02, One, 0x02, One }, Package (0x06) { Zero, Zero, Zero, One, One, One }, Package (0x04) { 0x04, 0x03, 0x02, Zero }, Package (0x04) { 0x02, One, Zero, Zero } }) Name (TMD0, Buffer (0x14) {}) CreateDWordField (TMD0, Zero, PIO0) CreateDWordField (TMD0, 0x04, DMA0) CreateDWordField (TMD0, 0x08, PIO1) CreateDWordField (TMD0, 0x0C, DMA1) CreateDWordField (TMD0, 0x10, CHNF) OperationRegion (CFG2, PCI_Config, 0x40, 0x20) Field (CFG2, DWordAcc, NoLock, Preserve) { PMPT, 4, PSPT, 4, PMRI, 6, Offset (0x02), SMPT, 4, SSPT, 4, SMRI, 6, Offset (0x04), PSRI, 4, SSRI, 4, Offset (0x08), PM3E, 1, PS3E, 1, SM3E, 1, SS3E, 1, Offset (0x0A), PMUT, 2, , 2, PSUT, 2, Offset (0x0B), SMUT, 2, , 2, SSUT, 2, Offset (0x0C), Offset (0x14), PM6E, 1, PS6E, 1, SM6E, 1, SS6E, 1, PMCR, 1, PSCR, 1, SMCR, 1, SSCR, 1, , 4, PMAE, 1, PSAE, 1, SMAE, 1, SSAE, 1 } Name (GMPT, Zero) Name (GMUE, Zero) Name (GMUT, Zero) Name (GMCR, Zero) Name (GSPT, Zero) Name (GSUE, Zero) Name (GSUT, Zero) Name (GSCR, Zero) Device (CHN0) { Name (_ADR, Zero) Method (_GTM, 0, NotSerialized) { ShiftLeft (PSCR, One, Local1) Or (PMCR, Local1, Local0) ShiftLeft (PMAE, 0x02, Local3) ShiftLeft (PM6E, One, Local4) Or (Local3, Local4, Local3) Or (PM3E, Local3, Local1) ShiftLeft (PMPT, 0x04, Local3) Or (Local1, Local3, Local1) ShiftLeft (PSAE, 0x02, Local3) ShiftLeft (PS6E, One, Local4) Or (Local3, Local4, Local3) Or (PS3E, Local3, Local2) ShiftLeft (PSPT, 0x04, Local3) Or (Local2, Local3, Local2) Return (GTM (PMRI, Local1, PMUT, PSRI, Local2, PSUT, Local0)) } Method (_STM, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg0, TMD0) ShiftLeft (PMAE, 0x02, Local3) ShiftLeft (PM6E, One, Local4) Or (Local3, Local4, Local3) Or (PM3E, Local3, Local0) ShiftLeft (PMPT, 0x04, Local3) Or (Local0, Local3, Local0) ShiftLeft (PSAE, 0x02, Local3) ShiftLeft (PS6E, One, Local4) Or (Local3, Local4, Local3) Or (PS3E, Local3, Local1) ShiftLeft (PSPT, 0x04, Local3) Or (Local1, Local3, Local1) Store (PMRI, GMPT) Store (Local0, GMUE) Store (PMUT, GMUT) Store (PMCR, GMCR) Store (PSRI, GSPT) Store (Local1, GSUE) Store (PSUT, GSUT) Store (PSCR, GSCR) STM () Store (GMPT, PMRI) Store (GMUE, Local0) Store (GMUT, PMUT) Store (GMCR, PMCR) Store (GSUE, Local1) Store (GSUT, PSUT) Store (GSCR, PSCR) If (And (Local0, One)) { Store (One, PM3E) } Else { Store (Zero, PM3E) } If (And (Local0, 0x02)) { Store (One, PM6E) } Else { Store (Zero, PM6E) } If (And (Local0, 0x04)) { Store (One, PMAE) } Else { Store (Zero, PMAE) } If (And (Local1, One)) { Store (One, PS3E) } Else { Store (Zero, PS3E) } If (And (Local1, 0x02)) { Store (One, PS6E) } Else { Store (Zero, PS6E) } If (And (Local1, 0x04)) { Store (One, PSAE) } Else { Store (Zero, PSAE) } Store (GTF (Zero, Arg1), ATA0) Store (GTF (One, Arg2), ATA1) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA0)) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA1)) } } } Device (CHN1) { Name (_ADR, One) Method (_GTM, 0, NotSerialized) { ShiftLeft (SSCR, One, Local1) Or (SMCR, Local1, Local0) ShiftLeft (SMAE, 0x02, Local3) ShiftLeft (SM6E, One, Local4) Or (Local3, Local4, Local3) Or (SM3E, Local3, Local1) ShiftLeft (SMPT, 0x04, Local3) Or (Local1, Local3, Local1) ShiftLeft (SSAE, 0x02, Local3) ShiftLeft (SS6E, One, Local4) Or (Local3, Local4, Local3) Or (SS3E, Local3, Local2) ShiftLeft (SSPT, 0x04, Local3) Or (Local2, Local3, Local2) Return (GTM (SMRI, Local1, SMUT, SSRI, Local2, SSUT, Local0)) } Method (_STM, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg0, TMD0) ShiftLeft (SMAE, 0x02, Local3) ShiftLeft (SM6E, One, Local4) Or (Local3, Local4, Local3) Or (SM3E, Local3, Local0) ShiftLeft (SMPT, 0x04, Local3) Or (Local0, Local3, Local0) ShiftLeft (SSAE, 0x02, Local3) ShiftLeft (SS6E, One, Local4) Or (Local3, Local4, Local3) Or (SS3E, Local3, Local1) ShiftLeft (SSPT, 0x04, Local3) Or (Local1, Local3, Local1) Store (SMRI, GMPT) Store (Local0, GMUE) Store (SMUT, GMUT) Store (SMCR, GMCR) Store (SSRI, GSPT) Store (Local1, GSUE) Store (SSUT, GSUT) Store (SSCR, GSCR) STM () Store (GMPT, SMRI) Store (GMUE, Local0) Store (GMUT, SMUT) Store (GMCR, SMCR) Store (GSUE, Local1) Store (GSUT, SSUT) Store (GSCR, SSCR) If (And (Local0, One)) { Store (One, SM3E) } Else { Store (Zero, SM3E) } If (And (Local0, 0x02)) { Store (One, SM6E) } Else { Store (Zero, SM6E) } If (And (Local0, 0x04)) { Store (One, SMAE) } Else { Store (Zero, SMAE) } If (And (Local1, One)) { Store (One, SS3E) } Else { Store (Zero, SS3E) } If (And (Local1, 0x02)) { Store (One, SS6E) } Else { Store (Zero, SS6E) } If (And (Local1, 0x04)) { Store (One, SSAE) } Else { Store (Zero, SSAE) } Store (GTF (Zero, Arg1), ATA2) Store (GTF (One, Arg2), ATA3) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA2)) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA3)) } } } Method (GTM, 7, Serialized) { Store (Ones, PIO0) Store (Ones, PIO1) Store (Ones, DMA0) Store (Ones, DMA1) Store (0x10, CHNF) If (REGF) {} Else { Return (TMD0) } If (And (Arg1, 0x20)) { Or (CHNF, 0x02, CHNF) } Store (Match (DerefOf (Index (TIM0, One)), MEQ, Arg0, MTR, Zero, Zero), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)), Local7) Store (Local7, DMA0) Store (Local7, PIO0) If (And (Arg4, 0x20)) { Or (CHNF, 0x08, CHNF) } Store (Match (DerefOf (Index (TIM0, 0x02)), MEQ, Arg3, MTR, Zero, Zero), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)), Local7) Store (Local7, DMA1) Store (Local7, PIO1) If (And (Arg1, 0x07)) { Store (Arg2, Local5) If (And (Arg1, 0x02)) { Add (Local5, 0x02, Local5) } If (And (Arg1, 0x04)) { Add (Local5, 0x04, Local5) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)), DMA0) Or (CHNF, One, CHNF) } If (And (Arg4, 0x07)) { Store (Arg5, Local5) If (And (Arg4, 0x02)) { Add (Local5, 0x02, Local5) } If (And (Arg4, 0x04)) { Add (Local5, 0x04, Local5) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)), DMA1) Or (CHNF, 0x04, CHNF) } Store (TMD0, Debug) Return (TMD0) } Method (STM, 0, Serialized) { If (REGF) { Store (Zero, GMUE) Store (Zero, GMUT) Store (Zero, GSUE) Store (Zero, GSUT) If (And (CHNF, One)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA0, MTR, Zero, Zero), Local0) If (LGreater (Local0, 0x05)) { Store (0x05, Local0) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), GMUT) Or (GMUE, One, GMUE) If (LGreater (Local0, 0x02)) { Or (GMUE, 0x02, GMUE) } If (LGreater (Local0, 0x04)) { And (GMUE, 0xFD, GMUE) Or (GMUE, 0x04, GMUE) } } Else { If (Or (LEqual (PIO0, Ones), LEqual (PIO0, Zero))) { If (And (LLess (DMA0, Ones), LGreater (DMA0, Zero))) { Store (DMA0, PIO0) Or (GMUE, 0x80, GMUE) } } } If (And (CHNF, 0x04)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA1, MTR, Zero, Zero), Local0) If (LGreater (Local0, 0x05)) { Store (0x05, Local0) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), GSUT) Or (GSUE, One, GSUE) If (LGreater (Local0, 0x02)) { Or (GSUE, 0x02, GSUE) } If (LGreater (Local0, 0x04)) { And (GSUE, 0xFD, GSUE) Or (GSUE, 0x04, GSUE) } } Else { If (Or (LEqual (PIO1, Ones), LEqual (PIO1, Zero))) { If (And (LLess (DMA1, Ones), LGreater (DMA1, Zero))) { Store (DMA1, PIO1) Or (GSUE, 0x80, GSUE) } } } If (And (CHNF, 0x02)) { Or (GMUE, 0x20, GMUE) } If (And (CHNF, 0x08)) { Or (GSUE, 0x20, GSUE) } And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO0, MTR, Zero, Zero), 0x07, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, One)), Local0)), Local1) Store (Local1, GMPT) If (LLess (Local0, 0x03)) { Or (GMUE, 0x50, GMUE) } And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO1, MTR, Zero, Zero), 0x07, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local0)), Local1) Store (Local1, GSPT) If (LLess (Local0, 0x03)) { Or (GSUE, 0x50, GSUE) } } } 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, Zero, 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 (Arg1, Debug) Store (Zero, CMDC) Name (ID49, 0x0C00) Name (ID59, Zero) Name (ID53, 0x04) Name (ID63, 0x0F00) Name (ID88, 0x0F00) Name (IRDY, One) Name (PIOT, Zero) Name (DMAT, Zero) 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, One)) { Store (DMA0, DMAT) } } If (LAnd (LAnd (And (ID53, 0x04), And (ID88, 0xFF00)), DMAT)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMAT, MTR, Zero, Zero), Local1) If (LGreater (Local1, 0x05)) { Store (0x05, Local1) } GTFB (AT01, Or (0x40, Local1), Local7) } Else { If (LAnd (And (ID63, 0xFF00), PIOT)) { And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR, Zero, Zero), 0x03, Local0) Or (0x20, DerefOf (Index (DerefOf (Index (TIM0, 0x07)), Local0)), Local1) GTFB (AT01, Local1, Local7) } } If (IRDY) { And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR, Zero, Zero), 0x07, Local0) Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0)), Local1) GTFB (AT01, Local1, Local7) } Else { If (And (ID49, 0x0400)) { GTFB (AT01, One, Local7) } } If (LAnd (And (ID59, 0x0100), And (ID59, 0xFF))) { GTFB (AT03, And (ID59, 0xFF), Local7) } Store (ATAB, Debug) Return (ATAB) } Method (RATA, 1, NotSerialized) { CreateByteField (Arg0, Zero, CMDN) Multiply (CMDN, 0x38, Local0) CreateField (Arg0, 0x08, Local0, RETB) Store (RETB, Debug) Return (RETB) } } Device (EUSB) { Name (_ADR, 0x001D0007) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0D, 0x04)) } } Device (USBE) { Name (_ADR, 0x001A0007) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0D, 0x04)) } } Device (P0P5) { Name (_ADR, 0x001C0001) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR05) } Return (PR05) } } Device (P0P6) { Name (_ADR, 0x001C0002) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR06) } Return (PR06) } } Device (P0P7) { Name (_ADR, 0x001C0003) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR07) } Return (PR07) } } Device (P0P8) { Name (_ADR, 0x001C0004) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR08) } Return (PR08) } Device (JMF0) { Name (_ADR, Zero) Name (PIOT, Package (0x05) { 0x0258, 0x0186, 0x014A, 0xB4, 0x78 }) Name (UDMA, Package (0x07) { 0x78, 0x50, 0x3C, 0x28, 0x1E, 0x14, 0x0F }) Name (MDMA, Package (0x03) { 0x01E0, 0x96, 0x78 }) OperationRegion (CF40, PCI_Config, 0x40, 0x04) Field (CF40, ByteAcc, NoLock, Preserve) { , 3, CAB0, 1, , 18, SWAP, 1, CHN0, 1, Offset (0x04) } OperationRegion (CF80, PCI_Config, 0x80, 0x04) Field (CF80, ByteAcc, NoLock, Preserve) { , 19, CAB1, 1, Offset (0x03), CHN1, 1, Offset (0x04) } Name (IDEB, Buffer (0x14) {}) CreateDWordField (IDEB, Zero, GTM0) CreateDWordField (IDEB, 0x04, GTM1) CreateDWordField (IDEB, 0x08, GTM2) CreateDWordField (IDEB, 0x0C, GTM3) CreateDWordField (IDEB, 0x10, GTM4) Name (PMIO, 0x04) Name (PMDM, 0x06) Name (PSIO, 0x04) Name (PSDM, 0x06) Name (SMIO, 0x04) Name (SMDM, 0x06) Name (SSIO, 0x04) Name (SSDM, 0x06) Name (MODP, 0x05) Name (MODS, 0x05) Device (SDE0) { Name (_ADR, Zero) Method (_GTM, 0, NotSerialized) { Store (DerefOf (Index (PIOT, PMIO)), Local0) Store (DerefOf (Index (PIOT, PSIO)), Local2) Store (0x1A, Local4) If (LAnd (MODP, One)) { Store (DerefOf (Index (UDMA, PMDM)), Local1) If (LGreater (PMDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, PMDM) Store (DerefOf (Index (UDMA, PMDM)), Local1) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, PMDM) Store (DerefOf (Index (UDMA, PMDM)), Local1) } } } Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, PMDM)), Local1) } If (LAnd (MODP, 0x04)) { Store (DerefOf (Index (UDMA, PSDM)), Local3) If (LGreater (PSDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, PSDM) Store (DerefOf (Index (UDMA, PSDM)), Local3) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, PSDM) Store (DerefOf (Index (UDMA, PSDM)), Local3) } } } Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, PSDM)), Local3) } Store (Local0, GTM0) Store (Local1, GTM1) Store (Local2, GTM2) Store (Local3, GTM3) Store (Local4, GTM4) Return (IDEB) } Method (_STM, 3, NotSerialized) { Store (Arg0, IDEB) Store (GTM0, Local0) Store (GTM1, Local1) Store (GTM2, Local2) Store (GTM3, Local3) Store (GTM4, Local4) If (LAnd (LNot (LEqual (Local0, Ones)), LNot (LEqual (Local0, Zero)))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PMIO) } If (LAnd (LNot (LEqual (Local1, Ones)), LNot (LEqual (Local1, Zero)))) { If (LAnd (Local4, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), PMDM) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), PMDM) } } If (LAnd (LNot (LEqual (Local2, Ones)), LNot (LEqual (Local2, Zero)))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PSIO) } If (LAnd (LNot (LEqual (Local3, Ones)), LNot (LEqual (Local3, Zero)))) { If (LAnd (Local4, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), PSDM) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), PSDM) } } Store (Local4, MODP) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PMIO, PIOM) Or (PIOM, 0x08, PIOM) Store (PMDM, DMAM) If (LAnd (MODP, One)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PSIO, PIOM) Or (PIOM, 0x08, PIOM) Store (PSDM, DMAM) If (LAnd (MODP, 0x04)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } Device (SDE1) { Name (_ADR, One) Method (_GTM, 0, NotSerialized) { Store (DerefOf (Index (PIOT, SMIO)), Local0) Store (DerefOf (Index (PIOT, SSIO)), Local2) Store (0x1A, Local4) If (LAnd (MODS, One)) { Store (DerefOf (Index (UDMA, SMDM)), Local1) If (LGreater (SMDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, SMDM) Store (DerefOf (Index (UDMA, SMDM)), Local1) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, SMDM) Store (DerefOf (Index (UDMA, SMDM)), Local1) } } } Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, SMDM)), Local1) } If (LAnd (MODS, 0x04)) { Store (DerefOf (Index (UDMA, SSDM)), Local3) If (LGreater (SSDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, SSDM) Store (DerefOf (Index (UDMA, SSDM)), Local3) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, SSDM) Store (DerefOf (Index (UDMA, SSDM)), Local3) } } } Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, SSDM)), Local3) } Store (Local0, GTM0) Store (Local1, GTM1) Store (Local2, GTM2) Store (Local3, GTM3) Store (Local4, GTM4) Return (IDEB) } Method (_STM, 3, NotSerialized) { Store (Arg0, IDEB) Store (GTM0, Local0) Store (GTM1, Local1) Store (GTM2, Local2) Store (GTM3, Local3) Store (GTM4, Local4) If (LAnd (LNot (LEqual (Local0, Ones)), LNot (LEqual (Local0, Zero)))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), SMIO) } If (LAnd (LNot (LEqual (Local1, Ones)), LNot (LEqual (Local1, Zero)))) { If (LAnd (Local4, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), SMDM) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), SMDM) } } If (LAnd (LNot (LEqual (Local2, Ones)), LNot (LEqual (Local2, Zero)))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), SSIO) } If (LAnd (LNot (LEqual (Local3, Ones)), LNot (LEqual (Local3, Zero)))) { If (LAnd (Local4, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), SSDM) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), SSDM) } } Store (Local4, MODS) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (SMIO, PIOM) Or (PIOM, 0x08, PIOM) Store (SMDM, DMAM) If (LAnd (MODS, One)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (SSIO, PIOM) Or (PIOM, 0x08, PIOM) Store (SSDM, DMAM) If (LAnd (MODS, 0x04)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } } Device (JMF1) { Name (_ADR, One) Name (PIOT, Package (0x05) { 0x0258, 0x0186, 0x014A, 0xB4, 0x78 }) Name (UDMA, Package (0x07) { 0x78, 0x50, 0x3C, 0x28, 0x1E, 0x14, 0x0F }) Name (MDMA, Package (0x03) { 0x01E0, 0x96, 0x78 }) OperationRegion (CF40, PCI_Config, 0x40, 0x04) Field (CF40, ByteAcc, NoLock, Preserve) { , 3, CAB0, 1, , 18, SWAP, 1, CHN0, 1, Offset (0x04) } OperationRegion (CF80, PCI_Config, 0x80, 0x04) Field (CF80, ByteAcc, NoLock, Preserve) { , 19, CAB1, 1, Offset (0x03), CHN1, 1, Offset (0x04) } Name (IDEB, Buffer (0x14) {}) CreateDWordField (IDEB, Zero, GTM0) CreateDWordField (IDEB, 0x04, GTM1) CreateDWordField (IDEB, 0x08, GTM2) CreateDWordField (IDEB, 0x0C, GTM3) CreateDWordField (IDEB, 0x10, GTM4) Name (PMIO, 0x04) Name (PMDM, 0x06) Name (PSIO, 0x04) Name (PSDM, 0x06) Name (SMIO, 0x04) Name (SMDM, 0x06) Name (SSIO, 0x04) Name (SSDM, 0x06) Name (MODP, 0x05) Name (MODS, 0x05) Device (SDE0) { Name (_ADR, Zero) Method (_GTM, 0, NotSerialized) { Store (DerefOf (Index (PIOT, PMIO)), Local0) Store (DerefOf (Index (PIOT, PSIO)), Local2) Store (0x1A, Local4) If (LAnd (MODP, One)) { Store (DerefOf (Index (UDMA, PMDM)), Local1) If (LGreater (PMDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, PMDM) Store (DerefOf (Index (UDMA, PMDM)), Local1) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, PMDM) Store (DerefOf (Index (UDMA, PMDM)), Local1) } } } Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, PMDM)), Local1) } If (LAnd (MODP, 0x04)) { Store (DerefOf (Index (UDMA, PSDM)), Local3) If (LGreater (PSDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, PSDM) Store (DerefOf (Index (UDMA, PSDM)), Local3) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, PSDM) Store (DerefOf (Index (UDMA, PSDM)), Local3) } } } Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, PSDM)), Local3) } Store (Local0, GTM0) Store (Local1, GTM1) Store (Local2, GTM2) Store (Local3, GTM3) Store (Local4, GTM4) Return (IDEB) } Method (_STM, 3, NotSerialized) { Store (Arg0, IDEB) Store (GTM0, Local0) Store (GTM1, Local1) Store (GTM2, Local2) Store (GTM3, Local3) Store (GTM4, Local4) If (LAnd (LNot (LEqual (Local0, Ones)), LNot (LEqual (Local0, Zero)))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PMIO) } If (LAnd (LNot (LEqual (Local1, Ones)), LNot (LEqual (Local1, Zero)))) { If (LAnd (Local4, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), PMDM) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), PMDM) } } If (LAnd (LNot (LEqual (Local2, Ones)), LNot (LEqual (Local2, Zero)))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PSIO) } If (LAnd (LNot (LEqual (Local3, Ones)), LNot (LEqual (Local3, Zero)))) { If (LAnd (Local4, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), PSDM) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), PSDM) } } Store (Local4, MODP) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PMIO, PIOM) Or (PIOM, 0x08, PIOM) Store (PMDM, DMAM) If (LAnd (MODP, One)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (PSIO, PIOM) Or (PIOM, 0x08, PIOM) Store (PSDM, DMAM) If (LAnd (MODP, 0x04)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } Device (SDE1) { Name (_ADR, One) Method (_GTM, 0, NotSerialized) { Store (DerefOf (Index (PIOT, SMIO)), Local0) Store (DerefOf (Index (PIOT, SSIO)), Local2) Store (0x1A, Local4) If (LAnd (MODS, One)) { Store (DerefOf (Index (UDMA, SMDM)), Local1) If (LGreater (SMDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, SMDM) Store (DerefOf (Index (UDMA, SMDM)), Local1) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, SMDM) Store (DerefOf (Index (UDMA, SMDM)), Local1) } } } Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, SMDM)), Local1) } If (LAnd (MODS, 0x04)) { Store (DerefOf (Index (UDMA, SSDM)), Local3) If (LGreater (SSDM, 0x02)) { If (LAnd (LNot (LEqual (SWAP, One)), LEqual (CHN0, One))) { If (CAB0) { Store (0x02, SSDM) Store (DerefOf (Index (UDMA, SSDM)), Local3) } } If (LAnd (LEqual (SWAP, One), LEqual (CHN1, One))) { If (CAB1) { Store (0x02, SSDM) Store (DerefOf (Index (UDMA, SSDM)), Local3) } } } Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, SSDM)), Local3) } Store (Local0, GTM0) Store (Local1, GTM1) Store (Local2, GTM2) Store (Local3, GTM3) Store (Local4, GTM4) Return (IDEB) } Method (_STM, 3, NotSerialized) { Store (Arg0, IDEB) Store (GTM0, Local0) Store (GTM1, Local1) Store (GTM2, Local2) Store (GTM3, Local3) Store (GTM4, Local4) If (LAnd (LNot (LEqual (Local0, Ones)), LNot (LEqual (Local0, Zero)))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), SMIO) } If (LAnd (LNot (LEqual (Local1, Ones)), LNot (LEqual (Local1, Zero)))) { If (LAnd (Local4, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), SMDM) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), SMDM) } } If (LAnd (LNot (LEqual (Local2, Ones)), LNot (LEqual (Local2, Zero)))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), SSIO) } If (LAnd (LNot (LEqual (Local3, Ones)), LNot (LEqual (Local3, Zero)))) { If (LAnd (Local4, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), SSDM) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), SSDM) } } Store (Local4, MODS) } Device (DRV0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (SMIO, PIOM) Or (PIOM, 0x08, PIOM) Store (SMDM, DMAM) If (LAnd (MODS, One)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } Device (DRV1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local0) Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local1) CreateByteField (Local0, One, PIOM) CreateByteField (Local1, One, DMAM) Store (SSIO, PIOM) Or (PIOM, 0x08, PIOM) Store (SSDM, DMAM) If (LAnd (MODS, 0x04)) { Or (DMAM, 0x40, DMAM) } Else { Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } } } Device (P0P9) { Name (_ADR, 0x001C0005) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR09) } Return (PR09) } } Device (USB0) { Name (_ADR, 0x001D0000) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x03, 0x04)) } } Device (USB1) { Name (_ADR, 0x001D0001) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x04, 0x04)) } } Device (USB2) { Name (_ADR, 0x001D0002) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0C, 0x04)) } } Device (USB3) { Name (_ADR, 0x001D0003) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0E, 0x04)) } } Device (USB4) { Name (_ADR, 0x001A0000) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0E, 0x04)) } } Device (USB5) { Name (_ADR, 0x001A0001) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02))) { Return (0x02) } Else { Return (0x03) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x05, 0x04)) } } Device (P0P4) { Name (_ADR, 0x001C0000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR04) } Return (PR04) } } } Scope (\_GPE) { Method (_L09, 0, NotSerialized) { Notify (\_SB.PCI0.P0P2, 0x02) Notify (\_SB.PCI0.P0P5, 0x02) Notify (\_SB.PCI0.P0P6, 0x02) Notify (\_SB.PCI0.P0P7, 0x02) Notify (\_SB.PCI0.P0P8, 0x02) Notify (\_SB.PCI0.P0P9, 0x02) Notify (\_SB.PCI0.P0P4, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L0B, 0, NotSerialized) { Notify (\_SB.PCI0.P0P1, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L08, 0, NotSerialized) { \_SB.PCI0.SBRG.SIOH () } Method (_L1F, 0, NotSerialized) { \_SB.PCI0.SBRG.SIOH () } Method (_L1D, 0, NotSerialized) { \_SB.PCI0.SBRG.SIOH () } Method (_L0D, 0, NotSerialized) { Notify (\_SB.PCI0.EUSB, 0x02) Notify (\_SB.PCI0.USBE, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L03, 0, NotSerialized) { Notify (\_SB.PCI0.USB0, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L04, 0, NotSerialized) { Notify (\_SB.PCI0.USB1, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L0C, 0, NotSerialized) { Notify (\_SB.PCI0.USB2, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L0E, 0, NotSerialized) { Notify (\_SB.PCI0.USB3, 0x02) Notify (\_SB.PCI0.USB4, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L05, 0, NotSerialized) { Notify (\_SB.PCI0.USB5, 0x02) Notify (\_SB.PWRB, 0x02) } } Device (PWRB) { Name (_HID, EisaId ("PNP0C0C")) Name (_UID, 0xAA) Name (_STA, 0x0B) } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G0T0, Package (0x07) { 0x00060000, "AP version", 0x40000000, Zero, Zero, One, 0x02 }) Name (G0T1, Package (0x07) { 0x00060001, "Feature flag", 0x40000000, Zero, Zero, One, 0x04 }) Name (GRP0, Package (0x02) { G0T0, G0T1 }) Method (GIT0, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { Store (Zero, ASB1) } Else { If (LEqual (_T_0, One)) { Store (One, ASB1) } Else { Store (Zero, ASB0) } } } Method (SIT0, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { Store (0x0300, DBG8) } Else { If (LEqual (_T_0, One)) { Store (0x0301, DBG8) } Else { Store (Zero, ASB0) } } } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G3T0, Package (0x07) { 0x03010011, "CPU frequency", Zero, Zero, 0x2710, 0x64, 0x012D }) Name (G3T2, Package (0x07) { 0x03060013, "CPU ratio", Zero, Zero, 0x06, One, 0x14 }) Name (G321, Package (0x09) { 0x03820032, "DRAM voltage", Zero, Zero, 0x0708, 0x32, 0x0D, One, "Auto" }) Name (G322, Package (0x0C) { 0x03080031, "DRAM frequency", Zero, Zero, 0x07, "Auto", Zero, "533 MHz", "667 MHz", "800 MHz", "889 MHz", "1067 MHz" }) Name (G340, Package (0x09) { 0x03810051, "PCI Express frequency", Zero, Zero, 0x2328, 0x64, 0x3D, One, "Auto" }) Name (GRP3, Package (0x05) { G3T0, G3T2, G321, G322, G340 }) Method (GIT3, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, 0x11)) { Subtract (GNVS (0x02C0), 0x64, ASB1) } Else { If (LEqual (_T_0, 0x13)) { Subtract (GNVS (0x8298), 0x06, ASB1) } Else { If (LEqual (_T_0, 0x32)) { Store (GNVS (0x4438), ASB1) } Else { If (LEqual (_T_0, 0x31)) { Store (GNVS (0x3480), ASB1) } Else { If (LEqual (_T_0, 0x51)) { Store (GNVS (0x62D0), ASB1) } Else { Store (Zero, ASB0) } } } } } } Method (SIT3, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, 0x11)) { Add (Arg1, 0x64, Local2) If (LNot (LEqual (GNVS (0x02C0), Local2))) { CreateByteField (CLKR, 0x04, CB04) CreateWordField (CLKR, 0x0E, CBMN) Store (RBLK (0xD2, Zero, 0x13), CLKR) Multiply (Arg1, 0x03, Local0) CreateByteField (MNBF, Local0, MN04) CreateWordField (MNBF, Increment (Local0), MNVL) If (LEqual (CB04, MN04)) { If (And (Arg2, One)) { Store (MNVL, CBMN) WBLK (0xD2, Zero, 0x13, CLKR) } } Else { Or (ASB0, 0x02, ASB0) } If (And (Arg2, One)) { SNVS (0x02C0, Local2) } } } Else { If (LEqual (_T_0, 0x13)) { If (LNot (LEqual (GNVS (0x8298), Add (Arg1, 0x06, Arg1)))) { If (And (Arg2, One)) { SNVS (0x8298, Arg1) } Or (ASB0, 0x02, ASB0) } } Else { If (LEqual (_T_0, 0x32)) { If (LNot (LEqual (GNVS (0x4438), Arg1))) { If (LEqual (Arg1, Zero)) { Or (ASB0, 0x02, ASB0) } Else { If (And (Arg2, One)) { ENFG (0x0A) And (CRE5, 0xE1, Local1) ShiftLeft (Subtract (Arg1, One), One, Local2) Or (Local1, Local2, CRE5) EXFG () } } If (And (Arg2, One)) { SNVS (0x4438, Arg1) } } } Else { If (LEqual (_T_0, 0x31)) { If (LNot (LEqual (GNVS (0x3480), Arg1))) { If (And (Arg2, One)) { SNVS (0x3480, Arg1) } Or (ASB0, 0x02, ASB0) } } Else { If (LEqual (_T_0, 0x51)) { If (LNot (LEqual (GNVS (0x62D0), Arg1))) { CreateByteField (CLKR, 0x10, CB16) Store (RBLK (0xD2, Zero, 0x13), CLKR) CreateByteField (PCEF, Arg1, PC16) If (LEqual (CB16, PC16)) { If (And (Arg2, One)) { Store (PC16, CB16) WBLK (0xD2, Zero, 0x13, CLKR) SNVS (0x62D0, Arg1) } } } } Else { Store (Zero, ASB0) } } } } } } Name (CLKR, 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 (PCEF, Buffer (0x3E) { 0xC8, 0xB4, 0xB6, 0xB8, 0xBA, 0xBC, 0xBE, 0xC0, 0xC2, 0xC4, 0xC6, 0xC8, 0xCA, 0xCC, 0xCE, 0xD0, 0xD2, 0xD4, 0xD6, 0xD8, 0xDA, 0xDC, 0xDE, 0xE0, 0xE2, 0xE4, 0xE6, 0xE8, 0xEA, 0xEC, 0xEE, 0xF0, 0xF2, 0xF4, 0xF6, 0xF8, 0xFA, 0xFC, 0xFE, 0x00, 0x02, 0x04, 0x06, 0x08, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96 }) Name (MNBF, Buffer (0x0387) { 0x05, 0xC8, 0x3C, 0x05, 0xCA, 0x3C, 0x05, 0xCC, 0x3C, 0x05, 0xCE, 0x3C, 0x05, 0xD0, 0x3C, 0x05, 0xD2, 0x3C, 0x05, 0xD4, 0x3C, 0x05, 0xD6, 0x3C, 0x05, 0xD8, 0x3C, 0x05, 0xDA, 0x3C, 0x05, 0xDC, 0x3C, 0x05, 0xDE, 0x3C, 0x05, 0xE0, 0x3C, 0x05, 0xE2, 0x3C, 0x05, 0xE4, 0x3C, 0x05, 0xE6, 0x3C, 0x05, 0xE8, 0x3C, 0x05, 0xEA, 0x3C, 0x05, 0xEC, 0x3C, 0x05, 0xEE, 0x3C, 0x05, 0xF0, 0x3C, 0x05, 0xF2, 0x3C, 0x05, 0xF4, 0x3C, 0x05, 0xF6, 0x3C, 0x05, 0xF8, 0x3C, 0x05, 0xFA, 0x3C, 0x05, 0xFC, 0x3C, 0x05, 0xFE, 0x3C, 0x05, 0x00, 0xBC, 0x05, 0x02, 0xBC, 0x05, 0x04, 0xBC, 0x05, 0x06, 0xBC, 0x05, 0x08, 0xBC, 0x03, 0x8A, 0x3E, 0x03, 0x70, 0x32, 0x03, 0x9E, 0x46, 0x03, 0x7D, 0x37, 0x03, 0x8D, 0x3E, 0x03, 0x8A, 0x3C, 0x03, 0x8B, 0x3C, 0x03, 0x90, 0x3E, 0x03, 0x8D, 0x3C, 0x03, 0x8E, 0x3C, 0x03, 0x93, 0x3E, 0x03, 0x90, 0x3C, 0x03, 0x91, 0x3C, 0x03, 0x92, 0x3C, 0x03, 0x97, 0x3E, 0x03, 0x94, 0x3C, 0x03, 0x95, 0x3C, 0x03, 0x96, 0x3C, 0x03, 0x97, 0x3C, 0x03, 0x98, 0x3C, 0x03, 0x9E, 0x3E, 0x03, 0x9A, 0x3C, 0x03, 0x9B, 0x3C, 0x03, 0x9C, 0x3C, 0x03, 0x9D, 0x3C, 0x03, 0x9E, 0x3C, 0x03, 0x9F, 0x3C, 0x03, 0xA5, 0x3E, 0x03, 0xA1, 0x3C, 0x03, 0xA2, 0x3C, 0x03, 0xA3, 0x3C, 0x03, 0xA4, 0x3C, 0x03, 0xA5, 0x3C, 0x03, 0xA6, 0x3C, 0x03, 0xA7, 0x3C, 0x03, 0xA8, 0x3C, 0x03, 0xA9, 0x3C, 0x03, 0xAA, 0x3C, 0x03, 0xAB, 0x3C, 0x03, 0xAC, 0x3C, 0x03, 0xAD, 0x3C, 0x03, 0xAE, 0x3C, 0x03, 0xAF, 0x3C, 0x03, 0xB0, 0x3C, 0x03, 0xB1, 0x3C, 0x03, 0xB2, 0x3C, 0x03, 0xB3, 0x3C, 0x03, 0xB4, 0x3C, 0x03, 0xB5, 0x3C, 0x03, 0xB6, 0x3C, 0x03, 0xB7, 0x3C, 0x03, 0xB8, 0x3C, 0x03, 0xB9, 0x3C, 0x03, 0xBA, 0x3C, 0x03, 0xBB, 0x3C, 0x03, 0xBC, 0x3C, 0x03, 0xBD, 0x3C, 0x03, 0xBE, 0x3C, 0x03, 0xBF, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC1, 0x3C, 0x03, 0xC2, 0x3C, 0x03, 0xC3, 0x3C, 0x03, 0xC4, 0x3C, 0x03, 0xC5, 0x3C, 0x03, 0xC6, 0x3C, 0x03, 0xC7, 0x3C, 0x02, 0xD6, 0x40, 0x02, 0xA8, 0x32, 0x02, 0xB3, 0x35, 0x02, 0xBE, 0x38, 0x02, 0xBF, 0x38, 0x02, 0xCD, 0x3C, 0x02, 0xDB, 0x40, 0x02, 0xCF, 0x3C, 0x02, 0xD0, 0x3C, 0x02, 0xD1, 0x3C, 0x02, 0xE0, 0x40, 0x02, 0xD3, 0x3C, 0x02, 0xD4, 0x3C, 0x02, 0xD5, 0x3C, 0x02, 0xE4, 0x40, 0x02, 0xD7, 0x3C, 0x02, 0xD8, 0x3C, 0x02, 0xD9, 0x3C, 0x02, 0xDA, 0x3C, 0x02, 0xDB, 0x3C, 0x02, 0xEA, 0x40, 0x02, 0xDD, 0x3C, 0x02, 0xDE, 0x3C, 0x02, 0xDF, 0x3C, 0x02, 0xE0, 0x3C, 0x02, 0xE1, 0x3C, 0x02, 0xE2, 0x3C, 0x02, 0xE3, 0x3C, 0x02, 0xE4, 0x3C, 0x02, 0xE5, 0x3C, 0x02, 0xF5, 0x40, 0x02, 0xE7, 0x3C, 0x02, 0xE8, 0x3C, 0x02, 0xE9, 0x3C, 0x02, 0xEA, 0x3C, 0x02, 0xEB, 0x3C, 0x02, 0xEC, 0x3C, 0x02, 0xED, 0x3C, 0x02, 0xEE, 0x3C, 0x02, 0xEF, 0x3C, 0x02, 0xFF, 0x40, 0x02, 0xF1, 0x3C, 0x02, 0xF2, 0x3C, 0x02, 0xF3, 0x3C, 0x02, 0xF4, 0x3C, 0x02, 0xF5, 0x3C, 0x02, 0xF6, 0x3C, 0x02, 0xF7, 0x3C, 0x02, 0xF8, 0x3C, 0x02, 0xF9, 0x3C, 0x02, 0xFA, 0x3C, 0x02, 0xFB, 0x3C, 0x02, 0xFC, 0x3C, 0x02, 0xFD, 0x3C, 0x02, 0xFE, 0x3C, 0x02, 0xFF, 0x3C, 0x02, 0x00, 0xBC, 0x02, 0x01, 0xBC, 0x02, 0x02, 0xBC, 0x02, 0x03, 0xBC, 0x02, 0x82, 0x1E, 0x02, 0x05, 0xBC, 0x02, 0x06, 0xBC, 0x02, 0x07, 0xBC, 0x02, 0x08, 0xBC, 0x02, 0x09, 0xBC, 0x00, 0xAA, 0x33, 0x00, 0xE7, 0x45, 0x00, 0xA8, 0x32, 0x00, 0xAC, 0x33, 0x00, 0xB0, 0x34, 0x00, 0x69, 0x1F, 0x00, 0x44, 0x14, 0x00, 0x74, 0x22, 0x00, 0xAE, 0x33, 0x00, 0x6E, 0x20, 0x00, 0x45, 0x14, 0x00, 0x5A, 0x1A, 0x00, 0x49, 0x15, 0x00, 0x81, 0x25, 0x00, 0x46, 0x14, 0x00, 0xB3, 0x33, 0x00, 0x4A, 0x15, 0x00, 0x5C, 0x1A, 0x00, 0x47, 0x14, 0x00, 0x72, 0x20, 0x00, 0xB6, 0x33, 0x00, 0x7A, 0x22, 0x00, 0x48, 0x14, 0x00, 0x70, 0x1F, 0x00, 0x57, 0x18, 0x00, 0x50, 0x16, 0x00, 0x49, 0x14, 0x00, 0xE3, 0x3E, 0x00, 0xBB, 0x33, 0x00, 0x76, 0x20, 0x00, 0x4A, 0x14, 0x00, 0xC1, 0x34, 0x00, 0x6C, 0x1D, 0x00, 0x47, 0x13, 0x00, 0x4B, 0x14, 0x00, 0x4F, 0x15, 0x00, 0x75, 0x1F, 0x00, 0x7D, 0x21, 0x00, 0x4C, 0x14, 0x00, 0x7A, 0x20, 0x00, 0xC3, 0x33, 0x00, 0x77, 0x1F, 0x00, 0x4D, 0x14, 0x00, 0x55, 0x16, 0x00, 0x5D, 0x18, 0x00, 0xAB, 0x2C, 0x00, 0x4E, 0x14, 0x00, 0x5A, 0x17, 0x00, 0x6A, 0x1B, 0x00, 0x7E, 0x20, 0x00, 0x4F, 0x14, 0x00, 0x67, 0x1A, 0x00, 0x9B, 0x27, 0x00, 0xF7, 0x3E, 0x00, 0xCC, 0x33, 0x04, 0xC6, 0x4A, 0x04, 0xA1, 0x3C, 0x04, 0x8C, 0x34, 0x04, 0x87, 0x32, 0x04, 0x95, 0x37, 0x04, 0x90, 0x35, 0x04, 0x8B, 0x33, 0x04, 0xA4, 0x3C, 0x04, 0x9F, 0x3A, 0x04, 0x8F, 0x34, 0x04, 0xA0, 0x3A, 0x04, 0xA6, 0x3C, 0x04, 0x56, 0x1F, 0x04, 0x40, 0x17, 0x04, 0x43, 0x18, 0x04, 0x38, 0x14, 0x04, 0x49, 0x1A, 0x04, 0x8A, 0x31, 0x04, 0x71, 0x28, 0x04, 0x44, 0x18, 0x04, 0x6C, 0x26, 0x04, 0x39, 0x14, 0x04, 0xCB, 0x47, 0x04, 0x56, 0x1E, 0x04, 0x45, 0x18, 0x04, 0x7C, 0x2B, 0x04, 0x6B, 0x25, 0x04, 0x3A, 0x14, 0x04, 0x40, 0x16, 0x04, 0x46, 0x18, 0x04, 0x75, 0x28, 0x04, 0x58, 0x1E, 0x04, 0x64, 0x22, 0x04, 0x3B, 0x14, 0x04, 0x47, 0x18, 0x04, 0x59, 0x1E, 0x04, 0x74, 0x27, 0x04, 0xAD, 0x3A, 0x04, 0xEF, 0x50, 0x04, 0x3C, 0x14, 0x04, 0xF1, 0x50, 0x04, 0xAF, 0x3A, 0x04, 0x76, 0x27, 0x04, 0x5B, 0x1E, 0x04, 0x49, 0x18, 0x04, 0x3D, 0x14, 0x04, 0x68, 0x22, 0x04, 0x5C, 0x1E, 0x04, 0x7B, 0x28, 0x04, 0x4A, 0x18, 0x04, 0x44, 0x16, 0x04, 0x3E, 0x14, 0x04, 0x73, 0x25, 0x04, 0x86, 0x2B, 0x04, 0x4B, 0x18, 0x04, 0x5E, 0x1E, 0x04, 0xDF, 0x47, 0x04, 0x3F, 0x14, 0x04, 0x78, 0x26, 0x04, 0x4C, 0x18, 0x04, 0x7F, 0x28, 0x04, 0x9C, 0x31, 0x04, 0x53, 0x1A, 0x04, 0x40, 0x14, 0x04, 0x4D, 0x18, 0x04, 0x4A, 0x17, 0x04, 0x64, 0x1F, 0x04, 0x61, 0x1E, 0x04, 0x5E, 0x1D, 0x04, 0x41, 0x14, 0x04, 0x65, 0x1F, 0x04, 0x62, 0x1E, 0x04, 0x83, 0x28, 0x04, 0x97, 0x2E, 0x04, 0x4F, 0x18, 0x04, 0x42, 0x14, 0x04, 0x56, 0x1A, 0x04, 0x88, 0x29, 0x04, 0x7B, 0x25, 0x04, 0x46, 0x15 }) } Scope (_SB.PCI0.SBRG.ASOC) { Name (OC01, Package (0x06) { 0x01010000, "CPU FSB", 0x2710, 0x9C40, 0x012D, 0x00010003 }) Name (OT00, Package (0x04) { 0x01010000, 0x2710, Zero, One }) Name (OC02, Package (0x06) { 0x01060001, "CPU Multiplier", 0x08, 0x18, 0x11, 0x00010003 }) Name (CPUM, Package (0x04) { 0x01060001, 0x0A, Zero, Zero }) Name (OC03, Package (0x06) { 0x02010002, "Memory Freq", Zero, Zero, 0x07, 0x00010000 }) Name (MEMO, Package (0x0B) { 0x02010002, 0xD034, Zero, One, "Auto", "RESERVE", "533 MHz", "667 MHz", "800 MHz", "889 MHz", "1067 MHz" }) Name (OC04, Package (0x06) { 0x07010003, "PCI Express", 0x2328, 0x3A98, 0x3D, 0x00010000 }) Name (PCIO, Package (0x04) { 0x07010003, 0x2328, Zero, One }) Name (OC0A, Package (0x06) { 0x0202000F, "DRAM Voltage", 0x0708, 0x0992, 0x0E, 0x0001000F }) Name (RAMV, Package (0x13) { 0x0202000F, 0x0708, 0x02, One, "Auto", "1.80V", "1.85V", "1.90V", "1.95V", "2.00V", "2.05V", "2.10V", "2.15V", "2.20V", "2.25V", "2.30V", "2.35V", "2.40V", "2.45V" }) Name (OC0D, Package (0x06) { 0x0906000C, "AI Overclock Tuner", Zero, 0x04, 0x05, 0x00010003 }) Name (AITM, Package (0x09) { 0x0906000C, Zero, One, One, "Manual", "Auto", "Standard", "", "AI N.O.S." }) Name (OC0E, Package (0x06) { 0x0806000D, "NOS Mode", Zero, One, 0x02, 0x00010003 }) Name (NOSM, Package (0x06) { 0x0806000D, Zero, Zero, One, "Auto", "Manual" }) Name (OC06, Package (0x06) { 0x08050005, "Turbo NOS", 0x67, 0x78, 0x07, 0x00010003 }) Name (AOC2, Package (0x0B) { 0x08050005, 0x64, Zero, One, "", "103%", "105%", "107%", "110%", "115%", "120%" }) Name (OC0F, Package (0x06) { 0x0806000E, "Sensitivity", Zero, 0x03, 0x04, 0x00010003 }) Name (SENS, Package (0x07) { 0x0806000E, Zero, Zero, One, "Standard", "Sensitive", "Heavy load" }) Name (EPTY, Package (0x04) { 0x12345678, 0x06, 0x06, Zero }) Name (OBUF, Package (0x09) { OC01, OC02, OC03, OC04, OC06, OC0A, OC0D, OC0E, OC0F }) Method (ASIF, 0, NotSerialized) { Return (MBIF) } Method (OCIF, 0, NotSerialized) { Return (OBUF) } Method (GPRE, 1, NotSerialized) { If (Arg0) { OCOP (0x01010000) Store (ASB1, Index (PREB, One)) OCOP (0x01060001) Store (ASB1, Index (PREB, 0x03)) OCOP (0x02010002) Store (ASB1, Index (PREB, 0x05)) OCOP (0x07010003) Store (ASB1, Index (PREB, 0x07)) OCOP (0x0202000F) Store (ASB1, Index (PREB, 0x09)) OCOP (0x0906000C) Store (ASB1, Index (PREB, 0x0B)) OCOP (0x0806000D) Store (ASB1, Index (PREB, 0x0D)) OCOP (0x0806000E) Store (ASB1, Index (PREB, 0x0F)) OCOP (0x08050005) Store (ASB1, Index (PREB, 0x11)) } Else { Store (DerefOf (Index (G3T0, 0x03)), Index (PREB, One)) Store (DerefOf (Index (G3T2, 0x03)), Index (PREB, 0x03)) Store (DerefOf (Index (G322, 0x03)), Index (PREB, 0x05)) Store (DerefOf (Index (G340, 0x03)), Index (PREB, 0x07)) Store (DerefOf (Index (G321, 0x03)), Index (PREB, 0x09)) Store (DerefOf (Index (G9T0, 0x03)), Index (PREB, 0x0B)) Store (Zero, Index (PREB, 0x0D)) Store (DerefOf (Index (G8T1, 0x03)), Index (PREB, 0x0F)) Store (DerefOf (Index (G8T2, 0x03)), Index (PREB, 0x11)) } Return (PREB) } Name (PREB, Package (0x12) { 0x01010000, Zero, 0x01060001, Zero, 0x02010002, Zero, 0x07010003, Zero, 0x0202000F, Zero, 0x0906000C, Zero, 0x0806000D, Zero, 0x08050005, Zero, 0x0806000E, Zero }) Method (OCOP, 1, NotSerialized) { Store (One, ASB0) Name (_T_0, Zero) Store (Arg0, _T_0) If (LEqual (_T_0, 0x01010000)) { GIT3 (0x03010011) Store (ASB1, Index (OT00, One)) Store (ASB1, Index (OT00, 0x02)) Return (OT00) } Else { If (LEqual (_T_0, 0x01060001)) { GIT3 (0x03060013) Store (ASB1, Index (CPUM, One)) Return (CPUM) } Else { If (LEqual (_T_0, 0x02010002)) { GIT3 (0x03080031) Store (ASB1, Index (MEMO, 0x02)) Return (MEMO) } Else { If (LEqual (_T_0, 0x07010003)) { GIT3 (0x03810051) Store (ASB1, Index (PCIO, 0x02)) Return (PCIO) } Else { If (LEqual (_T_0, 0x0202000F)) { GIT3 (0x03820032) Store (ASB1, Index (RAMV, 0x02)) Return (RAMV) } Else { If (LEqual (_T_0, 0x0906000C)) { GIT9 (0x09080000) Store (ASB1, Index (AITM, 0x02)) Return (AITM) } Else { If (LEqual (_T_0, 0x0806000D)) { GIT8 (0x08080001) If (LGreater (ASB1, Zero)) { Store (One, ASB1) } Else { Store (Zero, ASB1) } Store (ASB1, Index (NOSM, 0x02)) Return (NOSM) } Else { If (LEqual (_T_0, 0x0806000E)) { GIT8 (0x08080001) If (LGreater (ASB1, Zero)) { Decrement (ASB1) } Store (ASB1, Index (SENS, 0x02)) Return (SENS) } Else { If (LEqual (_T_0, 0x08050005)) { GIT8 (0x08080002) Store (ASB1, Index (AOC2, 0x02)) Return (AOC2) } Else { Store (Zero, ASB0) } } } } } } } } } Return (EPTY) } Name (NOSF, Zero) Method (PROC, 3, NotSerialized) { Store (One, ASB0) ShiftRight (Arg0, 0x10, Local0) Name (_T_0, Zero) Store (Arg0, _T_0) If (LEqual (_T_0, 0x01010000)) { SIT3 (0x03010011, Arg1, Arg2) } Else { If (LEqual (_T_0, 0x01060001)) { SIT3 (0x03060013, Arg1, Arg2) } Else { If (LEqual (_T_0, 0x02010002)) { SIT3 (0x03080031, Arg1, Arg2) } Else { If (LEqual (_T_0, 0x07010003)) { SIT3 (0x03810051, Arg1, Arg2) } Else { If (LEqual (_T_0, 0x0202000F)) { Or (Arg1, ShiftLeft (Arg2, 0x08), Local0) Store (Local0, DBGX) SIT3 (0x03820032, Arg1, Arg2) } Else { If (LEqual (_T_0, 0x0906000C)) { SIT9 (0x09080000, Arg1, Arg2) } Else { If (LEqual (_T_0, 0x0806000D)) { If (LEqual (Arg1, Zero)) { SIT8 (0x08080001, Zero, Arg2) Store (Zero, NOSF) } Else { Store (One, NOSF) } } Else { If (LEqual (_T_0, 0x0806000E)) { If (NOSF) { Add (Arg1, One, Local0) SIT8 (0x08080001, Local0, Arg2) } } Else { If (LEqual (_T_0, 0x08050005)) { SIT8 (0x08080002, Arg1, Arg2) } Else { Store (Zero, ASB0) } } } } } } } } } Return (ASB0) } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G4T0, Package (0x04) { 0x04060000, " ASUS Advanced Q-Fan control", 0x40000000, Zero }) Name (G4T1, Package (0x0A) { 0x04080011, " FAN profile", 0x00100001, 0x03, 0x05, "Disabled", "Performance", "Optimal", "Silent", "Ultra Silent" }) Name (G4T2, Package (0x09) { 0x04080011, " FAN profile", 0x00100001, 0x03, 0x04, "Disabled", "Performance", "Optimal", "Silent" }) Name (GR41, Package (0x02) { G4T0, G4T1 }) Name (GR42, Package (0x02) { G4T0, G4T2 }) Method (GIT4, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { Store (GNVS (0x2780), ASB1) } Else { If (LEqual (_T_0, 0x11)) { Store (GNVS (0x3510), ASB1) } Else { Store (Zero, ASB0) } } } Method (SIT4, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, 0x11)) { If (LNot (LEqual (GNVS (0x3510), Arg1))) { SNVS (0x3510, Arg1) Store (0x77, PAR0) ISMI (0x88) } } Else { Store (Zero, ASB0) } } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G5T0, Package (0x07) { 0x05080000, "AI Profile", Zero, Zero, 0x02, "AUTO", Zero }) Name (GRP5, Package (0x01) { G5T0 }) Method (GIT5, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { Store (One, ASB1) } Else { Store (Zero, ASB0) } } Method (SIT5, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { Store (0x03, ASB0) } Else { Store (Zero, ASB0) } } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G6T1, Package (0x07) { 0x06020011, "Vcore Voltage", 0x20000000, Zero, 0x0352, 0x02EE, 0x02 }) Name (G6T2, Package (0x07) { 0x06030012, "CPU Temperature", 0x20000000, Zero, 0x0258, 0x015E, 0x02 }) Name (G6T3, Package (0x07) { 0x06040013, "CPU Fan Speed", 0x20000000, Zero, 0x0320, 0x1900, 0x02 }) Name (G6T4, Package (0x07) { 0x06040073, "Chassis Fan Speed", 0x20000000, Zero, 0x0320, 0x1900, 0x02 }) Name (G6T5, Package (0x07) { 0x060400C3, "Power Fan Speed", 0x20000000, Zero, 0x0320, 0x1900, 0x02 }) Name (G6T6, Package (0x07) { 0x06020061, "+12V Voltage", 0x20000000, 0x2EE0, 0x27D8, 0x0E10, 0x02 }) Name (G6T7, Package (0x07) { 0x06020062, "+5V Voltage", 0x20000000, 0x1388, 0x1194, 0x03E8, 0x02 }) Name (G6T8, Package (0x07) { 0x06020063, "+3.3V Voltage", 0x20000000, 0x0CE4, 0x0B9A, 0x0294, 0x02 }) Name (G6T9, Package (0x07) { 0x06030074, "MB Temperature", 0x20000000, Zero, 0x01C2, 0x01F4, 0x02 }) Name (GRP6, Package (0x09) { G6T1, G6T2, G6T3, G6T4, G6T5, G6T6, G6T7, G6T8, G6T9 }) Method (GIT6, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, 0x11)) { Store (0x0600, ASB1) } Else { If (LEqual (_T_0, 0x12)) { Store (0x0601, ASB1) } Else { If (LEqual (_T_0, 0x13)) { Store (0x0602, ASB1) } Else { If (LEqual (_T_0, 0x73)) { Store (0x0603, ASB1) } Else { If (LEqual (_T_0, 0xC3)) { Store (0x0604, ASB1) } Else { If (LEqual (_T_0, 0x61)) { Store (0x0605, ASB1) } Else { If (LEqual (_T_0, 0x62)) { Store (0x0606, ASB1) } Else { If (LEqual (_T_0, 0x63)) { Store (0x0607, ASB1) } Else { If (LEqual (_T_0, 0x74)) { Store (0x0608, ASB1) } Else { Store (Zero, ASB0) } } } } } } } } } } Method (SIT6, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, 0x11)) { Store (0x0600, DBG8) } Else { If (LEqual (_T_0, 0x12)) { Store (0x0601, DBG8) } Else { If (LEqual (_T_0, 0x13)) { Store (0x0602, DBG8) } Else { If (LEqual (_T_0, 0x73)) { Store (0x0603, DBG8) } Else { If (LEqual (_T_0, 0xC3)) { Store (0x0604, DBG8) } Else { If (LEqual (_T_0, 0x61)) { Store (0x0605, DBG8) } Else { If (LEqual (_T_0, 0x62)) { Store (0x0606, DBG8) } Else { If (LEqual (_T_0, 0x63)) { Store (0x0607, DBG8) } Else { If (LEqual (_T_0, 0x74)) { Store (0x0608, DBG8) } Else { Store (Zero, ASB0) } } } } } } } } } } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G8T1, Package (0x09) { 0x08080001, "N.O.S. sensitivity", Zero, Zero, 0x04, "Auto", "Standard", "Sensitive", "Heavy load" }) Name (G8T2, Package (0x0C) { 0x08080002, "N.O.S. profile", Zero, One, 0x07, Zero, "103%", "105%", "107%", "110%", "115%", "120%" }) Name (GRP8, Package (0x02) { G8T1, G8T2 }) Name (TEMP, Zero) Method (GIT8, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, One)) { Store (GNVS (0x2564), ASB1) } Else { If (LEqual (_T_0, 0x02)) { Store (GNVS (0x34EB), ASB1) } Else { Store (Zero, ASB0) } } } Method (SIT8, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, One)) { If (LNot (LEqual (GNVS (0x2564), Arg1))) { If (And (Arg2, One)) { SNVS (0x2564, Arg1) } Or (ASB0, 0x02, ASB0) } } Else { If (LEqual (_T_0, 0x02)) { If (LNot (LEqual (GNVS (0x34EB), Arg1))) { If (And (Arg2, One)) { SNVS (0x34EB, Arg1) } Or (ASB0, 0x02, ASB0) } } Else { Store (Zero, ASB0) } } } } Scope (_SB.PCI0.SBRG.ASOC) { Name (G9T0, Package (0x0A) { 0x09080000, "AI Tunning", Zero, One, 0x05, "Manual", "Auto", "Standard", Zero, "AI N.O.S" }) Name (GRP9, Package (0x01) { G9T0 }) Method (GIT9, 1, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { Store (GNVS (0x34E3), ASB1) } Else { Store (Zero, ASB0) } } Method (SIT9, 3, NotSerialized) { Name (_T_0, Zero) Store (And (Arg0, 0xFFFF), _T_0) If (LEqual (_T_0, Zero)) { If (LNot (LEqual (GNVS (0x34E3), Arg1))) { If (And (Arg2, One)) { SNVS (0x34E3, Arg1) } Or (ASB0, 0x02, ASB0) } } Else { Store (Zero, ASB0) } } } Scope (_SB.PCI0.SBRG.ASOC) { Name (GAT1, Package (0x04) { 0x0A070001, "Music Alarm", Zero, Zero }) Name (GAT2, Package (0x04) { 0x0A070002, "Sunday", Zero, One }) Name (GAT3, Package (0x04) { 0x0A070003, "Monday", Zero, One }) Name (GAT4, Package (0x04) { 0x0A070004, "Tuesday", Zero, One }) Name (GAT5, Package (0x04) { 0x0A070005, "Wednesday", Zero, One }) Name (GAT6, Package (0x04) { 0x0A070006, "Thursday", Zero, One }) Name (GAT7, Package (0x04) { 0x0A070007, "Friday", Zero, One }) Name (GAT8, Package (0x04) { 0x0A070008, "Saturday", Zero, One }) Name (GAT9, Package (0x07) { 0x0A060009, "Alarm Hour", Zero, 0x0C, Zero, One, 0x18 }) Name (GATA, Package (0x07) { 0x0A06000A, "Alarm Mins", Zero, Zero, Zero, One, 0x3C }) Name (GATB, Package (0x0A) { 0x0A08000B, "Music Alarm Drive", Zero, 0x03, 0x05, "Primary IDE Master", "Primary IDE Slave", "Secondary IDE Master", "Secondary IDE Slave", "JMicron JMB363 IDE" }) Name (GATC, Package (0x07) { 0x0A06000C, "Starting Track", Zero, 0x10, Zero, One, 0x20 }) Name (GATD, Package (0x08) { 0x0A08000D, "Repeat", Zero, Zero, 0x03, "none", "Single", "All" }) Name (GATE, Package (0x09) { 0x0A08000E, "Length", Zero, Zero, 0x04, "10 mins", "20 mins", "30 mins", "1 hour" }) Name (GATF, Package (0x07) { 0x0A06000F, "Volume", Zero, 0x0F, Zero, One, 0x20 }) } Scope (_SB.PCI0.SBRG.ASOC) { Name (GBT0, Package (0x07) { 0x0B060001, "System performance", 0x00400000, Zero, 0x03, One, 0x04 }) Name (GRPB, Package (0x01) { GBT0 }) Name (VEAL, Zero) Method (GITB, 1, NotSerialized) { Store (VEAL, ASB1) } Method (SITB, 3, NotSerialized) { If (LEqual (And (Arg2, 0xFFFF), One)) { And (Arg1, 0xFFFF, VEAL) Store (VEAL, ASB1) Store (VEAL, PAR0) ISMI (0x88) } } } OperationRegion (_SB.PCI0.SBRG.PIX0, PCI_Config, 0x60, 0x0C) Field (\_SB.PCI0.SBRG.PIX0, ByteAcc, NoLock, Preserve) { PIRA, 8, PIRB, 8, PIRC, 8, PIRD, 8, Offset (0x08), PIRE, 8, PIRF, 8, PIRG, 8, PIRH, 8 } Scope (_SB) { Name (BUFA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {15} }) CreateWordField (BUFA, One, IRA0) Device (LNKA) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, One) Method (_STA, 0, NotSerialized) { And (PIRA, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSA) } Method (_DIS, 0, NotSerialized) { Or (PIRA, 0x80, PIRA) } Method (_CRS, 0, NotSerialized) { And (PIRA, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRA) } } Device (LNKB) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x02) Method (_STA, 0, NotSerialized) { And (PIRB, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSB) } Method (_DIS, 0, NotSerialized) { Or (PIRB, 0x80, PIRB) } Method (_CRS, 0, NotSerialized) { And (PIRB, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRB) } } Device (LNKC) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x03) Method (_STA, 0, NotSerialized) { And (PIRC, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSC) } Method (_DIS, 0, NotSerialized) { Or (PIRC, 0x80, PIRC) } Method (_CRS, 0, NotSerialized) { And (PIRC, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRC) } } Device (LNKD) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x04) Method (_STA, 0, NotSerialized) { And (PIRD, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSD) } Method (_DIS, 0, NotSerialized) { Or (PIRD, 0x80, PIRD) } Method (_CRS, 0, NotSerialized) { And (PIRD, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRD) } } Device (LNKE) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x05) Method (_STA, 0, NotSerialized) { And (PIRE, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSE) } Method (_DIS, 0, NotSerialized) { Or (PIRE, 0x80, PIRE) } Method (_CRS, 0, NotSerialized) { And (PIRE, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRE) } } Device (LNKF) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x06) Method (_STA, 0, NotSerialized) { And (PIRF, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSF) } Method (_DIS, 0, NotSerialized) { Or (PIRF, 0x80, PIRF) } Method (_CRS, 0, NotSerialized) { And (PIRF, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRF) } } Device (LNKG) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x07) Method (_STA, 0, NotSerialized) { And (PIRG, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSG) } Method (_DIS, 0, NotSerialized) { Or (PIRG, 0x80, PIRG) } Method (_CRS, 0, NotSerialized) { And (PIRG, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRG) } } Device (LNKH) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x08) Method (_STA, 0, NotSerialized) { And (PIRH, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (PRSH) } Method (_DIS, 0, NotSerialized) { Or (PIRH, 0x80, PIRH) } Method (_CRS, 0, NotSerialized) { And (PIRH, 0x0F, Local0) ShiftLeft (One, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRA) FindSetRightBit (IRA, Local0) Decrement (Local0) Store (Local0, PIRH) } } } Scope (_SB) { Name (XCPD, Zero) Name (XNPT, One) 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, One) 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, One) 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 (RDPE (Local0), Local1) If (LEqual (Local1, Ones)) { Return (Zero) } Else { If (LAnd (Local1, 0x00010000)) { WDPE (Local0, And (Local1, 0x00010000)) Return (One) } Return (Zero) } } } OperationRegion (SMRG, SystemIO, 0x0400, 0x10) Field (SMRG, ByteAcc, NoLock, Preserve) { HSTS, 8, SSTS, 8, HSTC, 8, HCMD, 8, HADR, 8, HDT0, 8, HDT1, 8, BLKD, 8 } Field (SMRG, ByteAcc, NoLock, Preserve) { Offset (0x05), HDTW, 16 } Method (SCMD, 4, Serialized) { Store (0x05, Local0) While (Decrement (Local0)) { Store (0xFFFF, Local1) While (LAnd (HSTS, Decrement (Local1))) { Store (0xFE, HSTS) Stall (0x0A) } Store (HSTC, Local2) Store (Arg0, HADR) Store (Arg1, HCMD) Store (Arg2, HDTW) Store (Arg3, HSTC) Store (0xFFFF, Local1) While (Decrement (Local1)) { If (And (HSTS, 0x0C)) { Store (One, Local1) } If (LEqual (And (HSTS, 0x03), 0x02)) { Return (HDTW) } Stall (0x0A) } Store (0x42, HSTC) Store (0xFFFF, Local1) While (Decrement (Local1)) { If (And (HSTS, 0x10)) { Store (One, Local1) } Stall (0x0A) } Store (Zero, HSTC) } Return (Ones) } Method (SBYT, 2, NotSerialized) { SCMD (Arg0, Arg1, Zero, 0x44) } Method (WBYT, 3, NotSerialized) { SCMD (Arg0, Arg1, Arg2, 0x48) } Method (WWRD, 3, NotSerialized) { SCMD (Arg0, Arg1, Arg2, 0x4C) } Method (RSBT, 2, NotSerialized) { Or (Arg0, One, Arg0) Return (And (SCMD (Arg0, Arg1, Zero, 0x44), 0xFF)) } Method (RBYT, 2, NotSerialized) { Or (Arg0, One, Arg0) Return (And (SCMD (Arg0, Arg1, Zero, 0x48), 0xFF)) } Method (RWRD, 2, NotSerialized) { Or (Arg0, One, Arg0) Return (SCMD (Arg0, Arg1, Zero, 0x4C)) } Method (RBLK, 3, NotSerialized) { Or (Arg0, One, Local0) SCMD (Local0, Arg1, Arg2, 0x54) Store (HSTC, Local0) Store (HDT0, Local0) Add (Local0, One, Local7) Name (RBUF, Buffer (Local7) {}) Store (Zero, Local1) While (Local0) { Store (BLKD, Index (RBUF, Local1)) Decrement (Local0) Increment (Local1) } Return (RBUF) } Method (WBLK, 4, NotSerialized) { Store (HSTC, Local0) Store (Zero, Local0) While (LNot (LGreater (Local0, Arg2))) { Store (DerefOf (Index (Arg3, Local0)), BLKD) Increment (Local0) } And (Arg0, 0xFE, Local0) SCMD (Local0, Arg1, Arg2, 0x54) } Name (HBAS, Zero) Name (HLBA, Zero) Name (HDEV, Zero) OperationRegion (REFP, SystemIO, 0x61, One) Field (REFP, ByteAcc, NoLock, Preserve) { P061, 8 } Method (FZHD, 0, NotSerialized) { Store (0x80, Local0) Store (DMAX, Local1) While (LNot (LGreater (Local0, Local1))) { And (Local0, 0x7F, Local3) Store (One, Local2) ShiftLeft (Local2, Local3, Local2) If (LNot (And (\_SB.PCI0.HFZF, Local2))) { If (FZOD (Local0)) { Or (\_SB.PCI0.HFZF, Local2, \_SB.PCI0.HFZF) } } Increment (Local0) } } Method (FZOD, 1, NotSerialized) { GHET (Arg0) If (LEqual (HBAS, Zero)) { Return (One) } If (LEqual (HDEV, Zero)) { Return (One) } Store (HDEV, Local1) And (Local1, 0x10, Local1) If (LEqual (Local1, Zero)) { Return (One) } WFCF () SDRV () Add (HBAS, 0x07, Local1) OperationRegion (HRGS, SystemIO, Local1, One) Field (HRGS, ByteAcc, NoLock, Preserve) { SREG, 8 } Store (SREG, Local1) And (Local1, 0x80, Local1) If (Local1) { Return (Zero) } Add (HBAS, 0x07, Local1) OperationRegion (HRGC, SystemIO, Local1, One) Field (HRGC, ByteAcc, NoLock, Preserve) { CREG, 8 } Store (0xF5, CREG) If (WFCF ()) { Add (HBAS, 0x07, Local0) Store (SREG, Local1) Return (LNot (And (Local1, One))) } Else { Return (Zero) } } OperationRegion (DBGA, SystemIO, 0x80, 0x04) Field (DBGA, DWordAcc, NoLock, Preserve) { DB32, 32 } Method (GHET, 1, NotSerialized) { And (Arg0, 0x7F, Local0) ShiftLeft (Local0, 0x05, Local0) Add (Local0, HPTA, Local0) OperationRegion (HDPT, SystemMemory, Local0, 0x20) Field (HDPT, ByteAcc, NoLock, Preserve) { HP00, 16, Offset (0x04), HP04, 8, Offset (0x12), HP0C, 8 } Store (HP00, HBAS) Store (HP04, HLBA) Store (HP0C, HDEV) } Method (SDRV, 0, NotSerialized) { Add (HBAS, 0x06, Local0) OperationRegion (HRGH, SystemIO, Local0, One) Field (HRGH, ByteAcc, NoLock, Preserve) { HREG, 8 } Store (HLBA, HREG) } Method (WFCF, 0, NotSerialized) { SDRV () Add (HBAS, One, Local0) OperationRegion (HRGE, SystemIO, Local0, One) Field (HRGE, ByteAcc, NoLock, Preserve) { EREG, 8 } Store (Zero, EREG) Add (HBAS, 0x07, Local1) OperationRegion (HRGC, SystemIO, Local1, One) Field (HRGC, ByteAcc, NoLock, Preserve) { CREG, 8 } Store (0x28, Local0) While (Local0) { And (CREG, One, Local2) If (Local2) { Return (Zero) } WFZF (Local1) And (CREG, 0x80, Local2) If (LEqual (Local2, Zero)) { Return (One) } Decrement (Local0) } Return (Zero) } Method (WFZF, 1, NotSerialized) { OperationRegion (HRGC, SystemIO, Arg0, One) Field (HRGC, ByteAcc, NoLock, Preserve) { CREG, 8 } Store (0xFFFF, Local1) Store (CREG, Local2) And (Local2, 0x80, Local2) If (LEqual (Local2, Zero)) { Return (Zero) } While (Local1) { Stall (0x0F) Decrement (Local1) If (LEqual (Local1, Zero)) { Return (Zero) } Store (CREG, Local2) And (Local2, 0x80, Local2) If (LEqual (Local2, Zero)) { Return (Zero) } Decrement (Local1) } } Scope (_SB.PCI0) { Name (HFZF, 0xFFFF) Method (HWAK, 1, NotSerialized) { If (LEqual (Arg0, 0x03)) { Store (Zero, HFZF) } } } Scope (_SB.PCI0.SBRG.SIOR) { Method (HWV0, 0, NotSerialized) { Return (Multiply (VCOR, 0x08)) } Method (HWV1, 0, NotSerialized) { Return (Multiply (V12V, 0x08)) } Method (HWV3, 0, NotSerialized) { Return (Multiply (V33V, 0x08)) } Method (HWV5, 0, NotSerialized) { Return (Multiply (V50V, 0x08)) } Method (HWT0, 0, NotSerialized) { Store (MBTE, Local1) Multiply (Local1, 0x0A, Local1) Return (Local1) } Method (HWT1, 0, NotSerialized) { Store (One, BSEL) Store (TSR1, Local1) Multiply (Local1, 0x0A, Local1) Store (TSR2, Local2) Multiply (Local2, 0x05, Local2) Add (Local1, Local2, Local1) Return (Local1) } Method (HWT2, 0, NotSerialized) { Store (0x02, BSEL) Store (TSR1, Local1) Multiply (Local1, 0x0A, Local1) Store (TSR2, Local2) Multiply (Local2, 0x05, Local2) Add (Local1, Local2, Local1) Return (Local1) } OperationRegion (DBGE, SystemIO, 0x80, 0x04) Field (DBGE, WordAcc, NoLock, Preserve) { DBGG, 22 } Method (HWF0, 0, NotSerialized) { Store (FAN1, Local0) Store (Zero, BSEL) And (FD21, 0x20, Local1) ShiftRight (Local1, 0x05, Local1) Multiply (Local1, 0x04, Local1) And (FDR1, 0x30, Local2) ShiftRight (Local2, 0x04, Local2) Add (Local1, Local2, Local1) While (LOr (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07)), LAnd (LLess (Local0, 0x64), LGreater (Local1, Zero)))) { If (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07))) { Add (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x05, Local3) Store (FD21, Local4) And (Local4, 0xDF, Local4) Or (Local3, Local4, FD21) Store (FDR1, Local4) And (Local4, 0xCF, Local4) ShiftLeft (Local2, 0x04, Local2) Or (Local4, One, Local4) Or (Local4, Local2, FDR1) Sleep (0x012C) Store (FAN1, Local0) } Else { Subtract (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x05, Local3) Store (FD21, Local4) And (Local4, 0xDF, Local4) Or (Local3, Local4, FD21) Store (FDR1, Local4) And (Local4, 0xCF, Local4) ShiftLeft (Local2, 0x04, Local2) Or (Local4, One, Local4) Or (Local4, Local2, FDR1) Sleep (0x012C) Store (FAN1, Local0) } } If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x07))) { Return (Zero) } If (LAnd (LEqual (Local0, Zero), LEqual (Local1, Zero))) { Return (0xFFFF) } Store (One, Local2) While (Local1) { Multiply (Local2, 0x02, Local2) Decrement (Local1) } Multiply (Local0, Local2, Local0) Divide (0x00149970, Local0, Local1, Local0) Return (Local0) } Method (HWF1, 0, NotSerialized) { Store (FAN2, Local0) Store (Zero, BSEL) And (FD21, 0x40, Local1) ShiftRight (Local1, 0x06, Local1) Multiply (Local1, 0x04, Local1) And (FDR1, 0xC0, Local2) ShiftRight (Local2, 0x06, Local2) Add (Local1, Local2, Local1) While (LOr (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07)), LAnd (LLess (Local0, 0x64), LGreater (Local1, Zero)))) { If (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07))) { Add (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x06, Local3) Store (FD21, Local4) And (Local4, 0xBF, Local4) Or (Local3, Local4, FD21) Store (FDR1, Local4) And (Local4, 0x3F, Local4) ShiftLeft (Local2, 0x06, Local2) Or (Local4, One, Local4) Or (Local4, Local2, FDR1) Sleep (0x012C) Store (FAN2, Local0) } Else { Subtract (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x06, Local3) Store (FD21, Local4) And (Local4, 0xBF, Local4) Or (Local3, Local4, FD21) Store (FDR1, Local4) And (Local4, 0x3F, Local4) ShiftLeft (Local2, 0x06, Local2) Or (Local4, One, Local4) Or (Local4, Local2, FDR1) Sleep (0x012C) Store (FAN2, Local0) } } If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x07))) { Return (Zero) } If (LAnd (LEqual (Local0, Zero), LEqual (Local1, Zero))) { Return (0xFFFF) } Store (One, Local2) While (Local1) { Multiply (Local2, 0x02, Local2) Decrement (Local1) } Multiply (Local0, Local2, Local0) Divide (0x00149970, Local0, Local1, Local0) Return (Local0) } Method (HWF2, 0, NotSerialized) { Store (FAN3, Local0) Store (Zero, BSEL) And (FD21, 0x80, Local1) ShiftRight (Local1, 0x07, Local1) Multiply (Local1, 0x04, Local1) Divide (FD13, 0x40, Local2, Local3) Add (Local1, Local3, Local1) While (LOr (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07)), LAnd (LLess (Local0, 0x64), LGreater (Local1, Zero)))) { If (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07))) { If (LEqual (Local0, 0xFF)) { Store (0x07, Local1) } Else { Add (Local1, One, Local1) } Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x07, Local3) Store (FD21, Local4) And (Local4, 0x7F, Local4) Or (Local3, Local4, FD21) Store (FD13, Local3) And (Local3, 0x3F, Local3) Multiply (Local2, 0x40, Local2) Add (Local3, Local2, Local2) Store (Local2, FD13) If (LNot (LEqual (Local0, 0xFF))) { Sleep (0x012C) } Store (FAN3, Local0) } Else { Subtract (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x07, Local3) Store (FD21, Local4) And (Local4, 0x7F, Local4) Or (Local3, Local4, FD21) Store (FD13, Local3) And (Local3, 0x3F, Local3) Multiply (Local2, 0x40, Local2) Add (Local3, Local2, Local2) Store (Local2, FD13) Sleep (0x012C) Store (FAN3, Local0) } } If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x07))) { Return (Zero) } If (LAnd (LEqual (Local0, Zero), LEqual (Local1, Zero))) { Return (0xFFFF) } Store (One, Local2) While (Local1) { Multiply (Local2, 0x02, Local2) Decrement (Local1) } Multiply (Local0, Local2, Local0) Divide (0x00149970, Local0, Local1, Local0) Return (Local0) } Method (HWF3, 0, NotSerialized) { Store (Zero, BSEL) Store (CFN3, Local0) And (FD15, 0x80, Local1) ShiftRight (Local1, 0x05, Local1) And (FND4, 0x03, Local2) Or (Local1, Local2, Local1) While (LOr (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07)), LAnd (LLess (Local0, 0x64), LGreater (Local1, Zero)))) { If (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07))) { If (LEqual (Local0, 0xFF)) { Store (0x07, Local1) } Else { Add (Local1, One, Local1) } Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x07, Local3) Store (FD15, Local4) And (Local4, 0x7F, Local4) Or (Local3, Local4, FD15) Store (FND4, Local3) And (Local3, 0xFC, Local3) Add (Local3, Local2, Local2) Store (Local2, FND4) If (LNot (LEqual (Local0, 0xFF))) { Sleep (0x012C) } Store (CFN3, Local0) } Else { Subtract (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x07, Local3) Store (FD15, Local4) And (Local4, 0x7F, Local4) Or (Local3, Local4, FD15) Store (FND4, Local3) And (Local3, 0xFC, Local3) Add (Local3, Local2, Local2) Store (Local2, FND4) Sleep (0x012C) Store (CFN3, Local0) } } If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x07))) { Return (Zero) } If (LAnd (LEqual (Local0, Zero), LEqual (Local1, Zero))) { Return (0xFFFF) } Store (One, Local2) While (Local1) { Multiply (Local2, 0x02, Local2) Decrement (Local1) } Multiply (Local0, Local2, Local0) Divide (0x00149970, Local0, Local1, Local0) Return (Local0) } Method (HWF4, 0, NotSerialized) { Store (0x05, BSEL) Store (FAN4, Local0) Store (Zero, BSEL) And (FND4, 0x80, Local1) ShiftRight (Local1, 0x08, Local1) Multiply (Local1, 0x04, Local1) And (FND4, 0x0C, Local2) ShiftRight (Local2, 0x02, Local2) Add (Local1, Local2, Local1) While (LOr (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07)), LAnd (LLess (Local0, 0x64), LGreater (Local1, Zero)))) { If (LAnd (LGreater (Local0, 0xE6), LLess (Local1, 0x07))) { If (LEqual (Local0, 0xFF)) { Store (0x07, Local1) } Else { Add (Local1, One, Local1) } Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x08, Local3) ShiftLeft (Local2, 0x02, Local2) Store (FND4, Local4) And (Local4, 0x73, Local4) Or (Local3, Local2, Local3) Or (Local3, Local4, FND4) If (LNot (LEqual (Local0, 0xFF))) { Sleep (0x012C) } Store (0x05, BSEL) Store (FAN4, Local0) Store (Zero, BSEL) } Else { Subtract (Local1, One, Local1) Divide (Local1, 0x04, Local2, Local3) Store (Zero, BSEL) ShiftLeft (Local3, 0x08, Local3) ShiftLeft (Local2, 0x02, Local2) Store (FND4, Local4) And (Local4, 0x73, Local4) Or (Local3, Local2, Local3) Or (Local3, Local4, FND4) Sleep (0x012C) Store (0x05, BSEL) Store (FAN4, Local0) Store (Zero, BSEL) } } If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x07))) { Return (Zero) } If (LAnd (LEqual (Local0, Zero), LEqual (Local1, Zero))) { Return (0xFFFF) } Store (One, Local2) While (Local1) { Multiply (Local2, 0x02, Local2) Decrement (Local1) } Multiply (Local0, Local2, Local0) Divide (0x00149970, Local0, Local1, Local0) Return (Local0) } OperationRegion (HWRE, SystemIO, IOHW, 0x0A) Field (HWRE, ByteAcc, NoLock, Preserve) { Offset (0x05), HIDX, 8, HDAT, 8 } IndexField (HIDX, HDAT, ByteAcc, NoLock, Preserve) { Offset (0x04), CHNM, 1, CFNM, 1, CHNS, 2, CFNS, 2, Offset (0x05), SYST, 8, TRGT, 8, Offset (0x08), SSDN, 8, CSDN, 8, SSUP, 8, CSUP, 8, Offset (0x20), VCOR, 8, V12V, 8, Offset (0x23), V33V, 8, Offset (0x25), V50V, 8, Offset (0x27), MBTE, 8, FAN1, 8, FAN2, 8, FAN3, 8, Offset (0x3F), CFN3, 8, Offset (0x47), FDR1, 8, Offset (0x4B), FD13, 8, FD15, 8, Offset (0x4E), BSEL, 3, Offset (0x4F), Offset (0x50), TSR1, 8, , 7, TSR2, 1, Offset (0x53), FAN4, 8, Offset (0x59), FND4, 8, Offset (0x5D), FD21, 8 } } Scope (_SB.PCI0.SBRG.ASOC) { Name (CORV, Package (0x05) { 0x06020000, "Vcore Voltage", 0x0352, 0x0640, One }) Name (V3VV, Package (0x05) { 0x06020001, " +3.3 Voltage", 0x0B9A, 0x0E2E, One }) Name (V5VV, Package (0x05) { 0x06020002, " +5 Voltage", 0x1194, 0x157C, One }) Name (VV12, Package (0x05) { 0x06020003, " +12 Voltage", 0x27D8, 0x35E8, One }) Name (VPAR, Package (0x04) { Package (0x03) { Zero, One, Zero }, Package (0x03) { 0x22, 0x22, Zero }, Package (0x03) { 0x16, 0x0A, Zero }, Package (0x03) { 0x38, 0x0A, Zero } }) Name (VBUF, Package (0x05) { 0x04, CORV, V3VV, V5VV, VV12 }) Method (VGET, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Return (^^SIOR.HWV0 ()) } If (LEqual (Arg0, One)) { Return (^^SIOR.HWV3 ()) } If (LEqual (Arg0, 0x02)) { Return (^^SIOR.HWV5 ()) } If (LEqual (Arg0, 0x03)) { Return (^^SIOR.HWV1 ()) } } 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, Zero)) { Return (^^SIOR.HWT1 ()) } If (LEqual (Arg0, One)) { Return (^^SIOR.HWT0 ()) } } Name (CPUF, Package (0x05) { 0x06040000, "CPU FAN Speed", 0x0320, 0x1C20, 0x00010001 }) Name (CHF1, Package (0x05) { 0x06040001, "CHASSIS1 FAN Speed", 0x0320, 0x1C20, 0x00010001 }) Name (CHF2, Package (0x05) { 0x06040002, "CHASSIS2 FAN Speed", 0x04B0, 0x1C20, 0x00010001 }) Name (CHF3, Package (0x05) { 0x06040003, "CHASSIS3 FAN Speed", 0x0320, 0x1C20, 0x00010001 }) Name (PWRF, Package (0x05) { 0x06040004, "POWER FAN Speed", 0x0320, 0x1C20, 0x00010001 }) Name (FBUF, Package (0x06) { 0x05, CPUF, CHF1, CHF2, CHF3, PWRF }) Method (FGET, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Return (^^SIOR.HWF1 ()) } If (LEqual (Arg0, One)) { Return (^^SIOR.HWF0 ()) } If (LEqual (Arg0, 0x02)) { Return (^^SIOR.HWF4 ()) } If (LEqual (Arg0, 0x03)) { Return (^^SIOR.HWF3 ()) } If (LEqual (Arg0, 0x04)) { Return (^^SIOR.HWF2 ()) } } 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)), Zero)), Local2) Store (DerefOf (Index (DerefOf (Index (VPAR, Local0)), One)), 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, Zero)), 0xFFFF, Local0) Store (DerefOf (Index (VBUF, Zero)), Local1) If (LNot (LLess (Local0, Local1))) { Return (Zero) } Increment (Local0) Store (DerefOf (Index (Arg0, One)), Index (DerefOf (Index (VBUF, Local0)), One)) 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 (One) } 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, Zero)), 0xFFFF), Local0) Store (DerefOf (Index (TBUF, Zero)), Local1) If (LNot (LLess (Local0, Local1))) { Return (Zero) } Increment (Local0) Store (DerefOf (Index (Arg0, One)), Index (DerefOf (Index (TBUF, Local0)), One)) 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 (One) } 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, Zero)), 0xFFFF, Local0) Store (DerefOf (Index (FBUF, Zero)), Local1) If (LNot (LLess (Local0, Local1))) { Return (Zero) } Increment (Local0) Store (DerefOf (Index (Arg0, One)), Index (DerefOf (Index (FBUF, Local0)), One)) 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 (One) } } Scope (_SB.PCI0) { Device (GFX0) { Name (_ADR, 0x00020000) OperationRegion (IGDM, SystemMemory, 0x3EE9E0E4, 0x2000) Field (IGDM, AnyAcc, NoLock, Preserve) { SIGN, 128, SIZE, 32, OVER, 32, SVER, 256, VVER, 128, GVER, 128, MBOX, 32, Offset (0xF0), IBTT, 4, IPSC, 2, IPAT, 4, IBIA, 3, IBLC, 2, Offset (0xF2), ITVF, 4, ITVM, 4, IDVM, 1, IDVS, 2, ISSC, 1, Offset (0xF4), Offset (0x200), SCIE, 1, GEFC, 4, GXFC, 3, GESF, 8, Offset (0x204), PARM, 32 } OperationRegion (TCOI, SystemIO, TOBS, 0x08) Field (TCOI, WordAcc, NoLock, Preserve) { Offset (0x04), , 9, SCIS, 1, Offset (0x06) } Method (GSCI, 0, NotSerialized) { If (LEqual (GEFC, 0x04)) { Store (GBDA (), GXFC) } If (LEqual (GEFC, 0x06)) { Store (SBCB (), GXFC) } Store (One, SCIS) Store (Zero, GEFC) Store (Zero, GSSE) Store (Zero, SCIE) Return (Zero) } Method (GBDA, 0, NotSerialized) { If (LEqual (GESF, Zero)) { Store (0x037B, PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, One)) { Store (Zero, PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x04)) { Name (LOOP, Zero) And (PARM, 0xFFFFFF00, PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x05)) { Store (IPSC, PARM) Or (PARM, ShiftLeft (IPAT, 0x08), PARM) Add (PARM, 0x0100, PARM) Or (PARM, ShiftLeft (LIDS, 0x10), PARM) XOr (PARM, 0x00010000, PARM) Or (PARM, ShiftLeft (IBIA, 0x14), PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x06)) { Store (ITVF, PARM) Or (PARM, ShiftLeft (ITVM, 0x04), PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x07)) { Name (MEMS, 0x0D) Store (GIVD, PARM) XOr (PARM, One, PARM) Or (PARM, ShiftLeft (GMFN, One), PARM) Or (PARM, 0x1000, PARM) Or (ShiftLeft (CDCT, 0x15), PARM, PARM) If (LEqual (IDVM, One)) { Store (0x11, MEMS) } If (LLess (TASM, M512)) { Or (PARM, ShiftLeft (One, MEMS), PARM) } Else { If (LLess (TASM, M1GB)) { If (LLess (IDVS, 0x03)) { Or (PARM, ShiftLeft (IDVS, MEMS), PARM) } Else { Or (PARM, ShiftLeft (0x02, MEMS), PARM) } } Else { Or (PARM, ShiftLeft (IDVS, MEMS), PARM) } } Store (One, GESF) Return (SUCC) } If (LEqual (GESF, 0x0A)) { Store (Zero, PARM) If (ISSC) { Or (0x03, PARM) } Store (Zero, GESF) Return (SUCC) } Store (Zero, GESF) Return (CRIT) } Method (SBCB, 0, NotSerialized) { If (LEqual (GESF, Zero)) { Store (0x20, PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, One)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x03)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x04)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x05)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x06)) { ShiftRight (PARM, 0x1C, Local0) If (LEqual (Local0, Zero)) { And (PARM, 0x0F, ITVF) And (PARM, 0xF0, ITVM) Store (Zero, GESF) Return (SUCC) } Store (Zero, GESF) Return (NVLD) } If (LEqual (GESF, 0x07)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x08)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x09)) { Store (CRIT, GXFC) Return (Zero) } If (LEqual (GESF, 0x0A)) { ShiftRight (PARM, 0x1C, Local0) If (LEqual (Local0, Zero)) { And (PARM, 0xFF, IPSC) Subtract (And (ShiftRight (PARM, 0x08), 0xFF), One, IPAT) And (ShiftRight (PARM, 0x12), 0x03, IBLC) And (ShiftRight (PARM, 0x14), 0x07, IBIA) } Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x0B)) { If (LEqual (And (ShiftRight (PARM, 0x0B), 0x03), 0x02)) { And (ShiftRight (PARM, 0x0D), 0x0F, Local0) And (ShiftRight (PARM, 0x11), 0x0F, Local1) If (Local0) { Store (Zero, IDVM) Store (Local0, IDVS) } If (Local1) { Store (One, IDVM) Store (Local1, IDVS) } } Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x10)) { Store (Zero, GESF) Return (CRIT) } If (LEqual (GESF, 0x11)) { Or (PARM, ShiftLeft (LIDS, 0x08), PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x12)) { And (PARM, One, ISSC) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x13)) { Store (Zero, GESF) Return (CRIT) } Store (Zero, GESF) Return (CRIT) } Scope (^^PCI0) { OperationRegion (MCHP, PCI_Config, 0x40, 0xC0) Field (MCHP, AnyAcc, NoLock, Preserve) { Offset (0x60), TASM, 10, Offset (0x62) } } OperationRegion (IGDP, PCI_Config, 0x40, 0xC0) Field (IGDP, AnyAcc, NoLock, Preserve) { Offset (0x12), , 1, GIVD, 1, , 2, GUMA, 3, Offset (0x14), , 4, GMFN, 1, Offset (0x18), Offset (0x8C), CDCT, 10, Offset (0x8E), Offset (0xA8), GSSE, 1, GSSB, 14, GSES, 1, Offset (0xBC), ASLS, 32 } Name (M512, 0x08) Name (M1GB, 0x10) Scope (\_GPE) { Method (_L06, 0, NotSerialized) { \_SB.PCI0.GFX0.GSCI () } } Name (OPBS, 0xFFFFFF00) Method (OPTS, 1, NotSerialized) { If (LEqual (Arg0, 0x03)) { Store (ASLS, OPBS) } } Method (OWAK, 1, NotSerialized) { If (LEqual (Arg0, 0x03)) { Store (OPBS, ASLS) Store (One, GSES) } } } } Scope (_SB) { Scope (PCI0) { Name (CRS, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, // Address Space Granularity 0x0000, // Address Range Minimum 0x00FF, // Address Range Maximum 0x0000, // Address Translation Offset 0x0100, // Address Length ,,) IO (Decode16, 0x0CF8, // Address Range Minimum 0x0CF8, // Address Range Maximum 0x01, // Address Alignment 0x08, // Address Length ) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Address Space Granularity 0x0000, // Address Range Minimum 0x0CF7, // Address Range Maximum 0x0000, // Address Translation Offset 0x0CF8, // Address Length ,,, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Address Space Granularity 0x0D00, // Address Range Minimum 0xFFFF, // Address Range Maximum 0x0000, // Address Translation Offset 0xF300, // Address Length ,,, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Address Space Granularity 0x000A0000, // Address Range Minimum 0x000BFFFF, // Address Range Maximum 0x00000000, // Address Translation Offset 0x00020000, // Address Length ,,, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Address Space Granularity 0x000C0000, // Address Range Minimum 0x000DFFFF, // Address Range Maximum 0x00000000, // Address Translation Offset 0x00020000, // Address Length ,,, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Address Space Granularity 0x00000000, // Address Range Minimum 0x00000000, // Address Range Maximum 0x00000000, // Address Translation Offset 0x00000000, // Address Length ,,, AddressRangeMemory, TypeStatic) }) 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, Zero) Name (WSSB, Zero) Name (WAXB, Zero) Method (_PTS, 1, NotSerialized) { Store (Arg0, DBG8) PTS (Arg0) Store (Zero, Index (WAKP, Zero)) Store (Zero, Index (WAKP, One)) 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 (GNVS (0x8370)) {} Else { Notify (\_SB.PWRB, 0x02) } If (ASSB) { Store (WSSB, ASSB) Store (WOTB, AOTB) Store (WAXB, AAXB) } If (DerefOf (Index (WAKP, Zero))) { Store (Zero, Index (WAKP, One)) } Else { Store (Arg0, Index (WAKP, One)) } Return (WAKP) } OperationRegion (IORK, SystemIO, 0xB3, One) Field (IORK, ByteAcc, NoLock, Preserve) { IOWK, 8 } Name (_S0, Package (0x04) { Zero, Zero, Zero, Zero }) If (SS1) { Name (_S1, Package (0x04) { One, Zero, Zero, Zero }) } If (SS3) { Name (_S3, Package (0x04) { 0x05, Zero, Zero, Zero }) } If (SS4) { Name (_S4, Package (0x04) { 0x06, Zero, Zero, Zero }) } Name (_S5, Package (0x04) { 0x07, Zero, Zero, Zero }) Method (PTS, 1, NotSerialized) { If (Arg0) { \_SB.PCI0.SBRG.SIOS (Arg0) \_SB.PCI0.NPTS (Arg0) \_SB.PCI0.SBRG.SPTS (Arg0) \_SB.PCI0.GFX0.OPTS (Arg0) } } Method (WAK, 1, NotSerialized) { \_SB.PCI0.SBRG.SIOW (Arg0) \_SB.PCI0.NWAK (Arg0) \_SB.PCI0.HWAK (Arg0) \_SB.PCI0.SBRG.SWAK (Arg0) \_SB.PCI0.GFX0.OWAK (Arg0) } } --=-=-= Content-Disposition: attachment; filename=p5bv-acpi2.tab /* RSD PTR: OEM=ACPIAM, ACPI_Rev=2.0x (2) XSDT=0x3ee90100, length=36, cksum=180 */ /* XSDT: Length=84, Revision=1, Checksum=230, OEMID=A M I, OEM Table ID=OEMXSDT, OEM Revision=0x10000602, Creator ID=MSFT, Creator Revision=0x97 Entries={ 0x3ee90290, 0x3ee90390, 0x3ee90400, 0x3ee9e040, 0x3ee99bb0, 0x3ee9e0c0 } */ /* FACP: Length=244, Revision=3, Checksum=94, OEMID=A M I, OEM Table ID=OEMFACP, OEM Revision=0x10000602, Creator ID=MSFT, Creator Revision=0x97 FACS=0x3ee9e000, DSDT=0x3ee90440 INT_MODEL=APIC Preferred_PM_Profile=Desktop (1) SCI_INT=9 SMI_CMD=0xb2, ACPI_ENABLE=0xe1, ACPI_DISABLE=0x1e, S4BIOS_REQ=0x0 PSTATE_CNT=0xe2 PM1a_EVT_BLK=0x800-0x803 PM1a_CNT_BLK=0x804-0x805 PM_TMR_BLK=0x808-0x80b GPE0_BLK=0x828-0x82f CST_CNT=0xe3 P_LVL2_LAT=101 us, P_LVL3_LAT=1001 us FLUSH_SIZE=1024, FLUSH_STRIDE=16 DUTY_OFFSET=1, DUTY_WIDTH=0 DAY_ALRM=13, MON_ALRM=0, CENTURY=50 IAPC_BOOT_ARCH={LEGACY_DEV,8042} Flags={WBINVD,PROC_C1,SLP_BUTTON,RTC_S4} X_FACS=0x3ee9e000, X_DSDT=0x3ee90440 X_PM1a_EVT_BLK=0x800:0[32] (IO) X_PM1a_CNT_BLK=0x804:0[16] (IO) X_PM_TMR_BLK=0x808:0[32] (IO) X_GPE0_BLK=0x828:0[64] (IO) */ /* FACS: Length=64, HwSig=0x00000000, Firm_Wake_Vec=0x00000000 Global_Lock= Flags= Version=1 */ /* DSDT: Length=38763, Revision=1, Checksum=63, OEMID=A0579, OEM Table ID=A0579000, OEM Revision=0x0, Creator ID=INTL, Creator Revision=0x20060113 */ /* APIC: Length=108, Revision=1, Checksum=33, OEMID=A M I, OEM Table ID=OEMAPIC, OEM Revision=0x10000602, Creator ID=MSFT, Creator Revision=0x97 Local APIC ADDR=0xfee00000 Flags={PC-AT} Type=Local APIC ACPI CPU=1 Flags={ENABLED} APIC ID=0 Type=Local APIC ACPI CPU=2 Flags={ENABLED} APIC ID=1 Type=Local APIC ACPI CPU=3 Flags={DISABLED} APIC ID=130 Type=Local APIC ACPI CPU=4 Flags={DISABLED} APIC ID=131 Type=IO APIC APIC ID=2 INT BASE=0 ADDR=0x00000000fec00000 Type=INT Override BUS=0 IRQ=0 INTR=2 Flags={Polarity=conforming, Trigger=conforming} Type=INT Override BUS=0 IRQ=9 INTR=9 Flags={Polarity=active-hi, Trigger=level} */ /* MCFG: Length=60, Revision=1, Checksum=137, OEMID=A M I, OEM Table ID=OEMMCFG, OEM Revision=0x10000602, Creator ID=MSFT, Creator Revision=0x97 Base Address= 0x00000000e0000000 Segment Group= 0x0000 Start Bus= 0 End Bus= 255 */ /* HPET: Length=56, Revision=1, Checksum=159, OEMID=A M I, OEM Table ID=OEMHPET, OEM Revision=0x10000602, Creator ID=MSFT, Creator Revision=0x97 HPET Number=0 ADDR=0x00000800 HW Rev=0x2 Comparitors=2 Counter Size=1 Legacy IRQ routing capable={TRUE} PCI Vendor ID=0x8086 Minimal Tick=14318 */ /* GSCI: Length=8228, Revision=1, Checksum=58, OEMID=A M I, OEM Table ID=GMCHSCI, OEM Revision=0x10000602, Creator ID=MSFT, Creator Revision=0x97 */ --=-=-=--