/* RSD PTR: OEM=PTLTD, ACPI_Rev=2.0x (2) XSDT=0x7fefbca4, length=36, cksum=14 */ /* XSDT: Length=84, Revision=1, Checksum=181, OEMID=PTLTD, OEM Table ID= XSDT, OEM Revision=0x6040000, Creator ID= LTP, Creator Revision=0x0 Entries={ 0x7fefeca0, 0x7fefed94, 0x7fefedcc, 0x7fefee69, 0x7fefef06, 0x7fefefb0 } */ /* FACP: Length=244, Revision=3, Checksum=169, OEMID=AMD, OEM Table ID=HAMMER, OEM Revision=0x6040000, Creator ID=PTEC, Creator Revision=0xf4240 FACS=0x7fefffc0, DSDT=0x7fefbcf8 INT_MODEL=APIC Preferred_PM_Profile=Unspecified (0) SCI_INT=9 SMI_CMD=0x802f, ACPI_ENABLE=0xf0, ACPI_DISABLE=0xf1, S4BIOS_REQ=0x0 PSTATE_CNT=0x0 PM1a_EVT_BLK=0x8000-0x8003 PM1a_CNT_BLK=0x8004-0x8005 PM_TMR_BLK=0x8008-0x800b GPE0_BLK=0x8020-0x8023 GPE1_BLK=0x80b0-0x80b7, GPE1_BASE=16 P_LVL2_LAT=101 us, P_LVL3_LAT=1001 us FLUSH_SIZE=0, FLUSH_STRIDE=0 DUTY_OFFSET=1, DUTY_WIDTH=0 DAY_ALRM=13, MON_ALRM=0, CENTURY=50 IAPC_BOOT_ARCH={LEGACY_DEV,8042} Flags={WBINVD,PROC_C1,RTC_S4,RESET_REG} RESET_REG=0x64:0[8] (IO), RESET_VALUE=0xfe X_FACS=0x7fefffc0, X_DSDT=0x7fefbcf8 X_PM1a_EVT_BLK=0x8000:0[32] (IO) X_PM1a_CNT_BLK=0x8004:0[16] (IO) X_PM_TMR_BLK=0x8008:0[32] (IO) X_GPE0_BLK=0x8020:0[32] (IO) X_GPE1_BLK=0x80b0:0[64] (IO) */ /* FACS: Length=64, HwSig=0x00000000, Firm_Wake_Vec=0x00000000 Global_Lock= Flags= Version=1 */ /* DSDT: Length=12068, Revision=1, Checksum=85, OEMID=AMD-K8, OEM Table ID=AMDACPI, OEM Revision=0x6040000, Creator ID=MSFT, Creator Revision=0x100000d */ /* HPET: Length=56, Revision=1, Checksum=194, OEMID=AMD, OEM Table ID=HAMMER, OEM Revision=0x6040000, Creator ID=PTEC, Creator Revision=0x0 HPET Number=0 ADDR=0x00004000 HW Rev=0xa0 Comparitors=2 Counter Size=0 Legacy IRQ routing capable={TRUE} PCI Vendor ID=0x1022 Minimal Tick=4096 */ /* SSDT: Length=157, Revision=1, Checksum=118, OEMID=AMD-K8, OEM Table ID=AMD-ACPI, OEM Revision=0x6040000, Creator ID= AMD, Creator Revision=0x1 */ /* SSDT: Length=157, Revision=1, Checksum=183, OEMID=AMD-K8, OEM Table ID=AMD-ACPI, OEM Revision=0x6040000, Creator ID= AMD, Creator Revision=0x1 */ /* APIC: Length=170, Revision=1, Checksum=175, OEMID=PTLTD, OEM Table ID= APIC, OEM Revision=0x6040000, Creator ID= LTP, Creator Revision=0x0 Local APIC ADDR=0xfee00000 Flags={PC-AT} Type=Local APIC ACPI CPU=0 Flags={ENABLED} APIC ID=0 Type=Local APIC ACPI CPU=1 Flags={ENABLED} APIC ID=1 Type=Local APIC ACPI CPU=2 Flags={ENABLED} APIC ID=2 Type=Local APIC ACPI CPU=3 Flags={ENABLED} APIC ID=3 Type=IO APIC APIC ID=4 INT BASE=0 ADDR=0x00000000fec00000 Type=IO APIC APIC ID=5 INT BASE=24 ADDR=0x00000000fa3f0000 Type=IO APIC APIC ID=6 INT BASE=28 ADDR=0x00000000fa3f1000 Type=IO APIC APIC ID=7 INT BASE=32 ADDR=0x00000000fa3f2000 Type=IO APIC APIC ID=8 INT BASE=36 ADDR=0x00000000fa3f3000 Type=INT Override BUS=0 IRQ=0 INTR=2 Flags={Polarity=active-hi, Trigger=edge} Type=Local NMI ACPI CPU=0 LINT Pin=1 Flags={Polarity=active-hi, Trigger=edge} Type=Local NMI ACPI CPU=1 LINT Pin=1 Flags={Polarity=active-hi, Trigger=edge} Type=Local NMI ACPI CPU=2 LINT Pin=1 Flags={Polarity=active-hi, Trigger=edge} Type=Local NMI ACPI CPU=3 LINT Pin=1 Flags={Polarity=active-hi, Trigger=edge} */ /* SPCR: Length=80, Revision=1, Checksum=160, OEMID=PTLTD, OEM Table ID=$UCRTBL$, OEM Revision=0x6040000, Creator ID=PTL, Creator Revision=0x1 */ =========================================== /* * Intel ACPI Component Architecture * AML Disassembler version 20041119 * * Disassembly of /tmp/acpidump.Z3P2nE, Tue Apr 5 19:13:58 2005 */ DefinitionBlock ("DSDT.aml", "DSDT", 1, "AMD-K8", "AMDACPI", 100925440) { Scope (_PR) { Processor (CPU0, 0x00, 0x00008010, 0x06) {} Processor (CPU1, 0x01, 0x00000000, 0x00) {} Processor (CPU2, 0x02, 0x00000000, 0x00) {} Processor (CPU3, 0x03, 0x00000000, 0x00) {} } Name (_S0, Package (0x04) { 0x00, 0x00, 0x00, 0x00 }) Name (_S1, Package (0x04) { 0x01, 0x01, 0x01, 0x01 }) Name (_S3, Package (0x04) { 0x05, 0x05, 0x05, 0x05 }) Name (_S4, Package (0x04) { 0x06, 0x06, 0x06, 0x06 }) Name (_S5, Package (0x04) { 0x07, 0x07, 0x07, 0x07 }) Scope (\_SB) { Name (OSTB, Ones) Method (OSTP, 0, NotSerialized) { If (LEqual (^OSTB, Ones)) { If (CondRefOf (\_OSI, Local0)) { If (\_OSI ("Windows 2001.1")) { Store (0x20, ^OSTB) } Else { If (\_OSI ("Windows 2001 SP1")) { Store (0x10, ^OSTB) } Else { If (\_OSI ("Windows 2001")) { Store (0x08, ^OSTB) } Else { Store (0x00, ^OSTB) } } } } Else { If (CondRefOf (\_OS, Local0)) { If (^SEQL (\_OS, "Microsoft Windows")) { Store (0x01, ^OSTB) } Else { If (^SEQL (\_OS, "Microsoft WindowsME: Millennium Edition")) { Store (0x02, ^OSTB) } Else { If (^SEQL (\_OS, "Microsoft Windows NT")) { Store (0x04, ^OSTB) } Else { Store (0x00, ^OSTB) } } } } Else { Store (0x00, ^OSTB) } } } Return (^OSTB) } Method (SEQL, 2, Serialized) { Store (SizeOf (Arg0), Local0) Store (SizeOf (Arg1), Local1) If (LNot (LEqual (Local0, Local1))) { Return (Zero) } Name (BUF0, Buffer (Local0) {}) Store (Arg0, BUF0) Name (BUF1, Buffer (Local0) {}) Store (Arg1, BUF1) Store (Zero, Local2) While (LLess (Local2, Local0)) { Store (DerefOf (Index (BUF0, Local2)), Local3) Store (DerefOf (Index (BUF1, Local2)), Local4) If (LNot (LEqual (Local3, Local4))) { Return (Zero) } Increment (Local2) } Return (One) } } Scope (_SB) { Device (PWRB) { Name (_HID, EisaId ("PNP0C0C")) Method (_STA, 0, NotSerialized) { Return (0x0B) } } Device (PCI0) { Name (_HID, EisaId ("PNP0A03")) Name (_ADR, 0x00180000) Name (_UID, 0x01) Name (_BBN, 0x00) Name (VALD, 0x01) Name (EITE, 0x00) Name (TMP1, Buffer (0xB6) {}) Name (TMP2, Buffer (0xB6) {}) Method (INIT, 1, NotSerialized) { Store (SizeOf (Arg0), Local0) Store (Arg0, Local2) Store (Zero, Local1) While (Local0) { Store (Zero, Index (Local2, Local1)) Increment (Local1) Decrement (Local0) } Return (Local2) } Method (GMEM, 1, NotSerialized) { Store (INIT (TMP1), TMP1) Store (INIT (TMP2), TMP2) Store (One, VALD) Store (Zero, Local0) Store (Zero, Local1) Store (0x00, EITE) While (LEqual (VALD, 0x01)) { Store (GETM (Arg0, Local1), Local0) If (LEqual (VALD, 0x01)) { Concatenate (TMP1, Local0, Local2) Store (MYCT (Local2), Local2) Store (MYST (Local2, TMP1), TMP1) Increment (Local1) } } Multiply (Local1, 0x1A, Local1) Store (MYSH (TMP1, Local1), TMP1) Multiply (Local1, 0x08, Local1) CreateField (TMP1, 0x00, Local1, TMBF) Store (TMBF, Local7) Return (Local7) } Method (MYSH, 2, NotSerialized) { Store (SizeOf (Arg0), Local0) Subtract (Local0, Arg1, Local0) Store (Arg1, Local1) Store (Zero, Local4) While (Local1) { Store (DerefOf (Index (Arg0, Local0)), Index (TMP2, Local4)) Decrement (Local1) Increment (Local0) Increment (Local4) } Return (TMP2) } Method (MYST, 2, NotSerialized) { Store (Zero, Local0) Store (0x1A, Local2) Store (Arg1, Local1) While (LLess (Local0, 0xB6)) { Store (DerefOf (Index (Arg0, Local2)), Index (Local1, Local0)) Increment (Local0) Increment (Local2) } Return (Local1) } Method (MYCT, 1, NotSerialized) { Store (Arg0, Local1) Store (Zero, Local0) While (LLess (Local0, 0xB6)) { Store (DerefOf (Index (Arg0, Local0)), Index (Local1, Local0)) Increment (Local0) } Return (Local1) } Method (GETM, 2, NotSerialized) { Name (TMPB, ResourceTemplate () { DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000) }) CreateDWordField (TMPB, 0x0A, TCMM) CreateDWordField (TMPB, 0x16, TOMM) CreateDWordField (TMPB, 0x0E, TOPM) Name (SIZ, Zero) Store (Zero, Local3) Store (One, Local4) Name (WHLP, Ones) Name (ITER, Zero) While (WHLP) { Store (DerefOf (Index (\_SB.PCI0.MMIO, Local3)), Local0) Store (DerefOf (Index (Local0, Local4)), Local1) Decrement (Local4) Store (DerefOf (Index (Local0, Local4)), Local6) Increment (Local4) And (Local1, 0x07, Local7) And (Local1, 0xFFFFFF00, Local1) If (LAnd (LEqual (Arg0, 0x00), LEqual (Local7, 0x00))) { Store (Zero, Local7) } Else { If (LAnd (LEqual (Arg0, 0x01), LEqual (Local7, 0x01))) { Store (Zero, Local7) } Else { Store (One, Local7) } } And (Local6, 0xFFFFFF00, Local6) If (LEqual (Local6, 0x00FEC000)) { Store (One, Local7) } If (LOr (LLess (Local1, 0x0100), Local7)) { If (LAnd (LEqual (Local4, 0x03), LEqual (Local3, 0x02))) { Store (Zero, WHLP) Store (Zero, VALD) } Else { If (LLess (Local4, 0x05)) { Add (Local4, 0x02, Local4) } Else { Add (Local3, 0x01, Local3) Store (One, Local4) } Add (ITER, 0x01, ITER) } } Else { If (LNot (LLess (ITER, EITE))) { If (LAnd (LEqual (Arg1, 0x00), LEqual (Arg0, 0x00))) { Store (AMEM, TCMM) } Else { And (Local6, 0xFFFFFF00, Local6) ShiftLeft (Local6, 0x08, Local6) Store (Local6, TCMM) } ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, TCMM, TOMM) Add (TOMM, 0x01, TOMM) Store (Local1, TOPM) Store (0x01, VALD) Store (Zero, WHLP) Add (ITER, 0x01, ITER) Store (SizeOf (TMPB), SIZ) Subtract (SIZ, 0x02, SIZ) Multiply (SIZ, 0x08, SIZ) CreateField (TMPB, 0x00, SIZ, REFE) } Else { If (LAnd (LEqual (Local4, 0x03), LEqual (Local3, 0x02))) { Store (Zero, WHLP) Store (Zero, VALD) } Else { If (LLess (Local4, 0x05)) { Add (Local4, 0x02, Local4) } Else { Add (Local3, 0x01, Local3) Store (One, Local4) } Add (ITER, 0x01, ITER) } } } } Store (ITER, EITE) If (VALD) { Return (REFE) } Else { Return (TMPB) } } Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, 0x0000, 0x0007, 0x0000, 0x0100) IO (Decode16, 0x0CF8, 0x0CF8, 0x01, 0x08) IO (Decode16, 0x8000, 0x8000, 0x01, 0x80) IO (Decode16, 0x8080, 0x8080, 0x01, 0x80) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, 0x8100, 0xFFFF, 0x0000, 0xAF00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000C0000, 0x00000000, 0x00000000, 0x00000000) Memory32Fixed (ReadWrite, 0x000D8000, 0x00004000) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, 0x0000, 0x03AF, 0x0000, 0x03B0) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, 0x03E0, 0x0CF7, 0x0000, 0x0918) }) \_SB.OSTP () CreateDWordField (BUF0, 0x4E, VLEN) CreateDWordField (BUF0, 0x46, VMAX) CreateDWordField (BUF0, 0x42, VMIN) ShiftLeft (VGA1, 0x09, Local0) Add (VMIN, Local0, VMAX) Store (Local0, VLEN) Concatenate (GMEM (0x00), BUF0, Local1) Concatenate (\_SB.PCI1.GETM (0x00), Local1, Local2) If (LOr (LEqual (OSTB, 0x01), LEqual (OSTB, 0x02))) { Concatenate (GMEM (0x01), Local2, Local3) Return (Local3) } Else { Return (Local2) } } Device (SBC3) { Name (_ADR, 0x00070003) OperationRegion (PIRQ, PCI_Config, 0x56, 0x02) Field (PIRQ, ByteAcc, Lock, Preserve) { PIBA, 8, PIDC, 8 } OperationRegion (TS3, PCI_Config, 0xC4, 0x02) Field (TS3, DWordAcc, NoLock, Preserve) { PTS3, 16 } } Device (HPET) { Name (HPT, 0x00) Name (_HID, EisaId ("PNP0103")) Name (_UID, 0x00) Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { Memory32Fixed (ReadWrite, 0xFED00000, 0x00000400) }) Return (BUF0) } } Device (LNKA) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x01) Method (_STA, 0, NotSerialized) { And (\_SB.PCI0.SBC3.PIBA, 0x0F, Local0) If (LEqual (Local0, 0x00)) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Name (BUFA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {3,5,10,11} }) Return (BUFA) } Method (_DIS, 0, NotSerialized) { Store (0x01, Local3) And (\_SB.PCI0.SBC3.PIBA, 0x0F, Local1) Store (Local1, Local2) If (LGreater (Local1, 0x07)) { Subtract (Local1, 0x08, Local1) } ShiftLeft (Local3, Local1, Local3) Not (Local3, Local3) And (\_SB.PCI0.SBC3.PIBA, 0xF0, \_SB.PCI0.SBC3.PIBA) } Method (_CRS, 0, NotSerialized) { Name (BUFA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {} }) CreateByteField (BUFA, 0x01, IRA1) CreateByteField (BUFA, 0x02, IRA2) Store (0x00, Local3) Store (0x00, Local4) And (\_SB.PCI0.SBC3.PIBA, 0x0F, Local1) If (LNot (LEqual (Local1, 0x00))) { If (LGreater (Local1, 0x07)) { Subtract (Local1, 0x08, Local2) ShiftLeft (One, Local2, Local4) } Else { If (LGreater (Local1, 0x00)) { ShiftLeft (One, Local1, Local3) } } Store (Local3, IRA1) Store (Local4, IRA2) } Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateByteField (Arg0, 0x01, IRA1) CreateByteField (Arg0, 0x02, IRA2) ShiftLeft (IRA2, 0x08, Local0) Or (Local0, IRA1, Local0) Store (0x00, Local1) ShiftRight (Local0, 0x01, Local0) While (LGreater (Local0, 0x00)) { Increment (Local1) ShiftRight (Local0, 0x01, Local0) } And (\_SB.PCI0.SBC3.PIBA, 0xF0, \_SB.PCI0.SBC3.PIBA) Or (\_SB.PCI0.SBC3.PIBA, Local1, \_SB.PCI0.SBC3.PIBA) } } Device (LNKB) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x02) Method (_STA, 0, NotSerialized) { And (\_SB.PCI0.SBC3.PIBA, 0xF0, Local0) If (LEqual (Local0, 0x00)) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Name (BUFB, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {3,5,10,11} }) Return (BUFB) } Method (_DIS, 0, NotSerialized) { Store (0x01, Local3) And (\_SB.PCI0.SBC3.PIBA, 0xF0, Local1) ShiftRight (Local1, 0x04, Local1) Store (Local1, Local2) If (LGreater (Local1, 0x07)) { Subtract (Local1, 0x08, Local1) } ShiftLeft (Local3, Local1, Local3) Not (Local3, Local3) And (\_SB.PCI0.SBC3.PIBA, 0x0F, \_SB.PCI0.SBC3.PIBA) } Method (_CRS, 0, NotSerialized) { Name (BUFB, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {} }) CreateByteField (BUFB, 0x01, IRB1) CreateByteField (BUFB, 0x02, IRB2) Store (0x00, Local3) Store (0x00, Local4) And (\_SB.PCI0.SBC3.PIBA, 0xF0, Local1) ShiftRight (Local1, 0x04, Local1) If (LNot (LEqual (Local1, 0x00))) { If (LGreater (Local1, 0x07)) { Subtract (Local1, 0x08, Local2) ShiftLeft (One, Local2, Local4) } Else { If (LGreater (Local1, 0x00)) { ShiftLeft (One, Local1, Local3) } } Store (Local3, IRB1) Store (Local4, IRB2) } Return (BUFB) } Method (_SRS, 1, NotSerialized) { CreateByteField (Arg0, 0x01, IRB1) CreateByteField (Arg0, 0x02, IRB2) ShiftLeft (IRB2, 0x08, Local0) Or (Local0, IRB1, Local0) Store (0x00, Local1) ShiftRight (Local0, 0x01, Local0) While (LGreater (Local0, 0x00)) { Increment (Local1) ShiftRight (Local0, 0x01, Local0) } And (\_SB.PCI0.SBC3.PIBA, 0x0F, \_SB.PCI0.SBC3.PIBA) ShiftLeft (Local1, 0x04, Local1) Or (\_SB.PCI0.SBC3.PIBA, Local1, \_SB.PCI0.SBC3.PIBA) } } Device (LNKC) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x03) Method (_STA, 0, NotSerialized) { And (\_SB.PCI0.SBC3.PIDC, 0x0F, Local0) If (LEqual (Local0, 0x00)) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Name (BUFA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {3,5,10,11} }) Return (BUFA) } Method (_DIS, 0, NotSerialized) { Store (0x01, Local3) And (\_SB.PCI0.SBC3.PIDC, 0x0F, Local1) Store (Local1, Local2) If (LGreater (Local1, 0x07)) { Subtract (Local1, 0x08, Local1) } ShiftLeft (Local3, Local1, Local3) Not (Local3, Local3) And (\_SB.PCI0.SBC3.PIDC, 0xF0, \_SB.PCI0.SBC3.PIDC) } Method (_CRS, 0, NotSerialized) { Name (BUFA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {} }) CreateByteField (BUFA, 0x01, IRA1) CreateByteField (BUFA, 0x02, IRA2) Store (0x00, Local3) Store (0x00, Local4) And (\_SB.PCI0.SBC3.PIDC, 0x0F, Local1) If (LNot (LEqual (Local1, 0x00))) { If (LGreater (Local1, 0x07)) { Subtract (Local1, 0x08, Local2) ShiftLeft (One, Local2, Local4) } Else { If (LGreater (Local1, 0x00)) { ShiftLeft (One, Local1, Local3) } } Store (Local3, IRA1) Store (Local4, IRA2) } Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateByteField (Arg0, 0x01, IRA1) CreateByteField (Arg0, 0x02, IRA2) ShiftLeft (IRA2, 0x08, Local0) Or (Local0, IRA1, Local0) Store (0x00, Local1) ShiftRight (Local0, 0x01, Local0) While (LGreater (Local0, 0x00)) { Increment (Local1) ShiftRight (Local0, 0x01, Local0) } And (\_SB.PCI0.SBC3.PIDC, 0xF0, \_SB.PCI0.SBC3.PIDC) Or (\_SB.PCI0.SBC3.PIDC, Local1, \_SB.PCI0.SBC3.PIDC) } } Device (LNKD) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x04) Method (_STA, 0, NotSerialized) { And (\_SB.PCI0.SBC3.PIDC, 0xF0, Local0) If (LEqual (Local0, 0x00)) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Name (BUFB, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {3,5,10,11} }) Return (BUFB) } Method (_DIS, 0, NotSerialized) { Store (0x01, Local3) And (\_SB.PCI0.SBC3.PIDC, 0xF0, Local1) ShiftRight (Local1, 0x04, Local1) Store (Local1, Local2) If (LGreater (Local1, 0x07)) { Subtract (Local1, 0x08, Local1) } ShiftLeft (Local3, Local1, Local3) Not (Local3, Local3) And (\_SB.PCI0.SBC3.PIDC, 0x0F, \_SB.PCI0.SBC3.PIDC) } Method (_CRS, 0, NotSerialized) { Name (BUFB, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {} }) CreateByteField (BUFB, 0x01, IRB1) CreateByteField (BUFB, 0x02, IRB2) Store (0x00, Local3) Store (0x00, Local4) And (\_SB.PCI0.SBC3.PIDC, 0xF0, Local1) ShiftRight (Local1, 0x04, Local1) If (LNot (LEqual (Local1, 0x00))) { If (LGreater (Local1, 0x07)) { Subtract (Local1, 0x08, Local2) ShiftLeft (One, Local2, Local4) } Else { If (LGreater (Local1, 0x00)) { ShiftLeft (One, Local1, Local3) } } Store (Local3, IRB1) Store (Local4, IRB2) } Return (BUFB) } Method (_SRS, 1, NotSerialized) { CreateByteField (Arg0, 0x01, IRB1) CreateByteField (Arg0, 0x02, IRB2) ShiftLeft (IRB2, 0x08, Local0) Or (Local0, IRB1, Local0) Store (0x00, Local1) ShiftRight (Local0, 0x01, Local0) While (LGreater (Local0, 0x00)) { Increment (Local1) ShiftRight (Local0, 0x01, Local0) } And (\_SB.PCI0.SBC3.PIDC, 0x0F, \_SB.PCI0.SBC3.PIDC) ShiftLeft (Local1, 0x04, Local1) Or (\_SB.PCI0.SBC3.PIDC, Local1, \_SB.PCI0.SBC3.PIDC) } } Device (PIC) { Name (_HID, EisaId ("PNP0000")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0020, 0x0020, 0x01, 0x02) IO (Decode16, 0x00A0, 0x00A0, 0x01, 0x02) IRQ (Edge, ActiveHigh, Exclusive) {2} }) } Device (DMA1) { Name (_HID, EisaId ("PNP0200")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0000, 0x0000, 0x01, 0x10) IO (Decode16, 0x0080, 0x0080, 0x01, 0x10) IO (Decode16, 0x00C0, 0x00C0, 0x01, 0x20) DMA (Compatibility, NotBusMaster, Transfer16) {4} }) } Device (TMR) { Name (_HID, EisaId ("PNP0100")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0040, 0x0040, 0x01, 0x04) IRQ (Edge, ActiveHigh, Exclusive) {0} }) } Device (RTC) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, 0x0070, 0x01, 0x06) IRQ (Edge, ActiveHigh, Exclusive) {8} }) } Device (SPKR) { Name (_HID, EisaId ("PNP0800")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0061, 0x0061, 0x01, 0x01) }) } Device (COPR) { Name (_HID, EisaId ("PNP0C04")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x00F0, 0x00F0, 0x01, 0x10) IRQ (Edge, ActiveHigh, Exclusive) {13} }) } Device (SYSR) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x00) Name (SYR, ResourceTemplate () { IO (Decode16, 0x04D0, 0x04D0, 0x01, 0x02) IO (Decode16, 0x0010, 0x0010, 0x01, 0x10) IO (Decode16, 0x0022, 0x0022, 0x01, 0x1E) IO (Decode16, 0x0044, 0x0044, 0x01, 0x1C) IO (Decode16, 0x0062, 0x0062, 0x01, 0x02) IO (Decode16, 0x0065, 0x0065, 0x01, 0x0B) IO (Decode16, 0x0076, 0x0076, 0x01, 0x0A) IO (Decode16, 0x0090, 0x0090, 0x01, 0x10) IO (Decode16, 0x00A2, 0x00A2, 0x01, 0x1E) IO (Decode16, 0x00E0, 0x00E0, 0x01, 0x10) IO (Decode16, 0x0B78, 0x0B78, 0x01, 0x04) IO (Decode16, 0x0190, 0x0190, 0x01, 0x04) }) Name (SYR1, ResourceTemplate () { IO (Decode16, 0x04D0, 0x04D0, 0x01, 0x02) IO (Decode16, 0x1100, 0x117F, 0x01, 0x80) IO (Decode16, 0x1180, 0x11FF, 0x01, 0x80) IO (Decode16, 0x0010, 0x0010, 0x01, 0x10) IO (Decode16, 0x0022, 0x0022, 0x01, 0x1E) IO (Decode16, 0x0044, 0x0044, 0x01, 0x1C) IO (Decode16, 0x0062, 0x0062, 0x01, 0x02) IO (Decode16, 0x0065, 0x0065, 0x01, 0x0B) IO (Decode16, 0x0076, 0x0076, 0x01, 0x0A) IO (Decode16, 0x0090, 0x0090, 0x01, 0x10) IO (Decode16, 0x00A2, 0x00A2, 0x01, 0x1E) IO (Decode16, 0x00E0, 0x00E0, 0x01, 0x10) IO (Decode16, 0x0B78, 0x0B78, 0x01, 0x04) IO (Decode16, 0x0190, 0x0190, 0x01, 0x04) }) Method (_CRS, 0, NotSerialized) { If (LEqual (OSTB, Ones)) { OSTP () } If (LOr (LEqual (OSTB, 0x01), LEqual (OSTB, 0x02))) { Return (SYR) } Else { Return (SYR1) } } } Device (MEM) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x01) Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x000E0000, 0x00020000) Memory32Fixed (ReadWrite, 0x000C0000, 0x00000000) Memory32Fixed (ReadWrite, 0xFEC00000, 0x00001000) Memory32Fixed (ReadWrite, 0xFFC00000, 0x00380000) Memory32Fixed (ReadWrite, 0xFEE00000, 0x00001000) Memory32Fixed (ReadWrite, 0xFFF80000, 0x00080000) Memory32Fixed (ReadWrite, 0x00000000, 0x00000000) Memory32Fixed (ReadWrite, 0x00000000, 0x00000000) Memory32Fixed (ReadWrite, 0x00000000, 0x00000000) Memory32Fixed (ReadWrite, 0x00000000, 0x00000000) }) CreateDWordField (BUF0, 0x14, CLEN) CreateDWordField (BUF0, 0x10, CBAS) If (LEqual (OSTB, Ones)) { OSTP () } If (LOr (LEqual (OSTB, 0x01), LEqual (OSTB, 0x02))) { Store (Zero, CLEN) Store (Zero, CBAS) } Else { ShiftLeft (VGA1, 0x09, Local0) Store (Local0, CLEN) } If (\PICF) { If (\_SB.PCI1.G0PA.NIO0) { CreateDWordField (BUF0, 0x4C, A0MN) CreateDWordField (BUF0, 0x50, A0LN) Store (0xFE000000, A0MN) Store (0x1000, A0LN) } If (\_SB.PCI1.G0PB.NIO1) { CreateDWordField (BUF0, 0x58, A1MN) CreateDWordField (BUF0, 0x5C, A1LN) Store (0xFE001000, A1MN) Store (0x1000, A1LN) } If (\_SB.PCI1.G1PA.NIO2) { CreateDWordField (BUF0, 0x64, A2MN) CreateDWordField (BUF0, 0x68, A2LN) Store (0xFE002000, A2MN) Store (0x2000, A2LN) } If (\_SB.PCI1.G1PB.NIO3) { CreateDWordField (BUF0, 0x70, A3MN) CreateDWordField (BUF0, 0x74, A3LN) Store (0xFE004000, A3MN) Store (0x1000, A3LN) } } Return (BUF0) } } Device (PS2M) { Name (_HID, EisaId ("PNP0F13")) Name (_CRS, ResourceTemplate () { IRQNoFlags () {12} }) Method (_STA, 0, NotSerialized) { And (FLG0, 0x04, Local0) If (LEqual (Local0, 0x04)) { Return (0x0F) } Else { Return (0x00) } } } Device (PS2K) { Name (_HID, EisaId ("PNP0303")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0060, 0x0060, 0x01, 0x01) IO (Decode16, 0x0064, 0x0064, 0x01, 0x01) IRQNoFlags () {1} }) } Device (ISA) { Name (_ADR, 0x00070000) OperationRegion (PIRY, PCI_Config, 0x51, 0x02) Field (PIRY, ByteAcc, NoLock, Preserve) { Z000, 2, , 1, ECP, 1, FDC1, 1, FDC2, 1, Offset (0x01), Z001, 3, SAEN, 1, Z002, 3, SBEN, 1 } Method (_STA, 0, NotSerialized) { Return (0x0B) } Device (SIO) { Name (_HID, EisaId ("PNP0A05")) OperationRegion (Z003, SystemIO, 0x80, 0x01) Field (Z003, ByteAcc, NoLock, Preserve) { Z004, 8 } OperationRegion (SIBP, SystemIO, 0x2E, 0x02) Field (SIBP, ByteAcc, NoLock, Preserve) { BPIO, 8 } OperationRegion (SIIO, SystemIO, 0x2E, 0x02) Field (SIIO, ByteAcc, NoLock, Preserve) { INDX, 8, DATA, 8 } IndexField (INDX, DATA, ByteAcc, NoLock, Preserve) { Offset (0x07), LDN, 8, Offset (0x22), POW, 8, Offset (0x30), ACT, 8, Offset (0x60), IOBH, 8, IOBL, 8, Offset (0x70), INT, 8, Offset (0x74), DMAS, 8, Offset (0xE0), Z005, 8, Offset (0xE4), Z006, 8, Offset (0xF0), MODE, 3 } Method (CFG, 1, NotSerialized) { Store (0x20, INDX) While (LNot (LEqual (DATA, 0x52))) { Store (0x87, BPIO) Store (0x87, BPIO) Store (0x20, INDX) } Store (Arg0, LDN) } Method (XCFG, 0, NotSerialized) { Store (0xAA, BPIO) } Method (DIS, 1, NotSerialized) { CFG (Arg0) Store (0x00, ACT) XCFG () } Method (ENA, 1, NotSerialized) { CFG (Arg0) Store (0x01, ACT) XCFG () } Method (STA, 1, NotSerialized) { CFG (Arg0) If (ACT) { Store (0x0F, Local0) } Else { Store (0x0D, Local0) } XCFG () Return (Local0) } Method (PS0, 1, NotSerialized) { ENA (Arg0) Return (Zero) } Method (PS3, 1, NotSerialized) { DIS (Arg0) Return (0x03) } Name (TIO, ResourceTemplate () { IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08) }) Method (RIO, 1, NotSerialized) { CreateWordField (TIO, 0x02, IO1N) CreateWordField (TIO, 0x04, IO1X) CreateField (TIO, 0x10, 0x20, OUT) ShiftLeft (IOBH, 0x08, Local0) Add (IOBL, Local0, Local0) Add (Local0, Arg0, Local1) Store (Local1, IO1N) Store (Local1, IO1X) Return (OUT) } Method (WIO1, 1, NotSerialized) { CreateByteField (TIO, 0x02, IOLL) CreateByteField (TIO, 0x03, IOLH) Store (Arg0, TIO) Store (IOLL, IOBL) Store (IOLH, IOBH) } Name (TIRQ, ResourceTemplate () { IRQ (Edge, ActiveHigh, Exclusive) {4} }) Method (RIRQ, 0, NotSerialized) { CreateWordField (TIRQ, 0x01, IRQ1) CreateField (TIRQ, 0x00, 0x20, OUT) ShiftLeft (0x01, INT, IRQ1) Return (OUT) } Method (WIRQ, 1, NotSerialized) { CreateWordField (TIRQ, 0x01, IRQ1) Store (Arg0, TIRQ) FindSetRightBit (IRQ1, Local0) Subtract (Local0, 0x01, Local0) Store (Local0, INT) } Name (TDMA, ResourceTemplate () { DMA (Compatibility, NotBusMaster, Transfer8) {0} }) Method (RDMA, 0, NotSerialized) { CreateByteField (TDMA, 0x01, DMAA) CreateField (TDMA, 0x00, 0x18, OUT) Store (DMAS, Local0) ShiftLeft (0x01, Local0, DMAA) Return (OUT) } Method (WDMA, 1, NotSerialized) { CreateByteField (TDMA, 0x01, DMAA) Store (Arg0, TDMA) FindSetRightBit (DMAA, Local0) Subtract (Local0, 0x01, DMAS) } Device (COM1) { Name (_HID, EisaId ("PNP0501")) Name (_UID, 0x01) Name (_PSC, 0x00) Name (RSRC, ResourceTemplate () { IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {4} }) Name (_PRS, ResourceTemplate () { StartDependentFn (0x00, 0x01) { IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {3,4} } StartDependentFn (0x00, 0x01) { IO (Decode16, 0x02F8, 0x02F8, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {3,4} } StartDependentFn (0x00, 0x01) { IO (Decode16, 0x03E8, 0x03E8, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {3,4} } StartDependentFn (0x00, 0x01) { IO (Decode16, 0x02E8, 0x02E8, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {3,4} } EndDependentFn () }) Method (_CRS, 0, NotSerialized) { CreateField (RSRC, 0x10, 0x20, IO1) CreateField (RSRC, 0x40, 0x20, IRQ1) CFG (0x02) Store (RIO (0x00), IO1) Store (RIRQ (), IRQ1) XCFG () Return (RSRC) } Method (_SRS, 1, NotSerialized) { CreateField (RSRC, 0x00, 0x40, IO1) CreateWordField (RSRC, 0x02, IOXX) CreateField (RSRC, 0x40, 0x20, IRQ1) CFG (0x02) Store (Arg0, RSRC) WIO1 (IO1) WIRQ (IRQ1) XCFG () Store (IOXX, Local0) If (LEqual (Local0, 0x03F8)) {} If (LEqual (Local0, 0x02F8)) {} If (LEqual (Local0, 0x0220)) {} If (LEqual (Local0, 0x0228)) {} If (LEqual (Local0, 0x0238)) {} If (LEqual (Local0, 0x02E8)) {} If (LEqual (Local0, 0x0338)) {} If (LEqual (Local0, 0x03E8)) {} } Method (_DIS, 0, NotSerialized) { DIS (0x02) } Method (_PS0, 0, NotSerialized) { PS0 (0x02) ENA (0x02) Store (0x00, _PSC) } Method (_PS3, 0, NotSerialized) { PS3 (0x02) Store (0x03, _PSC) } Method (_STA, 0, NotSerialized) { Return (STA (0x02)) } } Device (COM2) { Name (_HID, EisaId ("PNP0501")) Name (_UID, 0x02) Name (_PSC, 0x00) Name (NUM0, 0x01) Name (RSRC, ResourceTemplate () { IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {4} }) Method (_CRS, 0, NotSerialized) { CreateField (RSRC, 0x10, 0x20, IO1) CreateField (RSRC, 0x40, 0x20, IRQ1) CFG (0x03) Store (RIO (0x00), IO1) Store (RIRQ (), IRQ1) XCFG () Return (RSRC) } Method (_SRS, 1, NotSerialized) { CFG (0x03) CreateField (RSRC, 0x00, 0x40, IO1) CreateWordField (RSRC, 0x02, IOXX) CreateField (RSRC, 0x40, 0x20, IRQ1) Store (Arg0, RSRC) WIO1 (IO1) WIRQ (IRQ1) XCFG () Store (IOXX, Local0) If (LEqual (Local0, 0x03F8)) {} If (LEqual (Local0, 0x02F8)) {} If (LEqual (Local0, 0x0220)) {} If (LEqual (Local0, 0x0228)) {} If (LEqual (Local0, 0x0238)) {} If (LEqual (Local0, 0x02E8)) {} If (LEqual (Local0, 0x0338)) {} If (LEqual (Local0, 0x03E8)) {} } Method (_DIS, 0, NotSerialized) { DIS (0x03) } Method (_PS0, 0, NotSerialized) { PS0 (0x03) Store (0x00, _PSC) } Method (_PS3, 0, NotSerialized) { PS3 (0x03) Store (0x03, _PSC) } Method (_STA, 0, NotSerialized) { Return (STA (0x03)) } Name (_PRS, ResourceTemplate () { StartDependentFn (0x00, 0x01) { IO (Decode16, 0x02F8, 0x02F8, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {3,4,5,7,9,10,12} } StartDependentFn (0x00, 0x01) { IO (Decode16, 0x02E8, 0x02E8, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {3,4,5,7,9,10,12} } StartDependentFn (0x00, 0x01) { IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {3,4,5,7,9,10,12} } StartDependentFn (0x00, 0x01) { IO (Decode16, 0x03E8, 0x03E8, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {3,4,5,7,9,10,12} } EndDependentFn () }) } Device (LPT) { Name (_PSC, 0x00) Method (ECP, 0, NotSerialized) { CFG (0x01) And (MODE, 0x02, Local0) XCFG () If (LEqual (Local0, 0x00)) { Return (0x00) } Else { Return (0x01) } } Method (_HID, 0, NotSerialized) { If (ECP ()) { Return (0x0104D041) } Else { Return (0x0004D041) } } Method (_PRS, 0, NotSerialized) { If (ECP ()) { Return (ECPB) } Else { Return (EPPB) } } Name (ECPT, ResourceTemplate () { IO (Decode16, 0x0378, 0x0378, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {5} DMA (Compatibility, NotBusMaster, Transfer8) {1} IO (Decode16, 0x0778, 0x0778, 0x01, 0x08) }) Name (EPPT, ResourceTemplate () { IO (Decode16, 0x0378, 0x0378, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {7} IO (Decode16, 0x0778, 0x0778, 0x01, 0x08) }) Name (ECPB, ResourceTemplate () { StartDependentFn (0x00, 0x01) { IO (Decode16, 0x0378, 0x0378, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {5,7} DMA (Compatibility, NotBusMaster, Transfer8) {1,3} IO (Decode16, 0x0778, 0x0778, 0x01, 0x08) } StartDependentFn (0x00, 0x01) { IO (Decode16, 0x0278, 0x0278, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {5,7} DMA (Compatibility, NotBusMaster, Transfer8) {1,3} IO (Decode16, 0x0678, 0x0678, 0x01, 0x08) } StartDependentFn (0x00, 0x01) { IO (Decode16, 0x03BC, 0x03BC, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {5,7} DMA (Compatibility, NotBusMaster, Transfer8) {1,3} IO (Decode16, 0x07BC, 0x07BC, 0x01, 0x08) } EndDependentFn () }) Name (EPPB, ResourceTemplate () { StartDependentFn (0x00, 0x01) { IO (Decode16, 0x0378, 0x0378, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {5,7} IO (Decode16, 0x0778, 0x0778, 0x01, 0x08) } StartDependentFn (0x00, 0x01) { IO (Decode16, 0x0278, 0x0278, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {5,7} IO (Decode16, 0x0678, 0x0678, 0x01, 0x08) } StartDependentFn (0x00, 0x01) { IO (Decode16, 0x03BC, 0x03BC, 0x01, 0x08) IRQ (Edge, ActiveHigh, Exclusive) {5,7} IO (Decode16, 0x07BC, 0x07BC, 0x01, 0x08) } EndDependentFn () }) Method (_CRS, 0, NotSerialized) { If (ECP ()) { CreateField (ECPT, 0x10, 0x20, IO1) CreateField (ECPT, 0x40, 0x20, IRQ1) CreateField (ECPT, 0x60, 0x18, DMA1) CreateField (ECPT, 0x88, 0x20, IO2) CFG (0x01) Store (RIO (0x00), IO1) Store (RIRQ (), IRQ1) Store (RDMA (), DMA1) Store (RIO (0x0400), IO2) XCFG () Return (ECPT) } Else { CreateField (EPPT, 0x10, 0x20, IO3) CreateField (EPPT, 0x40, 0x20, IRQ3) CFG (0x01) Store (RIO (0x00), IO3) Store (RIRQ (), IRQ3) XCFG () Return (EPPT) } } Method (_SRS, 1, NotSerialized) { If (ECP ()) { CreateField (ECPT, 0x00, 0x40, IO1) CreateWordField (ECPT, 0x02, IOXX) CreateField (ECPT, 0x40, 0x20, IRQ1) CreateField (ECPT, 0x60, 0x18, DMA1) Store (Arg0, ECPT) CFG (0x01) WIO1 (IO1) WIRQ (IRQ1) WDMA (DMA1) Store (IOXX, Local0) } Else { CreateField (EPPT, 0x00, 0x40, IO2) CreateWordField (EPPT, 0x02, IOXY) CreateField (EPPT, 0x40, 0x20, IRQ2) Store (Arg0, EPPT) CFG (0x01) WIO1 (IO2) WIRQ (IRQ2) Store (IOXY, Local0) } XCFG () If (LEqual (Local0, 0x0378)) {} If (LEqual (Local0, 0x0278)) {} If (LEqual (Local0, 0x03BC)) {} } Method (_DIS, 0, NotSerialized) { DIS (0x01) } Method (_PS0, 0, NotSerialized) { PS0 (0x01) ENA (0x01) Store (0x00, _PSC) } Method (_PS3, 0, NotSerialized) { PS3 (0x01) Store (0x03, _PSC) } Method (_STA, 0, NotSerialized) { Return (STA (0x01)) } } Device (FDC0) { Name (_HID, EisaId ("PNP0700")) Name (_PSC, 0x00) Name (RSRC, ResourceTemplate () { IO (Decode16, 0x03F0, 0x03F0, 0x01, 0x06) IO (Decode16, 0x03F7, 0x03F7, 0x01, 0x01) IRQ (Edge, ActiveHigh, Exclusive) {6} DMA (Compatibility, NotBusMaster, Transfer8) {2} }) Name (_PRS, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x03F0, 0x03F0, 0x01, 0x06) IO (Decode16, 0x03F7, 0x03F7, 0x01, 0x01) IRQ (Edge, ActiveHigh, Exclusive) {6} DMA (Compatibility, NotBusMaster, Transfer8) {2} } StartDependentFn (0x00, 0x01) { IO (Decode16, 0x0370, 0x0370, 0x01, 0x06) IO (Decode16, 0x0377, 0x0377, 0x01, 0x01) IRQ (Edge, ActiveHigh, Exclusive) {6} DMA (Compatibility, NotBusMaster, Transfer8) {2} } EndDependentFn () }) Method (_CRS, 0, NotSerialized) { CreateField (RSRC, 0x10, 0x20, IO1) CreateField (RSRC, 0x50, 0x20, IO2) CreateWordField (RSRC, 0x0A, IOA) CreateWordField (RSRC, 0x0C, IOB) CreateField (RSRC, 0x80, 0x20, IRQ1) CreateField (RSRC, 0xA0, 0x18, DMA1) CFG (0x00) Store (RIO (0x00), IO1) Store (RIO (0x07), IO2) Store (RIRQ (), IRQ1) Store (RDMA (), DMA1) XCFG () Return (RSRC) } Method (_SRS, 1, NotSerialized) { CFG (0x00) CreateWordField (RSRC, 0x02, IOXX) CreateField (RSRC, 0x00, 0x40, IO1) CreateField (RSRC, 0x80, 0x20, IRQ1) CreateField (RSRC, 0xA0, 0x18, DMA1) Store (Arg0, RSRC) WIO1 (IO1) WIRQ (IRQ1) WDMA (DMA1) XCFG () Store (IOXX, Local0) If (LEqual (Local0, 0x03F0)) {} If (LEqual (Local0, 0x0370)) {} } Method (_DIS, 0, NotSerialized) { DIS (0x00) } Method (_PS3, 0, NotSerialized) { PS3 (0x00) Store (0x03, _PSC) } Method (_PS0, 0, NotSerialized) { PS0 (0x00) ENA (0x00) Store (0x00, _PSC) } Method (_STA, 0, NotSerialized) { Return (STA (0x00)) } } } } Device (TP2P) { Name (_ADR, 0x00060000) Name (_PRW, Package (0x02) { 0x08, 0x03 }) Method (_STA, 0, NotSerialized) { Return (0x0B) } Device (USB0) { Name (_ADR, 0x00) Name (_PRW, Package (0x02) { 0x0F, 0x03 }) } Device (USB1) { Name (_ADR, 0x00010000) Name (_PRW, Package (0x02) { 0x0F, 0x03 }) } Name (APIC, Package (0x10) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0xFFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0xFFFF, 0x02, 0x00, 0x12 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x13 }, Package (0x04) { 0x0001FFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x0001FFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0x0001FFFF, 0x02, 0x00, 0x12 }, Package (0x04) { 0x0001FFFF, 0x03, 0x00, 0x13 }, Package (0x04) { 0x0004FFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x0004FFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0x0004FFFF, 0x02, 0x00, 0x12 }, Package (0x04) { 0x0004FFFF, 0x03, 0x00, 0x13 }, Package (0x04) { 0x0005FFFF, 0x00, 0x00, 0x11 }, Package (0x04) { 0x0005FFFF, 0x01, 0x00, 0x12 }, Package (0x04) { 0x0005FFFF, 0x02, 0x00, 0x13 }, Package (0x04) { 0x0005FFFF, 0x03, 0x00, 0x10 } }) Name (PICM, Package (0x10) { Package (0x04) { 0xFFFF, 0x00, \_SB.PCI0.LNKA, 0x00 }, Package (0x04) { 0xFFFF, 0x01, \_SB.PCI0.LNKB, 0x00 }, Package (0x04) { 0xFFFF, 0x02, \_SB.PCI0.LNKC, 0x00 }, Package (0x04) { 0xFFFF, 0x03, \_SB.PCI0.LNKD, 0x00 }, Package (0x04) { 0x0001FFFF, 0x00, \_SB.PCI0.LNKA, 0x00 }, Package (0x04) { 0x0001FFFF, 0x01, \_SB.PCI0.LNKB, 0x00 }, Package (0x04) { 0x0001FFFF, 0x02, \_SB.PCI0.LNKC, 0x00 }, Package (0x04) { 0x0001FFFF, 0x03, \_SB.PCI0.LNKD, 0x00 }, Package (0x04) { 0x0004FFFF, 0x00, \_SB.PCI0.LNKA, 0x00 }, Package (0x04) { 0x0004FFFF, 0x01, \_SB.PCI0.LNKB, 0x00 }, Package (0x04) { 0x0004FFFF, 0x02, \_SB.PCI0.LNKC, 0x00 }, Package (0x04) { 0x0004FFFF, 0x03, \_SB.PCI0.LNKD, 0x00 }, Package (0x04) { 0x0005FFFF, 0x00, \_SB.PCI0.LNKB, 0x00 }, Package (0x04) { 0x0005FFFF, 0x01, \_SB.PCI0.LNKC, 0x00 }, Package (0x04) { 0x0005FFFF, 0x02, \_SB.PCI0.LNKD, 0x00 }, Package (0x04) { 0x0005FFFF, 0x03, \_SB.PCI0.LNKA, 0x00 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PICM) } Else { Return (APIC) } } } } Device (PCI1) { Name (VALD, 0x01) Name (EITE, 0x00) Name (VIDE, 0x00) Name (TMP1, Buffer (0x7E) {}) Name (VDMM, ResourceTemplate () { WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, 0x03B0, 0x03DF, 0x0000, 0x0030) }) Method (GETM, 1, NotSerialized) { Store (0x01, VALD) Store (Zero, EITE) Store (Zero, VIDE) Name (TMPB, ResourceTemplate () { WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000) }) CreateDWordField (TMPB, 0x08, TCMM) CreateDWordField (TMPB, 0x0E, TOMM) CreateDWordField (TMPB, 0x0A, TOPM) Name (SIZ, Zero) Store (Zero, Local3) Store (One, Local4) Name (WHLP, Ones) Name (ITER, Zero) While (WHLP) { Store (DerefOf (Index (\_SB.PCI0.PCIO, Local3)), Local0) Store (DerefOf (Index (Local0, Local4)), Local1) Decrement (Local4) Store (DerefOf (Index (Local0, Local4)), Local6) Increment (Local4) And (Local1, 0x07, Local7) And (Local1, 0xFFFFF000, Local1) If (LAnd (LEqual (Arg0, 0x00), LEqual (Local7, 0x00))) { Store (Zero, Local7) If (LNot (LLess (ITER, EITE))) { Store (Zero, Local5) And (Local6, 0x10, Local5) If (Local5) { Store (0x01, VIDE) } } } Else { If (LAnd (LEqual (Arg0, 0x01), LEqual (Local7, 0x01))) { Store (Zero, Local7) If (LNot (LLess (ITER, EITE))) { Store (Zero, Local5) And (Local6, 0x10, Local5) If (Local5) { Store (0x01, VIDE) } } } Else { Store (One, Local7) } } If (LOr (LLess (Local1, 0x1000), Local7)) { If (LAnd (LEqual (Local4, 0x03), LEqual (Local3, 0x02))) { Store (Zero, WHLP) Store (Zero, VALD) } Else { If (LLess (Local4, 0x05)) { Add (Local4, 0x02, Local4) } Else { Add (Local3, 0x01, Local3) Store (One, Local4) } Add (ITER, 0x01, ITER) } } Else { If (LNot (LLess (ITER, EITE))) { And (Local6, 0xFFFFF000, Local6) If (LEqual (Local6, 0x00)) { Store (0x0D00, Local6) Store (0x0D00, TCMM) } Else { Store (Local6, TCMM) } Or (Local1, 0x0FFF, Local1) Subtract (Local1, TCMM, TOMM) Add (TOMM, 0x01, TOMM) Store (Local1, TOPM) Store (0x01, VALD) Store (Zero, WHLP) Add (ITER, 0x01, ITER) Store (SizeOf (TMPB), SIZ) Subtract (SIZ, 0x02, SIZ) Multiply (SIZ, 0x08, SIZ) CreateField (TMPB, 0x00, SIZ, REFE) } Else { If (LAnd (LEqual (Local4, 0x03), LEqual (Local3, 0x02))) { Store (Zero, WHLP) Store (Zero, VALD) } Else { If (LLess (Local4, 0x05)) { Add (Local4, 0x02, Local4) } Else { Add (Local3, 0x01, Local3) Store (One, Local4) } Add (ITER, 0x01, ITER) } } } } Store (ITER, EITE) If (VALD) { If (VIDE) { Return (MYCT (REFE)) } Else { Return (REFE) } } Else { If (VIDE) { Return (CUTB (VDMM)) } Else { Return (CUTB (TMPB)) } } } Method (CUTB, 1, NotSerialized) { Store (Arg0, Local4) Store (SizeOf (Local4), Local5) Subtract (Local5, 0x02, Local5) Multiply (Local5, 0x08, Local5) CreateField (Local4, 0x00, Local5, RETB) Store (RETB, Local3) Return (Local3) } Method (MYCT, 1, NotSerialized) { Concatenate (Arg0, VDMM, Local4) Store (SizeOf (Local4), Local5) Subtract (Local5, 0x02, Local5) Multiply (Local5, 0x08, Local5) CreateField (Local4, 0x00, Local5, RETB) Store (RETB, Local3) Return (Local3) } Method (_HID, 0, NotSerialized) { If (LEqual (OSTB, Ones)) { OSTP () } If (LOr (LEqual (OSTB, 0x01), LEqual (OSTB, 0x02))) { Return (0x050AD041) } Else { Return (0x030AD041) } } Name (_ADR, 0x00190000) Name (_UID, 0x02) Name (_BBN, 0x08) Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, 0x0008, 0x00FF, 0x0000, 0x0100) }) If (LEqual (OSTB, Ones)) { OSTP () } If (LOr (LEqual (OSTB, 0x01), LEqual (OSTB, 0x02))) { Return (BUF0) } Else { Concatenate (\_SB.PCI1.GETM (0x01), BUF0, Local1) Concatenate (\_SB.PCI0.GMEM (0x01), Local1, Local3) Return (Local3) } } Device (G0PA) { Name (_ADR, 0x00010000) OperationRegion (GRV, PCI_Config, 0x08, 0x01) Field (GRV, ByteAcc, NoLock, Preserve) { GREV, 8 } OperationRegion (GB0, PCI_Config, 0x40, 0x04) Field (GB0, DWordAcc, NoLock, Preserve) { NIO0, 32 } Name (_PRW, Package (0x02) { 0x1E, 0x03 }) Method (_STA, 0, NotSerialized) { Return (0x0F) } Name (APIC, Package (0x04) { Package (0x04) { 0x0001FFFF, 0x00, 0x00, 0x19 }, Package (0x04) { 0x0001FFFF, 0x01, 0x00, 0x1A }, Package (0x04) { 0x0001FFFF, 0x02, 0x00, 0x1B }, Package (0x04) { 0x0001FFFF, 0x03, 0x00, 0x18 } }) Name (PICM, Package (0x04) { Package (0x04) { 0x0001FFFF, 0x00, \_SB.PCI0.LNKB, 0x00 }, Package (0x04) { 0x0001FFFF, 0x01, \_SB.PCI0.LNKC, 0x00 }, Package (0x04) { 0x0001FFFF, 0x02, \_SB.PCI0.LNKD, 0x00 }, Package (0x04) { 0x0001FFFF, 0x03, \_SB.PCI0.LNKA, 0x00 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PICM) } Else { Return (APIC) } } } Device (G0PB) { Name (_ADR, 0x00020000) OperationRegion (GB1, PCI_Config, 0x40, 0x04) Field (GB1, DWordAcc, NoLock, Preserve) { NIO1, 32 } Name (_PRW, Package (0x02) { 0x11, 0x03 }) Method (_STA, 0, NotSerialized) { Return (0x0F) } Name (APIC, Package (0x04) { Package (0x04) { 0x0001FFFF, 0x00, 0x00, 0x1D }, Package (0x04) { 0x0001FFFF, 0x01, 0x00, 0x1E }, Package (0x04) { 0x0001FFFF, 0x02, 0x00, 0x1F }, Package (0x04) { 0x0001FFFF, 0x03, 0x00, 0x1C } }) Name (PICM, Package (0x04) { Package (0x04) { 0x0001FFFF, 0x00, \_SB.PCI0.LNKB, 0x00 }, Package (0x04) { 0x0001FFFF, 0x01, \_SB.PCI0.LNKC, 0x00 }, Package (0x04) { 0x0001FFFF, 0x02, \_SB.PCI0.LNKD, 0x00 }, Package (0x04) { 0x0001FFFF, 0x03, \_SB.PCI0.LNKA, 0x00 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PICM) } Else { Return (APIC) } } } Device (G1PA) { Name (_ADR, 0x00030000) OperationRegion (GB2, PCI_Config, 0x40, 0x04) Field (GB2, DWordAcc, NoLock, Preserve) { NIO2, 32 } Method (_STA, 0, NotSerialized) { Return (0x0D) } } Device (G1PB) { Name (_ADR, 0x00040000) OperationRegion (GB2, PCI_Config, 0x40, 0x04) Field (GB2, DWordAcc, NoLock, Preserve) { NIO3, 32 } Method (_S1D, 0, NotSerialized) { Return (0x00) } Name (_PRW, Package (0x02) { 0x22, 0x03 }) Method (_STA, 0, NotSerialized) { Return (0x0F) } Name (APIC, Package (0x08) { Package (0x04) { 0x0001FFFF, 0x00, 0x00, 0x25 }, Package (0x04) { 0x0001FFFF, 0x01, 0x00, 0x26 }, Package (0x04) { 0x0001FFFF, 0x02, 0x00, 0x27 }, Package (0x04) { 0x0001FFFF, 0x03, 0x00, 0x24 }, Package (0x04) { 0x0002FFFF, 0x00, 0x00, 0x26 }, Package (0x04) { 0x0002FFFF, 0x01, 0x00, 0x27 }, Package (0x04) { 0x0002FFFF, 0x02, 0x00, 0x24 }, Package (0x04) { 0x0002FFFF, 0x03, 0x00, 0x25 } }) Name (PICM, Package (0x08) { Package (0x04) { 0x0001FFFF, 0x00, \_SB.PCI0.LNKB, 0x00 }, Package (0x04) { 0x0001FFFF, 0x01, \_SB.PCI0.LNKC, 0x00 }, Package (0x04) { 0x0001FFFF, 0x02, \_SB.PCI0.LNKD, 0x00 }, Package (0x04) { 0x0001FFFF, 0x03, \_SB.PCI0.LNKA, 0x00 }, Package (0x04) { 0x0002FFFF, 0x00, \_SB.PCI0.LNKC, 0x00 }, Package (0x04) { 0x0002FFFF, 0x01, \_SB.PCI0.LNKD, 0x00 }, Package (0x04) { 0x0002FFFF, 0x02, \_SB.PCI0.LNKA, 0x00 }, Package (0x04) { 0x0002FFFF, 0x03, \_SB.PCI0.LNKB, 0x00 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PICM) } Else { Return (APIC) } } } Name (APIC, Package (0x02) { Package (0x04) { 0x0001FFFF, 0x00, 0x00, 0x18 }, Package (0x04) { 0x0004FFFF, 0x00, 0x00, 0x24 } }) Name (PICM, Package (0x02) { Package (0x04) { 0x0001FFFF, 0x00, \_SB.PCI0.LNKA, 0x00 }, Package (0x04) { 0x0004FFFF, 0x00, \_SB.PCI0.LNKA, 0x00 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PICM) } Else { Return (APIC) } } } } Scope (_TZ) { } Scope (_SI) { } Scope (_GPE) { Method (_L08, 0, NotSerialized) { Notify (\_SB.PCI0, 0x02) } Method (_L0F, 0, NotSerialized) { Notify (\_SB.PCI0.TP2P.USB0, 0x02) } Method (_L1E, 0, NotSerialized) { Notify (\_SB.PCI1.G0PA, 0x02) } Method (_L22, 0, NotSerialized) { Notify (\_SB.PCI1.G1PB, 0x02) } Method (_L11, 0, NotSerialized) { Notify (\_SB.PCI1.G0PB, 0x02) } } Method (_PTS, 1, NotSerialized) { Or (Arg0, 0xF0, Local0) Store (Local0, DBG1) If (LEqual (Arg0, 0x03)) { Or (PM32, 0x01, PM32) } } Method (_WAK, 1, NotSerialized) { Or (Arg0, 0xE0, Local0) Store (Local0, DBG1) Notify (\_SB.PWRB, 0x02) If (LEqual (Arg0, 0x03)) { Store (Local0, PM30) Store (DBG1, Local0) Store (PM30, Local0) } } Name (PICF, 0x00) Method (_PIC, 1, NotSerialized) { Store (Arg0, PICF) If (PICF) { If (LNot (LGreater (\_SB.PCI1.G0PA.GREV, 0x11))) { And (\_SB.PCI1.G1PA.NIO2, 0xFFFFFFFE, \_SB.PCI1.G1PA.NIO2) Store (\_SB.PCI1.G1PA.NIO2, DBG1) And (\_SB.PCI1.G1PB.NIO3, 0xFFFFFFFE, \_SB.PCI1.G1PB.NIO3) Store (\_SB.PCI1.G1PB.NIO3, DBG1) And (\_SB.PCI1.G0PB.NIO1, 0xFFFFFFFE, \_SB.PCI1.G0PB.NIO1) Store (\_SB.PCI1.G0PB.NIO1, DBG1) And (\_SB.PCI1.G0PA.NIO0, 0xFFFFFFFE, \_SB.PCI1.G0PA.NIO0) Store (\_SB.PCI1.G0PA.NIO0, DBG1) } } } OperationRegion (DEBG, SystemIO, 0x80, 0x01) Field (DEBG, ByteAcc, Lock, Preserve) { DBG1, 8 } OperationRegion (EXTM, SystemMemory, 0x000FF83C, 0x04) Field (EXTM, WordAcc, Lock, Preserve) { AMEM, 32 } OperationRegion (VGAM, SystemMemory, 0x000C0002, 0x01) Field (VGAM, ByteAcc, Lock, Preserve) { VGA1, 8 } OperationRegion (GRAM, SystemMemory, 0x0400, 0x0100) Field (GRAM, ByteAcc, Lock, Preserve) { Offset (0x10), FLG0, 8 } OperationRegion (Z007, SystemIO, 0x8000, 0x02) Field (Z007, ByteAcc, NoLock, Preserve) { PM00, 8, PM01, 8 } OperationRegion (Z008, SystemIO, 0x8002, 0x02) Field (Z008, ByteAcc, NoLock, Preserve) { PM02, 8, PM03, 8 } OperationRegion (Z009, SystemIO, 0x8004, 0x02) Field (Z009, ByteAcc, NoLock, Preserve) { PM04, 8, PM05, 8 } OperationRegion (Z00A, SystemIO, 0x8016, 0x02) Field (Z00A, ByteAcc, NoLock, Preserve) { PM16, 8, PM17, 8 } OperationRegion (Z00B, SystemIO, 0x8020, 0x02) Field (Z00B, ByteAcc, NoLock, Preserve) { PM20, 8, PM21, 8 } OperationRegion (Z00C, SystemIO, 0x8022, 0x02) Field (Z00C, ByteAcc, NoLock, Preserve) { PM22, 8, PM23, 8 } OperationRegion (Z00D, SystemIO, 0x8024, 0x01) Field (Z008, ByteAcc, NoLock, Preserve) { PM24, 8 } OperationRegion (Z00E, SystemIO, 0x8025, 0x01) Field (Z008, ByteAcc, NoLock, Preserve) { PM25, 8 } OperationRegion (Z00F, SystemIO, 0x8026, 0x02) Field (Z00F, ByteAcc, NoLock, Preserve) { PM26, 8, PM27, 8 } OperationRegion (Z00G, SystemIO, 0x8028, 0x02) Field (Z00G, ByteAcc, NoLock, Preserve) { PM28, 8, PM29, 8 } OperationRegion (Z00H, SystemIO, 0x802A, 0x02) Field (Z00H, ByteAcc, NoLock, Preserve) { PM2A, 8, PM2B, 8 } OperationRegion (Z00I, SystemIO, 0x802C, 0x02) Field (Z00I, ByteAcc, NoLock, Preserve) { PM2C, 8, PM2D, 8 } OperationRegion (Z00J, SystemIO, 0x8030, 0x01) Field (Z00J, ByteAcc, NoLock, Preserve) { PM30, 8 } OperationRegion (Z00K, SystemIO, 0x8032, 0x01) Field (Z00K, ByteAcc, NoLock, Preserve) { PM32, 8 } OperationRegion (DMSR, SystemIO, 0x80A0, 0x02) Field (DMSR, ByteAcc, NoLock, Preserve) { PMA0, 8, PMA1, 8 } OperationRegion (Z00L, SystemIO, 0x80A8, 0x02) Field (Z00L, ByteAcc, NoLock, Preserve) { PMA8, 8, PMA9, 8 } OperationRegion (Z00M, SystemIO, 0x80AC, 0x02) Field (Z00M, ByteAcc, NoLock, Preserve) { PMAC, 8, PMAD, 8 } OperationRegion (Z00N, SystemIO, 0x21, 0x01) Field (Z00N, ByteAcc, NoLock, Preserve) { Z00O, 8 } OperationRegion (Z00P, SystemIO, 0xA1, 0x01) Field (Z00P, ByteAcc, NoLock, Preserve) { Z00Q, 8 } Scope (\_SB.PCI0) { Name (PCIO, Package (0x03) { Package (0x06) { 0x00000023, 0x00001020, 0x00002013, 0x00002011, 0x00000000, 0x00000000 }, Package (0x06) { 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 }, Package (0x06) { 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 } }) } Scope (\_SB.PCI0) { Name (MMIO, Package (0x03) { Package (0x06) { 0x00FA0003, 0x00FA3E20, 0x00000000, 0x00000000, 0x00FA3F03, 0x00FB3F11 }, Package (0x06) { 0x00FC0003, 0x00FDFF11, 0x00FEC003, 0x00FEC020, 0x00000A03, 0x00000B11 }, Package (0x06) { 0x00FED003, 0x00FED020, 0x00000000, 0x00000000, 0x00000000, 0x00000000 } }) } }