From: joerg%NetBSD.org@localhost Subject: Re: kern/36838 (pci bus is disabled on ACPI kernel on Fujitsu FMV LOOX P70WN.) Date: Thu, 22 May 2008 20:57:00 +0000 (UTC) > Synopsis: pci bus is disabled on ACPI kernel on Fujitsu FMV LOOX P70WN. > > Responsible-Changed-From-To: kern-bug-people->joerg > Responsible-Changed-By: joerg%NetBSD.org@localhost > Responsible-Changed-When: Thu, 22 May 2008 20:56:58 +0000 > Responsible-Changed-Why: > ACPI bug > > > State-Changed-From-To: open->feedback > State-Changed-By: joerg%NetBSD.org@localhost > State-Changed-When: Thu, 22 May 2008 20:56:58 +0000 > State-Changed-Why: > Can you please provide me the DSDT? acpidump will help. DSDT and ASL are attached to this e-mail. DSDT and ASL are output of # acpidump -r -o looxp70wm.dsdt > looxp70wm.asl -- Ryo ONODERA // ryo%rf7.so-net.ne.jp@localhost PGP fingerprint = 82A2 DC91 76E0 A10A 8ABB FD1B F404 27FA C7D1 15F3
Attachment:
looxp70wm.dsdt
Description: Binary data
/* RSD PTR: Checksum=73, OEMID=FUJ, RsdtAddress=0x3f662688 */ /* RSDT: Length=72, Revision=1, Checksum=215, OEMID=FUJ, OEM Table ID=PC, OEM Revision=0x1130000, Creator ID=FUJ, Creator Revision=0x100 */ /* Entries={ 0x3f668f8c, 0x3f668170, 0x3f6681ac, 0x3f668688, 0x3f668b07, 0x3f668d5c, 0x3f668db6, 0x3f668dee, 0x3f668e16 } */ /* DSDT=0x3f6626d8 INT_MODEL=PIC SCI_INT=9 SMI_CMD=0xb2, ACPI_ENABLE=0xf0, ACPI_DISABLE=0xf1, S4BIOS_REQ=0x0 PM1a_EVT_BLK=0x1000-0x1003 PM1a_CNT_BLK=0x1004-0x1005 PM2_CNT_BLK=0x1020-0x1020 PM2_TMR_BLK=0x1008-0x100b PM2_GPE0_BLK=0x1028-0x102f P_LVL2_LAT=1ms, P_LVL3_LAT=100ms FLUSH_SIZE=0, FLUSH_STRIDE=0 DUTY_OFFSET=0, DUTY_WIDTH=0 DAY_ALRM=13, MON_ALRM=0, CENTURY=50 Flags={WBINVD,PROC_C1,SLP_BUTTON,RTC_S4} */ /* DSDT: Length=23192, Revision=1, Checksum=37, OEMID=FUJ, OEM Table ID=FJNB1C5, OEM Revision=0x1130000, Creator ID=MSFT, Creator Revision=0x100000e */ DefinitionBlock ("acpi_dst.aml", "DSDT", 0x1, "FUJ", "FJNB1C5", 0x1130000) { Name(BIDT, Buffer(0x10) {0x0, 0x1, 0x2, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 }) Name(BMNT, Package(0x04) { "CP229720\x20\x2f\x20CP229721", "CP229725\x20\x2f\x20CP229726", "CP240501", "CP240517", }) Name(BMST, Package(0x04) { "CP229720", "CP229725", "CP240501", "CP240517", }) Scope(\_PR) { Processor(CPU0, 0, 0x1010, 0x6) { } Processor(CPU1, 1, 0x1010, 0x6) { } } Scope(\_SB) { Name(OSTB, Ones) OperationRegion(OSTY, SystemMemory, 0x3f669ef6, 0x00000001) Field(OSTY, AnyAcc, NoLock, Preserve) { TPOS, 8 } Method(OSTP) { If(LEqual(^OSTB, Ones)) { If(CondRefOf(\_OSI, Local0)) { If(\_OSI("Windows\x202006")) { Store(0x40, ^OSTB) Store(0x40, ^TPOS) } Else { If(\_OSI("Windows\x202001.1")) { Store(0x20, ^OSTB) Store(0x20, ^TPOS) } Else { If(\_OSI("Windows\x202001\x20SP1")) { Store(0x10, ^OSTB) Store(0x10, ^TPOS) } Else { If(\_OSI("Windows\x202001")) { Store(0x08, ^OSTB) Store(0x08, ^TPOS) } Else { Store(0x00, ^OSTB) Store(0x00, ^TPOS) } } } } } Else { If(CondRefOf(\_OS, Local0)) { If(^SEQL(\_OS, "Microsoft\x20Windows")) { Store(0x01, ^OSTB) Store(0x01, ^TPOS) } Else { If(^SEQL(\_OS, "Microsoft\x20WindowsME\x3a\x20Millennium\x20Edition")) { Store(0x02, ^OSTB) Store(0x02, ^TPOS) } Else { If(^SEQL(\_OS, "Microsoft\x20Windows\x20NT")) { Store(0x04, ^OSTB) Store(0x04, ^TPOS) } Else { Store(0x00, ^OSTB) Store(0x00, ^TPOS) } } } } Else { Store(0x00, ^OSTB) Store(0x00, ^TPOS) } } } Return(^OSTB) } Method(SEQL, 2, Serialized) { Store(SizeOf(Arg0), Local0) Store(SizeOf(Arg1), Local1) If(LNot(LEqual(Local0, Local1))) { Return(Zero) } Name(BUF0, Buffer(Local0) { }) Store(Arg0, BUF0) Name(BUF1, Buffer(Local0) { }) Store(Arg1, BUF1) Store(Zero, Local2) While(LLess(Local2, Local0)) { Store(DerefOf(Index(BUF0, Local2, )), Local3) Store(DerefOf(Index(BUF1, Local2, )), Local4) If(LNot(LEqual(Local3, Local4))) { Return(Zero) } Increment(Local2) } Return(One) } } Name(FWSO, Zero) Name(RPEN, Zero) Name(RPDS, Zero) Name(EXIS, 0xff) Name(PLWM, Zero) Name(PTAL, Zero) Name(ECCI, 0x03) Name(GINT, Zero) Name(RGSI, 0x18) Name(LIDS, Zero) Name(VSTH, Zero) Name(HDWA, Zero) Name(\GPIC, 0x00) Method(\_PIC, 1) { Store(Arg0, GPIC) } Scope(\_SB) { OperationRegion(PSIO, SystemIO, 0x00000f40, 0x00000002) OperationRegion(PSBF, SystemMemory, 0x3f669e66, 0x00000090) OperationRegion(OEMT, SystemMemory, 0x3f669f9c, 0x00000020) OperationRegion(SYSC, SystemMemory, 0x3f669f92, 0x0000000a) OperationRegion(VDEX, SystemMemory, 0x3f669e56, 0x00000010) OperationRegion(THZN, SystemMemory, 0x3f669f82, 0x00000010) OperationRegion(BTNC, SystemMemory, 0x3f669f72, 0x00000010) OperationRegion(VIST, SystemMemory, 0x3f66960c, 0x0000084a) OperationRegion(QBC, SystemMemory, 0x3f669f66, 0x0000000c) OperationRegion(TCG1, SystemMemory, 0x3f669608, 0x00000004) OperationRegion(IO80, SystemIO, 0x80, 0x01) Scope(\) { Field(\_SB.PSIO, ByteAcc, NoLock, Preserve) { SSMI, 8 } Field(\_SB.PSBF, ByteAcc, NoLock, Preserve) { CMD, 8, DVID, 32, PSDT, 32 } Field(\_SB.PSBF, ByteAcc, NoLock, Preserve) { Offset(0x5), INF, 8 } Field(\_SB.OEMT, ByteAcc, NoLock, Preserve) { SPAF, 2, SPBF, 2, PPF, 3, FDCF, 1, SIDF, 2, IMTF, 1, BLEN, 1, WLEN, 1, BTEX, 1, Offset(0x4), WAPB, 1, Offset(0x8), FWHM, 1, , 1, TPMF, 2, FSCM, 1, RPCP, 1, TBPC, 1, AS34, 1, BIFL, 8, DCLW, 7, Offset(0x10), FDS0, 4, FDS1, 4, Offset(0x18), UMST, 32, UMSZ, 32 } Field(\_SB.SYSC, ByteAcc, NoLock, Preserve) { BHKF, 1, , 2, MHKF, 1, Offset(0x1), BLLM, 8, BLLT, 64 } Field(\_SB.SYSC, ByteAcc, NoLock, Preserve) { AHKF, 8 } Field(\_SB.VDEX, ByteAcc, NoLock, Preserve) { ADOS, 3, CLCD, 1, ALCD, 1, CCRT, 1, ACRT, 1, CTV, 1, ATV, 1, CDVI, 1, ADVI, 1, DSWF, 2, BSWF, 2 } Field(\_SB.THZN, ByteAcc, NoLock, Preserve) { DTS1, 8, DTS2, 8, CRTT, 8, PSVT, 8, TC1V, 4, TC2V, 4, TSPV, 4, MPEN, 1, DTSE, 1 } Field(\_SB.BTNC, ByteAcc, NoLock, Preserve) { IRBF, 1, , 6, NGTF, 1, Offset(0x4), IRBC, 16 } Field(\_SB.QBC, ByteAcc, NoLock, Preserve) { QAG1, 32, QAG2, 32, QAG3, 32 } Field(\_SB.TCG1, AnyAcc, NoLock, Preserve) { PPRQ, 8, PPLO, 8, PPRP, 8, PPOR, 8 } Field(\_SB.IO80, ByteAcc, NoLock, Preserve) { PO80, 8 } } Method(_INI) { If(LNot(LLess(\_SB.OSTP(), 0x40))) { Load(VIST, VSTH) } } Device(MCFG) { Name(_HID, 0x020cd041) Name(_CRS, Buffer(0x1c) {0x87, 0x17, 0x0, 0x0, 0xd, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff, 0xff, 0xff, 0xfb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x79, 0x0 /* ResourceTemplate() { 0x0000 DWordMemory(ResourceConsumer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x0, 0xf8000000, 0xfbffffff, 0x0, 0x4000000, 121, '', AddressRangeMemory, TypeStatic) } */ }) } Device(PCI0) { Name(_HID, 0x080ad041) Name(_CID, 0x030ad041) Name(_ADR, 0x00) Name(_BBN, 0x00) OperationRegion(HBUS, PCI_Config, 0x40, 0xc0) Field(HBUS, DWordAcc, NoLock, Preserve) { Offset(0x50), , 4, PM0H, 2, Offset(0x51), PM1L, 2, , 2, PM1H, 2, Offset(0x52), PM2L, 2, , 2, PM2H, 2, Offset(0x53), PM3L, 2, , 2, PM3H, 2, Offset(0x54), PM4L, 2, , 2, PM4H, 2, Offset(0x55), PM5L, 2, , 2, PM5H, 2, Offset(0x56), PM6L, 2, , 2, PM6H, 2, Offset(0x57), , 7, HENA, 1, Offset(0x5c), , 3, TOUD, 5 } Name(BUF0, Buffer(0x01ee) {0x88, 0xd, 0x0, 0x2, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x87, 0x17, 0x0, 0x1, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf7, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xc, 0x0, 0x0, 0x47, 0x1, 0xf8, 0xc, 0xf8, 0xc, 0x1, 0x8, 0x87, 0x17, 0x0, 0x1, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0x0, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf3, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0xff, 0xff, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0xff, 0x3f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xc, 0x0, 0xff, 0x7f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xc, 0x0, 0xff, 0xbf, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xc, 0x0, 0xff, 0xff, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0xff, 0x3f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xd, 0x0, 0xff, 0x7f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xd, 0x0, 0xff, 0xbf, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xd, 0x0, 0xff, 0xff, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0, 0xff, 0x3f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xe, 0x0, 0xff, 0x7f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xe, 0x0, 0xff, 0xbf, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xe, 0x0, 0xff, 0xff, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0x0, 0xff, 0xff, 0xf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xbf, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd4, 0xfe, 0xff, 0x4f, 0xd4, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x50, 0x0, 0x0, 0x79, 0x0 /* ResourceTemplate() { 0x0000 WordBus(ResourceProducer, PosDecode, MinFixed, MaxFixed, 0x0, 0x0, 0xff, 0x0, 0x100, 135, '') 0x0010 DWordIO(ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0, 0x0, 0xcf7, 0x0, 0xcf8, 71, '��', TypeStatic, DenseTranslation) 0x002a IO(Decode16, 0xcf8, 0xcf8, 0x1, 0x8) 0x0032 DWordIO(ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0, 0xd00, 0xffff, 0x0, 0xf300, 135, '', TypeStatic, DenseTranslation) 0x004c DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xa0000, 0xbffff, 0x0, 0x20000, 135, '', AddressRangeMemory, TypeStatic) 0x0066 DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xc0000, 0xc3fff, 0x0, 0x4000, 135, '', AddressRangeMemory, TypeStatic) 0x0080 DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xc4000, 0xc7fff, 0x0, 0x4000, 135, '', AddressRangeMemory, TypeStatic) 0x009a DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xc8000, 0xcbfff, 0x0, 0x4000, 135, '', AddressRangeMemory, TypeStatic) 0x00b4 DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xcc000, 0xcffff, 0x0, 0x4000, 135, '', AddressRangeMemory, TypeStatic) 0x00ce DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xd0000, 0xd3fff, 0x0, 0x4000, 135, '', AddressRangeMemory, TypeStatic) 0x00e8 DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xd4000, 0xd7fff, 0x0, 0x4000, 135, '', AddressRangeMemory, TypeStatic) 0x0102 DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xd8000, 0xdbfff, 0x0, 0x4000, 135, '', AddressRangeMemory, TypeStatic) 0x011c DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xdc000, 0xdffff, 0x0, 0x4000, 135, '', AddressRangeMemory, TypeStatic) 0x0136 DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xe0000, 0xe3fff, 0x0, 0x4000, 135, '', AddressRangeMemory, TypeStatic) 0x0150 DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xe4000, 0xe7fff, 0x0, 0x4000, 135, '', AddressRangeMemory, TypeStatic) 0x016a DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xe8000, 0xebfff, 0x0, 0x4000, 135, '', AddressRangeMemory, TypeStatic) 0x0184 DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xec000, 0xeffff, 0x0, 0x4000, 135, '', AddressRangeMemory, TypeStatic) 0x019e DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xf0000, 0xfffff, 0x0, 0x10000, 135, '', AddressRangeMemory, TypeStatic) 0x01b8 DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0x0, 0xfebfffff, 0x0, 0x0, 135, '', AddressRangeMemory, TypeStatic) 0x01d2 DWordMemory(ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x0, 0xfed40000, 0xfed44fff, 0x0, 0x5000, 121, '', AddressRangeMemory, TypeStatic) } */ }) Method(_CRS, 0, Serialized) { If(PM1L) { CreateDWordField(BUF0, 0x7c, C0LN) Store(Zero, C0LN) } If(LEqual(PM1L, 0x01)) { CreateBitField(BUF0, 0x0358, C0RW) Store(Zero, C0RW) } If(PM1H) { CreateDWordField(BUF0, 0x96, C4LN) Store(Zero, C4LN) } If(LEqual(PM1H, 0x01)) { CreateBitField(BUF0, 0x0428, C4RW) Store(Zero, C4RW) } If(PM2L) { CreateDWordField(BUF0, 0xb0, C8LN) Store(Zero, C8LN) } If(LEqual(PM2L, 0x01)) { CreateBitField(BUF0, 0x04f8, C8RW) Store(Zero, C8RW) } If(PM2H) { CreateDWordField(BUF0, 0xca, CCLN) Store(Zero, CCLN) } If(LEqual(PM2H, 0x01)) { CreateBitField(BUF0, 0x05c8, CCRW) Store(Zero, CCRW) } If(PM3L) { CreateDWordField(BUF0, 0xe4, D0LN) Store(Zero, D0LN) } If(LEqual(PM3L, 0x01)) { CreateBitField(BUF0, 0x0698, D0RW) Store(Zero, D0RW) } If(PM3H) { CreateDWordField(BUF0, 0xfe, D4LN) Store(Zero, D4LN) } If(LEqual(PM3H, 0x01)) { CreateBitField(BUF0, 0x0768, D4RW) Store(Zero, D4RW) } If(PM4L) { CreateDWordField(BUF0, 0x0118, D8LN) Store(Zero, D8LN) } If(LEqual(PM4L, 0x01)) { CreateBitField(BUF0, 0x0838, D8RW) Store(Zero, D8RW) } If(PM4H) { CreateDWordField(BUF0, 0x0132, DCLN) Store(Zero, DCLN) } If(LEqual(PM4H, 0x01)) { CreateBitField(BUF0, 0x0908, DCRW) Store(Zero, DCRW) } If(PM5L) { CreateDWordField(BUF0, 0x014c, E0LN) Store(Zero, E0LN) } If(LEqual(PM5L, 0x01)) { CreateBitField(BUF0, 0x09d8, E0RW) Store(Zero, E0RW) } If(PM5H) { CreateDWordField(BUF0, 0x0166, E4LN) Store(Zero, E4LN) } If(LEqual(PM5H, 0x01)) { CreateBitField(BUF0, 0x0aa8, E4RW) Store(Zero, E4RW) } If(PM6L) { CreateDWordField(BUF0, 0x0180, E8LN) Store(Zero, E8LN) } If(LEqual(PM6L, 0x01)) { CreateBitField(BUF0, 0x0b78, E8RW) Store(Zero, E8RW) } If(PM6H) { CreateDWordField(BUF0, 0x019a, ECLN) Store(Zero, ECLN) } If(LEqual(PM6H, 0x01)) { CreateBitField(BUF0, 0x0c48, ECRW) Store(Zero, ECRW) } If(PM0H) { CreateDWordField(BUF0, 0x01b4, F0LN) Store(Zero, F0LN) } If(LEqual(PM0H, 0x01)) { CreateBitField(BUF0, 0x0d18, F0RW) Store(Zero, F0RW) } CreateDWordField(BUF0, 0x01c2, M1MN) CreateDWordField(BUF0, 0x01c6, M1MX) CreateDWordField(BUF0, 0x01ce, M1LN) ShiftLeft(TOUD, 0x1b, M1MN) Add(Subtract(M1MX, M1MN, ), 0x01, M1LN) CreateDWordField(BUF0, 0x01dc, TPMN) CreateDWordField(BUF0, 0x01e0, TPMX) CreateDWordField(BUF0, 0x01e8, TPML) If(LNot(LEqual(TPMF, 0x02))) { Store(Zero, TPMN) Store(Zero, TPMX) Store(Zero, TPML) } Return(BUF0) } Method(_PRT) { If(GPIC) { Return(Package(0x10) { Package(0x04) { 0x0001ffff, 0x00, 0x00, 0x10, }, Package(0x04) { 0x0002ffff, 0x00, 0x00, 0x10, }, Package(0x04) { 0x0007ffff, 0x03, 0x00, 0x10, }, Package(0x04) { 0x001bffff, 0x00, 0x00, 0x11, }, Package(0x04) { 0x001cffff, 0x00, 0x00, 0x16, }, Package(0x04) { 0x001cffff, 0x01, 0x00, 0x15, }, Package(0x04) { 0x001cffff, 0x02, 0x00, 0x14, }, Package(0x04) { 0x001cffff, 0x03, 0x00, 0x13, }, Package(0x04) { 0x001dffff, 0x00, 0x00, 0x17, }, Package(0x04) { 0x001dffff, 0x01, 0x00, 0x14, }, Package(0x04) { 0x001dffff, 0x02, 0x00, 0x12, }, Package(0x04) { 0x001dffff, 0x03, 0x00, 0x10, }, Package(0x04) { 0x001effff, 0x00, 0x00, 0x10, }, Package(0x04) { 0x001effff, 0x01, 0x00, 0x11, }, Package(0x04) { 0x001fffff, 0x00, 0x00, 0x12, }, Package(0x04) { 0x001fffff, 0x01, 0x00, 0x13, }, }) } Else { Return(Package(0x10) { Package(0x04) { 0x0001ffff, 0x00, \_SB.PCI0.LPCB.LNKA, 0x00, }, Package(0x04) { 0x0002ffff, 0x00, \_SB.PCI0.LPCB.LNKA, 0x00, }, Package(0x04) { 0x0007ffff, 0x03, \_SB.PCI0.LPCB.LNKA, 0x00, }, Package(0x04) { 0x001bffff, 0x00, \_SB.PCI0.LPCB.LNKB, 0x00, }, Package(0x04) { 0x001cffff, 0x00, \_SB.PCI0.LPCB.LNKG, 0x00, }, Package(0x04) { 0x001cffff, 0x01, \_SB.PCI0.LPCB.LNKF, 0x00, }, Package(0x04) { 0x001cffff, 0x02, \_SB.PCI0.LPCB.LNKE, 0x00, }, Package(0x04) { 0x001cffff, 0x03, \_SB.PCI0.LPCB.LNKD, 0x00, }, Package(0x04) { 0x001dffff, 0x00, \_SB.PCI0.LPCB.LNKH, 0x00, }, Package(0x04) { 0x001dffff, 0x01, \_SB.PCI0.LPCB.LNKE, 0x00, }, Package(0x04) { 0x001dffff, 0x02, \_SB.PCI0.LPCB.LNKC, 0x00, }, Package(0x04) { 0x001dffff, 0x03, \_SB.PCI0.LPCB.LNKA, 0x00, }, Package(0x04) { 0x001effff, 0x00, \_SB.PCI0.LPCB.LNKG, 0x00, }, Package(0x04) { 0x001effff, 0x01, \_SB.PCI0.LPCB.LNKE, 0x00, }, Package(0x04) { 0x001fffff, 0x00, \_SB.PCI0.LPCB.LNKC, 0x00, }, Package(0x04) { 0x001fffff, 0x01, \_SB.PCI0.LPCB.LNKD, 0x00, }, }) } } Device(MBIO) { Name(_HID, 0x020cd041) Method(_STA) { Return(0x0f) } Name(RSRC, Buffer(0x01a6) {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, 0x2e, 0x0, 0x2e, 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, 0x2, 0x47, 0x1, 0xb2, 0x0, 0xb2, 0x0, 0x1, 0x2, 0x47, 0x1, 0xb4, 0x0, 0xb4, 0x0, 0x1, 0x2, 0x47, 0x1, 0xb8, 0x0, 0xb8, 0x0, 0x1, 0x2, 0x47, 0x1, 0xbc, 0x0, 0xbc, 0x0, 0x1, 0x2, 0x47, 0x1, 0xd0, 0x4, 0xd0, 0x4, 0x1, 0x2, 0x47, 0x1, 0x0, 0x8, 0x0, 0x8, 0x1, 0x10, 0x47, 0x1, 0x0, 0x10, 0x0, 0x10, 0x1, 0x80, 0x47, 0x1, 0x80, 0x10, 0x80, 0x10, 0x1, 0x80, 0x47, 0x1, 0x0, 0x11, 0x0, 0x11, 0x1, 0x20, 0x47, 0x1, 0x80, 0x11, 0x80, 0x11, 0x1, 0x40, 0x47, 0x1, 0x0, 0xf8, 0x0, 0xf8, 0x1, 0x80, 0x47, 0x1, 0x80, 0xf8, 0x80, 0xf8, 0x1, 0x80, 0x47, 0x1, 0x0, 0xfc, 0x0, 0xfc, 0x1, 0x80, 0x47, 0x1, 0x80, 0xfc, 0x80, 0xfc, 0x1, 0x80, 0x47, 0x1, 0xc, 0xfd, 0xc, 0xfd, 0x1, 0x64, 0x47, 0x1, 0x0, 0xfe, 0x0, 0xfe, 0x1, 0x2, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0x0, 0xf8, 0x0, 0x0, 0x0, 0x4, 0x86, 0x9, 0x0, 0x1, 0x0, 0x40, 0xd1, 0xfe, 0x0, 0x40, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x80, 0xd1, 0xfe, 0x0, 0x10, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x90, 0xd1, 0xfe, 0x0, 0x10, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0xc0, 0xd1, 0xfe, 0x0, 0x40, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0xd2, 0xfe, 0x0, 0x0, 0x2, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x50, 0xd4, 0xfe, 0x0, 0xb0, 0x4, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0xc0, 0xfe, 0x0, 0x10, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0xe0, 0xfe, 0x0, 0x10, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0xf0, 0xfe, 0x0, 0x0, 0x10, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0xf0, 0xc, 0x0, 0x0, 0x10, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0xb0, 0xff, 0x0, 0x0, 0x10, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0xd4, 0xfe, 0x0, 0x50, 0x0, 0x0, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IO(Decode16, 0x10, 0x10, 0x1, 0x10) 0x0008 IO(Decode16, 0x24, 0x24, 0x1, 0x2) 0x0010 IO(Decode16, 0x28, 0x28, 0x1, 0x2) 0x0018 IO(Decode16, 0x2c, 0x2c, 0x1, 0x2) 0x0020 IO(Decode16, 0x2e, 0x2e, 0x1, 0x2) 0x0028 IO(Decode16, 0x30, 0x30, 0x1, 0x2) 0x0030 IO(Decode16, 0x34, 0x34, 0x1, 0x2) 0x0038 IO(Decode16, 0x38, 0x38, 0x1, 0x2) 0x0040 IO(Decode16, 0x3c, 0x3c, 0x1, 0x2) 0x0048 IO(Decode16, 0x50, 0x50, 0x1, 0x4) 0x0050 IO(Decode16, 0x72, 0x72, 0x1, 0x6) 0x0058 IO(Decode16, 0x80, 0x80, 0x1, 0x1) 0x0060 IO(Decode16, 0x90, 0x90, 0x1, 0x10) 0x0068 IO(Decode16, 0xa4, 0xa4, 0x1, 0x2) 0x0070 IO(Decode16, 0xa8, 0xa8, 0x1, 0x2) 0x0078 IO(Decode16, 0xac, 0xac, 0x1, 0x2) 0x0080 IO(Decode16, 0xb0, 0xb0, 0x1, 0x2) 0x0088 IO(Decode16, 0xb2, 0xb2, 0x1, 0x2) 0x0090 IO(Decode16, 0xb4, 0xb4, 0x1, 0x2) 0x0098 IO(Decode16, 0xb8, 0xb8, 0x1, 0x2) 0x00a0 IO(Decode16, 0xbc, 0xbc, 0x1, 0x2) 0x00a8 IO(Decode16, 0x4d0, 0x4d0, 0x1, 0x2) 0x00b0 IO(Decode16, 0x800, 0x800, 0x1, 0x10) 0x00b8 IO(Decode16, 0x1000, 0x1000, 0x1, 0x80) 0x00c0 IO(Decode16, 0x1080, 0x1080, 0x1, 0x80) 0x00c8 IO(Decode16, 0x1100, 0x1100, 0x1, 0x20) 0x00d0 IO(Decode16, 0x1180, 0x1180, 0x1, 0x40) 0x00d8 IO(Decode16, 0xf800, 0xf800, 0x1, 0x80) 0x00e0 IO(Decode16, 0xf880, 0xf880, 0x1, 0x80) 0x00e8 IO(Decode16, 0xfc00, 0xfc00, 0x1, 0x80) 0x00f0 IO(Decode16, 0xfc80, 0xfc80, 0x1, 0x80) 0x00f8 IO(Decode16, 0xfd0c, 0xfd0c, 0x1, 0x64) 0x0100 IO(Decode16, 0xfe00, 0xfe00, 0x1, 0x2) 0x0108 Memory32Fixed(ReadWrite, 0xf8000000, 0x4000000) 0x0114 Memory32Fixed(ReadWrite, 0xfed14000, 0x4000) 0x0120 Memory32Fixed(ReadWrite, 0xfed18000, 0x1000) 0x012c Memory32Fixed(ReadWrite, 0xfed19000, 0x1000) 0x0138 Memory32Fixed(ReadWrite, 0xfed1c000, 0x4000) 0x0144 Memory32Fixed(ReadWrite, 0xfed20000, 0x20000) 0x0150 Memory32Fixed(ReadWrite, 0xfed45000, 0x4b000) 0x015c Memory32Fixed(ReadWrite, 0xfec00000, 0x1000) 0x0168 Memory32Fixed(ReadWrite, 0xfee00000, 0x1000) 0x0174 Memory32Fixed(ReadWrite, 0xfef00000, 0x100000) 0x0180 Memory32Fixed(ReadWrite, 0x000cf000, 0x1000) 0x018c Memory32Fixed(ReadWrite, 0xffb00000, 0x100000) 0x0198 Memory32Fixed(ReadWrite, 0xfed40000, 0x5000) } */ }) Method(_CRS, 0, Serialized) { CreateDWordField(RSRC, 0x0184, MBBS) CreateDWordField(RSRC, 0x0188, MBLN) CreateDWordField(RSRC, 0x0190, FWBS) CreateDWordField(RSRC, 0x0194, FWLN) CreateDWordField(RSRC, 0x019c, TPMB) CreateDWordField(RSRC, 0x01a0, TPML) Store(UMST, MBBS) Store(UMSZ, MBLN) If(FWHM) { Store(Zero, FWBS) Store(Zero, FWLN) } If(LEqual(TPMF, 0x02)) { Store(Zero, TPMB) Store(Zero, TPML) } Return(RSRC) } } Device(GFX0) { Name(_ADR, 0x00020000) Method(XLCD) { Return(One) } Method(XCRT) { Return(One) } Method(XTV) { Return(XOr(SOUT, One, )) } Method(XDVI) { Return(Zero) } Scope(\) { Name(WLCD, Zero) Name(WCRT, Zero) Name(WTV, Zero) Name(WDVI, Zero) } Method(PHTK) { Store(Zero, DSWF) } Name(F10T, Package(0x0a) { 0x01, 0x02, 0x03, 0x04, 0x05, 0x01, 0x02, 0x03, 0x04, 0x05, }) Method(AHTK) { If(LAnd(LEqual(And(ADOS, 0x03, ), Zero), DSWF)) { UPDD() If(LEqual(DSWF, 0x01)) { Or(ShiftLeft(CDVI, 0x02, ), Or(ShiftLeft(CCRT, 0x01, ), CLCD, ), Local0) Or(ShiftLeft(ADVI, 0x02, ), Or(ShiftLeft(ACRT, 0x01, ), ALCD, ), Local1) Store(Zero, Local2) Store(0xff, Local3) While(LAnd(LLess(Local2, 0x0a), LEqual(Local3, 0xff))) { If(LEqual(DerefOf(Index(F10T, Local2, )), Local0)) { If(LAnd(CTV, ATV)) { Store(Local2, Local3) } Else { Add(Local2, 0x01, Local3) } } Increment(Local2) } Store(0xff, Local2) If(LNot(LEqual(Local3, 0xff))) { While(LAnd(LLess(Local3, 0x0a), LEqual(Local2, 0xff))) { If(LEqual(And(DerefOf(Index(F10T, Local3, )), Local1, ), DerefOf(Index(F10T, Local3, )))) { Store(DerefOf(Index(F10T, Local3, )), Local2) } Increment(Local3) } } If(LEqual(Local2, 0xff)) { If(ALCD) { Store(0x01, Local2) } Else { If(ACRT) { Store(0x02, Local2) } Else { If(ADVI) { Store(0x04, Local2) } Else { Store(0x02, Local2) } } } } And(Local2, 0x01, WLCD) ShiftRight(And(Local2, 0x02, ), 0x01, WCRT) ShiftRight(And(Local2, 0x04, ), 0x02, WDVI) Store(Zero, WTV) Notify(\_SB.PCI0.GFX0, 0x80) } Else { If(LEqual(DSWF, 0x02)) { And(CLCD, ALCD, WLCD) And(CCRT, ACRT, WCRT) And(CDVI, ADVI, WDVI) And(XOr(CTV, 0x01, ), ATV, WTV) If(LOr(LOr(WTV, WDVI), LOr(WCRT, WLCD))) { If(LAnd(LAnd(WLCD, WCRT), WTV)) { Store(Zero, WCRT) } If(LAnd(LAnd(WLCD, WDVI), WTV)) { Store(Zero, WDVI) } If(LAnd(LAnd(WCRT, WDVI), WTV)) { Store(Zero, WDVI) } Notify(\_SB.PCI0.GFX0, 0x80) } } } } } Method(UPDD) { If(LNot(LLess(\_SB.OSTP(), 0x08))) { Notify(\_SB.PCI0, 0x00) } Else { Notify(\_SB.PCI0.GFX0, 0x00) } Sleep(0x02ee) Store(0xff, DVID) Store(0x8e, CMD) Store(Zero, SSMI) } Method(_DOS, 1) { And(Arg0, 0x07, ADOS) } Method(_DOD) { Return(Package(0x04) { 0x00010100, 0x00010110, 0x00010200, 0x00010300, }) } Device(CRT) { Method(_ADR) { Return(0x0100) } Method(_DCS) { If(XCRT()) { UPDD() Return(Or(0x0d, Or(ShiftLeft(ACRT, 0x04, ), ShiftLeft(CCRT, 0x01, ), ), )) } Else { Return(Zero) } } Method(_DGS) { Return(WCRT) } Method(_DSS, 1) { Noop } } Device(LCD) { Method(_ADR) { Return(0x0110) } Method(_DCS) { If(XLCD()) { UPDD() Return(Or(0x0d, Or(ShiftLeft(ALCD, 0x04, ), ShiftLeft(CLCD, 0x01, ), ), )) } Else { Return(Zero) } } Method(_DGS) { Return(WLCD) } Method(_DSS, 1) { Noop } } Device(TV) { Method(_ADR) { Return(0x0200) } Method(_DCS) { If(XTV()) { UPDD() Return(Or(0x0d, Or(ShiftLeft(ATV, 0x04, ), ShiftLeft(CTV, 0x01, ), ), )) } Else { Return(Zero) } } Method(_DGS) { Return(WTV) } Method(_DSS, 1) { Noop } } Device(DVI) { Method(_ADR) { Return(0x0300) } Method(_DCS) { If(XDVI()) { UPDD() Return(Or(0x0d, Or(ShiftLeft(ADVI, 0x04, ), ShiftLeft(CDVI, 0x01, ), ), )) } Else { Return(Zero) } } Method(_DGS) { Return(WDVI) } Method(_DSS, 1) { Noop } } Scope(LCD) { Method(_PS0) { Store(0x00, LIDS) } Method(_PS3) { Store(0x01, LIDS) } Method(_BCL) { If(LNot(LLess(\_SB.OSTP(), 0x40))) { Return(Package(0x0a) { 0x64, 0x2b, 0x00, 0x0f, 0x1d, 0x2b, 0x39, 0x47, 0x55, 0x64, }) } Else { Return(Package(0x0a) { 0x64, 0x2c, 0x00, 0x10, 0x1e, 0x2c, 0x3a, 0x48, 0x56, 0x64, }) } } Method(_BCM, 1) { If(LAnd(LNot(LLess(Arg0, 0x00)), LNot(LGreater(Arg0, 0x64)))) { \_SB.PCI0.LPCB.FJEX.SBLL(Divide(Arg0, 0x0e, , )) } } } } Device(PCIB) { Name(_ADR, 0x001e0000) Method(_PRT) { If(GPIC) { Return(Package(0x02) { Package(0x04) { 0x0003ffff, 0x00, 0x00, 0x10, }, Package(0x04) { 0x0003ffff, 0x01, 0x00, 0x11, }, }) } Else { Return(Package(0x02) { Package(0x04) { 0x0003ffff, 0x00, \_SB.PCI0.LPCB.LNKA, 0x00, }, Package(0x04) { 0x0003ffff, 0x01, \_SB.PCI0.LPCB.LNKB, 0x00, }, }) } } Method(_INI) { } Name(_PRW, Package(0x02) { 0x0b, 0x04, }) } Device(LPCB) { Name(_ADR, 0x001f0000) OperationRegion(LPC0, PCI_Config, 0x40, 0xc0) Field(LPC0, AnyAcc, NoLock, Preserve) { Offset(0x20), PARC, 8, PBRC, 8, PCRC, 8, PDRC, 8, Offset(0x28), PERC, 8, PFRC, 8, PGRC, 8, PHRC, 8, Offset(0x40), IOD0, 8, IOD1, 8, CAEN, 1 } OperationRegion(SIO, SystemIO, 0x2e, 0x02) OperationRegion(FJIO, SystemIO, 0xfd60, 0x17) Scope(\) { Field(\_SB.PCI0.LPCB.FJIO, ByteAcc, NoLock, Preserve) { AIDC, 8, ADTC, 8, AIDB, 8, ADTB, 8, AIDA, 8, ADTA, 8, AIDD, 8, ADTD, 8, Offset(0x10), PMID, 8, Offset(0x12), PMDR, 8, Offset(0x14), PMDT, 8, Offset(0x16), PMCR, 8 } } OperationRegion(PMIO, SystemIO, 0x1000, 0x80) OperationRegion(OGIO, SystemIO, 0x1180, 0x3c) Scope(\) { Field(\_SB.PCI0.LPCB.PMIO, ByteAcc, NoLock, Preserve) { Offset(0x42), , 1, GPEC, 1 } Field(\_SB.PCI0.LPCB.OGIO, ByteAcc, NoLock, Preserve) { Offset(0x2c), Offset(0x2d), LPOL, 1, , 4, EXPL, 1, Offset(0x38), , 1, PXRS, 1, PXCL, 1 } } OperationRegion(OPIO, SystemIO, 0x1000, 0x67) Scope(\) { Field(\_SB.PCI0.LPCB.OPIO, ByteAcc, NoLock, Preserve) { Offset(0x10), Offset(0x11), FOCT, 1 } } Method(_INI) { \_SB.OSTP() \_SB.PCI0.LPCB.CMBT.SWCF() AINI() If(RPCP) { Store(One, RPEN) Store(B2TC, RPDS) } If(LNot(LLess(\_SB.OSTP(), 0x40))) { Or(RGSI, 0x01, RGSI) } } Scope(\) { IndexField(AIDA, ADTA, ByteAcc, NoLock, Preserve) { Offset(0x9), RI1M, 1, RI2M, 1, RI3M, 1, RI4M, 1, RI1, 1, RI2, 1, RI3, 1, RI4, 1, , 2, CVCL, 1, , 3, BLCT, 2, Offset(0x20), G5P0, 8, G5C0, 8, G3P0, 8, G3C0, 8, Offset(0x40), SSF0, 8, SSF1, 8, SSM0, 8, SSM1, 8, SSI0, 8, SSTM, 8, SSF2, 8, SSM2, 8, SSI1, 8, Offset(0x52), G3P1, 8, G3C1, 8, G3P2, 8, G3C2, 8, QSWC, 8, Offset(0x60), SSS0, 8, SSS1, 8 } IndexField(AIDB, ADTB, ByteAcc, NoLock, Preserve) { Offset(0x29), BRCL, 8, LCDB, 8, Offset(0x30), LCDC, 8 } IndexField(AIDC, ADTC, ByteAcc, NoLock, Preserve) { TASF, 1, TBSF, 1, B1SU, 1, B1SD, 1, B2SU, 1, B2SD, 1, Offset(0x2), , 4, VSTB, 1, Offset(0x5), , 6, ACPW, 1, Offset(0x20), BCTL, 8, Offset(0x23), TAF, 1, TASM, 1, , 2, TBF, 1, TBSM, 1, Offset(0x24), TIMA, 8, TIMB, 8, Offset(0x28), CDLP, 8, HDLP, 8, FDLP, 8, Offset(0x4e), B1UM, 1, B1DM, 1, , 1, B1TC, 1, B2UM, 1, B2DM, 1, , 1, B2TC, 1, BAPC, 6 } IndexField(AIDC, ADTC, ByteAcc, NoLock, Preserve) { STAE, 8 } IndexField(AIDD, ADTD, ByteAcc, NoLock, Preserve) { Offset(0x80), GIDI, 8, GIDC, 8, GIDO, 8, Offset(0x90), G3SI, 8, G3SC, 8, G3SO, 8, G3SM, 8, Offset(0xa0), WOXF, 8, WOXE, 8, WOXD, 8, WOXS, 8, Offset(0xb0), AMPV, 6 } } Scope(\) { IndexField(PMID, PMDT, ByteAcc, NoLock, Preserve) { Offset(0xa0), UPPR, 1, ERRO, 1, PASS, 1, PSOK, 1, PSNG, 1, TOUT, 1, SIRN, 1, STSC, 1, OVFL, 1, LWMD, 1, TALM, 1, EMGC, 1, OCNT, 4, TDTC, 1, , 4, AERR, 1, PERR, 1, ABSY, 1, Offset(0xa4), PDAT, 8, Offset(0xc0), Offset(0xc1), B1P, 1, B2P, 1, B1C, 1, B2C, 1, B1ER, 1, B2ER, 1, PKSH, 1, CMB, 1, B1CP, 8, B2CP, 8, BAVG, 8, B1VH, 8, B1VL, 8, B2VH, 8, B2VL, 8, B1TM, 8, B2TM, 8, B1CH, 8, B1CL, 8, B2CH, 8, B2CL, 8, BTMH, 8, BTML, 8, B1LH, 8, B1LL, 8, B2LH, 8, B2LL, 8, B1ID, 4, B1NO, 4, B2ID, 4, B2NO, 4, B1DV, 8, B2DV, 8, B1DH, 8, B1DL, 8, B2DH, 8, B2DL, 8, TBSI, 8, TBSH, 8, TBSL, 8, BHDD, 1, BOPT, 1, , 5, ABLC, 1, Offset(0xe8), TBCM, 8, TBMD, 8, TBIN, 8, DCOL, 7, S3EN, 1 } IndexField(PMID, PMDT, ByteAcc, NoLock, Preserve) { Offset(0xa2), TCST, 8 } } Scope(\) { IndexField(AIDA, ADTA, ByteAcc, NoLock, Preserve) { Offset(0x22), , 4, SOUT, 1 } IndexField(PMID, PMDT, ByteAcc, NoLock, Preserve) { Offset(0xec), , 1, DKEV, 1 } } Method(AINI) { And(SSM1, 0xcf, SSM1) Store(Zero, TBSM) Store(LWMD, PLWM) Store(TALM, PTAL) Store(0x95, CMD) Or(PLWM, ShiftLeft(PTAL, 0x01, ), DVID) Store(Zero, SSMI) If(LAnd(TALM, LNot(ACPW))) { Store(One, FOCT) } Else { Store(Zero, FOCT) } If(LNot(LLess(\_SB.OSTP(), 0x40))) { Store(PMDR, Local0) Store(PMDR, Local0) Store(0x02, TBCM) Store(0x00, TBMD) Store(0x05, TBIN) Store(0x00, PMCR) } If(LOr(TBPC, LNot(LLess(\_SB.OSTP(), 0x40)))) { If(AS34) { Store(0x01, S3EN) } If(LEqual(DCLW, 0x7f)) { Store(0x01, DCOL) } Else { Store(DCLW, DCOL) } } } Device(TPM) { Name(_HID, 0x0201d824) Name(_CID, 0x310cd041) Name(_UID, 0x01) Name(_CRS, Buffer(0x1e) {0x47, 0x1, 0x4e, 0x0, 0x4e, 0x0, 0x1, 0x2, 0x47, 0x1, 0x0, 0xfd, 0x0, 0xfd, 0x1, 0xc, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0xd4, 0xfe, 0x0, 0x50, 0x0, 0x0, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IO(Decode16, 0x4e, 0x4e, 0x1, 0x2) 0x0008 IO(Decode16, 0xfd00, 0xfd00, 0x1, 0xc) 0x0010 Memory32Fixed(ReadWrite, 0xfed40000, 0x5000) } */ }) Method(_STA) { If(TPMF) { If(LEqual(TPMF, 0x02)) { Return(0x0f) } Else { Return(0x00) } } Else { Return(0x00) } } } Device(DIGI) { Name(_HID, 0xe602aa1a) Method(_STA) { If(LOr(TBPC, LNot(LLess(\_SB.OSTP(), 0x40)))) { Return(0x0f) } Else { Return(0x00) } } Method(_INI) { If(LNot(LLess(\_SB.OSTP(), 0x40))) { \_SB.PCI0.LPCB.ENTR() Store(0x01, U1P) Store(0x88, U1A) Store(0x04, U1I) \_SB.PCI0.LPCB.EXIT() And(IOD0, 0xf8, IOD0) Or(IOD0, 0x02, IOD0) Store(0x01, CAEN) } } Name(_CRS, Buffer(0x0d) {0x47, 0x1, 0x20, 0x2, 0x20, 0x2, 0x1, 0x8, 0x22, 0x10, 0x0, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IO(Decode16, 0x220, 0x220, 0x1, 0x8) 0x0008 IRQ() {4} } */ }) } Device(BTNS) { Name(_HID, "FUJ02BF") Method(_STA) { Return(0x0f) } Method(_INI) { Store(PMCR, Local0) Store(Zero, Local1) While(LAnd(And(Local0, One, ), LLess(Local1, 0x0a))) { Store(PMDR, Local0) Sleep(0x0a) Store(PMCR, Local0) Increment(Local1) } } Name(_CRS, Buffer(0x0e) {0x47, 0x1, 0x70, 0xfd, 0x70, 0xfd, 0x1, 0x10, 0x23, 0x20, 0x0, 0x1, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IO(Decode16, 0xfd70, 0xfd70, 0x1, 0x10) 0x0008 IRQ(Edge, ActiveHigh, Exclusive) {5} } */ }) } Device(FJEX) { Name(_HID, "FUJ02B1") Method(_STA) { Return(0x0f) } Method(RBLL) { Return(BLLM) } Scope(\) { Name(LBLL, 0x00) Name(LLCD, Ones) } Method(GBLL) { Store(LBLL, Local2) Store(LCDB, Local1) If(LNot(LEqual(LLCD, Local1))) { Store(Local1, LLCD) Name(BBCT, Buffer(BLLM) { }) Store(BLLT, BBCT) Store(BLLM, Local0) While(Local0) { Decrement(Local0) If(LEqual(GBUF(BBCT, Local0), Local1)) { Store(Local0, Local2) Store(Local0, LBLL) Store(Zero, Local0) } } } If(BHKF) { Store(Zero, BHKF) Or(Local2, 0x80000000, Local2) } Return(Local2) } Method(GBLS) { Store(LBLL, Local2) Store(LCDB, Local1) If(LNot(LEqual(LLCD, Local1))) { Store(Local1, LLCD) Name(BBCT, Buffer(BLLM) { }) Store(BLLT, BBCT) Store(BLLM, Local0) While(Local0) { Decrement(Local0) If(LEqual(GBUF(BBCT, Local0), Local1)) { Store(Local0, Local2) Store(Local0, LBLL) Store(Zero, Local0) } } } If(BHKF) { Or(Local2, 0x80000000, Local2) } Return(Local2) } Method(SBLL, 1) { If(NGTF) { Store(Arg0, LSBL) Return(Zero) } If(LLess(Arg0, BLLM)) { Name(BBCT, Buffer(BLLM) { }) Store(BLLT, BBCT) CreateByteField(BBCT, Arg0, BLL0) Store(BLL0, LCDB) Store(Arg0, DVID) Store(0x82, CMD) Store(Zero, SSMI) } } Method(GBUF, 2) { CreateByteField(Arg0, Arg1, BLL0) Return(BLL0) } Method(GMOU) { Store(0x02, DVID) Store(0x91, CMD) Store(Zero, SSMI) Store(DVID, Local0) If(MHKF) { Store(Zero, MHKF) Or(Local0, 0x80000000, Local0) } Return(Local0) } Method(SMOU, 1) { If(LNot(LGreater(Arg0, One))) { Store(Arg0, DVID) Store(0x91, CMD) Store(Zero, SSMI) } } Method(GHKS) { Return(AHKF) } Method(GSIF) { If(IMTF) { Or(RGSI, 0x08, RGSI) } Else { And(RGSI, 0xfffffff7, RGSI) } Return(RGSI) } } Name(BTF1, 0x9a) Name(BTF2, 0x98) Scope(\) { Name(BTBL, Zero) Name(BTST, Zero) IndexField(AIDA, ADTA, ByteAcc, NoLock, Preserve) { Offset(0x20), , 5, ABEX, 1, Offset(0x44), , 2, WLSW, 1, Offset(0x52), , 1, WLR2, 1 } IndexField(AIDD, ADTD, ByteAcc, NoLock, Preserve) { Offset(0x92), , 2, WLRF, 1, ABON, 1 } } Device(CMBT) { Name(_HID, "FUJ02E1") Method(_STA) { If(LNot(LLess(\_SB.OSTP(), 0x40))) { Return(0x00) } Else { If(LNot(BTEX)) { Return(0x00) } Else { If(BLEN) { Return(0x0f) } Else { Return(0x0d) } } } } Method(_INI) { Store(Zero, BTBL) } Method(INFO) { If(LEqual(_STA(), 0x0f)) { Store(BTF1, Local0) } Else { Store(BTF2, Local0) } Or(Local0, 0x08, Local0) Return(Local0) } Method(STAT) { Store(0x00, Local0) If(ABON) { Or(Local0, 0x02, Local0) } If(WLRF) { Or(Local0, 0x08, Local0) } If(ABON) { Or(Local0, 0x10, Local0) } If(BTBL) { Or(Local0, 0x80, Local0) } Return(Local0) } Method(CNTL, 2) { If(And(Arg0, 0x02, )) { If(LEqual(_STA(), 0x0f)) { If(And(Arg1, 0x02, )) { Store(One, ABON) } Else { Store(Zero, ABON) } } } If(LAnd(And(Arg0, 0x08, ), WLEN)) { ShiftRight(And(Arg1, 0x08, ), 0x03, WLRF) } If(And(Arg0, 0x80, )) { ShiftRight(And(Arg1, 0x80, ), 0x07, BTBL) If(BTBL) { If(WLSW) { Notify(CMBT, 0x81) } Else { Notify(CMBT, 0x82) } } } } Method(SWCF) { If(WLSW) { Store(One, WLR2) } Else { Store(Zero, WLR2) } If(BTBL) { If(WLSW) { Notify(CMBT, 0x81) } Else { Notify(CMBT, 0x82) } } Else { If(WLSW) { If(BLEN) { Store(One, ABON) If(WLEN) { Store(One, WLRF) } Else { Store(Zero, WLRF) } } Else { Store(Zero, ABON) If(WLEN) { Store(One, WLRF) } Else { Store(Zero, WLRF) } } } Else { Store(Zero, ABON) Store(Zero, WLRF) } } } Method(BPTS, 1) { If(LOr(LEqual(Arg0, 0x03), LEqual(Arg0, 0x04))) { Store(WLRF, BTST) Or(ShiftLeft(WLSW, 0x01, ), BTST, BTST) Or(ShiftLeft(ABON, 0x02, ), BTST, BTST) Or(ShiftLeft(WLR2, 0x03, ), BTST, BTST) } Store(Zero, ABON) } Method(BWAK, 1) { If(LOr(LEqual(Arg0, 0x03), LEqual(Arg0, 0x04))) { Store(And(BTST, 0x01, ), WLRF) ShiftRight(And(BTST, 0x04, ), 0x02, ABON) ShiftRight(And(BTST, 0x08, ), 0x03, WLR2) If(LNot(LEqual(ShiftRight(And(BTST, 0x02, ), 0x01, ), WLSW))) { SWCF() } } } } Device(EC) { 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 /* ResourceTemplate() { 0x0000 IO(Decode16, 0x62, 0x62, 0x1, 0x1) 0x0008 IO(Decode16, 0x66, 0x66, 0x1, 0x1) } */ }) Name(_GPE, 0x17) Scope(\) { Name(ECOK, Zero) } Method(_REG, 2) { If(LEqual(Arg0, 0x03)) { Store(Arg1, ECOK) } } OperationRegion(SMB, EmbeddedControl, 0x00, 0xff) Scope(\) { Field(\_SB.PCI0.LPCB.EC.SMB, ByteAcc, Lock, Preserve) { Offset(0x4), ECCM, 8, ECD1, 8, ECD2, 8, ECD3, 8, Offset(0xf8), ECGM, 8, ECG1, 8, ECG2, 8, ECG3, 8 } } } Device(DMAC) { Name(_HID, 0x0002d041) Method(_STA) { Return(0x0f) } 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 /* ResourceTemplate() { 0x0000 IO(Decode16, 0x0, 0x0, 0x1, 0x10) 0x0008 IO(Decode16, 0x81, 0x81, 0x1, 0xf) 0x0010 IO(Decode16, 0xc0, 0xc0, 0x1, 0x20) 0x0018 DMA(Compatibility, NotBusMaster, Transfer16) {4} } */ }) } Device(TIME) { Name(_HID, 0x0001d041) Method(_STA) { Return(0x0f) } Name(_CRS, Buffer(0x0d) {0x47, 0x1, 0x40, 0x0, 0x40, 0x0, 0x1, 0x4, 0x22, 0x1, 0x0, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IO(Decode16, 0x40, 0x40, 0x1, 0x4) 0x0008 IRQ() {0} } */ }) } Device(PIC) { Name(_HID, 0xd041) Method(_STA) { Return(0x0f) } Name(_CRS, Buffer(0x15) {0x47, 0x1, 0x20, 0x0, 0x20, 0x0, 0x1, 0x2, 0x47, 0x1, 0xa0, 0x0, 0xa0, 0x0, 0x1, 0x2, 0x22, 0x4, 0x0, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IO(Decode16, 0x20, 0x20, 0x1, 0x2) 0x0008 IO(Decode16, 0xa0, 0xa0, 0x1, 0x2) 0x0010 IRQ() {2} } */ }) } Device(RTC) { Name(_HID, 0x000bd041) Method(_STA) { Return(0x0f) } Name(_CRS, Buffer(0x0d) {0x47, 0x1, 0x70, 0x0, 0x70, 0x0, 0x1, 0x2, 0x22, 0x0, 0x1, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IO(Decode16, 0x70, 0x70, 0x1, 0x2) 0x0008 IRQ() {8} } */ }) } Device(SPKR) { Name(_HID, 0x0008d041) Method(_STA) { Return(0x0f) } Name(_CRS, Buffer(0x0a) {0x47, 0x1, 0x61, 0x0, 0x61, 0x0, 0x1, 0x1, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IO(Decode16, 0x61, 0x61, 0x1, 0x1) } */ }) } Device(MATH) { Name(_HID, 0x040cd041) Method(_STA) { Return(0x0f) } Name(_CRS, Buffer(0x0d) {0x47, 0x1, 0xf0, 0x0, 0xf0, 0x0, 0x1, 0xf, 0x22, 0x0, 0x20, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IO(Decode16, 0xf0, 0xf0, 0x1, 0xf) 0x0008 IRQ() {13} } */ }) } Device(KBC) { Name(R101, 0x0303d041) Name(R106, 0x2003d041) Method(_HID) { If(SIDF) { Return(R101) } Else { Return(R106) } } Method(_STA) { Return(0x0f) } Name(_CRS, Buffer(0x15) {0x47, 0x1, 0x60, 0x0, 0x60, 0x0, 0x1, 0x1, 0x47, 0x1, 0x64, 0x0, 0x64, 0x0, 0x1, 0x1, 0x22, 0x2, 0x0, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IO(Decode16, 0x60, 0x60, 0x1, 0x1) 0x0008 IO(Decode16, 0x64, 0x64, 0x1, 0x1) 0x0010 IRQ() {1} } */ }) } Device(PS2M) { Name(_HID, 0x130fd041) Method(_STA) { Return(0x0f) } Name(_CRS, Buffer(0x05) {0x22, 0x0, 0x10, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ() {12} } */ }) } Device(FWH) { Name(_HID, 0x0008d425) Method(_STA) { If(FWHM) { Return(0x0f) } Else { Return(0x00) } } Name(_CRS, Buffer(0x0e) {0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0xb0, 0xff, 0x0, 0x0, 0x10, 0x0, 0x79, 0x0 /* ResourceTemplate() { 0x0000 Memory32Fixed(ReadWrite, 0xffb00000, 0x100000) } */ }) } Device(HPET) { Name(_HID, 0x0301d041) Name(_CID, 0x010cd041) Name(BUF0, Buffer(0x0e) {0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0xd0, 0xfe, 0x0, 0x4, 0x0, 0x0, 0x79, 0x0 /* ResourceTemplate() { 0x0000 Memory32Fixed(ReadOnly, 0xfed00000, 0x400) } */ }) OperationRegion(RCRB, SystemMemory, 0xfed1c000, 0x4000) Field(RCRB, DWordAcc, Lock, Preserve) { Offset(0x3404), HPAS, 2, , 5, HPAE, 1 } Method(_STA) { If(LNot(LLess(\_SB.OSTP(), 0x08))) { If(HPAE) { Return(0x0f) } } Else { If(HPAE) { Return(0x0b) } } Return(0x00) } Method(_CRS, 0, Serialized) { If(HPAE) { CreateDWordField(BUF0, 0x04, HPT0) If(LEqual(HPAS, 0x01)) { Store(0xfed01000, HPT0) } If(LEqual(HPAS, 0x02)) { Store(0xfed02000, HPT0) } If(LEqual(HPAS, 0x03)) { Store(0xfed03000, HPT0) } } Return(BUF0) } } Scope(\_SB.PCI0.LPCB) { OperationRegion(LIOD, PCI_Config, 0x80, 0x0a) OperationRegion(MBAR, SystemMemory, 0xfed14000, 0x4000) Field(MBAR, DWordAcc, Lock, Preserve) { Offset(0xf08), , 4, C2SL, 1 } } Field(LIOD, AnyAcc, NoLock, Preserve) { CADR, 3, , 1, CBDR, 3, Offset(0x1), LPDR, 2, , 2, FDDR, 1, Offset(0x2), CALE, 1, CBLE, 1, LPLE, 1, FDLE, 1, Offset(0x8), GD2E, 1, , 3, GD2B, 12 } Name(TCOM, Package(0x08) { 0x03f8, 0x02f8, 0x0220, 0x0228, 0x0238, 0x02e8, 0x0338, 0x03e8, }) Name(TLPT, Package(0x03) { 0x0378, 0x0278, 0x03bc, }) Name(TFDD, Package(0x02) { 0x03f0, 0x0370, }) Method(DENA, 3, Serialized) { If(LEqual(Arg0, 0x00)) { Store(Match(TCOM, MEQ, Arg1, MTR, 0x00, 0x00), Local0) If(LNot(LEqual(Local0, Ones))) { Store(Local0, CADR) Store(One, CALE) } } Else { If(LOr(LEqual(Arg0, 0x01), LEqual(Arg0, 0x02))) { Store(Match(TCOM, MEQ, Arg1, MTR, 0x00, 0x00), Local0) If(LNot(LEqual(Local0, Ones))) { Store(Local0, CBDR) Store(One, CBLE) } } Else { If(LEqual(Arg0, 0x03)) { Store(Match(TCOM, MEQ, Arg1, MTR, 0x00, 0x00), Local0) If(LNot(LEqual(Local0, Ones))) { Store(Local0, CBDR) Store(One, CBLE) ShiftRight(Arg2, 0x04, GD2B) Store(One, GD2E) } } Else { If(LOr(LEqual(Arg0, 0x04), LEqual(Arg0, 0x05))) { Store(Match(TLPT, MEQ, Arg1, MTR, 0x00, 0x00), Local0) If(LNot(LEqual(Local0, Ones))) { Store(Local0, LPDR) Store(One, LPLE) } } Else { If(LEqual(Arg0, 0x07)) { Store(Match(TFDD, MEQ, Arg1, MTR, 0x00, 0x00), Local0) If(LNot(LEqual(Local0, Ones))) { Store(Local0, FDDR) Store(One, FDLE) } } } } } } } Method(DDIS, 1, Serialized) { If(LEqual(Arg0, 0x00)) { Store(Zero, CALE) } Else { If(LOr(LEqual(Arg0, 0x01), LEqual(Arg0, 0x02))) { Store(Zero, CBLE) } Else { If(LEqual(Arg0, 0x03)) { Store(Zero, CBLE) Store(Zero, GD2E) } Else { If(LOr(LEqual(Arg0, 0x04), LEqual(Arg0, 0x05))) { Store(Zero, LPLE) } Else { If(LEqual(Arg0, 0x07)) { Store(Zero, FDLE) } } } } } } Field(SIO, ByteAcc, NoLock, Preserve) { SIID, 8, SIDT, 8 } IndexField(SIID, SIDT, ByteAcc, NoLock, Preserve) { , 3, FDCP, 1, Offset(0x1), , 2, PPP, 1, PPM, 1, Offset(0x2), , 3, U1P, 1, , 3, U2P, 1, Offset(0x4), PPEM, 2, Offset(0xa), EFTM, 8, Offset(0xc), U2MD, 6, Offset(0x20), FDA, 8, , 2, ETOS, 1, Offset(0x23), PPA, 8, U1A, 8, U2A, 8, PPD, 4, FDD, 4, PPI, 4, FDI, 4, U2I, 4, U1I, 4, Offset(0x2b), IRA, 8, IRD, 4 } Mutex(MTXS, 0) Method(ENTR) { Acquire(MTXS, 0xffff) Store(0x55, SIID) } Method(EXIT) { Store(0xaa, SIID) Release(MTXS) } Method(SETR, 5) { ENTR() If(Arg3) { Subtract(FindSetRightBit(Arg3, Zero), One, Local0) } Else { Store(Zero, Local0) } If(Arg4) { Subtract(FindSetRightBit(Arg4, Zero), One, Local1) } Else { Store(0x0f, Local1) } If(LEqual(Arg0, 0x00)) { ShiftRight(Arg1, 0x02, U1A) Store(Local0, U1I) } Else { If(LEqual(Arg0, 0x01)) { ShiftRight(Arg1, 0x02, U2A) Store(Local0, U2I) } Else { If(LEqual(Arg0, 0x02)) { ShiftRight(Arg1, 0x02, U2A) Store(Local0, U2I) } Else { If(LEqual(Arg0, 0x03)) { ShiftRight(Arg1, 0x02, U2A) ShiftRight(Arg2, 0x03, IRA) Store(Local0, U2I) Store(Local1, IRD) } Else { If(LEqual(Arg0, 0x04)) { ShiftRight(Arg1, 0x02, PPA) Store(Local0, PPI) } Else { If(LEqual(Arg0, 0x05)) { ShiftRight(Arg1, 0x02, PPA) Store(Local0, PPI) Store(Local1, PPD) } Else { If(LEqual(Arg0, 0x07)) { ShiftRight(Arg1, 0x02, FDA) Store(Local0, FDI) Store(Local1, FDD) } } } } } } } EXIT() If(Arg1) { If(CondRefOf(DENA, Local0)) { DENA(Arg0, Arg1, Arg2) } SETM(Arg0) } Else { If(CondRefOf(DDIS, Local0)) { DDIS(Arg0) } } } Method(GETR, 5) { ENTR() Store(Zero, Local0) Store(0x0f, Local1) If(LEqual(Arg0, 0x00)) { ShiftLeft(U1A, 0x02, Arg1) Store(U1I, Local0) } Else { If(LEqual(Arg0, 0x01)) { ShiftLeft(U2A, 0x02, Arg1) Store(U2I, Local0) } Else { If(LEqual(Arg0, 0x02)) { ShiftLeft(U2A, 0x02, Arg1) Store(U2I, Local0) } Else { If(LEqual(Arg0, 0x03)) { ShiftLeft(U2A, 0x02, Arg1) ShiftLeft(IRA, 0x03, Arg2) Store(U2I, Local0) Store(IRD, Local1) } Else { If(LEqual(Arg0, 0x04)) { ShiftLeft(PPA, 0x02, Arg1) Store(PPI, Local0) } Else { If(LEqual(Arg0, 0x05)) { ShiftLeft(PPA, 0x02, Arg1) Store(PPI, Local0) Store(PPD, Local1) } Else { If(LEqual(Arg0, 0x07)) { ShiftLeft(FDA, 0x02, Arg1) Store(FDI, Local0) Store(FDD, Local1) } } } } } } } If(Local0) { ShiftLeft(One, Local0, Arg3) } Else { Store(Zero, Arg3) } If(LNot(LEqual(Local1, 0x0f))) { ShiftLeft(One, Local1, Arg4) } Else { Store(Zero, Arg4) } EXIT() } Method(SETM, 1) { ENTR() If(LEqual(Arg0, 0x00)) { Store(One, U1P) } Else { If(LEqual(Arg0, 0x01)) { Store(0x06, U2MD) Store(One, U2P) } Else { If(LEqual(Arg0, 0x02)) { Store(0x0e, U2MD) Store(One, U2P) } Else { If(LEqual(Arg0, 0x03)) { Store(0x0e, U2MD) Store(One, U2P) } Else { If(LEqual(Arg0, 0x04)) { If(LEqual(PPF, One)) { Store(One, PPM) } Else { Store(Zero, PPM) Store(Zero, PPEM) } Store(One, PPP) } Else { If(LEqual(Arg0, 0x05)) { Store(Zero, PPM) Store(0x02, PPEM) Store(One, PPP) } } } } } } EXIT() } Method(SETP, 2) { ENTR() If(LEqual(Arg0, 0x00)) { Store(Arg1, U1P) } Else { If(LEqual(Arg0, 0x01)) { Store(Arg1, U2P) } Else { If(LEqual(Arg0, 0x02)) { Store(Arg1, U2P) } Else { If(LEqual(Arg0, 0x03)) { Store(Arg1, U2P) } Else { If(LEqual(Arg0, 0x04)) { Store(Arg1, PPP) } Else { If(LEqual(Arg0, 0x05)) { Store(Arg1, PPP) } } } } } } EXIT() } Method(GETP, 1) { Store(Zero, Local0) ENTR() If(LEqual(Arg0, 0x00)) { Store(U1P, Local0) } Else { If(LEqual(Arg0, 0x01)) { Store(U2P, Local0) } Else { If(LEqual(Arg0, 0x02)) { Store(U2P, Local0) } Else { If(LEqual(Arg0, 0x03)) { Store(U2P, Local0) } Else { If(LEqual(Arg0, 0x04)) { Store(PPP, Local0) } Else { If(LEqual(Arg0, 0x05)) { Store(PPP, Local0) } } } } } } EXIT() Return(Local0) } Method(CHKM, 1) { If(LEqual(Arg0, 0x00)) { If(SPAF) { Return(One) } } Else { If(LEqual(Arg0, 0x01)) { If(LEqual(SPBF, 0x03)) { Return(One) } } Else { If(LEqual(Arg0, 0x02)) { If(LEqual(SPBF, One)) { Return(One) } } Else { If(LEqual(Arg0, 0x03)) { If(LEqual(SPBF, 0x02)) { Return(One) } } Else { If(LEqual(Arg0, 0x04)) { If(LOr(LEqual(PPF, One), LEqual(PPF, 0x02))) { Return(One) } } Else { If(LEqual(Arg0, 0x05)) { If(LEqual(PPF, 0x03)) { Return(One) } } Else { If(LEqual(Arg0, 0x07)) { If(FDCF) { Return(One) } } } } } } } } Return(Zero) } Device(UAR1) { Name(_HID, 0x0105d041) Name(_UID, 0x01) Name(RSRC, Buffer(0x0d) {0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IO(Decode16, 0x3f8, 0x3f8, 0x1, 0x8) 0x0008 IRQ() {4} } */ }) Name(_PRS, Buffer(0x34) {0x31, 0x4, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x30, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x38, 0x79, 0x0 /* ResourceTemplate() { StartDependentFn(0, 1) { 0x0001 Unknown(0x0, 4) 0x0006 Unknown(0xf8, 259) }) Method(_STA) { If(LNot(LLess(\_SB.OSTP(), 0x40))) { Return(0x00) } Else { If(CHKM(0x00)) { GETR(0x00, RefOf(Local0), RefOf(Local1), RefOf(Local2), RefOf(Local3)) If(Local0) { Return(0x0f) } Else { Return(0x0d) } } Else { Return(0x00) } } } Method(_CRS) { CreateWordField(RSRC, 0x02, IO11) CreateWordField(RSRC, 0x04, IO12) CreateWordField(RSRC, 0x09, IRQ1) GETR(0x00, RefOf(Local0), RefOf(Local1), RefOf(Local2), RefOf(Local3)) Store(Local0, IO11) Store(Local0, IO12) Store(Local2, IRQ1) Return(RSRC) } Method(_SRS, 1) { CreateWordField(Arg0, 0x04, IO11) CreateWordField(Arg0, 0x09, IRQ1) SETR(0x00, IO11, Zero, IRQ1, Zero) } Method(_DIS) { SETR(0x00, Zero, Zero, Zero, Zero) } Method(_INI) { If(CHKM(0x00)) { SETM(0x00) } } } Device(LNKA) { Name(_HID, 0x0f0cd041) Name(_UID, 0x01) Method(_DIS, 0, Serialized) { Store(0x80, PARC) } Name(_PRS, Buffer(0x06) {0x23, 0xfa, 0xd4, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) {1, 3, 4, 5, 6, 7, 10, 12, 14, 15} } */ }) Method(_CRS, 0, Serialized) { Name(RTLA, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) } */ }) CreateWordField(RTLA, 0x01, IRQ0) Store(Zero, IRQ0) ShiftLeft(0x01, And(PARC, 0x0f, ), IRQ0) Return(RTLA) } Method(_SRS, 1, Serialized) { CreateWordField(Arg0, 0x01, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Store(Local0, PARC) } Method(_STA, 0, Serialized) { If(And(PARC, 0x80, )) { Return(0x09) } Else { Return(0x0b) } } } Device(LNKB) { Name(_HID, 0x0f0cd041) Name(_UID, 0x02) Method(_DIS, 0, Serialized) { Store(0x80, PBRC) } Name(_PRS, Buffer(0x06) {0x23, 0xfa, 0xd8, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) {1, 3, 4, 5, 6, 7, 11, 12, 14, 15} } */ }) Method(_CRS, 0, Serialized) { Name(RTLB, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) } */ }) CreateWordField(RTLB, 0x01, IRQ0) Store(Zero, IRQ0) ShiftLeft(0x01, And(PBRC, 0x0f, ), IRQ0) Return(RTLB) } Method(_SRS, 1, Serialized) { CreateWordField(Arg0, 0x01, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Store(Local0, PBRC) } Method(_STA, 0, Serialized) { If(And(PBRC, 0x80, )) { Return(0x09) } Else { Return(0x0b) } } } Device(LNKC) { Name(_HID, 0x0f0cd041) Name(_UID, 0x03) Method(_DIS, 0, Serialized) { Store(0x80, PCRC) } Name(_PRS, Buffer(0x06) {0x23, 0xfa, 0xd4, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) {1, 3, 4, 5, 6, 7, 10, 12, 14, 15} } */ }) Method(_CRS, 0, Serialized) { Name(RTLC, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) } */ }) CreateWordField(RTLC, 0x01, IRQ0) Store(Zero, IRQ0) ShiftLeft(0x01, And(PCRC, 0x0f, ), IRQ0) Return(RTLC) } Method(_SRS, 1, Serialized) { CreateWordField(Arg0, 0x01, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Store(Local0, PCRC) } Method(_STA, 0, Serialized) { If(And(PCRC, 0x80, )) { Return(0x09) } Else { Return(0x0b) } } } Device(LNKD) { Name(_HID, 0x0f0cd041) Name(_UID, 0x04) Method(_DIS, 0, Serialized) { Store(0x80, PDRC) } Name(_PRS, Buffer(0x06) {0x23, 0xfa, 0xd8, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) {1, 3, 4, 5, 6, 7, 11, 12, 14, 15} } */ }) Method(_CRS, 0, Serialized) { Name(RTLD, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) } */ }) CreateWordField(RTLD, 0x01, IRQ0) Store(Zero, IRQ0) ShiftLeft(0x01, And(PDRC, 0x0f, ), IRQ0) Return(RTLD) } Method(_SRS, 1, Serialized) { CreateWordField(Arg0, 0x01, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Store(Local0, PDRC) } Method(_STA, 0, Serialized) { If(And(PDRC, 0x80, )) { Return(0x09) } Else { Return(0x0b) } } } Device(LNKE) { Name(_HID, 0x0f0cd041) Name(_UID, 0x05) Method(_DIS, 0, Serialized) { Store(0x80, PERC) } Name(_PRS, Buffer(0x06) {0x23, 0xfa, 0xd4, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) {1, 3, 4, 5, 6, 7, 10, 12, 14, 15} } */ }) Method(_CRS, 0, Serialized) { Name(RTLE, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) } */ }) CreateWordField(RTLE, 0x01, IRQ0) Store(Zero, IRQ0) ShiftLeft(0x01, And(PERC, 0x0f, ), IRQ0) Return(RTLE) } Method(_SRS, 1, Serialized) { CreateWordField(Arg0, 0x01, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Store(Local0, PERC) } Method(_STA, 0, Serialized) { If(And(PERC, 0x80, )) { Return(0x09) } Else { Return(0x0b) } } } Device(LNKF) { Name(_HID, 0x0f0cd041) Name(_UID, 0x06) Method(_DIS, 0, Serialized) { Store(0x80, PFRC) } Name(_PRS, Buffer(0x06) {0x23, 0xfa, 0xd8, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) {1, 3, 4, 5, 6, 7, 11, 12, 14, 15} } */ }) Method(_CRS, 0, Serialized) { Name(RTLF, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) } */ }) CreateWordField(RTLF, 0x01, IRQ0) Store(Zero, IRQ0) ShiftLeft(0x01, And(PFRC, 0x0f, ), IRQ0) Return(RTLF) } Method(_SRS, 1, Serialized) { CreateWordField(Arg0, 0x01, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Store(Local0, PFRC) } Method(_STA, 0, Serialized) { If(And(PFRC, 0x80, )) { Return(0x09) } Else { Return(0x0b) } } } Device(LNKG) { Name(_HID, 0x0f0cd041) Name(_UID, 0x07) Method(_DIS, 0, Serialized) { Store(0x80, PGRC) } Name(_PRS, Buffer(0x06) {0x23, 0xfa, 0xd4, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) {1, 3, 4, 5, 6, 7, 10, 12, 14, 15} } */ }) Method(_CRS, 0, Serialized) { Name(RTLG, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) } */ }) CreateWordField(RTLG, 0x01, IRQ0) Store(Zero, IRQ0) ShiftLeft(0x01, And(PGRC, 0x0f, ), IRQ0) Return(RTLG) } Method(_SRS, 1, Serialized) { CreateWordField(Arg0, 0x01, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Store(Local0, PGRC) } Method(_STA, 0, Serialized) { If(And(PGRC, 0x80, )) { Return(0x09) } Else { Return(0x0b) } } } Device(LNKH) { Name(_HID, 0x0f0cd041) Name(_UID, 0x08) Method(_DIS, 0, Serialized) { Store(0x80, PHRC) } Name(_PRS, Buffer(0x06) {0x23, 0xf8, 0xd8, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) {3, 4, 5, 6, 7, 11, 12, 14, 15} } */ }) Method(_CRS, 0, Serialized) { Name(RTLH, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 /* ResourceTemplate() { 0x0000 IRQ(Level, ActiveLow, Shared) } */ }) CreateWordField(RTLH, 0x01, IRQ0) Store(Zero, IRQ0) ShiftLeft(0x01, And(PHRC, 0x0f, ), IRQ0) Return(RTLH) } Method(_SRS, 1, Serialized) { CreateWordField(Arg0, 0x01, IRQ0) FindSetRightBit(IRQ0, Local0) Decrement(Local0) Store(Local0, PHRC) } Method(_STA, 0, Serialized) { If(And(PHRC, 0x80, )) { Return(0x09) } Else { Return(0x0b) } } } } Device(PATA) { Name(_ADR, 0x001f0001) Name(PMMN, Buffer(0x28) { }) Name(PSMN, Buffer(0x28) { }) OperationRegion(ATIO, SystemIO, 0x01f7, 0x01) Field(ATIO, ByteAcc, NoLock, Preserve) { STSR, 8 } OperationRegion(PCI, PCI_Config, 0x40, 0x18) Field(PCI, ByteAcc, NoLock, Preserve) { PTI0, 1, PIE0, 1, PPP0, 1, PDT0, 1, PTI1, 1, PIE1, 1, PPP1, 1, PDT1, 1, PRCT, 2, , 2, PISP, 2, PSIT, 1, PIDE, 1, Offset(0x4), PRC1, 2, PIS1, 2, Offset(0x8), PSD0, 1, PSD1, 1, Offset(0xa), PCT0, 2, , 2, PCT1, 2, Offset(0x14), PCB0, 1, PCB1, 1, , 2, PMCC, 1, PSCC, 1, , 6, FPC0, 1, FPC1, 1, Offset(0x16), PSMD, 2 } Device(PRIM) { Name(_ADR, 0x00) Device(MAST) { Name(_ADR, 0x00) Method(_GTF) { Name(GTFB, Buffer(0x15) {0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xf5 }) CreateByteField(GTFB, 0x01, SPIO) CreateByteField(GTFB, 0x08, SDMA) CreateByteField(GTFB, 0x14, SCMD) If(LNot(SSUP())) { Store(0x00, SCMD) } If(LNot(PIE0)) { Store(0x01, SPIO) } Else { If(LOr(PDT0, LNot(PTI0))) { Store(0x08, SPIO) } Else { If(LLess(Add(PISP, PRCT, ), 0x03)) { Store(0x0a, SPIO) } Else { If(LLess(Add(PISP, PRCT, ), 0x05)) { Store(0x0b, SPIO) } Else { Store(0x0c, SPIO) } } } } If(PSD0) { If(And(FPC0, PMCC, )) { Store(0x45, SDMA) } Else { If(And(PCB0, PMCC, )) { If(LEqual(PCT0, 0x02)) { Store(0x44, SDMA) } Else { Store(0x43, SDMA) } } Else { If(LEqual(PCT0, 0x02)) { Store(0x42, SDMA) } Else { If(LEqual(PCT0, 0x01)) { Store(0x41, SDMA) } Else { Store(0x40, SDMA) } } } } } Else { If(LLess(Add(PISP, PRCT, ), 0x05)) { Store(0x21, SDMA) } Else { Store(0x22, SDMA) } } Return(GTFB) } } Device(SLAV) { Name(_ADR, 0x01) Method(_GTF) { Name(GTFB, Buffer(0x15) {0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xef, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xf5 }) CreateByteField(GTFB, 0x01, SPIO) CreateByteField(GTFB, 0x08, SDMA) CreateByteField(GTFB, 0x14, SCMD) If(LNot(SSUP())) { Store(0x00, SCMD) } If(LNot(PIE1)) { Store(0x01, SPIO) } Else { If(LOr(PDT1, LNot(PTI1))) { Store(0x08, SPIO) } Else { If(PSIT) { If(LLess(Add(PIS1, PRC1, ), 0x03)) { Store(0x0a, SPIO) } Else { If(LLess(Add(PIS1, PRC1, ), 0x05)) { Store(0x0b, SPIO) } Else { Store(0x0c, SPIO) } } } Else { If(LLess(Add(PISP, PRCT, ), 0x03)) { Store(0x0a, SPIO) } Else { If(LLess(Add(PISP, PRCT, ), 0x05)) { Store(0x0b, SPIO) } Else { Store(0x0c, SPIO) } } } } } If(PSD1) { If(And(FPC1, PSCC, )) { Store(0x45, SDMA) } Else { If(And(PCB1, PSCC, )) { If(LEqual(PCT1, 0x02)) { Store(0x44, SDMA) } Else { Store(0x43, SDMA) } } Else { If(LEqual(PCT1, 0x02)) { Store(0x42, SDMA) } Else { If(LEqual(PCT1, 0x01)) { Store(0x41, SDMA) } Else { Store(0x40, SDMA) } } } } } Else { If(PSIT) { If(LLess(Add(PIS1, PRC1, ), 0x05)) { Store(0x21, SDMA) } Else { Store(0x22, SDMA) } } Else { If(LLess(Add(PISP, PRCT, ), 0x05)) { Store(0x21, SDMA) } Else { Store(0x22, SDMA) } } } Return(GTFB) } } Method(_GTM) { Name(GTMB, Buffer(0x14) { }) CreateDWordField(GTMB, 0x00, PIO0) CreateDWordField(GTMB, 0x04, DMA0) CreateDWordField(GTMB, 0x08, PIO1) CreateDWordField(GTMB, 0x0c, DMA1) CreateDWordField(GTMB, 0x10, FLAG) Store(0x10, FLAG) Or(FLAG, Or(ShiftLeft(PIE1, 0x03, ), ShiftLeft(PIE0, 0x01, ), ), FLAG) If(LOr(PDT0, LNot(PTI0))) { Store(0x0384, PIO0) } Else { Multiply(Subtract(0x09, Add(PRCT, PISP, ), ), 0x1e, PIO0) } If(LNot(PSD0)) { Store(PIO0, DMA0) } Else { Or(FLAG, 0x01, FLAG) If(And(FPC0, PMCC, )) { Store(0x14, DMA0) } Else { If(And(PCB0, PMCC, )) { Multiply(Subtract(0x04, PCT0, ), 0x0f, DMA0) } Else { Multiply(Subtract(0x04, PCT0, ), 0x1e, DMA0) } } } If(LOr(PDT1, LNot(PTI1))) { Store(0x0384, PIO1) } Else { If(LNot(PSIT)) { Store(PIO0, PIO1) } Else { Multiply(Subtract(0x09, Add(PRC1, PIS1, ), ), 0x1e, PIO1) } } If(LNot(PSD1)) { Store(PIO1, DMA1) } Else { Or(FLAG, 0x04, FLAG) If(And(FPC1, PSCC, )) { Store(0x14, DMA1) } Else { If(And(PCB1, PSCC, )) { Multiply(Subtract(0x04, PCT1, ), 0x0f, DMA1) } Else { Multiply(Subtract(0x04, PCT1, ), 0x1e, DMA1) } } } Return(GTMB) } Method(_STM, 3) { CreateDWordField(Arg0, 0x00, PIO0) CreateDWordField(Arg0, 0x04, DMA0) CreateDWordField(Arg0, 0x08, PIO1) CreateDWordField(Arg0, 0x0c, DMA1) CreateDWordField(Arg0, 0x10, FLAG) Store(0x00, PSIT) If(LAnd(MSMF(), LEqual(SizeOf(Arg1), 0x0200))) { CreateField(Arg1, 0x01b0, 0x0140, MBUF) Store(MBUF, PMMN) CreateWordField(Arg1, 0x62, W490) CreateWordField(Arg1, 0x66, W510) CreateWordField(Arg1, 0x6a, W530) CreateWordField(Arg1, 0x7c, W620) CreateWordField(Arg1, 0x7e, W630) CreateWordField(Arg1, 0x80, W640) CreateWordField(Arg1, 0xb0, W880) Store(0x00, PISP) Store(0x00, PRCT) Store(0x00, PDT0) Store(0x00, PIE0) Store(0x00, PTI0) Store(0x00, PSD0) Store(0x00, PCT0) Store(0x00, PCB0) Store(0x00, PMCC) Store(0x00, FPC0) If(LAnd(And(FLAG, 0x02, ), And(W490, 0x0800, ))) { Store(0x01, PIE0) } If(LAnd(LNot(LGreater(PIO0, 0x78)), LAnd(And(W530, 0x02, ), And(W640, 0x02, )))) { Store(0x02, PISP) Store(0x03, PRCT) Store(0x01, PTI0) } Else { If(LAnd(LNot(LGreater(PIO0, 0xb4)), LAnd(And(W530, 0x02, ), And(W640, 0x01, )))) { Store(0x02, PISP) Store(0x01, PRCT) Store(0x01, PTI0) } Else { If(LAnd(LNot(LGreater(PIO0, 0xf0)), LNot(LLess(W510, 0x0200)))) { Store(0x01, PISP) Store(0x01, PTI0) } Else { Noop } } } If(LNot(LEqual(DMA0, 0xffffffff))) { If(LAnd(And(FLAG, 0x01, ), LAnd(And(W530, 0x04, ), And(W880, 0x3f, )))) { Store(0x01, PSD0) If(LAnd(LNot(LGreater(DMA0, 0x14)), And(W880, 0x20, ))) { Store(0x01, PCT0) Store(0x01, PMCC) Store(0x01, FPC0) } Else { If(LAnd(LNot(LGreater(DMA0, 0x1e)), And(W880, 0x10, ))) { Store(0x02, PCT0) Store(0x01, PMCC) Store(0x01, PCB0) } Else { If(LAnd(LNot(LGreater(DMA0, 0x2d)), And(W880, 0x08, ))) { Store(0x01, PCT0) Store(0x01, PMCC) Store(0x01, PCB0) } Else { If(LAnd(LNot(LGreater(DMA0, 0x3c)), And(W880, 0x04, ))) { Store(0x02, PCT0) } Else { If(LAnd(LNot(LGreater(DMA0, 0x5a)), And(W880, 0x02, ))) { Store(0x01, PCT0) } Else { Noop } } } } } } Else { If(LAnd(LNot(LGreater(DMA0, 0x78)), And(W630, 0x04, ))) { Store(0x02, PISP) Store(0x03, PRCT) Store(0x01, PTI0) } Else { If(LAnd(LNot(LGreater(DMA0, 0xb4)), And(W630, 0x02, ))) { Store(0x02, PISP) Store(0x01, PRCT) Store(0x01, PTI0) } Else { Noop } } } } } If(LAnd(SSMF(), LEqual(SizeOf(Arg2), 0x0200))) { CreateField(Arg2, 0x01b0, 0x0140, SBUF) Store(SBUF, PSMN) CreateWordField(Arg2, 0x62, W491) CreateWordField(Arg2, 0x66, W511) CreateWordField(Arg2, 0x6a, W531) CreateWordField(Arg2, 0x7c, W621) CreateWordField(Arg2, 0x7e, W631) CreateWordField(Arg2, 0x80, W641) CreateWordField(Arg2, 0xb0, W881) Store(0x00, PIS1) Store(0x00, PRC1) Store(0x00, PDT1) Store(0x00, PIE1) Store(0x00, PTI1) Store(0x00, PSD1) Store(0x00, PCT1) Store(0x00, PCB1) Store(0x00, PSCC) Store(0x00, FPC1) If(LAnd(And(FLAG, 0x08, ), And(W491, 0x0800, ))) { Store(0x01, PIE1) } If(LAnd(And(FLAG, 0x10, ), LAnd(LNot(LEqual(PIO1, 0xffffffff)), LNot(LEqual(PIO1, PIO0))))) { Store(0x01, PSIT) If(LAnd(LNot(LGreater(PIO1, 0x78)), LAnd(And(W531, 0x02, ), And(W641, 0x02, )))) { Store(0x02, PIS1) Store(0x03, PRC1) Store(0x01, PTI1) } Else { If(LAnd(LNot(LGreater(PIO1, 0xb4)), LAnd(And(W531, 0x02, ), And(W641, 0x01, )))) { Store(0x02, PIS1) Store(0x01, PRC1) Store(0x01, PTI1) } Else { If(LAnd(LNot(LGreater(PIO1, 0xf0)), LNot(LLess(W511, 0x0200)))) { Store(0x01, PIS1) Store(0x01, PTI1) } Else { Noop } } } } If(LNot(LEqual(DMA1, 0xffffffff))) { If(LAnd(And(FLAG, 0x04, ), LAnd(And(W531, 0x04, ), And(W881, 0x3f, )))) { Store(0x01, PSD1) If(LAnd(LNot(LGreater(DMA1, 0x14)), And(W881, 0x20, ))) { Store(0x01, PCT1) Store(0x01, PSCC) Store(0x01, FPC1) } Else { If(LAnd(LNot(LGreater(DMA1, 0x1e)), And(W881, 0x10, ))) { Store(0x02, PCT1) Store(0x01, PSCC) Store(0x01, PCB1) } Else { If(LAnd(LNot(LGreater(DMA1, 0x2d)), And(W881, 0x08, ))) { Store(0x01, PCT1) Store(0x01, PSCC) Store(0x01, PCB1) } Else { If(LAnd(LNot(LGreater(DMA1, 0x3c)), And(W881, 0x04, ))) { Store(0x02, PCT1) } Else { If(LAnd(LNot(LGreater(DMA1, 0x5a)), And(W881, 0x02, ))) { Store(0x01, PCT1) } Else { Noop } } } } } } Else { If(LAnd(And(FLAG, 0x10, ), LNot(LEqual(DMA1, DMA0)))) { Store(0x01, PSIT) If(LAnd(LNot(LGreater(DMA1, 0x78)), And(W631, 0x04, ))) { Store(0x02, PIS1) Store(0x03, PRC1) Store(0x01, PTI1) } Else { If(LAnd(LNot(LGreater(DMA1, 0xb4)), And(W631, 0x02, ))) { Store(0x02, PIS1) Store(0x01, PRC1) Store(0x01, PTI1) } Else { Noop } } } } } } Store(0x01, PIDE) } } Scope(\_SB.PCI0.PATA.PRIM) { Method(_STA) { Return(0x0f) } Method(MSMF) { Return(One) } Method(SSMF) { Return(Zero) } } Scope(\_SB.PCI0.PATA.PRIM.MAST) { Method(_STA) { Return(0x0f) } Method(SSUP) { Return(One) } } Scope(\_SB.PCI0.PATA.PRIM.SLAV) { Method(_STA) { Return(0x00) } Method(SSUP) { Return(Zero) } } } Device(USB1) { Name(_ADR, 0x001d0000) } Device(USB2) { Name(_ADR, 0x001d0001) } Device(USB3) { Name(_ADR, 0x001d0002) } Device(USB4) { Name(_ADR, 0x001d0003) } Device(USB7) { Name(_ADR, 0x001d0007) } Device(SBUS) { Name(_ADR, 0x001f0003) } Device(AUD0) { Name(_ADR, 0x001e0002) } Device(MODM) { Name(_ADR, 0x001e0003) Name(_PRW, Package(0x02) { 0x05, 0x03, }) } Device(HDEF) { Name(_ADR, 0x001b0000) Name(_PRW, Package(0x02) { 0x05, 0x03, }) Name(_PSC, 0x00) Method(_PS0) { Store(0x00, _PSC) If(LAnd(HDWA, LNot(LLess(\_SB.OSTP(), 0x40)))) { Store(Zero, HDWA) Sleep(0x01f4) } } Method(_PS3) { Store(0x03, _PSC) } } Device(RP01) { Name(_ADR, 0x001c0000) OperationRegion(P1CS, PCI_Config, 0x40, 0x0100) Field(P1CS, AnyAcc, NoLock, WriteAsZeros) { Offset(0x1a), ABP1, 1, , 2, PDC1, 1, , 2, PDS1, 1, Offset(0x20), Offset(0x22), PSP1, 1, Offset(0x9c), , 30, HPCS, 1, PMCS, 1 } Device(PXS1) { Name(_ADR, 0x00) } Method(_PRT) { If(\GPIC) { Return(Package(0x04) { Package(0x04) { 0xffff, 0x00, 0x00, 0x10, }, Package(0x04) { 0xffff, 0x01, 0x00, 0x11, }, Package(0x04) { 0xffff, 0x02, 0x00, 0x12, }, Package(0x04) { 0xffff, 0x03, 0x00, 0x13, }, }) } Else { Return(Package(0x04) { Package(0x04) { 0xffff, 0x00, \_SB.PCI0.LPCB.LNKA, 0x00, }, Package(0x04) { 0xffff, 0x01, \_SB.PCI0.LPCB.LNKB, 0x00, }, Package(0x04) { 0xffff, 0x02, \_SB.PCI0.LPCB.LNKC, 0x00, }, Package(0x04) { 0xffff, 0x03, \_SB.PCI0.LPCB.LNKD, 0x00, }, }) } } } Device(RP02) { Name(_ADR, 0x001c0001) OperationRegion(P2CS, PCI_Config, 0x40, 0x0100) Field(P2CS, AnyAcc, NoLock, WriteAsZeros) { Offset(0x1a), ABP2, 1, , 2, PDC2, 1, , 2, PDS2, 1, Offset(0x20), Offset(0x22), PSP2, 1, Offset(0x9c), , 30, HPCS, 1, PMCS, 1 } Device(PXS2) { Name(_ADR, 0x00) } Method(_PRT) { If(\GPIC) { Return(Package(0x04) { Package(0x04) { 0xffff, 0x00, 0x00, 0x11, }, Package(0x04) { 0xffff, 0x01, 0x00, 0x12, }, Package(0x04) { 0xffff, 0x02, 0x00, 0x13, }, Package(0x04) { 0xffff, 0x03, 0x00, 0x10, }, }) } Else { Return(Package(0x04) { Package(0x04) { 0xffff, 0x00, \_SB.PCI0.LPCB.LNKB, 0x00, }, Package(0x04) { 0xffff, 0x01, \_SB.PCI0.LPCB.LNKC, 0x00, }, Package(0x04) { 0xffff, 0x02, \_SB.PCI0.LPCB.LNKD, 0x00, }, Package(0x04) { 0xffff, 0x03, \_SB.PCI0.LPCB.LNKA, 0x00, }, }) } } } Device(RP03) { Name(_ADR, 0x001c0002) OperationRegion(P3CS, PCI_Config, 0x40, 0x0100) Field(P3CS, AnyAcc, NoLock, WriteAsZeros) { Offset(0x1a), ABP3, 1, , 2, PDC3, 1, , 2, PDS3, 1, Offset(0x20), Offset(0x22), PSP3, 1, Offset(0x9c), , 30, HPCS, 1, PMCS, 1 } Device(PXS3) { Name(_ADR, 0x00) } Method(_PRT) { If(\GPIC) { Return(Package(0x04) { Package(0x04) { 0xffff, 0x00, 0x00, 0x12, }, Package(0x04) { 0xffff, 0x01, 0x00, 0x13, }, Package(0x04) { 0xffff, 0x02, 0x00, 0x10, }, Package(0x04) { 0xffff, 0x03, 0x00, 0x11, }, }) } Else { Return(Package(0x04) { Package(0x04) { 0xffff, 0x00, \_SB.PCI0.LPCB.LNKC, 0x00, }, Package(0x04) { 0xffff, 0x01, \_SB.PCI0.LPCB.LNKD, 0x00, }, Package(0x04) { 0xffff, 0x02, \_SB.PCI0.LPCB.LNKA, 0x00, }, Package(0x04) { 0xffff, 0x03, \_SB.PCI0.LPCB.LNKB, 0x00, }, }) } } } Device(RP04) { Name(_ADR, 0x001c0003) OperationRegion(P4CS, PCI_Config, 0x40, 0x0100) Field(P4CS, AnyAcc, NoLock, WriteAsZeros) { Offset(0x1a), ABP4, 1, , 2, PDC4, 1, , 2, PDS4, 1, Offset(0x20), Offset(0x22), PSP4, 1, Offset(0x9c), , 30, HPCS, 1, PMCS, 1 } Device(PXS4) { Name(_ADR, 0x00) } Method(_PRT) { If(\GPIC) { Return(Package(0x04) { Package(0x04) { 0xffff, 0x00, 0x00, 0x13, }, Package(0x04) { 0xffff, 0x01, 0x00, 0x10, }, Package(0x04) { 0xffff, 0x02, 0x00, 0x11, }, Package(0x04) { 0xffff, 0x03, 0x00, 0x12, }, }) } Else { Return(Package(0x04) { Package(0x04) { 0xffff, 0x00, \_SB.PCI0.LPCB.LNKD, 0x00, }, Package(0x04) { 0xffff, 0x01, \_SB.PCI0.LPCB.LNKA, 0x00, }, Package(0x04) { 0xffff, 0x02, \_SB.PCI0.LPCB.LNKB, 0x00, }, Package(0x04) { 0xffff, 0x03, \_SB.PCI0.LPCB.LNKC, 0x00, }, }) } } } Scope(\_SB.PCI0.RP01.PXS1) { Name(_PRW, Package(0x02) { 0x09, 0x04, }) } Scope(\_SB.PCI0.RP02.PXS2) { Method(_STA) { If(PXRS) { Return(0x0f) } Else { Return(0x00) } } Name(_PRW, Package(0x02) { 0x09, 0x04, }) Method(_RMV) { Return(One) } Method(EXIN) { Sleep(0x64) Store(Zero, PXCL) Sleep(0x01) Store(One, PXRS) Store(Zero, EXPL) } Method(EXRM) { Store(Zero, PXRS) Store(One, PXCL) Store(One, EXPL) } } } Name(LEDI, Zero) Name(BTNI, Zero) Name(NGTI, 0x06) Scope(\) { Name(WBTN, Zero) Name(NGTM, Zero) Name(LSBL, Zero) Name(BNBF, Buffer(0x20) { }) Name(BNSP, Zero) Name(BNGP, Zero) Name(BNCT, Zero) } Device(FEXT) { Name(_HID, "FUJ02E3") Method(_STA) { Return(0x0f) } Method(_INI) { Store(Zero, BNSP) Store(Zero, BNGP) Store(Zero, BNCT) Store(Zero, IRBC) Store(Zero, IRBF) } Method(FUNC, 4, Serialized) { Store(0x80000000, Local0) If(LEqual(Arg0, 0x1001)) { Store(S001(Arg1, Arg2, Arg3), Local0) } Else { If(LEqual(Arg0, 0x1002)) { Store(S002(Arg1, Arg2, Arg3), Local0) } Else { If(LEqual(Arg0, 0x1004)) { Store(S004(Arg1, Arg2, Arg3), Local0) } } } If(LEqual(Arg0, 0x1006)) { Store(S006(Arg1, Arg2, Arg3), Local0) } If(LEqual(Arg0, 0x1008)) { Store(S008(Arg1, Arg2, Arg3), Local0) } Return(Local0) } Method(S001, 3) { Store(0x80000000, Local0) If(LEqual(Arg0, Zero)) { Store(LEDI, Local0) } Else { If(LEqual(Arg0, One)) { And(Arg2, 0x03, Local1) If(LAnd(And(Arg1, LEDI, ), Local1)) { Store(0x9b, CMD) ShiftRight(And(Arg2, 0x00030000, ), 0x08, DVID) Store(Zero, SSMI) } Store(Zero, Local0) } Else { If(LEqual(Arg0, 0x02)) { If(And(Arg1, LEDI, )) { Store(0x9b, CMD) Store(One, DVID) Store(Zero, SSMI) Or(ShiftLeft(DVID, 0x10, ), One, Local0) } Else { Store(Zero, Local0) } } } } Return(Local0) } Method(S002, 3) { Store(0x80000000, Local0) If(LEqual(Arg0, Zero)) { Store(BTNI, Local0) } Else { If(LEqual(Arg0, One)) { Store(GIRB(), Local0) } Else { If(LEqual(Arg0, 0x02)) { Store(0x9b, CMD) Store(0x02, DVID) Store(Zero, SSMI) Store(DVID, Local0) } Else { If(LEqual(Arg0, 0x03)) { If(Arg1) { Not(Arg1, Local1) And(Arg2, Arg1, Local2) Or(And(WBTN, Local1, ), Local2, WBTN) Store(0x9b, CMD) Or(ShiftLeft(WBTN, 0x08, ), 0x03, DVID) Store(Zero, SSMI) } Store(WBTN, Local0) } } } } Return(Local0) } Method(SIRB, 1) { If(LLess(BNCT, 0x10)) { CreateWordField(BNBF, BNSP, BNP1) Store(Arg0, BNP1) Increment(BNCT) Add(BNSP, 0x02, BNSP) If(LNot(LLess(BNSP, 0x20))) { Store(Zero, BNSP) } } } Method(GIRB) { If(BNCT) { CreateWordField(BNBF, BNGP, BNP2) Store(BNP2, Local0) Or(Local0, 0x40000000, Local0) Decrement(BNCT) Add(BNGP, 0x02, BNGP) If(LNot(LLess(BNGP, 0x20))) { Store(Zero, BNGP) } } Else { Store(Zero, Local0) } Return(Local0) } Method(S004, 3) { Store(0x80000000, Local0) If(LEqual(Arg0, Zero)) { Store(NGTI, Local0) } Else { If(LEqual(Arg0, One)) { If(LAnd(LEqual(Arg1, 0x04), And(NGTI, 0x04, ))) { And(Arg2, 0x03, Local1) If(LOr(LEqual(Local1, 0x03), LEqual(Local1, 0x02))) { If(LNot(NGTF)) { SVBL() Store(One, NGTF) } SBLC(Local1) Store(Local1, NGTM) Store(Zero, Local0) } If(LNot(Local1)) { If(NGTF) { Store(Zero, NGTF) RSBL() SBLC(Zero) } Store(Zero, NGTM) Store(Zero, Local0) } } } Else { If(LEqual(Arg0, 0x02)) { If(LAnd(LEqual(Arg1, 0x04), And(NGTI, 0x04, ))) { Store(NGTM, Local0) } } } } Return(Local0) } Method(S008, 3) { Store(0x80000000, Local0) If(LEqual(Arg0, 0x00)) { If(LAnd(LNot(LLess(Arg1, 0x00)), LNot(LGreater(Arg1, 0x05)))) { If(LEqual(Arg1, Zero)) { Store(Zero, Local0) } Else { If(LEqual(Arg1, One)) { If(LNot(LLess(\_SB.OSTP(), 0x40))) { Store(0x02, Local0) } Else { Store(Zero, Local0) } } Else { Store(0xa4, CMD) Store(Arg0, QAG1) Store(Arg1, QAG2) Store(Arg2, QAG3) Store(Zero, DVID) Store(Zero, SSMI) Store(DVID, Local0) } } } } Else { If(LEqual(Arg0, 0x01)) { If(LAnd(LNot(LLess(Arg1, 0x00)), LNot(LGreater(Arg1, 0x01)))) { Store(0xa4, CMD) Store(Arg0, QAG1) Store(Arg1, QAG2) Store(Arg2, QAG3) Store(Zero, DVID) Store(Zero, SSMI) Store(DVID, Local0) } } Else { If(LEqual(Arg0, 0x02)) { If(LAnd(LNot(LLess(Arg1, 0x00)), LNot(LGreater(Arg1, 0x01)))) { Store(0xa4, CMD) Store(Arg0, QAG1) Store(Arg1, QAG2) Store(Arg2, QAG3) Store(Zero, DVID) Store(Zero, SSMI) Store(DVID, Local0) } } Else { If(LEqual(Arg0, 0x03)) { If(LEqual(Arg1, 0x00)) { Store(0xa4, CMD) Store(Arg0, QAG1) Store(Arg1, QAG2) Store(Arg2, QAG3) Store(Zero, DVID) Store(Zero, SSMI) Store(DVID, Local0) } } Else { If(LEqual(Arg0, 0x04)) { If(LAnd(LNot(LLess(Arg1, 0x00)), LNot(LGreater(Arg1, 0x01)))) { Store(0xa4, CMD) Store(Arg0, QAG1) Store(Arg1, QAG2) Store(Arg2, QAG3) Store(Zero, DVID) Store(Zero, SSMI) Store(DVID, Local0) } } } } } } Return(Local0) } } Scope(\_SB.FEXT) { Method(SBLC, 1) { If(LNot(Arg0)) { Store(Zero, BLCT) } Else { If(LEqual(Arg0, 0x03)) { Store(One, BLCT) } Else { If(LEqual(Arg0, 0x02)) { Name(BBCT, Buffer(BLLM) { }) Store(BLLT, BBCT) CreateByteField(BBCT, Zero, BLL0) Store(BLL0, LCDB) Store(0x01000000, DVID) Or(DVID, BLL0, DVID) Store(0x82, CMD) Store(Zero, SSMI) Store(Zero, BLCT) } } } } Method(SVBL) { And(\_SB.PCI0.LPCB.FJEX.GBLL(), 0x7fffffff, LSBL) } Method(RSBL) { \_SB.PCI0.LPCB.FJEX.SBLL(LSBL) } Method(S006, 3) { Store(0x80000000, Local0) If(ECOK) { If(LEqual(Arg0, Zero)) { Store(ECCI, Local0) } Else { If(LEqual(Arg0, 0x10)) { If(Arg1) { And(Arg1, 0xff, ECG1) Store(0x23, ECGM) Store(Zero, Local1) While(LAnd(ECGM, LLess(Local1, 0x64))) { Sleep(0x01) Increment(Local1) } If(LNot(LLess(Local1, 0x64))) { Store(0x80000001, Local0) } Else { Or(ShiftLeft(ECG2, 0x08, ), ECG3, Local0) } } Else { Store(0xfd70, Local0) } } Else { If(LEqual(Arg0, 0x11)) { And(Arg1, 0xff, ECG1) ShiftRight(And(Arg2, 0xff00, ), 0x08, ECG2) And(Arg2, 0xff, ECG3) Store(0x22, ECGM) Store(Zero, Local1) While(LAnd(ECGM, LLess(Local1, 0x64))) { Sleep(0x01) Increment(Local1) } If(LNot(LLess(Local1, 0x64))) { Store(0x80000001, Local0) } Else { Store(Zero, Local0) } } Else { If(LEqual(Arg0, 0x12)) { Store(GINT, Local0) Store(Zero, GINT) } Else { If(LEqual(Arg0, 0x20)) { ShiftRight(And(Arg1, 0xff000000, ), 0x18, ECD3) ShiftRight(And(Arg1, 0x00ff0000, ), 0x10, ECD2) ShiftRight(And(Arg1, 0xff00, ), 0x08, ECD1) And(Arg1, 0xff, ECCM) Store(Zero, Local1) While(LAnd(ECCM, LLess(Local1, 0x64))) { Sleep(0x01) Increment(Local1) } If(LNot(LLess(Local1, 0x64))) { Store(0x80000001, Local0) } Else { Or(Or(ShiftLeft(ECD3, 0x10, ), ShiftLeft(ECD2, 0x08, ), ), ECD1, Local0) } } } } } } } Return(Local0) } } Device(LID) { Name(_HID, 0x0d0cd041) Method(_LID) { If(CVCL) { Return(Zero) } Else { Return(One) } } Name(_PRW, Package(0x02) { 0x18, 0x04, }) Method(_PSW, 1) { Noop } } Device(PWRB) { Name(_HID, 0x0c0cd041) Method(_STA) { Return(0x0f) } } Device(AC) { Name(_HID, "ACPI0003") Scope(\) { Name(ACPS, Ones) } Method(_INI) { Store(ACPW, ACPS) } Method(_STA) { Return(0x0f) } Method(_PSR) { _INI() If(ACPW) { Return(One) } Else { Return(Zero) } } Name(_PCL, Package(0x01) { \_SB, }) Method(ACHK) { Store(ACPW, Local0) If(LNot(LEqual(Local0, ACPS))) { Sleep(0x28) Notify(\_SB.AC, 0x80) Store(Zero, DVID) Store(0x8d, CMD) Store(Zero, SSMI) Notify(\_PR.CPU0, 0x80) Store(Local0, ACPS) } } } Device(CMB1) { Name(_HID, 0x0a0cd041) Name(_UID, One) Name(_PCL, Package(0x01) { \_SB, }) Scope(\) { Name(B1PS, Ones) Name(B1RS, Ones) Name(B1CS, Ones) Name(B1LS, Ones) Name(BIF1, Package(0x0d) { 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, "", "1", "LION", "Fujitsu", }) Name(BST1, Package(0x04) { }) } Method(MKWD, 2) { If(And(Arg1, 0x80, )) { Or(0xffff0000, Arg0, Local0) Or(Local0, ShiftLeft(Arg1, 0x08, ), Local0) Subtract(Zero, Local0, Local0) } Else { Store(Arg0, Local0) Or(Local0, ShiftLeft(Arg1, 0x08, ), Local0) } Return(Local0) } Method(_INI) { Store(B1P, B1PS) Store(B1CP, B1RS) Store(B1C, B1CS) Store(MKWD(B1LL, B1LH), B1LS) } Method(_BIF) { Name(BUFF, Buffer(0x0c) { }) Store(B1NO, Local5) CreateByteField(BIDT, B1ID, B1IX) Store(MKWD(B1DL, B1DH), Index(BIF1, 0x01, )) Store(MKWD(B1LL, B1LH), Index(BIF1, 0x02, )) Store(Multiply(Add(And(B1DV, 0xef, ), 0x02, ), 0x0e10, ), Index(BIF1, 0x04, )) If(LOr(TBPC, LNot(LLess(\_SB.OSTP(), 0x40)))) { Divide(Multiply(Add(Multiply(0x0c, 0x0a, ), 0x04, ), DerefOf(Index(BIF1, 0x01, )), ), 0x03e8, Local0, Index(BIF1, 0x05, )) } If(LOr(TBPC, LNot(LLess(\_SB.OSTP(), 0x40)))) { If(LNot(LLess(\_SB.OSTP(), 0x40))) { If(LEqual(BIFL, 0xff)) { Store(0x02, Local1) } Else { Store(BIFL, Local1) } } Else { Store(0x01, Local1) } Divide(Multiply(Add(Multiply(Local1, 0x0a, ), 0x04, ), DerefOf(Index(BIF1, 0x01, )), ), 0x03e8, Local0, Index(BIF1, 0x06, )) } If(Local5) { Store(DerefOf(Index(BMST, B1IX, )), BUFF) Store(0x07, Local0) Store(Local5, Local2) While(LAnd(Local2, LNot(LLess(Local0, 0x02)))) { Store(Subtract(DerefOf(Index(BUFF, Local0, )), 0x30, ), Local1) Divide(Add(Local1, Local2, ), 0x0a, Local1, Local2) Store(Add(Local1, 0x30, ), Index(BUFF, Local0, )) Decrement(Local0) } Store(BUFF, Index(BIF1, 0x09, )) } Else { Store(DerefOf(Index(BMNT, B1IX, )), Index(BIF1, 0x09, )) } Return(BIF1) } Method(_BST) { _INI() Store(Zero, Local0) If(B1P) { If(B1C) { Or(Local0, 0x02, Local0) } Else { If(LNot(ACPS)) { Or(Local0, One, Local0) } } If(LNot(LGreater(B1CP, One))) { Or(Local0, 0x04, Local0) } } Store(MKWD(B1CL, B1CH), Local1) Divide(Multiply(B1CP, MKWD(B1LL, B1LH), ), 0x03e8, Local4, Local2) If(Local4) { Increment(Local2) } Multiply(Local2, 0x0a, Local2) Store(MKWD(B1VL, B1VH), Local3) Store(Local0, Index(BST1, Zero, )) Store(Local1, Index(BST1, One, )) Store(Local2, Index(BST1, 0x02, )) Store(Local3, Index(BST1, 0x03, )) Return(BST1) } Method(_STA) { If(B1P) { Return(0x1f) } Return(0x0f) } Method(BCHK) { If(LNot(LEqual(B1P, B1PS))) { Notify(\_SB.CMB1, 0x81) Store(B1P, B1PS) } If(B1PS) { Store(MKWD(B1LL, B1LH), Local0) If(LNot(LEqual(Local0, B1LS))) { Notify(\_SB.CMB1, 0x81) } If(LOr(LNot(LEqual(B1C, B1CS)), LNot(LEqual(B1CP, B1RS)))) { Notify(\_SB.CMB1, 0x80) } Store(Local0, B1LS) Store(B1C, B1CS) Store(B1CP, B1RS) } } } Device(SLPB) { Name(_HID, 0x0e0cd041) Method(_STA) { If(FSCM) { Return(0x0f) } Else { Return(0x00) } } } } Scope(_TZ) { ThermalZone(TZ00) { Method(_CRT, 0, Serialized) { Return(Add(0x0aac, Multiply(CRTT, 0x0a, ), )) } Method(_TMP, 0, Serialized) { If(DTSE) { Store(0x9c, CMD) Store(0x00, DVID) Store(Zero, SSMI) Return(Add(0x0aac, Multiply(DTS1, 0x0a, ), )) } Else { Return(0x0bb8) } } Method(_PSL, 0, Serialized) { If(MPEN) { Return(Package(0x02) { \_PR.CPU0, \_PR.CPU1, }) } Else { Return(Package(0x01) { \_PR.CPU0, }) } } Method(_PSV, 0, Serialized) { Return(Add(0x0aac, Multiply(PSVT, 0x0a, ), )) } Method(_TC1, 0, Serialized) { Return(TC1V) } Method(_TC2, 0, Serialized) { Return(TC2V) } Method(_TSP, 0, Serialized) { Return(TSPV) } } ThermalZone(TZ01) { Method(_CRT, 0, Serialized) { Return(Add(0x0aac, Multiply(CRTT, 0x0a, ), )) } Method(_TMP, 0, Serialized) { If(DTSE) { Store(0x9c, CMD) Store(0x01, DVID) Store(Zero, SSMI) Return(Add(0x0aac, Multiply(DTS2, 0x0a, ), )) } Else { Return(0x0bb8) } } Method(_PSL, 0, Serialized) { If(MPEN) { Return(Package(0x02) { \_PR.CPU0, \_PR.CPU1, }) } Else { Return(Package(0x01) { \_PR.CPU0, }) } } Method(_PSV, 0, Serialized) { Return(Add(0x0aac, Multiply(PSVT, 0x0a, ), )) } Method(_TC1, 0, Serialized) { Return(TC1V) } Method(_TC2, 0, Serialized) { Return(TC2V) } Method(_TSP, 0, Serialized) { Return(TSPV) } } } Scope(\) { Method(TZSM, 1) { Store(0x9c, CMD) Store(Arg0, DVID) Store(Zero, SSMI) } } Scope(\_GPE) { Method(_L02) { Store(0x00, GPEC) Notify(\_TZ.TZ00, 0x80) Notify(\_TZ.TZ01, 0x80) } Method(_L05) { Notify(\_SB.PCI0.HDEF, 0x02) } Method(_L08) { } Method(_L09) { If(\_SB.PCI0.RP01.PSP1) { Store(0x01, \_SB.PCI0.RP01.PSP1) Store(0x01, \_SB.PCI0.RP01.PMCS) Notify(\_SB.PCI0.RP01, 0x02) } If(\_SB.PCI0.RP02.PSP2) { Store(0x01, \_SB.PCI0.RP02.PSP2) Store(0x01, \_SB.PCI0.RP02.PMCS) Notify(\_SB.PCI0.RP02, 0x02) } If(\_SB.PCI0.RP03.PSP3) { Store(0x01, \_SB.PCI0.RP03.PSP3) Store(0x01, \_SB.PCI0.RP03.PMCS) Notify(\_SB.PCI0.RP03, 0x02) } If(\_SB.PCI0.RP04.PSP4) { Store(0x01, \_SB.PCI0.RP04.PSP4) Store(0x01, \_SB.PCI0.RP04.PMCS) Notify(\_SB.PCI0.RP04, 0x02) } } Method(_L0B) { Notify(\_SB.PCI0.PCIB, 0x02) } Method(_L18) { Sleep(0xfa) If(LNot(LIDS)) { Store(0x97, CMD) Store(Zero, SSMI) } Not(LPOL, LPOL) Notify(\_SB.LID, 0x80) } Method(_L19) { Store(SSF0, Local0) Store(Local0, SSF0) And(Local0, Not(SSM0, ), Local0) Store(SSF1, Local1) Store(Local1, SSF1) And(Local1, Not(SSM1, ), Local1) Store(SSF2, Local2) Store(Local2, SSF2) And(Local2, Not(SSM2, ), Local2) If(And(Local2, 0x10, )) { \_SB.AC.ACHK() \_SB.CMB1.BCHK() If(LOr(LNot(LEqual(LWMD, PLWM)), LNot(LEqual(TALM, PTAL)))) { Store(LWMD, PLWM) Store(TALM, PTAL) Store(0x95, CMD) Or(PLWM, ShiftLeft(PTAL, 0x01, ), DVID) Store(Zero, SSMI) } If(LAnd(TALM, LNot(ACPW))) { Store(One, FOCT) } Else { Store(Zero, FOCT) } } If(And(Local0, 0x01, )) { \_SB.PCI0.GFX0.PHTK() Store(0x80, CMD) Store(Zero, SSMI) \_SB.PCI0.GFX0.AHTK() If(BSWF) { If(LNot(LLess(\_SB.OSTP(), 0x40))) { \_SB.PCI0.GFX0.LCD.BLNF } } If(AHKF) { Notify(\_SB.PCI0.LPCB.FJEX, 0x80) } If(IRBF) { If(LEqual(IRBC, 0xfd00)) { Store(One, GINT) } Else { \_SB.FEXT.SIRB(IRBC) } Notify(\_SB.FEXT, 0x80) Store(Zero, IRBF) } } If(And(Local1, 0x30, )) { \_SB.PCI0.LPCB.CMBT.SWCF() } If(And(Local2, 0x08, )) { Store(B2SU, Local6) Store(B2SD, Local7) Store(Zero, STAE) If(LOr(Local6, Local7)) { Sleep(0x03e8) Store(Zero, B2SU) Store(Zero, B2SD) Store(XOr(DKEV, One, ), DKEV) If(RPEN) { If(LNot(LEqual(B2TC, RPDS))) { Store(B2TC, RPDS) If(RPDS) { Notify(\_SB.REPL, Zero) } Else { Sleep(0x0fa0) Notify(\_SB.REPL, One) } } } } } } Method(_L1D) { If(EXPL) { \_SB.PCI0.RP02.PXS2.EXIN() } Else { \_SB.PCI0.RP02.PXS2.EXRM() } Sleep(0x64) Notify(\_SB.PCI0.RP02, Zero) } } Name(_S0, Package(0x04) { 0x00, 0x00, 0x00, 0x00, }) Name(_S3, Package(0x04) { 0x05, 0x05, 0x00, 0x00, }) Name(_S4, Package(0x04) { 0x06, 0x06, 0x00, 0x00, }) Name(_S5, Package(0x04) { 0x07, 0x07, 0x00, 0x00, }) Method(_PTS, 1) { Add(0xdd, Arg0, PO80) If(LAnd(LNot(LLess(Arg0, One)), LNot(LGreater(Arg0, 0x04)))) { If(RPEN) { Store(RPDS, DC1S) } If(\_SB.PCI0.RP02.PXS2._STA()) { Store(Zero, EXIS) } Else { Store(0xff, EXIS) } } \_SB.PCI0.LPCB.CMBT.BPTS(Arg0) Store(Zero, WAPB) Store(One, HDWA) Add(0xe0, Arg0, PO80) } Method(_WAK, 1) { Add(0xee, Arg0, PO80) \_SB.PCI0.LPCB.AINI() \_SB.PCI0.PCIB._INI() \_SB.FEXT._INI() If(LEqual(Arg0, 0x03)) { Store(0xa3, CMD) Store(0x00, INF) Store(Zero, SSMI) } If(LEqual(Arg0, 0x03)) { Store(0x9b, CMD) Store(0x04, DVID) Store(Zero, SSMI) } If(WAPB) { Notify(\_SB.PWRB, 0x02) } If(LEqual(Arg0, 0x04)) { \_SB.FEXT.FUNC(0x1002, 0x03, Ones, WBTN) } \_SB.PCI0.LPCB.CMBT.BWAK(Arg0) If(LAnd(LNot(LLess(Arg0, One)), LNot(LGreater(Arg0, 0x04)))) { If(RPEN) { If(LNot(LEqual(B2TC, DC1S))) { Store(B2TC, RPDS) If(RPDS) { Notify(\_SB.REPL, Zero) } Else { Notify(\_SB.REPL, One) } } } If(\_SB.PCI0.RP02.PXS2._STA()) { If(EXIS) { Notify(\_SB.PCI0.RP02, Zero) } } Else { If(LNot(EXIS)) { Notify(\_SB.PCI0.RP02, Zero) } } If(NGTM) { \_SB.FEXT.FUNC(0x1004, 0x01, 0x04, 0x00) } If(\_SB.PCI0.LPCB.DIGI._STA()) { \_SB.PCI0.LPCB.DIGI._INI() } \_SB.PCI0.LPCB.BTNS._INI() } Add(0xf0, Arg0, PO80) Return(Zero) } } /* MCFG: Length=60, Revision=1, Checksum=39, OEMID=FUJ, OEM Table ID=FJNB1C5, OEM Revision=0x1130000, Creator ID=FUJ, Creator Revision=0x100 */ /* SSDT: Length=1244, Revision=1, Checksum=11, OEMID=FUJ, OEM Table ID=FJNB1C5, OEM Revision=0x1130000, Creator ID=INTL, Creator Revision=0x20050624 */ /* SSDT: Length=356, Revision=1, Checksum=50, OEMID=FUJ, OEM Table ID=FJNB1C5, OEM Revision=0x1130000, Creator ID=INTL, Creator Revision=0x20050624 */ /* SSDT: Length=464, Revision=1, Checksum=87, OEMID=FUJ, OEM Table ID=FJNB1C5, OEM Revision=0x1130000, Creator ID=INTL, Creator Revision=0x20050624 */ /* APIC: Length=90, Revision=1, Checksum=52, OEMID=FUJ, OEM Table ID=FJNB1C5, OEM Revision=0x1130000, Creator ID= LTP, Creator Revision=0x0 */ /* HPET: Length=56, Revision=1, Checksum=215, OEMID=FUJ, OEM Table ID=FJNB1C5, OEM Revision=0x1130000, Creator ID=FUJ, Creator Revision=0x100 */ /* BOOT: Length=40, Revision=1, Checksum=224, OEMID=FUJ, OEM Table ID=FJNB1C5, OEM Revision=0x1130000, Creator ID=FUJ, Creator Revision=0x100 */ /* SLIC: Length=374, Revision=1, Checksum=43, OEMID=FUJ, OEM Table ID=PC, OEM Revision=0x1130000, Creator ID=FUJ, Creator Revision=0x100 */