/* RSD PTR: Checksum=6, OEMID=PTLTD, RsdtAddress=0x1ff6d24c */ /* RSDT: Length=44, Revision=1, Checksum=80, OEMID=PTLTD, OEM Table ID= RSDT, OEM Revision=0x6040000, Creator ID= LTP, Creator Revision=0x0 */ /* Entries={ 0x1ff73b64, 0x1ff73bd8 } */ /* DSDT=0x1ff6d278 INT_MODEL=PIC SCI_INT=9 SMI_CMD=0xb2, ACPI_ENABLE=0xf0, ACPI_DISABLE=0xf1, S4BIOS_REQ=0xf2 PM1a_EVT_BLK=0x1000-0x1003 PM1a_CNT_BLK=0x1004-0x1005 PM2_CNT_BLK=0x1020-0x1020 PM2_TMR_BLK=0x1008-0x100b PM2_GPE0_BLK=0x1028-0x102b PM2_GPE1_BLK=0x102c-0x102f, GPE1_BASE=16 P_LVL2_LAT=1ms, P_LVL3_LAT=1001ms FLUSH_SIZE=0, FLUSH_STRIDE=0 DUTY_OFFSET=1, DUTY_WIDTH=0 DAY_ALRM=13, MON_ALRM=8, CENTURY=50 Flags={WBINVD,PROC_C1,SLP_BUTTON} */ /* DSDT: Length=26860, Revision=1, Checksum=45, OEMID=INTEL, OEM Table ID=ALMADOR, OEM Revision=0x6040000, Creator ID=MSFT, Creator Revision=0x100000d */ DefinitionBlock ( "acpi_dsdt.aml", //Output filename "DSDT", //Signature 0x1, //DSDT Revision "INTEL", //OEMID "ALMADOR", //TABLE ID 0x6040000 //OEM Revision ) { OperationRegion(DBG_, SystemIO, 0x80, 0x1) Field(DBG_, ByteAcc, NoLock, Preserve) { DEBG, 8 } Scope(\_PR_) { Processor(CPU0, 0, 0x1010, 0x6) { Method(_CST) { If(\_SB_.GEYO) { If(\_SB_.ACST) { Return(Package(0x3) { 0x2, Package(0x4) { Buffer(0x11) {0x82, 0xc, 0x0, 0x7f, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 }, 0x1, 0x1, 0x03e8, }, Package(0x4) { Buffer(0x11) {0x82, 0xc, 0x0, 0x1, 0x8, 0x0, 0x0, 0x14, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 }, 0x2, 0x1, 0x01f4, }, }) } Else { Return(Package(0x3) { 0x2, Package(0x4) { Buffer(0x11) {0x82, 0xc, 0x0, 0x7f, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 }, 0x1, 0x1, 0x03e8, }, Package(0x4) { Buffer(0x11) {0x82, 0xc, 0x0, 0x1, 0x8, 0x0, 0x0, 0x14, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 }, 0x2, 0x1, 0x01f4, }, }) } } Else { Return(0x0) } } Name(_PCT, Package(0x2) { Buffer(0x11) {0x82, 0xc, 0x0, 0x1, 0x8, 0x0, 0x0, 0xb2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 }, Buffer(0x11) {0x82, 0xc, 0x0, 0x1, 0x8, 0x0, 0x0, 0xb3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 }, }) Name(_PSS, Package(0x2) { Package(0x6) { 0x03e8, 0x4e20, 0x00fa, 0xdc, 0x83, 0x0, }, Package(0x6) { 0x02dd, 0x2710, 0x00fa, 0xdc, 0x84, 0x1, }, }) Method(_PPC) { If(THRT) { Return(0x1) } Else { Return(0x0) } } } } Name(\_S0_, Package(0x2) { 0x0, 0x0, }) Name(\_S3_, Package(0x2) { 0x5, 0x5, }) Name(\_S4_, Package(0x2) { 0x6, 0x6, }) Name(\_S5_, Package(0x2) { 0x7, 0x7, }) Method(_PTS, 1) { If(LEqual(Arg0, 0x1)) { Store(Arg0, DEBG) Store(0x97, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) Store(0x1, \_GPE.HKFG) } If(LEqual(Arg0, 0x3)) { Store(0x0, \_SB_.OKEC) } If(\_SB_.ACST) { Store(0x1, \_SB_.PACS) } Else { Store(0x0, \_SB_.PACS) } } Method(_WAK, 1) { Or(0x8000, \_SB_.PCI0.IDE_.STIM, \_SB_.PCI0.IDE_.STIM) Store(0x2, \_SB_.PCI0.IDE_.SSIG) \_SB_.PCI0.LPC0.EC0_.Z000() If(LEqual(Arg0, 0x1)) { Store(0x98, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) If(LEqual(\_SB_.PCI0.MYOS, 0x1)) { Notify(\_SB_.PCI0.AGPB.VGA_, 0x0) Return(0x0) Notify(\_SB_.SLPB, 0x2) } } If(LEqual(Arg0, 0x3)) { } If(LEqual(Arg0, 0x4)) { Store(\_SB_.PCI0.LPC0.RTCS, Local0) If(Not(Local0, )) { Notify(\_SB_.SLPB, 0x2) } Store(0x8d, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) } Store(0x1, \_SB_.OKEC) Store(0x0, \_SB_.ACAD.AFST) Store(0x1, \_SB_.ACAD.FST_) Store(Zero, \_SB_.ACOK) Return(0x0) } Scope(_GPE) { Method(_L00) { Notify(\_PR_.CPU0, 0x80) } Method(_L03) { Notify(\_SB_.PCI0.USB1, 0x2) } Method(_L04) { Notify(\_SB_.PCI0.USB2, 0x2) } Method(_L05) { Notify(\_SB_.PCI0.AC97, 0x2) } Name(HKFG, 0x0) Method(_L18) { If(LEqual(\_GPE.HKFG, 0x0)) { Store(0x96, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) } Else { Store(0x0, \_GPE.HKFG) Notify(\_SB_.PWRB, 0x2) } } Method(_L1C) { Notify(\_SB_.PCI0.LPC0.KBC0, 0x2) } Method(_L0B) { Notify(\_SB_.PCI0.HUB_, 0x2) } Method(_L0C) { Notify(\_SB_.PCI0.USB3, 0x2) } } Scope(_SB_) { OperationRegion(SMI0, SystemIO, 0x0000fe00, 0x00000002) Field(SMI0, AnyAcc, NoLock, Preserve) { SMIC, 8 } OperationRegion(SMI1, SystemMemory, 0x1ff73e9d, 0x00000090) Field(SMI1, AnyAcc, NoLock, Preserve) { BCMD, 8, DID_, 32, INFO, 1024 } Field(SMI1, AnyAcc, NoLock, Preserve) { AccessAs(ByteAcc, 0), Offset(0x5), INF_, 8 } Method(_INI) { Store(0x9a, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) } Mutex(PSMX, 0) Device(XROM) { Name(_HID, 0x020cd041) Name(_UID, 0x1) Method(_CRS) { Return(\_SB_.PCI0.SROM()) } Method(_STA) { Return(0xf) } } Device(PCI0) { Name(_HID, 0x030ad041) Name(_ADR, 0x0) Name(_BBN, 0x0) OperationRegion(REGS, PCI_Config, 0x40, 0xff) Field(REGS, DWordAcc, NoLock, Preserve) { Offset(0x12), , 4, GMS_, 3, Offset(0x18), , 7, HEN_, 1, PAM0, 8, PAM1, 8, PAM2, 8, PAM3, 8, PAM4, 8, PAM5, 8, PAM6, 8, DRB0, 8, DRB1, 8, DRB2, 8, DRB3, 8, DRB4, 8, DRB5, 8, DRB6, 8, DRB7, 8, Offset(0x50), , 3, GSEN, 1, Offset(0x51), T_EN, 1, T_SZ, 1 } Name(RSRC, Buffer(0x01d2) {0x88, 0xe, 0x0, 0x2, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x47, 0x1, 0xf8, 0xc, 0xf8, 0xc, 0x1, 0x8, 0x88, 0xe, 0x0, 0x1, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0xf7, 0xc, 0x0, 0x0, 0xf8, 0xc, 0x0, 0x88, 0xe, 0x0, 0x1, 0xc, 0x3, 0x0, 0x0, 0x0, 0xd, 0xff, 0xff, 0x0, 0x0, 0x0, 0xf3, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0xff, 0xff, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0xff, 0x3f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xc, 0x0, 0xff, 0x7f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xc, 0x0, 0xff, 0xbf, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xc, 0x0, 0xff, 0xff, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0xff, 0x3f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xd, 0x0, 0xff, 0x7f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xd, 0x0, 0xff, 0xbf, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xd, 0x0, 0xff, 0xff, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0, 0xff, 0x3f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xe, 0x0, 0xff, 0x7f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xe, 0x0, 0xff, 0xbf, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xe, 0x0, 0xff, 0xff, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xbf, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 }) Method(_CRS, 0, Serialized) { Store(Zero, Local1) CreateDWordField(RSRC, 0x01a4, BTMN) CreateDWordField(RSRC, 0x01a8, BTMX) CreateDWordField(RSRC, 0x01b0, BTLN) Multiply(0x02000000, DRB5, BTMN) Subtract(0xfec00000, BTMN, BTLN) Subtract(Add(BTMN, BTLN, ), 0x1, BTMX) CreateBitField(RSRC, 0x02d8, C0RW) CreateDWordField(RSRC, 0x60, C0MN) CreateDWordField(RSRC, 0x64, C0MX) CreateDWordField(RSRC, 0x6c, C0LN) Store(One, C0RW) If(LEqual(And(PAM1, 0x3, ), 0x1)) { Store(Zero, C0RW) } Store(Zero, C0LN) If(LNot(And(PAM1, 0x3, ))) { Store(0x4000, C0LN) } CreateBitField(RSRC, 0x03b0, C4RW) CreateDWordField(RSRC, 0x7b, C4MN) CreateDWordField(RSRC, 0x7f, C4MX) CreateDWordField(RSRC, 0x87, C4LN) Store(One, C4RW) If(LEqual(And(PAM1, 0x30, ), 0x10)) { Store(Zero, C4RW) } Store(Zero, C4LN) If(LNot(And(PAM1, 0x30, ))) { Store(0x4000, C4LN) } CreateBitField(RSRC, 0x0488, C8RW) CreateDWordField(RSRC, 0x96, C8MN) CreateDWordField(RSRC, 0x9a, C8MX) CreateDWordField(RSRC, 0xa2, C8LN) Store(One, C8RW) If(LEqual(And(PAM2, 0x3, ), 0x1)) { Store(Zero, C8RW) } Store(Zero, C8LN) If(LNot(And(PAM2, 0x3, ))) { Store(0x4000, C8LN) } CreateBitField(RSRC, 0x0560, CCRW) CreateDWordField(RSRC, 0xb1, CCMN) CreateDWordField(RSRC, 0xb5, CCMX) CreateDWordField(RSRC, 0xbd, CCLN) Store(One, CCRW) If(LEqual(And(PAM2, 0x30, ), 0x10)) { Store(Zero, CCRW) } Store(Zero, CCLN) If(LNot(And(PAM2, 0x30, ))) { Store(0x4000, CCLN) } CreateBitField(RSRC, 0x0638, D0RW) CreateDWordField(RSRC, 0xcc, D0MN) CreateDWordField(RSRC, 0xd0, D0MX) CreateDWordField(RSRC, 0xd8, D0LN) Store(One, D0RW) If(LEqual(And(PAM3, 0x3, ), 0x1)) { Store(Zero, D0RW) } Store(Zero, D0LN) If(LNot(And(PAM3, 0x3, ))) { Store(0x4000, D0LN) } CreateBitField(RSRC, 0x0710, D4RW) CreateDWordField(RSRC, 0xe7, D4MN) CreateDWordField(RSRC, 0xeb, D4MX) CreateDWordField(RSRC, 0xf3, D4LN) Store(One, D4RW) If(LEqual(And(PAM3, 0x30, ), 0x10)) { Store(Zero, D4RW) } Store(Zero, D4LN) If(LNot(And(PAM3, 0x30, ))) { Store(0x4000, D4LN) } CreateBitField(RSRC, 0x07e8, D8RW) CreateDWordField(RSRC, 0x0102, D8MN) CreateDWordField(RSRC, 0x0106, D8MX) CreateDWordField(RSRC, 0x010e, D8LN) Store(One, D8RW) If(LEqual(And(PAM4, 0x3, ), 0x1)) { Store(Zero, D8RW) } Store(Zero, D8LN) If(LNot(And(PAM4, 0x3, ))) { Store(0x4000, D8LN) } CreateBitField(RSRC, 0x08c0, DCRW) CreateDWordField(RSRC, 0x011d, DCMN) CreateDWordField(RSRC, 0x0121, DCMX) CreateDWordField(RSRC, 0x0129, DCLN) Store(One, DCRW) If(LEqual(And(PAM4, 0x30, ), 0x10)) { Store(Zero, DCRW) } Store(Zero, DCLN) If(LNot(And(PAM4, 0x30, ))) { Store(0x4000, DCLN) } CreateBitField(RSRC, 0x0998, E0RW) CreateDWordField(RSRC, 0x0138, E0MN) CreateDWordField(RSRC, 0x013c, E0MX) CreateDWordField(RSRC, 0x0144, E0LN) Store(One, E0RW) If(LEqual(And(PAM5, 0x3, ), 0x1)) { Store(Zero, E0RW) } Store(Zero, E0LN) If(LNot(And(PAM5, 0x3, ))) { Store(0x4000, E0LN) } CreateBitField(RSRC, 0x0a70, E4RW) CreateDWordField(RSRC, 0x0153, E4MN) CreateDWordField(RSRC, 0x0157, E4MX) CreateDWordField(RSRC, 0x015f, E4LN) Store(One, E4RW) If(LEqual(And(PAM5, 0x30, ), 0x10)) { Store(Zero, E4RW) } Store(Zero, E4LN) If(LNot(And(PAM5, 0x30, ))) { Store(0x4000, E4LN) } CreateBitField(RSRC, 0x0b48, E8RW) CreateDWordField(RSRC, 0x016e, E8MN) CreateDWordField(RSRC, 0x0172, E8MX) CreateDWordField(RSRC, 0x017a, E8LN) Store(One, E8RW) If(LEqual(And(PAM6, 0x3, ), 0x1)) { Store(Zero, E8RW) } Store(Zero, E8LN) If(LNot(And(PAM6, 0x3, ))) { Store(0x4000, E8LN) } CreateBitField(RSRC, 0x0c20, ECRW) CreateDWordField(RSRC, 0x0189, ECMN) CreateDWordField(RSRC, 0x018d, ECMX) CreateDWordField(RSRC, 0x0195, ECLN) Store(One, ECRW) If(LEqual(And(PAM6, 0x30, ), 0x10)) { Store(Zero, ECRW) } Store(Zero, ECLN) If(LNot(And(PAM6, 0x30, ))) { Store(0x4000, ECLN) } Return(RSRC) } Method(_PRT) { Return(Package(0x7) { Package(0x4) { 0x0002ffff, 0x0, \_SB_.PCI0.LPC0.LNKA, 0x0, }, Package(0x4) { 0x001dffff, 0x0, \_SB_.PCI0.LPC0.LNKA, 0x0, }, Package(0x4) { 0x001dffff, 0x1, \_SB_.PCI0.LPC0.LNKD, 0x0, }, Package(0x4) { 0x001dffff, 0x2, \_SB_.PCI0.LPC0.LNKC, 0x0, }, Package(0x4) { 0x001dffff, 0x3, \_SB_.PCI0.LPC0.LNKH, 0x0, }, Package(0x4) { 0x001fffff, 0x0, \_SB_.PCI0.LPC0.LNKC, 0x0, }, Package(0x4) { 0x001fffff, 0x1, \_SB_.PCI0.LPC0.LNKB, 0x0, }, }) } Method(SROM) { Name(RSRC, Buffer(0x0106) {0x85, 0x11, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0xff, 0x3f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x85, 0x11, 0x0, 0x0, 0x0, 0x40, 0xc, 0x0, 0xff, 0x7f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x85, 0x11, 0x0, 0x0, 0x0, 0x80, 0xc, 0x0, 0xff, 0xbf, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x85, 0x11, 0x0, 0x0, 0x0, 0xc0, 0xc, 0x0, 0xff, 0xff, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x85, 0x11, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0xff, 0x3f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x85, 0x11, 0x0, 0x0, 0x0, 0x40, 0xd, 0x0, 0xff, 0x7f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x85, 0x11, 0x0, 0x0, 0x0, 0x80, 0xd, 0x0, 0xff, 0xbf, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x85, 0x11, 0x0, 0x0, 0x0, 0xc0, 0xd, 0x0, 0xff, 0xff, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x85, 0x11, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0, 0xff, 0x3f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x85, 0x11, 0x0, 0x0, 0x0, 0x40, 0xe, 0x0, 0xff, 0x7f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x85, 0x11, 0x0, 0x0, 0x0, 0x80, 0xe, 0x0, 0xff, 0xbf, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x85, 0x11, 0x0, 0x0, 0x0, 0xc0, 0xe, 0x0, 0xff, 0xff, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x85, 0x11, 0x0, 0x0, 0x0, 0x0, 0xf, 0x0, 0xff, 0xff, 0xf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 }) CreateDWordField(RSRC, 0x10, C0LN) CreateDWordField(RSRC, 0x24, C4LN) CreateDWordField(RSRC, 0x38, C8LN) CreateDWordField(RSRC, 0x4c, CCLN) CreateDWordField(RSRC, 0x60, D0LN) CreateDWordField(RSRC, 0x74, D4LN) CreateDWordField(RSRC, 0x88, D8LN) CreateDWordField(RSRC, 0x9c, DCLN) CreateDWordField(RSRC, 0xb0, E0LN) CreateDWordField(RSRC, 0xc4, E4LN) CreateDWordField(RSRC, 0xd8, E8LN) CreateDWordField(RSRC, 0xec, ECLN) CreateDWordField(RSRC, 0x0100, F0LN) If(And(PAM1, 0x3, )) { Store(0x4000, C0LN) } If(And(PAM1, 0x30, )) { Store(0x4000, C4LN) } If(And(PAM2, 0x3, )) { Store(0x4000, C8LN) } If(And(PAM2, 0x30, )) { Store(0x4000, CCLN) } If(And(PAM3, 0x3, )) { Store(0x4000, D0LN) } If(And(PAM3, 0x30, )) { Store(0x4000, D4LN) } If(And(PAM4, 0x3, )) { Store(0x4000, D8LN) } If(And(PAM4, 0x30, )) { Store(0x4000, DCLN) } If(And(PAM5, 0x3, )) { Store(0x4000, E0LN) } If(And(PAM5, 0x30, )) { Store(0x4000, E4LN) } If(And(PAM6, 0x3, )) { Store(0x4000, E8LN) } If(And(PAM6, 0x30, )) { Store(0x4000, ECLN) } If(And(PAM0, 0x30, )) { Store(0x00010000, F0LN) } Return(RSRC) } Device(AGPB) { Name(_ADR, 0x00010000) Name(_PRT, Package(0x2) { Package(0x4) { 0xffff, 0x0, \_SB_.PCI0.LPC0.LNKA, 0x0, }, Package(0x4) { 0xffff, 0x1, \_SB_.PCI0.LPC0.LNKB, 0x0, }, }) Device(VGA_) { Name(_ADR, 0x0) OperationRegion(VGAO, PCI_Config, 0x14, 0x4) Field(VGAO, DWordAcc, NoLock, Preserve) { BIOA, 16 } Method(Z001) { Store(\_SB_.PCI0.AGPB.VGA_.BIOA, Local0) And(Local0, 0xfffe, Local0) Return(Local0) } OperationRegion(Z002, SystemIO, 0x2000, 0x8) Field(Z002, DWordAcc, NoLock, Preserve) { INDX, 16, , 15, PROT, 1, Offset(0x6), , 3, BLON, 1 } Name(SWIT, 0x1) Name(CRTA, 0x1) Name(LCDA, 0x1) Name(TVA_, 0x0) Name(TOGF, 0x0) Name(_S3D, 0x3) Method(_INI) { Store(0x9c, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) Store(\_SB_.INF_, Local0) If(LGreater(Local0, 0x4)) { And(Local0, 0x3, TOGF) } Else { Store(Local0, TOGF) } } Method(_DOS, 1) { Store("VGA --_DOS Arg0", Debug) Store(Arg0, SWIT) } Method(_DOD) { Store("VGA --_DOD", Debug) Return(Package(0x3) { 0x00010100, 0x00010110, 0x0200, }) } Method(_PS0) { Store("VGA_PS0", Debug) Sleep(0x01f4) } Method(_PS2) { Store("VGA_PS2", Debug) Sleep(0x01f4) } Method(_PS3) { Store("VGA_PS3", Debug) Sleep(0x01f4) } Device(CRT_) { Name(_ADR, 0x0100) Method(_DCS) { Store("CRT --_DCS", Debug) If(CRTA) { Return(0x1f) } Else { Return(0x1d) } } Method(_DGS) { Store("CRT --_DGS", Debug) Store(CRTA, Local0) If(CRTA) { Return(0x1) } Else { Return(0x0) } } Method(_DSS, 1) { Store("CRT --_DSS", Debug) Store(Arg0, Debug) } } Device(LCD_) { Name(_ADR, 0x0110) Method(_DCS) { Store("LCD --_DCS", Debug) If(LCDA) { Return(0x1f) } Else { Return(0x1d) } } Method(_DGS) { Store("LCD --_DGS", Debug) Store(LCDA, Local0) If(LCDA) { Return(0x1) } Else { Return(0x0) } } Method(_DSS, 1) { Store("LCD --_DSS", Debug) Store(Arg0, Debug) } } Device(TV__) { Name(_ADR, 0x0200) Method(_DCS) { Store("TV --_DCS", Debug) If(TVA_) { Return(0x1f) } Else { Return(0x1d) } } Method(_DGS) { Store("TV --_DGS", Debug) Store(TVA_, Local0) If(TVA_) { Return(0x1) } Else { Return(0x0) } } Method(_DSS, 1) { Store("TV --_DSS", Debug) Store(Arg0, Debug) } } } } Name(MYOS, 0x2) Method(_INI) { Store(0x2, MYOS) If(LEqual(SizeOf(\_OS_), 0x14)) { Store(0x1, MYOS) } If(LEqual(SizeOf(\_OS_), 0x11)) { Store(0x0, MYOS) } If(LEqual(SizeOf(\_OS_), 0x27)) { Store(0x3, MYOS) } } Device(LPC0) { Name(_ADR, 0x001f0000) Method(DECD, 4) { Store(Arg0, Debug) } OperationRegion(REGS, PCI_Config, 0x40, 0xc0) Field(REGS, DWordAcc, NoLock, Preserve) { PMBA, 16, Offset(0x18), GPBA, 16, Offset(0xb0), , 5, FUND, 2 } Device(MBRD) { Name(_HID, 0x020cd041) Name(_UID, 0x1f) Name(RSRC, Buffer(0xca) {0x47, 0x1, 0x10, 0x0, 0x10, 0x0, 0x1, 0x10, 0x47, 0x1, 0x24, 0x0, 0x24, 0x0, 0x1, 0x2, 0x47, 0x1, 0x28, 0x0, 0x28, 0x0, 0x1, 0x2, 0x47, 0x1, 0x2c, 0x0, 0x2c, 0x0, 0x1, 0x2, 0x47, 0x1, 0x30, 0x0, 0x30, 0x0, 0x1, 0x2, 0x47, 0x1, 0x34, 0x0, 0x34, 0x0, 0x1, 0x2, 0x47, 0x1, 0x38, 0x0, 0x38, 0x0, 0x1, 0x2, 0x47, 0x1, 0x3c, 0x0, 0x3c, 0x0, 0x1, 0x2, 0x47, 0x1, 0x50, 0x0, 0x50, 0x0, 0x1, 0x4, 0x47, 0x1, 0x72, 0x0, 0x72, 0x0, 0x1, 0x6, 0x47, 0x1, 0x80, 0x0, 0x80, 0x0, 0x1, 0x1, 0x47, 0x1, 0x90, 0x0, 0x90, 0x0, 0x1, 0x10, 0x47, 0x1, 0xa4, 0x0, 0xa4, 0x0, 0x1, 0x2, 0x47, 0x1, 0xa8, 0x0, 0xa8, 0x0, 0x1, 0x2, 0x47, 0x1, 0xac, 0x0, 0xac, 0x0, 0x1, 0x2, 0x47, 0x1, 0xb0, 0x0, 0xb0, 0x0, 0x1, 0x6, 0x47, 0x1, 0xb8, 0x0, 0xb8, 0x0, 0x1, 0x2, 0x47, 0x1, 0xbc, 0x0, 0xbc, 0x0, 0x1, 0x2, 0x47, 0x1, 0x0, 0x10, 0x0, 0x10, 0x1, 0x80, 0x47, 0x1, 0x80, 0x11, 0x80, 0x11, 0x1, 0x40, 0x47, 0x1, 0x2e, 0x0, 0x2e, 0x0, 0x1, 0x2, 0x47, 0x1, 0xd0, 0x4, 0xd0, 0x4, 0x1, 0x2, 0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0x80, 0xff, 0x0, 0x0, 0x80, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0xfc, 0xbf, 0xfe, 0x0, 0x4, 0x0, 0x0, 0x79, 0x0 }) Method(_CRS) { CreateWordField(RSRC, 0x92, PMMN) CreateWordField(RSRC, 0x94, PMMX) And(^^PMBA, 0xff80, PMMN) Store(PMMN, PMMX) CreateWordField(RSRC, 0x9a, GPMN) CreateWordField(RSRC, 0x9c, GPMX) And(^^GPBA, 0xff80, GPMN) Store(GPMN, GPMX) Return(RSRC) } } Device(DMAC) { Name(_HID, 0x0002d041) Name(_CRS, Buffer(0x1d) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x10, 0x47, 0x1, 0x81, 0x0, 0x81, 0x0, 0x1, 0xf, 0x47, 0x1, 0xc0, 0x0, 0xc0, 0x0, 0x1, 0x20, 0x2a, 0x10, 0x2, 0x79, 0x0 }) } Device(MATH) { Name(_HID, 0x040cd041) Name(_CRS, Buffer(0xe) {0x47, 0x1, 0xf0, 0x0, 0xf0, 0x0, 0x1, 0xf, 0x23, 0x0, 0x20, 0x1, 0x79, 0x0 }) } Device(PIC_) { Name(_HID, 0xd041) Name(_CRS, Buffer(0x16) {0x47, 0x1, 0x20, 0x0, 0x20, 0x0, 0x1, 0x2, 0x47, 0x1, 0xa0, 0x0, 0xa0, 0x0, 0x1, 0x2, 0x23, 0x4, 0x0, 0x1, 0x79, 0x0 }) } Device(RTC_) { Name(_HID, 0x000bd041) Name(_CRS, Buffer(0xe) {0x47, 0x1, 0x70, 0x0, 0x70, 0x0, 0x1, 0x2, 0x23, 0x0, 0x1, 0x1, 0x79, 0x0 }) } Device(SPKR) { Name(_HID, 0x0008d041) Name(_CRS, Buffer(0xa) {0x47, 0x1, 0x61, 0x0, 0x61, 0x0, 0x1, 0x1, 0x79, 0x0 }) } Device(TIME) { Name(_HID, 0x0001d041) Name(_CRS, Buffer(0xe) {0x47, 0x1, 0x40, 0x0, 0x40, 0x0, 0x1, 0x4, 0x23, 0x1, 0x0, 0x1, 0x79, 0x0 }) } Device(KBC0) { Name(_HID, 0x0303d041) Name(_CRS, Buffer(0x16) {0x47, 0x1, 0x60, 0x0, 0x60, 0x0, 0x1, 0x1, 0x47, 0x1, 0x64, 0x0, 0x64, 0x0, 0x1, 0x1, 0x23, 0x2, 0x0, 0x1, 0x79, 0x0 }) Name(_PRW, Package(0x2) { 0x1c, 0x3, }) } Device(MSE0) { Name(_HID, 0x130fd041) Name(_CRS, Buffer(0x6) {0x23, 0x0, 0x10, 0x1, 0x79, 0x0 }) } OperationRegion(PIRX, PCI_Config, 0x60, 0x4) Field(PIRX, DWordAcc, NoLock, Preserve) { AccessAs(ByteAcc, 0), PIRA, 8, PIRB, 8, PIRC, 8, PIRD, 8 } OperationRegion(PIRY, PCI_Config, 0x68, 0x4) Field(PIRY, DWordAcc, NoLock, Preserve) { AccessAs(ByteAcc, 0), PIRE, 8, PIRF, 8, PIRG, 8, PIRH, 8 } Device(LNKA) { Name(_HID, 0x0f0cd041) Name(_UID, 0x1) Name(_PRS, Buffer(0x6) {0x23, 0xb8, 0xde, 0x18, 0x79, 0x0 }) Name(RSRC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 }) Method(_DIS) { Or(PIRA, 0x80, PIRA) } Method(_CRS) { CreateWordField(RSRC, 0x1, IRQ0) And(PIRA, 0xf, Local0) ShiftLeft(0x1, Local0, IRQ0) Store(RSRC, Debug) Return(RSRC) } Method(_SRS, 1) { CreateWordField(Arg0, 0x1, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Or(Local0, And(PIRA, 0x70, ), PIRA) } Method(_STA) { If(And(PIRA, 0x80, )) { Return(0x9) } Return(0xb) } } Device(LNKB) { Name(_HID, 0x0f0cd041) Name(_UID, 0x2) Name(_PRS, Buffer(0x6) {0x23, 0xb8, 0xde, 0x18, 0x79, 0x0 }) Name(RSRC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 }) Method(_DIS) { Or(PIRB, 0x80, PIRB) } Method(_CRS) { CreateWordField(RSRC, 0x1, IRQ0) And(PIRB, 0xf, Local0) ShiftLeft(0x1, Local0, IRQ0) Return(RSRC) } Method(_SRS, 1) { CreateWordField(Arg0, 0x1, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Or(Local0, And(PIRB, 0x70, ), PIRB) } Method(_STA) { If(And(PIRB, 0x80, )) { Return(0x9) } Return(0xb) } } Device(LNKC) { Name(_HID, 0x0f0cd041) Name(_UID, 0x3) Name(_PRS, Buffer(0x6) {0x23, 0xb8, 0xde, 0x18, 0x79, 0x0 }) Name(RSRC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 }) Method(_DIS) { Or(PIRC, 0x80, PIRC) } Method(_CRS) { CreateWordField(RSRC, 0x1, IRQ0) And(PIRC, 0xf, Local0) ShiftLeft(0x1, Local0, IRQ0) Return(RSRC) } Method(_SRS, 1) { CreateWordField(Arg0, 0x1, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Or(Local0, And(PIRC, 0x70, ), PIRC) } Method(_STA) { If(And(PIRC, 0x80, )) { Return(0x9) } Return(0xb) } } Device(LNKD) { Name(_HID, 0x0f0cd041) Name(_UID, 0x4) Name(_PRS, Buffer(0x6) {0x23, 0xb8, 0xde, 0x18, 0x79, 0x0 }) Name(RSRC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 }) Method(_DIS) { Or(PIRD, 0x80, PIRD) } Method(_CRS) { CreateWordField(RSRC, 0x1, IRQ0) And(PIRD, 0xf, Local0) ShiftLeft(0x1, Local0, IRQ0) Return(RSRC) } Method(_SRS, 1) { CreateWordField(Arg0, 0x1, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Or(Local0, And(PIRD, 0x70, ), PIRD) } Method(_STA) { If(And(PIRD, 0x80, )) { Return(0x9) } Return(0xb) } } Device(LNKE) { Name(_HID, 0x0f0cd041) Name(_UID, 0x5) Name(_PRS, Buffer(0x6) {0x23, 0xb8, 0xde, 0x18, 0x79, 0x0 }) Name(RSRC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 }) Method(_DIS) { Or(PIRE, 0x80, PIRE) } Method(_CRS) { CreateWordField(RSRC, 0x1, IRQ0) And(PIRE, 0xf, Local0) ShiftLeft(0x1, Local0, IRQ0) Return(RSRC) } Method(_SRS, 1) { CreateWordField(Arg0, 0x1, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Or(Local0, And(PIRE, 0x70, ), PIRE) } Method(_STA) { If(And(PIRE, 0x80, )) { Return(0x9) } Return(0xb) } } Device(LNKF) { Name(_HID, 0x0f0cd041) Name(_UID, 0x6) Name(_PRS, Buffer(0x6) {0x23, 0xb8, 0xde, 0x18, 0x79, 0x0 }) Name(RSRC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 }) Method(_DIS) { Or(PIRF, 0x80, PIRF) } Method(_CRS) { CreateWordField(RSRC, 0x1, IRQ0) And(PIRF, 0xf, Local0) ShiftLeft(0x1, Local0, IRQ0) Return(RSRC) } Method(_SRS, 1) { CreateWordField(Arg0, 0x1, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Or(Local0, And(PIRF, 0x70, ), PIRF) } Method(_STA) { If(And(PIRF, 0x80, )) { Return(0x9) } Return(0xb) } } Device(LNKG) { Name(_HID, 0x0f0cd041) Name(_UID, 0x7) Name(_PRS, Buffer(0x6) {0x23, 0xb8, 0xde, 0x18, 0x79, 0x0 }) Name(RSRC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 }) Method(_DIS) { Or(PIRG, 0x80, PIRG) } Method(_CRS) { CreateWordField(RSRC, 0x1, IRQ0) And(PIRG, 0xf, Local0) ShiftLeft(0x1, Local0, IRQ0) Return(RSRC) } Method(_SRS, 1) { CreateWordField(Arg0, 0x1, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Or(Local0, And(PIRG, 0x70, ), PIRG) } Method(_STA) { If(And(PIRG, 0x80, )) { Return(0x9) } Return(0xb) } } Device(LNKH) { Name(_HID, 0x0f0cd041) Name(_UID, 0x8) Name(_PRS, Buffer(0x6) {0x23, 0xb8, 0xde, 0x18, 0x79, 0x0 }) Name(RSRC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 }) Method(_DIS) { Or(PIRH, 0x80, PIRH) } Method(_CRS) { CreateWordField(RSRC, 0x1, IRQ0) And(PIRH, 0xf, Local0) ShiftLeft(0x1, Local0, IRQ0) Return(RSRC) } Method(_SRS, 1) { CreateWordField(Arg0, 0x1, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Or(Local0, And(PIRH, 0x70, ), PIRH) } Method(_STA) { If(And(PIRH, 0x80, )) { Return(0x9) } Return(0xb) } } OperationRegion(GPOX, SystemIO, 0x1180, 0x3c) Field(GPOX, DWordAcc, Lock, Preserve) { Offset(0x7), , 3, IO27, 1, Offset(0xf), , 3, LV27, 1, Offset(0x1b), , 3, BL27, 1, Offset(0x30), IO32, 1, IO33, 1, Offset(0x38), LV32, 1, LV33, 1 } OperationRegion(PMIO, SystemIO, 0x1000, 0x30) Field(PMIO, WordAcc, Lock, Preserve) { AccessAs(DWordAcc, 0), Offset(0x1), , 2, RTCS, 1, Offset(0x10), TRDC, 4, TREN, 1, Offset(0x29), , 3, PMES, 1, Offset(0x2b), , 3, PMEE, 1, Offset(0x2c), GPI0, 1, GPI1, 1, GPI2, 1, BAYD, 3, GPI6, 1, GPI7, 1, GPI8, 1, GPI9, 1, GPIA, 1, GPIB, 1, GPIC, 1, GPID, 1, GPIE, 1, GPIF, 1, , 6, GPEE, 1, Offset(0x2f), GPE8, 1 } Device(SIO_) { Name(_HID, 0x050ad041) OperationRegion(SIIO, SystemIO, 0x2e, 0x2) Field(SIIO, ByteAcc, NoLock, Preserve) { INDX, 8, DATA, 8 } Mutex(N393, 0) Method(LDRS, 3) { Acquire(N393, 0xffff) Store(0x7, INDX) Store(Arg0, DATA) Store(Arg1, INDX) Store(Arg2, DATA) Release(N393) } Method(LDRG, 2) { Acquire(N393, 0xffff) Store(0x7, INDX) Store(Arg0, DATA) Store(Arg1, INDX) Store(DATA, Local0) Release(N393) Return(Local0) } Method(RCF6, 1) { Acquire(N393, 0xffff) Store(0x26, INDX) Store(DATA, Local0) And(Local0, Arg0, Local0) Release(N393) Return(XOr(Local0, Arg0, )) } Device(ECP_) { Name(_HID, 0x0104d041) Name(_UID, 0x3) Method(_STA) { Store(LDRG(0x1, 0xf0), Local0) ShiftRight(Local0, 0x5, Local0) If(LAnd(RCF6(0x2), LOr(LEqual(Local0, 0x4), LEqual(Local0, 0x7)))) { ShiftLeft(LDRG(0x1, 0x30), 0x1, Local1) Add(0xd, Local1, Local1) Return(Local1) } Else { Return(0x0) } } Method(_PS0) { LDRS(0x1, 0x30, 0x1) } Method(_PS3) { LDRS(0x1, 0x30, 0x0) } Method(_PRS) { Return(Buffer(0xbb) {0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x80, 0x0, 0x2a, 0x8, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x8, 0x8, 0x22, 0x20, 0x0, 0x2a, 0x8, 0x0, 0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x20, 0x0, 0x2a, 0x8, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x8, 0x8, 0x22, 0x80, 0x0, 0x2a, 0x8, 0x0, 0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x80, 0x0, 0x2a, 0x2, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x8, 0x8, 0x22, 0x20, 0x0, 0x2a, 0x2, 0x0, 0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x20, 0x0, 0x2a, 0x2, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x8, 0x8, 0x22, 0x80, 0x0, 0x2a, 0x2, 0x0, 0x38, 0x79, 0x0 }) } Method(_DIS) { LDRS(0x1, 0x30, 0x0) } Method(_CRS) { Name(DCRS, Buffer(0x18) {0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x80, 0x0, 0x2a, 0x8, 0x0, 0x79, 0x0 }) Store(LDRG(0x1, 0x60), Local1) Store(LDRG(0x1, 0x61), Local0) Store(Local0, Index(DCRS, 0x2, )) Store(Local0, Index(DCRS, 0xa, )) Store(Local0, Index(DCRS, 0x4, )) Store(Local0, Index(DCRS, 0xc, )) Store(Local1, Index(DCRS, 0x3, )) Store(Local1, Index(DCRS, 0x5, )) Add(Local1, 0x4, Local1) Store(Local1, Index(DCRS, 0xb, )) Store(Local1, Index(DCRS, 0xd, )) ShiftLeft(0x1, LDRG(0x1, 0x70), Local0) Store(Local0, Index(DCRS, 0x11, )) ShiftRight(Local0, 0x8, Local1) Store(Local1, Index(DCRS, 0x12, )) ShiftLeft(0x1, LDRG(0x1, 0x74), Local0) Store(Local0, Index(DCRS, 0x14, )) ShiftRight(Local0, 0x8, Local1) Store(Local1, Index(DCRS, 0x15, )) Return(DCRS) } Method(_SRS, 1) { CreateByteField(Arg0, 0x2, ADRL) CreateByteField(Arg0, 0x3, ADRM) CreateWordField(Arg0, 0x11, IRQM) CreateWordField(Arg0, 0x14, DMAM) FindSetRightBit(IRQM, Local0) Decrement(Local0) FindSetRightBit(DMAM, Local1) Decrement(Local1) LDRS(0x1, 0x70, Local0) LDRS(0x1, 0x74, Local1) LDRS(0x1, 0x60, ADRM) LDRS(0x1, 0x61, ADRL) LDRS(0x1, 0x30, 0x1) } } Device(EPP_) { Name(_HID, 0x0004d041) Name(_UID, 0x2) Method(_STA) { Store(LDRG(0x1, 0xf0), Local0) ShiftRight(Local0, 0x5, Local0) If(LAnd(RCF6(0x2), LOr(LEqual(Local0, 0x2), LEqual(Local0, 0x3)))) { ShiftLeft(LDRG(0x1, 0x30), 0x1, Local1) Add(0xd, Local1, Local1) Return(Local1) } Else { Return(0x0) } } Method(_PS0) { LDRS(0x1, 0x30, 0x1) } Method(_PS3) { LDRS(0x1, 0x30, 0x0) } Method(_PRS) { Return(Buffer(0x7b) {0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x80, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x8, 0x8, 0x22, 0x20, 0x0, 0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x20, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x8, 0x8, 0x22, 0x80, 0x0, 0x30, 0x47, 0x1, 0x78, 0x1, 0x78, 0x1, 0x8, 0x8, 0x47, 0x1, 0x78, 0x5, 0x78, 0x5, 0x8, 0x8, 0x22, 0x80, 0x0, 0x30, 0x47, 0x1, 0x78, 0x1, 0x78, 0x1, 0x8, 0x8, 0x47, 0x1, 0x78, 0x5, 0x78, 0x5, 0x8, 0x8, 0x22, 0x20, 0x0, 0x38, 0x79, 0x0 }) } Method(_DIS) { LDRS(0x1, 0x30, 0x0) } Method(_CRS) { Name(DCRS, Buffer(0x15) {0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x80, 0x0, 0x79, 0x0 }) Store(LDRG(0x1, 0x60), Local1) Store(LDRG(0x1, 0x61), Local0) Store(Local0, Index(DCRS, 0x2, )) Store(Local0, Index(DCRS, 0xa, )) Store(Local0, Index(DCRS, 0x4, )) Store(Local0, Index(DCRS, 0xc, )) Store(Local1, Index(DCRS, 0x3, )) Store(Local1, Index(DCRS, 0x5, )) Add(Local1, 0x4, Local1) Store(Local1, Index(DCRS, 0xb, )) Store(Local1, Index(DCRS, 0xd, )) ShiftLeft(0x1, LDRG(0x1, 0x70), Local0) Store(Local0, Index(DCRS, 0x11, )) ShiftRight(Local0, 0x8, Local1) Store(Local1, Index(DCRS, 0x12, )) Return(DCRS) } Method(_SRS, 1) { CreateByteField(Arg0, 0x2, ADRL) CreateByteField(Arg0, 0x3, ADRM) CreateWordField(Arg0, 0x11, IRQM) FindSetRightBit(IRQM, Local0) Decrement(Local0) LDRS(0x1, 0x70, Local0) LDRS(0x1, 0x60, ADRM) LDRS(0x1, 0x61, ADRL) LDRS(0x1, 0x30, 0x1) } } Device(LPTB) { Name(_HID, 0x0004d041) Name(_UID, 0x1) Method(_STA) { Store(LDRG(0x1, 0xf0), Local0) ShiftRight(Local0, 0x5, Local0) If(LAnd(RCF6(0x2), LEqual(Local0, 0x1))) { ShiftLeft(LDRG(0x1, 0x30), 0x1, Local1) Add(0xd, Local1, Local1) Return(Local1) } Else { Return(0x0) } } Method(_PS0) { LDRS(0x1, 0x30, 0x1) } Method(_PS3) { LDRS(0x1, 0x30, 0x0) } Method(_PRS) { Return(Buffer(0x7b) {0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x80, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x8, 0x8, 0x22, 0x20, 0x0, 0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x20, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x8, 0x8, 0x22, 0x80, 0x0, 0x30, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x4, 0x4, 0x47, 0x1, 0xbc, 0x7, 0xbc, 0x7, 0x4, 0x4, 0x22, 0x80, 0x0, 0x30, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x4, 0x4, 0x47, 0x1, 0xbc, 0x7, 0xbc, 0x7, 0x4, 0x4, 0x22, 0x20, 0x0, 0x38, 0x79, 0x0 }) } Method(_DIS) { LDRS(0x1, 0x30, 0x0) } Method(_CRS) { Name(DCRS, Buffer(0x15) {0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x80, 0x0, 0x79, 0x0 }) Store(LDRG(0x1, 0x60), Local1) Store(LDRG(0x1, 0x61), Local0) Store(Local0, Index(DCRS, 0x2, )) Store(Local0, Index(DCRS, 0xa, )) Store(Local0, Index(DCRS, 0x4, )) Store(Local0, Index(DCRS, 0xc, )) Store(Local1, Index(DCRS, 0x3, )) Store(Local1, Index(DCRS, 0x5, )) Add(Local1, 0x4, Local1) Store(Local1, Index(DCRS, 0xb, )) Store(Local1, Index(DCRS, 0xd, )) If(And(Local0, 0x4, )) { Store(0x4, Local0) } Else { Store(0x8, Local0) } Store(Local0, Index(DCRS, 0x6, )) Store(Local0, Index(DCRS, 0x7, )) Store(Local0, Index(DCRS, 0xe, )) Store(Local0, Index(DCRS, 0xf, )) ShiftLeft(0x1, LDRG(0x1, 0x70), Local0) Store(Local0, Index(DCRS, 0x11, )) ShiftRight(Local0, 0x8, Local1) Store(Local1, Index(DCRS, 0x12, )) Return(DCRS) } Method(_SRS, 1) { CreateByteField(Arg0, 0x2, ADRL) CreateByteField(Arg0, 0x3, ADRM) CreateWordField(Arg0, 0x11, IRQM) FindSetRightBit(IRQM, Local0) Decrement(Local0) LDRS(0x1, 0x70, Local0) LDRS(0x1, 0x60, ADRM) LDRS(0x1, 0x61, ADRL) LDRS(0x1, 0x30, 0x1) } } Device(LPT_) { Name(_HID, 0x0004d041) Name(_UID, 0x0) Method(_STA) { Store(LDRG(0x1, 0xf0), Local0) ShiftRight(Local0, 0x5, Local0) If(LAnd(RCF6(0x2), LEqual(Local0, 0x0))) { ShiftLeft(LDRG(0x1, 0x30), 0x1, Local1) Add(0xd, Local1, Local1) Return(Local1) } Else { Return(0x0) } } Method(_PS0) { LDRS(0x1, 0x30, 0x1) } Method(_PS3) { LDRS(0x1, 0x30, 0x0) } Method(_PRS) { Return(Buffer(0x7b) {0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x80, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x8, 0x8, 0x22, 0x20, 0x0, 0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x20, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x8, 0x8, 0x22, 0x80, 0x0, 0x30, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x4, 0x4, 0x47, 0x1, 0xbc, 0x7, 0xbc, 0x7, 0x4, 0x4, 0x22, 0x80, 0x0, 0x30, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x4, 0x4, 0x47, 0x1, 0xbc, 0x7, 0xbc, 0x7, 0x4, 0x4, 0x22, 0x20, 0x0, 0x38, 0x79, 0x0 }) } Method(_DIS) { LDRS(0x1, 0x30, 0x0) } Method(_CRS) { Name(DCRS, Buffer(0x15) {0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x8, 0x22, 0x80, 0x0, 0x79, 0x0 }) Store(LDRG(0x1, 0x60), Local1) Store(LDRG(0x1, 0x61), Local0) Store(Local0, Index(DCRS, 0x2, )) Store(Local0, Index(DCRS, 0xa, )) Store(Local0, Index(DCRS, 0x4, )) Store(Local0, Index(DCRS, 0xc, )) Store(Local1, Index(DCRS, 0x3, )) Store(Local1, Index(DCRS, 0x5, )) Add(Local1, 0x4, Local1) Store(Local1, Index(DCRS, 0xb, )) Store(Local1, Index(DCRS, 0xd, )) If(And(Local0, 0x4, )) { Store(0x4, Local0) } Else { Store(0x8, Local0) } Store(Local0, Index(DCRS, 0x6, )) Store(Local0, Index(DCRS, 0x7, )) Store(Local0, Index(DCRS, 0xe, )) Store(Local0, Index(DCRS, 0xf, )) ShiftLeft(0x1, LDRG(0x1, 0x70), Local0) Store(Local0, Index(DCRS, 0x11, )) ShiftRight(Local0, 0x8, Local1) Store(Local1, Index(DCRS, 0x12, )) Return(DCRS) } Method(_SRS, 1) { CreateByteField(Arg0, 0x2, ADRL) CreateByteField(Arg0, 0x3, ADRM) CreateWordField(Arg0, 0x11, IRQM) FindSetRightBit(IRQM, Local0) Decrement(Local0) LDRS(0x1, 0x70, Local0) LDRS(0x1, 0x60, ADRM) LDRS(0x1, 0x61, ADRL) LDRS(0x1, 0x30, 0x1) } } Device(COMA) { Name(_HID, 0x0105d041) Name(_UID, 0x0) Method(_STA) { If(RCF6(0x8)) { ShiftLeft(LDRG(0x3, 0x30), 0x1, Local1) Add(0xd, Local1, Local1) Return(Local1) } Else { Return(0x0) } } Method(_PS0) { LDRS(0x3, 0x30, 0x1) } Method(_PS3) { LDRS(0x3, 0x30, 0x0) } Method(_PRS) { Return(Buffer(0x63) {0x30, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x8, 0x8, 0x22, 0x10, 0x0, 0x30, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x8, 0x8, 0x22, 0x8, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x8, 0x8, 0x22, 0x10, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x8, 0x8, 0x22, 0x8, 0x0, 0x30, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x8, 0x8, 0x22, 0x8, 0x0, 0x30, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x8, 0x8, 0x22, 0x10, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x8, 0x8, 0x22, 0x8, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x8, 0x8, 0x22, 0x10, 0x0, 0x38, 0x79, 0x0 }) } Method(_DIS) { LDRS(0x3, 0x30, 0x0) } Method(_CRS) { Name(DCRS, Buffer(0xd) {0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x8, 0x8, 0x22, 0x10, 0x0, 0x79, 0x0 }) Store(LDRG(0x3, 0x60), Local1) Store(LDRG(0x3, 0x61), Local0) Store(Local0, Index(DCRS, 0x2, )) Store(Local0, Index(DCRS, 0x4, )) Store(Local1, Index(DCRS, 0x3, )) Store(Local1, Index(DCRS, 0x5, )) ShiftLeft(0x1, LDRG(0x3, 0x70), Local0) Store(Local0, Index(DCRS, 0x9, )) ShiftRight(Local0, 0x8, Local1) Store(Local1, Index(DCRS, 0xa, )) Return(DCRS) } Method(_SRS, 1) { CreateByteField(Arg0, 0x2, ADRL) CreateByteField(Arg0, 0x3, ADRM) CreateWordField(Arg0, 0x9, IRQM) FindSetRightBit(IRQM, Local0) Decrement(Local0) LDRS(0x3, 0x70, Local0) LDRS(0x3, 0x60, ADRM) LDRS(0x3, 0x61, ADRL) LDRS(0x3, 0x30, 0x1) } } Device(FDC_) { Name(_HID, 0x0007d041) Name(_UID, 0x0) Method(_STA) { If(RCF6(0x1)) { ShiftLeft(LDRG(0x0, 0x30), 0x1, Local1) Add(0xd, Local1, Local1) Return(Local1) } Else { Return(0x0) } } Method(_PS0) { LDRS(0x0, 0x30, 0x1) } Method(_PS3) { LDRS(0x0, 0x30, 0x0) } Method(_PRS) { Return(Buffer(0x31) {0x30, 0x47, 0x1, 0xf0, 0x3, 0xf0, 0x3, 0x8, 0x6, 0x47, 0x1, 0xf7, 0x3, 0xf7, 0x3, 0x1, 0x1, 0x22, 0x40, 0x0, 0x2a, 0x4, 0x0, 0x30, 0x47, 0x1, 0x70, 0x3, 0x70, 0x3, 0x8, 0x6, 0x47, 0x1, 0x77, 0x3, 0x77, 0x3, 0x1, 0x1, 0x22, 0x40, 0x0, 0x2a, 0x4, 0x0, 0x38, 0x79, 0x0 }) } Method(_DIS) { LDRS(0x0, 0x30, 0x0) } Method(_CRS) { Name(DCRS, Buffer(0x18) {0x47, 0x1, 0xf0, 0x3, 0xf0, 0x3, 0x8, 0x6, 0x47, 0x1, 0xf7, 0x3, 0xf7, 0x3, 0x1, 0x1, 0x22, 0x40, 0x0, 0x2a, 0x4, 0x0, 0x79, 0x0 }) Store(LDRG(0x0, 0x60), Local1) Store(LDRG(0x0, 0x61), Local0) Store(Local0, Index(DCRS, 0x2, )) Store(Local0, Index(DCRS, 0x4, )) Add(Local0, 0x7, Local0) Store(Local0, Index(DCRS, 0xa, )) Store(Local0, Index(DCRS, 0xc, )) Store(Local1, Index(DCRS, 0x3, )) Store(Local1, Index(DCRS, 0x5, )) Store(Local1, Index(DCRS, 0xb, )) Store(Local1, Index(DCRS, 0xd, )) ShiftLeft(0x1, LDRG(0x0, 0x70), Local0) Store(Local0, Index(DCRS, 0x11, )) ShiftRight(Local0, 0x8, Local1) Store(Local1, Index(DCRS, 0x12, )) ShiftLeft(0x1, LDRG(0x0, 0x74), Local0) Store(Local0, Index(DCRS, 0x14, )) ShiftRight(Local0, 0x8, Local1) Store(Local1, Index(DCRS, 0x15, )) Return(DCRS) } Method(_SRS, 1) { CreateByteField(Arg0, 0x2, ADRL) CreateByteField(Arg0, 0x3, ADRM) CreateWordField(Arg0, 0x11, IRQM) CreateWordField(Arg0, 0x14, DMAM) FindSetRightBit(IRQM, Local0) Decrement(Local0) FindSetRightBit(DMAM, Local1) Decrement(Local1) LDRS(0x0, 0x70, Local0) LDRS(0x0, 0x74, Local1) LDRS(0x0, 0x60, ADRM) LDRS(0x0, 0x61, ADRL) LDRS(0x0, 0x30, 0x1) } Name(BUF_, Buffer(0x14) {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 }) Method(_FDE) { Store(\_SB_.PCI0.LPC0.SIO_.FDC_.FDDA._STA(), Local0) If(LEqual(Local0, 0xf)) { Store(Ones, Local0) } Else { Store(Zero, Local0) } CreateDWordField(BUF_, 0x0, DRV0) Store(Local0, DRV0) Return(BUF_) } Device(FDDA) { Name(_ADR, Zero) Method(_EJ0, 1) { If(Arg0) { Store(0x2, \_SB_.PCI0.IDE_.SSIG) Store(0x0, \_SB_.PCI0.IDE_.SECN.DBAY.DPWR) Store(0x0, \_SB_.PCI0.LPC0.LV33) Sleep(0x32) } } Method(_STA) { If(\_SB_.PCI0.IDE_.SECN.DBAY.DPWR) { If(LEqual(\_SB_.PCI0.LPC0.BAYD, 0x4)) { Return(0xf) } } Return(0x8) } Name(D0IN, Package(0x10) { 0x0, 0x4, 0x4f, 0x12, 0x1, 0xaf, 0x2, 0x25, 0x2, 0x12, 0x1b, 0xff, 0x6c, 0xf6, 0xf, 0x5, }) Method(_FDI) { Return(D0IN) } } } } Scope(\_SB_) { Name(OKEC, 0x0) Name(ACOK, 0x1) } Device(EC0_) { Name(_HID, 0x090cd041) Name(_CRS, Buffer(0x12) {0x47, 0x1, 0x62, 0x0, 0x62, 0x0, 0x1, 0x1, 0x47, 0x1, 0x66, 0x0, 0x66, 0x0, 0x1, 0x1, 0x79, 0x0 }) Name(_GPE, 0x1d) Method(_REG, 2) { If(LEqual(Arg0, 0x3)) { Store(Arg1, \_SB_.OKEC) } } Name(ACIN, 0x0) Name(ACFK, 0x0) Name(BTIN, 0x0) Name(B2IN, 0x0) OperationRegion(ERAM, EmbeddedControl, 0x0, 0xff) Field(ERAM, ByteAcc, NoLock, Preserve) { Offset(0x4), CMCM, 8, CMD1, 8, CMD2, 8, CMD3, 8, Offset(0x18), SMPR, 8, SMST, 8, SMAD, 8, SMCM, 8, SMD0, 264, SMAA, 8, BATD, 16, ACDF, 1, Offset(0x42), , 4, MIUS, 1, Offset(0x43), , 4, AIUS, 1, Offset(0x4c), MBTS, 1, MBTF, 1, , 4, MBTD, 1, Offset(0x4d), SBTS, 1, SBTF, 1, , 4, SBTD, 1, Offset(0x4f), MBTC, 1, Offset(0x50), SBTC, 1, Offset(0x53), TMSS, 2, , 2, BANK, 4, Offset(0x65), , 2, WAKE, 1, Offset(0x67), WEVN, 8, TMP_, 8, Offset(0x75), MCAP, 8, SCAP, 8, Offset(0x7e), MRCP, 16, ARCP, 16, Offset(0x96), MVOT, 16, Offset(0x9f), , 5, DOCK, 1, Offset(0xa1), PTIM, 8, Offset(0xa8), RGA8, 8, Offset(0xb9), ARMB, 2, Offset(0xbb), SVOT, 16, Offset(0xbe), BCUR, 16, RGC0, 8, Offset(0xd1), LIDS, 1 } Field(ERAM, ByteAcc, NoLock, Preserve) { Offset(0x1c), SMW0, 16 } Field(ERAM, ByteAcc, NoLock, Preserve) { Offset(0x1c), SMB0, 8 } Mutex(MUT0, 0) Method(SMRD, 4) { If(LNot(LEqual(Arg0, 0x7))) { If(LNot(LEqual(Arg0, 0x9))) { If(LNot(LEqual(Arg0, 0xb))) { Return(0x19) } } } Acquire(MUT0, 0xffff) Store(0x4, Local0) While(LGreater(Local0, 0x1)) { And(SMST, 0x40, SMST) Store(Arg2, SMCM) Store(Arg1, SMAD) Store(Arg0, SMPR) While(LNot(And(SMST, 0xbf, Local1))) { Sleep(0x2) } If(LEqual(Local1, 0x80)) { Store(0x0, Local0) } Else { Decrement(Local0) } } If(Local0) { Store(And(Local1, 0x1f, ), Local0) } Else { If(LEqual(Arg0, 0x7)) { Store(SMB0, Arg3) } If(LEqual(Arg0, 0x9)) { Store(SMW0, Arg3) } If(LEqual(Arg0, 0xb)) { Store(SMD0, Arg3) } } Release(MUT0) Return(Local0) } Method(SMWR, 4) { If(LNot(LEqual(Arg0, 0x6))) { If(LNot(LEqual(Arg0, 0x8))) { If(LNot(LEqual(Arg0, 0xa))) { Return(0x19) } } } Acquire(MUT0, 0xffff) Store(0x4, Local0) While(LGreater(Local0, 0x1)) { If(LEqual(Arg0, 0x6)) { Store(Arg3, SMB0) } If(LEqual(Arg0, 0x8)) { Store(Arg3, SMW0) } If(LEqual(Arg0, 0xa)) { Store(Arg3, SMD0) } And(SMST, 0x40, SMST) Store(Arg2, SMCM) Store(Arg1, SMAD) Store(Arg0, SMPR) While(LNot(And(SMST, 0xbf, Local1))) { Sleep(0x2) } If(LEqual(Local1, 0x80)) { Store(0x0, Local0) } Else { Decrement(Local0) } } If(Local0) { Store(And(Local1, 0x1f, ), Local0) } Release(MUT0) Return(Local0) } Method(BPOL, 1) { Store(BANK, Local0) Store(0x1, BANK) Store(Arg0, PTIM) Store(Local0, BANK) } Name(ACEV, 0x0) Name(BATO, 0x0) Name(BATN, 0x0) Method(_Q09) { Acquire(MUT0, 0xffff) BPOL(0x0) Release(MUT0) Store(0x1, \_SB_.ACOK) Notify(\_SB_.ACAD, 0x0) Notify(\_SB_.BAT2, 0x0) Notify(\_SB_.BAT1, 0x0) Store(0x0, \_SB_.LACH) } Name(B1EV, 0x0) Name(B2EV, 0x0) Method(_Q20) { Acquire(MUT0, 0xffff) If(LEqual(\_SB_.LACH, 0x0)) { Store(\_SB_.PCI0.LPC0.EC0_.ACDF, \_SB_.PACS) Store(0x1, \_SB_.LACH) } Store(\_SB_.PCI0.LPC0.EC0_.ACDF, \_SB_.ACST) Release(MUT0) If(And(SMST, 0x40, )) { And(SMST, 0xbf, SMST) Store(SMAA, Local0) Store(Local0, Debug) If(LEqual(Local0, 0x14)) { Acquire(MUT0, 0xffff) BPOL(0x4) Release(MUT0) Store(One, \_SB_.ACOK) SELE() If(LEqual(ACEV, 0x1)) { Store(0x0, ACEV) XOr(ACIN, 0x1, ACFK) Sleep(0x5) } If(LEqual(B1EV, 0x1)) { Store(0x0, B1EV) \_SB_.BAT1.SEBI() } If(LEqual(B2EV, 0x1)) { Store(0x0, B2EV) \_SB_.BAT2.SEBI() } } If(LEqual(Local0, 0x16)) { Store("Alarm and notify BAT1 00", Debug) Store(One, \_SB_.BAT1.BSTC) Store(One, \_SB_.BAT2.BSTC) Notify(\_SB_.BAT1, 0x80) Notify(\_SB_.BAT2, 0x80) } } } Method(SELE) { Acquire(MUT0, 0xffff) Store(BATD, BATN) Release(MUT0) Store("BATD=", Debug) Store(BATN, Debug) Store("BATO=", Debug) Store(BATO, Debug) And(BATN, 0xc0, Local0) If(Local0) { Store(0x1, ACIN) Store(ACIN, ACFK) } Else { Store(0x0, ACIN) Store(ACIN, ACFK) } And(BATO, 0xc0, Local1) If(Not(LEqual(Local0, Local1), )) { Store(0x1, ACEV) } And(BATN, 0x1, Local0) If(Local0) { Store(0x1f, BTIN) } Else { Store(0xf, BTIN) } And(BATO, 0x1, Local1) If(Not(LEqual(Local0, Local1), )) { Store("Notify Bat1 00", Debug) Store(0x1, B1EV) Store(0x01e9, \_SB_.BAT1.UBIF) } And(BATN, 0x2, Local0) If(Local0) { Store(0x1f, B2IN) } Else { Store(0xf, B2IN) } And(BATO, 0x2, Local1) If(Not(LEqual(Local0, Local1), )) { Store("Notify Bat2 00", Debug) Store(0x1, B2EV) Store(0x01e9, \_SB_.BAT2.UBIF) } If(LNot(\_SB_.BAT1.BFST)) { Store("Skip init BATO", Debug) Store(0x1, \_SB_.BAT1.BFST) } If(LNot(\_SB_.BAT2.BFST)) { Store("Skip init BATO", Debug) Store(0x1, \_SB_.BAT2.BFST) } If(LNot(\_SB_.ACAD.AFST)) { Store("Skip init BATO", Debug) Store(0x1, \_SB_.ACAD.AFST) } Store(BATN, BATO) } Method(_Q0D) { Notify(\_SB_.SLPB, 0x80) } Method(_Q85) { Store(0x02d0, \_SB_.PCI0.AGPB.VGA_.INDX) Store(Zero, \_SB_.PCI0.AGPB.VGA_.PROT) Store(Zero, \_SB_.PCI0.AGPB.VGA_.BLON) Store(One, \_SB_.PCI0.AGPB.VGA_.PROT) Notify(\_SB_.LID_, 0x80) } Method(_Q86) { Store(0x02d0, \_SB_.PCI0.AGPB.VGA_.INDX) Store(Zero, \_SB_.PCI0.AGPB.VGA_.PROT) Store(One, \_SB_.PCI0.AGPB.VGA_.BLON) Store(One, \_SB_.PCI0.AGPB.VGA_.PROT) Notify(\_SB_.LID_, 0x80) } Method(_Q87) { Store(0x95, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) } Method(_Q8A) { Z003() } OperationRegion(IDES, SystemIO, 0x0, 0xff) Field(IDES, ByteAcc, NoLock, Preserve) { Offset(0x2), BMSP, 8, Offset(0xa), BMSS, 8 } Method(Z003) { Store(0x7, \_SB_.PCI0.LPC0.BAYD) If(LEqual(\_SB_.PCI0.LPC0.BAYD, 0x7)) { Store(0x1, \_SB_.PCI0.IDE_.SSIG) Store(0x0, \_SB_.PCI0.IDE_.SSD0) Store(0x0, \_SB_.PCI0.IDE_.SECN.DBAY.DPWR) Store(0x0, \_SB_.PCI0.LPC0.LV33) Notify(\_SB_.PCI0.LPC0.SIO_.FDC_.FDDA, 0x1) Notify(\_SB_.PCI0.IDE_.SECN.DBAY, 0x1) } Else { If(LEqual(\_SB_.PCI0.LPC0.BAYD, 0x5)) { Store(0x0, \_SB_.PCI0.IDE_.SSIG) Store(0x0, \_SB_.PCI0.IDE_.SSD0) Sleep(0x32) } Store(0x1, \_SB_.PCI0.IDE_.SECN.DBAY.DPWR) Store(0x1, \_SB_.PCI0.LPC0.LV33) Store(0x1, \_SB_.PCI0.LPC0.LV32) Sleep(0x1) Store(0x0, \_SB_.PCI0.LPC0.LV32) If(LEqual(\_SB_.PCI0.LPC0.BAYD, 0x4)) { Notify(\_SB_.PCI0.LPC0.SIO_.FDC_.FDDA, 0x1) } If(LEqual(\_SB_.PCI0.LPC0.BAYD, 0x5)) { If(\_SB_.PCI0.LPC0.EC0_.SXFG) { Store(0x0, \_SB_.PCI0.LPC0.EC0_.SXFG) Notify(\_SB_.PCI0, 0x0) } Else { Sleep(0x1) Notify(\_SB_.PCI0.IDE_.SECN.DBAY, 0x1) Sleep(0x01f4) Notify(\_SB_.PCI0.IDE_.SECN.DBAY, 0x1) } } } } Name(SXFG, 0x0) Method(Z000) { Store(0x7, \_SB_.PCI0.LPC0.BAYD) If(LEqual(\_SB_.PCI0.LPC0.BAYD, 0x7)) { Store(0x1, \_SB_.PCI0.LPC0.EC0_.SXFG) Store(0x1, \_SB_.PCI0.IDE_.SSIG) Store(0x0, \_SB_.PCI0.IDE_.SSD0) Store(0x0, \_SB_.PCI0.IDE_.SECN.DBAY.DPWR) Store(0x0, \_SB_.PCI0.LPC0.LV33) Notify(\_SB_.PCI0.LPC0.SIO_.FDC_.FDDA, 0x1) Notify(\_SB_.PCI0.IDE_.SECN.DBAY, 0x1) } Else { If(LEqual(\_SB_.PCI0.LPC0.BAYD, 0x5)) { Store(0x0, \_SB_.PCI0.IDE_.SSIG) Store(0x0, \_SB_.PCI0.IDE_.SSD0) Sleep(0x32) } Store(0x1, \_SB_.PCI0.IDE_.SECN.DBAY.DPWR) Store(0x1, \_SB_.PCI0.LPC0.LV33) Store(0x1, \_SB_.PCI0.LPC0.LV32) Sleep(0x1) Store(0x0, \_SB_.PCI0.LPC0.LV32) If(LEqual(\_SB_.PCI0.LPC0.BAYD, 0x4)) { Store(0x1, \_SB_.PCI0.LPC0.EC0_.SXFG) Notify(\_SB_.PCI0.LPC0.SIO_.FDC_.FDDA, 0x1) } If(LEqual(\_SB_.PCI0.LPC0.BAYD, 0x5)) { Sleep(0x1) Notify(\_SB_.PCI0.IDE_.SECN.DBAY, 0x1) Sleep(0x1) Notify(\_SB_.PCI0.IDE_.SECN.DBAY, 0x1) Notify(\_SB_.PCI0.LPC0.SIO_.FDC_.FDDA, 0x1) } } } Method(_Q0C) { Z004() } Method(Z004) { Store("Hot-Keys: ----- _Q0C", Debug) If(LEqual(\_SB_.PCI0.AGPB.VGA_.SWIT, 0x0)) { Store(0x9c, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) Store(\_SB_.INF_, Local0) Increment(\_SB_.PCI0.AGPB.VGA_.TOGF) While(LNot(LEqual(And(Local0, \_SB_.PCI0.AGPB.VGA_.TOGF, ), \_SB_.PCI0.AGPB.VGA_.TOGF))) { Increment(\_SB_.PCI0.AGPB.VGA_.TOGF) If(LGreater(\_SB_.PCI0.AGPB.VGA_.TOGF, 0x4)) { Store(One, \_SB_.PCI0.AGPB.VGA_.TOGF) } } Store(\_SB_.PCI0.AGPB.VGA_.TOGF, Local0) If(LEqual(Local0, 0x1)) { Store("LCD", Debug) Store(Zero, \_SB_.PCI0.AGPB.VGA_.CRTA) Store(One, \_SB_.PCI0.AGPB.VGA_.LCDA) Store(Zero, \_SB_.PCI0.AGPB.VGA_.TVA_) } If(LEqual(Local0, 0x2)) { Store("CRT", Debug) Store(One, \_SB_.PCI0.AGPB.VGA_.CRTA) Store(Zero, \_SB_.PCI0.AGPB.VGA_.LCDA) Store(Zero, \_SB_.PCI0.AGPB.VGA_.TVA_) } If(LEqual(Local0, 0x3)) { Store("Both", Debug) Store(One, \_SB_.PCI0.AGPB.VGA_.CRTA) Store(One, \_SB_.PCI0.AGPB.VGA_.LCDA) Store(Zero, \_SB_.PCI0.AGPB.VGA_.TVA_) } If(LEqual(Local0, 0x4)) { Store("TV", Debug) Store(Zero, \_SB_.PCI0.AGPB.VGA_.TOGF) Store(Zero, \_SB_.PCI0.AGPB.VGA_.CRTA) Store(Zero, \_SB_.PCI0.AGPB.VGA_.LCDA) Store(One, \_SB_.PCI0.AGPB.VGA_.TVA_) } Notify(\_SB_.PCI0.AGPB.VGA_, 0x80) } Else { Store(0x9f, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) } } Method(_Q10) { Store(Zero, \_SB_.INF_) Store(0x9e, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) } Method(_Q11) { Store(One, \_SB_.INF_) Store(0x9e, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) } OperationRegion(PARA, SystemIO, 0x0378, 0x1) Field(PARA, ByteAcc, NoLock, Preserve) { PDEB, 8 } OperationRegion(THTL, SystemIO, 0x1010, 0x1) Field(THTL, ByteAcc, NoLock, Preserve) { , 1, THDT, 3, THEN, 1 } Method(_Q81) { Store(0x1, \_SB_.THER) Store(0x80, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) } Method(_Q82) { Store(0x0, \_SB_.THER) Store(0x81, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) } Method(_Q89) { Store(0x9d, \_SB_.BCMD) Store(Zero, \_SB_.SMIC) } Method(_Q84) { Acquire(MUT0, 0xffff) If(LEqual(\_SB_.LACH, 0x0)) { Store(\_SB_.PCI0.LPC0.EC0_.ACDF, \_SB_.PACS) Store(0x1, \_SB_.LACH) } Store(\_SB_.PCI0.LPC0.EC0_.ACDF, \_SB_.ACST) Release(MUT0) Acquire(MUT0, 0xffff) BPOL(0x4) Release(MUT0) Store(One, \_SB_.ACOK) SELE() If(LEqual(ACEV, 0x1)) { Store(0x0, ACEV) XOr(ACIN, 0x1, ACFK) Sleep(0x5) } If(LEqual(B1EV, 0x1)) { Store(0x0, B1EV) \_SB_.BAT1.SEBI() } If(LEqual(B2EV, 0x1)) { Store(0x0, B2EV) \_SB_.BAT2.SEBI() } } } } Device(HUB_) { Name(_ADR, 0x001e0000) Name(_PRT, Package(0x5) { Package(0x4) { 0x0004ffff, 0x0, \_SB_.PCI0.LPC0.LNKB, 0x0, }, Package(0x4) { 0x0004ffff, 0x1, \_SB_.PCI0.LPC0.LNKC, 0x0, }, Package(0x4) { 0x0005ffff, 0x0, \_SB_.PCI0.LPC0.LNKE, 0x0, }, Package(0x4) { 0x0006ffff, 0x0, \_SB_.PCI0.LPC0.LNKD, 0x0, }, Package(0x4) { 0x0008ffff, 0x0, \_SB_.PCI0.LPC0.LNKE, 0x0, }, }) Device(LAN_) { Name(_ADR, 0x00080000) Name(_PRW, Package(0x2) { 0xb, 0x3, }) } Name(_PRW, Package(0x2) { 0xb, 0x3, }) Device(CRD0) { Name(_ADR, 0x00060000) Name(_PRW, Package(0x2) { 0xb, 0x3, }) Method(_INI) { Or(CD3C, 0xff, CD3C) And(CD44, 0xffff0000, CD44) And(PMEE, 0x0, PMEE) } Method(_PSC) { Store(PWST, Local0) Return(Local0) } Method(_PS0) { Store(0x1, PMST) } Method(_PS2) { Store(0x1, PMST) } Method(_PS3) { Store(0x1, PMST) } OperationRegion(CCRD, PCI_Config, 0x0, 0xa8) Field(CCRD, DWordAcc, Lock, Preserve) { Offset(0x3c), CD3C, 32, Offset(0x44), CD44, 32, Offset(0x80), PMEE, 1, Offset(0x81), Offset(0xa4), PWST, 2, Offset(0xa5), , 7, PMST, 1 } } } Device(IDE_) { Name(_ADR, 0x001f0001) OperationRegion(IDEC, PCI_Config, 0x0, 0x58) Field(IDEC, DWordAcc, NoLock, Preserve) { SBA1, 16, Offset(0x40), PTIM, 16, STIM, 16, PST1, 4, SST1, 4, Offset(0x48), PSD0, 1, PSD1, 1, SSD0, 1, SSD1, 1, Offset(0x4a), PCT0, 2, , 2, PCT1, 2, Offset(0x4b), SCT0, 2, , 2, SCT1, 2, Offset(0x54), PCB0, 1, PCB1, 1, SCB0, 1, SCB1, 1, PCC0, 1, PCC1, 1, SCC0, 1, SCC1, 1, , 2, WPPE, 1, , 1, PMCB, 1, PSCB, 1, SMCB, 1, SSCB, 1, PSIG, 2, SSIG, 2, PUD0, 1, PUD1, 1, SUD0, 1, SUD1, 1 } Name(BUF0, Ones) Name(BUF1, Ones) Name(BUF2, Ones) Name(BUF3, Ones) Method(_PS3) { Store(PTIM, BUF0) Store(STIM, BUF1) Store(WPPE, BUF2) } Method(_PS0) { If(LNot(LEqual(BUF2, Ones))) { And(BUF0, 0x8044, Local0) And(PTIM, 0x7fbb, Local1) Or(Local0, Local1, PTIM) And(BUF1, 0x8044, Local0) And(STIM, 0x7fbb, Local1) Or(Local0, Local1, STIM) Store(BUF2, WPPE) Store(Ones, BUF2) } } Device(PIDE) { Name(_ADR, 0x0) Method(_GTM) { Return(Buffer(0x14) {0x78, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x78, 0x0, 0x0, 0x0, 0x8, 0x0, 0x0, 0x0, 0x1f, 0x0, 0x0, 0x0 }) } Method(_STM, 3) { Store(0x1, WPPE) SPT0(Arg0, Arg1) SPT1(Arg0, Arg2) } Device(P_D0) { Name(_ADR, 0x0) Method(_GTF) { Name(BUFF, Buffer(0xe) {0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef }) CreateByteField(BUFF, 0x1, PMD0) CreateByteField(BUFF, 0x8, DMD0) Store(GPD0(PTIM), PMD0) Store(GDD0(PSD0, PCT0, PCB0, PMCB, PMD0), DMD0) Return(BUFF) } } Device(P_D1) { Name(_ADR, 0x1) Method(_GTF) { Name(BUFF, Buffer(0xe) {0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xef }) CreateByteField(BUFF, 0x1, PMD1) CreateByteField(BUFF, 0x8, DMD1) Store(GPD1(PTIM, PST1), PMD1) Store(GDD1(PSD1, PCT1, PCB1, PSCB, PMD1), DMD1) Return(BUFF) } } Method(_PS0) { } Method(_PS3) { } } Device(SECN) { Name(_ADR, 0x1) Method(_INI) { Or(0x8000, STIM, STIM) Store(0x7, \_SB_.PCI0.LPC0.BAYD) If(LNot(LEqual(\_SB_.PCI0.LPC0.BAYD, 0x5))) { Store(0x1, SSIG) } If(LEqual(\_SB_.PCI0.LPC0.BAYD, 0x7)) { Store(0x0, \_SB_.PCI0.IDE_.SECN.DBAY.DPWR) Store(0x1, \_SB_.PCI0.LPC0.LV33) } } Method(_GTM) { Return(Buffer(0x14) {0x78, 0x0, 0x0, 0x0, 0x3c, 0x0, 0x0, 0x0, 0x78, 0x0, 0x0, 0x0, 0x3c, 0x0, 0x0, 0x0, 0x1f, 0x0, 0x0, 0x0 }) } Method(_STM, 3) { Store(0x1, WPPE) SST0(Arg0, Arg1) } Device(DBAY) { Name(_ADR, 0x0) Method(_GTF) { Name(BUFF, Buffer(0xe) {0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef }) CreateByteField(BUFF, 0x1, PMD0) CreateByteField(BUFF, 0x8, DMD0) Store(GPD0(STIM), PMD0) Store(GDD0(SSD0, SCT0, SCB0, SMCB, PMD0), DMD0) Return(BUFF) } Name(DPWR, 0x1) Method(_EJ0, 1) { If(Arg0) { Store(0x1, SSIG) And(STIM, 0xfffd, STIM) Store(0x0, DPWR) Store(0x1, \_SB_.PCI0.LPC0.LV33) Sleep(0x32) } } Method(_STA) { Store(0x7, \_SB_.PCI0.LPC0.BAYD) If(DPWR) { If(LEqual(\_SB_.PCI0.LPC0.BAYD, 0x5)) { Return(0xf) } } Return(0x8) } } Device(S_D1) { Name(_ADR, 0x1) Method(_GTF) { Name(BUFF, Buffer(0xe) {0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xef }) CreateByteField(BUFF, 0x1, PMD1) CreateByteField(BUFF, 0x8, DMD1) Store(GPD1(STIM, SST1), PMD1) Store(GDD1(SSD1, SCT1, SCB1, SSCB, PMD1), DMD1) Return(BUFF) } } } Method(GPIO, 4) { If(LOr(Arg1, LNot(LAnd(LAnd(Arg0, 0x4000), Arg1)))) { If(LEqual(And(Arg0, 0x9, ), 0x0)) { Return(0xffffffff) } If(LEqual(And(Arg0, 0x9, ), 0x8)) { Return(0x0384) } ShiftRight(And(Arg0, 0x0300, ), 0x8, Local0) ShiftRight(And(Arg0, 0x3000, ), 0xc, Local1) Return(Multiply(0x1e, Subtract(0x9, Add(Local0, Local1, ), ), )) } Else { If(LNot(Arg3)) { And(Arg2, 0x3, Local0) ShiftRight(And(Arg2, 0xc, ), 0x2, Local1) } Else { ShiftRight(And(Arg2, 0x30, ), 0x4, Local0) ShiftRight(And(Arg2, 0xc0, ), 0x6, Local1) } Return(Multiply(0x1e, Subtract(0x9, Add(Local0, Local1, ), ), )) } } Method(GDMA, 4) { If(Arg0) { If(Arg1) { Return(0x8) } If(Arg2) { Return(Multiply(Subtract(0x4, Arg3, ), 0xf, )) } Return(Multiply(Subtract(0x4, Arg3, ), 0x1e, )) } Return(0xffffffff) } Method(GFLG, 3) { Store(Zero, Local0) If(Arg0) { Or(Local0, 0x1, Local0) } If(And(Arg2, 0x2, )) { Or(Local0, 0x2, Local0) } If(Arg1) { Or(Local0, 0x4, Local0) } If(And(Arg2, 0x20, )) { Or(Local0, 0x8, Local0) } Or(Local0, 0x10, Local0) Return(Local0) } Method(SPT0, 2) { CreateDWordField(Arg0, 0x0, PIO0) CreateDWordField(Arg0, 0x4, DMA0) CreateDWordField(Arg0, 0x10, FLAG) CreateWordField(Arg1, 0x62, CAPB) CreateWordField(Arg1, 0x6a, W530) CreateWordField(Arg1, 0x7e, DMAM) CreateWordField(Arg1, 0x80, APIO) CreateWordField(Arg1, 0xb0, DMAE) If(LEqual(SizeOf(Arg1), 0x0200)) { And(PTIM, 0x40f0, PTIM) Store(0x0, PSD0) Store(0x0, PCT0) Store(0x0, PCB0) Store(0x0, PCC0) Store(0x0, PMCB) Store(0x0, PUD0) Or(PTIM, 0x8004, PTIM) If(LAnd(And(FLAG, 0x2, ), And(CAPB, 0x0800, ))) { Or(PTIM, 0x2, PTIM) } Or(PTIM, SPIO(PIO0, W530, APIO), PTIM) If(LAnd(And(FLAG, 0x1, ), And(W530, 0x4, ))) { If(And(DMAE, 0x3f, )) { If(And(DMAE, 0x8, )) { Store(0x0, PCB0) Store(0x3c, DMA0) } If(And(DMAE, 0x10, )) { Store(0x1, PCB0) Store(0x1e, DMA0) } If(And(DMAE, 0x20, )) { Store(0x1, PMCB) Store(0x1, PUD0) Store(0x8, DMA0) } Store(0x1, PSD0) Store(SDMA(DMA0), PCT0) } } } } Method(SPT1, 2) { CreateDWordField(Arg0, 0x8, PIO1) CreateDWordField(Arg0, 0xc, DMA1) CreateDWordField(Arg0, 0x10, FLAG) CreateWordField(Arg1, 0x62, CAPB) CreateWordField(Arg1, 0x6a, W530) CreateWordField(Arg1, 0x7e, DMAM) CreateWordField(Arg1, 0x80, APIO) CreateWordField(Arg1, 0xb0, DMAE) If(LEqual(SizeOf(Arg1), 0x0200)) { And(PTIM, 0x3f0f, PTIM) Store(0x0, PST1) Store(0x0, PSD1) Store(0x0, PCT1) Store(0x0, PCB1) Store(0x0, PCC1) Store(0x0, PSCB) Store(0x0, PUD1) Or(PTIM, 0x8040, PTIM) If(LAnd(And(FLAG, 0x8, ), And(CAPB, 0x0800, ))) { Or(PTIM, 0x20, PTIM) } Or(PTIM, 0x10, PTIM) If(LAnd(And(FLAG, 0x4, ), And(W530, 0x4, ))) { If(And(DMAE, 0x3f, )) { If(And(DMAE, 0x8, )) { Store(0x0, PCB1) Store(0x3c, DMA1) } If(And(DMAE, 0x10, )) { Store(0x1, PCB1) Store(0x1e, DMA1) } If(And(DMAE, 0x20, )) { Store(0x1, PSCB) Store(0x8, DMA1) Store(0x1, PUD1) } Store(0x1, PSD1) Store(SDMA(DMA1), PCT1) } } } } Method(SST0, 2) { CreateDWordField(Arg0, 0x0, PIO0) CreateDWordField(Arg0, 0x4, DMA0) CreateDWordField(Arg0, 0x10, FLAG) CreateWordField(Arg1, 0x62, CAPB) CreateWordField(Arg1, 0x6a, W530) CreateWordField(Arg1, 0x7e, DMAM) CreateWordField(Arg1, 0x80, APIO) CreateWordField(Arg1, 0xb0, DMAE) If(LEqual(SizeOf(Arg1), 0x0200)) { And(STIM, 0x40f0, STIM) Store(0x0, SSD0) Store(0x0, SCT0) Store(0x0, SCB0) Store(0x0, SCC0) Store(0x0, SMCB) Store(0x0, SUD0) Or(STIM, 0x8004, STIM) If(LAnd(And(FLAG, 0x2, ), And(CAPB, 0x0800, ))) { Or(STIM, 0x2, STIM) } Or(STIM, SPIO(PIO0, W530, APIO), STIM) If(LAnd(And(FLAG, 0x1, ), And(W530, 0x4, ))) { If(And(DMAE, 0x3f, )) { If(And(DMAE, 0x8, )) { Store(0x0, SCB0) Store(0x3c, DMA0) } Store(0x1, SSD0) Store(SDMA(DMA0), SCT0) } } } } Method(SST2, 2) { } Method(SPIO, 3) { If(LGreater(Arg0, 0xf0)) { Return(0x8) } If(And(Arg1, 0x2, )) { If(LAnd(LNot(LGreater(Arg0, 0x78)), And(Arg2, 0x2, ))) { Return(0x2301) } If(LAnd(LNot(LGreater(Arg0, 0xb4)), And(Arg2, 0x1, ))) { Return(0x2101) } } Return(0x1001) } Method(SETT, 3) { If(And(Arg1, 0x2, )) { If(LAnd(LNot(LGreater(Arg0, 0x78)), And(Arg2, 0x2, ))) { Return(0xb) } If(LAnd(LNot(LGreater(Arg0, 0xb4)), And(Arg2, 0x1, ))) { Return(0x9) } } Return(0x4) } Method(SDMA, 1) { If(LNot(LGreater(Arg0, 0x17))) { Return(0x1) } If(LNot(LGreater(Arg0, 0x1e))) { Return(0x2) } If(LNot(LGreater(Arg0, 0x2d))) { Return(0x1) } If(LNot(LGreater(Arg0, 0x3c))) { Return(0x2) } If(LNot(LGreater(Arg0, 0x5a))) { Return(0x1) } Return(0x0) } Method(GPD0, 1) { If(And(Arg0, 0x2, )) { If(LEqual(And(Arg0, 0x9, ), 0x8)) { Store(0x8, Local7) } Else { Store(0xa, Local7) ShiftRight(And(Arg0, 0x0300, ), 0x8, Local0) ShiftRight(And(Arg0, 0x3000, ), 0xc, Local1) Add(Local0, Local1, Local2) If(LEqual(Local2, 0x3)) { Store(0xb, Local7) } If(LEqual(Local2, 0x5)) { Store(0xc, Local7) } } } Else { Store(0x1, Local7) } Return(Local7) } Method(GDD0, 5) { If(Arg0) { Store(Or(Arg1, 0x40, ), Local7) If(Arg2) { Add(Local7, 0x2, Local7) } If(Arg3) { Store(0x45, Local7) } } Else { Or(Subtract(And(Arg4, 0x7, ), 0x2, ), 0x20, Local7) } Return(Local7) } Method(GPD1, 2) { If(And(Arg0, 0x20, )) { If(LEqual(And(Arg0, 0x90, ), 0x80)) { Store(0x8, Local7) } Else { Add(And(Arg1, 0x3, ), ShiftRight(And(Arg1, 0xc, ), 0x2, ), Local0) If(LEqual(Local0, 0x5)) { Store(0xc, Local7) } Else { If(LEqual(Local0, 0x3)) { Store(0xb, Local7) } Else { Store(0xa, Local7) } } } } Else { Store(0x1, Local7) } Return(Local7) } Method(GDD1, 5) { If(Arg0) { Store(Or(Arg1, 0x40, ), Local7) If(Arg2) { Add(Local7, 0x2, Local7) } If(Arg3) { Store(0x45, Local7) } } Else { Or(Subtract(And(Arg4, 0x7, ), 0x2, ), 0x20, Local7) } Return(Local7) } } Device(USB1) { Name(_ADR, 0x001d0000) OperationRegion(USBO, PCI_Config, 0xc4, 0x4) Field(USBO, DWordAcc, NoLock, Preserve) { RSEN, 2 } Name(_PRW, Package(0x2) { 0x3, 0x3, }) Method(_PSW, 1) { If(Arg0) { Store(0x3, RSEN) } Else { Store(0x0, RSEN) } } } Device(USB2) { Name(_ADR, 0x001d0001) OperationRegion(USBO, PCI_Config, 0xc4, 0x4) Field(USBO, DWordAcc, NoLock, Preserve) { RSEN, 2 } Name(_PRW, Package(0x2) { 0x4, 0x3, }) Method(_PSW, 1) { If(Arg0) { Store(0x3, RSEN) } Else { Store(0x0, RSEN) } } } Device(USB3) { Name(_ADR, 0x001d0002) OperationRegion(USBO, PCI_Config, 0xc4, 0x4) Field(USBO, DWordAcc, NoLock, Preserve) { RSEN, 2 } Name(_PRW, Package(0x2) { 0xc, 0x3, }) Method(_PSW, 1) { If(Arg0) { Store(0x3, RSEN) } Else { Store(0x0, RSEN) } } } Device(USB7) { Name(_ADR, 0x001d0007) } Device(SMBS) { Name(_ADR, 0x001f0003) Method(_PS3) { Stall(0x5) } Method(_PS0) { Store(0x0, \_GPE.HKFG) } Name(_PR0, Package(0x1) { PLPC, }) PowerResource(PLPC, 0, 0) { Method(_STA) { Return(0x1) } Method(_ON_) { Stall(0x5) } Method(_OFF) { Stall(0x5) } } } Device(AC97) { Name(_ADR, 0x001f0006) Name(_PRW, Package(0x2) { 0x5, 0x3, }) Method(_PS0) { Store("AC97_PS0", Debug) } Method(_PS3) { Store("AC97_PS3", Debug) } } Device(AUDI) { Name(_ADR, 0x001f0005) Method(_PS0) { Store("Audio_PS0", Debug) } Method(_PS3) { Store("Audio_PS3", Debug) } } } Device(PWRB) { Name(_HID, 0x0c0cd041) Name(_PRW, Package(0x2) { 0x18, 0x3, }) } Device(SLPB) { Name(_HID, 0x0e0cd041) } Device(LID_) { Name(_HID, 0x0d0cd041) Method(_LID) { If(\_SB_.OKEC) { Acquire(\_SB_.PCI0.LPC0.EC0_.MUT0, 0xffff) Store(\_SB_.PCI0.LPC0.EC0_.BANK, Local0) Store(0x1, \_SB_.PCI0.LPC0.EC0_.BANK) Store(\_SB_.PCI0.LPC0.EC0_.LIDS, Local1) Store(Local0, \_SB_.PCI0.LPC0.EC0_.BANK) Release(\_SB_.PCI0.LPC0.EC0_.MUT0) If(Local1) { Return(Zero) } Else { Return(One) } } Else { Return(Zero) } } } Device(ACAD) { Name(_HID, "ACPI0003") Name(_PCL, Package(0x1) { \_SB_, }) Name(AFST, 0x0) Name(ALST, 0x0) Name(FST_, 0x1) Method(_PSR) { Store(One, Local0) If(LEqual(\_SB_.ACOK, 0x0)) { Return(Local0) } Acquire(\_SB_.PCI0.LPC0.EC0_.MUT0, 0xffff) If(\_SB_.OKEC) { If(FST_) { If(\_SB_.PCI0.LPC0.EC0_.ACDF) { Store(0x1, \_SB_.PCI0.LPC0.EC0_.ACIN) Store(\_SB_.PCI0.LPC0.EC0_.ACIN, \_SB_.PCI0.LPC0.EC0_.ACFK) } Else { Store(0x0, \_SB_.PCI0.LPC0.EC0_.ACIN) Store(\_SB_.PCI0.LPC0.EC0_.ACIN, \_SB_.PCI0.LPC0.EC0_.ACFK) } Store(0x0, FST_) } If(LNot(AFST)) { Store("INIT BATO in acad.psr", Debug) Store("INIT BATO in acad.psr", Debug) Store(0x1, AFST) And(\_SB_.PCI0.LPC0.EC0_.BATO, 0x3f, \_SB_.PCI0.LPC0.EC0_.BATO) If(\_SB_.PCI0.LPC0.EC0_.ACIN) { Or(\_SB_.PCI0.LPC0.EC0_.BATO, 0xc0, \_SB_.PCI0.LPC0.EC0_.BATO) } Store(0x1, AFST) } } Store(\_SB_.PCI0.LPC0.EC0_.ACFK, Local0) If(LNot(LEqual(\_SB_.PCI0.LPC0.EC0_.ACFK, \_SB_.PCI0.LPC0.EC0_.ACIN))) { Store(\_SB_.PCI0.LPC0.EC0_.ACIN, \_SB_.PCI0.LPC0.EC0_.ACFK) Notify(\_SB_.ACAD, 0x0) } Release(\_SB_.PCI0.LPC0.EC0_.MUT0) Return(Local0) } Method(_STA) { Return(0xb) } } Method(VTOB, 1) { Store(0x1, Local0) ShiftLeft(Local0, Arg0, Local0) Return(Local0) } Method(BTOV, 1) { ShiftRight(Arg0, 0x1, Local0) Store(0x0, Local1) While(Local0) { Increment(Local1) ShiftRight(Local0, 0x1, Local0) } Return(Local1) } Method(MKWD, 2) { If(And(Arg1, 0x80, )) { Store(0xffff0000, Local0) } Else { Store(Zero, Local0) } Or(Local0, Arg0, Local0) Or(Local0, ShiftLeft(Arg1, 0x8, ), Local0) Return(Local0) } Method(GBFE, 3) { CreateByteField(Arg0, Arg1, TIDX) Store(TIDX, Arg2) } Method(PBFE, 3) { CreateByteField(Arg0, Arg1, TIDX) Store(Arg2, TIDX) } Name(CHAR, Package(0x10) { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", }) Method(ITOS, 2) { Store("", Local0) Store(Arg1, Local1) While(Local1) { Decrement(Local1) And(ShiftRight(Arg0, ShiftLeft(Local1, 0x2, ), ), 0xf, Local4) Store(DerefOf(Index(CHAR, Local4, )), Local2) Concatenate(Local0, Local2, Local5) Store(Local5, Local0) } Return(Local0) } Device(BAT1) { Name(_HID, 0x0a0cd041) Name(_UID, 0x1) Name(_PCL, Package(0x1) { \_SB_, }) Name(BFST, 0x0) Name(BSTC, 0x0) Name(PBIF, Package(0xd) { 0x1, 0x0e10, 0x0e10, 0x1, 0x2580, 0x0154, 0xaa, 0x4, 0x4, "3600", "00000000", "LION", " COMPAQ ", }) Name(PBST, Package(0x4) { 0x0, 0x07d0, 0x07d0, 0x2710, }) Name(B1ST, 0x1) Method(_STA) { Store(0xf, Local0) If(LEqual(IFOK, 0x0)) { Return(Local0) } If(\_SB_.OKEC) { If(B1ST) { Store(0x0, B1ST) If(\_SB_.PCI0.LPC0.EC0_.MBTS) { Store(0x1f, \_SB_.PCI0.LPC0.EC0_.BTIN) } Else { Store(0xf, \_SB_.PCI0.LPC0.EC0_.BTIN) } } If(LNot(BFST)) { Store("INIT BATO at BAT1._STA", Debug) Store(0x1, BFST) And(\_SB_.PCI0.LPC0.EC0_.BATO, 0xfe, \_SB_.PCI0.LPC0.EC0_.BATO) If(LEqual(\_SB_.PCI0.LPC0.EC0_.BTIN, 0x1f)) { Or(\_SB_.PCI0.LPC0.EC0_.BATO, 0x1, \_SB_.PCI0.LPC0.EC0_.BATO) } } } Else { Store(0xf, \_SB_.PCI0.LPC0.EC0_.BTIN) } Return(\_SB_.PCI0.LPC0.EC0_.BTIN) } Method(_BIF) { Return(PBIF) } Method(_BST) { If(LEqual(IFOK, 0x0)) { IVBS() } Acquire(\_SB_.PCI0.LPC0.EC0_.MUT0, 0xffff) If(\_SB_.OKEC) { If(\_SB_.PCI0.LPC0.EC0_.MBTS) { If(LEqual(SMUP, 0x1)) { Store(0x0, SMUP) } Else { SEBS() } } Else { IVBS() } } Release(\_SB_.PCI0.LPC0.EC0_.MUT0) Return(PBST) } Name(UBIF, 0x01e9) Name(MFCP, 0x0e10) Method(UPBI) { Store("========= BAT1 UPBI =========", Debug) Store(Zero, Local0) Store(0xc, Local1) Store(Buffer(0xd) {0x0, 0x18, 0x10, 0x0, 0x19, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1c, 0x22, 0x0 }, Local2) While(LGreater(Local1, 0xa)) { If(LNot(And(UBIF, VTOB(Local1), ))) { GBFE(Local2, Local1, RefOf(Local3)) If(Local3) { If(LNot(\_SB_.PCI0.LPC0.EC0_.SMRD(0xb, 0x16, Local3, RefOf(Local4)))) { GBFE(Local4, 0x20, RefOf(Local5)) PBFE(Local4, Local5, 0x0) Store(Local4, Index(PBIF, Local1, )) Or(UBIF, VTOB(Local1), UBIF) Store(Ones, Local0) } } } Decrement(Local1) } If(LEqual(Local1, 0xa)) { If(LNot(And(UBIF, VTOB(Local1), ))) { GBFE(Local2, Local1, RefOf(Local3)) If(Local3) { If(LNot(\_SB_.PCI0.LPC0.EC0_.SMRD(0x9, 0x16, Local3, RefOf(Local5)))) { Store(ITOS(ToBCD(Local5, ), 0x8), Index(PBIF, Local1, )) Or(UBIF, VTOB(Local1), UBIF) Store(Ones, Local0) } } } Decrement(Local1) Decrement(Local1) } While(LGreater(Local1, 0x0)) { If(LNot(And(UBIF, VTOB(Local1), ))) { GBFE(Local2, Local1, RefOf(Local3)) If(Local3) { If(LNot(\_SB_.PCI0.LPC0.EC0_.SMRD(0x9, 0x16, Local3, RefOf(Local5)))) { Store(Local5, Index(PBIF, Local1, )) If(LEqual(Local1, 0x1)) { Store(ITOS(ToBCD(Local5, ), 0x4), Index(PBIF, 0x9, )) } If(LEqual(Local1, 0x2)) { Store(Local5, MFCP) Multiply(Local5, 0xa, Local6) Divide(Local6, 0x64, Local6, Local7) Store(Local7, Index(PBIF, 0x5, )) Store(0x23, Index(PBIF, 0x6, )) } Or(UBIF, VTOB(Local1), UBIF) Store(Ones, Local0) } } } Decrement(Local1) } Store(" COMPAQ ", Index(PBIF, 0xc, )) Return(Local0) } Method(UPBS) { Store(Zero, Local0) Store(0x3, Local1) Store(Buffer(0x4) {0x0, 0xa, 0xf, 0x9 }, Local2) Store(Buffer(0x4) {0x1, 0x4, 0x4, 0x4 }, Local7) While(Local1) { GBFE(Local2, Local1, RefOf(Local3)) If(Local3) { If(LNot(\_SB_.PCI0.LPC0.EC0_.SMRD(0x9, 0x16, Local3, RefOf(Local5)))) { Store(Local5, Index(PBST, Local1, )) } } Decrement(Local1) } Store(0x0, Local0) Acquire(\_SB_.PCI0.LPC0.EC0_.MUT0, 0xffff) If(\_SB_.PCI0.LPC0.EC0_.ACDF) { If(LEqual(\_SB_.PCI0.LPC0.EC0_.MBTC, 0x1)) { Store("---NO ACEV Set Power State as charging", Debug) Or(0x2, Local0, Local0) } If(LEqual(\_SB_.PCI0.LPC0.EC0_.MBTD, 0x1)) { Store("---NO ACEV Set Power State as discharging", Debug) Or(0x1, Local0, Local0) } } Else { If(LEqual(\_SB_.PCI0.LPC0.EC0_.MBTD, 0x1)) { Store("---NO ACEV Set Power State as discharging", Debug) Or(0x1, Local0, Local0) } } Release(\_SB_.PCI0.LPC0.EC0_.MUT0) Store(Local0, Index(PBST, 0x0, )) Store(0x04b0, Local2) Store(Local2, Index(PBST, 0x1, )) } Method(IVBI) { Name(UBIF, 0x01e9) Store(0xffffffff, Index(PBIF, 0x1, )) Store(0xffffffff, Index(PBIF, 0x2, )) Store(0xffffffff, Index(PBIF, 0x4, )) } Method(IVBS) { Store(0x0, Index(PBST, 0x0, )) Store(0xffffffff, Index(PBST, 0x1, )) Store(0xffffffff, Index(PBST, 0x2, )) Store(0x2710, Index(PBST, 0x3, )) } Method(SEBS) { Store(0x0, Local0) If(\_SB_.PCI0.LPC0.EC0_.ACDF) { If(LEqual(\_SB_.PCI0.LPC0.EC0_.MBTC, 0x1)) { Or(0x2, Local0, Local0) } If(LEqual(\_SB_.PCI0.LPC0.EC0_.MBTD, 0x1)) { Or(0x1, Local0, Local0) } } Else { If(LEqual(\_SB_.PCI0.LPC0.EC0_.MBTD, 0x1)) { Or(0x1, Local0, Local0) } } If(\_SB_.BAT1.BSTC) { Store(Zero, \_SB_.BAT1.BSTC) Or(0x4, Local0, Local0) } Store(Local0, Index(PBST, 0x0, )) Store(\_SB_.PCI0.LPC0.EC0_.MVOT, Local5) Multiply(Local5, 0x4e20, Local5) Divide(Local5, 0x00010000, Local7, Index(PBST, 0x3, )) Store(0x04b0, Local2) Store(Local2, Index(PBST, 0x1, )) Store(\_SB_.PCI0.LPC0.EC0_.MRCP, Local1) Store(\_SB_.PCI0.LPC0.EC0_.MCAP, Local3) If(LEqual(Local3, 0x64)) { Store(MFCP, Local1) } If(LEqual(Local3, 0x63)) { Subtract(MFCP, 0x23, Local1) } If(LLess(Local3, 0x2)) { Store(Zero, Local1) } Store(Local1, Index(PBST, 0x2, )) Store("######bat1 pbst state, bcur, scap, svot", Debug) Store(Index(PBST, 0x0, ), Debug) Store(Index(PBST, 0x1, ), Debug) Store(Index(PBST, 0x2, ), Debug) Store(Index(PBST, 0x3, ), Debug) } Name(SMUP, 0x0) Name(IFOK, 0x0) Method(SEBI) { Store(Zero, IFOK) Acquire(\_SB_.PCI0.LPC0.EC0_.MUT0, 0xffff) If(\_SB_.PCI0.LPC0.EC0_.MBTS) { Store(\_SB_.PCI0.LPC0.EC0_.MIUS, Local0) Store(\_SB_.PCI0.LPC0.EC0_.AIUS, Local1) Release(\_SB_.PCI0.LPC0.EC0_.MUT0) If(LEqual(Local0, 0x0)) { \_SB_.PCI0.LPC0.EC0_.SMWR(0x8, 0x14, 0x1, 0x1fff) Acquire(\_SB_.PCI0.LPC0.EC0_.MUT0, 0xffff) Store(0x5, Local5) While(LGreater(Local5, 0x1)) { If(LEqual(\_SB_.PCI0.LPC0.EC0_.MIUS, 0x1)) { Store(0x0, Local5) } Else { Decrement(Local5) } } Release(\_SB_.PCI0.LPC0.EC0_.MUT0) If(Local5) { IVBI() IVBS() } Else { UPBI() UPBS() Store(0x1, SMUP) Store(0x1, IFOK) } Store(0x0fff, Local2) If(LEqual(Local1, 0x1)) { Or(Local2, 0x2000, Local3) } \_SB_.PCI0.LPC0.EC0_.SMWR(0x8, 0x14, 0x1, Local3) } Else { UPBI() UPBS() Store(0x1, SMUP) Store(0x1, IFOK) } } Else { Release(\_SB_.PCI0.LPC0.EC0_.MUT0) IVBI() IVBS() } } } Device(BAT2) { Name(_HID, 0x0a0cd041) Name(_UID, 0x2) Name(_PCL, Package(0x1) { \_SB_, }) Name(BFST, 0x0) Name(BSTC, 0x0) Name(PBIF, Package(0xd) { 0x1, 0x0c1c, 0x0c1c, 0x1, 0x2580, 0x0154, 0xaa, 0x4, 0x4, "3100", "COMPAQ", "LION", " COMPAQ ", }) Name(PBST, Package(0x4) { 0x0, 0x07d0, 0x07d0, 0x2710, }) Name(B1ST, 0x1) Method(_STA) { Store(0xf, Local0) If(LEqual(IFOK, 0x0)) { Return(Local0) } If(\_SB_.OKEC) { If(B1ST) { Store(0x0, B1ST) If(\_SB_.PCI0.LPC0.EC0_.SBTS) { Store(0x1f, \_SB_.PCI0.LPC0.EC0_.B2IN) } Else { Store(0xf, \_SB_.PCI0.LPC0.EC0_.B2IN) } } If(LNot(BFST)) { Store("INIT BATO at BAT2._STA", Debug) Store(0x1, BFST) And(\_SB_.PCI0.LPC0.EC0_.BATO, 0xfd, \_SB_.PCI0.LPC0.EC0_.BATO) If(LEqual(\_SB_.PCI0.LPC0.EC0_.B2IN, 0x1f)) { Or(\_SB_.PCI0.LPC0.EC0_.BATO, 0x2, \_SB_.PCI0.LPC0.EC0_.BATO) } } } Else { Store(0xf, \_SB_.PCI0.LPC0.EC0_.B2IN) } Return(\_SB_.PCI0.LPC0.EC0_.B2IN) } Method(_BIF) { Return(PBIF) } Method(_BST) { If(LEqual(IFOK, 0x0)) { IVBS() } Acquire(\_SB_.PCI0.LPC0.EC0_.MUT0, 0xffff) If(\_SB_.OKEC) { If(\_SB_.PCI0.LPC0.EC0_.SBTS) { If(LEqual(SMUP, 0x1)) { Store(0x0, SMUP) } Else { SEBS() } } Else { IVBS() } } Release(\_SB_.PCI0.LPC0.EC0_.MUT0) Return(PBST) } Name(UBIF, 0x01e9) Name(SFCP, 0x0c1c) Method(UPBI) { Store("========= BAT2 UPBI =========", Debug) Store(Zero, Local0) Store(0xc, Local1) Store(Buffer(0xd) {0x0, 0x18, 0x10, 0x0, 0x19, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1c, 0x22, 0x0 }, Local2) While(LGreater(Local1, 0xa)) { If(LNot(And(UBIF, VTOB(Local1), ))) { GBFE(Local2, Local1, RefOf(Local3)) If(Local3) { If(LNot(\_SB_.PCI0.LPC0.EC0_.SMRD(0xb, 0x16, Local3, RefOf(Local4)))) { GBFE(Local4, 0x20, RefOf(Local5)) PBFE(Local4, Local5, 0x0) Store(Local4, Index(PBIF, Local1, )) Or(UBIF, VTOB(Local1), UBIF) Store(Ones, Local0) } } } Decrement(Local1) } If(LEqual(Local1, 0xa)) { If(LNot(And(UBIF, VTOB(Local1), ))) { GBFE(Local2, Local1, RefOf(Local3)) If(Local3) { If(LNot(\_SB_.PCI0.LPC0.EC0_.SMRD(0x9, 0x16, Local3, RefOf(Local5)))) { Store(ITOS(ToBCD(Local5, ), 0x8), Index(PBIF, Local1, )) Or(UBIF, VTOB(Local1), UBIF) Store(Ones, Local0) } } } Decrement(Local1) Decrement(Local1) } While(LGreater(Local1, 0x0)) { If(LNot(And(UBIF, VTOB(Local1), ))) { GBFE(Local2, Local1, RefOf(Local3)) If(Local3) { If(LNot(\_SB_.PCI0.LPC0.EC0_.SMRD(0x9, 0x16, Local3, RefOf(Local5)))) { Store(Local5, Index(PBIF, Local1, )) If(LEqual(Local1, 0x1)) { Store(ITOS(ToBCD(Local5, ), 0x4), Index(PBIF, 0x9, )) } If(LEqual(Local1, 0x2)) { Store(Local5, SFCP) Multiply(Local5, 0xa, Local6) Divide(Local6, 0x64, Local6, Local7) Store(Local7, Index(PBIF, 0x5, )) Store(0x19, Index(PBIF, 0x6, )) } Or(UBIF, VTOB(Local1), UBIF) Store(Ones, Local0) } } } Decrement(Local1) } Store(" COMPAQ ", Index(PBIF, 0xc, )) Return(Local0) } Method(UPBS) { Store(Zero, Local0) Store(0x3, Local1) Store(Buffer(0x4) {0x0, 0xa, 0xf, 0x9 }, Local2) Store(Buffer(0x4) {0x1, 0x4, 0x4, 0x4 }, Local7) While(Local1) { GBFE(Local2, Local1, RefOf(Local3)) If(Local3) { If(LNot(\_SB_.PCI0.LPC0.EC0_.SMRD(0x9, 0x16, Local3, RefOf(Local5)))) { Store(Local5, Index(PBST, Local1, )) } } Decrement(Local1) } Store(0x0, Local0) Acquire(\_SB_.PCI0.LPC0.EC0_.MUT0, 0xffff) If(\_SB_.PCI0.LPC0.EC0_.ACDF) { If(LEqual(\_SB_.PCI0.LPC0.EC0_.SBTC, 0x1)) { Store("---NO ACEV Set Power State as charging", Debug) Or(0x2, Local0, Local0) } If(LEqual(\_SB_.PCI0.LPC0.EC0_.SBTD, 0x1)) { Store("---NO ACEV Set Power State as discharging", Debug) Or(0x1, Local0, Local0) } } Else { If(LEqual(\_SB_.PCI0.LPC0.EC0_.SBTD, 0x1)) { Store("---NO ACEV Set Power State as discharging", Debug) Or(0x1, Local0, Local0) } } Release(\_SB_.PCI0.LPC0.EC0_.MUT0) Store(Local0, Index(PBST, 0x0, )) Store(0x05dc, Local2) Store(Local2, Index(PBST, 0x1, )) } Method(IVBI) { Name(UBIF, 0x01e9) Store(0xffffffff, Index(PBIF, 0x1, )) Store(0xffffffff, Index(PBIF, 0x2, )) Store(0xffffffff, Index(PBIF, 0x4, )) } Method(IVBS) { Store(0x0, Index(PBST, 0x0, )) Store(0xffffffff, Index(PBST, 0x1, )) Store(0xffffffff, Index(PBST, 0x2, )) Store(0x2710, Index(PBST, 0x3, )) } Method(SEBS) { Store(0x0, Local0) If(\_SB_.PCI0.LPC0.EC0_.ACDF) { If(LEqual(\_SB_.PCI0.LPC0.EC0_.SBTC, 0x1)) { Or(0x2, Local0, Local0) } If(LEqual(\_SB_.PCI0.LPC0.EC0_.SBTD, 0x1)) { Or(0x1, Local0, Local0) } } Else { If(LEqual(\_SB_.PCI0.LPC0.EC0_.SBTD, 0x1)) { Or(0x1, Local0, Local0) } } If(\_SB_.BAT2.BSTC) { Store(Zero, \_SB_.BAT2.BSTC) Or(0x4, Local0, Local0) } Store(Local0, Index(PBST, 0x0, )) Store(\_SB_.PCI0.LPC0.EC0_.MVOT, Local5) Multiply(Local5, 0x4e20, Local5) Divide(Local5, 0x00010000, Local7, Index(PBST, 0x3, )) Store(0x05dc, Local2) Store(Local2, Index(PBST, 0x1, )) Store(\_SB_.PCI0.LPC0.EC0_.ARCP, Local1) Store(\_SB_.PCI0.LPC0.EC0_.SCAP, Local3) If(LEqual(Local3, 0x64)) { Store(SFCP, Local1) } If(LEqual(Local3, 0x63)) { Subtract(SFCP, 0x19, Local1) } If(LLess(Local3, 0x2)) { Store(Zero, Local1) } Store(Local1, Index(PBST, 0x2, )) Store("######bat2 pbst state, bcur, scap, svot", Debug) Store(Index(PBST, 0x0, ), Debug) Store(Index(PBST, 0x1, ), Debug) Store(Index(PBST, 0x2, ), Debug) Store(Index(PBST, 0x3, ), Debug) } Name(SMUP, 0x0) Name(IFOK, 0x0) Method(SEBI) { Store(Zero, IFOK) Acquire(\_SB_.PCI0.LPC0.EC0_.MUT0, 0xffff) If(\_SB_.PCI0.LPC0.EC0_.SBTS) { Store(\_SB_.PCI0.LPC0.EC0_.AIUS, Local0) Store(\_SB_.PCI0.LPC0.EC0_.MIUS, Local1) Release(\_SB_.PCI0.LPC0.EC0_.MUT0) If(LEqual(Local0, 0x0)) { \_SB_.PCI0.LPC0.EC0_.SMWR(0x8, 0x14, 0x1, 0x2fff) Acquire(\_SB_.PCI0.LPC0.EC0_.MUT0, 0xffff) Store(0x5, Local5) While(LGreater(Local5, 0x1)) { If(LEqual(\_SB_.PCI0.LPC0.EC0_.AIUS, 0x1)) { Store(0x0, Local5) } Else { Decrement(Local5) } } Release(\_SB_.PCI0.LPC0.EC0_.MUT0) If(Local5) { IVBI() IVBS() } Else { UPBI() UPBS() Store(0x1, SMUP) Store(0x1, IFOK) } Store(0x0fff, Local2) If(LEqual(Local1, 0x1)) { Or(Local2, 0x1000, Local3) } \_SB_.PCI0.LPC0.EC0_.SMWR(0x8, 0x14, 0x1, Local3) } Else { UPBI() UPBS() Store(0x1, SMUP) Store(0x1, IFOK) } } Else { Release(\_SB_.PCI0.LPC0.EC0_.MUT0) IVBI() IVBS() } } } Scope(\_TZ_) { Name(TPL_, 0x0d9a) Name(TACT, 0x0dfe) Name(TPAS, 0x0e62) Name(TPC_, 0x0e94) Name(TPTM, 0x0ca0) Name(TBSE, 0x0aac) Name(PLCY, 0x0) ThermalZone(THRM) { Method(_CRT) { Return(TPC_) } Method(_PSV) { Return(TPAS) } Name(_PSL, Package(0x1) { \_PR_.CPU0, }) Name(_TC1, 0x2) Name(_TC2, 0x3) Name(_TSP, 0x28) Name(INBT, 0x0) Method(_TMP) { If(\_SB_.OKEC) { If(LEqual(INBT, 0x0)) { Store(0x1, INBT) \_SB_.BAT1.SEBI() \_SB_.BAT2.SEBI() Notify(\_SB_.ACAD, 0x0) Notify(\_SB_.BAT1, 0x81) Notify(\_SB_.BAT1, 0x80) Notify(\_SB_.BAT2, 0x81) Notify(\_SB_.BAT2, 0x80) } Acquire(\_SB_.PCI0.LPC0.EC0_.MUT0, 0xffff) Store(\_SB_.PCI0.LPC0.EC0_.TMP_, Local0) Release(\_SB_.PCI0.LPC0.EC0_.MUT0) Store("Current Temperature C is ----------- ", Debug) Store(Local0, Debug) If(LGreater(Local0, 0x56)) { Store(0x56, Local0) } Store(Local0, Local2) Multiply(Local0, 0xa, Local1) Add(Local1, TBSE, Local0) Store("Current Temperature K is ----------- ", Debug) Store(Local0, Debug) Return(Local0) } Else { Return(TPTM) } } Method(_SCP, 1) { Store(Arg0, PLCY) } Name(TRP2, 0x0) Method(CHTR, 1) { If(LNot(LGreater(Arg0, 0x4d))) { Store(0x0, \_SB_.PCI0.LPC0.TREN) Store(0x0, TRP2) } Else { If(LEqual(TRP2, 0x0)) { If(LAnd(LNot(LLess(Arg0, 0x51)), LLess(Arg0, 0x55))) { Store(0x3, \_SB_.PCI0.LPC0.TRDC) Store(0x1, \_SB_.PCI0.LPC0.TREN) } Else { If(LNot(LLess(Arg0, 0x55))) { Store(0x1, TRP2) Store(0x6, \_SB_.PCI0.LPC0.TRDC) Store(0x1, \_SB_.PCI0.LPC0.TREN) } } } Else { If(LNot(LGreater(Arg0, 0x51))) { Store(0x0, TRP2) Store(0x3, \_SB_.PCI0.LPC0.TRDC) Store(0x1, \_SB_.PCI0.LPC0.TREN) } } } } } } OperationRegion(EXCO, SystemIO, 0x72, 0x2) Field(EXCO, ByteAcc, NoLock, Preserve) { INDX, 8, DATA, 8 } IndexField(INDX, DATA, ByteAcc, NoLock, Preserve) { Offset(0x20), ACST, 1, PACS, 1, LACH, 1, GEYO, 1, THER, 1 } } OperationRegion(MNVS, SystemMemory, 0x1ff73e7d, 0x20) Field(MNVS, AnyAcc, Lock, Preserve) { OSYS, 16, ACON, 8, WRK0, 1, WRK1, 1, WRK2, 1, Offset(0x4), P4EN, 8, THRT, 8 } } /* BOOT: Length=40, Revision=1, Checksum=164, OEMID=PTLTD, OEM Table ID=$SBFTBL$, OEM Revision=0x6040000, Creator ID= LTP, Creator Revision=0x1 */