/* * Intel ACPI Component Architecture * AML Disassembler version 20030619 * * Disassembly of sk8n.dsdt, Wed Nov 12 14:49:00 2003 */ DefinitionBlock ("DSDT.aml", "DSDT", 1, "SK8N3", "SK8N3007", 7) { OperationRegion (BIOS, SystemMemory, 0x3FF50064, 0xFF) Field (BIOS, ByteAcc, NoLock, Preserve) { SS1, 1, SS2, 1, SS3, 1, SS4, 1, Offset (0x01), IOST, 16, TOPM, 32, ROMS, 32, MG1B, 32, MG1L, 32, MG2B, 32, MG2L, 32, SMIP, 16 } Name (IO1B, 0x0480) Name (IO1L, 0x80) Name (IO3B, 0x0D00) Name (IO3L, 0x80) Name (SPIO, 0x2E) Name (APCB, 0xFEC00000) Name (APCL, 0x1000) Name (PMBS, 0x4000) Name (PMLN, 0x0100) Name (GPBS, 0x4400) Name (GPLN, 0x0100) Name (SMCS, 0x5000) Name (SMBL, 0x80) Name (ACBS, 0x4800) Name (ACBL, 0x0100) Method (RRIO, 4, NotSerialized) { Store ("RRIO", Debug) } Method (RDMA, 3, NotSerialized) { Store ("rDMA", Debug) } Name (PICM, 0x00) Method (_PIC, 1, NotSerialized) { If (Arg0) { Store (0xAA, DBG8) } Else { Store (0xAC, DBG8) } Store (Arg0, PICM) } Name (OSVR, Ones) Method (OSFL, 0, NotSerialized) { If (LNot (LEqual (OSVR, Ones))) { Return (OSVR) } If (LEqual (PICM, 0x00)) { Store (0xAC, DBG8) } Store (0x01, OSVR) If (MCTH (\_OS, "Microsoft Windows NT")) { Store (0x00, OSVR) } Else { If (MCTH (\_OS, "Microsoft WindowsME: Millennium Edition")) { Store (0x02, OSVR) } } Return (OSVR) } Method (MCTH, 2, NotSerialized) { If (LLess (SizeOf (Arg0), SizeOf (Arg1))) { Return (Zero) } Add (SizeOf (Arg0), 0x01, Local0) Name (BUF0, Buffer (Local0) {}) Name (BUF1, Buffer (Local0) {}) Store (Arg0, BUF0) Store (Arg1, BUF1) While (Local0) { Decrement (Local0) If (LNot (LEqual (DerefOf (Index (BUF0, Local0)), DerefOf (Index (BUF1, Local0))))) { Return (Zero) } } Return (One) } Method (GPRW, 2, NotSerialized) { Name (PRWP, Package (0x02) { 0x00, 0x00 }) Store (Arg0, Index (PRWP, 0x00)) Store (Arg1, Index (PRWP, 0x01)) Store (0x00, Local0) Or (Local0, ShiftLeft (SS1, 0x01), Local0) Or (Local0, ShiftLeft (SS2, 0x02), Local0) Or (Local0, ShiftLeft (SS3, 0x03), Local0) Or (Local0, ShiftLeft (SS4, 0x04), Local0) If (And (ShiftLeft (0x01, Arg1), Local0)) {} Else { ShiftRight (Local0, 0x01, Local0) If (LOr (LEqual (OSFL (), 0x01), LEqual (OSFL (), 0x02))) { FindSetLeftBit (Local0, Index (PRWP, 0x01)) } Else { FindSetRightBit (Local0, Index (PRWP, 0x01)) } } Return (PRWP) } Name (WAKP, Package (0x02) { 0x00, 0x00 }) OperationRegion (DEB0, SystemIO, 0x80, 0x01) Field (DEB0, ByteAcc, NoLock, Preserve) { DBG8, 8 } OperationRegion (DEB1, SystemIO, 0x90, 0x02) Field (DEB1, WordAcc, NoLock, Preserve) { DBG9, 16 } Scope (\_PR) { Processor (CPU1, 0x01, 0x00000000, 0x00) {} } Scope (\_SB) { Name (PR00, Package (0x0B) { Package (0x04) { 0x0001FFFF, 0x00, LKSM, 0x00 }, Package (0x04) { 0x0002FFFF, 0x00, LUS0, 0x00 }, Package (0x04) { 0x0006FFFF, 0x00, LAUI, 0x00 }, Package (0x04) { 0x0006FFFF, 0x01, LKMO, 0x00 }, Package (0x04) { 0x0002FFFF, 0x01, LUS1, 0x00 }, Package (0x04) { 0x0002FFFF, 0x02, LUS2, 0x00 }, Package (0x04) { 0x000BFFFF, 0x00, LNKE, 0x00 }, Package (0x04) { 0x000BFFFF, 0x01, LNKE, 0x00 }, Package (0x04) { 0x000BFFFF, 0x02, LNKE, 0x00 }, Package (0x04) { 0x000BFFFF, 0x03, LNKE, 0x00 }, Package (0x04) { 0x0005FFFF, 0x00, LKLN, 0x00 } }) Name (AR00, Package (0x0B) { Package (0x04) { 0x0001FFFF, 0x00, LKSM, 0x00 }, Package (0x04) { 0x0002FFFF, 0x00, LUS0, 0x00 }, Package (0x04) { 0x0006FFFF, 0x00, LAUI, 0x00 }, Package (0x04) { 0x0006FFFF, 0x01, LKMO, 0x00 }, Package (0x04) { 0x0002FFFF, 0x01, LUS1, 0x00 }, Package (0x04) { 0x0002FFFF, 0x02, LUS2, 0x00 }, Package (0x04) { 0x000BFFFF, 0x00, LNKE, 0x00 }, Package (0x04) { 0x000BFFFF, 0x01, LNKE, 0x00 }, Package (0x04) { 0x000BFFFF, 0x02, LNKE, 0x00 }, Package (0x04) { 0x000BFFFF, 0x03, LNKE, 0x00 }, Package (0x04) { 0x0005FFFF, 0x00, LKLN, 0x00 } }) Name (PR01, Package (0x16) { Package (0x04) { 0x0003FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0003FFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0x0003FFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0x0003FFFF, 0x03, LNKD, 0x00 }, Package (0x04) { 0x0004FFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0x0004FFFF, 0x01, LNKC, 0x00 }, Package (0x04) { 0x0004FFFF, 0x02, LNKD, 0x00 }, Package (0x04) { 0x0004FFFF, 0x03, LNKA, 0x00 }, Package (0x04) { 0x0005FFFF, 0x00, LNKC, 0x00 }, Package (0x04) { 0x0005FFFF, 0x01, LNKD, 0x00 }, Package (0x04) { 0x0005FFFF, 0x02, LNKA, 0x00 }, Package (0x04) { 0x0005FFFF, 0x03, LNKB, 0x00 }, Package (0x04) { 0x0006FFFF, 0x00, LNKD, 0x00 }, Package (0x04) { 0x0006FFFF, 0x01, LNKA, 0x00 }, Package (0x04) { 0x0006FFFF, 0x02, LNKB, 0x00 }, Package (0x04) { 0x0006FFFF, 0x03, LNKC, 0x00 }, Package (0x04) { 0x0007FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0007FFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0x0007FFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0x0007FFFF, 0x03, LNKD, 0x00 }, Package (0x04) { 0x0008FFFF, 0x00, LNKC, 0x00 }, Package (0x04) { 0x0009FFFF, 0x00, LNKD, 0x00 } }) Name (PRSE, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {3,4,5,7,9,10,11,12,14,15} }) Alias (PRSE, PRSA) Alias (PRSE, PRSB) Alias (PRSE, PRSC) Alias (PRSE, PRSD) Alias (PRSE, RSSM) Alias (PRSE, RSS0) Alias (PRSE, RSLN) Alias (PRSE, RSUI) Alias (PRSE, RSMO) Alias (PRSE, RSS1) Alias (PRSE, RSS2) Name (RSA0, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveHigh, Shared) { 0x00000010, } }) Name (RSA1, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveHigh, Shared) { 0x00000011, } }) Name (RSA2, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveHigh, Shared) { 0x00000012, } }) Name (RSA3, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveHigh, Shared) { 0x00000013, } }) Name (RSB0, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveHigh, Shared) { 0x00000014, } }) Name (RSB1, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveHigh, Shared) { 0x00000015, } }) Name (RSB2, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveHigh, Shared) { 0x00000016, } }) Name (RSTA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {3,4,6,7,10,11,12,14,15} }) Alias (PRSE, RSID) Device (PCI0) { Name (_HID, EisaId ("PNP0A03")) Name (_ADR, 0x00180000) Name (_BBN, 0x00) Name (_UID, 0x00) Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR00) } Return (PR00) } Device (SBRG) { Name (_ADR, 0x00010000) Device (PIC) { Name (_HID, EisaId ("PNP0000")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0020, 0x0020, 0x00, 0x02) IO (Decode16, 0x00A0, 0x00A0, 0x00, 0x02) IRQNoFlags () {2} }) } Device (DMAD) { Name (_HID, EisaId ("PNP0200")) Name (_CRS, ResourceTemplate () { DMA (Compatibility, BusMaster, Transfer8) {4} IO (Decode16, 0x0000, 0x0000, 0x00, 0x10) IO (Decode16, 0x0081, 0x0081, 0x00, 0x03) IO (Decode16, 0x0087, 0x0087, 0x00, 0x01) IO (Decode16, 0x0089, 0x0089, 0x00, 0x03) IO (Decode16, 0x008F, 0x008F, 0x00, 0x01) IO (Decode16, 0x00C0, 0x00C0, 0x00, 0x20) }) } Device (TMR) { Name (_HID, EisaId ("PNP0100")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0040, 0x0040, 0x00, 0x04) IRQNoFlags () {0} }) } Device (RTC0) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, 0x0070, 0x00, 0x02) IRQNoFlags () {8} }) } Device (SPKR) { Name (_HID, EisaId ("PNP0800")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0061, 0x0061, 0x00, 0x01) }) } Device (COPR) { Name (_HID, EisaId ("PNP0C04")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x00F0, 0x00F0, 0x00, 0x10) IRQNoFlags () {13} }) } Device (FDC) { Name (_HID, EisaId ("PNP0700")) Name (_FDE, Package (0x05) { 0x01, 0x00, 0x02, 0x02, 0x02 }) Method (_STA, 0, NotSerialized) { Return (DSTA (0x03)) } Method (_DIS, 0, NotSerialized) { DCNT (0x03, 0x00) } Method (_CRS, 0, NotSerialized) { DCRS (0x03) Store (IRQM, IRQE) Store (DMAM, DMAE) Store (IO11, IO21) Store (IO12, IO22) Store (0x06, LEN2) Add (IO21, 0x07, IO31) Store (IO31, IO32) Store (0x01, LEN3) Return (CRS2) } Method (_SRS, 1, NotSerialized) { DSRS (Arg0, 0x03) } Name (_PRS, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IRQNoFlags () {6} DMA (Compatibility, NotBusMaster, Transfer8) {2} IO (Decode16, 0x03F0, 0x03F0, 0x01, 0x06) IO (Decode16, 0x03F7, 0x03F7, 0x01, 0x01) } StartDependentFnNoPri () { IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {1,2,3} IO (Decode16, 0x03F0, 0x03F0, 0x01, 0x06) IO (Decode16, 0x03F7, 0x03F7, 0x01, 0x01) } StartDependentFnNoPri () { IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {1,2,3} IO (Decode16, 0x0370, 0x0370, 0x01, 0x06) IO (Decode16, 0x0377, 0x0377, 0x01, 0x01) } EndDependentFn () }) } Device (LPTE) { Method (_HID, 0, NotSerialized) { If (LPTM (0x02)) { Return (0x0104D041) } Else { Return (0x0004D041) } } Method (_STA, 0, NotSerialized) { Return (DSTA (0x02)) } Method (_DIS, 0, NotSerialized) { DCNT (0x02, 0x00) } Method (_CRS, 0, NotSerialized) { Return (ECRS (0x02)) } Method (_SRS, 1, NotSerialized) { ESRS (Arg0, 0x02) } Method (_PRS, 0, NotSerialized) { If (LPTM (0x02)) { Return (EPPR) } Else { Return (LPPR) } } Name (LPPR, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x0378, 0x0378, 0x01, 0x08) IRQNoFlags () {7} } StartDependentFnNoPri () { IO (Decode16, 0x0378, 0x0378, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} } StartDependentFnNoPri () { IO (Decode16, 0x0278, 0x0278, 0x01, 0x08) IRQNoFlags () {3,4,5,6,7,10,11,12} } StartDependentFnNoPri () { IO (Decode16, 0x03BC, 0x03BC, 0x01, 0x04) IRQNoFlags () {3,4,5,6,7,10,11,12} } EndDependentFn () }) Name (EPPR, ResourceTemplate () { StartDependentFn (0x00, 0x00) { IO (Decode16, 0x0378, 0x0378, 0x01, 0x08) IO (Decode16, 0x0778, 0x0778, 0x01, 0x04) IRQNoFlags () {7} DMA (Compatibility, NotBusMaster, Transfer8) {3} } StartDependentFnNoPri () { IO (Decode16, 0x0378, 0x0378, 0x01, 0x08) IO (Decode16, 0x0778, 0x0778, 0x01, 0x04) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,3} } StartDependentFnNoPri () { IO (Decode16, 0x0278, 0x0278, 0x01, 0x08) IO (Decode16, 0x0678, 0x0678, 0x01, 0x04) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,3} } StartDependentFnNoPri () { IO (Decode16, 0x03BC, 0x03BC, 0x01, 0x04) IO (Decode16, 0x07BC, 0x07BC, 0x01, 0x04) IRQNoFlags () {3,4,5,6,7,10,11,12} DMA (Compatibility, NotBusMaster, Transfer8) {0,1,3} } EndDependentFn () }) Name (EBUF, ResourceTemplate () { IO (Decode16, 0x0378, 0x0378, 0x01, 0x08) IO (Decode16, 0x0778, 0x0778, 0x01, 0x04) IRQNoFlags () {7} DMA (Compatibility, NotBusMaster, Transfer8) {} }) CreateByteField (EBUF, 0x02, EPLO) CreateByteField (EBUF, 0x03, EPHI) CreateWordField (EBUF, 0x02, EPHL) CreateWordField (EBUF, 0x04, EPRL) CreateWordField (EBUF, 0x06, ALM1) CreateWordField (EBUF, 0x0A, E4LO) CreateWordField (EBUF, 0x0C, E4RL) CreateWordField (EBUF, 0x0E, ELNG) CreateWordField (EBUF, 0x11, EIRQ) CreateByteField (EBUF, 0x14, EDMA) Method (ECRS, 1, NotSerialized) { ENFG (CGLD (Arg0)) Store (IOAH, EPHI) Store (IOAL, EPLO) Store (EPHL, EPRL) And (OPT0, 0x02, Local0) If (Local0) { Add (EPHL, 0x0400, E4LO) } Else { Store (0x00, E4LO) Store (0x00, ELNG) } Store (E4LO, E4RL) If (LEqual (EPHL, 0x03BC)) { Store (0x0401, ALM1) } Else { Store (0x0801, ALM1) } Store (One, Local0) Store (INTR, Local1) ShiftLeft (Local0, Local1, EIRQ) Store (DMCH, Local1) If (LGreater (Local1, 0x03)) { Store (0x00, EDMA) } Else { Store (One, Local0) ShiftLeft (Local0, Local1, EDMA) } EXFG () Return (EBUF) } Method (ESRS, 2, NotSerialized) { CreateByteField (Arg0, 0x02, LOEP) CreateByteField (Arg0, 0x03, HIEP) CreateWordField (Arg0, 0x11, IRQE) CreateByteField (Arg0, 0x14, DMAE) ENFG (CGLD (Arg1)) Store (LOEP, IOAL) Store (HIEP, IOAH) If (IRQE) { FindSetRightBit (IRQE, Local0) Subtract (Local0, 0x01, INTR) } Else { Store (0x00, INTR) } If (DMAE) { FindSetRightBit (DMAE, Local0) Subtract (Local0, 0x01, DMCH) } Else { Store (0x04, DMCH) } Store (One, ACTR) EXFG () } } Device (GAME) { Name (_HID, EisaId ("PNPB02F")) Method (_STA, 0, NotSerialized) { Return (DSTA (0x08)) } Method (_DIS, 0, NotSerialized) { DCNT (0x08, 0x00) } Name (GMCR, ResourceTemplate () { IO (Decode16, 0x0000, 0x0000, 0x08, 0x08) }) Method (_CRS, 0, NotSerialized) { CreateWordField (GMCR, 0x02, IOGL) CreateWordField (GMCR, 0x04, IOGH) ENFG (CGLD (0x08)) ShiftLeft (IOAH, 0x08, IOGL) Or (IOAL, IOGL, IOGL) Store (IOGL, IOGH) EXFG () Return (GMCR) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, 0x02, IO11) ENFG (CGLD (0x08)) And (IO11, 0xFF, IOAL) ShiftRight (IO11, 0x08, IOAH) DCNT (0x08, 0x01) EXFG () } Name (_PRS, ResourceTemplate () { IO (Decode16, 0x0200, 0x0208, 0x08, 0x08) }) } Device (RMSC) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x10) Name (CRS, ResourceTemplate () { IO (Decode16, 0x0010, 0x0010, 0x00, 0x10) IO (Decode16, 0x0022, 0x0022, 0x00, 0x1E) IO (Decode16, 0x0044, 0x0044, 0x00, 0x1C) IO (Decode16, 0x0062, 0x0062, 0x00, 0x02) IO (Decode16, 0x0065, 0x0065, 0x00, 0x0B) IO (Decode16, 0x0072, 0x0072, 0x00, 0x0E) IO (Decode16, 0x0080, 0x0080, 0x00, 0x01) IO (Decode16, 0x0084, 0x0084, 0x00, 0x03) IO (Decode16, 0x0088, 0x0088, 0x00, 0x01) IO (Decode16, 0x008C, 0x008C, 0x00, 0x03) IO (Decode16, 0x0090, 0x0090, 0x00, 0x10) IO (Decode16, 0x00A2, 0x00A2, 0x00, 0x1E) IO (Decode16, 0x00E0, 0x00E0, 0x00, 0x10) IO (Decode16, 0x0190, 0x0190, 0x00, 0x04) IO (Decode16, 0x04D0, 0x04D0, 0x00, 0x02) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, 0x0000, 0x7FFF, 0x0000, 0x8000) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, 0x0000, 0x7FFF, 0x0000, 0x8000) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, 0x0000, 0x7FFF, 0x0000, 0x8000) }) Method (_CRS, 0, NotSerialized) { CreateWordField (CRS, 0x80, GP00) CreateWordField (CRS, 0x82, GP01) CreateWordField (CRS, 0x86, GP0L) Store (PMBS, GP00) Store (PMLN, Local0) Add (PMBS, Decrement (Local0), GP01) Store (PMLN, GP0L) CreateWordField (CRS, 0x90, GP20) CreateWordField (CRS, 0x92, GP21) CreateWordField (CRS, 0x96, GP2L) Store (GPBS, GP20) Store (GPLN, Local0) Add (GPBS, Decrement (Local0), GP21) Store (GPLN, GP2L) CreateWordField (CRS, 0xA0, GP30) CreateWordField (CRS, 0xA2, GP31) CreateWordField (CRS, 0xA6, GP3L) Store (ACBS, GP30) Store (ACBL, Local0) Add (ACBS, Decrement (Local0), GP31) Store (ACBL, GP3L) Return (CRS) } } Device (OMSC) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x00) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) }) Method (_CRS, 0, NotSerialized) { If (APCB) { CreateDWordField (CRS, 0x08, ML01) CreateDWordField (CRS, 0x04, MB01) CreateDWordField (CRS, 0x14, ML02) CreateDWordField (CRS, 0x10, MB02) Store (APCB, MB01) Store (APCL, ML01) Store (0xFEE00000, MB02) Store (0x00100000, ML02) } CreateDWordField (CRS, 0x20, ML03) CreateDWordField (CRS, 0x1C, MB03) Store (0xFF780000, MB03) Store (0x00040000, ML03) Return (CRS) } } Device (\_SB.RMEM) { Name (_HID, EisaId ("PNP0C01")) Name (_UID, 0x01) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadWrite, 0x00000000, 0x000A0000) Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) Memory32Fixed (ReadOnly, 0x000E0000, 0x00020000) Memory32Fixed (ReadWrite, 0x00100000, 0x00000000) Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) }) Method (_CRS, 0, NotSerialized) { CreateDWordField (CRS, 0x10, BAS1) CreateDWordField (CRS, 0x14, LEN1) CreateDWordField (CRS, 0x1C, BAS2) CreateDWordField (CRS, 0x20, LEN2) CreateDWordField (CRS, 0x2C, LEN3) CreateDWordField (CRS, 0x34, BAS4) CreateDWordField (CRS, 0x38, LEN4) If (OSFL ()) {} Else { If (MG1B) { If (LGreater (MG1B, 0x000C0000)) { Store (0x000C0000, BAS1) Subtract (MG1B, BAS1, LEN1) } } Else { Store (0x000C0000, BAS1) Store (0x00020000, LEN1) } If (Add (MG1B, MG1L, Local0)) { Store (Local0, BAS2) Subtract (0x00100000, BAS2, LEN2) } } Subtract (MG2B, 0x00100000, LEN3) Add (MG2B, MG2L, BAS4) Subtract (0x00, BAS4, LEN4) Return (CRS) } } Device (PS2K) { Name (_HID, EisaId ("PNP0303")) Name (_CID, 0x0B03D041) Method (_STA, 0, NotSerialized) { ShiftLeft (0x01, 0x0A, Local0) If (And (IOST, Local0)) { Return (0x0F) } Return (0x00) } Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0060, 0x0060, 0x00, 0x01) IO (Decode16, 0x0064, 0x0064, 0x00, 0x01) IRQNoFlags () {1} }) } Method (PS2K._PRW, 0, NotSerialized) { Return (GPRW (0x10, 0x04)) } Device (PS2M) { Name (_HID, EisaId ("PNP0F12")) Name (_CID, 0x130FD041) Method (_STA, 0, NotSerialized) { ShiftLeft (0x01, 0x0C, Local0) If (And (IOST, Local0)) { Return (0x0F) } Return (0x00) } Name (CRS1, ResourceTemplate () { IRQNoFlags () {12} }) Name (CRS2, ResourceTemplate () { IO (Decode16, 0x0060, 0x0060, 0x00, 0x01) IO (Decode16, 0x0064, 0x0064, 0x00, 0x01) IRQNoFlags () {12} }) Method (_CRS, 0, NotSerialized) { ShiftLeft (0x01, 0x0A, Local0) If (And (IOST, Local0)) { Return (CRS1) } Else { Return (CRS2) } } } Method (PS2M._PRW, 0, NotSerialized) { Return (GPRW (0x10, 0x04)) } Device (SIOR) { Name (_HID, EisaId ("PNP0C02")) Method (_UID, 0, NotSerialized) { Return (SPIO) } Name (CRS, ResourceTemplate () { IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) }) Method (_CRS, 0, NotSerialized) { If (LAnd (LNot (LEqual (SPIO, 0x03F0)), LGreater (SPIO, 0xF0))) { CreateWordField (CRS, 0x02, GP10) CreateWordField (CRS, 0x04, GP11) CreateByteField (CRS, 0x07, GPL1) Store (SPIO, GP10) Store (SPIO, GP11) Store (0x02, GPL1) } If (IO1B) { CreateWordField (CRS, 0x0A, GP20) CreateWordField (CRS, 0x0C, GP21) CreateByteField (CRS, 0x0F, GPL2) Store (IO1B, GP20) Store (IO1B, GP21) Store (IO1L, GPL2) } If (IO3B) { CreateWordField (CRS, 0x12, GP30) CreateWordField (CRS, 0x14, GP31) CreateByteField (CRS, 0x17, GPL3) Store (IO3B, GP30) Store (IO3B, GP31) Store (IO3L, GPL3) } Return (CRS) } } Name (DCAT, Package (0x15) { 0x01, 0x02, 0x03, 0x00, 0xFF, 0x08, 0xFF, 0xFF, 0x09, 0xFF, 0x05, 0x04, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xFF, 0xFF }) Name (IKEY, Package (0x02) { Package (0x04) { 0x87, 0x01, 0x55, 0x55 }, Package (0x04) { 0x87, 0x01, 0x55, 0xAA } }) Name (KBFG, 0x01) Name (MSFG, 0x01) Name (UR1F, 0x01) Method (ENFG, 1, NotSerialized) { Store (0x87, INDX) Store (0x01, INDX) Store (0x55, INDX) If (LEqual (SPIO, 0x2E)) { Store (0x55, INDX) } Else { Store (0xAA, INDX) } Store (Arg0, LDN) } Method (EXFG, 0, NotSerialized) { Store (0x02, INDX) Store (0x02, DATA) } Method (LPTM, 1, NotSerialized) { ENFG (CGLD (Arg0)) And (OPT0, 0x02, Local0) EXFG () Return (Local0) } Method (UHID, 1, NotSerialized) { If (LEqual (Arg0, 0x01)) { ENFG (CGLD (Arg0)) And (OPT0, 0x70, Local0) EXFG () If (Local0) { Return (0x1005D041) } } Return (0x0105D041) } Method (SIOS, 1, NotSerialized) { Store ("SIOS", Debug) Store (0x00, GP10) Store (0x00, GP40) If (LLess (Arg0, 0x05)) { ENFG (0x04) Store (0x01, ACTR) If (KBFG) { Or (OPT1, 0x08, OPT1) Or (OPT0, 0x08, OPT0) } Else { And (OPT0, 0xF7, OPT0) } If (MSFG) { Or (OPT1, 0x10, OPT1) Or (OPT0, 0x10, OPT0) } Else { And (OPT0, 0xEF, OPT0) } EXFG () ENFG (0x07) And (OPF9, 0xFE, OPF9) And (OPC0, 0xFE, OPC0) And (OPC3, 0xFE, OPC3) And (OP29, 0xEF, OP29) EXFG () } Else { ENFG (0x07) And (OPC0, 0x00, OPC0) Or (OPC0, 0x01, OPC0) And (OPC3, 0x00, OPC3) Or (OPC3, 0x01, OPC3) Or (OPF9, 0x01, OPF9) And (OP29, 0xEF, OP29) EXFG () } } Method (SIOW, 1, NotSerialized) { Store (0x01, GP10) Store (0x01, GP40) Store ("SIOW", Debug) ENFG (0x04) Store (0x00, OPT0) Store (0xFF, OPT1) EXFG () ENFG (0x07) Or (OP29, 0x10, OP29) Or (OPC0, 0x01, OPC0) Or (OPC3, 0x01, OPC3) EXFG () ENFG (0x05) Or (ACTR, 0x01, ACTR) EXFG () ENFG (0x06) Or (ACTR, 0x01, ACTR) EXFG () } Method (SIOH, 0, NotSerialized) { } OperationRegion (IOID, SystemIO, SPIO, 0x02) Field (IOID, ByteAcc, NoLock, Preserve) { INDX, 8, DATA, 8 } IndexField (INDX, DATA, ByteAcc, NoLock, Preserve) { Offset (0x07), LDN, 8, Offset (0x29), OP29, 8, Offset (0x30), ACTR, 8, Offset (0x60), IOAH, 8, IOAL, 8, IOH2, 8, IOL2, 8, Offset (0x70), INTR, 8, Offset (0x74), DMCH, 8, Offset (0xC0), OPC0, 8, OPC1, 8, OPC2, 8, OPC3, 8, Offset (0xF0), OPT0, 8, OPT1, 8, OPT2, 8, Offset (0xF8), OPF8, 8, OPF9, 8, OPFA, 8, OPFB, 8 } Method (PS2K._PSW, 1, NotSerialized) { If (Arg0) { Store (0x01, KBFG) } Else { Store (0x00, KBFG) } } Method (PS2M._PSW, 1, NotSerialized) { If (Arg0) { Store (0x01, MSFG) } Else { Store (0x00, MSFG) } } Method (CGLD, 1, NotSerialized) { Return (DerefOf (Index (DCAT, Arg0))) } Method (DSTA, 1, NotSerialized) { ENFG (CGLD (Arg0)) Store (ACTR, Local0) EXFG () If (LEqual (Local0, 0xFF)) { Return (0x00) } And (Local0, 0x01, Local0) Or (IOST, ShiftLeft (Local0, Arg0), IOST) If (Local0) { Return (0x0F) } Else { If (And (ShiftLeft (0x01, Arg0), IOST)) { Return (0x0D) } Else { Return (0x00) } } } Method (DCNT, 2, NotSerialized) { ENFG (CGLD (Arg0)) ShiftLeft (IOAH, 0x08, Local1) Or (IOAL, Local1, Local1) RRIO (Arg0, Arg1, Local1, 0x08) If (LAnd (LLess (DMCH, 0x04), LNot (LEqual (And (DMCH, 0x03, Local1), 0x00)))) { RDMA (Arg0, Arg1, Increment (Local1)) } Store (Arg1, ACTR) EXFG () } Name (CRS1, ResourceTemplate () { IRQNoFlags () {} DMA (Compatibility, NotBusMaster, Transfer8) {} IO (Decode16, 0x0000, 0x0000, 0x01, 0x00) }) CreateWordField (CRS1, 0x01, IRQM) CreateByteField (CRS1, 0x04, DMAM) CreateWordField (CRS1, 0x08, IO11) CreateWordField (CRS1, 0x0A, IO12) CreateByteField (CRS1, 0x0D, LEN1) Name (CRS2, ResourceTemplate () { IRQNoFlags () {6} DMA (Compatibility, NotBusMaster, Transfer8) {2} IO (Decode16, 0x0000, 0x0000, 0x01, 0x00) IO (Decode16, 0x0000, 0x0000, 0x01, 0x00) }) CreateWordField (CRS2, 0x01, IRQE) CreateByteField (CRS2, 0x04, DMAE) CreateWordField (CRS2, 0x08, IO21) CreateWordField (CRS2, 0x0A, IO22) CreateByteField (CRS2, 0x0D, LEN2) CreateWordField (CRS2, 0x10, IO31) CreateWordField (CRS2, 0x12, IO32) CreateByteField (CRS2, 0x15, LEN3) Method (DCRS, 1, NotSerialized) { ENFG (CGLD (Arg0)) ShiftLeft (IOAH, 0x08, IO11) Or (IOAL, IO11, IO11) Store (IO11, IO12) Subtract (FindSetRightBit (IO11), 0x01, Local0) ShiftLeft (0x01, Local0, LEN1) If (INTR) { ShiftLeft (0x01, INTR, IRQM) } Else { Store (0x00, IRQM) } And (DMCH, 0x03, Local1) If (Or (LGreater (DMCH, 0x03), LEqual (DMCH, 0xFF))) { Store (0x00, DMAM) } Else { ShiftLeft (0x01, Local1, DMAM) } EXFG () Return (CRS1) } Method (DSRS, 2, NotSerialized) { CreateWordField (Arg0, 0x01, IRQM) CreateByteField (Arg0, 0x04, DMAM) CreateWordField (Arg0, 0x08, IO11) ENFG (CGLD (Arg1)) And (IO11, 0xFF, IOAL) ShiftRight (IO11, 0x08, IOAH) If (IRQM) { FindSetRightBit (IRQM, Local0) Subtract (Local0, 0x01, INTR) } Else { Store (0x00, INTR) } If (DMAM) { FindSetRightBit (DMAM, Local0) Subtract (Local0, 0x01, DMCH) } Else { Store (0x04, DMCH) } EXFG () DCNT (Arg1, 0x01) } OperationRegion (GPIO, SystemIO, 0x0480, 0x04) Field (GPIO, ByteAcc, NoLock, Preserve) { GP10, 1, GP11, 1, GP12, 1, GP13, 1, GO14, 1, GO15, 1, GO16, 1, GO17, 1, GP20, 1, GP21, 1, GP22, 1, GP23, 1, GO24, 1, GO25, 1, GO26, 1, GO27, 1, GP30, 1, GP31, 1, GP32, 1, GP33, 1, GO34, 1, GO35, 1, GO36, 1, GO37, 1, GP40, 1, GP41, 1, GP42, 1, GP43, 1, GO44, 1, GO45, 1, GO46, 1, GO47, 1 } Device (UAR1) { Name (_UID, 0x01) Name (_HID, EisaId ("PNP0501")) Method (_STA, 0, NotSerialized) { Return (DSTA (0x00)) } Method (_DIS, 0, NotSerialized) { DCNT (0x00, 0x00) } Method (_CRS, 0, NotSerialized) { Return (DCRS (0x00)) } Method (_SRS, 1, NotSerialized) { DSRS (Arg0, 0x00) } Method (_PRS, 0, NotSerialized) { Return (CMPR) } Name (CMPR, ResourceTemplate () { IRQNoFlags () {3,4,5,6,7,10,11,12} StartDependentFnNoPri () { DMA (Compatibility, NotBusMaster, Transfer8) {} IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08) } StartDependentFnNoPri () { DMA (Compatibility, NotBusMaster, Transfer8) {} IO (Decode16, 0x02F8, 0x02F8, 0x01, 0x08) } StartDependentFnNoPri () { DMA (Compatibility, NotBusMaster, Transfer8) {} IO (Decode16, 0x03E8, 0x03E8, 0x01, 0x08) } StartDependentFnNoPri () { DMA (Compatibility, NotBusMaster, Transfer8) {} IO (Decode16, 0x02E8, 0x02E8, 0x01, 0x08) } EndDependentFn () }) } Method (UAR1._PRW, 0, NotSerialized) { Return (GPRW (0x03, 0x04)) } Device (UAR2) { Name (_UID, 0x02) Method (_HID, 0, NotSerialized) { Return (UHID (0x01)) } Method (_STA, 0, NotSerialized) { Return (DSTA (0x01)) } Method (_DIS, 0, NotSerialized) { DCNT (0x01, 0x00) } Method (_CRS, 0, NotSerialized) { Return (DCRS (0x01)) } Method (_SRS, 1, NotSerialized) { DSRS (Arg0, 0x01) } Method (_PRS, 0, NotSerialized) { Return (CMPR) } Name (CMPR, ResourceTemplate () { IRQNoFlags () {3,4,5,6,7,10,11,12} StartDependentFnNoPri () { DMA (Compatibility, NotBusMaster, Transfer8) {} IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08) } StartDependentFnNoPri () { DMA (Compatibility, NotBusMaster, Transfer8) {} IO (Decode16, 0x02F8, 0x02F8, 0x01, 0x08) } StartDependentFnNoPri () { DMA (Compatibility, NotBusMaster, Transfer8) {} IO (Decode16, 0x03E8, 0x03E8, 0x01, 0x08) } StartDependentFnNoPri () { DMA (Compatibility, NotBusMaster, Transfer8) {} IO (Decode16, 0x02E8, 0x02E8, 0x01, 0x08) } StartDependentFnNoPri () { DMA (Compatibility, NotBusMaster, Transfer8) {1,2,3} IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08) } StartDependentFnNoPri () { DMA (Compatibility, NotBusMaster, Transfer8) {1,2,3} IO (Decode16, 0x02F8, 0x02F8, 0x01, 0x08) } StartDependentFnNoPri () { DMA (Compatibility, NotBusMaster, Transfer8) {1,2,3} IO (Decode16, 0x03E8, 0x03E8, 0x01, 0x08) } StartDependentFnNoPri () { DMA (Compatibility, NotBusMaster, Transfer8) {1,2,3} IO (Decode16, 0x02E8, 0x02E8, 0x01, 0x08) } EndDependentFn () }) } Method (UAR2._PRW, 0, NotSerialized) { Return (GPRW (0x03, 0x04)) } } Device (SMBS) { Name (_ADR, 0x00010001) } Device (USB0) { Name (_ADR, 0x00020000) Name (_S1D, 0x01) Method (_S3D, 0, NotSerialized) { If (LEqual (OSFL (), 0x02)) { Return (0x02) } Else { Return (0x03) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0D, 0x04)) } } Device (AC97) { Name (_ADR, 0x00060000) } Device (MDM) { Name (_ADR, 0x00060001) } Device (USB1) { Name (_ADR, 0x00020001) Name (_S1D, 0x01) Method (_S3D, 0, NotSerialized) { If (LEqual (OSFL (), 0x02)) { Return (0x02) } Else { Return (0x03) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0C, 0x04)) } } Device (USB2) { Name (_ADR, 0x00020002) OperationRegion (U2WO, PCI_Config, 0x49, 0x01) Field (U2WO, AnyAcc, NoLock, Preserve) { US2W, 1 } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x01, US2W) } Else { Store (0x00, US2W) } } Name (_S1D, 0x01) Name (_S3D, 0x01) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x05, 0x04)) } } Device (P0P1) { Name (_ADR, 0x000A0000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x00, 0x04)) } Method (_PRT, 0, NotSerialized) { Return (PR01) } } Device (P0P2) { Name (_ADR, 0x000B0000) } Device (IDE0) { Name (_ADR, 0x00080000) Name (REGF, 0x01) Method (_REG, 2, NotSerialized) { If (LEqual (Arg0, 0x02)) { Store (Arg1, REGF) } } OperationRegion (A090, PCI_Config, 0x50, 0x18) Field (A090, DWordAcc, NoLock, Preserve) { ID20, 16, Offset (0x08), IDTS, 16, IDTP, 16, ID22, 32, UMSS, 16, UMSP, 16 } Name (TIM0, Package (0x07) { Package (0x05) { 0x3C, 0x78, 0xB4, 0xF0, 0x0384 }, Package (0x05) { 0x11, 0x20, 0x22, 0x47, 0xA8 }, Package (0x07) { 0x70, 0x49, 0x36, 0x27, 0x19, 0x11, 0x0C }, Package (0x05) { 0x05, 0x04, 0x03, 0x02, 0x00 }, Package (0x04) { 0x02, 0x01, 0x00, 0x00 }, Package (0x08) { 0x02, 0x01, 0x00, 0x00, 0x03, 0x04, 0x05, 0x06 }, Package (0x07) { 0x02, 0x01, 0x00, 0x04, 0x05, 0x06, 0x07 } }) Name (TMD0, Buffer (0x14) {}) CreateDWordField (TMD0, 0x00, PIO0) CreateDWordField (TMD0, 0x04, DMA0) CreateDWordField (TMD0, 0x08, PIO1) CreateDWordField (TMD0, 0x0C, DMA1) CreateDWordField (TMD0, 0x10, CHNF) OperationRegion (CFG2, PCI_Config, 0x58, 0x0C) Field (CFG2, DWordAcc, NoLock, Preserve) { SSPT, 8, SMPT, 8, PSPT, 8, PMPT, 8, SSAS, 2, SMAS, 2, PSAS, 2, PMAS, 2, Offset (0x06), SDDR, 4, SDDA, 4, PDDR, 4, PDDA, 4, SSUT, 3, , 3, SSUE, 2, SMUT, 3, , 3, SMUE, 2, PSUT, 3, , 3, PSUE, 2, PMUT, 3, , 3, PMUE, 2 } Name (GMPT, 0x00) Name (GMUE, 0x00) Name (GMUT, 0x00) Name (GSPT, 0x00) Name (GSUE, 0x00) Name (GSUT, 0x00) Device (CHN0) { Name (_ADR, 0x00) Method (_GTM, 0, NotSerialized) { Store ("GTM_CHN0", Debug) Return (GTM (PMPT, PMUE, PMUT, PSPT, PSUE, PSUT)) } Method (_STM, 3, NotSerialized) { Store ("STM_CHN0", Debug) Store (Arg0, Debug) Store (Arg0, TMD0) Store (PMPT, GMPT) Store (PMUE, GMUE) Store (PMUT, GMUT) Store (PSPT, GSPT) Store (PSUE, GSUE) Store (PSUT, GSUT) STM () Store (GMPT, PMPT) Store (GMUE, PMUE) Store (GMUT, PMUT) Store (GSPT, PSPT) Store (GSUE, PSUE) Store (GSUT, PSUT) Store (GTF (0x00, Arg1), ATA0) Store (GTF (0x01, Arg2), ATA1) } Device (DRV0) { Name (_ADR, 0x00) Method (_GTF, 0, NotSerialized) { Store ("_GTF_CHN0_DRV0", Debug) Return (RATA (ATA0)) } } Device (DRV1) { Name (_ADR, 0x01) Method (_GTF, 0, NotSerialized) { Store ("_GTF_CHN0_DRV1", Debug) Return (RATA (ATA1)) } } } Device (CHN1) { Name (_ADR, 0x01) Method (_GTM, 0, NotSerialized) { Store ("GTM_CHN1", Debug) Return (GTM (SMPT, SMUE, SMUT, SSPT, SSUE, SSUT)) } Method (_STM, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg0, TMD0) Store (SMPT, GMPT) Store (SMUE, GMUE) Store (SMUT, GMUT) Store (SSPT, GSPT) Store (SSUE, GSUE) Store (SSUT, GSUT) STM () Store (GMPT, SMPT) Store (GMUE, SMUE) Store (GMUT, SMUT) Store (GSPT, SSPT) Store (GSUE, SSUE) Store (GSUT, SSUT) Store (GTF (0x00, Arg1), ATA2) Store (GTF (0x01, Arg2), ATA3) } Device (DRV0) { Name (_ADR, 0x00) Method (_GTF, 0, NotSerialized) { Store ("_GTF_CHN1_DRV0", Debug) Return (RATA (ATA2)) } } Device (DRV1) { Name (_ADR, 0x01) Method (_GTF, 0, NotSerialized) { Store ("_GTF_CHN1_DRV1", Debug) Return (RATA (ATA3)) } } } Method (GTM, 6, Serialized) { Store (Ones, PIO0) Store (Ones, PIO1) Store (Ones, DMA0) Store (Ones, DMA1) Store (0x10, CHNF) If (REGF) {} Else { Return (TMD0) } If (LEqual (PTS0, 0x01)) { If (OSFL ()) { Store (0x01, IR0M) } } Store (Match (DerefOf (Index (TIM0, 0x01)), MEQ, Arg0, MTR, 0x00, 0x00), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x00)), Local6)), Local7) Store (Local7, DMA0) Store (Local7, PIO0) Store (Match (DerefOf (Index (TIM0, 0x01)), MEQ, Arg3, MTR, 0x00, 0x00), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x00)), Local6)), Local7) Store (Local7, DMA1) Store (Local7, PIO1) If (Arg1) { Store (DerefOf (Index (DerefOf (Index (TIM0, 0x05)), Arg2)), Local5) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local5)), DMA0) Or (CHNF, 0x01, CHNF) } If (Arg4) { Store (DerefOf (Index (DerefOf (Index (TIM0, 0x05)), Arg5)), Local5) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local5)), DMA1) Or (CHNF, 0x04, CHNF) } Store (TMD0, Debug) Return (TMD0) } Method (STM, 0, Serialized) { If (REGF) {} Else { Return (0x00) } If (PTS0) { Store (SID0, ID20) Store (SID1, IDTS) Store (SID2, IDTP) Store (SID3, ID22) Store (SID4, UMSS) Store (SID5, UMSP) } Else { Store (ID20, SID0) Store (IDTS, SID1) Store (IDTP, SID2) Store (ID22, SID3) Store (UMSS, SID4) Store (UMSP, SID5) } Store (0x00, PTS0) Store (0x00, GMUE) Store (0x00, GMUT) Store (0x00, GSUE) Store (0x00, GSUT) If (And (CHNF, 0x01)) { Store (Match (DerefOf (Index (TIM0, 0x02)), MLE, DMA0, MTR, 0x00, 0x00), Local0) If (LGreater (Local0, 0x06)) { Store (0x06, Local0) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0)), GMUT) Or (GMUE, 0x03, GMUE) } Else { If (Or (LEqual (PIO0, Ones), LEqual (PIO0, 0x00))) { If (And (LLess (DMA0, Ones), LGreater (DMA0, 0x00))) { Store (DMA0, PIO0) } } } If (And (CHNF, 0x04)) { Store (Match (DerefOf (Index (TIM0, 0x02)), MLE, DMA1, MTR, 0x00, 0x00), Local0) If (LGreater (Local0, 0x06)) { Store (0x06, Local0) } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0)), GSUT) Or (GSUE, 0x03, GSUE) } Else { If (Or (LEqual (PIO1, Ones), LEqual (PIO1, 0x00))) { If (And (LLess (DMA1, Ones), LGreater (DMA1, 0x00))) { Store (DMA1, PIO1) } } } And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIO0, MTR, 0x00, 0x00), 0x07, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x01)), Local0)), Local1) Store (Local1, GMPT) And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIO1, MTR, 0x00, 0x00), 0x07, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x01)), Local0)), Local1) Store (Local1, GSPT) Return (0x00) } Name (AT01, Buffer (0x07) { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xEF }) Name (AT02, Buffer (0x07) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90 }) Name (AT03, Buffer (0x07) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6 }) Name (AT04, Buffer (0x07) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x91 }) Name (ATA0, Buffer (0x1D) {}) Name (ATA1, Buffer (0x1D) {}) Name (ATA2, Buffer (0x1D) {}) Name (ATA3, Buffer (0x1D) {}) Name (ATAB, Buffer (0x1D) {}) CreateByteField (ATAB, 0x00, CMDC) Method (GTFB, 3, Serialized) { Multiply (CMDC, 0x38, Local0) Add (Local0, 0x08, Local1) CreateField (ATAB, Local1, 0x38, CMDX) Multiply (CMDC, 0x07, Local0) CreateByteField (ATAB, Add (Local0, 0x02), A001) CreateByteField (ATAB, Add (Local0, 0x06), A005) Store (Arg0, CMDX) Store (Arg1, A001) Store (Arg2, A005) Increment (CMDC) } Method (GTF, 2, Serialized) { Store ("GTF_Entry", Debug) Store (Arg1, Debug) Store (0x00, CMDC) Name (ID49, 0x0C00) Name (ID59, 0x00) Name (ID53, 0x04) Name (ID63, 0x0F00) Name (ID88, 0x0F00) Name (IRDY, 0x01) Name (PIOT, 0x00) Name (DMAT, 0x00) If (LEqual (SizeOf (Arg1), 0x0200)) { CreateWordField (Arg1, 0x62, IW49) Store (IW49, ID49) CreateWordField (Arg1, 0x6A, IW53) Store (IW53, ID53) CreateWordField (Arg1, 0x7E, IW63) Store (IW63, ID63) CreateWordField (Arg1, 0x76, IW59) Store (IW59, ID59) CreateWordField (Arg1, 0xB0, IW88) Store (IW88, ID88) } Store (0xA0, Local7) If (Arg0) { Store (0xB0, Local7) And (CHNF, 0x08, IRDY) If (And (CHNF, 0x10)) { Store (PIO1, PIOT) } Else { Store (PIO0, PIOT) } If (And (CHNF, 0x04)) { If (And (CHNF, 0x10)) { Store (DMA1, DMAT) } Else { Store (DMA0, DMAT) } } } Else { And (CHNF, 0x02, IRDY) Store (PIO0, PIOT) If (And (CHNF, 0x01)) { Store (DMA0, DMAT) } } If (LAnd (LAnd (And (ID53, 0x04), And (ID88, 0xFF00)), DMAT)) { Store (Match (DerefOf (Index (TIM0, 0x02)), MLE, DMAT, MTR, 0x00, 0x00), Local1) If (LGreater (Local1, 0x06)) { Store (0x06, Local1) } GTFB (AT01, Or (0x40, Local1), Local7) } Else { If (LAnd (And (ID63, 0xFF00), PIOT)) { And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIOT, MTR, 0x00, 0x00), 0x03, Local0) Or (0x20, DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), Local1) GTFB (AT01, Local1, Local7) } } If (IRDY) { And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIOT, MTR, 0x00, 0x00), 0x07, Local0) Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local0)), Local1) GTFB (AT01, Local1, Local7) } Else { If (And (ID49, 0x0400)) { GTFB (AT01, 0x01, Local7) } } If (LAnd (And (ID59, 0x0100), And (ID59, 0xFF))) { GTFB (AT03, And (ID59, 0xFF), Local7) } Store ("ATAB_GTF", Debug) Store (ATAB, Debug) Return (ATAB) } Method (RATA, 1, NotSerialized) { CreateByteField (Arg0, 0x00, CMDN) Multiply (CMDN, 0x38, Local0) CreateField (Arg0, 0x08, Local0, RETB) Store (RETB, Debug) Return (RETB) } } Device (MAC) { Name (_ADR, 0x00050000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0B, 0x04)) } } } Scope (\_GPE) { Method (_L10, 0, NotSerialized) { \_SB.PCI0.SBRG.SIOH () Notify (\_SB.PWRB, 0x02) } Method (_L03, 0, NotSerialized) { \_SB.PCI0.SBRG.SIOH () Notify (\_SB.PWRB, 0x02) } Method (_L0D, 0, NotSerialized) { Notify (\_SB.PCI0.USB0, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L0C, 0, NotSerialized) { Notify (\_SB.PCI0.USB1, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L05, 0, NotSerialized) { Notify (\_SB.PCI0.USB2, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L00, 0, NotSerialized) { Notify (\_SB.PCI0.P0P1, 0x02) Notify (\_SB.PWRB, 0x02) } Method (_L0B, 0, NotSerialized) { Notify (\_SB.PCI0.MAC, 0x02) Notify (\_SB.PWRB, 0x02) } } Device (PWRB) { Name (_HID, EisaId ("PNP0C0C")) Name (_UID, 0xAA) Name (_STA, 0x0B) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x03, 0x04)) } } } Scope (\_SB) { OperationRegion (\_SB.PCI0.SBRG.BAR0, PCI_Config, 0x00, 0xFF) Field (\_SB.PCI0.SBRG.BAR0, AnyAcc, NoLock, Preserve) { Offset (0x7C), PIRA, 4, PIRB, 4, PIRC, 4, PIRD, 4, PIRE, 4, Offset (0x80), Offset (0x81), PIRM, 4, PIU2, 4, Offset (0x83), , 4, PIID, 4, PIU0, 4, PIU1, 4, PILN, 4, Offset (0x86), PAUI, 4, PIMO, 4, PR0E, 4, PR0F, 4 } Name (BUFA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {15} }) CreateWordField (BUFA, 0x01, ICRS) Method (LSTA, 1, NotSerialized) { If (Arg0) { Return (0x0B) } Else { Return (0x09) } } Method (LPRS, 2, NotSerialized) { If (PICM) { Return (Arg1) } Else { Return (Arg0) } } Method (LCRS, 1, NotSerialized) { If (PICM) { Name (BUFB, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveHigh, Shared) { 0x00000011, } }) CreateByteField (BUFB, 0x05, AIRQ) Store (Arg0, AIRQ) If (LEqual (Arg0, 0x01)) { Store (0x11, AIRQ) } If (LEqual (Arg0, 0x02)) { Store (0x12, AIRQ) } If (LEqual (Arg0, 0x08)) { Store (0x10, AIRQ) } If (LEqual (Arg0, 0x0D)) { Store (0x13, AIRQ) } Return (BUFB) } Else { ShiftLeft (0x01, Arg0, ICRS) Return (BUFA) } } Method (LCRO, 1, NotSerialized) { If (PICM) { Name (BUFB, ResourceTemplate () { Interrupt (ResourceConsumer, Level, ActiveHigh, Shared) { 0x00000014, } }) CreateByteField (BUFB, 0x05, AIRQ) Store (Arg0, AIRQ) If (LEqual (Arg0, 0x02)) { Store (0x16, AIRQ) } If (LEqual (Arg0, 0x08)) { Store (0x14, AIRQ) } If (LEqual (Arg0, 0x0D)) { Store (0x15, AIRQ) } Return (BUFB) } Else { ShiftLeft (0x01, Arg0, ICRS) Return (BUFA) } } Method (LSRS, 1, NotSerialized) { If (PICM) { CreateByteField (Arg0, 0x05, SAIR) Store (SAIR, Local0) If (LEqual (Local0, 0x10)) { Store (0x08, Local0) } If (LEqual (Local0, 0x11)) { Store (0x01, Local0) } If (LEqual (Local0, 0x12)) { Store (0x02, Local0) } If (LEqual (Local0, 0x13)) { Store (0x0D, Local0) } Return (Local0) } Else { CreateWordField (Arg0, 0x01, ISRS) FindSetRightBit (ISRS, Local0) Return (Decrement (Local0)) } } Method (LSRO, 1, NotSerialized) { If (PICM) { CreateByteField (Arg0, 0x05, SAIR) Store (SAIR, Local0) If (LEqual (Local0, 0x14)) { Store (0x08, Local0) } If (LEqual (Local0, 0x15)) { Store (0x0D, Local0) } If (LEqual (Local0, 0x16)) { Store (0x02, Local0) } Return (Local0) } Else { CreateWordField (Arg0, 0x01, ISRS) FindSetRightBit (ISRS, Local0) Return (Decrement (Local0)) } } Device (LNKA) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x01) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRA)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (PRSA, RSA1)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIRA) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRA)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRA) } } Device (LNKB) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x02) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRB)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (PRSB, RSA2)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIRB) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRB)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRB) } } Device (LNKC) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x03) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRC)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (PRSC, RSA3)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIRC) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRC)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRC) } } Device (LNKD) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x04) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRD)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (PRSD, RSA1)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIRD) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRD)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRD) } } Device (LNKE) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x05) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRE)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (PRSE, RSA0)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIRE) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRE)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRE) } } Device (LUS0) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x06) Method (_STA, 0, NotSerialized) { Return (LSTA (PIU0)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSS0, RSB0)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIU0) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PIU0)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PIU0) } } Device (LUS1) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x07) Method (_STA, 0, NotSerialized) { Return (LSTA (PIU1)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSS1, RSB0)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIU1) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PIU1)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PIU1) } } Device (LUS2) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x08) Method (_STA, 0, NotSerialized) { Return (LSTA (PIU2)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSS2, RSB0)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIU2) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PIU2)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PIU2) } } Device (LKLN) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x09) Method (_STA, 0, NotSerialized) { Return (LSTA (PILN)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSLN, RSB1)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PILN) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PILN)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PILN) } } Device (LAUI) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x09) Method (_STA, 0, NotSerialized) { Return (LSTA (PAUI)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSUI, RSB1)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PAUI) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PAUI)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PAUI) } } Device (LKMO) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x0A) Method (_STA, 0, NotSerialized) { Return (LSTA (PIMO)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSMO, RSB1)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIMO) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PIMO)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PIMO) } } Device (LKSM) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x0B) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRM)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSSM, RSB2)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIRM) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PIRM)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PIRM) } } Device (LTID) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x0C) Method (_STA, 0, NotSerialized) { Return (LSTA (PIID)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSID, RSB2)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PIID) } Method (_CRS, 0, NotSerialized) { Return (LCRO (PIID)) } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PIID) } } Device (LATA) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x10) Method (_STA, 0, NotSerialized) { Return (LSTA (PR0E)) } Method (_PRS, 0, NotSerialized) { Return (LPRS (RSTA, RSB2)) } Method (_DIS, 0, NotSerialized) { Store (0x00, PR0E) Store (0x00, PR0F) } Method (_CRS, 0, NotSerialized) { If (OSFL ()) { Return (0x00) } Else { Return (LCRO (PR0E)) } } Method (_SRS, 1, NotSerialized) { Store (LSRO (Arg0), PR0E) Store (LSRO (Arg0), PR0F) } } } Scope (\_SB) { Scope (PCI0) { OperationRegion (S2KC, PCI_Config, 0xE4, 0x04) Field (S2KC, DWordAcc, NoLock, Preserve) { CTRL, 32 } Method (_S3D, 0, NotSerialized) { If (LEqual (OSFL (), 0x02)) { Return (0x02) } Else { Return (0x03) } } Method (_S1D, 0, NotSerialized) { Return (0x01) } Name (NATA, Package (0x01) { 0x00080000 }) Name (CRS, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, 0x0000, 0x00FF, 0x0000, 0x0100) IO (Decode16, 0x0CF8, 0x0CF8, 0x01, 0x08) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, 0x0000, 0x0CF7, 0x0000, 0x0CF8) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, 0x0D00, 0xFFFF, 0x0000, 0xF300) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000A0000, 0x000BFFFF, 0x00000000, 0x00020000) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000) }) CreateDWordField (CRS, 0x5C, MIN5) CreateDWordField (CRS, 0x60, MAX5) CreateDWordField (CRS, 0x68, LEN5) CreateDWordField (CRS, 0x76, MIN6) CreateDWordField (CRS, 0x7A, MAX6) CreateDWordField (CRS, 0x82, LEN6) Method (_CRS, 0, NotSerialized) { Store (MG1B, MIN5) Store (MG1L, LEN5) Store (MG1L, Local0) If (Local0) { Add (MIN5, Decrement (Local0), MAX5) } Store (MG2B, MIN6) Store (MG2L, LEN6) Store (MG2L, Local0) Add (MIN6, Decrement (Local0), MAX6) Return (CRS) } } } OperationRegion (IRQM, SystemIO, 0x21, 0x01) Field (IRQM, ByteAcc, NoLock, Preserve) { IR0M, 1 } Name (PTS0, 0x00) Name (SID0, 0x00) Name (SID1, 0x00) Name (SID2, 0x00) Name (SID3, 0x00) Name (SID4, 0x00) Name (SID5, 0x00) OperationRegion (SMIR, SystemIO, SMIP, 0x01) Field (SMIR, ByteAcc, NoLock, Preserve) { SWSM, 8 } Method (_PTS, 1, NotSerialized) { Store (Arg0, DBG8) Store (Arg0, SPLV) Store (OSFL (), W2FG) Store (Arg0, Local0) Store (Local0, PTS0) Store (\_SB.PCI0.IDE0.ID20, SID0) Store (\_SB.PCI0.IDE0.IDTS, SID1) Store (\_SB.PCI0.IDE0.IDTP, SID2) Store (\_SB.PCI0.IDE0.ID22, SID3) Store (\_SB.PCI0.IDE0.UMSS, SID4) Store (\_SB.PCI0.IDE0.UMSP, SID5) If (LEqual (Arg0, 0x01)) { Store (\_SB.PCI0.CTRL, Local0) Or (Local0, 0x04000000, Local0) Store (Local0, \_SB.PCI0.CTRL) If (OSFL ()) { Store (0xD1, SWSM) } } If (LEqual (Arg0, 0x03)) { Store (\_SB.PCI0.CTRL, Local0) Or (Local0, 0x04000000, Local0) Store (Local0, \_SB.PCI0.CTRL) Store (0xD3, SWSM) } While (PS1S) { Stall (0x50) Store (0x01, PS1S) } Store (One, PS1E) PTS (Arg0) Store (0x00, Index (WAKP, 0x00)) Store (0x00, Index (WAKP, 0x01)) } Method (_WAK, 1, NotSerialized) { ShiftLeft (Arg0, 0x04, DBG8) WAK (Arg0) If (LEqual (Arg0, 0x01)) { If (OSFL ()) { Store (0xD1, SWSM) } And (TPS1, 0xFC, TPS1) Or (TPS1, 0x02, TPS1) } Store (Zero, PS1E) Store (\_SB.PCI0.CTRL, Local0) And (Local0, 0xFBFFFFFF, Local0) Store (Local0, \_SB.PCI0.CTRL) If (DerefOf (Index (WAKP, 0x00))) { Store (0x00, Index (WAKP, 0x01)) } Else { Store (Arg0, Index (WAKP, 0x01)) } Store (0x00, W2FG) Store (0x00, SPLV) Store (0x00, RTCX) Return (WAKP) } OperationRegion (SMI0, SystemIO, 0x4400, 0x08) Field (SMI0, ByteAcc, NoLock, Preserve) { , 15, PS1S, 1, , 17, ACSE, 1, , 13, PS1E, 1, Offset (0x08) } OperationRegion (SRTH, SystemIO, 0x449D, 0x01) Field (SRTH, ByteAcc, NoLock, Preserve) { SPLV, 3, W2FG, 2, , 2, RTCX, 1 } OperationRegion (PMI0, SystemIO, 0x4090, 0x01) Field (PMI0, ByteAcc, NoLock, Preserve) { TPS1, 8 } Name (_S0, Package (0x04) { 0x00, 0x00, 0x00, 0x00 }) If (SS1) { Name (_S1, Package (0x04) { 0x01, 0x00, 0x00, 0x00 }) } If (SS3) { Name (_S3, Package (0x04) { 0x05, 0x00, 0x00, 0x00 }) } If (SS4) { Name (_S4, Package (0x04) { 0x07, 0x00, 0x00, 0x00 }) } Name (_S5, Package (0x04) { 0x07, 0x00, 0x00, 0x00 }) Method (PTS, 1, NotSerialized) { If (Arg0) { \_SB.PCI0.SBRG.SIOS (Arg0) } } Method (WAK, 1, NotSerialized) { \_SB.PCI0.SBRG.SIOW (Arg0) } }