/* RSD PTR: OEM=ACPIAM, ACPI_Rev=1.0x (0) RSDT=0x3ff40000, cksum=3 */ /* RSDT: Length=44, Revision=1, Checksum=143, OEMID=A M I, OEM Table ID=OEMRSDT, OEM Revision=0x12000402, Creator ID=MSFT, Creator Revision=0x97 Entries={ 0x3ff40200, 0x3ff50040 } */ /* FACP: Length=129, Revision=1, Checksum=134, OEMID=A M I, OEM Table ID=OEMFACP, OEM Revision=0x12000402, Creator ID=MSFT, Creator Revision=0x97 FACS=0x3ff50000, DSDT=0x3ff40400 INT_MODEL=PIC Preferred_PM_Profile=Unspecified (0) SCI_INT=9 SMI_CMD=0xb2, ACPI_ENABLE=0xe1, ACPI_DISABLE=0x1e, S4BIOS_REQ=0x0 PSTATE_CNT=0xe2 PM1a_EVT_BLK=0x400-0x403 PM1a_CNT_BLK=0x404-0x405 PM2_CNT_BLK=0x420-0x420 PM_TMR_BLK=0x408-0x40b GPE0_BLK=0x428-0x42f CST_CNT=0xe3 P_LVL2_LAT=99 us, P_LVL3_LAT=999 us FLUSH_SIZE=1024, FLUSH_STRIDE=16 DUTY_OFFSET=1, DUTY_WIDTH=3 DAY_ALRM=13, MON_ALRM=0, CENTURY=0 IAPC_BOOT_ARCH={LEGACY_DEV,8042} Flags={WBINVD,PROC_C1,SLP_BUTTON,RTC_S4,HEADLESS} */ /* FACS: Length=64, HwSig=0x00000000, Firm_Wake_Vec=0x00000000 Global_Lock= Flags= Version=1 */ /* DSDT: Length=28695, Revision=1, Checksum=31, OEMID=0ABBN, OEM Table ID=0ABBN005, OEM Revision=0x5, Creator ID=MSFT, Creator Revision=0x2000001 */ /* * Intel ACPI Component Architecture * AML Disassembler version 20041119 * * Disassembly of /tmp/acpidump.GabDw6, Mon Dec 19 23:18:03 2005 */ DefinitionBlock ("DSDT.aml", "DSDT", 1, "0ABBN", "0ABBN005", 5) { OperationRegion (BIOS, SystemMemory, 0x3FF50064, 0xFF) Field (BIOS, ByteAcc, NoLock, Preserve) { SS1, 1, SS2, 1, SS3, 1, SS4, 1, Offset (0x01), IOST, 16, SPIO, 16, PMBS, 16, PMLN, 8, Offset (0x0A), SMLN, 8, IO1B, 16, IO1L, 8, IO2B, 16, IO2L, 8, TOPM, 32, ROMS, 32, Offset (0x1D), Offset (0x1F), MG1B, 32, MG1L, 32, MG2B, 32, MG2L, 32 } Name (WFAT, 0x90) Name (WNVR, 0x91) Name (RNVR, 0x92) Name (SWFR, 0x93) Name (STDD, 0x94) Name (GTDD, 0x95) Name (ADBR, 0x96) Name (CGPS, 0x97) Name (CGWK, 0x98) Name (ISWP, 0x99) Name (GTID, 0x9A) Name (APCB, 0xFEC00000) Name (APCL, 0x1000) Name (GPBS, 0x0500) Name (GPLN, 0x40) Name (SMBS, 0x0540) Name (SMBL, 0x20) Name (FNC0, 0x00) Name (FNC1, 0x12) Name (FNC2, 0x1E) Name (FNC3, 0x28) Name (FNC4, 0x30) 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 (0x55, DBG8) } Store (Arg0, PICM) } Method (OSFL, 0, NotSerialized) { Store (0x01, Local0) If (MCTH (\_OS, "Microsoft Windows NT")) { Store (0x00, Local0) } Return (Local0) } 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)) 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, 0x00000410, 0x06) {} } Scope (\_SB) { Name (PR00, Package (0x08) { Package (0x04) { 0x0001FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0001FFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0x001FFFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0x001FFFFF, 0x00, LNKC, 0x00 }, Package (0x04) { 0x001DFFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x001DFFFF, 0x01, LNKD, 0x00 }, Package (0x04) { 0x001DFFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0x001DFFFF, 0x03, LNKH, 0x00 } }) Name (AR00, Package (0x08) { Package (0x04) { 0x0001FFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x0001FFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0x001FFFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0x001FFFFF, 0x00, 0x00, 0x12 }, Package (0x04) { 0x001DFFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x001DFFFF, 0x01, 0x00, 0x13 }, Package (0x04) { 0x001DFFFF, 0x02, 0x00, 0x12 }, Package (0x04) { 0x001DFFFF, 0x03, 0x00, 0x17 } }) Name (PR02, Package (0x09) { Package (0x04) { 0x0008FFFF, 0x00, LNKE, 0x00 }, Package (0x04) { 0xFFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0x0001FFFF, 0x00, LNKB, 0x00 }, Package (0x04) { 0x0001FFFF, 0x01, LNKC, 0x00 }, Package (0x04) { 0x0001FFFF, 0x02, LNKD, 0x00 }, Package (0x04) { 0x0002FFFF, 0x00, LNKC, 0x00 }, Package (0x04) { 0x0002FFFF, 0x01, LNKD, 0x00 }, Package (0x04) { 0x0003FFFF, 0x00, LNKD, 0x00 }, Package (0x04) { 0x0003FFFF, 0x01, LNKC, 0x00 } }) Name (AR02, Package (0x09) { Package (0x04) { 0x0008FFFF, 0x00, 0x00, 0x14 }, Package (0x04) { 0xFFFF, 0x00, 0x00, 0x11 }, Package (0x04) { 0x0001FFFF, 0x00, 0x00, 0x11 }, Package (0x04) { 0x0001FFFF, 0x01, 0x00, 0x12 }, Package (0x04) { 0x0001FFFF, 0x02, 0x00, 0x13 }, Package (0x04) { 0x0002FFFF, 0x00, 0x00, 0x12 }, Package (0x04) { 0x0002FFFF, 0x01, 0x00, 0x13 }, Package (0x04) { 0x0003FFFF, 0x00, 0x00, 0x13 }, Package (0x04) { 0x0003FFFF, 0x01, 0x00, 0x12 } }) Name (PR01, Package (0x01) { Package (0x04) { 0xFFFF, 0x00, LNKA, 0x00 } }) Name (AR01, Package (0x01) { Package (0x04) { 0xFFFF, 0x00, 0x00, 0x10 } }) Name (PRSA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {3,4,5,6,7,11,12} }) Name (PRSB, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {3,4,5,6,7,12} }) Alias (PRSB, PRSC) Alias (PRSB, PRSD) Alias (PRSB, PRSE) Alias (PRSB, PRSF) Alias (PRSB, PRSG) Alias (PRSB, PRSH) Device (PCI0) { Name (_HID, EisaId ("PNP0A03")) Name (_ADR, 0x00) Name (_BBN, 0x00) Name (_UID, 0x00) Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR00) } Return (PR00) } Device (P0P1) { Name (_ADR, 0x00010000) Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR01) } Return (PR01) } } Device (AUDI) { Name (_ADR, 0x001F0005) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x05, 0x03)) } } Device (P0P2) { Name (_ADR, 0x001E0000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0B, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR02) } Return (PR02) } Device (LAN0) { Name (_ADR, 0x00) } Device (CBS0) { Name (_ADR, 0x00010000) OperationRegion (CBSP, PCI_Config, 0x00, 0xF0) Field (CBSP, DWordAcc, NoLock, Preserve) { Offset (0x04), CB04, 8, Offset (0x14), CB14, 8, Offset (0x3C), CB3C, 8, Offset (0x3E), CB3E, 8, Offset (0x44), CB44, 32, Offset (0xE0), PME0, 8, PME1, 8 } Method (_INI, 0, NotSerialized) { Store (Zero, CB44) } Method (CBSW, 1, NotSerialized) { If (LEqual (Arg0, 0x03)) { Store (Zero, CB44) } } Method (CBSR, 0, NotSerialized) { And (PME1, 0x80, Local1) If (Local1) { And (PME0, 0xFC, PME0) Store (PME1, Local2) Store (Local2, PME1) } Return (Local1) } } Device (CBS1) { Name (_ADR, 0x00010001) OperationRegion (CBSP, PCI_Config, 0x00, 0xF0) Field (CBSP, DWordAcc, NoLock, Preserve) { Offset (0x04), CB04, 8, Offset (0x14), CB14, 8, Offset (0x3C), CB3C, 8, Offset (0x3E), CB3E, 8, Offset (0x44), CB44, 32, Offset (0xE0), PME0, 8, PME1, 8 } Method (_INI, 0, NotSerialized) { Store (Zero, CB44) } Method (CBSW, 1, NotSerialized) { If (LEqual (Arg0, 0x03)) { Store (Zero, CB44) } } Method (CBSR, 0, NotSerialized) { And (PME1, 0x80, Local1) If (Local1) { And (PME0, 0xFC, PME0) Store (PME1, Local2) Store (Local2, PME1) } Return (Local1) } } Device (CBS2) { Name (_ADR, 0x00010002) OperationRegion (CBSP, PCI_Config, 0x00, 0xF0) Field (CBSP, DWordAcc, NoLock, Preserve) { Offset (0x04), CB04, 8, Offset (0x14), CB14, 8, Offset (0x3C), CB3C, 8, Offset (0x3E), CB3E, 8, Offset (0x44), CB44, 32, Offset (0xE0), PME0, 8, PME1, 8 } Method (_INI, 0, NotSerialized) { Store (Zero, CB44) } Method (CBSW, 1, NotSerialized) { If (LEqual (Arg0, 0x03)) { Store (Zero, CB44) } } Method (CBSR, 0, NotSerialized) { And (PME1, 0x80, Local1) If (Local1) { And (PME0, 0xFC, PME0) Store (PME1, Local2) Store (Local2, PME1) } Return (Local1) } } Device (PCI1) { Name (_ADR, 0x00020000) OperationRegion (MINP, PCI_Config, 0x00, 0x68) Field (MINP, ByteAcc, NoLock, Preserve) { VNUM, 16, Offset (0x2C), SNUM, 32, Offset (0x34) } Method (MPDP, 0, NotSerialized) { If (LEqual (VNUM, 0xFFFF)) { Return (0x00) } Else { Return (0x02) } } } Device (MPCI) { Name (_ADR, 0x00030000) OperationRegion (MINP, PCI_Config, 0x00, 0x68) Field (MINP, ByteAcc, NoLock, Preserve) { VNUM, 16, Offset (0x2C), SNUM, 32, Offset (0x34) } Method (MPDP, 0, NotSerialized) { If (LEqual (VNUM, 0xFFFF)) { Return (0x00) } Else { Return (0x02) } } } } Device (SBRG) { Name (_ADR, 0x001F0000) 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 (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} }) } 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) } } } 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} }) } Name (DCAT, Package (0x15) { 0x01, 0x02, 0x03, 0x00, 0xFF, 0x08, 0xFF, 0xFF, 0x06, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0x05, 0xFF, 0xFF, 0xFF }) Name (IKEY, Package (0x02) { Package (0x04) { 0x87, 0x01, 0x55, 0x55 }, Package (0x04) { 0x87, 0x01, 0x55, 0xAA } }) Method (ENFG, 1, NotSerialized) { Store (0x00, Local1) If (LEqual (SPIO, 0x2E)) { Store (0x00, Local1) } If (LEqual (SPIO, 0x4E)) { Store (0x01, Local1) } Store (0x00, Local0) While (LNot (LEqual (Local0, 0x04))) { Store (DerefOf (Index (DerefOf (Index (IKEY, Local1)), Local0)), INDX) Increment (Local0) } 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 (OPT1, 0x01, Local0) EXFG () If (Local0) { Return (0x1005D041) } } Return (0x0105D041) } Method (SIOS, 1, NotSerialized) { Store ("SIOS", Debug) } Method (SIOW, 1, NotSerialized) { Store ("SIOW", Debug) } Method (SIOH, 0, NotSerialized) { Store ("SIOH", Debug) } 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 (0x30), ACTR, 8, Offset (0x60), IOAH, 8, IOAL, 8, IOH2, 8, IOL2, 8, Offset (0x70), INTR, 8, Offset (0x74), DMCH, 8, Offset (0xF0), OPT0, 8, OPT1, 8, OPT2, 8 } Method (CGLD, 1, NotSerialized) { Return (DerefOf (Index (DCAT, Arg0))) } Method (DSTA, 1, NotSerialized) { ENFG (CGLD (Arg0)) Store (ACTR, Local0) EXFG () If (LEqual (Local0, 0xFF)) { Return (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) } If (Or (LGreater (DMCH, 0x03), LEqual (And (DMCH, 0x03, Local1), 0x00))) { 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) } Device (SYSR) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x01) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0010, 0x0010, 0x00, 0x10) IO (Decode16, 0x0022, 0x0022, 0x00, 0x1E) IO (Decode16, 0x0044, 0x0044, 0x00, 0x1C) IO (Decode16, 0x0063, 0x0063, 0x00, 0x01) IO (Decode16, 0x0065, 0x0065, 0x00, 0x01) IO (Decode16, 0x0067, 0x0067, 0x00, 0x09) 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, 0x04D0, 0x04D0, 0x00, 0x02) }) } Device (FWH) { Name (_HID, EisaId ("INT0800")) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) }) CreateDWordField (CRS, 0x04, BS00) CreateDWordField (CRS, 0x08, BL00) CreateDWordField (CRS, 0x10, BS10) CreateDWordField (CRS, 0x14, BL10) Method (_CRS, 0, NotSerialized) { Store (0xFF800000, Local0) FindSetRightBit (FHD0, Local1) Decrement (Local1) If (Local1) { Multiply (Local1, 0x00080000, Local1) } Add (Local0, Local1, Local2) Store (Local2, BS00) Add (BS00, 0x00400000, BS10) Subtract (0x00, BS10, BL00) Store (BL00, BL10) Return (CRS) } } Device (FWHE) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x03) Name (CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) }) Method (_CRS, 0, NotSerialized) { CreateDWordField (CRS, 0x04, BS00) CreateDWordField (CRS, 0x08, BL00) If (LEqual (^^FWH.BS00, 0x00)) { ^^FWH._CRS () } Add (^^FWH.BS00, ^^FWH.BL00, BS00) Subtract (^^FWH.BS10, BS00, BL00) Return (CRS) } } OperationRegion (FHR0, PCI_Config, 0xE3, 0x01) Field (FHR0, ByteAcc, NoLock, Preserve) { FHD0, 8 } Device (OSYS) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x02) Name (CRS, ResourceTemplate () { IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x0000, 0x0000, 0x00, 0x00) IO (Decode16, 0x04C0, 0x04C0, 0x00, 0x10) Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) Memory32Fixed (ReadOnly, 0x00000000, 0x00000000) }) Method (_CRS, 0, NotSerialized) { CreateWordField (CRS, 0x02, GP00) CreateWordField (CRS, 0x04, GP01) CreateByteField (CRS, 0x07, GP0L) Store (PMBS, GP00) Store (PMBS, GP01) Store (PMLN, GP0L) If (LAnd (LNot (LEqual (SPIO, 0x03F0)), LGreater (SPIO, 0xF0))) { CreateWordField (CRS, 0x0A, GP10) CreateWordField (CRS, 0x0C, GP11) CreateByteField (CRS, 0x0F, GPL1) Store (SPIO, GP10) Store (SPIO, GP11) Store (0x02, GPL1) } If (IO1B) { CreateWordField (CRS, 0x12, GP20) CreateWordField (CRS, 0x14, GP21) CreateByteField (CRS, 0x17, GP2L) Store (IO1B, GP20) Store (IO1B, GP21) Store (IO1L, GP2L) } If (IO2B) { CreateWordField (CRS, 0x1A, GP30) CreateWordField (CRS, 0x1C, GP31) CreateByteField (CRS, 0x1F, GP3L) Store (IO2B, GP30) Store (IO2B, GP31) Store (IO2L, GP3L) } If (APCB) { CreateDWordField (CRS, 0x30, ML01) CreateDWordField (CRS, 0x2C, MB01) CreateDWordField (CRS, 0x3C, ML02) CreateDWordField (CRS, 0x38, MB02) Store (APCB, MB01) Store (APCL, ML01) Store (0xFEE00000, MB02) Store (0x1000, ML02) } Return (CRS) } } Device (\_SB.SYSM) { 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) } } Scope (\) { OperationRegion (RAMR, SystemMemory, 0x000FE840, 0x80) Field (RAMR, AnyAcc, NoLock, Preserve) { Offset (0x38), RAMB, 32 } } Scope (\) { OperationRegion (\GPSC, SystemIO, 0xB2, 0x02) Field (\GPSC, ByteAcc, NoLock, Preserve) { SMCM, 8, SMST, 8 } OperationRegion (\PMIO, SystemIO, PMBS, 0x80) Field (\PMIO, ByteAcc, NoLock, Preserve) { Offset (0x10), , 1, TDTY, 3, TENA, 1, TTDT, 3, FRCT, 1, , 8, THLS, 1, Offset (0x28), , 7, SMWS, 1, , 3, SBPS, 1, Offset (0x2A), Offset (0x2B), G08S, 1, , 2, G11S, 1, G12S, 1, FLPS, 1, Offset (0x2C), , 2, TPOL, 1, Offset (0x2D), Offset (0x2E), Offset (0x2F), G08E, 1, , 2, G11E, 1, G12E, 1, Offset (0x30), , 4, SLPE, 1, Offset (0x31), Offset (0x34), , 4, SLPS, 1, Offset (0x35) } OperationRegion (\GPIO, SystemIO, GPBS, 0x40) Field (\GPIO, ByteAcc, NoLock, Preserve) { Offset (0x0C), , 25, CBSP, 1, , 1, OPSD, 1, BKLT, 1, Offset (0x2C), , 11, LIDL, 1, , 1, FLPL, 1, Offset (0x38), SBAY, 2, FS02, 3, FS56, 2, , 2, WLAN, 1 } OperationRegion (\ECMS, SystemIO, 0x72, 0x02) Field (\ECMS, ByteAcc, Lock, Preserve) { EIND, 8, EDAT, 8 } IndexField (EIND, EDAT, ByteAcc, NoLock, Preserve) { Offset (0x10), IKFG, 8, FRPN, 16, Offset (0x17), AVOL, 8, LBTN, 8, CKLN, 8, CK00, 8, CK01, 8, CK02, 8, CK03, 8, CK04, 8, CK05, 8, CK06, 8, CK07, 8, CK08, 8, CK09, 8, CK10, 8, CK11, 8, CK12, 8, CK13, 8, CK14, 8, CK15, 8, CK16, 8, CK17, 8, CK18, 8, CK19, 8, CK20, 8, CK21, 8, CK22, 8, CK23, 8, CK24, 8, CK25, 8, CK26, 8, CK27, 8, CK28, 8, CK29, 8, ERRF, 8, OCLK, 8, WIDE, 1, OVCK, 2, S42K, 3, Offset (0x3B), CPUR, 6, CPUF, 2, LBT2, 8, Offset (0x3E), CAC0, 1, CDC0, 1, CAC1, 1, CDC1, 1 } } Scope (\_SB.PCI0.SBRG) { Device (SBIO) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x05) Method (_CRS, 0, NotSerialized) { Name (BUF1, ResourceTemplate () { IO (Decode16, 0x0540, 0x0540, 0x01, 0x20) }) Return (BUF1) } } } Scope (\) { Method (\ISMI, 1, Serialized) { Store (Arg0, SMCM) } Method (\DIAG, 1, NotSerialized) { Store (Arg0, DBG8) } OperationRegion (\SIOG, SystemIO, IO1B, 0x10) Field (\SIOG, ByteAcc, NoLock, Preserve) { PO00, 1, PO01, 1, PO02, 1, PO03, 1, PO04, 1, PO05, 1, PO06, 1, PO07, 1, PI00, 1, PI01, 1, PI02, 1, PI03, 1, PI04, 1, PI05, 1, PI06, 1, PI07, 1, Offset (0x04), PO10, 1, PO11, 1, PO12, 1, PO13, 1, PO14, 1, PO15, 1, PO16, 1, PO17, 1, PI10, 1, PI11, 1, PI12, 1, PI13, 1, PI14, 1, PI15, 1, PI16, 1, PI17, 1, Offset (0x08), PO20, 1, PO21, 1, PO22, 1, PO23, 1, PO24, 1, PO25, 1, PO26, 1, PO27, 1, PI20, 1, PI21, 1, PI22, 1, PI23, 1, PI24, 1, PI25, 1, PI26, 1, PI27, 1, PO30, 1, PO31, 1, PO32, 1, PO33, 1, PO34, 1, PO35, 1, PO36, 1, PO37, 1, PI30, 1, PI31, 1, PI32, 1, PI33, 1, PI34, 1, PI35, 1, PI36, 1, PI37, 1 } OperationRegion (\CBIO, SystemIO, 0x03E0, 0x02) Field (\CBIO, ByteAcc, Lock, Preserve) { CIND, 8, CDAT, 8 } IndexField (CIND, CDAT, ByteAcc, NoLock, Preserve) { Offset (0x3A), PCBV, 4, Offset (0x3B) } OperationRegion (\RAMW, SystemMemory, RAMB, 0xFF) Field (\RAMW, ByteAcc, NoLock, Preserve) { Offset (0xB0), TRTY, 8, FSFN, 8, FSTA, 16, FADR, 32, FSIZ, 16, ACTD, 8, AVLD, 8, SETD, 8, ACPF, 1, DCPF, 1, CHGF, 1, DCP2, 1, CHG2, 1, Offset (0xBE), PADL, 16, CADL, 16, CSTE, 16, NSTE, 16, SSTE, 16, SFUN, 8, TSAD, 8, TAC3, 8, TAC2, 8, TAC1, 8, TAC0, 8, TPSV, 8, TCRT, 8, F1L0, 8, F2L0, 8, F1L1, 8, F2L1, 8, F1L2, 8, F2L2, 8, F1L3, 8, F2L3, 8, F1L4, 8, F2L4, 8, SLPT, 8, DBRD, 32, AIBF, 1, Offset (0xE0), LDPS, 8, PIDR, 8, MVBI, 8, LEDD, 8 } Name (OSFG, 0x00) Name (OS9X, 0x01) Name (OS98, 0x02) Name (OSME, 0x04) Name (OS2K, 0x08) Name (OSXP, 0x10) Method (OSVR, 0, NotSerialized) { If (CondRefOf (\_OSI, Local0)) { Store (OSXP, OSFG) } Else { If (MCTH (\_OS, "Microsoft Windows")) { Store (OS98, OSFG) } Else { If (MCTH (\_OS, "Microsoft WindowsME: Millennium Edition")) { Store (OSME, OSFG) } Else { If (MCTH (\_OS, "Microsoft Windows NT")) { Store (OS2K, OSFG) } Else { Store (OSXP, OSFG) } } } } Return (OSFG) } OperationRegion (\SIOP, SystemIO, \SPIO, 0x02) Field (\SIOP, ByteAcc, Lock, Preserve) { SIOI, 8, SIOD, 8 } IndexField (SIOI, SIOD, ByteAcc, NoLock, Preserve) { Offset (0x07), LDNP, 8, Offset (0x30), LDCP, 8 } Method (\DBGR, 1, NotSerialized) { Store (LDNP, Local0) Store (0x01, LDNP) Store (LDCP, Local1) Store (0x01, LDCP) Store (Arg0, DBRD) \ISMI (\ADBR) Store (0x01, LDNP) Store (Local1, LDCP) Store (Local0, LDNP) } Name (MNAM, "W1N") Name (ONAM, "ASUSTEK") } Scope (\_SB.PCI0) { Method (_INI, 0, NotSerialized) { \OSVR () } } Scope (\_SB.PCI0.SBRG) { OperationRegion (GPMC, PCI_Config, 0xA0, 0x60) Field (GPMC, ByteAcc, NoLock, Preserve) { Offset (0x01), C4EN, 1 } Method (_INI, 0, NotSerialized) { C4C3 () } Method (C4C3, 0, NotSerialized) { XOr (\ACPF, One, Local0) Store (Local0, C4EN) } } Scope (\_SB.PCI0.SBRG) { Device (EC0) { Name (_HID, EisaId ("PNP0C09")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0062, 0x0062, 0x00, 0x01) IO (Decode16, 0x0066, 0x0066, 0x00, 0x01) }) Name (_GPE, 0x1C) Name (TPAD, 0x01) Name (DLBY, 0x01) Mutex (MUEC, 0x00) Name (ECFL, Zero) Method (ECAV, 0, NotSerialized) { Return (ECFL) } OperationRegion (ECOR, EmbeddedControl, 0x00, 0x80) Field (ECOR, ByteAcc, Lock, Preserve) { Offset (0x04), CMD1, 8, CDT1, 8, CDT2, 8, CDT3, 8, Offset (0x43), P50I, 1, , 1, , 1, P43I, 1, P54I, 1, P55I, 1, , 1, Offset (0x44), P54D, 8, P55D, 8, Offset (0x48), P54S, 8, P55S, 8, P50S, 8, P43S, 8, P54T, 8, P55T, 8, P50T, 8, P43T, 8, P60S, 8, P61S, 8, P62S, 8, P63S, 8, P64S, 8, P65S, 8, P66S, 8, P67S, 8, P60T, 8, P61T, 8, P62T, 8, P63T, 8, P64T, 8, P65T, 8, P66T, 8, P67T, 8, Offset (0x78), P60I, 1, P61I, 1, P62I, 1, P63I, 1, P64I, 1, P65I, 1, P66I, 1, P67I, 1 } Name (SMBF, 0x00) OperationRegion (SMBX, EmbeddedControl, 0x18, 0x28) Field (SMBX, ByteAcc, NoLock, Preserve) { PRTC, 8, SSTS, 5, , 1, ALFG, 1, CDFG, 1, ADDR, 8, CMDB, 8, BDAT, 256, BCNT, 8, , 1, ALAD, 7, ALD0, 8, ALD1, 8 } Field (SMBX, ByteAcc, NoLock, Preserve) { Offset (0x04), DAT0, 8, DAT1, 8 } Field (SMBX, ByteAcc, NoLock, Preserve) { Offset (0x04), DT2B, 16 } OperationRegion (NSBS, EmbeddedControl, 0x40, 0x04) Field (NSBS, ByteAcc, NoLock, Preserve) { A2AD, 8, A2D0, 8, A2D1, 8, A3AD, 8 } Method (_INI, 0, NotSerialized) { If (LNot (LGreater (\OSFG, \OSME))) { Store (One, ECFL) } } Method (_REG, 2, NotSerialized) { If (LEqual (Arg0, 0x03)) { Store (Arg1, ECFL) } } Method (_Q01, 0, NotSerialized) { If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x52) } } Method (_Q02, 0, NotSerialized) { If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x53) } } Method (_Q03, 0, NotSerialized) { If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x54) } } Method (_Q04, 0, NotSerialized) { If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x55) } } Method (_Q05, 0, NotSerialized) { If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x56) } } Method (_Q0A, 0, NotSerialized) { Notify (\_SB.SLPB, 0x80) } Method (_Q0B, 0, NotSerialized) { Store (0xE1, DBG8) Store (0xE2, DBG8) If (\_SB.PCI0.P0P2.MPCI.MPDP ()) { If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x5D) } } } Method (_Q0D, 0, NotSerialized) { If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x75) } } Method (_Q0E, 0, NotSerialized) { If (LGreater (LBTN, 0x00)) { Decrement (LBTN) } If (LGreater (LBTN, 0x0F)) { Store (0x0F, LBTN) } STBR () If (\_SB.ATKP) { Notify (\_SB.ATKD, Add (LBTN, 0x20)) } } Method (_Q0F, 0, NotSerialized) { If (LLess (LBTN, 0x0F)) { Increment (LBTN) } Else { Store (0x0F, LBTN) } STBR () If (\_SB.ATKP) { Notify (\_SB.ATKD, Add (LBTN, 0x10)) } } Method (_Q10, 0, NotSerialized) { Store (\BKLT, Local0) XOr (Local0, 0x01, Local0) Store (Local0, \BKLT) If (\_SB.ATKP) { Subtract (0x34, \BKLT, Local0) Notify (\_SB.ATKD, Local0) } } Method (_Q11, 0, NotSerialized) { FHKW () Store (\ADVG (), Local0) If (\NATK ()) { If (LNot (LEqual (\MVBI, 0x03))) { Add (Local0, 0x60, Local1) If (\_SB.ATKP) { Notify (\_SB.ATKD, Local1) } } } Else { \SWHG (Local0) } FHKS () } Name (FHKM, One) Method (FHKW, 0, Serialized) { While (LNot (FHKM)) { Sleep (0x0A) } Store (Zero, FHKM) } Method (FHKS, 0, Serialized) { Store (One, FHKM) } Method (_Q13, 0, NotSerialized) { If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x32) } } Method (_Q14, 0, NotSerialized) { If (LLess (\AVOL, 0x0F)) { Increment (\AVOL) } If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x31) } } Method (_Q15, 0, NotSerialized) { If (LGreater (\AVOL, 0x00)) { Decrement (\AVOL) } If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x30) } } Method (_Q20, 0, NotSerialized) { If (CDFG) { Store (One, SMBF) Store (Zero, CDFG) } If (ALFG) { \_SB.PCI0.SBRG.EC0.ALMH (ALAD) Store (Zero, ALFG) } } Method (_Q30, 0, NotSerialized) { If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x50) } } Method (_Q31, 0, NotSerialized) { Store (0x4B, Local0) \_SB.PCI0.SBRG.EC0.STC5 (Local0) If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x51) } } Method (_Q32, 0, NotSerialized) { If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x52) } } Method (_Q69, 0, NotSerialized) { Store (0xEE, DBG8) If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x50) } } Method (_Q6A, 0, NotSerialized) { Store (0xEE, DBG8) If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x5C) } } Method (_Q6B, 0, NotSerialized) { Store (0xEE, DBG8) If (\_SB.ATKP) { If (LEqual (TPAD, 0x01)) { Store (Zero, TPAD) Notify (\_SB.ATKD, 0x6B) } Else { Store (One, TPAD) Notify (\_SB.ATKD, 0x6A) } } } Method (_Q6C, 0, NotSerialized) { Store (0xEE, DBG8) If (\_SB.ATKP) { If (LEqual (DLBY, 0x01)) { Store (Zero, DLBY) Notify (\_SB.ATKD, 0x71) } Else { Store (One, DLBY) Notify (\_SB.ATKD, 0x72) } } } Method (_Q33, 0, NotSerialized) { If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x5C) } } Name (LEDS, Ones) Method (EC0S, 1, NotSerialized) { Store (\ACPF, CAC0) Store (\DCPF, CDC0) If (LEqual (Arg0, 0x03)) { STC5 (0x2C) } If (Arg0) { If (LLess (Arg0, 0x04)) { Store (RDC3 (0x02), Local0) And (Local0, 0xE0, LEDS) And (LEDS, 0x80, Local1) If (LNot (Local1)) { STC5 (0x2F) } And (LEDS, 0x40, Local1) If (LNot (Local1)) { STC5 (0x2E) } And (LEDS, 0x20, Local1) If (LNot (Local1)) { STC5 (0x2D) } WCMD (0xCB) Store (0x01F4, Local0) While (Local0) { Stall (0x0A) Decrement (Local0) } } } } Method (EC0W, 1, NotSerialized) { If (LNot (LEqual (CAC0, CAC1))) { Store (ACPS (), \ACPF) Store (DCPS (0x00), \DCPF) } If (LNot (LEqual (CDC0, CDC1))) { Store (ACPS (), \ACPF) Store (DCPS (0x00), \DCPF) } If (Arg0) { If (LLess (Arg0, 0x04)) { And (LEDS, 0x80, Local1) If (LNot (Local1)) { STC5 (0x4F) } And (LEDS, 0x40, Local1) If (LNot (Local1)) { STC5 (0x4E) } And (LEDS, 0x20, Local1) If (LNot (Local1)) { STC5 (0x4D) } } } } } } Scope (\_SB.PCI0.SBRG.EC0) { Method (WCMD, 1, Serialized) { If (ECAV ()) { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (Arg0, CMD1) Release (MUEC) } } Else { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { ECWC (Arg0) Release (MUEC) } } } Method (DLY0, 1, Serialized) { If (LNot (ECAV ())) { Return (Ones) } Store (Ones, Local0) If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (Arg0, CDT1) Store (0x6B, CDT2) Store (0x00, CDT3) Store (0xBB, CMD1) Store (0x7F, Local1) While (LAnd (Local1, CMD1)) { Sleep (0x01) Decrement (Local1) } If (LEqual (CMD1, Zero)) { Store (CDT1, Local0) } Release (MUEC) } Return (Local0) } Name (PWAC, Buffer (0x10) { 0x2D, 0x39, 0x44, 0x52, 0x57, 0x5C, 0x60, 0x64, 0x68, 0x6C, 0x70, 0x73, 0x7B, 0x7D, 0x81, 0x9A }) Name (PWDC, Buffer (0x10) { 0x18, 0x25, 0x2D, 0x39, 0x44, 0x52, 0x57, 0x5C, 0x60, 0x64, 0x68, 0x6C, 0x70, 0x73, 0x78, 0x7D }) Method (STBR, 0, Serialized) { If (ACAP ()) { Store (DerefOf (Index (PWAC, LBTN)), Local0) } Else { If (LDPS) { Store (DerefOf (Index (PWDC, LBTN)), Local0) } Else { Store (DerefOf (Index (PWAC, LBTN)), Local0) } } STC4 (Local0) } Method (STC4, 1, Serialized) { If (ECAV ()) { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (Arg0, CDT1) Store (0x85, CDT2) Store (0xC4, CMD1) Store (0x7F, Local0) While (LAnd (Local0, CMD1)) { Sleep (0x01) Decrement (Local0) } If (LEqual (CMD1, Zero)) { Store (CDT1, Local0) } Else { Store (Ones, Local0) } Release (MUEC) Return (Local0) } } Return (Ones) } Method (STDA, 1, Serialized) { If (ECAV ()) { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (Arg0, CDT1) Store (0xD0, CDT2) Store (0xDA, CMD1) Store (0x7F, Local0) While (LAnd (Local0, CMD1)) { Sleep (0x01) Decrement (Local0) } If (LEqual (CMD1, Zero)) { Store (CDT1, Local0) } Else { Store (Ones, Local0) } Release (MUEC) Return (Local0) } } Return (Ones) } Method (STDC, 1, Serialized) { If (ECAV ()) { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (Arg0, CDT1) Store (0xD0, CDT2) Store (0xDC, CMD1) Store (0x7F, Local0) While (LAnd (Local0, CMD1)) { Sleep (0x01) Decrement (Local0) } If (LEqual (CMD1, Zero)) { Store (CDT1, Local0) } Else { Store (Ones, Local0) } Release (MUEC) Return (Local0) } } Return (Ones) } Method (ACAP, 0, Serialized) { Return (\ACPF) } Method (ACPS, 0, Serialized) { If (ECAV ()) { Store (RDC3 (0x06), Local0) While (LEqual (Local0, Ones)) { Store (RDC3 (0x06), Local0) } And (Local0, 0x10, Local0) ShiftRight (Local0, 0x04, Local0) XOr (Local0, 0x01, Local0) Return (Local0) } Else { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (ECRP (0x06), Local0) ShiftRight (Local0, 0x04, Local0) And (Local0, 0x01, Local0) XOr (Local0, 0x01, Local0) Release (MUEC) Return (Local0) } } } Method (BATP, 1, Serialized) { If (Arg0) { Return (\DCP2) } Else { Return (\DCPF) } } Method (DCPS, 1, Serialized) { If (ECAV ()) { If (Arg0) { Store (RDC3 (0x04), Local0) While (LEqual (Local0, Ones)) { Store (RDC3 (0x04), Local0) } And (Local0, 0x08, Local0) } Else { Store (RDC3 (0x05), Local0) While (LEqual (Local0, Ones)) { Store (RDC3 (0x05), Local0) } And (Local0, 0x20, Local0) } If (Local0) { Return (Zero) } Else { Return (One) } } Else { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { If (Arg0) { Store (ECRP (0x04), Local0) ShiftRight (Local0, 0x03, Local0) } Else { Store (ECRP (0x05), Local0) ShiftRight (Local0, 0x05, Local0) } And (Local0, 0x01, Local0) Release (MUEC) If (Local0) { Return (Zero) } Else { Return (One) } } } } Method (CHGS, 1, Serialized) { If (ECAV ()) { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { If (Arg0) { Store (P63I, Local0) } Else { Store (P62I, Local0) } Release (MUEC) Return (Local0) } } Return (\ACPF) } Method (STC5, 1, Serialized) { If (ECAV ()) { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (Arg0, CDT1) Store (0xC5, CMD1) Store (0x7F, Local0) While (LAnd (Local0, CMD1)) { Sleep (0x01) Decrement (Local0) } If (LEqual (CMD1, Zero)) { Store (CDT1, Local0) } Else { Store (Ones, Local0) } Release (MUEC) Return (Local0) } } Else { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { ECSP (Arg0) Release (MUEC) Return (One) } } Return (Ones) } Method (RDC3, 1, Serialized) { If (ECAV ()) { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (Arg0, CDT1) Store (0xC3, CMD1) Store (0x7F, Local0) While (LAnd (Local0, CMD1)) { Sleep (0x01) Decrement (Local0) } If (LEqual (CMD1, Zero)) { Store (CDT1, Local0) } Else { Store (Ones, Local0) } Release (MUEC) Return (Local0) } } Else { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (ECRP (Arg0), Local0) Release (MUEC) Return (Local0) } } Return (Ones) } Method (RBAT, 2, Serialized) { If (LNot (ECAV ())) { Return (Ones) } If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (0x03, Local0) While (Local0) { Store (Arg0, CDT2) Store (Arg1, Local1) ShiftLeft (Local1, 0x01, Local1) Add (Local1, 0xDA, Local1) Store (Local1, CMD1) Store (0x7F, Local1) While (LAnd (CMD1, Local1)) { Decrement (Local1) Sleep (0x01) } If (LEqual (CMD1, 0x00)) { Store (CDT1, Local1) Store (Zero, Local0) } Else { Store (Ones, Local1) Decrement (Local0) } } Release (MUEC) Return (Local1) } Return (Ones) } Method (FNCT, 2, Serialized) { If (ECAV ()) { If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (Arg0, CDT2) Store (Arg1, CDT1) Store (0xC4, CMD1) Store (0x7F, Local0) While (LAnd (Local0, CMD1)) { Sleep (0x01) Decrement (Local0) } Release (MUEC) } } } Name (WRQK, 0x02) Name (RDQK, 0x03) Name (SDBT, 0x04) Name (RCBT, 0x05) Name (WRBT, 0x06) Name (RDBT, 0x07) Name (WRWD, 0x08) Name (RDWD, 0x09) Name (WRBL, 0x0A) Name (RDBL, 0x0B) Name (PCLL, 0x0C) Name (GOOD, 0x00) Name (UKER, 0x07) Name (DAER, 0x10) Name (CMDN, 0x12) Name (UKE2, 0x13) Name (DADN, 0x17) Name (SBTO, 0x18) Name (USPT, 0x19) Name (SBBY, 0x1A) Method (SWTC, 1, NotSerialized) { Store (UKER, Local0) Store (Arg0, Local1) And (Local1, 0xFFFF, Local1) While (Local1) { If (LEqual (SMBF, 0x00)) { Sleep (0x0A) If (LNot (LEqual (Local1, 0xFFFF))) { Subtract (Local1, 0x0A, Local1) } } Else { Store (Zero, Local1) Store (SSTS, Local0) Store (Zero, SMBF) } } Return (Local0) } Method (SMBR, 3, NotSerialized) { Store (Package (0x03) { 0x07, 0x00, 0x00 }, Local0) If (LNot (ECAV ())) { Return (Local0) } If (LNot (LEqual (Arg0, RDBL))) { If (LNot (LEqual (Arg0, RDWD))) { If (LNot (LEqual (Arg0, RDBT))) { If (LNot (LEqual (Arg0, RCBT))) { If (LNot (LEqual (Arg0, RDQK))) { Return (Local0) } } } } } If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (PRTC, Local1) Store (Zero, Local2) While (LNot (LEqual (Local1, 0x00))) { Stall (0x0A) Increment (Local2) If (LGreater (Local2, 0x03E8)) { Store (SBBY, Index (Local0, 0x00)) Store (Zero, Local1) } Else { Store (PRTC, Local1) } } If (LNot (LGreater (Local2, 0x03E8))) { ShiftLeft (Arg1, 0x01, Local3) Or (Local3, 0x01, Local3) Store (Local3, ADDR) If (LNot (LEqual (Arg0, RDQK))) { If (LNot (LEqual (Arg0, RCBT))) { Store (Arg2, CMDB) } } Store (Arg0, PRTC) Store (SWTC (0x07D0), Index (Local0, 0x00)) If (LEqual (DerefOf (Index (Local0, 0x00)), 0x00)) { If (LEqual (Arg0, RDBL)) { Store (BCNT, Index (Local0, 0x01)) Store (BDAT, Index (Local0, 0x02)) } If (LEqual (Arg0, RDWD)) { Store (0x02, Index (Local0, 0x01)) Store (DT2B, Index (Local0, 0x02)) } If (LEqual (Arg0, RDBT)) { Store (0x01, Index (Local0, 0x01)) Store (DAT0, Index (Local0, 0x02)) } If (LEqual (Arg0, RCBT)) { Store (0x01, Index (Local0, 0x01)) Store (DAT0, Index (Local0, 0x02)) } } } Release (MUEC) } Return (Local0) } Method (SMBW, 5, NotSerialized) { Store (Package (0x01) { 0x07 }, Local0) If (LNot (ECAV ())) { Return (Local0) } If (LNot (LEqual (Arg0, WRBL))) { If (LNot (LEqual (Arg0, WRWD))) { If (LNot (LEqual (Arg0, WRBT))) { If (LNot (LEqual (Arg0, SDBT))) { If (LNot (LEqual (Arg0, WRQK))) { Return (Local0) } } } } } If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Store (PRTC, Local1) Store (Zero, Local2) While (LNot (LEqual (Local1, 0x00))) { Stall (0x0A) Increment (Local2) If (LGreater (Local2, 0x03E8)) { Store (SBBY, Index (Local0, 0x00)) Store (Zero, Local1) } Else { Store (PRTC, Local1) } } If (LNot (LGreater (Local2, 0x03E8))) { ShiftLeft (Arg1, 0x01, Local3) Store (Local3, ADDR) If (LNot (LEqual (Arg0, WRQK))) { If (LNot (LEqual (Arg0, SDBT))) { Store (Arg2, CMDB) } } If (LEqual (Arg0, WRBL)) { Store (Arg3, BCNT) Store (Arg4, BDAT) } If (LEqual (Arg0, WRWD)) { Store (Arg4, DT2B) } If (LEqual (Arg0, WRBT)) { Store (Arg4, DAT0) } If (LEqual (Arg0, SDBT)) { Store (Arg4, DAT0) } Store (Arg0, PRTC) Store (SWTC (0x07D0), Index (Local0, 0x00)) } Release (MUEC) } Return (Local0) } OperationRegion (K62P, SystemIO, 0x62, 0x01) Field (K62P, ByteAcc, NoLock, Preserve) { EC62, 8 } OperationRegion (K66P, SystemIO, 0x66, 0x01) Field (K66P, ByteAcc, NoLock, Preserve) { EC66, 8 } Alias (\G12E, KSCE) Alias (\G12S, KSCS) Method (WEIE, 0, NotSerialized) { Store (0x4000, Local0) And (EC66, 0x02, Local1) While (LAnd (LNot (LEqual (Local0, Zero)), LEqual (Local1, 0x02))) { And (EC66, 0x02, Local1) Decrement (Local0) } } Method (WEOF, 0, NotSerialized) { Store (0x4000, Local0) And (EC66, 0x01, Local1) While (LAnd (LNot (LEqual (Local0, Zero)), LEqual (Local1, 0x00))) { And (EC66, 0x01, Local1) Decrement (Local0) } } Method (ECRD, 1, NotSerialized) { Store (KSCE, Local1) Store (Zero, KSCE) WEIE () Store (0x80, EC66) WEIE () Store (Arg0, EC62) WEOF () Store (EC62, Local0) While (KSCS) { Store (One, KSCS) } Store (Local1, KSCE) Return (Local0) } Method (ECWR, 2, NotSerialized) { Store (KSCE, Local1) Store (Zero, KSCE) WEIE () Store (0x81, EC66) WEIE () Store (Arg0, EC62) WEIE () Store (Arg1, EC62) WEIE () While (KSCS) { Store (One, KSCS) } Store (Local1, KSCE) } Method (ECWC, 1, NotSerialized) { Store (KSCE, Local1) Store (Zero, KSCE) WEIE () Store (0x81, EC66) WEIE () Store (0x04, EC62) WEIE () Store (Arg0, EC62) While (KSCS) { Store (One, KSCS) } Store (Local1, KSCE) } Method (ECQR, 0, NotSerialized) { Store (KSCE, Local1) Store (Zero, KSCE) WEIE () Store (0x84, EC66) WEIE () WEOF () Store (EC62, Local0) While (KSCS) { Store (One, KSCS) } Store (Local1, KSCE) Return (Local0) } Method (ECRP, 1, NotSerialized) { ECWR (0x05, Arg0) ECWR (0x04, 0xC3) While (ECRD (0x04)) {} Return (ECRD (0x05)) } Method (ECSP, 1, NotSerialized) { ECWR (0x05, Arg0) ECWR (0x04, 0xC5) While (ECRD (0x04)) {} } } Scope (\_SB.PCI0.SBRG.EC0) { } Scope (\_SB.PCI0) { Name (ACWA, 0x00) Device (AC0) { Name (_HID, "ACPI0003") Method (_PSR, 0, NotSerialized) { Return (\_SB.PCI0.SBRG.EC0.ACAP ()) } Name (_PCL, Package (0x01) { \_SB.PCI0 }) } } Scope (\_SB.PCI0.SBRG.EC0) { Method (_Q34, 0, NotSerialized) { Store (\ACPF, Local1) Sleep (0x01F4) If (ACPS ()) { Store (0x02, ACWA) Store (One, \ACPF) Store (0x58, Local0) } Else { Store (Zero, \ACPF) Store (0x57, Local0) } If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { XOr (P64S, 0x10, P64S) Release (MUEC) } STBR () Notify (\_SB.PCI0.AC0, 0x80) NBAT (0x80) \_SB.PCI0.SBRG.C4C3 () If (LNot (LEqual (\ACPF, Local1))) { If (\_SB.ATKP) { Notify (\_SB.ATKD, Local0) } } Notify (\_PR.CPU1, 0x80) Notify (\_PR.CPU1, 0x81) } } Scope (\_SB.PCI0) { Device (BAT0) { Name (_HID, EisaId ("PNP0C0A")) Name (_UID, 0x00) Name (_PCL, Package (0x01) { \_SB.PCI0 }) Method (_STA, 0, NotSerialized) { If (\_SB.PCI0.SBRG.EC0.BATP (0x00)) { Return (0x1F) } Else { Return (0x0F) } } Name (LOW2, 0x012C) Name (DVOT, 0x0E) Name (PUNT, One) Name (LFCC, 0x1770) Name (NBIF, Package (0x0D) { 0x00, 0xFFFFFFFF, 0xFFFFFFFF, 0x01, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, "", "", "", "" }) Name (PBIF, Package (0x0D) { 0x01, 0x1770, 0x1770, 0x01, 0x39D0, 0x0258, 0x012C, 0x3C, 0x3C, "W1N", " ", "LIon", "ASUSTek" }) Name (PBST, Package (0x04) { 0x00, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }) Method (FBIF, 5, NotSerialized) { Store (Arg0, PUNT) Store (Arg1, Local1) Store (Arg2, Local2) If (LEqual (PUNT, 0x00)) { Multiply (Local1, 0x0A, Local1) Multiply (Local2, 0x0A, Local2) } Store (Arg0, Index (PBIF, 0x00)) Store (Local1, Index (PBIF, 0x01)) Store (Local2, Index (PBIF, 0x02)) Store (Local2, LFCC) Store (Arg3, Index (PBIF, 0x03)) Store (Arg4, Index (PBIF, 0x04)) Divide (Local1, 0x0A, Local3, Local5) Store (Local5, Index (PBIF, 0x05)) ShiftRight (Local5, 0x01, Local6) Store (Local6, Index (PBIF, 0x06)) Store (Local6, LOW2) Divide (Local1, 0x64, Local3, Local7) Store (Local7, Index (PBIF, 0x07)) Store (Local7, Index (PBIF, 0x08)) } Method (CBIF, 0, NotSerialized) { If (PUNT) { Store (DerefOf (Index (PBIF, 0x04)), Local0) Add (Local0, 0x01F4, Local0) Divide (Local0, 0x03E8, Local1, DVOT) Store (Zero, Index (PBIF, 0x00)) Multiply (DerefOf (Index (PBIF, 0x01)), DVOT, Index (PBIF, 0x01)) Multiply (DerefOf (Index (PBIF, 0x02)), DVOT, Index (PBIF, 0x02)) Multiply (DerefOf (Index (PBIF, 0x05)), DVOT, Index (PBIF, 0x05)) Multiply (DerefOf (Index (PBIF, 0x06)), DVOT, Index (PBIF, 0x06)) Multiply (DerefOf (Index (PBIF, 0x07)), DVOT, Index (PBIF, 0x07)) Multiply (DerefOf (Index (PBIF, 0x08)), DVOT, Index (PBIF, 0x08)) } } Method (_BIF, 0, NotSerialized) { If (LNot (\_SB.PCI0.SBRG.EC0.BATP (0x00))) { Return (NBIF) } \_SB.PCI0.SBRG.EC0.BATS (0x00) Store (\MNAM, Index (PBIF, 0x09)) Store (\ONAM, Index (PBIF, 0x0C)) Store (\_SB.PCI0.SBRG.EC0.BIF0 (), Local0) Store (\_SB.PCI0.SBRG.EC0.BIF1 (), Local1) Store (\_SB.PCI0.SBRG.EC0.BIF2 (), Local2) Store (\_SB.PCI0.SBRG.EC0.BIF3 (), Local3) Store (\_SB.PCI0.SBRG.EC0.BIF4 (), Local4) \_SB.PCI0.SBRG.EC0.BATR () If (LNot (LEqual (Local0, Ones))) { If (LNot (LEqual (Local1, Ones))) { If (LNot (LEqual (Local2, Ones))) { If (LNot (LEqual (Local3, Ones))) { If (LNot (LEqual (Local4, Ones))) { FBIF (Local0, Local1, Local2, Local3, Local4) CBIF () } } } } } If (LEqual (PUNT, 0x00)) { Multiply (Local2, 0x0A, Local2) } Store (Local2, LFCC) Return (PBIF) } Method (FBST, 5, NotSerialized) { And (Arg1, 0xFFFF, Local1) Store (Arg2, Local5) Store (Arg4, Local6) ShiftRight (Local6, 0x08, Local7) Subtract (Local6, Local5, Local6) If (\_SB.PCI0.SBRG.EC0.ACAP ()) { Store (Zero, Local0) If (LGreater (Local6, Local7)) { Store (0x02, Local0) } Else { If (LAnd (LGreater (Local1, 0xA0), LLess (Local1, 0x8000))) { Store (0x02, Local0) } } } Else { Store (0x01, Local0) } And (Arg0, 0x0300, Local2) If (Local2) { ShiftLeft (One, 0x02, Local2) Or (Local0, Local2, Local0) } If (LNot (LLess (Local1, 0x8000))) { Subtract (0xFFFF, Local1, Local1) } Store (Arg2, Local2) If (LEqual (PUNT, 0x00)) { Multiply (Local1, DVOT, Local1) Multiply (Local2, 0x0A, Local2) } And (Local0, 0x02, Local3) If (LNot (Local3)) { Subtract (LFCC, Local2, Local3) Divide (LFCC, 0xC8, Local4, Local5) If (LLess (Local3, Local5)) { Store (LFCC, Local2) } } Store (Local0, Index (PBST, 0x00)) Store (Local1, Index (PBST, 0x01)) Store (Local2, Index (PBST, 0x02)) Store (Arg3, Index (PBST, 0x03)) } Method (CBST, 0, NotSerialized) { If (PUNT) { Multiply (DerefOf (Index (PBST, 0x01)), DVOT, Index (PBST, 0x01)) Multiply (DerefOf (Index (PBST, 0x02)), DVOT, Index (PBST, 0x02)) } } Method (_BST, 0, NotSerialized) { If (LNot (\_SB.PCI0.SBRG.EC0.BATP (0x00))) { Store (Zero, Index (PBST, 0x00)) Store (Ones, Index (PBST, 0x01)) Store (Ones, Index (PBST, 0x02)) Store (Ones, Index (PBST, 0x03)) Return (PBST) } If (\MES4) { Decrement (\MES4) Return (PBST) } \_SB.PCI0.SBRG.EC0.BATS (0x00) Store (\_SB.PCI0.SBRG.EC0.BSTS (), Local0) If (ACWA) { Store (0x02, Local0) Decrement (ACWA) } Store (\_SB.PCI0.SBRG.EC0.BCRT (), Local1) Store (\_SB.PCI0.SBRG.EC0.BRCP (), Local2) Store (\_SB.PCI0.SBRG.EC0.BVOT (), Local3) Store (\_SB.PCI0.SBRG.EC0.BIF2 (), Local4) \_SB.PCI0.SBRG.EC0.BATR () If (LNot (LEqual (Local0, Ones))) { If (LNot (LEqual (Local1, Ones))) { If (LNot (LEqual (Local2, Ones))) { If (LNot (LEqual (Local3, Ones))) { If (LNot (LEqual (Local4, Ones))) { FBST (Local0, Local1, Local2, Local3, Local4) CBST () } } } } } Return (PBST) } } } Scope (\_SB.PCI0.SBRG.EC0) { Method (_Q2F, 0, NotSerialized) { If (LNot (DCPS (0x00))) { Store (Zero, \DCPF) If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { And (P55S, 0xEF, P55S) Release (MUEC) } } Else { Store (One, \DCPF) If (LEqual (Acquire (MUEC, 0xFFFF), 0x00)) { Or (P55S, 0x10, P55S) Release (MUEC) } } Notify (\_SB.PCI0.BAT0, 0x01) Notify (\_SB.PCI0.BAT0, 0x81) Notify (\_SB.PCI0.AC0, 0x80) } Method (_Q50, 0, NotSerialized) { If (\_SB.ATKP) { Notify (\_SB.ATKD, 0x6E) } Else { If (BATP (0x00)) { Notify (\_SB.PCI0.BAT0, 0x80) } } } Method (NBAT, 1, NotSerialized) { If (BATP (0x00)) { Notify (\_SB.PCI0.BAT0, Arg0) } } Mutex (MMPX, 0x00) Method (BATS, 1, Serialized) { } Method (BATR, 0, Serialized) { } Name (BADR, 0x0B) Name (CADR, 0x09) Name (SADR, 0x0A) Method (ALMH, 1, NotSerialized) { If (LEqual (Arg0, BADR)) { NBAT (0x80) } } Method (BIFW, 1, NotSerialized) { Store (SMBR (RDWD, BADR, Arg0), Local0) Store (DerefOf (Index (Local0, 0x00)), Local1) If (Local1) { Return (Ones) } Else { Return (DerefOf (Index (Local0, 0x02))) } } Method (BIF0, 0, NotSerialized) { Store (One, Local1) Store (One, Local2) While (And (LNot (LEqual (Local1, 0x00)), LNot (LGreater (Local2, 0x03)))) { Store (SMBR (RDWD, BADR, 0x03), Local0) Store (DerefOf (Index (Local0, 0x00)), Local1) Increment (Local2) } If (Local1) { Return (Ones) } Else { Store (DerefOf (Index (Local0, 0x02)), Local2) ShiftRight (Local2, 0x0F, Local2) And (Local2, 0x01, Local2) XOr (Local2, 0x01, Local2) Return (Local2) } } Method (BIF1, 0, NotSerialized) { Store (Ones, Local1) Store (One, Local0) While (And (LEqual (Local1, Ones), LNot (LGreater (Local0, 0x03)))) { Store (BIFW (0x18), Local1) Increment (Local0) } Return (Local1) } Method (BIF2, 0, NotSerialized) { Store (Ones, Local1) Store (One, Local0) While (And (LEqual (Local1, Ones), LNot (LGreater (Local0, 0x03)))) { Store (BIFW (0x10), Local1) Increment (Local0) } Return (Local1) } Method (BIF3, 0, NotSerialized) { Store (Ones, Local1) Store (One, Local0) While (And (LEqual (Local1, Ones), LNot (LGreater (Local0, 0x03)))) { Store (BIFW (0x03), Local1) Increment (Local0) } If (LNot (LEqual (Local1, Ones))) { ShiftRight (Local1, 0x09, Local1) And (Local1, 0x01, Local1) XOr (Local1, 0x01, Local1) } Return (Local1) } Method (BIF4, 0, NotSerialized) { Store (Ones, Local1) Store (One, Local0) While (And (LEqual (Local1, Ones), LNot (LGreater (Local0, 0x03)))) { Store (BIFW (0x19), Local1) Increment (Local0) } Return (Local1) } Method (BIF9, 0, NotSerialized) { Name (BSTR, Buffer (0x20) {}) Store (SMBR (RDBL, BADR, 0x21), Local0) If (LNot (LEqual (DerefOf (Index (Local0, 0x00)), 0x00))) { Store (\MNAM, BSTR) Store (0x00, Index (BSTR, 0x04)) } Else { Store (DerefOf (Index (Local0, 0x02)), BSTR) Store (0x00, Index (BSTR, DerefOf (Index (Local0, 0x01)))) } Return (BSTR) } Method (BSTS, 0, NotSerialized) { Return (BIFW (0x16)) } Method (BCRT, 0, NotSerialized) { Return (BIFW (0x0A)) } Method (BRCP, 0, NotSerialized) { Return (BIFW (0x0F)) } Method (BVOT, 0, NotSerialized) { Return (BIFW (0x09)) } } Scope (\_SB) { Device (SLPB) { Name (_HID, EisaId ("PNP0C0E")) Method (_PRW, 0, NotSerialized) { Return (Package (0x02) { 0x0A, 0x04 }) } } } Scope (\_GPE) { Method (_L0A, 0, NotSerialized) { Notify (\_SB.SLPB, 0x02) } } Scope (\_SB) { Device (LID) { Name (_HID, EisaId ("PNP0C0D")) Method (_LID, 0, NotSerialized) { Return (\LIDL) } } } Scope (\_GPE) { Method (_L1B, 0, Serialized) { XOr (\LIDL, 0x01, \LIDL) Notify (\_SB.LID, 0x80) } } Scope (\) { OperationRegion (SMB0, SystemIO, SMBS, 0x10) Field (SMB0, ByteAcc, NoLock, Preserve) { HSTS, 8, SSTS, 8, HSTC, 8, HCMD, 8, HADR, 8, HDT0, 8, HDT1, 8, BLKD, 8, SLCT, 8, SHCM, 8, SLEV, 16, SLDT, 16, SCFG, 8, SADR, 8 } Name (RBUF, Package (0x20) {}) Method (HBSY, 0, NotSerialized) { Store (0x32, Local0) While (Local0) { Sleep (0x14) And (HSTS, 0x01, Local1) If (LNot (Local1)) { Return (Zero) } Decrement (Local0) } Return (One) } Method (WTSB, 0, NotSerialized) { Store (0x32, Local0) While (Local0) { Decrement (Local0) Sleep (0x14) And (HSTS, 0x1E, Local1) If (LEqual (Local1, 0x02)) { Return (One) } If (Local1) { Return (Zero) } } Return (Zero) } Mutex (\P4SM, 0x00) Method (SBYT, 2, Serialized) { If (LNot (LEqual (Acquire (\P4SM, 0xFFFF), 0x00))) { Return (Ones) } Store (0x05, Local0) While (Local0) { If (HBSY ()) { Decrement (Local0) } Else { Store (Arg0, HADR) Store (Arg1, HCMD) Store (0xFF, HSTS) Store (0x44, HSTC) If (WTSB ()) { Release (\P4SM) Return (One) } Else { Decrement (Local0) } } } Release (\P4SM) Return (Ones) } Method (WBYT, 3, Serialized) { If (LNot (LEqual (Acquire (\P4SM, 0xFFFF), 0x00))) { Return (Ones) } Store (0x05, Local0) While (Local0) { If (HBSY ()) { Decrement (Local0) } Else { Store (Arg0, HADR) Store (Arg1, HCMD) Store (Arg2, HDT0) Store (0xFF, HSTS) Store (0x48, HSTC) If (WTSB ()) { Release (\P4SM) Return (One) } Else { Decrement (Local0) } } } Release (\P4SM) Return (Ones) } Method (WWRD, 4, Serialized) { If (LNot (LEqual (Acquire (\P4SM, 0xFFFF), 0x00))) { Return (Ones) } Store (0x05, Local0) While (Local0) { If (HBSY ()) { Decrement (Local0) } Else { Store (Arg0, HADR) Store (Arg1, HCMD) And (Arg2, 0xFF, Local1) ShiftRight (Arg2, 0x08, Local2) And (Local2, 0xFF, Local2) Store (Local2, HDT0) Store (Local1, HDT1) Store (0xFF, HSTS) Store (0x4C, HSTC) If (WTSB ()) { Release (\P4SM) Return (One) } Else { Decrement (Local0) } } } Release (\P4SM) Return (Ones) } Method (WBLK, 4, Serialized) { If (LNot (LEqual (Acquire (\P4SM, 0xFFFF), 0x00))) { Return (Ones) } Store (0x05, Local0) While (Local0) { If (HBSY ()) { Decrement (Local0) } Else { Store (Arg0, HADR) Store (Arg1, HCMD) Store (HSTC, Local1) Store (Arg2, Local2) Store (0x00, Local1) While (Local2) { Store (DerefOf (Index (Arg3, Local1)), BLKD) Decrement (Local2) Increment (Local1) } Store (Arg2, HDT0) Store (HSTC, Local1) Store (0xFF, HSTS) Store (0x54, HSTC) If (WTSB ()) { Release (\P4SM) Return (One) } Else { Decrement (Local0) } } } Release (\P4SM) Return (Ones) } Method (RSBT, 2, Serialized) { If (LNot (LEqual (Acquire (\P4SM, 0xFFFF), 0x00))) { Return (Ones) } Store (0x05, Local0) While (Local0) { If (HBSY ()) { Decrement (Local0) } Else { Or (Arg0, 0x01, HADR) Store (Arg1, HCMD) Store (0xFF, HSTS) Store (0x44, HSTC) If (WTSB ()) { Release (\P4SM) Return (HDT0) } Else { Decrement (Local0) } } } Release (\P4SM) Return (Ones) } Method (RBYT, 2, Serialized) { If (LNot (LEqual (Acquire (\P4SM, 0xFFFF), 0x00))) { Return (Ones) } Store (0x05, Local0) While (Local0) { If (HBSY ()) { Decrement (Local0) } Else { Or (Arg0, 0x01, HADR) Store (Arg1, HCMD) Store (0xFF, HSTS) Store (0x48, HSTC) If (WTSB ()) { Release (\P4SM) Return (HDT0) } Else { Decrement (Local0) } } } Release (\P4SM) Return (Ones) } Method (RWRD, 2, Serialized) { If (LNot (LEqual (Acquire (\P4SM, 0xFFFF), 0x00))) { Return (Ones) } Store (0x05, Local0) While (Local0) { If (HBSY ()) { Decrement (Local0) } Else { Or (Arg0, 0x01, HADR) Store (Arg1, HCMD) Store (0xFF, HSTS) Store (0x4C, HSTC) If (WTSB ()) { Store (HDT0, Local1) ShiftLeft (Local1, 0x08, Local1) Store (HDT1, Local2) Add (Local1, Local2, Local1) Release (\P4SM) Return (Local1) } Else { Decrement (Local0) } } } Release (\P4SM) Return (Ones) } Method (RBLK, 3, Serialized) { If (LNot (LEqual (Acquire (\P4SM, 0xFFFF), 0x00))) { Return (Ones) } Store (0x05, Local0) While (Local0) { If (HBSY ()) { Decrement (Local0) } Else { Or (Arg0, 0x01, HADR) Store (Arg1, HCMD) Store (0xFF, HSTS) Store (0x54, HSTC) If (WTSB ()) { Store (HSTC, Local1) Store (HDT0, Local2) Store (Local2, Local3) Store (0x00, RBUF) Store (0x00, Local1) While (Local2) { Store (BLKD, Index (RBUF, Local1)) Decrement (Local2) Increment (Local1) } Release (\P4SM) Return (Local3) } Else { Decrement (Local0) } } } Release (\P4SM) Return (Ones) } } Scope (\) { Name (FAN1, 0x00) Name (FAN2, 0x00) Device (FN00) { Name (_HID, EisaId ("PNP0C0B")) Name (_PR0, Package (0x01) { GFAN }) } PowerResource (GFAN, 0x00, 0x0000) { Method (_STA, 0, NotSerialized) { Return (FAN1) } Method (_ON, 0, NotSerialized) { Store (0x01, FAN1) } Method (_OFF, 0, NotSerialized) { Store (0x00, FAN1) } } Name (\_SB.PCI0.SBRG._PR0, Package (0x01) { GFAN }) Method (FANW, 1, NotSerialized) { Noop } Method (FANS, 1, NotSerialized) { If (Arg0) { \GFAN._OFF () } } } Scope (\) { Name (TSP, 0x0A) Name (TC1, 0x02) Name (TC2, 0x0A) } Scope (\_TZ) { Method (KELV, 1, NotSerialized) { And (Arg0, 0xFF, Local0) Multiply (Local0, 0x0A, Local0) Add (Local0, 0x0AAC, Local0) Return (Local0) } Name (PLCY, 0x00) ThermalZone (THRM) { Method (_CRT, 0, NotSerialized) { Return (KELV (TCRT)) } Method (_TMP, 0, NotSerialized) { Store (0x05, Local1) While (Local1) { Store (RTMP (), Local0) If (LGreater (Local0, TCRT)) { Decrement (Local1) } Else { Store (0x00, Local1) } } Return (KELV (Local0)) } Name (_PSL, Package (0x01) { \_PR.CPU1 }) Method (_TSP, 0, NotSerialized) { Multiply (TSP, 0x0A, Local0) Return (Local0) } Method (_TC1, 0, NotSerialized) { Return (TC1) } Method (_TC2, 0, NotSerialized) { Return (TC2) } Method (_PSV, 0, NotSerialized) { If (PLCY) { Subtract (TPSV, 0x0A, Local0) Return (KELV (Local0)) } Else { Return (KELV (TPSV)) } } Name (_AL0, Package (0x01) { FN00 }) Method (_AC0, 0, NotSerialized) { If (PLCY) { Return (KELV (TPSV)) } Else { Return (KELV (TAC3)) } } Method (_SCP, 1, NotSerialized) { Store (Arg0, PLCY) TCHG () Notify (THRM, 0x81) } } Method (TRMS, 1, NotSerialized) { If (Arg0) { \_TZ.TMSS (Arg0) } } Method (TRMW, 1, NotSerialized) { If (Arg0) { If (LLess (Arg0, 0x04)) { \_TZ.TMSW (Arg0) \_TZ.TCHG () } } } } Scope (\_GPE) { Method (_L00, 0, Serialized) { \_TZ.TCHG () Notify (\_TZ.THRM, 0x80) } } Scope (\_TZ) { Name (LTMP, 0x3C) Name (HLMT, 0x46) Name (LLMT, 0x32) Name (ELMT, 0x02) Method (TMSW, 1, NotSerialized) { If (Arg0) { If (LLess (Arg0, 0x04)) { WBYT (TSAD, 0x5C, 0xE2) WBYT (TSAD, 0x5D, 0xE2) WBYT (TSAD, 0x5E, 0xE2) WBYT (TSAD, 0x67, 0x32) WBYT (TSAD, 0x5F, 0xAC) WBYT (TSAD, 0x64, 0x40) WBYT (TSAD, 0x65, 0x40) WBYT (TSAD, 0x66, 0x40) WBYT (TSAD, 0x55, 0xBF) WBYT (TSAD, 0x73, 0x10) WBYT (TSAD, 0x78, 0x83) WBYT (TSAD, 0x7D, 0x03) WBYT (TSAD, 0x7A, 0x40) WBYT (TSAD, 0x74, 0xEF) WBYT (TSAD, 0x75, 0xDF) RBYT (TSAD, 0x79) RBYT (TSAD, 0x41) RBYT (TSAD, 0x42) WBYT (TSAD, 0x40, 0x01) } } } Method (TMSS, 1, NotSerialized) { If (Arg0) { If (LNot (LGreater (Arg0, 0x03))) { WBYT (TSAD, 0x4F, 0x7F) WBYT (TSAD, 0x4E, 0x81) RBYT (TSAD, 0x41) RBYT (TSAD, 0x42) } } } Name (PPLY, 0x00) Name (FANV, 0x00) Method (TCHG, 0, NotSerialized) { RTMP () Store (RBYT (TSAD, 0x30), FANV) If (LNot (LLess (LTMP, 0x80))) { Store (0x00, LTMP) } If (LGreater (LTMP, TCRT)) { Store (0x7F, HLMT) Store (TCRT, LLMT) } Else { If (LGreater (LTMP, TPSV)) { Store (TCRT, HLMT) Store (TPSV, LLMT) } Else { If (LEqual (LLMT, 0x55)) { If (LNot (LGreater (LTMP, 0x55))) { Store (0x5A, HLMT) Store (0x46, LLMT) Store (0xE6, FANV) } Else { If (LGreater (LTMP, TPSV)) { Store (TCRT, HLMT) Store (TPSV, LLMT) Store (0xFF, FANV) } Else { Store (TPSV, HLMT) Store (0x55, LLMT) Store (0xFF, FANV) } } } Else { If (LEqual (LLMT, 0x46)) { If (LNot (LGreater (LTMP, 0x46))) { Store (0x4B, HLMT) Store (0x32, LLMT) Store (0x99, FANV) } Else { If (LGreater (LTMP, 0x5A)) { Store (TPSV, HLMT) Store (0x55, LLMT) Store (0xFF, FANV) } Else { Store (0x5A, HLMT) Store (0x46, LLMT) Store (0xE6, FANV) } } } Else { If (LEqual (LLMT, 0x32)) { If (LNot (LGreater (LTMP, 0x32))) { Store (0x37, HLMT) Store (0x28, LLMT) Store (0x7F, FANV) } Else { If (LGreater (LTMP, 0x4B)) { Store (0x5A, HLMT) Store (0x46, LLMT) Store (0xE6, FANV) } Else { Store (0x4B, HLMT) Store (0x32, LLMT) Store (0x99, FANV) } } } Else { If (LEqual (LLMT, 0x28)) { If (LNot (LGreater (LTMP, 0x28))) { Store (0x2D, HLMT) Store (0x00, LLMT) Store (0x00, FANV) } Else { If (LGreater (LTMP, 0x37)) { Store (0x4B, HLMT) Store (0x32, LLMT) Store (0x99, FANV) } Else { Store (0x37, HLMT) Store (0x28, LLMT) Store (0x7F, FANV) } } } Else { If (LGreater (LTMP, 0x2D)) { Store (0x37, HLMT) Store (0x28, LLMT) Store (0x7F, FANV) } Else { Store (0x2D, HLMT) Store (0x00, LLMT) Store (0x00, FANV) } } } } } } } WBYT (TSAD, 0x4F, HLMT) WBYT (TSAD, 0x4E, LLMT) WBYT (TSAD, 0x30, FANV) RBYT (TSAD, 0x41) RBYT (TSAD, 0x42) } Method (RTMP, 0, NotSerialized) { Store (RBYT (TSAD, 0x25), Local0) If (Not (Local0)) { Store (Local0, LTMP) } Return (LTMP) } Method (RFAN, 0, NotSerialized) { Store (RBYT (TSAD, 0x28), Local0) Store (RBYT (TSAD, 0x29), Local1) ShiftLeft (Local1, 0x08, Local1) Add (Local1, Local0, Local0) If (LEqual (Local0, 0xFFFF)) { Return (0x00) } Else { If (LNot (LGreater (Local0, 0xC8))) { Return (0xFE) } } Store (0x005265C0, Local2) Divide (Local2, Local0, Local3, Local4) Divide (Local4, 0x64, Local3, Local4) Return (Local4) } } Scope (\_SB.PCI0.P0P2) { Device (VGA) { Name (_ADR, 0x00) Name (NXTD, 0x01) Name (LCDM, 0x01) Name (CRTM, 0x02) Name (TVOM, 0x04) Name (DONE, One) Name (DOSF, One) Method (_INI, 0, NotSerialized) { Store (GETD (), NXTD) } Method (_DOS, 1, NotSerialized) { Store (Arg0, DOSF) } Method (_DOD, 0, NotSerialized) { Return (Package (0x03) { 0x00010100, 0x00010110, 0x0200 }) } Device (CRTD) { Name (_ADR, 0x0100) Method (_DCS, 0, NotSerialized) { Store (\AVLD, Local0) If (Local0) { If (And (Local0, CRTM)) { Return (0x1F) } } Return (0x1D) } Method (_DGS, 0, NotSerialized) { And (NXTD, CRTM, Local0) If (Local0) { Return (0x01) } Return (0x00) } Method (_DSS, 1, NotSerialized) { If (And (Arg0, 0x40000000)) { If (And (Arg0, 0x80000000)) { Store (One, DONE) } } } } Device (TVOD) { Name (_ADR, 0x0200) Method (_DCS, 0, NotSerialized) { Store (\AVLD, Local0) If (Local0) { If (And (Local0, TVOM)) { Return (0x1F) } } Return (0x1D) } Method (_DGS, 0, NotSerialized) { And (NXTD, TVOM, Local0) If (Local0) { Return (0x01) } Return (0x00) } Method (_DSS, 1, NotSerialized) { If (And (Arg0, 0x40000000)) { If (And (Arg0, 0x80000000)) { Store (One, DONE) } } } } Device (LCDD) { Name (_ADR, 0x0110) Method (_DCS, 0, NotSerialized) { Store (\AVLD, Local0) If (Local0) { If (And (Local0, LCDM)) { Return (0x1F) } } Return (0x1D) } Method (_DGS, 0, NotSerialized) { And (NXTD, LCDM, Local0) If (Local0) { Return (0x01) } Return (0x00) } Method (_DSS, 1, NotSerialized) { If (And (Arg0, 0x40000000)) { If (And (Arg0, 0x80000000)) { Store (One, DONE) } } } } Method (SWHD, 1, Serialized) { If (\_SB.PCI0.P0P2.VGA.DOSF) { Store (Arg0, \SETD) ISMI (\STDD) } Else { Notify (\_SB.PCI0.P0P2.VGA, 0x80) } } Method (GETD, 0, NotSerialized) { ISMI (\GTDD) Return (\ACTD) } Method (ADVD, 0, NotSerialized) { If (DONE) { Store (GETD (), NXTD) } Store (Zero, DONE) Store (Zero, Local0) ISMI (\GTDD) While (LNot (LEqual (NXTD, Local0))) { Increment (NXTD) If (LGreater (NXTD, 0x07)) { Store (One, NXTD) } And (NXTD, \AVLD, Local0) } Return (NXTD) } } } Scope (\) { Method (ADVG, 0, NotSerialized) { Return (\_SB.PCI0.P0P2.VGA.ADVD ()) } Method (SWHG, 1, Serialized) { \_SB.PCI0.P0P2.VGA.SWHD (Arg0) } Method (NATK, 0, NotSerialized) { Return (One) } } Scope (\_SB) { Name (ATKP, Zero) Device (ATKD) { Name (_HID, "ATK0100") Name (_UID, 0x01010100) Method (INIT, 1, NotSerialized) { Store (One, ATKP) Return (\MNAM) } Method (BSTS, 0, NotSerialized) { Store (\IKFG, Local0) If (\_SB.PCI0.SBRG.EC0.ACAP ()) { And (Local0, 0x7F, Local0) } Return (Local0) } Method (GPID, 0, NotSerialized) { ISMI (GTID) Return (\PIDR) } Method (MLED, 1, NotSerialized) { If (Arg0) { Store (0x51, Local0) } Else { Store (0x31, Local0) } \_SB.PCI0.SBRG.EC0.STC5 (Local0) } Method (TMPR, 0, NotSerialized) { Store (\_TZ.RTMP (), Local0) Store (\_TZ.RFAN (), Local1) ShiftLeft (Local1, 0x10, Local1) Add (\_TZ.KELV (Local0), Local1, Local0) Store (Zero, Local2) If (\TENA) { Store (\TDTY, Local2) } Else { If (\THLS) { Store (\TTDT, Local2) } } ShiftLeft (Local2, 0x18, Local2) Add (Local0, Local2, Local0) Return (Local0) } Method (SFUN, 0, NotSerialized) { Store (0x37, Local0) Or (Local0, 0x0240, Local0) If (LEqual (\_SB.PCI0.P0P2.MPCI.MPDP (), 0x01)) { Or (Local0, 0x0100, Local0) } If (LGreater (\_SB.PCI0.P0P2.MPCI.MPDP (), 0x01)) { Or (Local0, 0x0800, Local0) } Return (Local0) } Name (FMST, Package (0x04) { Package (0x04) { Package (0x05) { Package (0x02) { 0x55, 0x02 }, Package (0x02) { 0x64, 0x04 }, Package (0x02) { 0x69, 0x05 }, Package (0x02) { 0x6E, 0x06 }, Package (0x02) { 0x73, 0x07 } }, Package (0x05) { Package (0x02) { 0x71, 0x02 }, Package (0x02) { 0x85, 0x04 }, Package (0x02) { 0x8C, 0x05 }, Package (0x02) { 0x93, 0x06 }, Package (0x02) { 0x99, 0x07 } }, Package (0x05) { Package (0x02) { 0x8D, 0x02 }, Package (0x02) { 0xA6, 0x04 }, Package (0x02) { 0xAF, 0x05 }, Package (0x02) { 0xB7, 0x06 }, Package (0x02) { 0xBF, 0x07 } }, Package (0x05) { Package (0x02) { 0xAA, 0x02 }, Package (0x02) { 0xC8, 0x04 }, Package (0x02) { 0xD2, 0x05 }, Package (0x02) { 0xDC, 0x06 }, Package (0x02) { 0xE6, 0x07 } } }, Package (0x04) { Package (0x05) { Package (0x02) { 0x5A, 0x03 }, Package (0x02) { 0x64, 0x04 }, Package (0x02) { 0x6E, 0x05 }, Package (0x02) { 0x78, 0x06 }, Package (0x02) { 0x82, 0x07 } }, Package (0x05) { Package (0x02) { 0x78, 0x03 }, Package (0x02) { 0x85, 0x04 }, Package (0x02) { 0x93, 0x05 }, Package (0x02) { 0xA0, 0x06 }, Package (0x02) { 0xAD, 0x07 } }, Package (0x05) { Package (0x02) { 0x96, 0x03 }, Package (0x02) { 0xA6, 0x04 }, Package (0x02) { 0xB7, 0x05 }, Package (0x02) { 0xC7, 0x06 }, Package (0x02) { 0xD9, 0x07 } }, Package (0x05) { Package (0x02) { 0xB4, 0x03 }, Package (0x02) { 0xC8, 0x04 }, Package (0x02) { 0xDC, 0x05 }, Package (0x02) { 0xF0, 0x05 }, Package (0x02) { 0x0104, 0x07 } } }, Package (0x04) { Package (0x05) { Package (0x02) { 0x5A, 0x00 }, Package (0x02) { 0x64, 0x01 }, Package (0x02) { 0x69, 0x02 }, Package (0x02) { 0x6E, 0x03 }, Package (0x02) { 0x73, 0x04 } }, Package (0x05) { Package (0x02) { 0x78, 0x00 }, Package (0x02) { 0x85, 0x01 }, Package (0x02) { 0x8C, 0x02 }, Package (0x02) { 0x93, 0x03 }, Package (0x02) { 0x99, 0x04 } }, Package (0x05) { Package (0x02) { 0x96, 0x00 }, Package (0x02) { 0xA6, 0x01 }, Package (0x02) { 0xAF, 0x02 }, Package (0x02) { 0xB7, 0x03 }, Package (0x02) { 0xBF, 0x04 } }, Package (0x05) { Package (0x02) { 0xB4, 0x00 }, Package (0x02) { 0xC8, 0x01 }, Package (0x02) { 0xD2, 0x02 }, Package (0x02) { 0xDC, 0x03 }, Package (0x02) { 0xE6, 0x04 } } }, Package (0x04) { Package (0x05) { Package (0x02) { 0x5A, 0x02 }, Package (0x02) { 0x64, 0x04 }, Package (0x02) { 0x78, 0x05 }, Package (0x02) { 0x7D, 0x06 }, Package (0x02) { 0x82, 0x07 } }, Package (0x05) { Package (0x02) { 0x78, 0x02 }, Package (0x02) { 0x85, 0x04 }, Package (0x02) { 0xA0, 0x05 }, Package (0x02) { 0xA7, 0x06 }, Package (0x02) { 0xAD, 0x07 } }, Package (0x05) { Package (0x02) { 0x96, 0x02 }, Package (0x02) { 0xA6, 0x04 }, Package (0x02) { 0xC8, 0x05 }, Package (0x02) { 0xD0, 0x06 }, Package (0x02) { 0xD9, 0x07 } }, Package (0x05) { Package (0x02) { 0xB4, 0x02 }, Package (0x02) { 0xC8, 0x04 }, Package (0x02) { 0xF0, 0x05 }, Package (0x02) { 0xFA, 0x06 }, Package (0x02) { 0x0104, 0x07 } } } }) Method (GFRQ, 1, NotSerialized) { If (LEqual (\OVCK, 0x00)) { If (LNot (LEqual (Arg0, 0x01))) { Return (0x00) } } Store (DerefOf (Index (FMST, \FS56)), Local0) Store (DerefOf (Index (Local0, \CPUF)), Local1) Store (Arg0, Local5) If (LEqual (Local5, 0x02)) { If (\OVCK) { Subtract (\OVCK, 0x01, Local6) Add (Local5, Local6, Local5) } } Store (DerefOf (Index (Local1, Local5)), Local2) Store (DerefOf (Index (Local2, 0x00)), Local3) Multiply (Local3, \CPUR, Local4) Return (Local4) } Method (SFRQ, 1, NotSerialized) { Store (DerefOf (Index (FMST, \FS56)), Local0) Store (DerefOf (Index (Local0, \CPUF)), Local1) Store (Arg0, Local5) If (LEqual (Local5, 0x02)) { If (\OVCK) { Subtract (\OVCK, 0x01, Local6) Add (Local5, Local6, Local5) } } Store (DerefOf (Index (Local1, Local5)), Local2) Store (DerefOf (Index (Local2, 0x01)), Local3) Store (Local3, \FS02) Return (One) } Method (WDEV, 0, NotSerialized) { Return (\_SB.PCI0.P0P2.MPCI.MPDP ()) } Method (OSVR, 1, NotSerialized) { Store (Arg0, \OSFG) } Method (GPLV, 0, NotSerialized) { Return (\LBTN) } Method (SPLV, 1, NotSerialized) { Store (Arg0, \LBTN) \_SB.PCI0.SBRG.EC0.STBR () } Method (WLED, 1, NotSerialized) { If (Arg0) { Store (One, \WLAN) If (LEqual (\_SB.PCI0.P0P2.MPCI.MPDP (), 0x00)) { Store (Zero, \WLAN) } } Else { Store (Zero, \WLAN) } } Method (SDSP, 1, NotSerialized) { If (\NATK ()) { \SWHG (Arg0) } } Method (SLCM, 1, NotSerialized) { And (Arg0, 0xFF000000, Local0) ShiftRight (Local0, 0x18, Local0) If (LEDD) { Return (0x01) } And (Arg0, 0x0F, Local6) And (Arg0, 0xF0, Local5) And (Arg0, 0x0F00, Local4) ShiftRight (Local5, 0x04, Local5) ShiftRight (Local4, 0x08, Local4) If (LEqual (Local4, 0x0B)) { Store (0x0F, Local4) } If (LEqual (Local5, 0x0B)) { Store (0x0F, Local5) } If (LEqual (Local6, 0x0B)) { Store (0x0F, Local6) } ShiftLeft (Local5, 0x04, Local5) Add (Local5, Local6, Local5) WBYT (0x92, 0x01, Local5) WBYT (0x92, 0x01, Local5) WBYT (0x92, 0x01, Local5) WBYT (0x92, 0x02, Local4) WBYT (0x92, 0x02, Local4) WBYT (0x92, 0x02, Local4) If (LEqual (Local0, 0x01)) { WBYT (0x92, 0x00, 0x03) WBYT (0x92, 0x00, 0x03) WBYT (0x92, 0x00, 0x03) Return (0x01) } Else { If (LEqual (Local0, 0x02)) { WBYT (0x92, 0x00, 0x05) WBYT (0x92, 0x00, 0x05) WBYT (0x92, 0x00, 0x05) Return (0x01) } Else { If (LEqual (Local0, 0x03)) { WBYT (0x92, 0x00, 0x01) WBYT (0x92, 0x00, 0x01) WBYT (0x92, 0x00, 0x01) Return (0x01) } Else { If (LEqual (Local0, 0x04)) { WBYT (0x92, 0x00, 0x02) WBYT (0x92, 0x00, 0x02) WBYT (0x92, 0x00, 0x02) Return (0x01) } Else { If (LEqual (Local0, 0x05)) { WBYT (0x92, 0x00, 0x04) WBYT (0x92, 0x00, 0x04) WBYT (0x92, 0x00, 0x04) Return (0x01) } Else { If (LEqual (Local0, 0x06)) { WBYT (0x92, 0x00, 0x06) WBYT (0x92, 0x00, 0x06) WBYT (0x92, 0x00, 0x06) Return (0x01) } Else { If (LEqual (Local0, 0x07)) { WBYT (0x92, 0x00, 0x08) WBYT (0x92, 0x00, 0x08) WBYT (0x92, 0x00, 0x08) Return (0x01) } Else { If (LEqual (Local0, 0x00)) { WBYT (0x92, 0x00, 0x00) WBYT (0x92, 0x00, 0x00) WBYT (0x92, 0x00, 0x00) WBYT (0x92, 0x01, 0xFF) WBYT (0x92, 0x01, 0xFF) WBYT (0x92, 0x01, 0xFF) WBYT (0x92, 0x02, 0x0F) WBYT (0x92, 0x02, 0x0F) WBYT (0x92, 0x02, 0x0F) Return (0x01) } Else { Return (0x00) } } } } } } } } } Method (SMRB, 2, Serialized) { RBYT (Arg0, Arg1) } } } Scope (\) { Name (PMEW, Zero) Name (MES4, Zero) Method (OEMS, 1, NotSerialized) { If (LEqual (Arg0, 0x03)) { If (LNot (LGreater (\OSFG, \OSME))) { Store (One, \WIDE) } Else { Store (Zero, \WIDE) } } \_SB.PCI0.USB1.USBS (Arg0) \_SB.PCI0.USB2.USBS (Arg0) \_SB.PCI0.USB3.USBS (Arg0) \_SB.PCI0.SBRG.EC0.EC0S (Arg0) If (LEqual (Arg0, 0x04)) { If (LEqual (OSFG, OS2K)) { Store (Arg0, S42K) } } Store (Zero, \CBSP) If (LEqual (Arg0, 0x03)) { Store (Zero, \BKLT) Store (Zero, \OPSD) } Store (0x01, SMWS) Add (Arg0, 0xD0, DBG8) } Method (OEMW, 1, NotSerialized) { Store (One, \CBSP) If (LEqual (Arg0, 0x04)) { If (LNot (LGreater (\OSFG, \OSME))) { Store (0x02, MES4) } Else { Store (Zero, MES4) } } \_SB.PCI0.P0P2.CBS0.CBSW (Arg0) Store (\SBPS, \PMEW) \_SB.PCI0.USB1.USBW (Arg0) \_SB.PCI0.USB2.USBW (Arg0) \_SB.PCI0.USB3.USBW (Arg0) \_SB.PCI0.SBRG.EC0.EC0W (Arg0) If (LEqual (Arg0, 0x04)) { Notify (\_SB.SLPB, 0x02) } Store (One, \BKLT) If (LEqual (Arg0, 0x03)) { Store (One, \OPSD) } Add (Arg0, 0xF0, DBG8) } } Scope (\_GPE) { Method (_L03, 0, Serialized) { Notify (\_SB.PCI0.USB1, 0x02) Notify (\_SB.SLPB, 0x02) } Method (_L04, 0, Serialized) { Notify (\_SB.PCI0.USB2, 0x02) Notify (\_SB.SLPB, 0x02) } Method (_L0C, 0, Serialized) { Notify (\_SB.PCI0.USB3, 0x02) Notify (\_SB.SLPB, 0x02) } Method (_L0D, 0, Serialized) { Notify (\_SB.PCI0.EHCI, 0x02) Notify (\_SB.SLPB, 0x02) } Method (_L05, 0, Serialized) { Notify (\_SB.PCI0.MODM, 0x02) Notify (\_SB.SLPB, 0x02) } Method (_L0B, 0, Serialized) { If (\PMEW) { Notify (\_SB.PCI0.P0P2, 0x02) Notify (\_SB.SLPB, 0x02) Store (Zero, \PMEW) } Else { If (\_SB.PCI0.P0P2.CBS0.CBSR ()) { Notify (\_SB.PCI0.P0P2.CBS0, 0x02) } } } } Scope (\_SB.ATKD) { Method (FSMI, 1, NotSerialized) { Store (Arg0, \FSFN) Or (Arg0, 0xA0, Local0) Store (Local0, \DBG8) ISMI (\WFAT) Return (\FSTA) } Method (FLSH, 1, NotSerialized) { Store (Arg0, \FSTA) FSMI (0x00) } Method (FINI, 1, NotSerialized) { Store (Arg0, \FADR) Return (FSMI (0x01)) } Method (FERS, 1, NotSerialized) { Store (Arg0, \FSTA) Return (FSMI (0x02)) } Method (FWRI, 1, NotSerialized) { Store (Arg0, \FADR) Store (0x1000, \FSIZ) Return (Subtract (0x1000, FSMI (0x03))) } Method (FWRP, 0, NotSerialized) { Store (0x00, \FSIZ) Return (Subtract (0x1000, FSMI (0x03))) } } Device (UAR2) { Name (_UID, 0x02) Method (_HID, 0, NotSerialized) { Return (UHID (0x01)) } Method (_STA, 0, NotSerialized) { Return (DSTA (0x01)) } Method (_DIS, 0, NotSerialized) { If (LGreater (\OSFG, \OSME)) { 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} 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 () }) } Device (CIRP) { Name (_HID, EisaId ("ITE8704")) Name (_UID, 0x03) Method (_STA, 0, NotSerialized) { Return (DSTA (0x0F)) } Method (_DIS, 0, NotSerialized) { DCNT (0x0F, 0x00) } Method (_CRS, 0, NotSerialized) { Return (DCRS (0x0F)) } Method (_SRS, 1, NotSerialized) { DSRS (Arg0, 0x0F) } 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 () }) } } Device (IDE0) { Name (_ADR, 0x001F0001) Name (REGF, 0x01) Method (_REG, 2, NotSerialized) { If (LEqual (Arg0, 0x02)) { Store (Arg1, REGF) } } OperationRegion (BAR0, PCI_Config, 0x00, 0x0100) Field (BAR0, DWordAcc, NoLock, Preserve) { Offset (0x40), TIMP, 16, TIMS, 16, STMP, 4, STMS, 4, Offset (0x48), UDMP, 2, UDMS, 2, Offset (0x4A), UDTP, 6, Offset (0x4B), UDTS, 6, Offset (0x54), PCB0, 2, SCB0, 2, PCA0, 2, SCA0, 2, , 4, FPB0, 2, FSB0, 2, PSIG, 2, SSIG, 2 } Name (TIM0, Package (0x09) { Package (0x04) { 0x78, 0xB4, 0xF0, 0x0384 }, Package (0x04) { 0x23, 0x21, 0x10, 0x00 }, Package (0x04) { 0x0B, 0x09, 0x04, 0x00 }, Package (0x06) { 0x70, 0x49, 0x36, 0x27, 0x19, 0x0F }, Package (0x06) { 0x00, 0x01, 0x02, 0x01, 0x02, 0x01 }, Package (0x06) { 0x00, 0x00, 0x00, 0x01, 0x01, 0x01 }, Package (0x06) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x01 }, Package (0x04) { 0x04, 0x03, 0x02, 0x00 }, Package (0x04) { 0x02, 0x01, 0x00, 0x00 } }) Name (TMD0, Buffer (0x14) {}) CreateDWordField (TMD0, 0x00, PIO0) CreateDWordField (TMD0, 0x04, DMA0) CreateDWordField (TMD0, 0x08, PIO1) CreateDWordField (TMD0, 0x0C, DMA1) CreateDWordField (TMD0, 0x10, CHNF) Name (GTIM, 0x00) Name (GSTM, 0x00) Name (GUDM, 0x00) Name (GUDT, 0x00) Name (GCB0, 0x00) Name (GFB0, 0x00) Device (CHN0) { Name (_ADR, 0x00) Method (_GTM, 0, NotSerialized) { Return (GTM (TIMP, STMP, UDMP, UDTP, PCB0, FPB0)) } Method (_STM, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg0, TMD0) Store (TIMP, GTIM) Store (UDTP, GUDT) If (STM ()) { Store (GTIM, TIMP) Store (GSTM, STMP) Store (GUDM, UDMP) Store (GUDT, UDTP) Store (GCB0, PCB0) Store (GFB0, FPB0) } Store (GTF (0x00, Arg1), ATA0) Store (GTF (0x01, Arg2), ATA1) } Device (DRV0) { Name (_ADR, 0x00) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA0)) } } Device (DRV1) { Name (_ADR, 0x01) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA1)) } } } Device (CHN1) { Name (_ADR, 0x01) Method (_GTM, 0, NotSerialized) { Return (GTM (TIMS, STMS, UDMS, UDTS, SCB0, FSB0)) } Method (_STM, 3, NotSerialized) { Store (Arg0, Debug) Store (Arg0, TMD0) Store (TIMS, GTIM) Store (UDTS, GUDT) If (STM ()) { Store (GTIM, TIMS) Store (GSTM, STMS) Store (GUDM, UDMS) Store (GUDT, UDTS) Store (GCB0, SCB0) Store (GFB0, FSB0) } Store (GTF (0x00, Arg1), ATA2) Store (GTF (0x01, Arg2), ATA3) } Device (DRV0) { Name (_ADR, 0x00) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA2)) } } Device (DRV1) { Name (_ADR, 0x01) Method (_GTF, 0, NotSerialized) { Return (RATA (ATA3)) } } } Method (GTM, 6, Serialized) { Store (Ones, PIO0) Store (PIO0, PIO1) Store (PIO0, DMA0) Store (PIO0, DMA1) Store (Zero, CHNF) If (REGF) {} Else { Return (TMD0) } If (And (Arg0, 0x02)) { Or (CHNF, 0x02, CHNF) } ShiftRight (And (Arg0, 0x3300), 0x08, Local5) Store (Match (DerefOf (Index (TIM0, 0x01)), MLE, Local5, MTR, 0x00, 0x00), Local6) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x00)), Local6)), Local7) Store (Local7, DMA0) If (And (Arg0, 0x08)) { Store (0x0384, PIO0) } Else { Store (Local7, PIO0) } If (And (Arg0, 0x20)) { Or (CHNF, 0x08, CHNF) } If (And (Arg0, 0x4000)) { Or (CHNF, 0x10, CHNF) Store (Match (DerefOf (Index (TIM0, 0x02)), MLE, Arg1, MTR, 0x00, 0x00), Local5) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x00)), Local5)), Local6) Store (Local6, DMA1) If (And (Arg0, 0x80)) { Store (0x0384, PIO1) } Else { Store (Local6, PIO1) } } If (And (Arg2, 0x01)) { And (Arg3, 0x03, Local5) If (LAnd (And (Arg5, 0x01), LEqual (Local5, 0x01))) { Add (Local5, 0x04, Local5) } Else { If (And (Arg4, 0x01)) { Add (Local5, 0x02, Local5) } } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)), DMA0) Or (CHNF, 0x01, CHNF) } If (And (Arg2, 0x02)) { And (ShiftRight (Arg3, 0x04), 0x03, Local5) If (LAnd (And (Arg5, 0x02), LEqual (Local5, 0x01))) { Add (Local5, 0x04, Local5) } Else { If (And (Arg4, 0x02)) { Add (Local5, 0x02, Local5) } } Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)), DMA1) Or (CHNF, 0x04, CHNF) } Store (TMD0, Debug) Return (TMD0) } Method (STM, 0, Serialized) { If (REGF) {} Else { Return (0x00) } And (GTIM, 0x8044, GTIM) Store (0x00, GSTM) Store (0x00, GUDM) Store (0x00, GCB0) And (GUDT, 0xCC, GUDT) Store (0x00, GFB0) If (And (CHNF, 0x01)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA0, MTR, 0x00, 0x00), Local0) If (LGreater (Local0, 0x05)) { Store (0x05, Local0) } Or (GUDT, DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), GUDT) Or (GCB0, DerefOf (Index (DerefOf (Index (TIM0, 0x05)), Local0)), GCB0) Or (GFB0, DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0)), GFB0) Or (GUDM, 0x01, GUDM) } Else { If (Or (LEqual (PIO0, Ones), LEqual (PIO0, 0x00))) { If (And (LLess (DMA0, Ones), LGreater (DMA0, 0x00))) { Store (DMA0, PIO0) Or (GTIM, 0x08, GTIM) } } } If (And (CHNF, 0x04)) { Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA1, MTR, 0x00, 0x00), Local0) If (LGreater (Local0, 0x05)) { Store (0x05, Local0) } Or (GUDT, ShiftLeft (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), 0x04), GUDT) Or (GCB0, ShiftLeft (DerefOf (Index (DerefOf (Index (TIM0, 0x05)), Local0)), 0x01), GCB0) Or (GFB0, ShiftLeft (DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0)), 0x01), GFB0) Or (GUDM, 0x02, GUDM) } Else { If (Or (LEqual (PIO1, Ones), LEqual (PIO1, 0x00))) { If (And (LLess (DMA1, Ones), LGreater (DMA1, 0x00))) { Store (DMA1, PIO1) Or (GTIM, 0x80, GTIM) } } } If (And (CHNF, 0x02)) { Or (GTIM, 0x03, GTIM) } If (And (CHNF, 0x08)) { Or (GTIM, 0x30, GTIM) } And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIO0, MTR, 0x00, 0x00), 0x03, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x01)), Local0)), Local1) ShiftLeft (Local1, 0x08, Local2) Or (GTIM, Local2, GTIM) If (And (CHNF, 0x10)) { Or (GTIM, 0x4000, GTIM) And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIO1, MTR, 0x00, 0x00), 0x03, Local0) Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local0)), GSTM) } Return (0x01) } 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 (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, 0x03)), MLE, DMAT, MTR, 0x00, 0x00), Local1) If (LGreater (Local1, 0x05)) { Store (0x05, Local1) } GTFB (AT01, Or (0x40, Local1), Local7) } Else { If (LAnd (And (ID63, 0xFF00), PIOT)) { And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIOT, MTR, 0x00, 0x00), 0x03, Local0) Or (0x20, DerefOf (Index (DerefOf (Index (TIM0, 0x08)), Local0)), Local1) GTFB (AT01, Local1, Local7) } } If (IRDY) { And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIOT, MTR, 0x00, 0x00), 0x03, Local0) Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, 0x07)), 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, 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 (SMBC) { Name (_ADR, 0x001F0003) } Device (MODM) { Name (_ADR, 0x001F0006) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x05, 0x03)) } } Device (USB1) { Name (_ADR, 0x001D0000) OperationRegion (BAR0, PCI_Config, 0xC0, 0x05) Field (BAR0, ByteAcc, NoLock, Preserve) { UBL1, 16, Offset (0x04), P0WE, 1, P1WE, 1, Offset (0x05) } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x01, P0WE) Store (0x01, P1WE) } Else { Store (0x00, P0WE) Store (0x00, P1WE) } } Method (UPAC, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (OSFG, OS9X)) { Store (One, Local0) } Else { If (LEqual (OSFG, OS98)) { Store (One, Local0) } } If (Local0) { If (LEqual (Arg0, 0x03)) { Return (One) } } Return (Zero) } OperationRegion (UPCI, PCI_Config, 0x20, 0x04) Field (UPCI, ByteAcc, NoLock, Preserve) { UBAS, 32 } Name (BASA, 0xB400) Name (P0ST, Zero) Name (P1ST, Zero) Method (SSTA, 0, NotSerialized) { Store (UBAS, BASA) And (BASA, 0xFFFFFFFE, BASA) OperationRegion (UHCI, SystemIO, BASA, 0x20) Field (UHCI, ByteAcc, NoLock, Preserve) { RSTP, 1, HRST, 1, GRST, 1, Offset (0x10), CCS0, 1, CSC0, 1, PED0, 1, Offset (0x12), CCS1, 1, CSC1, 1, PED1, 1 } Store (CCS0, P0ST) Store (CCS1, P1ST) } Method (RSTA, 0, NotSerialized) { Store (BASA, UBAS) OperationRegion (UHCI, SystemIO, BASA, 0x20) Field (UHCI, ByteAcc, NoLock, Preserve) { RSTP, 1, HRST, 1, GRST, 1, Offset (0x10), CCS0, 1, CSC0, 1, PED0, 1, Offset (0x12), CCS1, 1, CSC1, 1, PED1, 1 } } Method (USBS, 1, NotSerialized) { If (UPAC (Arg0)) { SSTA () } } Method (USBW, 1, NotSerialized) { If (UPAC (Arg0)) { RSTA () } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x03, 0x03)) } } Device (USB2) { Name (_ADR, 0x001D0001) OperationRegion (BAR0, PCI_Config, 0xC0, 0x05) Field (BAR0, ByteAcc, NoLock, Preserve) { UBL1, 16, Offset (0x04), P0WE, 1, P1WE, 1, Offset (0x05) } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x01, P0WE) Store (0x01, P1WE) } Else { Store (0x00, P0WE) Store (0x00, P1WE) } } Method (UPAC, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (OSFG, OS9X)) { Store (One, Local0) } Else { If (LEqual (OSFG, OS98)) { Store (One, Local0) } } If (Local0) { If (LEqual (Arg0, 0x03)) { Return (One) } } Return (Zero) } OperationRegion (UPCI, PCI_Config, 0x20, 0x04) Field (UPCI, ByteAcc, NoLock, Preserve) { UBAS, 32 } Name (BASA, 0xB400) Name (P0ST, Zero) Name (P1ST, Zero) Method (SSTA, 0, NotSerialized) { Store (UBAS, BASA) And (BASA, 0xFFFFFFFE, BASA) OperationRegion (UHCI, SystemIO, BASA, 0x20) Field (UHCI, ByteAcc, NoLock, Preserve) { RSTP, 1, HRST, 1, GRST, 1, Offset (0x10), CCS0, 1, CSC0, 1, PED0, 1, Offset (0x12), CCS1, 1, CSC1, 1, PED1, 1 } Store (CCS0, P0ST) Store (CCS1, P1ST) } Method (RSTA, 0, NotSerialized) { Store (BASA, UBAS) OperationRegion (UHCI, SystemIO, BASA, 0x20) Field (UHCI, ByteAcc, NoLock, Preserve) { RSTP, 1, HRST, 1, GRST, 1, Offset (0x10), CCS0, 1, CSC0, 1, PED0, 1, Offset (0x12), CCS1, 1, CSC1, 1, PED1, 1 } } Method (USBS, 1, NotSerialized) { If (UPAC (Arg0)) { SSTA () } } Method (USBW, 1, NotSerialized) { If (UPAC (Arg0)) { RSTA () } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x04, 0x03)) } } Device (USB3) { Name (_ADR, 0x001D0002) OperationRegion (BAR0, PCI_Config, 0xC0, 0x05) Field (BAR0, ByteAcc, NoLock, Preserve) { UBL1, 16, Offset (0x04), P0WE, 1, P1WE, 1, Offset (0x05) } Method (_PSW, 1, NotSerialized) { If (Arg0) { Store (0x01, P0WE) Store (0x01, P1WE) } Else { Store (0x00, P0WE) Store (0x00, P1WE) } } Method (UPAC, 1, NotSerialized) { Store (Zero, Local0) If (LEqual (OSFG, OS9X)) { Store (One, Local0) } Else { If (LEqual (OSFG, OS98)) { Store (One, Local0) } } If (Local0) { If (LEqual (Arg0, 0x03)) { Return (One) } } Return (Zero) } OperationRegion (UPCI, PCI_Config, 0x20, 0x04) Field (UPCI, ByteAcc, NoLock, Preserve) { UBAS, 32 } Name (BASA, 0xB400) Name (P0ST, Zero) Name (P1ST, Zero) Method (SSTA, 0, NotSerialized) { Store (UBAS, BASA) And (BASA, 0xFFFFFFFE, BASA) OperationRegion (UHCI, SystemIO, BASA, 0x20) Field (UHCI, ByteAcc, NoLock, Preserve) { RSTP, 1, HRST, 1, GRST, 1, Offset (0x10), CCS0, 1, CSC0, 1, PED0, 1, Offset (0x12), CCS1, 1, CSC1, 1, PED1, 1 } Store (CCS0, P0ST) Store (CCS1, P1ST) } Method (RSTA, 0, NotSerialized) { Store (BASA, UBAS) OperationRegion (UHCI, SystemIO, BASA, 0x20) Field (UHCI, ByteAcc, NoLock, Preserve) { RSTP, 1, HRST, 1, GRST, 1, Offset (0x10), CCS0, 1, CSC0, 1, PED0, 1, Offset (0x12), CCS1, 1, CSC1, 1, PED1, 1 } } Method (USBS, 1, NotSerialized) { If (UPAC (Arg0)) { SSTA () } } Method (USBW, 1, NotSerialized) { If (UPAC (Arg0)) { RSTA () } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0C, 0x03)) } } Device (EHCI) { Name (_ADR, 0x001D0007) OperationRegion (U20P, PCI_Config, 0x00, 0x0100) Field (U20P, ByteAcc, NoLock, Preserve) { Offset (0x04), , 1, MSPE, 1, Offset (0x06), Offset (0x10), MBAS, 32, Offset (0x54), PSTA, 2, Offset (0x55), PMEE, 1, , 6, PMES, 1 } Method (_PSW, 1, NotSerialized) { Store (MBAS, Local0) And (Local0, 0xFFFFFFF0, Local0) OperationRegion (MMIO, SystemMemory, Local0, 0x0100) Field (MMIO, ByteAcc, NoLock, Preserve) { Offset (0x64), P0SC, 32, P1SC, 32, P2SC, 32, P3SC, 32, P4SC, 32, P5SC, 32 } If (LNot (Local0)) { Store (PSTA, Local2) Store (Zero, PSTA) Store (MSPE, Local3) Store (One, MSPE) If (Arg0) { Store (P0SC, Local4) Or (Local4, 0x00300000, Local4) Store (Local4, P0SC) Store (P1SC, Local4) Or (Local4, 0x00300000, Local4) Store (Local4, P1SC) Store (P2SC, Local4) Or (Local4, 0x00300000, Local4) Store (Local4, P2SC) Store (P3SC, Local4) Or (Local4, 0x00300000, Local4) Store (Local4, P3SC) Store (P4SC, Local4) Or (Local4, 0x00300000, Local4) Store (Local4, P4SC) Store (P5SC, Local4) Or (Local4, 0x00300000, Local4) Store (Local4, P5SC) Store (One, PMES) Store (One, PMEE) } Else { Store (P0SC, Local4) And (Local4, 0xFFCFFFFF, Local4) Store (Local4, P0SC) Store (P1SC, Local4) And (Local4, 0xFFCFFFFF, Local4) Store (Local4, P1SC) Store (P2SC, Local4) And (Local4, 0xFFCFFFFF, Local4) Store (Local4, P2SC) Store (P3SC, Local4) And (Local4, 0xFFCFFFFF, Local4) Store (Local4, P3SC) Store (P4SC, Local4) And (Local4, 0xFFCFFFFF, Local4) Store (Local4, P4SC) Store (P5SC, Local4) And (Local4, 0xFFCFFFFF, Local4) Store (Local4, P5SC) Store (One, PMES) Store (Zero, PMEE) } Store (Local3, MSPE) Store (Local2, PSTA) } } Method (_PRW, 0, NotSerialized) { Return (GPRW (0x0D, 0x03)) } } } } Scope (\_PR.CPU1) { Name (TYPE, 0x00) Name (PDCR, 0x01) Name (PDCM, 0x01) Method (_PDC, 1, NotSerialized) { Store (SizeOf (Arg0), Local0) Name (PDCB, Buffer (Local0) {}) Store (Arg0, PDCB) CreateDWordField (PDCB, 0x00, REV) CreateDWordField (PDCB, 0x04, SIZE) If (LNot (LEqual (REV, PDCR))) { Return (0x00) } If (LLess (SIZE, 0x01)) { Return (0x00) } CreateDWordField (PDCB, 0x08, DAT0) If (And (DAT0, PDCM)) { Store (0x01, TYPE) } Return (0x01) } Name (MPCT, Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x40, 0x00, 0x0000000000000199) }, ResourceTemplate () { Register (FFixedHW, 0x10, 0x00, 0x0000000000000198) } }) Name (PPCT, Package (0x02) { ResourceTemplate () { Register (SystemIO, 0x10, 0x00, 0x00000000000000B2) }, ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x00000000000000B3) } }) Method (_PCT, 0, NotSerialized) { If (TYPE) { Return (MPCT) } Else { Return (PPCT) } } Name (MPSS, Package (0x0A) { Package (0x06) { 0x07D0, 0x5208, 0x0A, 0x0A, 0x1426, 0x1426 }, Package (0x06) { 0x07D0, 0x5208, 0x0A, 0x0A, 0x1426, 0x1426 }, Package (0x06) { 0x07D0, 0x5208, 0x0A, 0x0A, 0x1426, 0x1426 }, Package (0x06) { 0x0708, 0x4A38, 0x0A, 0x0A, 0x1224, 0x1224 }, Package (0x06) { 0x0640, 0x4268, 0x0A, 0x0A, 0x1021, 0x1021 }, Package (0x06) { 0x0578, 0x3A98, 0x0A, 0x0A, 0x0E1E, 0x0E1E }, Package (0x06) { 0x04B0, 0x34BC, 0x0A, 0x0A, 0x0C1B, 0x0C1B }, Package (0x06) { 0x03E8, 0x2CEC, 0x0A, 0x0A, 0x0A18, 0x0A18 }, Package (0x06) { 0x0320, 0x251C, 0x0A, 0x0A, 0x0815, 0x0815 }, Package (0x06) { 0x0258, 0x1D4C, 0x0A, 0x0A, 0x0612, 0x0612 } }) Name (PPSS, Package (0x0A) { Package (0x06) { 0x07D0, 0x5208, 0x0A, 0x6E, 0x86, 0x00 }, Package (0x06) { 0x07D0, 0x5208, 0x0A, 0x6E, 0x86, 0x00 }, Package (0x06) { 0x07D0, 0x5208, 0x0A, 0x6E, 0x86, 0x00 }, Package (0x06) { 0x0708, 0x4A38, 0x0A, 0x6E, 0x86, 0x01 }, Package (0x06) { 0x0640, 0x4268, 0x0A, 0x6E, 0x0286, 0x02 }, Package (0x06) { 0x0578, 0x3A98, 0x0A, 0x6E, 0x0386, 0x03 }, Package (0x06) { 0x04B0, 0x34BC, 0x0A, 0x6E, 0x0486, 0x04 }, Package (0x06) { 0x03E8, 0x2CEC, 0x0A, 0x6E, 0x0586, 0x05 }, Package (0x06) { 0x0320, 0x251C, 0x0A, 0x6E, 0x0686, 0x06 }, Package (0x06) { 0x0258, 0x1D4C, 0x0A, 0x6E, 0x0786, 0x07 } }) Name (NPSS, 0x08) Method (_PSS, 0, NotSerialized) { If (TYPE) { Return (MPSS) } Else { Return (PPSS) } } Method (_PPC, 0, NotSerialized) { If (LNot (LGreater (SizeOf (PPSS), NPSS))) { Return (0x00) } Else { Return (Subtract (SizeOf (PPSS), NPSS)) } } Method (_CST, 0, NotSerialized) { Name (ACST, Package (0x02) { 0x01, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x00000000000005FF) }, 0x02, 0x01, 0x03E8 } }) Add (\PMBS, 0x14, Local0) Store (Local0, Index (DerefOf (Index (DerefOf (Index (ACST, 0x01)), 0x00)), 0x07)) Store (ShiftRight (Local0, 0x08), Index (DerefOf (Index (DerefOf (Index (ACST, 0x01)), 0x00)), 0x08)) Name (BCST, Package (0x04) { 0x03, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x00000000000005FF) }, 0x02, 0x01, 0x03E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x0000000000000415) }, 0x03, 0x01, 0x01F4 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x0000000000000416) }, 0x04, 0x02, 0xFA } }) Add (\PMBS, 0x14, Local0) Store (Local0, Index (DerefOf (Index (DerefOf (Index (BCST, 0x01)), 0x00)), 0x07)) Store (ShiftRight (Local0, 0x08), Index (DerefOf (Index (DerefOf (Index (BCST, 0x01)), 0x00)), 0x08)) Add (\PMBS, 0x15, Local0) Store (Local0, Index (DerefOf (Index (DerefOf (Index (BCST, 0x02)), 0x00)), 0x07)) Store (ShiftRight (Local0, 0x08), Index (DerefOf (Index (DerefOf (Index (BCST, 0x02)), 0x00)), 0x08)) Add (\PMBS, 0x16, Local0) Store (Local0, Index (DerefOf (Index (DerefOf (Index (BCST, 0x03)), 0x00)), 0x07)) Store (ShiftRight (Local0, 0x08), Index (DerefOf (Index (DerefOf (Index (BCST, 0x01)), 0x00)), 0x08)) If (LNot (\_SB.PCI0.SBRG.EC0.ACAP ())) { Return (BCST) } Else { Return (ACST) } } } Scope (\_SB) { OperationRegion (\_SB.PCI0.SBRG.IROR, PCI_Config, 0x00, 0xFF) Field (\_SB.PCI0.SBRG.IROR, ByteAcc, NoLock, Preserve) { Offset (0x60), PIRA, 8, PIRB, 8, PIRC, 8, PIRD, 8, Offset (0x68), PIRE, 8, PIRF, 8, PIRG, 8, PIRH, 8 } Name (BUFA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {15} }) CreateWordField (BUFA, 0x01, ICRS) Method (LSTA, 1, NotSerialized) { And (Arg0, 0x80, Local0) If (Local0) { Return (0x09) } Else { Return (0x0B) } } Method (LCRS, 1, NotSerialized) { And (Arg0, 0x0F, Local0) ShiftLeft (0x01, Local0, ICRS) Return (BUFA) } Method (LSRS, 1, NotSerialized) { CreateWordField (Arg0, 0x01, ISRS) FindSetRightBit (ISRS, Local0) Return (Decrement (Local0)) } Method (LDIS, 1, NotSerialized) { Return (Or (Arg0, 0x80)) } Device (LNKA) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x01) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRA)) } Method (_PRS, 0, NotSerialized) { Return (PRSA) } Method (_DIS, 0, NotSerialized) { Store (LDIS (PIRA), 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 (PRSB) } Method (_DIS, 0, NotSerialized) { Store (LDIS (PIRB), 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 (PRSC) } Method (_DIS, 0, NotSerialized) { Store (LDIS (PIRC), 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 (PRSD) } Method (_DIS, 0, NotSerialized) { Store (LDIS (PIRD), 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 (PRSE) } Method (_DIS, 0, NotSerialized) { Store (LDIS (PIRE), PIRE) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRE)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRE) } } Device (LNKF) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x06) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRF)) } Method (_PRS, 0, NotSerialized) { Return (PRSF) } Method (_DIS, 0, NotSerialized) { Store (LDIS (PIRF), PIRF) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRF)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRF) } } Device (LNKG) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x07) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRG)) } Method (_PRS, 0, NotSerialized) { Return (PRSG) } Method (_DIS, 0, NotSerialized) { Store (LDIS (PIRG), PIRG) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRG)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRG) } } Device (LNKH) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x08) Method (_STA, 0, NotSerialized) { Return (LSTA (PIRH)) } Method (_PRS, 0, NotSerialized) { Return (PRSH) } Method (_DIS, 0, NotSerialized) { Store (LDIS (PIRH), PIRH) } Method (_CRS, 0, NotSerialized) { Return (LCRS (PIRH)) } Method (_SRS, 1, NotSerialized) { Store (LSRS (Arg0), PIRH) } } } Scope (\_SB) { Scope (PCI0) { 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, 0x000D0000, 0x000D3FFF, 0x00000000, 0x00004000) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000D4000, 0x000D7FFF, 0x00000000, 0x00004000) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000DE000, 0x000DFFFF, 0x00000000, 0x00002000) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000) }) CreateDWordField (CRS, 0xAA, MIN6) CreateDWordField (CRS, 0xAE, MAX6) CreateDWordField (CRS, 0xB6, LEN6) Method (_CRS, 0, NotSerialized) { Store (MG2B, MIN6) Store (MG2L, LEN6) Store (MG2L, Local0) Add (MIN6, Decrement (Local0), MAX6) Return (CRS) } } } If (SS1) { Name (\_SB.PCI0._S1D, 0x02) Name (\_SB.PCI0.P0P1._S1D, 0x02) Name (\_SB.PCI0.USB1._S1D, 0x02) Name (\_SB.PCI0.USB2._S1D, 0x02) Name (\_SB.PCI0.USB3._S1D, 0x02) } If (SS3) { Name (\_SB.PCI0._S3D, 0x02) Name (\_SB.PCI0.P0P1._S3D, 0x02) Name (\_SB.PCI0.USB1._S3D, 0x02) Name (\_SB.PCI0.USB2._S3D, 0x02) Name (\_SB.PCI0.USB3._S3D, 0x02) } If (SS4) { Name (\_SB.PCI0._S4D, 0x02) Name (\_SB.PCI0.P0P1._S4D, 0x02) } Name (IOXB, 0x05C0) Name (IOXL, 0x10) Method (_PTS, 1, NotSerialized) { Store (Arg0, DBG8) PTS (Arg0) Store (0x00, Index (WAKP, 0x00)) Store (0x00, Index (WAKP, 0x01)) } Method (_WAK, 1, NotSerialized) { ShiftLeft (Arg0, 0x04, DBG8) WAK (Arg0) If (DerefOf (Index (WAKP, 0x00))) { Store (0x00, Index (WAKP, 0x01)) } Else { Store (Arg0, Index (WAKP, 0x01)) } Return (WAKP) } Name (_S0, Package (0x04) { 0x00, 0x00, 0x00, 0x00 }) If (SS1) { Name (_S1, Package (0x04) { 0x02, 0x00, 0x00, 0x00 }) } If (SS3) { Name (_S3, Package (0x04) { 0x05, 0x00, 0x00, 0x00 }) } If (SS4) { Name (_S4, Package (0x04) { 0x06, 0x00, 0x00, 0x00 }) } Name (_S5, Package (0x04) { 0x07, 0x00, 0x00, 0x00 }) Method (PTS, 1, NotSerialized) { If (Arg0) { \_SB.PCI0.SBRG.SIOS (Arg0) } OEMS (Arg0) } Method (WAK, 1, NotSerialized) { \_SB.PCI0.SBRG.SIOW (Arg0) OEMW (Arg0) } }