/* * Intel ACPI Component Architecture * AML Disassembler version 20091214 * * Disassembly of ./dsdt.aml, Sun Oct 24 15:37:22 2010 * * * Original Table Header: * Signature "DSDT" * Length 0x00004770 (18288) * Revision 0x01 **** ACPI 1.0, no 64-bit math support * Checksum 0x87 * OEM ID "GBT " * OEM Table ID "GBTUACPI" * OEM Revision 0x00001000 (4096) * Compiler ID "INTL" * Compiler Version 0x20091214 (537465364) */ DefinitionBlock ("./dsdt.aml", "DSDT", 1, "GBT ", "GBTUACPI", 0x00001000) { Method (DTGP, 5, NotSerialized) { If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, /* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B })) { If (LEqual (Arg1, One)) { If (LEqual (Arg2, Zero)) { Store (Buffer (One) { 0x03 }, Arg4) Return (One) } If (LEqual (Arg2, One)) { Return (One) } } } Store (Buffer (One) { 0x00 }, Arg4) Return (Zero) } Scope (_PR) { Processor (CPU0, 0x00, 0x00000410, 0x06) {} Processor (CPU1, 0x01, 0x00000410, 0x06) {} Processor (CPU2, 0x02, 0x00000410, 0x06) {} Processor (CPU3, 0x03, 0x00000410, 0x06) {} } Name (_S0, Package (0x04) { Zero, Zero, Zero, Zero }) Name (SS1, Package (0x04) { One, Zero, Zero, Zero }) Name (_S3, Package (0x04) { 0x05, Zero, Zero, Zero }) Name (_S4, Package (0x04) { 0x06, Zero, Zero, Zero }) Name (_S5, Package (0x04) { 0x07, Zero, Zero, Zero }) Name (FLAG, Zero) Name (STAT, Zero) OperationRegion (SMOD, SystemMemory, 0x000FF840, One) Field (SMOD, ByteAcc, NoLock, Preserve) { , 7, SUSF, 1 } OperationRegion (DEBG, SystemIO, 0x80, One) Field (DEBG, ByteAcc, NoLock, Preserve) { DBG1, 8 } OperationRegion (RCRB, SystemMemory, 0xFED1C000, 0x4000) Field (RCRB, DWordAcc, Lock, Preserve) { Offset (0x3404), , 7, HPTF, 1 } OperationRegion (ELKM, SystemMemory, 0x000FFFEA, One) Field (ELKM, ByteAcc, NoLock, Preserve) { , 1, , 1, ELSO, 1, , 1, , 1, , 1, , 1 } OperationRegion (EXTM, SystemMemory, 0x000FF830, 0x10) Field (EXTM, WordAcc, NoLock, Preserve) { ROM1, 16, RMS1, 16, ROM2, 16, RMS2, 16, ROM3, 16, RMS3, 16, AMEM, 32 } OperationRegion (SMIC, SystemIO, 0xB2, One) Field (SMIC, ByteAcc, NoLock, Preserve) { SCP, 8 } OperationRegion (GP2C, SystemIO, 0x042C, 0x02) Field (GP2C, ByteAcc, NoLock, Preserve) { G2C1, 8, G2C2, 8 } OperationRegion (GBLE, SystemIO, 0x0421, One) Field (GBLE, ByteAcc, NoLock, Preserve) { ESMI, 8 } OperationRegion (APMP, SystemIO, 0xB2, 0x02) Field (APMP, ByteAcc, NoLock, Preserve) { APMC, 8, APMD, 8 } OperationRegion (AGPS, SystemIO, 0x0438, 0x04) Field (AGPS, ByteAcc, NoLock, Preserve) { GPSE, 16, GPSS, 16 } OperationRegion (GPCN, SystemIO, 0x0442, One) Field (GPCN, ByteAcc, NoLock, Preserve) { , 1, SWGC, 1, Offset (0x01) } Name (OSFX, One) Name (OSFL, One) Method (STRC, 2, NotSerialized) { If (LNotEqual (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 (LNotEqual (DerefOf (Index (BUF0, Local0)), DerefOf (Index ( BUF1, Local0)))) { Return (Zero) } } Return (One) } OperationRegion (INFO, SystemMemory, 0x000FF840, One) Field (INFO, ByteAcc, NoLock, Preserve) { KBDI, 1, RTCW, 1, PS2F, 1, IRFL, 2, DISE, 1, SSHU, 1 } Scope (\) { Name (PICF, Zero) Method (_PIC, 1, NotSerialized) { Store (Arg0, PICF) } } Method (_PTS, 1, NotSerialized) { Or (Arg0, 0xF0, Local0) Store (Local0, DBG1) OSTP () If (LEqual (Arg0, One)) {} If (LEqual (Arg0, 0x03)) {} If (LEqual (Arg0, 0x05)) { Store (ESMI, Local0) And (Local0, 0xFB, Local0) Store (Local0, ESMI) Store (0x99, SMIP) } If (LEqual (Arg0, 0x04)) { If (LNot (PICF)) { Sleep (0x64) } } } Method (_WAK, 1, NotSerialized) { Store (0xFF, DBG1) If (LEqual (Arg0, 0x03)) { Store (0x8F, SCP) } If (LEqual (Arg0, 0x04)) { If (LEqual (OSFL, Zero)) { If (LEqual (OSFX, 0x03)) { Store (0x59, SMIP) } Else { Store (0x58, SMIP) } } If (LEqual (OSFL, One)) { Store (0x56, SMIP) } If (LEqual (OSFL, 0x02)) { Store (0x57, SMIP) } If (LEqual (OSFX, 0x03)) { Store (0x59, SMIP) } } If (LEqual (Arg0, One)) {} If (OSFL) { Notify (\_SB.PWRB, 0x02) } Else { If (LEqual (RTCW, Zero)) { Notify (\_SB.PWRB, 0x02) } } Notify (\_SB.PCI0.UHC1, Zero) Notify (\_SB.PCI0.UHC2, Zero) Notify (\_SB.PCI0.UHC3, Zero) Notify (\_SB.PCI0.UHC4, Zero) Notify (\_SB.PCI0.UHC5, Zero) Notify (\_SB.PCI0.UHC6, Zero) Return (Package (0x02) { Zero, Zero }) } Scope (_SI) { Method (_MSG, 1, NotSerialized) { Store ("Local0", Local0) } Method (_SST, 1, NotSerialized) { Store ("Local0", Local0) } } Scope (_GPE) { Method (_L08, 0, NotSerialized) { Notify (\_SB.PCI0.PX40.UAR1, 0x02) } Method (_L03, 0, NotSerialized) { Notify (\_SB.PCI0.UHC1, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L04, 0, NotSerialized) { Notify (\_SB.PCI0.UHC2, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L0C, 0, NotSerialized) { Notify (\_SB.PCI0.UHC3, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L0E, 0, NotSerialized) { Notify (\_SB.PCI0.UHC4, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L05, 0, NotSerialized) { Notify (\_SB.PCI0.UHC5, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L20, 0, NotSerialized) { Notify (\_SB.PCI0.UHC6, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L0D, 0, NotSerialized) { If (\_SB.PCI0.EHC1.PMES) { Store (One, \_SB.PCI0.EHC1.PMES) Notify (\_SB.PCI0.EHC1, 0x02) Notify (\_SB.PWRB, 0x02) } If (\_SB.PCI0.EHC2.PMES) { Store (One, \_SB.PCI0.EHC2.PMES) Notify (\_SB.PCI0.EHC2, 0x02) Notify (\_SB.PWRB, 0x02) } Notify (\_SB.PWRB, 0x02) Notify (\_SB.PCI0.HDEF, 0x02) } Method (_L02, 0, NotSerialized) { Store (Zero, SWGC) ShiftLeft (One, 0x0C, Local0) Store (0x02, Local2) Store (One, Local3) Store (Local3, Local4) While (LAnd (LNotEqual (Local4, Zero), LNotEqual (Local2, Zero))) { Sleep (One) Decrement (Local2) And (GPSS, Local0, Local1) If (LNotEqual (Local1, Local0)) { Decrement (Local4) } Else { Store (Local3, Local4) } } And (GPSS, Local0, GPSS) Or (GPSE, Local0, GPSE) } Method (_L0B, 0, NotSerialized) { Notify (\_SB.PCI0.HUB0, 0x02) } Method (_L09, 0, NotSerialized) { Notify (\_SB.PCI0.PEX0, 0x02) Notify (\_SB.PCI0.PEX1, 0x02) Notify (\_SB.PCI0.PEX2, 0x02) Notify (\_SB.PCI0.PEX3, 0x02) Notify (\_SB.PCI0.PEX4, 0x02) Notify (\_SB.PCI0.PEX5, 0x02) } } Scope (_SB) { Device (PWRB) { Name (_CID, EisaId ("PNP0C0C")) Name (_UID, 0xAA) Name (_STA, 0x0B) } Device (PCI0) { Name (_HID, EisaId ("PNP0A03")) Name (_ADR, Zero) Name (_UID, One) Name (_BBN, Zero) Method (_S3D, 0, NotSerialized) { If (LEqual (OSFL, 0x02)) { Return (0x02) } Else { Return (0x03) } } Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { WordBusNumber (ResourceConsumer, MinNotFixed, MaxNotFixed, PosDecode, 0x0000, // Granularity 0x0000, // Range Minimum 0x003F, // Range Maximum 0x0000, // Translation Offset 0x0040, // Length ,, ) IO (Decode16, 0x0CF8, // Range Minimum 0x0CF8, // Range Maximum 0x01, // Alignment 0x08, // Length ) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0CF7, // Range Maximum 0x0000, // Translation Offset 0x0CF8, // Length ,, , TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0D00, // Range Minimum 0xFFFF, // Range Maximum 0x0000, // Translation Offset 0xF300, // Length ,, , TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000A0000, // Range Minimum 0x000BFFFF, // Range Maximum 0x00000000, // Translation Offset 0x00020000, // Length ,, , AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x000C0000, // Range Minimum 0x000DFFFF, // Range Maximum 0x00000000, // Translation Offset 0x00020000, // Length ,, , AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x00100000, // Range Minimum 0xFEBFFFFF, // Range Maximum 0x00000000, // Translation Offset 0xFFF00000, // Length ,, _Y00, AddressRangeMemory, TypeStatic) }) CreateDWordField (BUF0, \_SB.PCI0._CRS._Y00._MIN, TCMM) CreateDWordField (BUF0, \_SB.PCI0._CRS._Y00._LEN, TOMM) Add (AMEM, 0x00010000, TCMM) Add (TCMM, 0x00010000, TCMM) Subtract (0xFEC00000, TCMM, TOMM) Return (BUF0) } Name (PICM, Package (0x1A) { Package (0x04) { 0x001BFFFF, Zero, LNK0, Zero }, 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) { 0x0006FFFF, Zero, LNKA, Zero }, Package (0x04) { 0x0006FFFF, One, LNKB, Zero }, Package (0x04) { 0x0006FFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x0006FFFF, 0x03, LNKD, Zero }, Package (0x04) { 0x001CFFFF, Zero, LNKA, Zero }, Package (0x04) { 0x001CFFFF, One, LNKB, Zero }, Package (0x04) { 0x001CFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001CFFFF, 0x03, LNKD, Zero }, Package (0x04) { 0x001CFFFF, Zero, LNKA, Zero }, Package (0x04) { 0x001CFFFF, One, LNKB, Zero }, Package (0x04) { 0x001DFFFF, Zero, LNK1, Zero }, Package (0x04) { 0x001DFFFF, One, LNKD, Zero }, Package (0x04) { 0x001DFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001DFFFF, 0x03, LNKA, Zero }, Package (0x04) { 0x001FFFFF, One, LNKD, Zero }, Package (0x04) { 0x001FFFFF, One, LNKD, Zero }, Package (0x04) { 0x001FFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001AFFFF, Zero, LNKA, Zero }, Package (0x04) { 0x001AFFFF, One, LNKF, Zero }, Package (0x04) { 0x001AFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x001AFFFF, 0x02, LNKC, Zero } }) Name (APIC, Package (0x1A) { Package (0x04) { 0x001BFFFF, Zero, Zero, 0x16 }, 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) { 0x0006FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0006FFFF, One, Zero, 0x11 }, Package (0x04) { 0x0006FFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x0006FFFF, 0x03, Zero, 0x13 }, Package (0x04) { 0x001CFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x001CFFFF, One, Zero, 0x11 }, Package (0x04) { 0x001CFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001CFFFF, 0x03, Zero, 0x13 }, Package (0x04) { 0x001CFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x001CFFFF, One, Zero, 0x11 }, Package (0x04) { 0x001DFFFF, Zero, Zero, 0x17 }, Package (0x04) { 0x001DFFFF, One, Zero, 0x13 }, Package (0x04) { 0x001DFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001DFFFF, 0x03, Zero, 0x10 }, Package (0x04) { 0x001FFFFF, One, Zero, 0x13 }, Package (0x04) { 0x001FFFFF, One, Zero, 0x13 }, Package (0x04) { 0x001FFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001AFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x001AFFFF, One, Zero, 0x15 }, Package (0x04) { 0x001AFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001AFFFF, 0x02, Zero, 0x12 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PICM) } Else { Return (APIC) } } Device (PEX0) { Name (_ADR, 0x001C0000) Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x09, 0x05 }) } Name (PIC0, 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 (API0, 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 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PIC0) } Else { Return (API0) } } } Device (PEX1) { Name (_ADR, 0x001C0001) Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x09, 0x05 }) } Name (PIC1, 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 (API1, 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 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PIC1) } Else { Return (API1) } } } Device (PEX2) { Name (_ADR, 0x001C0002) Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x09, 0x05 }) } Name (PIC2, 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 (API2, 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 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PIC2) } Else { Return (API2) } } } Device (PEX3) { Name (_ADR, 0x001C0003) Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x09, 0x05 }) } Name (PIC3, 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 (API3, 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 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PIC3) } Else { Return (API3) } } } Device (PEX4) { Name (_ADR, 0x001C0004) Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x09, 0x05 }) } Name (PIC4, 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 (API4, 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 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PIC4) } Else { Return (API4) } } } Device (PEX5) { Name (_ADR, 0x001C0005) Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x09, 0x05 }) } Name (PIC5, 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 (API5, 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 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PIC5) } Else { Return (API5) } } } Device (PEX3.JMB0) { Name (_ADR, Zero) Name (PIOT, Package (0x05) { 0x0258, 0x0186, 0x014A, 0xB4, 0x78 }) Name (MDMA, Package (0x03) { 0x01E0, 0x96, 0x78 }) Name (UDMA, Package (0x07) { 0x78, 0x50, 0x3C, 0x28, 0x1E, 0x14, 0x0F }) 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 (LNotEqual (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 (LNotEqual (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 (LNotEqual (Local0, Ones), LNotEqual (Local0, Zero))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PMIO) } If (LAnd (LNotEqual (Local1, Ones), LNotEqual (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 (LNotEqual (Local2, Ones), LNotEqual (Local2, Zero))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PSIO) } If (LAnd (LNotEqual (Local3, Ones), LNotEqual (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 (LNotEqual (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 (LNotEqual (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 (LNotEqual (Local0, Ones), LNotEqual (Local0, Zero))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), SMIO) } If (LAnd (LNotEqual (Local1, Ones), LNotEqual (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 (LNotEqual (Local2, Ones), LNotEqual (Local2, Zero))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), SSIO) } If (LAnd (LNotEqual (Local3, Ones), LNotEqual (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 (PEX3.JMB1) { Name (_ADR, One) Name (PIOT, Package (0x05) { 0x0258, 0x0186, 0x014A, 0xB4, 0x78 }) Name (MDMA, Package (0x03) { 0x01E0, 0x96, 0x78 }) Name (UDMA, Package (0x07) { 0x78, 0x50, 0x3C, 0x28, 0x1E, 0x14, 0x0F }) 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 (LNotEqual (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 (LNotEqual (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 (LNotEqual (Local0, Ones), LNotEqual (Local0, Zero))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PMIO) } If (LAnd (LNotEqual (Local1, Ones), LNotEqual (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 (LNotEqual (Local2, Ones), LNotEqual (Local2, Zero))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PSIO) } If (LAnd (LNotEqual (Local3, Ones), LNotEqual (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 (LNotEqual (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 (LNotEqual (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 (LNotEqual (Local0, Ones), LNotEqual (Local0, Zero))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), SMIO) } If (LAnd (LNotEqual (Local1, Ones), LNotEqual (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 (LNotEqual (Local2, Ones), LNotEqual (Local2, Zero))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), SSIO) } If (LAnd (LNotEqual (Local3, Ones), LNotEqual (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 (HUB0) { Name (_ADR, 0x001E0000) Method (_STA, 0, NotSerialized) { Return (0x0F) } Name (PICM, Package (0x0C) { Package (0x04) { 0xFFFF, Zero, LNKE, Zero }, Package (0x04) { 0xFFFF, One, LNKD, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKC, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKA, Zero }, Package (0x04) { 0x0001FFFF, Zero, LNKD, Zero }, Package (0x04) { 0x0001FFFF, One, LNKC, Zero }, Package (0x04) { 0x0001FFFF, 0x02, LNKA, Zero }, Package (0x04) { 0x0001FFFF, 0x03, LNKE, Zero }, Package (0x04) { 0x0006FFFF, Zero, LNKC, Zero }, Package (0x04) { 0x0006FFFF, One, LNKC, Zero }, Package (0x04) { 0x0006FFFF, 0x02, LNKC, Zero }, Package (0x04) { 0x0006FFFF, 0x03, LNKC, Zero } }) Name (APIC, Package (0x0C) { Package (0x04) { 0xFFFF, Zero, Zero, 0x14 }, Package (0x04) { 0xFFFF, One, Zero, 0x13 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x10 }, Package (0x04) { 0x0001FFFF, Zero, Zero, 0x13 }, Package (0x04) { 0x0001FFFF, One, Zero, 0x12 }, Package (0x04) { 0x0001FFFF, 0x02, Zero, 0x10 }, Package (0x04) { 0x0001FFFF, 0x03, Zero, 0x14 }, Package (0x04) { 0x0006FFFF, Zero, Zero, 0x12 }, Package (0x04) { 0x0006FFFF, One, Zero, 0x12 }, Package (0x04) { 0x0006FFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x0006FFFF, 0x03, Zero, 0x12 } }) Method (_PRT, 0, NotSerialized) { If (LNot (PICF)) { Return (PICM) } Else { Return (APIC) } } Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x0B, 0x05 }) } } Device (PX40) { Name (_ADR, 0x001F0000) OperationRegion (PREV, PCI_Config, 0x08, One) Scope (\) { Field (\_SB.PCI0.PX40.PREV, ByteAcc, NoLock, Preserve) { REV0, 8 } } OperationRegion (PIRQ, PCI_Config, 0x60, 0x04) Scope (\) { Field (\_SB.PCI0.PX40.PIRQ, ByteAcc, NoLock, Preserve) { PIRA, 8, PIRB, 8, PIRC, 8, PIRD, 8 } } OperationRegion (PIR2, PCI_Config, 0x68, 0x04) Scope (\) { Field (\_SB.PCI0.PX40.PIR2, ByteAcc, NoLock, Preserve) { PIRE, 8, PIRF, 8, PIRG, 8, PIRH, 8 } } OperationRegion (LPIO, PCI_Config, 0x80, 0x0E) Scope (\) { Field (\_SB.PCI0.PX40.LPIO, ByteAcc, NoLock, Preserve) { UAIO, 8, PRIO, 8, LPE1, 8, LPE2, 8, GN1L, 8, GN1H, 8, GN2L, 8, GN2H, 8 } Method (DISD, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { And (LPE1, 0xFE, LPE1) } If (LEqual (Arg0, One)) { And (LPE1, 0xFD, LPE1) } If (LEqual (Arg0, 0x02)) { And (LPE1, 0xFB, LPE1) } If (LEqual (Arg0, 0x03)) { And (LPE1, 0xF7, LPE1) } If (LEqual (Arg0, 0x04)) { And (LPE2, 0xFC, LPE2) } If (LEqual (Arg0, 0x05)) { And (LPE1, 0xDF, LPE1) } If (LEqual (Arg0, 0x06)) { And (GN2L, 0xFE, GN2L) } } Method (CKIO, 2, NotSerialized) { If (LEqual (Arg1, Zero)) { Or (LPE1, One, LPE1) And (UAIO, 0xF0, Local0) If (LEqual (Arg0, 0x03F8)) { Or (Local0, Zero, UAIO) } If (LEqual (Arg0, 0x02F8)) { Or (Local0, One, UAIO) } If (LEqual (Arg0, 0x02E8)) { Or (Local0, 0x05, UAIO) } If (LEqual (Arg0, 0x03E8)) { Or (Local0, 0x07, UAIO) } } If (LEqual (Arg1, One)) { Or (LPE1, 0x02, LPE1) And (UAIO, 0x0F, Local0) If (LEqual (Arg0, 0x03F8)) { Or (Local0, Zero, UAIO) } If (LEqual (Arg0, 0x02F8)) { Or (Local0, 0x10, UAIO) } If (LEqual (Arg0, 0x02E8)) { Or (Local0, 0x50, UAIO) } If (LEqual (Arg0, 0x03E8)) { Or (Local0, 0x70, UAIO) } } If (LEqual (Arg1, 0x02)) { Or (LPE1, 0x04, LPE1) And (PRIO, 0xFC, Local0) If (LEqual (Arg0, 0x0378)) { Or (Local0, Zero, PRIO) } If (LEqual (Arg0, 0x0278)) { Or (Local0, One, PRIO) } If (LEqual (Arg0, 0x03BC)) { Or (Local0, 0x02, PRIO) } } If (LEqual (Arg1, 0x03)) { Or (LPE1, 0x08, LPE1) } If (LEqual (Arg1, 0x04)) { If (LEqual (Arg0, 0x0201)) { Or (LPE2, One, LPE2) } If (LEqual (Arg0, 0x0209)) { Or (LPE2, 0x02, LPE2) } } If (LEqual (Arg1, 0x06)) { If (LNotEqual (Arg0, 0xFFFF)) { And (Arg0, 0xFF, Local0) Or (Local0, One, GN2L) ShiftRight (Arg0, 0x08, GN2H) } Else { Store (Zero, GN2H) Store (Zero, GN2L) } } } } Scope (\) { Method (SLDM, 2, NotSerialized) { } } Scope (\) { OperationRegion (SCPP, SystemIO, 0xB2, One) Field (SCPP, ByteAcc, NoLock, Preserve) { SMIP, 8 } } Method (^_INI, 0, NotSerialized) { If (STRC (_OS, "Microsoft Windows")) { Store (0x56, SMIP) } Else { If (STRC (_OS, "Microsoft Windows NT")) { If (CondRefOf (\_OSI, Local0)) { If (_OSI ("Windows 2001")) { Store (0x59, SMIP) Store (Zero, OSFL) Store (0x03, OSFX) } } Else { Store (0x58, SMIP) Store (Zero, OSFL) } } Else { Store (0x57, SMIP) Store (0x02, OSFL) } } } Scope (\) { Method (OSTP, 0, NotSerialized) { If (LEqual (OSFL, One)) { Store (0x56, SMIP) } If (LEqual (OSFL, 0x02)) { Store (0x57, SMIP) } If (LEqual (OSFL, Zero)) { If (LEqual (OSFX, 0x03)) { Store (0x59, SMIP) } Else { Store (0x58, SMIP) } } If (LEqual (OSFX, 0x03)) { Store (0x59, SMIP) } } } Device (SYSR) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, One) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0010, // Range Minimum 0x0010, // Range Maximum 0x01, // Alignment 0x10, // Length ) IO (Decode16, 0x0022, // Range Minimum 0x0022, // Range Maximum 0x01, // Alignment 0x1E, // Length ) IO (Decode16, 0x0044, // Range Minimum 0x0044, // Range Maximum 0x01, // Alignment 0x1C, // Length ) IO (Decode16, 0x0062, // Range Minimum 0x0062, // Range Maximum 0x01, // Alignment 0x02, // Length ) IO (Decode16, 0x0065, // Range Minimum 0x0065, // Range Maximum 0x01, // Alignment 0x0B, // Length ) IO (Decode16, 0x0074, // Range Minimum 0x0074, // Range Maximum 0x01, // Alignment 0x0C, // Length ) IO (Decode16, 0x0091, // Range Minimum 0x0091, // Range Maximum 0x01, // Alignment 0x03, // Length ) IO (Decode16, 0x00A2, // Range Minimum 0x00A2, // Range Maximum 0x01, // Alignment 0x1E, // Length ) IO (Decode16, 0x00E0, // Range Minimum 0x00E0, // Range Maximum 0x01, // Alignment 0x10, // Length ) IO (Decode16, 0x04D0, // Range Minimum 0x04D0, // Range Maximum 0x01, // Alignment 0x02, // Length ) IO (Decode16, 0x0290, // Range Minimum 0x0290, // Range Maximum 0x01, // Alignment 0x10, // Length ) IO (Decode16, 0x0800, // Range Minimum 0x0800, // Range Maximum 0x01, // Alignment 0x80, // Length ) IO (Decode16, 0x0290, // Range Minimum 0x0290, // Range Maximum 0x01, // Alignment 0x05, // Length ) IO (Decode16, 0x0880, // Range Minimum 0x0880, // Range Maximum 0x01, // Alignment 0x10, // Length ) }) } Device (PIC) { Name (_HID, EisaId ("PNP0000")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0020, // Range Minimum 0x0020, // Range Maximum 0x01, // Alignment 0x02, // Length ) IO (Decode16, 0x00A0, // Range Minimum 0x00A0, // Range Maximum 0x01, // Alignment 0x02, // Length ) }) } Device (DMA1) { Name (_HID, EisaId ("PNP0200")) Name (_CRS, ResourceTemplate () { DMA (Compatibility, BusMaster, Transfer8, ) {4} IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x01, // Alignment 0x10, // Length ) IO (Decode16, 0x0080, // Range Minimum 0x0080, // Range Maximum 0x01, // Alignment 0x11, // Length ) IO (Decode16, 0x0094, // Range Minimum 0x0094, // Range Maximum 0x01, // Alignment 0x0C, // Length ) IO (Decode16, 0x00C0, // Range Minimum 0x00C0, // Range Maximum 0x01, // Alignment 0x20, // Length ) }) } Device (TMR) { Name (_HID, EisaId ("PNP0100")) Name (ATT5, ResourceTemplate () { IO (Decode16, 0x0040, // Range Minimum 0x0040, // Range Maximum 0x00, // Alignment 0x04, // Length ) }) Name (ATT6, ResourceTemplate () { IO (Decode16, 0x0040, // Range Minimum 0x0040, // Range Maximum 0x00, // Alignment 0x04, // Length ) }) Method (_CRS, 0, NotSerialized) { If (LGreaterEqual (OSFX, 0x03)) { If (HPTF) { Return (ATT6) } Else { Return (ATT5) } } Else { Return (ATT5) } } } Device (HPET) { Name (_HID, EisaId ("PNP0103")) Name (ATT3, ResourceTemplate () { IRQNoFlags () {2} IRQNoFlags () {8} Memory32Fixed (ReadOnly, 0xFED00000, // Address Base 0x00000400, // Address Length ) }) Name (ATT4, ResourceTemplate () { }) Method (_STA, 0, NotSerialized) { If (LGreaterEqual (OSFX, 0x03)) { If (HPTF) { Return (0x0F) } Else { Return (Zero) } } Else { Return (Zero) } } Method (_CRS, 0, NotSerialized) { If (LGreaterEqual (OSFX, 0x03)) { If (HPTF) { Return (ATT3) } Else { Return (ATT4) } } Else { Return (ATT4) } } } Device (RTC) { Name (_HID, EisaId ("PNP0B00")) Name (ATT0, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x00, // Alignment 0x02, // Length ) IRQNoFlags () {8} }) Name (ATT1, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x00, // Alignment 0x04, // Length ) }) Method (_CRS, 0, NotSerialized) { If (LGreaterEqual (OSFX, 0x03)) { If (HPTF) { Return (ATT1) } Else { Return (ATT0) } } Else { Return (ATT0) } } } Device (SPKR) { Name (_HID, EisaId ("PNP0800")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0061, // Range Minimum 0x0061, // Range Maximum 0x01, // Alignment 0x01, // Length ) }) } Device (COPR) { Name (_HID, EisaId ("PNP0C04")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x00F0, // Range Minimum 0x00F0, // Range Maximum 0x01, // Alignment 0x10, // Length ) IRQNoFlags () {13} }) } Scope (\) { OperationRegion (WIN1, SystemIO, 0x2E, 0x02) Field (WIN1, ByteAcc, NoLock, Preserve) { INDP, 8, DATP, 8 } OperationRegion (GPIO, SystemIO, 0x0800, 0x05) Field (GPIO, ByteAcc, NoLock, Preserve) { GO01, 8, GO02, 8, GO03, 8, GO04, 8, GO05, 8 } IndexField (INDP, DATP, ByteAcc, NoLock, Preserve) { Offset (0x02), CFG, 8, Offset (0x07), LDN, 8, Offset (0x20), IDHI, 8, IDLO, 8, POWC, 8, Offset (0x30), ACTR, 8, Offset (0x60), IOAH, 8, IOAL, 8, IO2H, 8, IO2L, 8, Offset (0x70), INTR, 8, Offset (0x72), INT1, 8, Offset (0x74), DMCH, 8, Offset (0xC0), GP40, 8, Offset (0xF0), OPT1, 8, OPT2, 8, OPT3, 8, OPT4, 8 } Method (ENFG, 0, NotSerialized) { Store (0x87, INDP) Store (One, INDP) Store (0x55, INDP) Store (0x55, INDP) } Method (EXFG, 0, NotSerialized) { Store (0x02, CFG) } Method (GSRG, 1, NotSerialized) { Store (Arg0, INDP) Return (DATP) } Method (SSRG, 2, NotSerialized) { Store (Arg0, INDP) Store (Arg1, DATP) } } Device (FDC0) { Name (_HID, EisaId ("PNP0700")) Method (_STA, 0, NotSerialized) { ENFG () Store (Zero, LDN) If (ACTR) { EXFG () Return (0x0F) } Else { If (LOr (IOAH, IOAL)) { EXFG () Return (0x0D) } Else { EXFG () Return (Zero) } } } Method (_DIS, 0, NotSerialized) { ENFG () Store (Zero, LDN) Store (Zero, ACTR) SLDM (DMCH, 0x04) EXFG () DISD (0x03) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { IO (Decode16, 0x03F0, // Range Minimum 0x03F0, // Range Maximum 0x01, // Alignment 0x06, // Length _Y01) IO (Decode16, 0x03F7, // Range Minimum 0x03F7, // Range Maximum 0x01, // Alignment 0x01, // Length ) IRQNoFlags () {6} DMA (Compatibility, NotBusMaster, Transfer8, ) {2} }) CreateByteField (BUF0, \_SB.PCI0.PX40.FDC0._CRS._Y01._MIN, IOLO) CreateByteField (BUF0, 0x03, IOHI) CreateByteField (BUF0, \_SB.PCI0.PX40.FDC0._CRS._Y01._MAX, IORL) CreateByteField (BUF0, 0x05, IORH) ENFG () EXFG () Return (BUF0) } Name (_PRS, ResourceTemplate () { StartDependentFnNoPri () { IO (Decode16, 0x03F0, // Range Minimum 0x03F0, // Range Maximum 0x01, // Alignment 0x06, // Length ) IO (Decode16, 0x03F7, // Range Minimum 0x03F7, // Range Maximum 0x01, // Alignment 0x01, // Length ) IRQNoFlags () {6} DMA (Compatibility, NotBusMaster, Transfer8, ) {2} } EndDependentFn () }) Method (_SRS, 1, NotSerialized) { CreateByteField (Arg0, 0x02, IOLO) CreateByteField (Arg0, 0x03, IOHI) CreateWordField (Arg0, 0x02, IOAD) CreateWordField (Arg0, 0x19, IRQW) CreateByteField (Arg0, 0x1C, DMAV) ENFG () Store (Zero, LDN) Store (One, ACTR) SLDM (DMCH, DMCH) CKIO (IOAD, 0x03) EXFG () } } Device (UAR1) { Name (_HID, EisaId ("PNP0501")) Name (_UID, One) Method (_STA, 0, NotSerialized) { ENFG () Store (One, LDN) If (ACTR) { EXFG () Return (0x0F) } Else { If (LOr (IOAH, IOAL)) { EXFG () Return (0x0D) } Else { EXFG () Return (Zero) } } EXFG () } Method (_DIS, 0, NotSerialized) { ENFG () Store (One, LDN) Store (Zero, ACTR) EXFG () DISD (Zero) } Method (_CRS, 0, NotSerialized) { Name (BUF1, ResourceTemplate () { IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x01, // Alignment 0x08, // Length _Y02) IRQNoFlags (_Y03) {} }) CreateByteField (BUF1, \_SB.PCI0.PX40.UAR1._CRS._Y02._MIN, IOLO) CreateByteField (BUF1, 0x03, IOHI) CreateByteField (BUF1, \_SB.PCI0.PX40.UAR1._CRS._Y02._MAX, IORL) CreateByteField (BUF1, 0x05, IORH) CreateWordField (BUF1, \_SB.PCI0.PX40.UAR1._CRS._Y03._INT, IRQW) ENFG () Store (One, LDN) Store (IOAL, IOLO) Store (IOAL, IORL) Store (IOAH, IOHI) Store (IOAH, IORH) Store (One, Local0) ShiftLeft (Local0, INTR, IRQW) EXFG () Return (BUF1) } Name (_PRS, ResourceTemplate () { StartDependentFnNoPri () { IO (Decode16, 0x03F8, // Range Minimum 0x03F8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,7,9,10,11,12} } StartDependentFnNoPri () { IO (Decode16, 0x02F8, // Range Minimum 0x02F8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,7,9,10,11,12} } StartDependentFnNoPri () { IO (Decode16, 0x03E8, // Range Minimum 0x03E8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,7,9,10,11,12} } StartDependentFnNoPri () { IO (Decode16, 0x02E8, // Range Minimum 0x02E8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,7,9,10,11,12} } EndDependentFn () }) Method (_SRS, 1, NotSerialized) { CreateByteField (Arg0, 0x02, IOLO) CreateByteField (Arg0, 0x03, IOHI) CreateWordField (Arg0, 0x02, IOAD) CreateWordField (Arg0, 0x09, IRQW) ENFG () Store (One, LDN) Store (One, ACTR) Store (IOLO, IOAL) Store (IOHI, IOAH) FindSetRightBit (IRQW, Local0) Subtract (Local0, One, INTR) EXFG () CKIO (IOAD, Zero) } Method (_PRW, 0, NotSerialized) { If (SUSF) { Return (Package (0x02) { 0x08, 0x03 }) } Else { Return (Package (0x02) { 0x08, One }) } } Method (_PSW, 1, NotSerialized) { If (Arg0) { Or (G2C2, One, G2C2) } Else { And (G2C2, 0xFE, G2C2) } } } Device (LPT1) { Name (_HID, EisaId ("PNP0400")) Method (_STA, 0, NotSerialized) { ENFG () Store (0x03, LDN) And (OPT1, 0x02, Local0) If (LNotEqual (Local0, 0x02)) { If (ACTR) { EXFG () Return (0x0F) } Else { If (LOr (IOAH, IOAL)) { EXFG () Return (0x0D) } Else { EXFG () Return (Zero) } } } Else { EXFG () Return (Zero) } } Method (_DIS, 0, NotSerialized) { ENFG () Store (0x03, LDN) Store (Zero, ACTR) EXFG () DISD (0x02) } Method (_CRS, 0, NotSerialized) { Name (BUF5, ResourceTemplate () { IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x01, // Alignment 0x08, // Length _Y04) IRQNoFlags (_Y05) {} }) CreateByteField (BUF5, \_SB.PCI0.PX40.LPT1._CRS._Y04._MIN, IOLO) CreateByteField (BUF5, 0x03, IOHI) CreateByteField (BUF5, \_SB.PCI0.PX40.LPT1._CRS._Y04._MAX, IORL) CreateByteField (BUF5, 0x05, IORH) CreateByteField (BUF5, \_SB.PCI0.PX40.LPT1._CRS._Y04._LEN, IOLE) CreateWordField (BUF5, \_SB.PCI0.PX40.LPT1._CRS._Y05._INT, IRQW) ENFG () Store (0x03, LDN) Store (IOAL, IOLO) Store (IOLO, IORL) Store (IOAH, IOHI) Store (IOHI, IORH) If (LEqual (IOLO, 0xBC)) { Store (0x04, IOLE) } Else { Store (0x08, IOLE) } Store (One, Local0) Store (INTR, Local5) ShiftLeft (Local0, Local5, IRQW) EXFG () Return (BUF5) } Name (_PRS, ResourceTemplate () { StartDependentFnNoPri () { IO (Decode16, 0x0378, // Range Minimum 0x0378, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,7,9,10,11,12} } StartDependentFnNoPri () { IO (Decode16, 0x0278, // Range Minimum 0x0278, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3,4,5,7,9,10,11,12} } StartDependentFnNoPri () { IO (Decode16, 0x03BC, // Range Minimum 0x03BC, // Range Maximum 0x01, // Alignment 0x04, // Length ) IRQNoFlags () {3,4,5,7,9,10,11,12} } EndDependentFn () }) Method (_SRS, 1, NotSerialized) { CreateByteField (Arg0, 0x02, IOLO) CreateByteField (Arg0, 0x03, IOHI) CreateWordField (Arg0, 0x02, IOAD) CreateByteField (Arg0, 0x04, IORL) CreateByteField (Arg0, 0x05, IORH) CreateWordField (Arg0, 0x09, IRQW) ENFG () Store (0x03, LDN) Store (One, ACTR) Store (IOLO, IOAL) Store (IOHI, IOAH) FindSetLeftBit (IRQW, Local0) Subtract (Local0, One, Local0) Store (Local0, INTR) EXFG () CKIO (IOAD, 0x02) } } Device (ECP1) { Name (_HID, EisaId ("PNP0401")) Method (_STA, 0, NotSerialized) { ENFG () Store (0x03, LDN) And (OPT1, 0x02, Local0) If (LEqual (Local0, 0x02)) { If (ACTR) { EXFG () Return (0x0F) } Else { If (LOr (IOAH, IOAL)) { EXFG () Return (0x0D) } Else { EXFG () Return (Zero) } } } Else { EXFG () Return (Zero) } } Method (_DIS, 0, NotSerialized) { ENFG () Store (0x03, LDN) Store (Zero, ACTR) SLDM (DMCH, 0x04) EXFG () DISD (0x02) } Method (_CRS, 0, NotSerialized) { Name (BUF6, ResourceTemplate () { IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x01, // Alignment 0x04, // Length _Y06) IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x01, // Alignment 0x04, // Length _Y07) IRQNoFlags (_Y08) {} DMA (Compatibility, NotBusMaster, Transfer8, _Y09) {} }) CreateByteField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y06._MIN, IOLO) CreateByteField (BUF6, 0x03, IOHI) CreateByteField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y06._MAX, IORL) CreateByteField (BUF6, 0x05, IORH) CreateByteField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y06._LEN, IOLE) CreateByteField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y07._MIN, IOEL) CreateByteField (BUF6, 0x0B, IOEH) CreateByteField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y07._MAX, IOML) CreateByteField (BUF6, 0x0D, IOMH) CreateWordField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y08._INT, IRQW) CreateByteField (BUF6, \_SB.PCI0.PX40.ECP1._CRS._Y09._DMA, DMAC) ENFG () Store (0x03, LDN) Store (IOAL, Local2) Store (Local2, IOLO) Store (IOAH, Local3) Store (Local3, IOHI) Or (Local3, 0x04, Local3) Store (Local3, IOEH) Store (Local3, IOMH) Store (IOLO, IORL) Store (IOLO, IOEL) Store (IOLO, IOML) Store (IOHI, IORH) If (LEqual (IOLO, 0xBC)) { Store (0x04, IOLE) } Else { Store (0x08, IOLE) } Store (One, Local0) Store (INTR, Local5) ShiftLeft (Local0, Local5, IRQW) Store (One, Local0) Store (DMCH, Local5) ShiftLeft (Local0, Local5, DMAC) EXFG () Return (BUF6) } Name (_PRS, ResourceTemplate () { StartDependentFnNoPri () { IO (Decode16, 0x0378, // Range Minimum 0x0378, // Range Maximum 0x00, // Alignment 0x08, // Length ) IO (Decode16, 0x0778, // Range Minimum 0x0778, // Range Maximum 0x00, // Alignment 0x04, // Length ) IRQNoFlags () {3,4,5,7,9,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8, ) {0,1,3} } StartDependentFnNoPri () { IO (Decode16, 0x0278, // Range Minimum 0x0278, // Range Maximum 0x00, // Alignment 0x08, // Length ) IO (Decode16, 0x0678, // Range Minimum 0x0678, // Range Maximum 0x00, // Alignment 0x04, // Length ) IRQNoFlags () {3,4,5,7,9,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8, ) {0,1,3} } StartDependentFnNoPri () { IO (Decode16, 0x03BC, // Range Minimum 0x03BC, // Range Maximum 0x00, // Alignment 0x04, // Length ) IO (Decode16, 0x07BC, // Range Minimum 0x07BC, // Range Maximum 0x00, // Alignment 0x04, // Length ) IRQNoFlags () {3,4,5,7,9,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8, ) {0,1,3} } EndDependentFn () }) Method (_SRS, 1, NotSerialized) { CreateByteField (Arg0, 0x02, IOLO) CreateByteField (Arg0, 0x03, IOHI) CreateWordField (Arg0, 0x02, IOAD) CreateWordField (Arg0, 0x11, IRQW) CreateByteField (Arg0, 0x14, DMAC) ENFG () Store (0x03, LDN) Store (One, ACTR) Store (IOLO, IOAL) Store (IOHI, IOAH) FindSetLeftBit (IRQW, Local0) Subtract (Local0, One, Local0) Store (Local0, INTR) FindSetLeftBit (DMAC, Local1) Store (DMCH, Local0) Subtract (Local1, One, DMCH) SLDM (Local0, DMCH) EXFG () CKIO (IOAD, 0x02) } } OperationRegion (KBCT, SystemIO, 0x60, 0x05) Field (KBCT, ByteAcc, NoLock, Preserve) { P060, 8, Offset (0x04), P064, 8 } Device (PS2M) { Name (_HID, EisaId ("PNP0F13")) Method (_STA, 0, NotSerialized) { If (LEqual (PS2F, Zero)) { Return (0x0F) } Else { Return (Zero) } } Method (_CRS, 0, NotSerialized) { Name (BUF1, ResourceTemplate () { IRQNoFlags () {12} }) Name (BUF2, ResourceTemplate () { IO (Decode16, 0x0060, // Range Minimum 0x0060, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0064, // Range Minimum 0x0064, // Range Maximum 0x01, // Alignment 0x01, // Length ) IRQNoFlags () {12} }) If (LEqual (KBDI, One)) { If (LEqual (OSFL, 0x02)) { Return (BUF1) } If (LEqual (OSFL, One)) { Return (BUF1) } Else { Return (BUF2) } } Else { Return (BUF1) } } } Device (PS2K) { Name (_HID, EisaId ("PNP0303")) Method (_STA, 0, NotSerialized) { If (LEqual (KBDI, One)) { Return (Zero) } Else { Return (0x0F) } } Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0060, // Range Minimum 0x0060, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0064, // Range Minimum 0x0064, // Range Maximum 0x01, // Alignment 0x01, // Length ) IRQNoFlags () {1} }) } Device (PSMR) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x03) Method (_STA, 0, NotSerialized) { If (LEqual (KBDI, Zero)) { Return (Zero) } If (LEqual (PS2F, Zero)) { If (LEqual (OSFL, 0x02)) { Return (0x0F) } If (LEqual (OSFL, One)) { Return (0x0F) } Return (Zero) } Return (Zero) } Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0060, // Range Minimum 0x0060, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0064, // Range Minimum 0x0064, // Range Maximum 0x01, // Alignment 0x01, // Length ) }) } Device (PMIO) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x02) Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { IO (Decode16, 0x0400, // Range Minimum 0x0400, // Range Maximum 0x01, // Alignment 0xD0, // Length ) IO (Decode16, 0x04D2, // Range Minimum 0x04D2, // Range Maximum 0x01, // Alignment 0x2E, // Length ) }) Return (BUF0) } } } Device (UHC1) { Name (_ADR, 0x001D0000) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { Return (0x02) } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Name (_PRW, Package (0x02) { 0x03, 0x03 }) Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "device-id", Buffer (0x04) { 0x34, 0x3A, 0x00, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Device (UHC2) { Name (_ADR, 0x001D0001) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { Return (0x02) } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Name (_PRW, Package (0x02) { 0x04, 0x03 }) Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "device-id", Buffer (0x04) { 0x35, 0x3A, 0x00, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Device (UHC3) { Name (_ADR, 0x001D0002) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { Return (0x02) } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Name (_PRW, Package (0x02) { 0x0C, 0x03 }) Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "device-id", Buffer (0x04) { 0x36, 0x3A, 0x00, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Device (UHC4) { Name (_ADR, 0x001A0000) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { Return (0x02) } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Name (_PRW, Package (0x02) { 0x0E, 0x03 }) Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "device-id", Buffer (0x04) { 0x37, 0x3A, 0x00, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Device (UHC5) { Name (_ADR, 0x001A0001) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { Return (0x02) } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Name (_PRW, Package (0x02) { 0x05, 0x03 }) Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "device-id", Buffer (0x04) { 0x38, 0x3A, 0x00, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Device (UHC6) { Name (_ADR, 0x001A0001) OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) { USBW, 2, Offset (0x01) } Method (_S3D, 0, NotSerialized) { Return (0x02) } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x03, USBW) } Else { Store (Zero, USBW) } } Name (_PRW, Package (0x02) { 0x05, 0x03 }) Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "device-id", Buffer (0x04) { 0x38, 0x3A, 0x00, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Device (EHC1) { Name (_ADR, 0x001D0007) OperationRegion (PMCS, PCI_Config, 0x54, 0x02) Field (PMCS, WordAcc, NoLock, Preserve) { , 15, PMES, 1 } OperationRegion (PWCR, PCI_Config, 0x62, 0x02) Field (PWCR, AnyAcc, NoLock, Preserve) { URE2, 9 } Method (_PSW, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Store (Zero, URE2) } If (LEqual (Arg0, One)) { Store (0x01FF, URE2) } } Name (_PRW, Package (0x02) { 0x0D, 0x03 }) Method (_DSM, 4, NotSerialized) { Store (Package (0x0C) { "AAPL,current-available", 0x05DC, "AAPL,current-extra", 0x04B0, "AAPL,current-in-sleep", 0x09C4, "device-id", Buffer (0x04) { 0x3A, 0x3A, 0x00, 0x00 }, "AAPL,clock-id", Buffer (One) { 0x01 }, "device_type", Buffer (0x05) { "EHCI" } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Device (EHC2) { Name (_ADR, 0x001A0007) OperationRegion (PMCS, PCI_Config, 0x54, 0x02) Field (PMCS, WordAcc, NoLock, Preserve) { , 15, PMES, 1 } OperationRegion (PWCR, PCI_Config, 0x62, 0x02) Field (PWCR, AnyAcc, NoLock, Preserve) { URE2, 9 } Method (_PSW, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Store (Zero, URE2) } If (LEqual (Arg0, One)) { Store (0x01FF, URE2) } } Name (_PRW, Package (0x02) { 0x0D, 0x03 }) Method (_DSM, 4, NotSerialized) { Store (Package (0x0C) { "AAPL,current-available", 0x05DC, "AAPL,current-extra", 0x04B0, "AAPL,current-in-sleep", 0x09C4, "device-id", Buffer (0x04) { 0x3C, 0x3A, 0x00, 0x00 }, "AAPL,clock-id", Buffer (One) { 0x02 }, "device_type", Buffer (0x05) { "EHCI" } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Device (SATA) { Name (_ADR, 0x001F0002) OperationRegion (PCI, PCI_Config, 0x40, 0x20) Field (PCI, DWordAcc, NoLock, Preserve) { ITM0, 16, ITM1, 16, SIT0, 4, SIT1, 4, Offset (0x08), UDC0, 2, UDC1, 2, Offset (0x0A), UDT0, 8, UDT1, 8, Offset (0x14), ICF0, 2, ICF1, 2, , 6, WPPE, 1, , 1, FAS0, 2, FAS1, 2 } Device (PRT0) { Name (_ADR, Zero) Method (_GTM, 0, NotSerialized) { Store (GTM (ITM0, SIT0, UDC0, UDT0, ICF0, FAS0), Local0) Return (Local0) } Method (_STM, 3, NotSerialized) { Store (STM (Arg0, Arg1, Arg2), Local0) CreateDWordField (Local0, Zero, ITM) CreateDWordField (Local0, 0x04, SIT) CreateDWordField (Local0, 0x08, UDC) CreateDWordField (Local0, 0x0C, UDT) CreateDWordField (Local0, 0x10, ICF) CreateDWordField (Local0, 0x14, FAS) Store (UDC, UDC0) Store (UDT, UDT0) Store (ICF, ICF0) Store (FAS, FAS0) } Device (DRV0) { Name (_ADR, Zero) Name (H15F, Zero) Method (_GTF, 0, NotSerialized) { Store (GTF0 (ITM0, SIT0, UDC0, UDT0, ICF0, H15F, FAS0), Local0) Return (Local0) } } Device (DRV1) { Name (_ADR, One) Name (H15F, Zero) Method (_GTF, 0, NotSerialized) { Store (GTF1 (ITM0, SIT0, UDC0, UDT0, ICF0, H15F, FAS0), Local0) Return (Local0) } } } Device (PRT1) { Name (_ADR, One) Method (_GTM, 0, NotSerialized) { Store (GTM (ITM1, SIT1, UDC1, UDT1, ICF1, FAS1), Local0) Return (Local0) } Method (_STM, 3, NotSerialized) { Store (STM (Arg0, Arg1, Arg2), Local0) CreateDWordField (Local0, Zero, ITM) CreateDWordField (Local0, 0x04, SIT) CreateDWordField (Local0, 0x08, UDC) CreateDWordField (Local0, 0x0C, UDT) CreateDWordField (Local0, 0x10, ICF) CreateDWordField (Local0, 0x14, FAS) Store (UDC, UDC1) Store (UDT, UDT1) Store (ICF, ICF1) Store (FAS, FAS1) } Device (DRV0) { Name (_ADR, Zero) Name (H15F, Zero) Method (_GTF, 0, NotSerialized) { Store (GTF0 (ITM1, SIT1, UDC1, UDT1, ICF1, H15F, FAS1), Local0) Return (Local0) } } Device (DRV1) { Name (_ADR, One) Name (H15F, Zero) Method (_GTF, 0, NotSerialized) { Store (GTF1 (ITM1, SIT1, UDC1, UDT1, ICF1, H15F, FAS1), Local0) Return (Local0) } } } } Method (GTM, 6, NotSerialized) { Store (Buffer (0x14) {}, Local0) CreateDWordField (Local0, Zero, PIO0) CreateDWordField (Local0, 0x04, DMA0) CreateDWordField (Local0, 0x08, PIO1) CreateDWordField (Local0, 0x0C, DMA1) CreateDWordField (Local0, 0x10, FLAG) Store (0x10, FLAG) If (LOr (And (Arg0, 0x08), LNot (And (Arg0, One )))) { Store (0x0384, PIO0) } Else { Add (ShiftRight (And (Arg0, 0x0300), 0x08), ShiftRight (And ( Arg0, 0x3000), 0x0C), Local1) Multiply (Subtract (0x09, Local1), 0x1E, PIO0) } If (LOr (LAnd (Arg0, 0x4000), LAnd (Arg2, One))) { If (LOr (And (Arg0, 0x80), LNot (And (Arg0, 0x10 )))) { Store (0x0384, PIO1) } Else { Add (And (Arg1, 0x03), ShiftRight (And (Arg1, 0x0C), 0x02), Local1) Multiply (Subtract (0x09, Local1), 0x1E, PIO1) } } Else { Store (PIO0, PIO1) } If (And (Arg2, One)) { Subtract (0x04, And (Arg3, 0x03), Local1) If (And (Arg5, One)) { Store (0x14, DMA0) } Else { If (And (Arg4, One)) { Multiply (Local1, 0x0F, DMA0) } Else { Multiply (Local1, 0x1E, DMA0) } } } Else { Store (PIO0, DMA0) } If (LOr (LAnd (Arg0, 0x4000), LAnd (Arg2, One))) { If (And (Arg2, 0x02)) { Subtract (0x04, ShiftRight (And (Arg3, 0x30), 0x04), Local1) If (And (Arg5, 0x02)) { Store (0x14, DMA1) } Else { If (And (Arg4, 0x02)) { Multiply (Local1, 0x0F, DMA1) } Else { Multiply (Local1, 0x1E, DMA1) } } } Else { Store (PIO1, DMA1) } } Else { Store (DMA0, DMA1) } Store (Zero, FLAG) If (And (Arg0, One)) { Or (FLAG, 0x10, FLAG) } If (And (Arg2, One)) { Or (FLAG, One, FLAG) } If (And (Arg0, 0x02)) { Or (FLAG, 0x02, FLAG) } If (And (Arg2, 0x02)) { Or (FLAG, 0x04, FLAG) } If (And (Arg0, 0x20)) { Or (FLAG, 0x08, FLAG) } Return (Local0) } Method (STM, 3, NotSerialized) { Store (Buffer (0x18) {}, Local7) CreateDWordField (Local7, Zero, ITM) CreateDWordField (Local7, 0x04, SIT) CreateDWordField (Local7, 0x08, UDC) CreateDWordField (Local7, 0x0C, UDT) CreateDWordField (Local7, 0x10, ICF) CreateDWordField (Local7, 0x14, FAS) CreateDWordField (Arg0, Zero, PIO0) CreateDWordField (Arg0, 0x04, DMA0) CreateDWordField (Arg0, 0x08, PIO1) CreateDWordField (Arg0, 0x0C, DMA1) CreateDWordField (Arg0, 0x10, FLAG) Store (FLAG, Local4) Store (0x8000, Local0) If (And (Local4, 0x02)) { Or (Local0, 0x07, Local0) } If (And (Local4, 0x08)) { Or (Local0, 0x4000, Local0) Or (Local0, 0x70, Local0) } If (LAnd (LLess (DMA0, PIO0), LNot (And (Local4, One)))) { Or (Local0, 0x08, Local0) } If (LAnd (LLess (DMA1, PIO1), LNot (And (Local4, 0x04)))) { Or (Local0, 0x80, Local0) } If (PIO0) { If (LLess (PIO0, 0x0384)) { Or (Local0, One, Local0) } } If (PIO1) { If (LLess (PIO1, 0x0384)) { Or (Local0, 0x10, Local0) } } If (And (Local4, One)) { Store (PIO0, Local1) } Else { Store (DMA0, Local1) } If (Local1) { If (LLessEqual (Local1, 0x78)) { Or (Local0, 0x2300, Local0) } Else { If (LLessEqual (Local1, 0xB4)) { Or (Local0, 0x2100, Local0) } Else { If (LLessEqual (Local1, 0xF0)) { Or (Local0, 0x1000, Local0) } } } } Store (Local0, ITM) Store (Zero, Local0) If (And (Local4, 0x04)) { Store (PIO1, Local1) } Else { Store (DMA1, Local1) } If (Local1) { If (LLessEqual (Local1, 0x78)) { Store (0x0B, Local0) } Else { If (LLessEqual (Local1, 0xB4)) { Store (0x09, Local0) } Else { If (LLessEqual (Local1, 0xF0)) { Store (0x04, Local0) } } } } Store (Local0, SIT) Store (Zero, Local0) If (And (Local4, One)) { Or (Local0, One, Local0) } If (And (Local4, 0x04)) { Or (Local0, 0x02, Local0) } Store (Local0, UDC) Store (Zero, Local0) If (And (Local4, One)) { If (LEqual (DMA0, 0x14)) { Store (One, Local0) } Else { If (LLess (DMA0, 0x3C)) { Divide (DMA0, 0x0F, , Local1) } Else { Divide (DMA0, 0x1E, , Local1) } Subtract (0x04, Local1, Local0) } } If (And (Local4, 0x04)) { If (LEqual (DMA1, 0x14)) { Store (One, Local1) } Else { If (LLess (DMA1, 0x3C)) { Divide (DMA1, 0x0F, , Local1) } Else { Divide (DMA1, 0x1E, , Local1) } Subtract (0x04, Local1, Local1) } ShiftLeft (Local1, 0x04, Local1) Or (Local0, Local1, Local0) } Store (Local0, UDT) Store (Zero, Local0) If (DMA0) { If (LGreater (DMA0, 0x14)) { If (LLess (DMA0, 0x3C)) { Or (Local0, One, Local0) } } } If (DMA1) { If (LGreater (DMA1, 0x14)) { If (LLess (DMA1, 0x3C)) { Or (Local0, 0x02, Local0) } } } Store (Local0, ICF) Store (Zero, Local0) If (LEqual (DMA0, 0x14)) { Or (Local0, One, Local0) } If (LEqual (DMA1, 0x14)) { Or (Local0, 0x02, Local0) } Store (Local0, FAS) Return (Local7) } Method (H15P, 1, NotSerialized) { Name (BUFF, Buffer (0x08) { /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) Store (Arg0, Local0) Store (BUFF, Local1) Concatenate (Local0, Local1, Local7) CreateWordField (Local7, 0x02, CYL) CreateWordField (Local7, 0x06, HEAD) CreateWordField (Local7, 0x0C, SPT) If (LAnd (LGreaterEqual (HEAD, 0x10), LGreaterEqual (CYL, 0x2000))) { Return (SPT) } Else { Return (Zero) } } Method (GTF0, 7, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }, Local7) CreateByteField (Local7, One, MODE) If (And (Arg2, One)) { And (Arg3, 0x03, Local0) If (And (Arg6, One)) { Add (Local0, 0x04, Local0) } Else { If (And (Arg4, One)) { Add (Local0, 0x02, Local0) } } Or (Local0, 0x40, MODE) } Else { Add (ShiftRight (And (Arg0, 0x0300), 0x08), ShiftRight (And ( Arg0, 0x3000), 0x0C), Local0) If (LGreaterEqual (Local0, 0x05)) { Store (0x22, MODE) } Else { If (LGreaterEqual (Local0, 0x03)) { Store (0x21, MODE) } Else { Store (0x20, MODE) } } } Concatenate (Local7, Local7, Local6) If (LOr (And (Arg0, 0x08), LNot (And (Arg0, One )))) { If (And (Arg0, 0x02)) { Store (Zero, MODE) } Else { Store (One, MODE) } } Else { Add (ShiftRight (And (Arg0, 0x0300), 0x08), ShiftRight (And ( Arg0, 0x3000), 0x0C), Local0) If (LGreaterEqual (Local0, 0x05)) { Store (0x0C, MODE) } Else { If (LGreaterEqual (Local0, 0x03)) { Store (0x0B, MODE) } Else { Store (0x0A, MODE) } } } Concatenate (Local6, Local7, Local5) If (Arg5) { Store (Buffer (0x07) { 0x00, 0x00, 0x00, 0x00, 0x00, 0xAE, 0x91 }, Local4) CreateByteField (Local4, One, SPT) Store (Arg5, SPT) Concatenate (Local5, Local4, Local6) Return (Local6) } Else { Return (Local5) } } Method (GTF1, 7, NotSerialized) { Store (Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }, Local7) CreateByteField (Local7, One, MODE) If (And (Arg2, 0x02)) { ShiftRight (And (Arg3, 0x30), 0x04, Local0) If (And (Arg6, 0x02)) { Add (Local0, 0x04, Local0) } Else { If (And (Arg4, 0x02)) { Add (Local0, 0x02, Local0) } } Or (Local0, 0x40, MODE) } Else { Add (ShiftRight (And (Arg1, 0x03), 0x02), And (Arg1, 0x0C), Local0) If (LGreaterEqual (Local0, 0x05)) { Store (0x22, MODE) } Else { If (LGreaterEqual (Local0, 0x03)) { Store (0x21, MODE) } Else { Store (0x20, MODE) } } } Concatenate (Local7, Local7, Local6) If (LOr (And (Arg0, 0x80), LNot (And (Arg0, 0x10 )))) { If (And (Arg0, 0x20)) { Store (Zero, MODE) } Else { Store (One, MODE) } } Else { Add (ShiftRight (And (Arg1, 0x03), 0x02), And (Arg1, 0x0C), Local0) If (LGreaterEqual (Local0, 0x05)) { Store (0x0C, MODE) } Else { If (LGreaterEqual (Local0, 0x03)) { Store (0x0B, MODE) } Else { Store (0x0A, MODE) } } } Concatenate (Local6, Local7, Local5) If (Arg5) { Store (Buffer (0x07) { 0x00, 0x00, 0x00, 0x00, 0x00, 0xBE, 0x91 }, Local4) CreateByteField (Local4, One, SPT) Store (Arg5, SPT) Concatenate (Local5, Local4, Local6) Return (Local6) } Else { Return (Local5) } } Device (PX43) { Name (_ADR, 0x001F0003) OperationRegion (PBAS, PCI_Config, 0x20, 0x02) Field (PBAS, ByteAcc, NoLock, Preserve) { BAS0, 16 } Method (SMBB, 0, NotSerialized) { And (BAS0, 0xFFFE, Local0) Return (Local0) } } Device (BUS0) { Name (_CID, "smbus") Name (_ADR, Zero) Device (DVL0) { Name (_ADR, 0x57) Name (_CID, "diagsvault") Method (_DSM, 4, NotSerialized) { Store (Package (0x03) { "address", 0x57, Buffer (One) { 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } } Device (HDEF) { Name (_ADR, 0x001B0000) Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x0D, 0x05 }) } Method (_DSM, 4, NotSerialized) { Store (Package (0x0A) { "built-in", Buffer (One) { 0x00 }, "codec-id", Buffer (0x04) { 0x85, 0x08, 0xEC, 0x10 }, "layout-id", Buffer (0x04) { 0x75, 0x03, 0x00, 0x00 }, "device-type", Buffer (0x10) { "Realtek ALC889a" }, "PinConfigurations", Buffer (Zero) {} }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Name (BUFA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,6,7,9,10,11,12,14,15} }) Name (BUFB, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {} }) CreateWordField (BUFB, One, IRQV) Device (LNKA) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, One) Method (_STA, 0, NotSerialized) { And (PIRA, 0x80, Local0) If (LEqual (Local0, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (BUFA) } Method (_DIS, 0, NotSerialized) { Or (PIRA, 0x80, PIRA) } Method (_CRS, 0, NotSerialized) { And (PIRA, 0x0F, Local0) ShiftLeft (One, Local0, IRQV) Return (BUFB) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQ1) FindSetRightBit (IRQ1, Local0) Decrement (Local0) Store (Local0, PIRA) } } Device (LNKB) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x02) Method (_STA, 0, NotSerialized) { And (PIRB, 0x80, Local0) If (LEqual (Local0, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (BUFA) } Method (_DIS, 0, NotSerialized) { Or (PIRB, 0x80, PIRB) } Method (_CRS, 0, NotSerialized) { And (PIRB, 0x0F, Local0) ShiftLeft (One, Local0, IRQV) Return (BUFB) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQ1) FindSetRightBit (IRQ1, Local0) Decrement (Local0) Store (Local0, PIRB) } } Device (LNKC) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x03) Method (_STA, 0, NotSerialized) { And (PIRC, 0x80, Local0) If (LEqual (Local0, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (BUFA) } Method (_DIS, 0, NotSerialized) { Or (PIRC, 0x80, PIRC) } Method (_CRS, 0, NotSerialized) { And (PIRC, 0x0F, Local0) ShiftLeft (One, Local0, IRQV) Return (BUFB) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQ1) FindSetRightBit (IRQ1, Local0) Decrement (Local0) Store (Local0, PIRC) } } Device (LNKD) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x04) Method (_STA, 0, NotSerialized) { And (PIRD, 0x80, Local0) If (LEqual (Local0, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (BUFA) } Method (_DIS, 0, NotSerialized) { Or (PIRD, 0x80, PIRD) } Method (_CRS, 0, NotSerialized) { And (PIRD, 0x0F, Local0) ShiftLeft (One, Local0, IRQV) Return (BUFB) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQ1) FindSetRightBit (IRQ1, Local0) Decrement (Local0) Store (Local0, PIRD) } } Device (LNKE) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x05) Method (_STA, 0, NotSerialized) { And (PIRE, 0x80, Local0) If (LEqual (Local0, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (BUFA) } Method (_DIS, 0, NotSerialized) { Or (PIRE, 0x80, PIRE) } Method (_CRS, 0, NotSerialized) { And (PIRE, 0x0F, Local0) ShiftLeft (One, Local0, IRQV) Return (BUFB) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQ1) FindSetRightBit (IRQ1, Local0) Decrement (Local0) Store (Local0, PIRE) } } Device (LNKF) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x06) Method (_STA, 0, NotSerialized) { And (PIRF, 0x80, Local0) If (LEqual (Local0, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (BUFA) } Method (_DIS, 0, NotSerialized) { Or (PIRF, 0x80, PIRF) } Method (_CRS, 0, NotSerialized) { And (PIRF, 0x0F, Local0) ShiftLeft (One, Local0, IRQV) Return (BUFB) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQ1) FindSetRightBit (IRQ1, Local0) Decrement (Local0) Store (Local0, PIRF) } } Device (LNK0) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x07) Method (_STA, 0, NotSerialized) { And (PIRG, 0x80, Local0) If (LEqual (Local0, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (BUFA) } Method (_DIS, 0, NotSerialized) { Or (PIRG, 0x80, PIRG) } Method (_CRS, 0, NotSerialized) { And (PIRG, 0x0F, Local0) ShiftLeft (One, Local0, IRQV) Return (BUFB) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQ1) FindSetRightBit (IRQ1, Local0) Decrement (Local0) Store (Local0, PIRG) } } Device (LNK1) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x08) Method (_STA, 0, NotSerialized) { And (PIRH, 0x80, Local0) If (LEqual (Local0, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_PRS, 0, NotSerialized) { Return (BUFA) } Method (_DIS, 0, NotSerialized) { Or (PIRH, 0x80, PIRH) } Method (_CRS, 0, NotSerialized) { And (PIRH, 0x0F, Local0) ShiftLeft (One, Local0, IRQV) Return (BUFB) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQ1) FindSetRightBit (IRQ1, Local0) Decrement (Local0) Store (Local0, PIRH) } } Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x0B, 0x05 }) } } Device (MEM) { Name (_HID, EisaId ("PNP0C01")) Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x000F0000, // Address Base 0x00004000, // Address Length _Y0B) Memory32Fixed (ReadWrite, 0x000F4000, // Address Base 0x00004000, // Address Length _Y0C) Memory32Fixed (ReadWrite, 0x000F8000, // Address Base 0x00004000, // Address Length _Y0D) Memory32Fixed (ReadWrite, 0x000FC000, // Address Base 0x00004000, // Address Length _Y0E) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x00010000, // Address Length _Y0A) Memory32Fixed (ReadWrite, 0x00000000, // Address Base 0x000A0000, // Address Length ) Memory32Fixed (ReadWrite, 0x00100000, // Address Base 0x00000000, // Address Length _Y10) Memory32Fixed (ReadWrite, 0xFEC00000, // Address Base 0x00001000, // Address Length ) Memory32Fixed (ReadWrite, 0xFED10000, // Address Base 0x0000E000, // Address Length ) Memory32Fixed (ReadWrite, 0xFED20000, // Address Base 0x00070000, // Address Length ) Memory32Fixed (ReadWrite, 0xFEE00000, // Address Base 0x00001000, // Address Length ) Memory32Fixed (ReadWrite, 0xFFB00000, // Address Base 0x00080000, // Address Length ) Memory32Fixed (ReadWrite, 0xFFF00000, // Address Base 0x00100000, // Address Length ) Memory32Fixed (ReadWrite, 0x000E0000, // Address Base 0x00010000, // Address Length _Y0F) }) CreateDWordField (BUF0, \_SB.MEM._CRS._Y0A._BAS, ACMM) CreateDWordField (BUF0, \_SB.MEM._CRS._Y0A._LEN, ASSM) CreateDWordField (BUF0, \_SB.MEM._CRS._Y0B._BAS, RMA1) CreateDWordField (BUF0, \_SB.MEM._CRS._Y0B._LEN, RSS1) CreateDWordField (BUF0, \_SB.MEM._CRS._Y0C._BAS, RMA2) CreateDWordField (BUF0, \_SB.MEM._CRS._Y0C._LEN, RSS2) CreateDWordField (BUF0, \_SB.MEM._CRS._Y0D._BAS, RMA3) CreateDWordField (BUF0, \_SB.MEM._CRS._Y0D._LEN, RSS3) CreateDWordField (BUF0, \_SB.MEM._CRS._Y0E._BAS, RMA4) CreateDWordField (BUF0, \_SB.MEM._CRS._Y0E._LEN, RSS4) CreateDWordField (BUF0, \_SB.MEM._CRS._Y0F._BAS, ERMA) CreateDWordField (BUF0, \_SB.MEM._CRS._Y0F._LEN, ERMS) CreateDWordField (BUF0, \_SB.MEM._CRS._Y10._LEN, EXTM) Subtract (AMEM, 0x00100000, EXTM) If (LNotEqual (ROM1, Zero)) { Store (RMA1, RMA2) ShiftLeft (ROM1, 0x08, Local0) Store (Local0, RMA1) ShiftLeft (RMS1, 0x08, Local0) Store (Local0, RSS1) Store (0x8000, RSS2) } If (LNotEqual (ROM2, Zero)) { Store (RMA2, RMA3) ShiftLeft (ROM2, 0x08, Local0) Store (Local0, RMA2) ShiftLeft (RMS2, 0x08, Local0) Store (Local0, RSS2) Store (0xC000, RSS3) } If (LNotEqual (ROM3, Zero)) { Store (RMA3, RMA4) ShiftLeft (ROM3, 0x08, Local0) Store (Local0, RMA3) ShiftLeft (RMS3, 0x08, Local0) Store (Local0, RSS3) Store (0x00010000, RSS4) } Store (ERMA, Local1) If (LGreater (RMA1, 0x000D0000)) { If (LLess (RMA1, 0x000F0000)) { Add (RMA1, RSS1, Local0) If (LGreater (Local0, 0x000E0000)) { If (LGreater (Local0, Local1)) { Store (Local0, Local1) } } } } If (LGreater (RMA2, 0x000D0000)) { If (LLess (RMA2, 0x000F0000)) { Add (RMA2, RSS2, Local0) If (LGreater (Local0, 0x000E0000)) { If (LGreater (Local0, Local1)) { Store (Local0, Local1) } } } } If (LGreater (RMA3, 0x000D0000)) { If (LLess (RMA3, 0x000F0000)) { Add (RMA3, RSS3, Local0) If (LGreater (Local0, 0x000E0000)) { If (LGreater (Local0, Local1)) { Store (Local0, Local1) } } } } If (LGreater (Local1, ERMA)) { Subtract (Local1, ERMA, Local0) If (LLessEqual (Local0, 0x00010000)) { Store (Local1, ERMA) Subtract (0x00010000, Local0, ERMS) } } Store (AMEM, ACMM) And (AMEM, 0x000FFFFF, Local0) Subtract (0x00100000, Local0, ASSM) Return (BUF0) } } Device (FWH) { Name (_HID, EisaId ("INT0800")) Method (_CRS, 0, NotSerialized) { Name (FWH0, ResourceTemplate () { Memory32Fixed (ReadWrite, 0xFFB80000, // Address Base 0x00080000, // Address Length ) }) Return (FWH0) } } Device (PCI0.EXPL) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x04) Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { Memory32Fixed (ReadWrite, 0xE0000000, // Address Base 0x04000000, // Address Length ) }) Return (BUF0) } } } }