Thelgord Posted January 28, 2010 Share Posted January 28, 2010 Ok the hardware first: Intel DG35EC mobo. Linux codec dump says ALC1200 but vender ID is 0888, and intel web site says ALC888S so I am inclined to say the 888S is the correct codec. I have been trying to get full audio by using DSDT patching. So far results are positive but not quite there yet.  When booting I get the "thump" from my speakers telling me my sound card is initializing. I also get the tell-tale "thump" when I shut down and re-start. However I get no audio devices (input or output) in system prefs and I cant seem to get this to work. What am i missing?  In system profiler I get:  Intel High Definition Audio:  Device ID: 0x8086D701 Audio ID: 12 Available Devices: Line Out: Connection: 1/8-Inch Jack External Microphone: Connection: 1/8-Inch Jack External Microphone: Connection: 1/8-Inch Jack Headphone: Connection: 1/8-Inch Jack S/P-DIF Out: Connection: Internal  That is actually correct and matches the info in the codec dump.     my dsdt.dsl file: /* * Intel ACPI Component Architecture * AML Disassembler version 20090521 * * Disassembly of /Users/chrislyons/Downloads/DSDT_Patcher1.0.1e/dsdt.aml, Wed Jan 27 15:26:56 2010 * * * Original Table Header: * Signature "DSDT" * Length 0x00005764 (22372) * Revision 0x01 **** ACPI 1.0, no 64-bit math support * Checksum 0xA4 * OEM ID "INTEL " * OEM Table ID "ECG3510M" * OEM Revision 0x00000075 (117) * Compiler ID "INTL" * Compiler Version 0x20080926 (537397542) */ DefinitionBlock ("/Users/chrislyons/Downloads/DSDT_Patcher1.0.1e/dsdt.aml", "DSDT", 1, "INTEL ", "ECG3510M", 0x00000075) { External (LANS) External (SCIS) External (\_SB_.PCI0.LPC_.IELK) External (\_SB_.PCI0.LPC_.IELK.ELPB) Scope (_PR) { Processor (CPU0, 0x01, 0x00000410, 0x06) {} Processor (CPU1, 0x02, 0x00000410, 0x06) {} Processor (CPU2, 0x03, 0x00000410, 0x06) {} Processor (CPU3, 0x04, 0x00000410, 0x06) {} } Name (_S0, Package (0x04) { Zero, Zero, Zero, Zero }) Name (_S1, 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 }) Scope (_GPE) { Method (_L03, 0, NotSerialized) { Notify (\_SB.PCI0.UHC1, 0x02) Notify (\_SB.SLPB, 0x02) } Method (_L04, 0, NotSerialized) { Notify (\_SB.PCI0.UHC2, 0x02) Notify (\_SB.SLPB, 0x02) } Method (_L05, 0, NotSerialized) { Notify (\_SB.PCI0.UHC5, 0x02) Notify (\_SB.SLPB, 0x02) } Method (_L06, 0, Serialized) { If (\_SB.PCI0.IGFX.GSSE) { \_SB.PCI0.IGFX.GSCI () } Else { Store (One, SCIS) } } Method (_L07, 0, Serialized) { } Method (_L08, 0, NotSerialized) { Notify (\_SB.SLPB, 0x02) } Method (_L09, 0, NotSerialized) { If (\_SB.PCI0.PEX0.XPM1 (Zero)) { Notify (\_SB.PCI0.PEX0, 0x02) } If (\_SB.PCI0.PEX1.XPM1 (One)) { Notify (\_SB.PCI0.PEX1, 0x02) } If (\_SB.PCI0.PEX2.XPM1 (0x02)) { Notify (\_SB.PCI0.PEX2, 0x02) } If (\_SB.PCI0.PEX3.XPM1 (0x03)) { Notify (\_SB.PCI0.PEX3, 0x02) } If (\_SB.PCI0.PEX4.XPM1 (0x04)) { Notify (\_SB.PCI0.PEX4, 0x02) } If (\_SB.PCI0.PEX5.XPM1 (0x05)) { Notify (\_SB.PCI0.PEX5, 0x02) } If (\_SB.PCI0.PEGP.XPM1 (0x08)) { Notify (\_SB.PCI0.PEGP, 0x02) } Notify (\_SB.SLPB, 0x02) } Method (_L0A, 0, NotSerialized) { Notify (\_SB.PCI0.LPC.IELK, 0x81) Store (One, \_SB.PCI0.LPC.IELK.ELPB) } Method (_L0B, 0, NotSerialized) { Notify (\_SB.PCI0.P32, 0x02) Notify (\_SB.SLPB, 0x02) } Method (_L0C, 0, NotSerialized) { Notify (\_SB.PCI0.UHC3, 0x02) Notify (\_SB.SLPB, 0x02) } Method (_L0D, 0, NotSerialized) { Notify (\_SB.PCI0.EHCI, 0x02) Notify (\_SB.PCI0.EHC2, 0x02) Notify (\_SB.PCI0.HDEF, 0x02) Notify (\_SB.PCI0.ILAN, 0x02) Notify (\_SB.SLPB, 0x02) } Method (_L0E, 0, NotSerialized) { Notify (\_SB.PCI0.UHC4, 0x02) Notify (\_SB.PCI0.UH42, 0x02) Notify (\_SB.SLPB, 0x02) } Method (_L1D, 0, NotSerialized) { Notify (\_SB.PCI0.LPC.PS2K, 0x02) Notify (\_SB.PCI0.LPC.PS2M, 0x02) Notify (\_SB.SLPB, 0x02) } } Device (_SB.SLPB) { Name (_HID, EisaId ("PNP0C0E")) Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x1D, 0x04 }) } } Method (_WAK, 1, Serialized) { \_SB.PCI0.LPC.WAK (Arg0) If (CondRefOf (_OSI, Local0)) { Store (0x21, OSTY) } Notify (\_SB.PCI0.UHC1, Zero) Notify (\_SB.PCI0.UHC2, Zero) Notify (\_SB.PCI0.UHC3, Zero) Notify (\_SB.PCI0.UHC4, Zero) Notify (\_SB.PCI0.UH42, Zero) Notify (\_SB.PCI0.UHC5, Zero) Notify (\_SB.PCI0.EHCI, Zero) Notify (\_SB.PCI0.EHC2, Zero) Return (Zero) } 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) } 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) Method (_PTS, 1, NotSerialized) { \_SB.PCI0.PEX0.XPM1 (Zero) \_SB.PCI0.PEX1.XPM1 (Zero) \_SB.PCI0.PEX2.XPM1 (Zero) \_SB.PCI0.PEX3.XPM1 (Zero) \_SB.PCI0.PEX4.XPM1 (Zero) \_SB.PCI0.PEX5.XPM1 (Zero) \_SB.PCI0.PEGP.XPM1 (0x08) While (PXGS) { Store (One, PXGS) } \_SB.PCI0.LPC.PTS (Arg0) } Name (GPIC, Zero) Method (_PIC, 1, NotSerialized) { Store (Arg0, GPIC) } OperationRegion (DBG0, SystemIO, 0x80, One) Field (DBG0, ByteAcc, NoLock, Preserve) { IO80, 8 } OperationRegion (ACMS, SystemIO, 0x72, 0x02) Field (ACMS, ByteAcc, NoLock, Preserve) { CMSI, 8, CMSD, 8 } IndexField (CMSI, CMSD, ByteAcc, NoLock, Preserve) { Offset (0x6E), WAS4, 8, OSTY, 8, Offset (0x7D), HPEE, 1, VOFF, 1, Offset (0x7E), , 2, MSEP, 1, , 1, TPME, 1, SPND, 1, KBEP, 1, MSAR, 1 } OperationRegion (GPE0, SystemIO, 0x0428, 0x02) Field (GPE0, ByteAcc, NoLock, WriteAsZeros) { , 9, PXGS, 1, Offset (0x02) } OperationRegion (SMIO, SystemIO, 0xB2, 0x02) Field (SMIO, ByteAcc, NoLock, Preserve) { APMC, 8, APMD, 8 } Scope (_SB) { Device (PCI0) { Name (_HID, EisaId ("PNP0A03")) Name (_ADR, Zero) Method (_INI, 0, NotSerialized) { If (CondRefOf (_OSI, Local0)) { Store (0x21, OSTY) } } Name (PBRS, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, // Granularity 0x0000, // Range Minimum 0x00FF, // Range Maximum 0x0000, // Translation Offset 0x0100, // 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 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y01, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0xF8000000, // Range Minimum 0xFEAFFFFF, // Range Maximum 0x00000000, // Translation Offset 0x06B00000, // Length ,, , AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y00, AddressRangeMemory, TypeStatic) }) Method (_CRS, 0, NotSerialized) { CreateDWordField (PBRS, \_SB.PCI0._Y00._MIN, TMIN) CreateDWordField (PBRS, \_SB.PCI0._Y00._MAX, TMAX) CreateDWordField (PBRS, \_SB.PCI0._Y00._LEN, TLEN) If (LNotEqual (MDET (), 0xF0000000)) { Store (MDET (), TMIN) Store (0xEFFFFFFF, TMAX) Subtract (TMAX, TMIN, TLEN) Increment (TLEN) } EROM () Return (PBRS) } OperationRegion (TMEM, PCI_Config, 0xB0, 0x02) Field (TMEM, WordAcc, NoLock, Preserve) { TOUD, 16 } Method (MDET, 0, NotSerialized) { Store (TOUD, Local0) And (Local0, 0x0FFF, Local1) If (Local1) { And (Local0, 0xF000, Local0) Add (Local0, 0x1000, Local0) } ShiftLeft (Local0, 0x10, Local0) Return (Local0) } OperationRegion (PAMX, PCI_Config, 0x90, 0x07) Field (PAMX, ByteAcc, NoLock, Preserve) { , 4, BSEG, 4, PAMS, 48 } Name (ERNG, Package (0x0D) { 0x000C0000, 0x000C4000, 0x000C8000, 0x000CC000, 0x000D0000, 0x000D4000, 0x000D8000, 0x000DC000, 0x000E0000, 0x000E4000, 0x000E8000, 0x000EC000, 0x000F0000 }) Name (PAMB, Buffer (0x07) {}) Method (EROM, 0, NotSerialized) { CreateDWordField (PBRS, \_SB.PCI0._Y01._MIN, RMIN) CreateDWordField (PBRS, \_SB.PCI0._Y01._MAX, RMAX) CreateDWordField (PBRS, \_SB.PCI0._Y01._LEN, RLEN) CreateByteField (PAMB, 0x06, BREG) Store (PAMS, PAMB) Store (BSEG, BREG) Store (Zero, RMIN) Store (Zero, RMAX) Store (Zero, RLEN) Store (Zero, Local0) While (LLess (Local0, 0x0D)) { ShiftRight (Local0, One, Local1) Store (DerefOf (Index (PAMB, Local1)), Local2) If (And (Local0, One)) { ShiftRight (Local2, 0x04, Local2) } And (Local2, 0x03, Local2) If (RMIN) { If (LEqual (Local2, 0x03)) { Add (DerefOf (Index (ERNG, Local0)), 0x3FFF, RMAX) If (LEqual (RMAX, 0x000F3FFF)) { Store (0x000FFFFF, RMAX) } Subtract (RMAX, RMIN, RLEN) Increment (RLEN) } Else { Store (0x0C, Local0) } } Else { If (LEqual (Local2, 0x03)) { Store (DerefOf (Index (ERNG, Local0)), RMIN) Add (DerefOf (Index (ERNG, Local0)), 0x3FFF, RMAX) If (LEqual (RMAX, 0x000F3FFF)) { Store (0x000FFFFF, RMAX) } Subtract (RMAX, RMIN, RLEN) Increment (RLEN) } Else { } } Increment (Local0) } } Device (IOCM) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x03) Name (_CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0xF0000000, // Address Base 0x08000000, // Address Length ) Memory32Fixed (ReadOnly, 0xFED13000, // Address Base 0x00001000, // Address Length ) Memory32Fixed (ReadOnly, 0xFED14000, // Address Base 0x00004000, // Address Length ) Memory32Fixed (ReadOnly, 0xFED18000, // Address Base 0x00001000, // Address Length ) Memory32Fixed (ReadOnly, 0xFED19000, // Address Base 0x00001000, // Address Length ) Memory32Fixed (ReadOnly, 0xFED1C000, // Address Base 0x00004000, // Address Length ) Memory32Fixed (ReadOnly, 0xFED20000, // Address Base 0x00020000, // Address Length ) Memory32Fixed (ReadOnly, 0xFED45000, // Address Base 0x00055000, // Address Length ) Memory32Fixed (ReadOnly, 0x000C0000, // Address Base 0x00020000, // Address Length ) Memory32Fixed (ReadOnly, 0x000E0000, // Address Base 0x00020000, // Address Length ) }) } Method (_PRT, 0, NotSerialized) { If (LEqual (GPIC, Zero)) { Return (Package (0x18) { Package (0x04) { 0x0001FFFF, Zero, ^LPC.LNKA, Zero }, Package (0x04) { 0x0001FFFF, One, ^LPC.LNKB, Zero }, Package (0x04) { 0x0001FFFF, 0x02, ^LPC.LNKC, Zero }, Package (0x04) { 0x0001FFFF, 0x03, ^LPC.LNKD, Zero }, Package (0x04) { 0x0002FFFF, Zero, ^LPC.LNKA, Zero }, Package (0x04) { 0x0003FFFF, Zero, ^LPC.LNKA, Zero }, Package (0x04) { 0x0003FFFF, One, ^LPC.LNKB, Zero }, Package (0x04) { 0x0003FFFF, 0x02, ^LPC.LNKC, Zero }, Package (0x04) { 0x0019FFFF, Zero, ^LPC.LNKE, Zero }, Package (0x04) { 0x001AFFFF, Zero, ^LPC.LNKA, Zero }, Package (0x04) { 0x001AFFFF, One, ^LPC.LNKF, Zero }, Package (0x04) { 0x001AFFFF, 0x02, ^LPC.LNKC, Zero }, Package (0x04) { 0x001BFFFF, Zero, ^LPC.LNKG, Zero }, Package (0x04) { 0x001CFFFF, Zero, ^LPC.LNKB, Zero }, Package (0x04) { 0x001CFFFF, One, ^LPC.LNKA, Zero }, Package (0x04) { 0x001CFFFF, 0x02, ^LPC.LNKC, Zero }, Package (0x04) { 0x001CFFFF, 0x03, ^LPC.LNKD, Zero }, Package (0x04) { 0x001DFFFF, Zero, ^LPC.LNKH, Zero }, Package (0x04) { 0x001DFFFF, One, ^LPC.LNKD, Zero }, Package (0x04) { 0x001DFFFF, 0x02, ^LPC.LNKC, Zero }, Package (0x04) { 0x001DFFFF, 0x03, ^LPC.LNKA, Zero }, Package (0x04) { 0x001FFFFF, Zero, ^LPC.LNKD, Zero }, Package (0x04) { 0x001FFFFF, One, ^LPC.LNKF, Zero }, Package (0x04) { 0x001FFFFF, 0x02, ^LPC.LNKA, Zero } }) } Else { Return (Package (0x18) { Package (0x04) { 0x0001FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0001FFFF, One, Zero, 0x11 }, Package (0x04) { 0x0001FFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x0001FFFF, 0x03, Zero, 0x13 }, Package (0x04) { 0x0002FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0003FFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x0003FFFF, One, Zero, 0x11 }, Package (0x04) { 0x0003FFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x0019FFFF, Zero, Zero, 0x14 }, Package (0x04) { 0x001AFFFF, Zero, Zero, 0x10 }, Package (0x04) { 0x001AFFFF, One, Zero, 0x15 }, Package (0x04) { 0x001AFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001BFFFF, Zero, Zero, 0x16 }, Package (0x04) { 0x001CFFFF, Zero, Zero, 0x11 }, Package (0x04) { 0x001CFFFF, One, Zero, 0x10 }, Package (0x04) { 0x001CFFFF, 0x02, Zero, 0x12 }, Package (0x04) { 0x001CFFFF, 0x03, Zero, 0x13 }, Package (0x04) { 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, Zero, Zero, 0x13 }, Package (0x04) { 0x001FFFFF, One, Zero, 0x15 }, Package (0x04) { 0x001FFFFF, 0x02, Zero, 0x10 } }) } } Device (P32) { Name (_ADR, 0x001E0000) Name (UPS1, Package (0x02) { 0x0B, 0x04 }) Method (_PRW, 0, NotSerialized) { Return (UPS1) } Method (_PRT, 0, NotSerialized) { If (LEqual (GPIC, Zero)) { Return (Package (0x06) { Package (0x04) { 0x0008FFFF, Zero, ^^LPC.LNKE, Zero }, Package (0x04) { 0x0003FFFF, Zero, ^^LPC.LNKB, Zero }, Package (0x04) { 0x0003FFFF, One, ^^LPC.LNKC, Zero }, Package (0x04) { 0x0003FFFF, 0x02, ^^LPC.LNKD, Zero }, Package (0x04) { 0x0003FFFF, 0x03, ^^LPC.LNKA, Zero }, Package (0x04) { 0x0005FFFF, Zero, ^^LPC.LNKE, Zero } }) } Else { Return (Package (0x06) { Package (0x04) { 0x0008FFFF, Zero, Zero, 0x14 }, Package (0x04) { 0x0003FFFF, Zero, Zero, 0x11 }, Package (0x04) { 0x0003FFFF, One, Zero, 0x12 }, Package (0x04) { 0x0003FFFF, 0x02, Zero, 0x13 }, Package (0x04) { 0x0003FFFF, 0x03, Zero, 0x10 }, Package (0x04) { 0x0005FFFF, Zero, Zero, 0x14 } }) } } } Device (LPC) { Name (_ADR, 0x001F0000) OperationRegion (LPIO, PCI_Config, 0x80, 0x04) Scope (\) { Field (\_SB.PCI0.LPC.LPIO, ByteAcc, NoLock, Preserve) { UAIO, 8, PRIO, 8, LPE1, 8, LPE2, 8 } Method (DISD, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { And (LPE1, 0xFE, LPE1) } If (LEqual (Arg0, 0x02)) { And (LPE1, 0xFB, LPE1) } If (LEqual (Arg0, 0x03)) { And (LPE1, 0xF7, LPE1) } } 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, 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 (Arg1, 0x03)) { Or (LPE1, 0x08, LPE1) } } } OperationRegion (PRR0, PCI_Config, 0x60, 0x04) Field (PRR0, AnyAcc, NoLock, Preserve) { PIRA, 8, PIRB, 8, PIRC, 8, PIRD, 8 } OperationRegion (PRR1, PCI_Config, 0x68, 0x04) Field (PRR1, AnyAcc, NoLock, Preserve) { PIRE, 8, PIRF, 8, PIRG, 8, PIRH, 8 } Device (LNKA) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, One) Method (_STA, 0, NotSerialized) { If (And (PIRA, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_DIS, 0, NotSerialized) { Or (PIRA, 0x80, PIRA) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {0} }) CreateWordField (BUF0, One, IRQW) If (And (PIRA, 0x80)) { Store (Zero, Local0) } Else { Store (One, Local0) } ShiftLeft (Local0, And (PIRA, 0x0F), IRQW) Return (BUF0) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,7,9,10,11,12} }) Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQW) FindSetRightBit (IRQW, Local0) If (LNotEqual (IRQW, Zero)) { And (Local0, 0x7F, Local0) Decrement (Local0) } Else { Or (Local0, 0x80, Local0) } Store (Local0, PIRA) } } Device (LNKB) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x02) Method (_STA, 0, NotSerialized) { If (And (PIRB, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_DIS, 0, NotSerialized) { Or (PIRB, 0x80, PIRB) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {0} }) CreateWordField (BUF0, One, IRQW) If (And (PIRB, 0x80)) { Store (Zero, Local0) } Else { Store (One, Local0) } ShiftLeft (Local0, And (PIRB, 0x0F), IRQW) Return (BUF0) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,7,9,10,11,12} }) Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQW) FindSetRightBit (IRQW, Local0) If (LNotEqual (IRQW, Zero)) { And (Local0, 0x7F, Local0) Decrement (Local0) } Else { Or (Local0, 0x80, Local0) } Store (Local0, PIRB) } } Device (LNKC) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x03) Method (_STA, 0, NotSerialized) { If (And (PIRC, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_DIS, 0, NotSerialized) { Or (PIRC, 0x80, PIRC) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {0} }) CreateWordField (BUF0, One, IRQW) If (And (PIRC, 0x80)) { Store (Zero, Local0) } Else { Store (One, Local0) } ShiftLeft (Local0, And (PIRC, 0x0F), IRQW) Return (BUF0) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,7,9,10,11,12} }) Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQW) FindSetRightBit (IRQW, Local0) If (LNotEqual (IRQW, Zero)) { And (Local0, 0x7F, Local0) Decrement (Local0) } Else { Or (Local0, 0x80, Local0) } Store (Local0, PIRC) } } Device (LNKD) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x04) Method (_STA, 0, NotSerialized) { If (And (PIRD, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_DIS, 0, NotSerialized) { Or (PIRD, 0x80, PIRD) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {0} }) CreateWordField (BUF0, One, IRQW) If (And (PIRD, 0x80)) { Store (Zero, Local0) } Else { Store (One, Local0) } ShiftLeft (Local0, And (PIRD, 0x0F), IRQW) Return (BUF0) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,7,9,10,11,12} }) Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQW) FindSetRightBit (IRQW, Local0) If (LNotEqual (IRQW, Zero)) { And (Local0, 0x7F, Local0) Decrement (Local0) } Else { Or (Local0, 0x80, Local0) } Store (Local0, PIRD) } } Device (LNKE) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x05) Method (_STA, 0, NotSerialized) { If (And (PIRE, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_DIS, 0, NotSerialized) { Or (PIRE, 0x80, PIRE) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {0} }) CreateWordField (BUF0, One, IRQW) If (And (PIRE, 0x80)) { Store (Zero, Local0) } Else { Store (One, Local0) } ShiftLeft (Local0, And (PIRE, 0x0F), IRQW) Return (BUF0) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,7,9,10,11,12} }) Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQW) FindSetRightBit (IRQW, Local0) If (LNotEqual (IRQW, Zero)) { And (Local0, 0x7F, Local0) Decrement (Local0) } Else { Or (Local0, 0x80, Local0) } Store (Local0, PIRE) } } Device (LNKF) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x06) Method (_STA, 0, NotSerialized) { If (And (PIRF, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_DIS, 0, NotSerialized) { Or (PIRB, 0x80, PIRF) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {0} }) CreateWordField (BUF0, One, IRQW) If (And (PIRF, 0x80)) { Store (Zero, Local0) } Else { Store (One, Local0) } ShiftLeft (Local0, And (PIRF, 0x0F), IRQW) Return (BUF0) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,7,9,10,11,12} }) Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQW) FindSetRightBit (IRQW, Local0) If (LNotEqual (IRQW, Zero)) { And (Local0, 0x7F, Local0) Decrement (Local0) } Else { Or (Local0, 0x80, Local0) } Store (Local0, PIRF) } } Device (LNKG) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x07) Method (_STA, 0, NotSerialized) { If (And (PIRG, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_DIS, 0, NotSerialized) { Or (PIRG, 0x80, PIRG) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {0} }) CreateWordField (BUF0, One, IRQW) If (And (PIRG, 0x80)) { Store (Zero, Local0) } Else { Store (One, Local0) } ShiftLeft (Local0, And (PIRG, 0x0F), IRQW) Return (BUF0) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,7,9,10,11,12} }) Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQW) FindSetRightBit (IRQW, Local0) If (LNotEqual (IRQW, Zero)) { And (Local0, 0x7F, Local0) Decrement (Local0) } Else { Or (Local0, 0x80, Local0) } Store (Local0, PIRG) } } Device (LNKH) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x08) Method (_STA, 0, NotSerialized) { If (And (PIRH, 0x80)) { Return (0x09) } Else { Return (0x0B) } } Method (_DIS, 0, NotSerialized) { Or (PIRH, 0x80, PIRH) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {0} }) CreateWordField (BUF0, One, IRQW) If (And (PIRH, 0x80)) { Store (Zero, Local0) } Else { Store (One, Local0) } ShiftLeft (Local0, And (PIRH, 0x0F), IRQW) Return (BUF0) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,4,5,7,9,10,11,12} }) Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, One, IRQW) FindSetRightBit (IRQW, Local0) If (LNotEqual (IRQW, Zero)) { And (Local0, 0x7F, Local0) Decrement (Local0) } Else { Or (Local0, 0x80, Local0) } Store (Local0, PIRH) } } Device (DMAC) { Name (_HID, EisaId ("PNP0200")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x00, // Alignment 0x10, // Length ) IO (Decode16, 0x0081, // Range Minimum 0x0081, // Range Maximum 0x00, // Alignment 0x03, // Length ) IO (Decode16, 0x0087, // Range Minimum 0x0087, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x0089, // Range Minimum 0x0089, // Range Maximum 0x00, // Alignment 0x03, // Length ) IO (Decode16, 0x008F, // Range Minimum 0x008F, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x00C0, // Range Minimum 0x00C0, // Range Maximum 0x00, // Alignment 0x20, // Length ) DMA (Compatibility, NotBusMaster, Transfer8, ) {4} }) } Device (RTC) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x01, // Alignment 0x02, // Length ) IO (Decode16, 0x0074, // Range Minimum 0x0074, // Range Maximum 0x01, // Alignment 0x04, // Length ) }) } Device (PIC) { Name (_HID, EisaId ("PNP0000")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0020, // Range Minimum 0x0020, // Range Maximum 0x01, // Alignment 0x1E, // Length ) IO (Decode16, 0x00A0, // Range Minimum 0x00A0, // Range Maximum 0x01, // Alignment 0x1E, // Length ) IO (Decode16, 0x04D0, // Range Minimum 0x04D0, // Range Maximum 0x01, // Alignment 0x02, // Length ) }) } Device (FPU) { Name (_HID, EisaId ("PNP0C04")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x00F0, // Range Minimum 0x00F0, // Range Maximum 0x01, // Alignment 0x01, // Length ) IRQNoFlags () {13} }) } Device (TMR) { Name (_HID, EisaId ("PNP0100")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0040, // Range Minimum 0x0040, // Range Maximum 0x01, // Alignment 0x04, // Length ) IO (Decode16, 0x0050, // Range Minimum 0x0050, // Range Maximum 0x01, // Alignment 0x04, // Length ) IRQNoFlags () {0} }) } Device (SPKR) { Name (_HID, EisaId ("PNP0800")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0061, // Range Minimum 0x0061, // Range Maximum 0x01, // Alignment 0x01, // Length ) }) } Device (XTRA) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, One) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0500, // Range Minimum 0x0500, // Range Maximum 0x01, // Alignment 0x40, // Length ) IO (Decode16, 0x0400, // Range Minimum 0x0400, // Range Maximum 0x01, // Alignment 0x80, // Length ) IO (Decode16, 0x0092, // Range Minimum 0x0092, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0360, // Range Minimum 0x0360, // Range Maximum 0x01, // Alignment 0x02, // Length ) IO (Decode16, 0x0680, // Range Minimum 0x0680, // Range Maximum 0x01, // Alignment 0x80, // Length ) IO (Decode16, 0x0010, // Range Minimum 0x0010, // Range Maximum 0x01, // Alignment 0x10, // Length ) IO (Decode16, 0x0072, // Range Minimum 0x0072, // Range Maximum 0x01, // Alignment 0x02, // Length ) IO (Decode16, 0x0080, // Range Minimum 0x0080, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0084, // Range Minimum 0x0084, // Range Maximum 0x01, // Alignment 0x03, // Length ) IO (Decode16, 0x0088, // Range Minimum 0x0088, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x008C, // Range Minimum 0x008C, // Range Maximum 0x01, // Alignment 0x03, // Length ) IO (Decode16, 0x0090, // Range Minimum 0x0090, // Range Maximum 0x01, // Alignment 0x10, // Length ) }) } OperationRegion (TPMM, SystemMemory, 0xFED40000, One) Field (TPMM, AnyAcc, NoLock, Preserve) { TPMA, 8 } Device (TPM) { Name (_HID, EisaId ("PNP0C31")) Name (_CID, EisaId ("PNP0C02")) Name (_UID, One) Name (_CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0xFED40000, // Address Base 0x00005000, // Address Length ) }) Method (_STA, 0, NotSerialized) { If (LEqual (TPMA, 0xFF)) { Return (Zero) } Else { If (TPME) { Return (0x0F) } Else { Return (0x0B) } } } Name (TPMR, Zero) Method (_DSM, 4, NotSerialized) { If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0xA6, 0xFA, 0xDD, 0x3D, 0x1B, 0x36, 0xB4, 0x4E, /* 0008 */ 0xA4, 0x24, 0x8D, 0x10, 0x08, 0x9D, 0x16, 0x53 })) { If (LEqual (Arg2, Zero)) { Return (0x3F) } If (LEqual (Arg2, One)) { Return ("1.0") } If (LEqual (Arg2, 0x02)) { Store (Arg3, TPMR) Return (Zero) } If (LEqual (Arg2, 0x03)) { Return (Package (0x02) { Zero, TPMR }) } If (LEqual (Arg2, 0x04)) { Return (0x02) } If (LEqual (Arg2, 0x05)) { Return (Package (0x03) { Zero, Zero, Zero }) } } If (LEqual (Arg0, Buffer (0x10) { /* 0000 */ 0xED, 0x54, 0x60, 0x37, 0x13, 0xCC, 0x75, 0x46, /* 0008 */ 0x90, 0x1C, 0x47, 0x56, 0xD7, 0xF2, 0xD4, 0x5D })) { If (LEqual (Arg2, Zero)) { Return (0x03) } If (LEqual (Arg2, One)) { Return (Zero) } } Return (Zero) } } Device (XTR2) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x02) Method (_STA, 0, NotSerialized) { If (LOr (KBEP, MSEP)) { 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 ) }) } OperationRegion (WINB, SystemIO, 0x2E, 0x02) Field (WINB, ByteAcc, NoLock, Preserve) { INDX, 8, DATA, 8 } IndexField (INDX, DATA, ByteAcc, NoLock, Preserve) { Offset (0x07), LDN, 8, Offset (0x22), PWRC, 8, Offset (0x30), ACTR, 8, Offset (0x60), IOAH, 8, IOAL, 8, Offset (0x70), INTR, 8, Offset (0x72), INT1, 8, Offset (0x74), DMCH, 8, Offset (0xC0), GP40, 8, Offset (0xE0), RGE0, 8, RGE1, 8, RGE2, 8, RGE3, 8, RGE4, 8, RGE5, 8, RGE6, 8, RGE7, 8, Offset (0xF0), OPT0, 8, OPT1, 8, OPT2, 8, OPT3, 8, OPT4, 8, OPT5, 8, OPT6, 8, OPT7, 8, OPT8, 8, OPT9, 8 } Method (ENCG, 0, NotSerialized) { Store (0x87, INDX) Store (0x87, INDX) } Method (EXCG, 0, NotSerialized) { Store (0xAA, INDX) } Name (MSPM, Zero) Name (KBPM, Zero) Device (FDC0) { Name (_HID, EisaId ("PNP0700")) Method (_STA, 0, NotSerialized) { ENCG () Store (Zero, LDN) If (ACTR) { EXCG () Return (0x0F) } Else { If (LOr (IOAH, IOAL)) { EXCG () Return (0x0D) } Else { EXCG () Return (Zero) } } } Method (_DIS, 0, NotSerialized) { ENCG () Store (Zero, LDN) Store (Zero, ACTR) EXCG () DISD (0x03) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { IO (Decode16, 0x03F0, // Range Minimum 0x03F0, // Range Maximum 0x01, // Alignment 0x06, // Length _Y02) IO (Decode16, 0x03F7, // Range Minimum 0x03F7, // Range Maximum 0x01, // Alignment 0x01, // Length _Y03) IRQNoFlags (_Y04) {6} DMA (Compatibility, NotBusMaster, Transfer8, _Y05) {2} }) CreateByteField (BUF0, \_SB.PCI0.LPC.FDC0._CRS._Y02._MIN, IOLO) CreateByteField (BUF0, 0x03, IOHI) CreateByteField (BUF0, \_SB.PCI0.LPC.FDC0._CRS._Y02._MAX, IORL) CreateByteField (BUF0, 0x05, IORH) CreateByteField (BUF0, \_SB.PCI0.LPC.FDC0._CRS._Y03._MIN, I2LO) CreateByteField (BUF0, 0x0B, I2HI) CreateByteField (BUF0, \_SB.PCI0.LPC.FDC0._CRS._Y03._MAX, I2RL) CreateByteField (BUF0, 0x0D, I2RH) CreateByteField (BUF0, \_SB.PCI0.LPC.FDC0._CRS._Y04._INT, IRQL) CreateByteField (BUF0, \_SB.PCI0.LPC.FDC0._CRS._Y05._DMA, DMAV) ENCG () Store (Zero, LDN) Store (IOAL, IOLO) Store (IOAL, IORL) Store (IOAL, I2LO) Store (IOAL, I2RL) Store (IOAH, IOHI) Store (IOAH, IORH) Store (IOAH, I2HI) Store (IOAH, I2RH) ShiftLeft (One, INTR, IRQL) ShiftLeft (One, DMCH, DMAV) EXCG () Return (BUF0) } Method (_PRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { StartDependentFn (0x00, 0x00) { 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 () }) Return (BUF0) } Method (_SRS, 1, NotSerialized) { CreateByteField (Arg0, 0x02, IOLO) CreateByteField (Arg0, 0x03, IOHI) CreateWordField (Arg0, 0x02, IOAD) CreateByteField (Arg0, 0x11, IRQL) CreateByteField (Arg0, 0x14, DMAV) ENCG () Store (Zero, LDN) And (IOLO, 0xF8, Local0) Store (Local0, IOAL) Store (IOHI, IOAH) FindSetRightBit (IRQL, INTR) If (LNotEqual (IRQL, Zero)) { Decrement (INTR) } If (LEqual (DMAV, Zero)) { Store (0x04, DMCH) } Else { FindSetRightBit (DMAV, DMCH) Decrement (DMCH) } Store (One, ACTR) EXCG () CKIO (IOAD, 0x03) } Method (_PSC, 0, NotSerialized) { ENCG () If (And (PWRC, One)) { EXCG () Return (Zero) } Else { EXCG () Return (0x03) } } Method (_PS0, 0, NotSerialized) { ENCG () Store (PWRC, Local0) Or (Local0, One, Local0) Store (Local0, PWRC) EXCG () } Method (_PS3, 0, NotSerialized) { ENCG () Store (PWRC, Local0) And (Local0, 0xFE, Local0) Store (Local0, PWRC) EXCG () } } Device (PS2M) { Name (_HID, EisaId ("PNP0F03")) Name (_CID, EisaId ("PNP0F13")) Method (_STA, 0, NotSerialized) { If (MSEP) { Return (0x0F) } Else { 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 ) IRQNoFlags () {12} }) Name (MSS4, Package (0x02) { 0x1D, 0x04 }) Method (_PRW, 0, NotSerialized) { Return (MSS4) } Method (_PSW, 1, NotSerialized) { And (OPT2, 0xFE, OPT2) Store (Arg0, MSPM) } } Device (PS2K) { Name (_HID, EisaId ("PNP0303")) Name (_CID, EisaId ("PNP030B")) Method (_STA, 0, NotSerialized) { If (KBEP) { Return (0x0F) } Else { 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 ) IRQNoFlags () {1} }) Name (KBS4, Package (0x02) { 0x1D, 0x04 }) Method (_PRW, 0, NotSerialized) { Return (KBS4) } Method (_PSW, 1, NotSerialized) { And (OPT2, 0xFE, OPT2) Store (Arg0, KBPM) } } Device (UAR1) { Name (_HID, EisaId ("PNP0501")) Name (_UID, One) Method (_STA, 0, NotSerialized) { ENCG () Store (0x02, LDN) If (ACTR) { EXCG () Return (0x0F) } Else { If (LOr (IOAH, IOAL)) { EXCG () Return (0x0D) } Else { EXCG () Return (Zero) } } } Method (_DIS, 0, NotSerialized) { ENCG () Store (0x02, LDN) Store (Zero, ACTR) EXCG () DISD (Zero) } Method (_CRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { IO (Decode16, 0x03F8, // Range Minimum 0x03F8, // Range Maximum 0x08, // Alignment 0x08, // Length _Y06) IRQNoFlags (_Y07) {4} }) CreateByteField (BUF0, \_SB.PCI0.LPC.UAR1._CRS._Y06._MIN, IOLO) CreateByteField (BUF0, 0x03, IOHI) CreateByteField (BUF0, \_SB.PCI0.LPC.UAR1._CRS._Y06._MAX, IORL) CreateByteField (BUF0, 0x05, IORH) CreateWordField (BUF0, \_SB.PCI0.LPC.UAR1._CRS._Y07._INT, IRQL) ENCG () Store (0x02, LDN) Store (IOAL, IOLO) Store (IOAL, IORL) Store (IOAH, IOHI) Store (IOAH, IORH) Store (One, Local0) ShiftLeft (Local0, INTR, IRQL) EXCG () Return (BUF0) } Method (_PRS, 0, NotSerialized) { Name (BUF0, ResourceTemplate () { StartDependentFn (0x00, 0x02) { IO (Decode16, 0x03F8, // Range Minimum 0x03F8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {4} } StartDependentFn (0x00, 0x02) { IO (Decode16, 0x03F8, // Range Minimum 0x03F8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3} } StartDependentFn (0x00, 0x02) { IO (Decode16, 0x03E8, // Range Minimum 0x03E8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {4} } StartDependentFn (0x00, 0x02) { IO (Decode16, 0x03E8, // Range Minimum 0x03E8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3} } StartDependentFn (0x00, 0x02) { IO (Decode16, 0x02F8, // Range Minimum 0x02F8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {4} } StartDependentFn (0x00, 0x02) { IO (Decode16, 0x02F8, // Range Minimum 0x02F8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3} } StartDependentFn (0x00, 0x02) { IO (Decode16, 0x02E8, // Range Minimum 0x02E8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {4} } StartDependentFn (0x00, 0x02) { IO (Decode16, 0x02E8, // Range Minimum 0x02E8, // Range Maximum 0x01, // Alignment 0x08, // Length ) IRQNoFlags () {3} } StartDependentFn (0x00, 0x02) { IO (Decode16, 0x0100, // Range Minimum 0x03F8, // Range Maximum 0x08, // Alignment 0x08, // Length ) IRQNoFlags () {1,3,4,5,6,7,8,10,11,12,13,14,15} } EndDependentFn () }) Return (BUF0) } Method (_SRS, 1, NotSerialized) { CreateByteField (Arg0, 0x02, IOLO) CreateByteField (Arg0, 0x03, IOHI) CreateWordField (Arg0, 0x02, IOAD) CreateWordField (Arg0, 0x09, IRQL) ENCG () Store (0x02, LDN) Store (IOLO, IOAL) Store (IOHI, IOAH) FindSetRightBit (IRQL, INTR) If (LNotEqual (IRQL, Zero)) { Decrement (INTR) } Store (One, ACTR) EXCG () CKIO (IOAD, Zero) } Name (CPS4, Package (0x02) { 0x08, 0x04 }) Method (_PRW, 0, NotSerialized) { Return (CPS4) } Method (_PSC, 0, NotSerialized) { ENCG () If (And (PWRC, 0x10)) { EXCG () Return (Zero) } Else { EXCG () Return (0x03) } } Method (_PS0, 0, NotSerialized) { ENCG () Store (PWRC, Local0) Or (Local0, 0x10, Local0) Store (Local0, PWRC) EXCG () } Method (_PS3, 0, NotSerialized) { ENCG () Store (PWRC, Local0) And (Local0, 0xEF, Local0) Store (Local0, PWRC) EXCG () } } Method (WAK, 1, Serialized) { If (LEqual (Arg0, One)) { Store (0xE1, IO80) } If (LEqual (Arg0, 0x03)) { Store (0xE3, IO80) } If (LEqual (Arg0, 0x04)) { Store (0xE4, IO80) } ENCG () Store (0x0A, LDN) Store (RGE3, Local0) If (LEqual (Arg0, One)) { And (RGE0, 0x9C, RGE0) Store (0xFF, OPT3) And (OPT6, 0xCF, OPT6) And (OPT2, 0xFE, OPT2) Store (Zero, ACTR) Notify (SLPB, 0x02) } If (LEqual (Arg0, 0x03)) { And (RGE0, 0x9C, RGE0) And (RGE6, 0x7F, RGE6) } Store (OPT3, OPT3) Store (0x09, LDN) Store (Zero, OPT3) EXCG () } Method (PTS, 1, NotSerialized) { If (LEqual (Arg0, One)) { Store (0x51, IO80) } If (LEqual (Arg0, 0x03)) { Store (0x53, IO80) } If (LEqual (Arg0, 0x04)) { Store (0x54, IO80) } ENCG () Store (0x0A, LDN) If (LEqual (Arg0, One)) { Store (0xFF, OPT3) Or (OPT6, 0x30, OPT6) If (LEqual (MSPM, Zero)) { And (OPT6, 0xDF, OPT6) Or (RGE0, 0x63, RGE0) Store (0xED, APMC) } If (LEqual (KBPM, Zero)) { And (OPT6, 0xEF, OPT6) Or (RGE0, 0x03, RGE0) Store (0xEE, APMC) } Or (OPT2, One, OPT2) Store (One, ACTR) } If (LEqual (Arg0, 0x03)) { HDKM () } Store (0xFF, OPT3) Store (0x09, LDN) Store (0x40, OPT3) EXCG () } Method (WAKE, 0, NotSerialized) { } Method (HDKM, 0, NotSerialized) { Or (RGE0, 0x63, RGE0) Or (RGE6, 0x80, RGE6) If (LEqual (MSPM, Zero)) { And (RGE0, 0xDD, RGE0) } If (LEqual (KBPM, Zero)) { And (RGE0, 0xBE, RGE0) } } } OperationRegion (SRCR, SystemMemory, 0xFED1C000, 0x4000) Field (SRCR, AnyAcc, NoLock, Preserve) { Offset (0x3418), CHPD, 1, , 1, SATD, 1, SMBD, 1, AZLD, 1, , 2, ILND, 1, UH0D, 1, UH1D, 1, UH2D, 1, UH3D, 1, UH4D, 1, , 1, LPCD, 1, EHCD, 1, RP1D, 1, RP2D, 1, RP3D, 1, RP4D, 1, RP5D, 1, RP6D, 1, , 3, SAD2, 1, Offset (0x341C) } Device (ILAN) { Name (_ADR, 0x00190000) Name (PPS1, Package (0x02) { 0x0D, 0x04 }) OperationRegion (ORP0, PCI_Config, Zero, 0xFF) Field (ORP0, AnyAcc, NoLock, Preserve) { Offset (0xCC), ILPS, 2, Offset (0xCD) } Method (_PRW, 0, NotSerialized) { Return (PPS1) } Method (PTS, 1, NotSerialized) { If (LEqual (Arg0, 0x05)) { Store (ILPS, LANS) Store (Zero, ILPS) } } } Device (PEGP) { Name (_ADR, 0x00010000) Name (PPS1, Package (0x02) { 0x0B, 0x04 }) Method (_PRW, 0, NotSerialized) { Return (PPS1) } OperationRegion (ORP0, PCI_Config, Zero, 0xFF) Field (ORP0, AnyAcc, NoLock, Preserve) { RPID, 32, Offset (0x34), CPLT, 8, Offset (0x58), SSLC, 10, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), LSCX, 1, Offset (0x60), SQID, 16, SPME, 1, SPMP, 1, Offset (0x64), Offset (0xB8), NSLC, 10, Offset (0xBA), NSLS, 7, Offset (0xBC), Offset (0xC0), NQID, 16, NPME, 1, NPMP, 1, Offset (0xC4), Offset (0xDC), , 30, HPSX, 1, RPSC, 1 } OperationRegion (PCEW, SystemIO, 0x0401, One) Field (PCEW, ByteAcc, NoLock, Preserve) { , 6, PCWS, 1 } Method (XPM1, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) While (NPME) { Store (One, NPME) } } Else { Store (SPME, Local0) While (SPME) { Store (One, SPME) } While (RPSC) { Store (One, RPSC) } } Store (One, PCWS) Return (Local0) } Method (XRPW, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) } Else { Store (SPME, Local0) } Return (Local0) } } Device (PEX0) { Name (_ADR, 0x001C0000) Name (PPS1, Package (0x02) { 0x0B, 0x04 }) Method (_PRW, 0, NotSerialized) { Return (PPS1) } OperationRegion (ORP0, PCI_Config, Zero, 0xFF) Field (ORP0, AnyAcc, NoLock, Preserve) { RPID, 32, Offset (0x34), CPLT, 8, Offset (0x58), SSLC, 10, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), LSCX, 1, Offset (0x60), SQID, 16, SPME, 1, SPMP, 1, Offset (0x64), Offset (0xB8), NSLC, 10, Offset (0xBA), NSLS, 7, Offset (0xBC), Offset (0xC0), NQID, 16, NPME, 1, NPMP, 1, Offset (0xC4), Offset (0xDC), , 30, HPSX, 1, RPSC, 1 } OperationRegion (PCEW, SystemIO, 0x0401, One) Field (PCEW, ByteAcc, NoLock, Preserve) { , 6, PCWS, 1 } Method (XPM1, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) While (NPME) { Store (One, NPME) } } Else { Store (SPME, Local0) While (SPME) { Store (One, SPME) } While (RPSC) { Store (One, RPSC) } } Store (One, PCWS) Return (Local0) } Method (XRPW, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) } Else { Store (SPME, Local0) } Return (Local0) } Method (_PRT, 0, NotSerialized) { If (LEqual (GPIC, Zero)) { Return (Package (0x04) { Package (0x04) { 0xFFFF, Zero, ^^LPC.LNKA, Zero }, Package (0x04) { 0xFFFF, One, ^^LPC.LNKB, Zero }, Package (0x04) { 0xFFFF, 0x02, ^^LPC.LNKC, Zero }, Package (0x04) { 0xFFFF, 0x03, ^^LPC.LNKD, Zero } }) } Else { Return (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 } }) } } } Device (PEX1) { Name (_ADR, 0x001C0001) Name (PPS1, Package (0x02) { 0x0B, 0x04 }) Method (_PRW, 0, NotSerialized) { Return (PPS1) } OperationRegion (ORP0, PCI_Config, Zero, 0xFF) Field (ORP0, AnyAcc, NoLock, Preserve) { RPID, 32, Offset (0x34), CPLT, 8, Offset (0x58), SSLC, 10, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), LSCX, 1, Offset (0x60), SQID, 16, SPME, 1, SPMP, 1, Offset (0x64), Offset (0xB8), NSLC, 10, Offset (0xBA), NSLS, 7, Offset (0xBC), Offset (0xC0), NQID, 16, NPME, 1, NPMP, 1, Offset (0xC4), Offset (0xDC), , 30, HPSX, 1, RPSC, 1 } OperationRegion (PCEW, SystemIO, 0x0401, One) Field (PCEW, ByteAcc, NoLock, Preserve) { , 6, PCWS, 1 } Method (XPM1, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) While (NPME) { Store (One, NPME) } } Else { Store (SPME, Local0) While (SPME) { Store (One, SPME) } While (RPSC) { Store (One, RPSC) } } Store (One, PCWS) Return (Local0) } Method (XRPW, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) } Else { Store (SPME, Local0) } Return (Local0) } Method (_PRT, 0, NotSerialized) { If (LEqual (GPIC, Zero)) { Return (Package (0x04) { Package (0x04) { 0xFFFF, Zero, ^^LPC.LNKB, Zero }, Package (0x04) { 0xFFFF, One, ^^LPC.LNKC, Zero }, Package (0x04) { 0xFFFF, 0x02, ^^LPC.LNKD, Zero }, Package (0x04) { 0xFFFF, 0x03, ^^LPC.LNKA, Zero } }) } Else { Return (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 } }) } } } Device (PEX2) { Name (_ADR, 0x001C0002) Name (PPS1, Package (0x02) { 0x0B, 0x04 }) Method (_PRW, 0, NotSerialized) { Return (PPS1) } OperationRegion (ORP0, PCI_Config, Zero, 0xFF) Field (ORP0, AnyAcc, NoLock, Preserve) { RPID, 32, Offset (0x34), CPLT, 8, Offset (0x58), SSLC, 10, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), LSCX, 1, Offset (0x60), SQID, 16, SPME, 1, SPMP, 1, Offset (0x64), Offset (0xB8), NSLC, 10, Offset (0xBA), NSLS, 7, Offset (0xBC), Offset (0xC0), NQID, 16, NPME, 1, NPMP, 1, Offset (0xC4), Offset (0xDC), , 30, HPSX, 1, RPSC, 1 } OperationRegion (PCEW, SystemIO, 0x0401, One) Field (PCEW, ByteAcc, NoLock, Preserve) { , 6, PCWS, 1 } Method (XPM1, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) While (NPME) { Store (One, NPME) } } Else { Store (SPME, Local0) While (SPME) { Store (One, SPME) } While (RPSC) { Store (One, RPSC) } } Store (One, PCWS) Return (Local0) } Method (XRPW, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) } Else { Store (SPME, Local0) } Return (Local0) } Method (_PRT, 0, NotSerialized) { If (LEqual (GPIC, Zero)) { Return (Package (0x04) { Package (0x04) { 0xFFFF, Zero, ^^LPC.LNKC, Zero }, Package (0x04) { 0xFFFF, One, ^^LPC.LNKD, Zero }, Package (0x04) { 0xFFFF, 0x02, ^^LPC.LNKA, Zero }, Package (0x04) { 0xFFFF, 0x03, ^^LPC.LNKB, Zero } }) } Else { Return (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 } }) } } Device (JMB0) { Name (_ADR, Zero) OperationRegion (CF40, PCI_Config, 0x40, 0x04) Field (CF40, ByteAcc, NoLock, Preserve) { CHE0, 1, FUN1, 1, , 1, CAB0, 1, CHE1, 1, Offset (0x01), AHEN, 1, , 3, PRT0, 1, AHM0, 1, PRT1, 1, AHM1, 1, CF42, 6, SWAP, 1, PATA, 1, , 6, WTEN, 1, Offset (0x04) } Name (PIOT, Package (0x05) { 0x0258, 0x0186, 0x014A, 0xB4, 0x78 }) Name (UDMA, Package (0x07) { 0x78, 0x50, 0x3C, 0x28, 0x1E, 0x14, 0x0F }) Name (MDMA, Package (0x03) { 0x01E0, 0x96, 0x78 }) 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 (PIO0, 0x04) Name (DMA0, 0x06) Name (MDA0, 0x02) Name (PIO1, 0x04) Name (DMA1, 0x06) Name (MDA1, 0x02) Name (PIO2, 0x04) Name (DMA2, 0x06) Name (MDA2, 0x02) Name (PIO3, 0x04) Name (DMA3, 0x06) Name (MDA3, 0x02) Name (FLGP, 0x1F) Name (FLGS, 0x1F) Device (IDE0) { Name (_ADR, Zero) Method (_GTM, 0, NotSerialized) { Store (DerefOf (Index (PIOT, PIO0)), Local0) Store (DerefOf (Index (PIOT, PIO1)), Local2) Store (0x1A, Local4) If (LAnd (FLGP, One)) { If (LNot (FUN1)) { If (LAnd (CAB0, SWAP)) { Store (0x02, DMA0) } } Store (DerefOf (Index (UDMA, DMA0)), Local1) Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, MDA0)), Local1) } If (LAnd (FLGP, 0x04)) { If (LAnd (CAB0, SWAP)) { Store (0x02, DMA1) } Store (DerefOf (Index (UDMA, DMA1)), Local3) Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, MDA1)), 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) Store (Local4, FLGP) If (LAnd (LNotEqual (Local0, Ones), LNotEqual (Local0, Zero))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PIO0) } If (LAnd (LNotEqual (Local1, Ones), LNotEqual (Local1, Zero))) { If (LAnd (FLGP, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), DMA0) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), MDA0) } } If (LAnd (LNotEqual (Local2, Ones), LNotEqual (Local2, Zero))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PIO1) } If (LAnd (LNotEqual (Local3, Ones), LNotEqual (Local3, Zero))) { If (LAnd (FLGP, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), DMA1) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), MDA1) } } } 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 (PIO0, PIOM) Or (PIOM, 0x08, PIOM) If (LAnd (FLGP, One)) { Store (DMA0, DMAM) Or (DMAM, 0x40, DMAM) } Else { Store (MDA0, DMAM) 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 (PIO1, PIOM) Or (PIOM, 0x08, PIOM) If (LAnd (FLGP, 0x04)) { Store (DMA1, DMAM) Or (DMAM, 0x40, DMAM) } Else { Store (MDA1, DMAM) Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } Device (IDE1) { Name (_ADR, One) Method (_STA, 0, NotSerialized) { Return (0x0B) } Method (_GTM, 0, NotSerialized) { Store (DerefOf (Index (PIOT, PIO2)), Local0) Store (DerefOf (Index (PIOT, PIO3)), Local2) Store (0x1A, Local4) If (LAnd (FLGS, One)) { If (LNot (FUN1)) { If (LAnd (CAB0, LNot (SWAP))) { Store (0x02, DMA2) } } Store (DerefOf (Index (UDMA, DMA2)), Local1) Or (Local4, One, Local4) } Else { Store (DerefOf (Index (MDMA, MDA2)), Local1) } If (LAnd (FLGS, 0x04)) { If (LAnd (CAB0, LNot (SWAP))) { Store (0x02, DMA3) } Store (DerefOf (Index (UDMA, DMA3)), Local3) Or (Local4, 0x04, Local4) } Else { Store (DerefOf (Index (MDMA, MDA3)), 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) Store (Local4, FLGS) If (LAnd (LNotEqual (Local0, Ones), LNotEqual (Local0, Zero))) { Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PIO2) } If (LAnd (LNotEqual (Local1, Ones), LNotEqual (Local1, Zero))) { If (LAnd (FLGS, One)) { Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), DMA2) } Else { Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), MDA2) } } If (LAnd (LNotEqual (Local2, Ones), LNotEqual (Local2, Zero))) { Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PIO3) } If (LAnd (LNotEqual (Local3, Ones), LNotEqual (Local3, Zero))) { If (LAnd (FLGS, 0x04)) { Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), DMA3) } Else { Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), MDA3) } } } 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 (PIO2, PIOM) Or (PIOM, 0x08, PIOM) If (LAnd (FLGS, One)) { Store (DMA2, DMAM) Or (DMAM, 0x40, DMAM) } Else { Store (MDA2, DMAM) 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 (PIO3, PIOM) Or (PIOM, 0x08, PIOM) If (LAnd (FLGS, 0x04)) { Store (DMA3, DMAM) Or (DMAM, 0x40, DMAM) } Else { Store (MDA3, DMAM) Or (DMAM, 0x20, DMAM) } Concatenate (Local0, Local1, Local2) Return (Local2) } } } } } Device (PEX3) { Name (_ADR, 0x001C0003) Name (PPS1, Package (0x02) { 0x0B, 0x04 }) Method (_PRW, 0, NotSerialized) { Return (PPS1) } OperationRegion (ORP0, PCI_Config, Zero, 0xFF) Field (ORP0, AnyAcc, NoLock, Preserve) { RPID, 32, Offset (0x34), CPLT, 8, Offset (0x58), SSLC, 10, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), LSCX, 1, Offset (0x60), SQID, 16, SPME, 1, SPMP, 1, Offset (0x64), Offset (0xB8), NSLC, 10, Offset (0xBA), NSLS, 7, Offset (0xBC), Offset (0xC0), NQID, 16, NPME, 1, NPMP, 1, Offset (0xC4), Offset (0xDC), , 30, HPSX, 1, RPSC, 1 } OperationRegion (PCEW, SystemIO, 0x0401, One) Field (PCEW, ByteAcc, NoLock, Preserve) { , 6, PCWS, 1 } Method (XPM1, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) While (NPME) { Store (One, NPME) } } Else { Store (SPME, Local0) While (SPME) { Store (One, SPME) } While (RPSC) { Store (One, RPSC) } } Store (One, PCWS) Return (Local0) } Method (XRPW, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) } Else { Store (SPME, Local0) } Return (Local0) } Method (_PRT, 0, NotSerialized) { If (LEqual (GPIC, Zero)) { Return (Package (0x04) { Package (0x04) { 0xFFFF, Zero, ^^LPC.LNKD, Zero }, Package (0x04) { 0xFFFF, One, ^^LPC.LNKA, Zero }, Package (0x04) { 0xFFFF, 0x02, ^^LPC.LNKB, Zero }, Package (0x04) { 0xFFFF, 0x03, ^^LPC.LNKC, Zero } }) } Else { Return (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 } }) } } } Device (PEX4) { Name (_ADR, 0x001C0004) Name (PPS1, Package (0x02) { 0x0B, 0x04 }) Method (_PRW, 0, NotSerialized) { Return (PPS1) } OperationRegion (ORP0, PCI_Config, Zero, 0xFF) Field (ORP0, AnyAcc, NoLock, Preserve) { RPID, 32, Offset (0x34), CPLT, 8, Offset (0x58), SSLC, 10, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), LSCX, 1, Offset (0x60), SQID, 16, SPME, 1, SPMP, 1, Offset (0x64), Offset (0xB8), NSLC, 10, Offset (0xBA), NSLS, 7, Offset (0xBC), Offset (0xC0), NQID, 16, NPME, 1, NPMP, 1, Offset (0xC4), Offset (0xDC), , 30, HPSX, 1, RPSC, 1 } OperationRegion (PCEW, SystemIO, 0x0401, One) Field (PCEW, ByteAcc, NoLock, Preserve) { , 6, PCWS, 1 } Method (XPM1, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) While (NPME) { Store (One, NPME) } } Else { Store (SPME, Local0) While (SPME) { Store (One, SPME) } While (RPSC) { Store (One, RPSC) } } Store (One, PCWS) Return (Local0) } Method (XRPW, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) } Else { Store (SPME, Local0) } Return (Local0) } Method (_PRT, 0, NotSerialized) { If (LEqual (GPIC, Zero)) { Return (Package (0x04) { Package (0x04) { 0xFFFF, Zero, ^^LPC.LNKA, Zero }, Package (0x04) { 0xFFFF, One, ^^LPC.LNKB, Zero }, Package (0x04) { 0xFFFF, 0x02, ^^LPC.LNKC, Zero }, Package (0x04) { 0xFFFF, 0x03, ^^LPC.LNKD, Zero } }) } Else { Return (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 } }) } } } Device (PEX5) { Name (_ADR, 0x001C0005) Name (PPS1, Package (0x02) { 0x0B, 0x04 }) Method (_PRW, 0, NotSerialized) { Return (PPS1) } OperationRegion (ORP0, PCI_Config, Zero, 0xFF) Field (ORP0, AnyAcc, NoLock, Preserve) { RPID, 32, Offset (0x34), CPLT, 8, Offset (0x58), SSLC, 10, Offset (0x5A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x5B), LSCX, 1, Offset (0x60), SQID, 16, SPME, 1, SPMP, 1, Offset (0x64), Offset (0xB8), NSLC, 10, Offset (0xBA), NSLS, 7, Offset (0xBC), Offset (0xC0), NQID, 16, NPME, 1, NPMP, 1, Offset (0xC4), Offset (0xDC), , 30, HPSX, 1, RPSC, 1 } OperationRegion (PCEW, SystemIO, 0x0401, One) Field (PCEW, ByteAcc, NoLock, Preserve) { , 6, PCWS, 1 } Method (XPM1, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) While (NPME) { Store (One, NPME) } } Else { Store (SPME, Local0) While (SPME) { Store (One, SPME) } While (RPSC) { Store (One, RPSC) } } Store (One, PCWS) Return (Local0) } Method (XRPW, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (RPID, Ones)) { Return (Zero) } If (LGreaterEqual (Arg0, 0x08)) { Store (NPME, Local0) } Else { Store (SPME, Local0) } Return (Local0) } Method (_PRT, 0, NotSerialized) { If (LEqual (GPIC, Zero)) { Return (Package (0x04) { Package (0x04) { 0xFFFF, Zero, ^^LPC.LNKB, Zero }, Package (0x04) { 0xFFFF, One, ^^LPC.LNKC, Zero }, Package (0x04) { 0xFFFF, 0x02, ^^LPC.LNKD, Zero }, Package (0x04) { 0xFFFF, 0x03, ^^LPC.LNKA, Zero } }) } Else { Return (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 } }) } } } Device (APIC) { Name (_HID, EisaId ("PNP0003")) Name (_CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0xFEC00000, // Address Base 0x00000100, // Address Length ) }) } Device (UHC1) { Name (_ADR, 0x001D0000) Name (UPS1, Package (0x02) { 0x03, 0x03 }) Method (_PRW, 0, NotSerialized) { Return (UPS1) } OperationRegion (USBR, PCI_Config, 0xC4, One) Field (USBR, AnyAcc, NoLock, Preserve) { URES, 8 } Method (_PSW, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Store (Zero, URES) } If (LEqual (Arg0, One)) { Store (0x03, URES) } } } Device (UHC2) { Name (_ADR, 0x001D0001) Name (UPS1, Package (0x02) { 0x04, 0x03 }) Method (_PRW, 0, NotSerialized) { Return (UPS1) } OperationRegion (USBR, PCI_Config, 0xC4, One) Field (USBR, AnyAcc, NoLock, Preserve) { URES, 8 } Method (_PSW, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Store (Zero, URES) } If (LEqual (Arg0, One)) { Store (0x03, URES) } } } Device (UHC3) { Name (_ADR, 0x001D0002) Name (UPS1, Package (0x02) { 0x0C, 0x03 }) Method (_PRW, 0, NotSerialized) { Return (UPS1) } OperationRegion (USBR, PCI_Config, 0xC4, One) Field (USBR, AnyAcc, NoLock, Preserve) { URES, 8 } Method (_PSW, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Store (Zero, URES) } If (LEqual (Arg0, One)) { Store (0x03, URES) } } } Device (UHC4) { Name (_ADR, 0x001D0003) Name (UPS1, Package (0x02) { 0x0E, 0x03 }) Method (_PRW, 0, NotSerialized) { Return (UPS1) } OperationRegion (USBR, PCI_Config, 0xC4, One) Field (USBR, AnyAcc, NoLock, Preserve) { URES, 8 } Method (_PSW, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Store (Zero, URES) } If (LEqual (Arg0, One)) { Store (0x03, URES) } } } Device (EHCI) { Name (_ADR, 0x001D0007) Name (UPS1, Package (0x02) { 0x0D, 0x03 }) Method (_PRW, 0, NotSerialized) { Return (UPS1) } OperationRegion (USBR, PCI_Config, 0x62, 0x02) Field (USBR, AnyAcc, NoLock, Preserve) { URE2, 9 } Method (_PSW, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Store (Zero, URE2) } If (LEqual (Arg0, One)) { Store (0x01FF, URE2) } } } Device (EHC2) { Name (_ADR, 0x001A0007) Name (UPS1, Package (0x02) { 0x0D, 0x03 }) Method (_PRW, 0, NotSerialized) { Return (UPS1) } OperationRegion (USBR, PCI_Config, 0x62, 0x02) Field (USBR, AnyAcc, NoLock, Preserve) { URE2, 9 } Method (_PSW, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Store (Zero, URE2) } If (LEqual (Arg0, One)) { Store (0x01FF, URE2) } } } Device (UH42) { Name (_ADR, 0x001A0000) Name (UPS1, Package (0x02) { 0x0E, 0x03 }) Method (_PRW, 0, NotSerialized) { Return (UPS1) } OperationRegion (USBR, PCI_Config, 0xC4, One) Field (USBR, AnyAcc, NoLock, Preserve) { URES, 8 } Method (_PSW, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Store (Zero, URES) } If (LEqual (Arg0, One)) { Store (0x03, URES) } } } Device (UHC5) { Name (_ADR, 0x001A0001) Name (UPS1, Package (0x02) { 0x05, 0x03 }) Method (_PRW, 0, NotSerialized) { Return (UPS1) } OperationRegion (USBR, PCI_Config, 0xC4, One) Field (USBR, AnyAcc, NoLock, Preserve) { URES, 8 } Method (_PSW, 1, NotSerialized) { If (LEqual (Arg0, Zero)) { Store (Zero, URES) } If (LEqual (Arg0, One)) { Store (0x03, URES) } } } Device (HDEF) { Name (_ADR, 0x001B0000) Method (_PWR, 0, NotSerialized) { Return (Package (0x02) { 0x0D, 0x05 }) } Method (_DSM, 4, NotSerialized) { Store (Package (0x0A) { "built-in", Buffer (0x01) { 0x01 }, "codec-id", Buffer (0x04) { 0x88, 0x08, 0xEC, 0x10 }, "layout-id", Buffer (0x04) { 0x0C, 0x00, 0x00, 0x00 }, "device-type", Buffer (0x1F) { "Realtek ALC888S (Intel DG35EC)" }, "PinConfigurations", Buffer (0x19) { /* 0000 */ 0x0c, 0x0d, 0x0e, 0x0f, 0x26, /* 0005 */ 0x0c, 0x0d, 0x0e, 0x0f, 0x26, /* 000A */ 0x0c, 0x0d, 0x0e, 0x0f, 0x26, /* 000F */ 0x0c, 0x0d, 0x0e, 0x0f, 0x26, /* 0014 */ 0x0c, 0x0d, 0x0e, 0x0f, 0x26 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Method (GETP, 1, Serialized) { If (LEqual (And (Arg0, 0x09), Zero)) { Return (Ones) } If (LEqual (And (Arg0, 0x09), 0x08)) { Return (0x0384) } ShiftRight (And (Arg0, 0x0300), 0x08, Local0) ShiftRight (And (Arg0, 0x3000), 0x0C, Local1) Return (Multiply (0x1E, Subtract (0x09, Add (Local0, Local1)) )) } Method (GDMA, 5, Serialized) { If (Arg0) { If (LAnd (Arg1, Arg4)) { Return (0x14) } If (LAnd (Arg2, Arg4)) { Return (Multiply (Subtract (0x04, Arg3), 0x0F)) } Return (Multiply (Subtract (0x04, Arg3), 0x1E)) } Return (Ones) } Method (GETT, 1, Serialized) { Return (Multiply (0x1E, Subtract (0x09, Add (And (ShiftRight (Arg0, 0x02 ), 0x03), And (Arg0, 0x03))))) } Method (GETF, 3, Serialized) { Name (TMPF, Zero) If (Arg0) { Or (TMPF, One, TMPF) } If (And (Arg2, 0x02)) { Or (TMPF, 0x02, TMPF) } If (Arg1) { Or (TMPF, 0x04, TMPF) } If (And (Arg2, 0x20)) { Or (TMPF, 0x08, TMPF) } If (And (Arg2, 0x4000)) { Or (TMPF, 0x10, TMPF) } Return (TMPF) } Method (SETP, 3, Serialized) { If (LGreater (Arg0, 0xF0)) { Return (0x08) } Else { If (And (Arg1, 0x02)) { If (LAnd (LLessEqual (Arg0, 0x78), And (Arg2, 0x02))) { Return (0x2301) } If (LAnd (LLessEqual (Arg0, 0xB4), And (Arg2, One))) { Return (0x2101) } } Return (0x1001) } } Method (SDMA, 1, Serialized) { If (LLessEqual (Arg0, 0x14)) { Return (One) } If (LLessEqual (Arg0, 0x1E)) { Return (0x02) } If (LLessEqual (Arg0, 0x2D)) { Return (One) } If (LLessEqual (Arg0, 0x3C)) { Return (0x02) } If (LLessEqual (Arg0, 0x5A)) { Return (One) } Return (Zero) } Method (SETT, 3, Serialized) { If (And (Arg1, 0x02)) { If (LAnd (LLessEqual (Arg0, 0x78), And (Arg2, 0x02))) { Return (0x0B) } If (LAnd (LLessEqual (Arg0, 0xB4), And (Arg2, One))) { Return (0x09) } } Return (0x04) } Device (SATA) { Name (_ADR, 0x001F0002) OperationRegion (SACS, PCI_Config, 0x40, 0xC0) Field (SACS, DWordAcc, NoLock, Preserve) { PRIT, 16, SECT, 16, PSIT, 4, SSIT, 4, Offset (0x08), SYNC, 4, Offset (0x0A), SDT0, 2, , 2, SDT1, 2, Offset (0x0B), SDT2, 2, , 2, SDT3, 2, Offset (0x14), ICR0, 4, ICR1, 4, ICR2, 4, ICR3, 4, ICR4, 4, ICR5, 4, Offset (0x50), MAPV, 2 } Device (PRID) { Name (_ADR, Zero) Method (_GTM, 0, NotSerialized) { Name (PBUF, Buffer (0x14) { /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0x00 }) CreateDWordField (PBUF, Zero, PIO0) CreateDWordField (PBUF, 0x04, DMA0) CreateDWordField (PBUF, 0x08, PIO1) CreateDWordField (PBUF, 0x0C, DMA1) CreateDWordField (PBUF, 0x10, FLAG) Store (GETP (PRIT), PIO0) Store (GDMA (And (SYNC, One), And (ICR3, One), And (ICR0, One), SDT0, And (ICR1, One)), DMA0) If (LEqual (DMA0, Ones)) { Store (PIO0, DMA0) } If (And (PRIT, 0x4000)) { If (LEqual (And (PRIT, 0x90), 0x80)) { Store (0x0384, PIO1) } Else { Store (GETT (PSIT), PIO1) } } Else { Store (Ones, PIO1) } Store (GDMA (And (SYNC, 0x02), And (ICR3, 0x02), And (ICR0, 0x02), SDT1, And (ICR1, 0x02)), DMA1) If (LEqual (DMA1, Ones)) { Store (PIO1, DMA1) } Store (GETF (And (SYNC, One), And (SYNC, 0x02), PRIT), FLAG) Return (PBUF) } Method (_STM, 3, NotSerialized) { CreateDWordField (Arg0, Zero, PIO0) CreateDWordField (Arg0, 0x04, DMA0) CreateDWordField (Arg0, 0x08, PIO1) CreateDWordField (Arg0, 0x0C, DMA1) CreateDWordField (Arg0, 0x10, FLAG) If (LEqual (SizeOf (Arg1), 0x0200)) { And (PRIT, 0x40F0, PRIT) And (SYNC, 0x0E, SYNC) Store (Zero, SDT0) And (ICR0, 0x0E, ICR0) And (ICR1, 0x0E, ICR1) And (ICR3, 0x0E, ICR3) And (ICR5, 0x0E, ICR5) CreateWordField (Arg1, 0x62, W490) CreateWordField (Arg1, 0x6A, W530) CreateWordField (Arg1, 0x7E, W630) CreateWordField (Arg1, 0x80, W640) CreateWordField (Arg1, 0xB0, W880) CreateWordField (Arg1, 0xBA, W930) Or (PRIT, 0x8004, PRIT) If (LAnd (And (FLAG, 0x02), And (W490, 0x0800))) { Or (PRIT, 0x02, PRIT) } Or (PRIT, SETP (PIO0, W530, W640), PRIT) If (And (FLAG, One)) { Or (SYNC, One, SYNC) Store (SDMA (DMA0), SDT0) If (LLess (DMA0, 0x1E)) { Or (ICR3, One, ICR3) } If (LLess (DMA0, 0x3C)) { Or (ICR0, One, ICR0) } Or (ICR1, One, ICR1) } } If (LEqual (SizeOf (Arg2), 0x0200)) { And (PRIT, 0x3F0F, PRIT) Store (Zero, PSIT) And (SYNC, 0x0D, SYNC) Store (Zero, SDT1) And (ICR0, 0x0D, ICR0) And (ICR1, 0x0D, ICR1) And (ICR3, 0x0D, ICR3) And (ICR5, 0x0D, ICR5) CreateWordField (Arg2, 0x62, W491) CreateWordField (Arg2, 0x6A, W531) CreateWordField (Arg2, 0x7E, W631) CreateWordField (Arg2, 0x80, W641) CreateWordField (Arg2, 0xB0, W881) CreateWordField (Arg2, 0xBA, W931) Or (PRIT, 0x8040, PRIT) If (LAnd (And (FLAG, 0x08), And (W491, 0x0800))) { Or (PRIT, 0x20, PRIT) } If (And (FLAG, 0x10)) { Or (PRIT, 0x4000, PRIT) If (LGreater (PIO1, 0xF0)) { Or (PRIT, 0x80, PRIT) } Else { Or (PRIT, 0x10, PRIT) Store (SETT (PIO1, W531, W641), PSIT) } } If (And (FLAG, 0x04)) { Or (SYNC, 0x02, SYNC) Store (SDMA (DMA1), SDT1) If (LLess (DMA1, 0x1E)) { Or (ICR3, 0x02, ICR3) } If (LLess (DMA1, 0x3C)) { Or (ICR0, 0x02, ICR0) } Or (ICR1, 0x02, ICR1) } } } Device (P_D0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Name (PIB0, Buffer (0x0E) { /* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x03, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }) CreateByteField (PIB0, One, PMD0) CreateByteField (PIB0, 0x08, DMD0) If (And (PRIT, 0x02)) { If (LEqual (And (PRIT, 0x09), 0x08)) { Store (0x08, PMD0) } Else { Store (0x0A, PMD0) ShiftRight (And (PRIT, 0x0300), 0x08, Local0) ShiftRight (And (PRIT, 0x3000), 0x0C, Local1) Add (Local0, Local1, Local2) If (LEqual (0x03, Local2)) { Store (0x0B, PMD0) } If (LEqual (0x05, Local2)) { Store (0x0C, PMD0) } } } Else { Store (One, PMD0) } If (And (SYNC, One)) { Store (Or (SDT0, 0x40), DMD0) If (And (ICR1, One)) { If (And (ICR0, One)) { Add (DMD0, 0x02, DMD0) } If (And (ICR3, One)) { Store (0x45, DMD0) } } } Else { Or (Subtract (And (PMD0, 0x07), 0x02), 0x20, DMD0) } Return (PIB0) } } Device (P_D1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Name (PIB1, Buffer (0x0E) { /* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF, 0x03, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }) CreateByteField (PIB1, One, PMD1) CreateByteField (PIB1, 0x08, DMD1) If (And (PRIT, 0x20)) { If (LEqual (And (PRIT, 0x90), 0x80)) { Store (0x08, PMD1) } Else { Add (And (PSIT, 0x03), ShiftRight (And (PSIT, 0x0C), 0x02), Local0) If (LEqual (0x05, Local0)) { Store (0x0C, PMD1) } Else { If (LEqual (0x03, Local0)) { Store (0x0B, PMD1) } Else { Store (0x0A, PMD1) } } } } Else { Store (One, PMD1) } If (And (SYNC, 0x02)) { Store (Or (SDT1, 0x40), DMD1) If (And (ICR1, 0x02)) { If (And (ICR0, 0x02)) { Add (DMD1, 0x02, DMD1) } If (And (ICR3, 0x02)) { Store (0x45, DMD1) } } } Else { Or (Subtract (And (PMD1, 0x07), 0x02), 0x20, DMD1) } Return (PIB1) } } } Device (SECD) { Name (_ADR, One) Method (_GTM, 0, NotSerialized) { Name (SBUF, Buffer (0x14) { /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0x00 }) CreateDWordField (SBUF, Zero, PIO0) CreateDWordField (SBUF, 0x04, DMA0) CreateDWordField (SBUF, 0x08, PIO1) CreateDWordField (SBUF, 0x0C, DMA1) CreateDWordField (SBUF, 0x10, FLAG) Store (GETP (SECT), PIO0) Store (GDMA (And (SYNC, 0x04), And (ICR3, 0x04), And (ICR0, 0x04), SDT2, And (ICR1, 0x04)), DMA0) If (LEqual (DMA0, Ones)) { Store (PIO0, DMA0) } If (And (SECT, 0x4000)) { If (LEqual (And (SECT, 0x90), 0x80)) { Store (0x0384, PIO1) } Else { Store (GETT (SSIT), PIO1) } } Else { Store (Ones, PIO1) } Store (GDMA (And (SYNC, 0x08), And (ICR3, 0x08), And (ICR0, 0x08), SDT3, And (ICR1, 0x08)), DMA1) If (LEqual (DMA1, Ones)) { Store (PIO1, DMA1) } Store (GETF (And (SYNC, 0x04), And (SYNC, 0x08), SECT), FLAG) If (And (LEqual (PIO0, Ones), LEqual (DMA0, Ones))) { Store (0x78, PIO0) Store (0x14, DMA0) Store (0x03, FLAG) } Return (SBUF) } Method (_STM, 3, NotSerialized) { CreateDWordField (Arg0, Zero, PIO0) CreateDWordField (Arg0, 0x04, DMA0) CreateDWordField (Arg0, 0x08, PIO1) CreateDWordField (Arg0, 0x0C, DMA1) CreateDWordField (Arg0, 0x10, FLAG) If (LEqual (SizeOf (Arg1), 0x0200)) { And (SECT, 0x40F0, SECT) And (SYNC, 0x0B, SYNC) Store (Zero, SDT2) And (ICR0, 0x0B, ICR0) And (ICR1, 0x0B, ICR1) And (ICR3, 0x0B, ICR3) And (ICR5, 0x0B, ICR5) CreateWordField (Arg1, 0x62, W490) CreateWordField (Arg1, 0x6A, W530) CreateWordField (Arg1, 0x7E, W630) CreateWordField (Arg1, 0x80, W640) CreateWordField (Arg1, 0xB0, W880) CreateWordField (Arg1, 0xBA, W930) Or (SECT, 0x8004, SECT) If (LAnd (And (FLAG, 0x02), And (W490, 0x0800))) { Or (SECT, 0x02, SECT) } Or (SECT, SETP (PIO0, W530, W640), SECT) If (And (FLAG, One)) { Or (SYNC, 0x04, SYNC) Store (SDMA (DMA0), SDT2) If (LLess (DMA0, 0x1E)) { Or (ICR3, 0x04, ICR3) } If (LLess (DMA0, 0x3C)) { Or (ICR0, 0x04, ICR0) } If (And (W930, 0x2000)) { Or (ICR1, 0x04, ICR1) } } } If (LEqual (SizeOf (Arg2), 0x0200)) { And (SECT, 0x3F0F, SECT) Store (Zero, SSIT) And (SYNC, 0x07, SYNC) Store (Zero, SDT3) And (ICR0, 0x07, ICR0) And (ICR1, 0x07, ICR1) And (ICR3, 0x07, ICR3) And (ICR5, 0x07, ICR5) CreateWordField (Arg2, 0x62, W491) CreateWordField (Arg2, 0x6A, W531) CreateWordField (Arg2, 0x7E, W631) CreateWordField (Arg2, 0x80, W641) CreateWordField (Arg2, 0xB0, W881) CreateWordField (Arg2, 0xBA, W931) Or (SECT, 0x8040, SECT) If (LAnd (And (FLAG, 0x08), And (W491, 0x0800))) { Or (SECT, 0x20, SECT) } If (And (FLAG, 0x10)) { Or (SECT, 0x4000, SECT) If (LGreater (PIO1, 0xF0)) { Or (SECT, 0x80, SECT) } Else { Or (SECT, 0x10, SECT) Store (SETT (PIO1, W531, W641), SSIT) } } If (And (FLAG, 0x04)) { Or (SYNC, 0x08, SYNC) Store (SDMA (DMA1), SDT3) If (LLess (DMA1, 0x1E)) { Or (ICR3, 0x08, ICR3) } If (LLess (DMA1, 0x3C)) { Or (ICR0, 0x08, ICR0) } If (And (W931, 0x2000)) { Or (ICR1, 0x08, ICR1) } } } } Device (S_D0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Name (SIB0, Buffer (0x0E) { /* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x03, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }) CreateByteField (SIB0, One, PMD0) CreateByteField (SIB0, 0x08, DMD0) If (And (SECT, 0x02)) { If (LEqual (And (SECT, 0x09), 0x08)) { Store (0x08, PMD0) } Else { Store (0x0A, PMD0) ShiftRight (And (SECT, 0x0300), 0x08, Local0) ShiftRight (And (SECT, 0x3000), 0x0C, Local1) Add (Local0, Local1, Local2) If (LEqual (0x03, Local2)) { Store (0x0B, PMD0) } If (LEqual (0x05, Local2)) { Store (0x0C, PMD0) } } } Else { Store (One, PMD0) } If (And (SYNC, 0x04)) { Store (Or (SDT2, 0x40), DMD0) If (And (ICR1, 0x04)) { If (And (ICR0, 0x04)) { Add (DMD0, 0x02, DMD0) } If (And (ICR3, 0x04)) { Store (0x45, DMD0) } } } Else { Or (Subtract (And (PMD0, 0x07), 0x02), 0x20, DMD0) } Return (SIB0) } } Device (S_D1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Name (SIB1, Buffer (0x0E) { /* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF, 0x03, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }) CreateByteField (SIB1, One, PMD1) CreateByteField (SIB1, 0x08, DMD1) If (And (SECT, 0x20)) { If (LEqual (And (SECT, 0x90), 0x80)) { Store (0x08, PMD1) } Else { Add (And (SSIT, 0x03), ShiftRight (And (SSIT, 0x0C), 0x02), Local0) If (LEqual (0x05, Local0)) { Store (0x0C, PMD1) } Else { If (LEqual (0x03, Local0)) { Store (0x0B, PMD1) } Else { Store (0x0A, PMD1) } } } } Else { Store (One, PMD1) } If (And (SYNC, 0x08)) { Store (Or (SDT3, 0x40), DMD1) If (And (ICR1, 0x08)) { If (And (ICR0, 0x08)) { Add (DMD1, 0x02, DMD1) } If (And (ICR3, 0x08)) { Store (0x45, DMD1) } } } Else { Or (Subtract (And (PMD1, 0x07), 0x02), 0x20, DMD1) } Return (SIB1) } } } } Device (SAT2) { Name (_ADR, 0x001F0005) OperationRegion (SACS, PCI_Config, 0x40, 0xC0) Field (SACS, DWordAcc, NoLock, Preserve) { PRIT, 16, SECT, 16, PSIT, 4, SSIT, 4, Offset (0x08), SYNC, 4, Offset (0x0A), SDT0, 2, , 2, SDT1, 2, Offset (0x0B), SDT2, 2, , 2, SDT3, 2, Offset (0x14), ICR0, 4, ICR1, 4, ICR2, 4, ICR3, 4, ICR4, 4, ICR5, 4, Offset (0x50), MAPV, 2 } Device (PRID) { Name (_ADR, Zero) Method (_GTM, 0, NotSerialized) { Name (PBUF, Buffer (0x14) { /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0x00 }) CreateDWordField (PBUF, Zero, PIO0) CreateDWordField (PBUF, 0x04, DMA0) CreateDWordField (PBUF, 0x08, PIO1) CreateDWordField (PBUF, 0x0C, DMA1) CreateDWordField (PBUF, 0x10, FLAG) Store (GETP (PRIT), PIO0) Store (GDMA (And (SYNC, One), And (ICR3, One), And (ICR0, One), SDT0, And (ICR1, One)), DMA0) If (LEqual (DMA0, Ones)) { Store (PIO0, DMA0) } If (And (PRIT, 0x4000)) { If (LEqual (And (PRIT, 0x90), 0x80)) { Store (0x0384, PIO1) } Else { Store (GETT (PSIT), PIO1) } } Else { Store (Ones, PIO1) } Store (GDMA (And (SYNC, 0x02), And (ICR3, 0x02), And (ICR0, 0x02), SDT1, And (ICR1, 0x02)), DMA1) If (LEqual (DMA1, Ones)) { Store (PIO1, DMA1) } Store (GETF (And (SYNC, One), And (SYNC, 0x02), PRIT), FLAG) Return (PBUF) } Method (_STM, 3, NotSerialized) { CreateDWordField (Arg0, Zero, PIO0) CreateDWordField (Arg0, 0x04, DMA0) CreateDWordField (Arg0, 0x08, PIO1) CreateDWordField (Arg0, 0x0C, DMA1) CreateDWordField (Arg0, 0x10, FLAG) If (LEqual (SizeOf (Arg1), 0x0200)) { And (PRIT, 0x40F0, PRIT) And (SYNC, 0x0E, SYNC) Store (Zero, SDT0) And (ICR0, 0x0E, ICR0) And (ICR1, 0x0E, ICR1) And (ICR3, 0x0E, ICR3) And (ICR5, 0x0E, ICR5) CreateWordField (Arg1, 0x62, W490) CreateWordField (Arg1, 0x6A, W530) CreateWordField (Arg1, 0x7E, W630) CreateWordField (Arg1, 0x80, W640) CreateWordField (Arg1, 0xB0, W880) CreateWordField (Arg1, 0xBA, W930) Or (PRIT, 0x8004, PRIT) If (LAnd (And (FLAG, 0x02), And (W490, 0x0800))) { Or (PRIT, 0x02, PRIT) } Or (PRIT, SETP (PIO0, W530, W640), PRIT) If (And (FLAG, One)) { Or (SYNC, One, SYNC) Store (SDMA (DMA0), SDT0) If (LLess (DMA0, 0x1E)) { Or (ICR3, One, ICR3) } If (LLess (DMA0, 0x3C)) { Or (ICR0, One, ICR0) } Or (ICR1, One, ICR1) } } If (LEqual (SizeOf (Arg2), 0x0200)) { And (PRIT, 0x3F0F, PRIT) Store (Zero, PSIT) And (SYNC, 0x0D, SYNC) Store (Zero, SDT1) And (ICR0, 0x0D, ICR0) And (ICR1, 0x0D, ICR1) And (ICR3, 0x0D, ICR3) And (ICR5, 0x0D, ICR5) CreateWordField (Arg2, 0x62, W491) CreateWordField (Arg2, 0x6A, W531) CreateWordField (Arg2, 0x7E, W631) CreateWordField (Arg2, 0x80, W641) CreateWordField (Arg2, 0xB0, W881) CreateWordField (Arg2, 0xBA, W931) Or (PRIT, 0x8040, PRIT) If (LAnd (And (FLAG, 0x08), And (W491, 0x0800))) { Or (PRIT, 0x20, PRIT) } If (And (FLAG, 0x10)) { Or (PRIT, 0x4000, PRIT) If (LGreater (PIO1, 0xF0)) { Or (PRIT, 0x80, PRIT) } Else { Or (PRIT, 0x10, PRIT) Store (SETT (PIO1, W531, W641), PSIT) } } If (And (FLAG, 0x04)) { Or (SYNC, 0x02, SYNC) Store (SDMA (DMA1), SDT1) If (LLess (DMA1, 0x1E)) { Or (ICR3, 0x02, ICR3) } If (LLess (DMA1, 0x3C)) { Or (ICR0, 0x02, ICR0) } Or (ICR1, 0x02, ICR1) } } } Device (P_D0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Name (PIB0, Buffer (0x0E) { /* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x03, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }) CreateByteField (PIB0, One, PMD0) CreateByteField (PIB0, 0x08, DMD0) If (And (PRIT, 0x02)) { If (LEqual (And (PRIT, 0x09), 0x08)) { Store (0x08, PMD0) } Else { Store (0x0A, PMD0) ShiftRight (And (PRIT, 0x0300), 0x08, Local0) ShiftRight (And (PRIT, 0x3000), 0x0C, Local1) Add (Local0, Local1, Local2) If (LEqual (0x03, Local2)) { Store (0x0B, PMD0) } If (LEqual (0x05, Local2)) { Store (0x0C, PMD0) } } } Else { Store (One, PMD0) } If (And (SYNC, One)) { Store (Or (SDT0, 0x40), DMD0) If (And (ICR1, One)) { If (And (ICR0, One)) { Add (DMD0, 0x02, DMD0) } If (And (ICR3, One)) { Store (0x45, DMD0) } } } Else { Or (Subtract (And (PMD0, 0x07), 0x02), 0x20, DMD0) } Return (PIB0) } } Device (P_D1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Name (PIB1, Buffer (0x0E) { /* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF, 0x03, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }) CreateByteField (PIB1, One, PMD1) CreateByteField (PIB1, 0x08, DMD1) If (And (PRIT, 0x20)) { If (LEqual (And (PRIT, 0x90), 0x80)) { Store (0x08, PMD1) } Else { Add (And (PSIT, 0x03), ShiftRight (And (PSIT, 0x0C), 0x02), Local0) If (LEqual (0x05, Local0)) { Store (0x0C, PMD1) } Else { If (LEqual (0x03, Local0)) { Store (0x0B, PMD1) } Else { Store (0x0A, PMD1) } } } } Else { Store (One, PMD1) } If (And (SYNC, 0x02)) { Store (Or (SDT1, 0x40), DMD1) If (And (ICR1, 0x02)) { If (And (ICR0, 0x02)) { Add (DMD1, 0x02, DMD1) } If (And (ICR3, 0x02)) { Store (0x45, DMD1) } } } Else { Or (Subtract (And (PMD1, 0x07), 0x02), 0x20, DMD1) } Return (PIB1) } } } Device (SECD) { Name (_ADR, One) Method (_GTM, 0, NotSerialized) { Name (SBUF, Buffer (0x14) { /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x00, 0x00, 0x00, 0x00 }) CreateDWordField (SBUF, Zero, PIO0) CreateDWordField (SBUF, 0x04, DMA0) CreateDWordField (SBUF, 0x08, PIO1) CreateDWordField (SBUF, 0x0C, DMA1) CreateDWordField (SBUF, 0x10, FLAG) Store (GETP (SECT), PIO0) Store (GDMA (And (SYNC, 0x04), And (ICR3, 0x04), And (ICR0, 0x04), SDT2, And (ICR1, 0x04)), DMA0) If (LEqual (DMA0, Ones)) { Store (PIO0, DMA0) } If (And (SECT, 0x4000)) { If (LEqual (And (SECT, 0x90), 0x80)) { Store (0x0384, PIO1) } Else { Store (GETT (SSIT), PIO1) } } Else { Store (Ones, PIO1) } Store (GDMA (And (SYNC, 0x08), And (ICR3, 0x08), And (ICR0, 0x08), SDT3, And (ICR1, 0x08)), DMA1) If (LEqual (DMA1, Ones)) { Store (PIO1, DMA1) } Store (GETF (And (SYNC, 0x04), And (SYNC, 0x08), SECT), FLAG) If (And (LEqual (PIO0, Ones), LEqual (DMA0, Ones))) { Store (0x78, PIO0) Store (0x14, DMA0) Store (0x03, FLAG) } Return (SBUF) } Method (_STM, 3, NotSerialized) { CreateDWordField (Arg0, Zero, PIO0) CreateDWordField (Arg0, 0x04, DMA0) CreateDWordField (Arg0, 0x08, PIO1) CreateDWordField (Arg0, 0x0C, DMA1) CreateDWordField (Arg0, 0x10, FLAG) If (LEqual (SizeOf (Arg1), 0x0200)) { And (SECT, 0x40F0, SECT) And (SYNC, 0x0B, SYNC) Store (Zero, SDT2) And (ICR0, 0x0B, ICR0) And (ICR1, 0x0B, ICR1) And (ICR3, 0x0B, ICR3) And (ICR5, 0x0B, ICR5) CreateWordField (Arg1, 0x62, W490) CreateWordField (Arg1, 0x6A, W530) CreateWordField (Arg1, 0x7E, W630) CreateWordField (Arg1, 0x80, W640) CreateWordField (Arg1, 0xB0, W880) CreateWordField (Arg1, 0xBA, W930) Or (SECT, 0x8004, SECT) If (LAnd (And (FLAG, 0x02), And (W490, 0x0800))) { Or (SECT, 0x02, SECT) } Or (SECT, SETP (PIO0, W530, W640), SECT) If (And (FLAG, One)) { Or (SYNC, 0x04, SYNC) Store (SDMA (DMA0), SDT2) If (LLess (DMA0, 0x1E)) { Or (ICR3, 0x04, ICR3) } If (LLess (DMA0, 0x3C)) { Or (ICR0, 0x04, ICR0) } If (And (W930, 0x2000)) { Or (ICR1, 0x04, ICR1) } } } If (LEqual (SizeOf (Arg2), 0x0200)) { And (SECT, 0x3F0F, SECT) Store (Zero, SSIT) And (SYNC, 0x07, SYNC) Store (Zero, SDT3) And (ICR0, 0x07, ICR0) And (ICR1, 0x07, ICR1) And (ICR3, 0x07, ICR3) And (ICR5, 0x07, ICR5) CreateWordField (Arg2, 0x62, W491) CreateWordField (Arg2, 0x6A, W531) CreateWordField (Arg2, 0x7E, W631) CreateWordField (Arg2, 0x80, W641) CreateWordField (Arg2, 0xB0, W881) CreateWordField (Arg2, 0xBA, W931) Or (SECT, 0x8040, SECT) If (LAnd (And (FLAG, 0x08), And (W491, 0x0800))) { Or (SECT, 0x20, SECT) } If (And (FLAG, 0x10)) { Or (SECT, 0x4000, SECT) If (LGreater (PIO1, 0xF0)) { Or (SECT, 0x80, SECT) } Else { Or (SECT, 0x10, SECT) Store (SETT (PIO1, W531, W641), SSIT) } } If (And (FLAG, 0x04)) { Or (SYNC, 0x08, SYNC) Store (SDMA (DMA1), SDT3) If (LLess (DMA1, 0x1E)) { Or (ICR3, 0x08, ICR3) } If (LLess (DMA1, 0x3C)) { Or (ICR0, 0x08, ICR0) } If (And (W931, 0x2000)) { Or (ICR1, 0x08, ICR1) } } } } Device (S_D0) { Name (_ADR, Zero) Method (_GTF, 0, NotSerialized) { Name (SIB0, Buffer (0x0E) { /* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x03, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }) CreateByteField (SIB0, One, PMD0) CreateByteField (SIB0, 0x08, DMD0) If (And (SECT, 0x02)) { If (LEqual (And (SECT, 0x09), 0x08)) { Store (0x08, PMD0) } Else { Store (0x0A, PMD0) ShiftRight (And (SECT, 0x0300), 0x08, Local0) ShiftRight (And (SECT, 0x3000), 0x0C, Local1) Add (Local0, Local1, Local2) If (LEqual (0x03, Local2)) { Store (0x0B, PMD0) } If (LEqual (0x05, Local2)) { Store (0x0C, PMD0) } } } Else { Store (One, PMD0) } If (And (SYNC, 0x04)) { Store (Or (SDT2, 0x40), DMD0) If (And (ICR1, 0x04)) { If (And (ICR0, 0x04)) { Add (DMD0, 0x02, DMD0) } If (And (ICR3, 0x04)) { Store (0x45, DMD0) } } } Else { Or (Subtract (And (PMD0, 0x07), 0x02), 0x20, DMD0) } Return (SIB0) } } Device (S_D1) { Name (_ADR, One) Method (_GTF, 0, NotSerialized) { Name (SIB1, Buffer (0x0E) { /* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF, 0x03, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }) CreateByteField (SIB1, One, PMD1) CreateByteField (SIB1, 0x08, DMD1) If (And (SECT, 0x20)) { If (LEqual (And (SECT, 0x90), 0x80)) { Store (0x08, PMD1) } Else { Add (And (SSIT, 0x03), ShiftRight (And (SSIT, 0x0C), 0x02), Local0) If (LEqual (0x05, Local0)) { Store (0x0C, PMD1) } Else { If (LEqual (0x03, Local0)) { Store (0x0B, PMD1) } Else { Store (0x0A, PMD1) } } } } Else { Store (One, PMD1) } If (And (SYNC, 0x08)) { Store (Or (SDT3, 0x40), DMD1) If (And (ICR1, 0x08)) { If (And (ICR0, 0x08)) { Add (DMD1, 0x02, DMD1) } If (And (ICR3, 0x08)) { Store (0x45, DMD1) } } } Else { Or (Subtract (And (PMD1, 0x07), 0x02), 0x20, DMD1) } Return (SIB1) } } } } Device (HPET) { Name (_HID, EisaId ("PNP0103")) Name (ATT3, ResourceTemplate () { IRQNoFlags () {0} IRQNoFlags () {8} Memory32Fixed (ReadWrite, 0xFED00000, // Address Base 0x00000400, // Address Length ) }) Name (ATT4, ResourceTemplate () { }) Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_CRS, 0, NotSerialized) { Return (ATT3) } } Device (IGFX) { Name (_ADR, 0x00020000) OperationRegion (IGDP, PCI_Config, 0x40, 0xC0) Field (IGDP, AnyAcc, NoLock, Preserve) { Offset (0x12), , 1, GIVD, 1, , 2, GUMA, 3, Offset (0x14), , 4, GMFN, 1, Offset (0x18), Offset (0xA8), GSSE, 1, GSSB, 14, GSES, 1, Offset (0xBC), ASLS, 32 } OperationRegion (TCOI, SystemIO, 0x0460, 0x08) Field (TCOI, WordAcc, NoLock, Preserve) { Offset (0x04), , 9, SCIS, 1, Offset (0x06) } Name (SUCC, One) Name (UNSP, Zero) Name (NVLD, 0x02) Name (CRIT, 0x04) Name (NCRT, 0x06) Method (GSCI, 0, Serialized) { OperationRegion (IGDM, SystemMemory, ASLS, 0x2004) Field (IGDM, AnyAcc, NoLock, Preserve) { SIGN, 128, SIZE, 32, OVER, 32, SVER, 256, VVER, 128, GVER, 128, MBOX, 32, Offset (0x200), SCIE, 1, GEFC, 4, GXFC, 3, GESF, 8, Offset (0x204), PARM, 32, Offset (0x2000), GMOD, 8, GSIZ, 8 } Method (GBDA, 0, Serialized) { Store (Zero, PARM) If (LEqual (GESF, Zero)) { Store (0x41, PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, One)) { Store (Zero, PARM) Store (Zero, GESF) Return (SUCC) } If (LEqual (GESF, 0x07)) { Or (PARM, GIVD, PARM) XOr (PARM, One, PARM) Or (PARM, ShiftLeft (GMFN, One), PARM) And (PARM, 0xFFFFFFF7, PARM) Or (PARM, 0x1000, PARM) If (LEqual (GMOD, Zero)) { Or (PARM, ShiftLeft (GSIZ, 0x11), PARM) } Else { Or (PARM, ShiftLeft (GSIZ, 0x0D), PARM) } Or (PARM, 0x3E800000, PARM) Store (One, GESF) Return (SUCC) } Store (Zero, GESF) Return (UNSP) } Method (SBCB, 0, Serialized) { If (LEqual (GESF, Zero)) { Store (Zero, PARM) Store (Zero, GESF) Return (SUCC) } Store (0x04, GXFC) Store (Zero, GESF) Return (UNSP) } If (LEqual (GEFC, 0x04)) { Store (GBDA (), GXFC) } If (LEqual (GEFC, 0x06)) { Store (SBCB (), GXFC) } Store (Zero, GEFC) Store (One, SCIS) Store (Zero, GSSE) Store (Zero, SCIE) Return (Zero) } } } } } Link to comment https://www.insanelymac.com/forum/topic/209422-alc888s-on-dg35ec/ Share on other sites More sharing options...
ogr Posted July 7, 2010 Share Posted July 7, 2010 Have the same problem with my MSi gt640 and Alc888s Link to comment https://www.insanelymac.com/forum/topic/209422-alc888s-on-dg35ec/#findComment-1506312 Share on other sites More sharing options...
Recommended Posts