Date: Fri, 23 Dec 2005 17:17:45 +0200 From: Vaida Bogdan <vaida.bogdan@gmail.com> To: freebsd-acpi@freebsd.org Subject: fujitsu notebook and acpi resume from sleep Message-ID: <12848a3b0512230717uf7d9513rfcdf8904aab498ba@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
------=_Part_6969_13589512.1135351065237 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline I have a Fujitsu Siemens AMILO Pro V2040 notebook and when I try to resume an acpi sleep command it freezes: If I power on after a sleep (acpiconf -s 3): ioapic_suspend: not_implemented! ioapic_suspend: not_implemented! [...] fwohci0: Phy 1394a available S400, 2 ports fwohci0: Link S400, max_rec 2048 bytes fwohci0: Initiate bus reset [ Freezes ] acpiconf -s 5 - poweroff acpiconf -s 4 - poweroff acpiconf -s 2 - sleep state S2 not supported by bios acpiconf -s 1 - sleep state S1 not supported by bios Attached: dmesg_acpi.txt (dmesg|grep acpi) and fujitsu_siemens.asl (acpidump -t -d) Any ideeas on how to solve this? ------=_Part_6969_13589512.1135351065237 Content-Type: application/octet-stream; name=fujitsu_siemens.asl Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="fujitsu_siemens.asl" /* RSD PTR: OEM=PTLTD, ACPI_Rev=1.0x (0) RSDT=0x1f6e490a, cksum=89 */ /* RSDT: Length=68, Revision=1, Checksum=172, OEMID=PTLTD, OEM Table ID=Wistron, OEM Revision=0x6040000, Creator ID= LTP, Creator Revision=0x0 Entries={ 0x1f6e9e88, 0x1f6e9efc, 0x1f6e9fd8, 0x1f6e9f9c, 0x1f6e514e, 0x1f6e4d09, 0x1f6e4b49, 0x1f6e494e } */ /* FACP: Length=116, Revision=1, Checksum=156, OEMID=INTEL, OEM Table ID=ALVISO, OEM Revision=0x6040000, Creator ID=LOHR, Creator Revision=0x5f FACS=0x1f6fafc0, DSDT=0x1f6e5326 INT_MODEL=PIC Preferred_PM_Profile=Unspecified (0) SCI_INT=9 SMI_CMD=0xb2, ACPI_ENABLE=0xf0, ACPI_DISABLE=0xf1, S4BIOS_REQ=0xf2 PSTATE_CNT=0x80 PM1a_EVT_BLK=0x1000-0x1003 PM1a_CNT_BLK=0x1004-0x1005 PM2_CNT_BLK=0x1020-0x1020 PM_TMR_BLK=0x1008-0x100b GPE0_BLK=0x1028-0x102f CST_CNT=0x85 P_LVL2_LAT=1 us, P_LVL3_LAT=85 us FLUSH_SIZE=0, FLUSH_STRIDE=0 DUTY_OFFSET=1, DUTY_WIDTH=3 DAY_ALRM=13, MON_ALRM=0, CENTURY=50 IAPC_BOOT_ARCH= Flags={WBINVD,PROC_C1,SLP_BUTTON,RTC_S4,DCK_CAP} */ /* FACS: Length=64, HwSig=0x00001398, Firm_Wake_Vec=0x00000000 Global_Lock= Flags= Version=0 */ /* DSDT: Length=19298, Revision=1, Checksum=209, OEMID=FUJ, OEM Table ID=M40, OEM Revision=0x6040000, Creator ID=MSFT, Creator Revision=0x100000e */ /* APIC: Length=104, Revision=1, Checksum=26, OEMID=INTEL, OEM Table ID=ALVISO, OEM Revision=0x6040000, Creator ID=LOHR, Creator Revision=0x5f Local APIC ADDR=0xfee00000 Flags={PC-AT} Type=Local APIC ACPI CPU=0 Flags={ENABLED} APIC ID=0 Type=Local APIC ACPI CPU=1 Flags={DISABLED} APIC ID=1 Type=IO APIC APIC ID=1 INT BASE=0 ADDR=0x00000000fec00000 Type=INT Override BUS=0 IRQ=0 INTR=2 Flags={Polarity=conforming, Trigger=conforming} Type=INT Override BUS=0 IRQ=9 INTR=9 Flags={Polarity=active-hi, Trigger=level} Type=Local NMI ACPI CPU=0 LINT Pin=1 Flags={Polarity=active-hi, Trigger=edge} Type=Local NMI ACPI CPU=1 LINT Pin=1 Flags={Polarity=active-hi, Trigger=edge} */ /* BOOT: Length=40, Revision=1, Checksum=164, OEMID=PTLTD, OEM Table ID=$SBFTBL$, OEM Revision=0x6040000, Creator ID= LTP, Creator Revision=0x1 */ /* MCFG: Length=60, Revision=1, Checksum=127, OEMID=INTEL, OEM Table ID=ALVISO, OEM Revision=0x6040000, Creator ID=LOHR, Creator Revision=0x5f Base Address= 0x00000000e0000000 Segment Group= 0x0000 Start Bus= 0 End Bus= 255 */ /* SSDT: Length=468, Revision=1, Checksum=190, OEMID=SataRe, OEM Table ID=SataAhci, OEM Revision=0x1000, Creator ID=INTL, Creator Revision=0x20030224 */ /* SSDT: Length=697, Revision=1, Checksum=122, OEMID=PmRef, OEM Table ID=Cpu0Ist, OEM Revision=0x3000, Creator ID=INTL, Creator Revision=0x20030224 */ /* SSDT: Length=448, Revision=1, Checksum=68, OEMID=PmRef, OEM Table ID=C0C3CST, OEM Revision=0x3001, Creator ID=INTL, Creator Revision=0x20030224 */ /* SSDT: Length=507, Revision=1, Checksum=77, OEMID=PmRef, OEM Table ID=CpuPm, OEM Revision=0x3000, Creator ID=INTL, Creator Revision=0x20030224 */ /* * Intel ACPI Component Architecture * AML Disassembler version 20041119 * * Disassembly of /tmp/acpidump.pmQmET, Fri Dec 23 17:16:51 2005 */ DefinitionBlock ("DSDT.aml", "DSDT", 1, "FUJ ", "M40 ", 100925440) { OperationRegion (PORT, SystemIO, 0x80, 0x01) Field (PORT, ByteAcc, NoLock, Preserve) { P80H, 8 } OperationRegion (IO_T, SystemIO, 0x0800, 0x10) Field (IO_T, ByteAcc, NoLock, Preserve) { Offset (0x02), Offset (0x04), Offset (0x06), Offset (0x08), TRP0, 8, Offset (0x0A), Offset (0x0B), Offset (0x0C), Offset (0x0D), Offset (0x0E), Offset (0x0F), Offset (0x10) } OperationRegion (GPIO, SystemIO, 0x1180, 0x3C) Field (GPIO, ByteAcc, NoLock, Preserve) { GU00, 8, GU01, 8, GU02, 8, GU03, 8, GIO0, 8, GIO1, 8, GIO2, 8, GIO3, 8, Offset (0x0C), GL00, 8, GL01, 8, , 5, GP21, 1, , 1, GP23, 1, , 1, GP25, 1, Offset (0x10), Offset (0x18), GB00, 8, GB01, 8, GB02, 8, GB03, 8, Offset (0x2C), GIV0, 8, GIV1, 8, GIV2, 8, GIV3, 8, GU04, 8, GU05, 8, GU06, 8, GU07, 8, GIO4, 8, GIO5, 8, GIO6, 8, GIO7, 8, , 1, GP33, 1, Offset (0x39), GL05, 8, GP48, 1, Offset (0x3B), GL07, 8 } OperationRegion (MNVS, SystemMemory, 0x1F6EAE4D, 0x0100) Field (MNVS, AnyAcc, Lock, Preserve) { OSYS, 16, SMIF, 8, PAR1, 8, PAR2, 8, SCIF, 8, PAR3, 8, PAR4, 8, LCKF, 8, PRM4, 8, PRM5, 8, P80D, 32, LIDS, 8, PWRS, 8, DBGS, 8, Offset (0x14), ACTT, 8, PSVT, 8, TC1V, 8, TC2V, 8, TSPV, 8, CRTT, 8, Offset (0x1E), BNUM, 8, B0SC, 8, B1SC, 8, B2SC, 8, B0SS, 8, B1SS, 8, B2SS, 8, Offset (0x28), APIC, 8, CPUL, 8, CPUH, 8, GV3E, 8, HTTE, 8, WTHT, 8, Offset (0x32), NATP, 8, CMAP, 8, CMBP, 8, LPTP, 8, FDCP, 8, CMCP, 8, Offset (0x3C), IGDS, 8, TLST, 8, CADL, 8, PADL, 8, CSTE, 16, NSTE, 16, SSTE, 16, NDID, 8, DID1, 32, DID2, 32, DID3, 32, DID4, 32, DID5, 32, DID6, 32, DID7, 32, DID8, 32, BLCS, 8, BRTL, 8, ALSE, 8, ALAF, 8, LLOW, 8, LHIH, 8, Offset (0x6E), EMAE, 8, EMAP, 16, EMAL, 16, Offset (0x82), GTF0, 56, GTF2, 56, IDEM, 8 } OperationRegion (RCRB, SystemMemory, 0xF0008000, 0x4000) Field (RCRB, DWordAcc, Lock, Preserve) { Offset (0x1000), Offset (0x3000), Offset (0x3404), HPAS, 2, , 5, HPAE, 1, Offset (0x3418), , 1, PATD, 1, SATD, 1, SMBD, 1, AZAD, 1, A97D, 1, Offset (0x341A), RP1D, 1, RP2D, 1, RP3D, 1, RP4D, 1 } Mutex (MSMI, 0x07) Method (PHSR, 2, NotSerialized) { Acquire (MSMI, 0xFFFF) Store (Arg1, PAR1) Store (Arg0, SMIF) Store (Zero, TRP0) Store (PAR1, Local0) Release (MSMI) Return (Local0) } Method (HKEY, 1, NotSerialized) { PHSR (0x1E, Arg0) } Method (LAMN, 1, NotSerialized) { PHSR (0x1F, Arg0) } Method (RBEC, 1, NotSerialized) { Return (PHSR (0x20, Arg0)) } Method (WBEC, 2, NotSerialized) { Acquire (MSMI, 0xFFFF) Store (Arg1, PAR2) Store (Arg0, PAR1) Store (0x21, SMIF) Store (Zero, TRP0) Release (MSMI) } Method (MBEC, 3, NotSerialized) { Acquire (MSMI, 0xFFFF) Store (Arg2, PAR3) Store (Arg1, PAR2) Store (Arg0, PAR1) Store (0x22, SMIF) Store (Zero, TRP0) Release (MSMI) } Mutex (MUTX, 0x00) Name (_S0, Package (0x03) { 0x00, 0x00, 0x00 }) Name (_S3, Package (0x03) { 0x05, 0x05, 0x00 }) Name (_S4, Package (0x03) { 0x06, 0x06, 0x00 }) Name (_S5, Package (0x03) { 0x07, 0x07, 0x00 }) Scope (\_PR) { Processor (CPU0, 0x00, 0x00001010, 0x06) {} Processor (CPU1, 0x01, 0x00001010, 0x06) {} } Name (\DSEN, 0x01) Name (\ECON, 0x00) Name (\GPIC, 0x00) Name (\CTYP, 0x00) Name (\L01C, 0x00) Name (TVSF, 0x01) Name (BOBO, 0x00) Name (DDST, 0x00) Method (\_PIC, 1, NotSerialized) { Store (Arg0, GPIC) } Method (_PTS, 1, NotSerialized) { Store (Arg0, P80H) Store (0x01, GP48) If (LEqual (Arg0, 0x05)) { PHSR (0x2A, 0x00) } } Method (_WAK, 1, NotSerialized) { Store (Arg0, P80H) If (LEqual (Arg0, 0x03)) { PHSR (0x2F, 0x00) If (LEqual (PAR1, 0x00)) { Notify (\_SB.SLPB, 0x02) } } If (LEqual (Arg0, 0x04)) { If (CondRefOf (_OSI, Local0)) { Store (0x07D1, OSYS) } Else { If (LEqual (SizeOf (_OS), 0x14)) { Store (0x07D0, OSYS) PHSR (0x35, 0x00) } Else { If (LEqual (SizeOf (_OS), 0x27)) { Store (0x07CF, OSYS) } Else { Store (0x07CE, OSYS) } } } } Notify (\_SB.PCI0.LPCB.EC0.BAT0, 0x81) Store (0x00, GP48) If (\ECON) { Store (0x01, \_SB.PCI0.LPCB.EC0.MTST) } Else { \MBEC (0x71, 0xFF, 0x08) } } Name (FWSO, "FWSO") Name (_PSC, 0x00) Method (_PS0, 0, NotSerialized) { Store (_PSC, Local0) Store (0x00, _PSC) } Method (_PS3, 0, NotSerialized) { Store (0x03, _PSC) } Scope (\_SI) { Method (_SST, 1, NotSerialized) { If (LEqual (Arg0, 0x00)) { Store (0x00, GP48) } If (LOr (LEqual (Arg0, 0x01), LEqual (Arg0, 0x02))) { Store (0x00, GP48) } If (LEqual (Arg0, 0x03)) { Store (0x01, GP48) } If (LEqual (Arg0, 0x04)) { Store (0x01, GP48) } } } Scope (\_GPE) { Method (_L01, 0, NotSerialized) { Add (L01C, 0x01, L01C) Sleep (0x64) If (\_SB.PCI0.RP01.HPCS) { Store (0x01, P80H) If (\_SB.PCI0.RP01.PDC1) { Store (0x01, \_SB.PCI0.RP01.PDC1) Notify (\_SB.PCI0.RP01, 0x00) } Store (0x01, \_SB.PCI0.RP01.HPCS) } If (\_SB.PCI0.RP02.HPCS) { If (\_SB.PCI0.RP02.PDC2) { Store (0x01, \_SB.PCI0.RP02.PDC2) Notify (\_SB.PCI0.RP02, 0x00) } Store (0x01, \_SB.PCI0.RP02.HPCS) } If (\_SB.PCI0.RP03.HPCS) { If (\_SB.PCI0.RP03.PDC3) { Store (0x01, \_SB.PCI0.RP03.PDC3) Notify (\_SB.PCI0.RP03, 0x00) } Store (0x01, \_SB.PCI0.RP03.HPCS) } If (\_SB.PCI0.RP04.HPCS) { If (\_SB.PCI0.RP04.PDC4) { Store (0x01, \_SB.PCI0.RP04.PDC4) Notify (\_SB.PCI0.RP04, 0x00) } Store (0x01, \_SB.PCI0.RP04.HPCS) } } Method (_L05, 0, NotSerialized) { If (AZAD) { Notify (\_SB.PCI0.MODM, 0x02) } Else { Notify (\_SB.PCI0.AZAL, 0x02) } } Method (_L09, 0, NotSerialized) { Store (0x09, P80H) 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, 0, NotSerialized) { Store (0x0B, P80H) Notify (\_SB.PCI0.PCIB, 0x02) } Method (_L1D, 0, NotSerialized) { Store (0x1D, P80H) } } Method (EC19, 0, NotSerialized) { If (LEqual (TLST, 0x0F)) { Store (PHSR (0x2D, 0x00), Local0) If (LNot (LLess (Local0, 0x02))) { Store (0x00, TLST) } Else { Store (Increment (Local0), TLST) } } Increment (TLST) If (LEqual (TLST, 0x01)) { Store (0x0101, NSTE) } If (LEqual (TLST, 0x02)) { Store (0x0404, NSTE) } If (LEqual (TLST, 0x03)) { Store (0x00, TLST) Store (0x0505, NSTE) } If (LEqual (TLST, 0x05)) { Store (0x04, TLST) Store (0x0202, NSTE) } If (LEqual (0x00, DSEN)) { PHSR (0x02, 0x00) If (LEqual (SMIF, 0x00)) { If (LNot (LEqual (CADL, PADL))) { Store (CADL, PADL) If (LEqual (OSYS, 0x07D1)) { Notify (\_SB.PCI0, 0x00) } Else { Notify (\_SB.PCI0.GFX0, 0x00) } Sleep (0x02EE) } Notify (\_SB.PCI0.GFX0, 0x80) } } If (LEqual (0x01, DSEN)) { PHSR (0x2C, 0x00) } } Method (EC20, 0, NotSerialized) { PHSR (0x2C, 0x00) } Scope (\_TZ) { Name (TBSE, 0x0AAC) Name (LTMP, 0x1E) Name (CRT0, 0x00) Name (CRT1, 0x00) Name (PSV0, 0x00) Name (PSV1, 0x00) Name (S0BF, 0x00) Name (S1BF, 0x00) Name (T4FG, 0x00) Name (T5FG, 0x00) ThermalZone (TZS0) { Method (_TMP, 0, NotSerialized) { If (LEqual (S0BF, 0x00)) { If (\ECON) { Store (\_SB.PCI0.LPCB.EC0.THSL, Local1) } Else { And (RBEC (0x92), 0x0F, Local1) } If (LNot (LLess (Local1, 0x04))) { Store (0x01, T4FG) } If (LNot (LLess (Local1, 0x05))) { Store (0x01, T5FG) } } Store (0x01, S0BF) If (\ECON) { Store (\_SB.PCI0.LPCB.EC0.THS0, Local0) } Else { Store (RBEC (0xA8), Local0) } If (LEqual (T4FG, 0x01)) { If (LNot (LGreater (Local0, PSV0))) { Add (PSV0, 0x02, Local0) } } Return (C2K (Local0)) } Method (_CRT, 0, NotSerialized) { If (\ECON) { Store (0x00, \_SB.PCI0.LPCB.EC0.TIID) Store (\_SB.PCI0.LPCB.EC0.TS5H, Local0) } Else { WBEC (0x01, 0x00) Store (RBEC (0xDE), Local0) } If (LNot (LLess (Local0, 0x80))) { Store (0x64, Local0) } Store (Local0, CRT0) Return (C2K (Local0)) } Name (_PSL, Package (0x01) { \_PR.CPU0 }) Method (_PSV, 0, NotSerialized) { If (\ECON) { Store (0x00, \_SB.PCI0.LPCB.EC0.TIID) Store (\_SB.PCI0.LPCB.EC0.TS3H, Local0) } Else { WBEC (0x01, 0x00) Store (RBEC (0xDA), Local0) } If (LNot (LLess (Local0, 0x80))) { Store (0x5A, Local0) } Store (Local0, PSV0) Return (C2K (Local0)) } Name (_TC1, 0x02) Name (_TC2, 0x05) Name (_TSP, 0x012C) } ThermalZone (TZS1) { Method (_TMP, 0, NotSerialized) { If (LEqual (S1BF, 0x00)) { If (\ECON) { Store (\_SB.PCI0.LPCB.EC0.THSL, Local1) } Else { And (RBEC (0x92), 0x0F, Local1) } If (LNot (LLess (Local1, 0x04))) { Store (0x01, T4FG) } If (LNot (LLess (Local1, 0x05))) { Store (0x01, T5FG) } } Store (0x01, S1BF) If (\ECON) { Store (\_SB.PCI0.LPCB.EC0.THS1, Local0) } Else { Store (RBEC (0xA9), Local0) } If (LEqual (T4FG, 0x01)) { If (LNot (LGreater (Local0, PSV1))) { Add (PSV1, 0x02, Local0) } } Return (C2K (Local0)) } Method (_CRT, 0, NotSerialized) { If (\ECON) { Store (0x01, \_SB.PCI0.LPCB.EC0.TIID) Store (\_SB.PCI0.LPCB.EC0.TS5H, Local0) } Else { WBEC (0x01, 0x01) Store (RBEC (0xDE), Local0) } If (LNot (LLess (Local0, 0x80))) { Store (0x64, Local0) } Store (Local0, CRT1) Return (C2K (Local0)) } Name (_PSL, Package (0x01) { \_PR.CPU0 }) Method (_PSV, 0, NotSerialized) { If (\ECON) { Store (0x01, \_SB.PCI0.LPCB.EC0.TIID) Store (\_SB.PCI0.LPCB.EC0.TS3H, Local0) } Else { WBEC (0x01, 0x01) Store (RBEC (0xDA), Local0) } If (LNot (LLess (Local0, 0x80))) { Store (0x5A, Local0) } Store (Local0, PSV1) Return (C2K (Local0)) } Name (_TC1, 0x02) Name (_TC2, 0x05) Name (_TSP, 0x012C) } Method (C2K, 1, NotSerialized) { Store (Arg0, Local0) If (LNot (LGreater (Local0, 0x10))) { Store (LTMP, Local0) } If (LNot (LLess (Local0, 0x78))) { Store (LTMP, Local0) } Add (Multiply (Local0, 0x0A), TBSE, Local0) Return (Local0) } } Method (GETP, 1, Serialized) { If (LEqual (And (Arg0, 0x09), 0x00)) { Return (0xFFFFFFFF) } If (LEqual (And (Arg0, 0x09), 0x08)) { Return (0x0384) } ShiftRight (And (Arg0, 0x0300), 0x08, Local0) ShiftRight (And (Arg0, 0x3000), 0x0C, Local1) Return (Multiply (0x1E, Subtract (0x09, Add (Local0, Local1)))) } Method (GDMA, 5, Serialized) { If (Arg0) { If (LAnd (Arg1, Arg4)) { Return (0x14) } If (LAnd (Arg2, Arg4)) { Return (Multiply (Subtract (0x04, Arg3), 0x0F)) } Return (Multiply (Subtract (0x04, Arg3), 0x1E)) } Return (0xFFFFFFFF) } Method (GETT, 1, Serialized) { Return (Multiply (0x1E, Subtract (0x09, Add (And (ShiftRight (Arg0, 0x02), 0x03), And (Arg0, 0x03))))) } Method (GETF, 3, Serialized) { Name (TMPF, 0x00) If (Arg0) { Or (TMPF, 0x01, TMPF) } If (And (Arg2, 0x02)) { Or (TMPF, 0x02, TMPF) } If (Arg1) { Or (TMPF, 0x04, TMPF) } If (And (Arg2, 0x20)) { Or (TMPF, 0x08, TMPF) } If (And (Arg2, 0x4000)) { Or (TMPF, 0x10, TMPF) } Return (TMPF) } Method (SETP, 3, Serialized) { If (LGreater (Arg0, 0xF0)) { Return (0x08) } Else { If (And (Arg1, 0x02)) { If (LAnd (LNot (LGreater (Arg0, 0x78)), And (Arg2, 0x02))) { Return (0x2301) } If (LAnd (LNot (LGreater (Arg0, 0xB4)), And (Arg2, 0x01))) { Return (0x2101) } } Return (0x1001) } } Method (SDMA, 1, Serialized) { If (LNot (LGreater (Arg0, 0x14))) { Return (0x01) } If (LNot (LGreater (Arg0, 0x1E))) { Return (0x02) } If (LNot (LGreater (Arg0, 0x2D))) { Return (0x01) } If (LNot (LGreater (Arg0, 0x3C))) { Return (0x02) } If (LNot (LGreater (Arg0, 0x5A))) { Return (0x01) } Return (0x00) } Method (SETT, 3, Serialized) { If (And (Arg1, 0x02)) { If (LAnd (LNot (LGreater (Arg0, 0x78)), And (Arg2, 0x02))) { Return (0x0B) } If (LAnd (LNot (LGreater (Arg0, 0xB4)), And (Arg2, 0x01))) { Return (0x09) } } Return (0x04) } Scope (\_SB) { Device (LID0) { Name (_HID, EisaId ("PNP0C0D")) Method (_LID, 0, NotSerialized) { If (\ECON) { Store (\_SB.PCI0.LPCB.EC0.KLID, Local0) } Else { And (\RBEC (0x70), 0x02, Local0) } If (Local0) { Return (0x01) } Else { Return (0x00) } } Method (_PSW, 1, NotSerialized) { If (\ECON) { Store (Arg0, \_SB.PCI0.LPCB.EC0.LIDW) } Else { If (Arg0) { \MBEC (0x72, 0xEF, 0x10) } Else { \MBEC (0x72, 0xEF, 0x00) } } } Name (_PRW, Package (0x02) { 0x1D, 0x03 }) } Device (SLPB) { Name (_HID, EisaId ("PNP0C0E")) Name (_PRW, Package (0x02) { 0x1D, 0x03 }) } Device (PCI0) { Method (_INI, 0, NotSerialized) { If (CondRefOf (_OSI, Local0)) { Store (0x07D1, OSYS) } Else { If (LEqual (SizeOf (_OS), 0x14)) { Store (0x07D0, OSYS) PHSR (0x35, 0x00) } Else { If (LEqual (SizeOf (_OS), 0x27)) { Store (0x07CF, OSYS) } Else { Store (0x07CE, OSYS) } } } } Method (_S3D, 0, NotSerialized) { Return (0x02) } Method (_S4D, 0, NotSerialized) { Return (0x02) } Name (_HID, EisaId ("PNP0A03")) 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, ResourceTemplate () { WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, 0x0000, 0x00FF, 0x0000, 0x0100, 0x00) DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x00000000, 0x00000000, 0x00000CF7, 0x00000000, 0x00000CF8, 0x00) IO (Decode16, 0x0CF8, 0x0CF8, 0x01, 0x08) DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x00000000, 0x00000D00, 0x0000FFFF, 0x00000000, 0x0000F300, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000A0000, 0x000BFFFF, 0x00000000, 0x00020000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000C0000, 0x000C3FFF, 0x00000000, 0x00004000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000C4000, 0x000C7FFF, 0x00000000, 0x00004000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000C8000, 0x000CBFFF, 0x00000000, 0x00004000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000CC000, 0x000CFFFF, 0x00000000, 0x00004000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000D0000, 0x000D3FFF, 0x00000000, 0x00004000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000D4000, 0x000D7FFF, 0x00000000, 0x00004000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000D8000, 0x000DBFFF, 0x00000000, 0x00004000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000DC000, 0x000DFFFF, 0x00000000, 0x00004000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000E0000, 0x000E3FFF, 0x00000000, 0x00004000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000E4000, 0x000E7FFF, 0x00000000, 0x00004000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000E8000, 0x000EBFFF, 0x00000000, 0x00004000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000EC000, 0x000EFFFF, 0x00000000, 0x00004000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000F0000, 0x000FFFFF, 0x00000000, 0x00010000, 0x00) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x00000000, 0xFEBFFFFF, 0x00000000, 0x00000000, 0x00) }) Method (_CRS, 0, Serialized) { If (PM1L) { CreateDWordField (BUF0, 0x80, C0LN) Store (Zero, C0LN) } If (LEqual (PM1L, 0x01)) { CreateBitField (BUF0, 0x0378, C0RW) Store (Zero, C0RW) } If (PM1H) { CreateDWordField (BUF0, 0x9B, C4LN) Store (Zero, C4LN) } If (LEqual (PM1H, 0x01)) { CreateBitField (BUF0, 0x0450, C4RW) Store (Zero, C4RW) } If (PM2L) { CreateDWordField (BUF0, 0xB6, C8LN) Store (Zero, C8LN) } If (LEqual (PM2L, 0x01)) { CreateBitField (BUF0, 0x0528, C8RW) Store (Zero, C8RW) } If (PM2H) { CreateDWordField (BUF0, 0xD1, CCLN) Store (Zero, CCLN) } If (LEqual (PM2H, 0x01)) { CreateBitField (BUF0, 0x0600, CCRW) Store (Zero, CCRW) } If (PM3L) { CreateDWordField (BUF0, 0xEC, D0LN) Store (Zero, D0LN) } If (LEqual (PM3L, 0x01)) { CreateBitField (BUF0, 0x06D8, D0RW) Store (Zero, D0RW) } If (PM3H) { CreateDWordField (BUF0, 0x0107, D4LN) Store (Zero, D4LN) } If (LEqual (PM3H, 0x01)) { CreateBitField (BUF0, 0x07B0, D4RW) Store (Zero, D4RW) } If (PM4L) { CreateDWordField (BUF0, 0x0122, D8LN) Store (Zero, D8LN) } If (LEqual (PM4L, 0x01)) { CreateBitField (BUF0, 0x0888, D8RW) Store (Zero, D8RW) } If (PM4H) { CreateDWordField (BUF0, 0x013D, DCLN) Store (Zero, DCLN) } If (LEqual (PM4H, 0x01)) { CreateBitField (BUF0, 0x0960, DCRW) Store (Zero, DCRW) } If (PM5L) { CreateDWordField (BUF0, 0x0158, E0LN) Store (Zero, E0LN) } If (LEqual (PM5L, 0x01)) { CreateBitField (BUF0, 0x0A38, E0RW) Store (Zero, E0RW) } If (PM5H) { CreateDWordField (BUF0, 0x0173, E4LN) Store (Zero, E4LN) } If (LEqual (PM5H, 0x01)) { CreateBitField (BUF0, 0x0B10, E4RW) Store (Zero, E4RW) } If (PM6L) { CreateDWordField (BUF0, 0x018E, E8LN) Store (Zero, E8LN) } If (LEqual (PM6L, 0x01)) { CreateBitField (BUF0, 0x0BE8, E8RW) Store (Zero, E8RW) } If (PM6H) { CreateDWordField (BUF0, 0x01A9, ECLN) Store (Zero, ECLN) } If (LEqual (PM6H, 0x01)) { CreateBitField (BUF0, 0x0CC0, ECRW) Store (Zero, ECRW) } If (PM0H) { CreateDWordField (BUF0, 0x01C4, F0LN) Store (Zero, F0LN) } If (LEqual (PM0H, 0x01)) { CreateBitField (BUF0, 0x0D98, F0RW) Store (Zero, F0RW) } CreateDWordField (BUF0, 0x01D3, M1MN) CreateDWordField (BUF0, 0x01D7, M1MX) CreateDWordField (BUF0, 0x01DF, M1LN) ShiftLeft (TOUD, 0x1B, M1MN) Add (Subtract (M1MX, M1MN), 0x01, M1LN) Return (BUF0) } Method (_PRT, 0, NotSerialized) { If (GPIC) { Return (Package (0x12) { Package (0x04) { 0x0001FFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x0002FFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x0007FFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x001BFFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x001CFFFF, 0x00, 0x00, 0x11 }, Package (0x04) { 0x001CFFFF, 0x01, 0x00, 0x10 }, Package (0x04) { 0x001CFFFF, 0x02, 0x00, 0x12 }, Package (0x04) { 0x001CFFFF, 0x03, 0x00, 0x13 }, Package (0x04) { 0x001DFFFF, 0x00, 0x00, 0x17 }, Package (0x04) { 0x001DFFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0x001DFFFF, 0x02, 0x00, 0x12 }, Package (0x04) { 0x001DFFFF, 0x03, 0x00, 0x13 }, Package (0x04) { 0x001DFFFF, 0x07, 0x00, 0x17 }, Package (0x04) { 0x001EFFFF, 0x00, 0x00, 0x15 }, Package (0x04) { 0x001EFFFF, 0x01, 0x00, 0x15 }, Package (0x04) { 0x001FFFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x001FFFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0x001FFFFF, 0x03, 0x00, 0x11 } }) } Else { Return (Package (0x12) { Package (0x04) { 0x0001FFFF, 0x00, \_SB.PCI0.LPCB.LNKA, 0x00 }, Package (0x04) { 0x0002FFFF, 0x00, \_SB.PCI0.LPCB.LNKA, 0x00 }, Package (0x04) { 0x0007FFFF, 0x00, \_SB.PCI0.LPCB.LNKA, 0x00 }, Package (0x04) { 0x001BFFFF, 0x00, \_SB.PCI0.LPCB.LNKA, 0x00 }, Package (0x04) { 0x001CFFFF, 0x00, \_SB.PCI0.LPCB.LNKB, 0x00 }, Package (0x04) { 0x001CFFFF, 0x01, \_SB.PCI0.LPCB.LNKA, 0x00 }, Package (0x04) { 0x001CFFFF, 0x02, \_SB.PCI0.LPCB.LNKC, 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.LNKB, 0x00 }, Package (0x04) { 0x001DFFFF, 0x02, \_SB.PCI0.LPCB.LNKC, 0x00 }, Package (0x04) { 0x001DFFFF, 0x03, \_SB.PCI0.LPCB.LNKD, 0x00 }, Package (0x04) { 0x001DFFFF, 0x07, \_SB.PCI0.LPCB.LNKH, 0x00 }, Package (0x04) { 0x001EFFFF, 0x00, \_SB.PCI0.LPCB.LNKF, 0x00 }, Package (0x04) { 0x001EFFFF, 0x01, \_SB.PCI0.LPCB.LNKF, 0x00 }, Package (0x04) { 0x001FFFFF, 0x00, \_SB.PCI0.LPCB.LNKA, 0x00 }, Package (0x04) { 0x001FFFFF, 0x01, \_SB.PCI0.LPCB.LNKB, 0x00 }, Package (0x04) { 0x001FFFFF, 0x03, \_SB.PCI0.LPCB.LNKB, 0x00 } }) } } Device (PEGP) { Name (_ADR, 0x00010000) Device (VGA) { Name (_ADR, 0x00) Method (_STA, 0, NotSerialized) { If (LEqual (PHSR (0x30, 0x00), 0x00)) { Return (0x00) } Else { Return (0x0F) } } Name (CRTC, 0x00) Name (CRTN, 0x00) Name (LCDC, 0x00) Name (LCDN, 0x00) Name (SWIH, 0x00) Method (VDEV, 0, NotSerialized) { Store (DDST, Local0) And (DDST, 0x03, DDST) If (LEqual (DDST, 0x01)) { Store (0x00, CRTC) Store (0x01, CRTN) Store (0x01, LCDC) Store (0x00, LCDN) } If (LEqual (DDST, 0x02)) { Store (0x01, CRTC) Store (0x01, CRTN) Store (0x00, LCDC) Store (0x01, LCDN) } If (LEqual (DDST, 0x03)) { Store (0x01, CRTC) Store (0x00, CRTN) Store (0x01, LCDC) Store (0x01, LCDN) } And (Local0, 0x04, Local0) If (LEqual (Local0, 0x04)) { Store (0x01, TVSF) } Else { Store (0x00, TVSF) } } Method (_DOS, 1, NotSerialized) { VDEV () Store (0x01, SWIH) } Method (_DOD, 0, NotSerialized) { Return (Package (0x03) { 0x00010100, 0x00010200, 0x00010110 }) } Device (CRT) { Name (_ADR, 0x0100) Method (_DCS, 0, NotSerialized) { If (CRTC) { Return (0x1F) } Else { Return (0x1D) } } Method (_DGS, 0, NotSerialized) { If (CRTN) { Return (0x01) } Else { Return (0x00) } } Method (_DSS, 1, NotSerialized) { } } Device (LCD) { Name (_ADR, 0x0110) Method (_DCS, 0, NotSerialized) { If (LCDC) { Return (0x1F) } Else { Return (0x1D) } } Method (_DGS, 0, NotSerialized) { If (LCDN) { Return (0x01) } Else { Return (0x00) } } Method (_DSS, 1, NotSerialized) { } Method (_DDC, 1, NotSerialized) { If (LEqual (Arg0, 0x01)) { Return (\_SB.PCI0.PEGP.VGA.DDC4) } If (LEqual (Arg0, 0x02)) { Concatenate (\_SB.PCI0.PEGP.VGA.DDC4, \_SB.PCI0.PEGP.VGA.DDC0, Local0) Return (Local0) } Return (0x00) } } Device (TVO) { Name (_ADR, 0x0200) Method (_DCS, 0, NotSerialized) { If (TVSF) { Return (0x1F) } Else { Return (0x1D) } } Method (_DGS, 0, NotSerialized) { If (TVSF) { Return (0x01) } Else { Return (0x00) } } Method (_DSS, 1, NotSerialized) { } Method (_DDC, 1, NotSerialized) { If (LEqual (Arg0, 0x01)) { Return (\_SB.PCI0.PEGP.VGA.DDC3) } If (LEqual (Arg0, 0x02)) { Concatenate (\_SB.PCI0.PEGP.VGA.DDC3, \_SB.PCI0.PEGP.VGA.DDC0, Local0) Return (Local0) } Return (0x00) } } Name (DDC0, Buffer (0x80) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) Name (DDC3, Buffer (0x80) { 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x41, 0xD0, 0xFE, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD3 }) Name (DDC4, Buffer (0x80) { 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x36, 0x7F, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x28, 0x1E, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xEC }) } Method (_PRT, 0, NotSerialized) { 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 (GFX0) { Name (_ADR, 0x00020000) Method (_STA, 0, NotSerialized) { If (LEqual (PHSR (0x30, 0x00), 0x01)) { Return (0x00) } Else { Return (0x0F) } } OperationRegion (VNVS, SystemMemory, 0x1F6EAF4D, 0x00010000) Field (VNVS, AnyAcc, Lock, Preserve) { VBF1, 262144, VBF2, 262144 } Method (_DOS, 1, NotSerialized) { Store (And (Arg0, 0x03), DSEN) } Method (_DOD, 0, NotSerialized) { If (LEqual (NDID, 0x01)) { Name (TMP1, Package (0x01) { 0xFFFFFFFF }) Store (Or (0x00010000, DID1), Index (TMP1, 0x00)) Return (TMP1) } If (LEqual (NDID, 0x02)) { Name (TMP2, Package (0x02) { 0xFFFFFFFF, 0xFFFFFFFF }) Store (Or (0x00010000, DID1), Index (TMP2, 0x00)) Store (Or (0x00010000, DID2), Index (TMP2, 0x01)) Return (TMP2) } If (LEqual (NDID, 0x03)) { Name (TMP3, Package (0x03) { 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }) Store (Or (0x00010000, DID1), Index (TMP3, 0x00)) Store (Or (0x00010000, DID2), Index (TMP3, 0x01)) Store (Or (0x00010000, DID3), Index (TMP3, 0x02)) Return (TMP3) } If (LEqual (NDID, 0x04)) { Name (TMP4, Package (0x04) { 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }) Store (Or (0x00010000, DID1), Index (TMP4, 0x00)) Store (Or (0x00010000, DID2), Index (TMP4, 0x01)) Store (Or (0x00010000, DID3), Index (TMP4, 0x02)) Store (Or (0x00010000, DID4), Index (TMP4, 0x03)) Return (TMP4) } Name (TMP5, Package (0x05) { 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }) Store (Or (0x00010000, DID1), Index (TMP5, 0x00)) Store (Or (0x00010000, DID2), Index (TMP5, 0x01)) Store (Or (0x00010000, DID3), Index (TMP5, 0x02)) Store (Or (0x00010000, DID4), Index (TMP5, 0x03)) Store (Or (0x00010000, DID5), Index (TMP5, 0x04)) Return (TMP5) } Device (DD01) { Method (_ADR, 0, Serialized) { Return (And (0xFFFF, DID1)) } Method (_DCS, 0, NotSerialized) { PHSR (0x01, 0x00) If (And (CSTE, 0x01)) { Return (0x1F) } Return (0x1D) } Method (_DGS, 0, NotSerialized) { If (And (NSTE, 0x01)) { Return (0x01) } Return (0x00) } Method (_DSS, 1, NotSerialized) { If (LEqual (And (Arg0, 0xC0000000), 0xC0000000)) { Store (NSTE, CSTE) } } } Device (DD02) { Method (_ADR, 0, Serialized) { Return (And (0xFFFF, DID2)) } Method (_DCS, 0, NotSerialized) { PHSR (0x01, 0x00) If (And (CSTE, 0x02)) { Return (0x1F) } Return (0x1D) } Method (_DGS, 0, NotSerialized) { If (And (NSTE, 0x02)) { Return (0x01) } Return (0x00) } Method (_DSS, 1, NotSerialized) { If (LEqual (And (Arg0, 0xC0000000), 0xC0000000)) { Store (NSTE, CSTE) } } } Device (DD03) { Method (_ADR, 0, Serialized) { Return (And (0xFFFF, DID3)) } Method (_DCS, 0, NotSerialized) { PHSR (0x01, 0x00) If (And (CSTE, 0x04)) { Return (0x1F) } Return (0x1D) } Method (_DGS, 0, NotSerialized) { If (And (NSTE, 0x04)) { Return (0x01) } Return (0x00) } Method (_DSS, 1, NotSerialized) { If (LEqual (And (Arg0, 0xC0000000), 0xC0000000)) { Store (NSTE, CSTE) } } } Device (DD04) { Method (_ADR, 0, Serialized) { Return (And (0xFFFF, DID4)) } Method (_DCS, 0, NotSerialized) { PHSR (0x01, 0x00) If (And (CSTE, 0x08)) { Return (0x1F) } Return (0x1D) } Method (_DGS, 0, NotSerialized) { If (And (NSTE, 0x08)) { Return (0x01) } Return (0x00) } Method (_DSS, 1, NotSerialized) { If (LEqual (And (Arg0, 0xC0000000), 0xC0000000)) { Store (NSTE, CSTE) } } } Device (DD05) { Method (_ADR, 0, Serialized) { Return (And (0xFFFF, DID5)) } Method (_DCS, 0, NotSerialized) { PHSR (0x01, 0x00) If (And (CSTE, 0x10)) { Return (0x1F) } Return (0x1D) } Method (_DGS, 0, NotSerialized) { If (And (NSTE, 0x10)) { Return (0x01) } Return (0x00) } Method (_DSS, 1, NotSerialized) { If (LEqual (And (Arg0, 0xC0000000), 0xC0000000)) { Store (NSTE, CSTE) } } } } Device (AZAL) { Name (_ADR, 0x001B0000) Name (_PRW, Package (0x02) { 0x05, 0x04 }) Method (_PS3, 0, NotSerialized) { } Method (_PS0, 0, NotSerialized) { Store (0x0F, \_SB.PCI0.LPCB.EC0.EDAT) Store (0x60, \_SB.PCI0.LPCB.EC0.ECMD) } } 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 (_RMV, 0, NotSerialized) { Return (0x01) } } Name (_PRW, Package (0x02) { 0x09, 0x04 }) Method (_PRT, 0, NotSerialized) { 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 (_RMV, 0, NotSerialized) { Return (0x01) } } Name (_PRW, Package (0x02) { 0x09, 0x04 }) Method (_PRT, 0, NotSerialized) { 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 (PXS0) { Name (_ADR, 0x00) Method (_RMV, 0, NotSerialized) { Return (0x01) } } Name (_PRW, Package (0x02) { 0x09, 0x04 }) Method (_PRT, 0, NotSerialized) { 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 } Name (_PRW, Package (0x02) { 0x09, 0x04 }) Method (_PRT, 0, NotSerialized) { 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 } }) } } } Device (USB1) { Name (_ADR, 0x001D0000) Method (_S3D, 0, NotSerialized) { Return (0x02) } Method (_S4D, 0, NotSerialized) { Return (0x02) } } Device (USB2) { Name (_ADR, 0x001D0001) Method (_S3D, 0, NotSerialized) { Return (0x02) } Method (_S4D, 0, NotSerialized) { Return (0x02) } } Device (USB3) { Name (_ADR, 0x001D0002) Method (_S3D, 0, NotSerialized) { Return (0x02) } Method (_S4D, 0, NotSerialized) { Return (0x02) } } Device (USB4) { Name (_ADR, 0x001D0003) Method (_S3D, 0, NotSerialized) { Return (0x02) } Method (_S4D, 0, NotSerialized) { Return (0x02) } } Device (USB7) { Name (_ADR, 0x001D0007) Method (_S3D, 0, NotSerialized) { Return (0x02) } Method (_S4D, 0, NotSerialized) { Return (0x02) } } Device (PCIB) { Name (_ADR, 0x001E0000) Device (CBS0) { Name (_ADR, 0x00090000) Method (_STA, 0, NotSerialized) { Return (0x0F) } Method (_S3D, 0, NotSerialized) { Return (0x03) } Method (_S4D, 0, NotSerialized) { Return (0x03) } } Device (LANB) { Method (_PS3, 0, NotSerialized) { If (\ECON) { Store (0x01, \_SB.PCI0.LPCB.EC0.MTST) } Else { \MBEC (0x71, 0xFF, 0x08) } Store (0x01, BOBO) } Method (_PS0, 0, NotSerialized) { } Name (_ADR, 0x00070000) Name (_PRW, Package (0x02) { 0x0B, 0x05 }) } Method (_PRT, 0, NotSerialized) { If (GPIC) { Return (Package (0x06) { Package (0x04) { 0x0005FFFF, 0x00, 0x00, 0x14 }, Package (0x04) { 0x0007FFFF, 0x00, 0x00, 0x14 }, Package (0x04) { 0x0009FFFF, 0x00, 0x00, 0x16 }, Package (0x04) { 0x0009FFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0x0009FFFF, 0x02, 0x00, 0x15 }, Package (0x04) { 0x0009FFFF, 0x03, 0x00, 0x16 } }) } Else { Return (Package (0x06) { Package (0x04) { 0x0005FFFF, 0x00, \_SB.PCI0.LPCB.LNKE, 0x00 }, Package (0x04) { 0x0007FFFF, 0x00, \_SB.PCI0.LPCB.LNKE, 0x00 }, Package (0x04) { 0x0009FFFF, 0x00, \_SB.PCI0.LPCB.LNKG, 0x00 }, Package (0x04) { 0x0009FFFF, 0x01, \_SB.PCI0.LPCB.LNKB, 0x00 }, Package (0x04) { 0x0009FFFF, 0x02, \_SB.PCI0.LPCB.LNKF, 0x00 }, Package (0x04) { 0x0009FFFF, 0x03, \_SB.PCI0.LPCB.LNKG, 0x00 } }) } } } Device (AUD0) { Name (_ADR, 0x001E0002) } Device (MODM) { Name (_ADR, 0x001E0003) Name (_PRW, Package (0x02) { 0x05, 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 } Device (LNKA) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x01) Method (_DIS, 0, Serialized) { Store (0x80, PARC) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {10,11} }) Method (_CRS, 0, Serialized) { Name (RTLA, ResourceTemplate () { 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, EisaId ("PNP0C0F")) Name (_UID, 0x02) Method (_DIS, 0, Serialized) { Store (0x80, PBRC) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {10,11} }) Method (_CRS, 0, Serialized) { Name (RTLB, ResourceTemplate () { 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, EisaId ("PNP0C0F")) Name (_UID, 0x03) Method (_DIS, 0, Serialized) { Store (0x80, PCRC) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {10,11} }) Method (_CRS, 0, Serialized) { Name (RTLC, ResourceTemplate () { 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, EisaId ("PNP0C0F")) Name (_UID, 0x04) Method (_DIS, 0, Serialized) { Store (0x80, PDRC) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {10,11} }) Method (_CRS, 0, Serialized) { Name (RTLD, ResourceTemplate () { 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, EisaId ("PNP0C0F")) Name (_UID, 0x05) Method (_DIS, 0, Serialized) { Store (0x80, PERC) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {10,11} }) Method (_CRS, 0, Serialized) { Name (RTLE, ResourceTemplate () { 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, EisaId ("PNP0C0F")) Name (_UID, 0x06) Method (_DIS, 0, Serialized) { Store (0x80, PFRC) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {10,11} }) Method (_CRS, 0, Serialized) { Name (RTLF, ResourceTemplate () { 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, EisaId ("PNP0C0F")) Name (_UID, 0x07) Method (_DIS, 0, Serialized) { Store (0x80, PGRC) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {11} }) Method (_CRS, 0, Serialized) { Name (RTLG, ResourceTemplate () { 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, EisaId ("PNP0C0F")) Name (_UID, 0x08) Method (_DIS, 0, Serialized) { Store (0x80, PHRC) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared) {10,11} }) Method (_CRS, 0, Serialized) { Name (RTLH, ResourceTemplate () { 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 (EC0) { Name (_HID, EisaId ("PNP0C09")) Name (_GPE, 0x17) Method (_STA, 0, NotSerialized) { Return (0x0F) } Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0062, 0x0062, 0x00, 0x01) IO (Decode16, 0x0066, 0x0066, 0x00, 0x01) }) OperationRegion (ECO1, SystemIO, 0x62, 0x01) Field (ECO1, ByteAcc, Lock, Preserve) { PX62, 8 } OperationRegion (ECO2, SystemIO, 0x66, 0x01) Field (ECO2, ByteAcc, Lock, Preserve) { PX66, 8 } OperationRegion (RAM, EmbeddedControl, 0x00, 0xFF) Field (RAM, AnyAcc, Lock, Preserve) { ECMD, 8, Offset (0x08), EDAT, 8, Offset (0x0A), , 1, BLNK, 1, Offset (0x70), , 1, KLID, 1, , 3, KACS, 1, Offset (0x71), , 2, DCST, 1, MTST, 1, KBID, 3, Offset (0x72), , 2, KEYW, 1, TPDW, 1, LIDW, 1, BL2W, 1 } Field (RAM, AnyAcc, Lock, Preserve) { Offset (0x01), TIID, 8, Offset (0x10), , 1, KTEE, 1, Offset (0x11), KPPS, 1, Offset (0x91), TTID, 8, KCSS, 1, KCTT, 1, KDTT, 1, KOSD, 1, KVTP, 1, Offset (0xA8), THS0, 8, THS1, 8, THS2, 8, THS3, 8, THS4, 8, THS5, 8, THS6, 8, THS7, 8 } Field (RAM, AnyAcc, Lock, Preserve) { Offset (0x92), KTAF, 8 } Field (RAM, AnyAcc, Lock, Preserve) { Offset (0x92), THSL, 4 } Field (RAM, AnyAcc, Lock, Preserve) { Offset (0xD8), TS2H, 8, TS3L, 8, TS3H, 8, TS4L, 8, TS4H, 8, TS5L, 8, TS5H, 8, TS6, 8 } Method (_REG, 2, NotSerialized) { If (LEqual (Arg0, 0x03)) { Store (Arg1, ECON) } } Method (_Q17, 0, NotSerialized) { Store (0x17, P80H) Notify (\_SB.SLPB, 0x80) } Name (VTPE, 0x00) Method (_Q19, 0, NotSerialized) { Store (0x19, P80H) Store (PHSR (0x30, 0x00), VTPE) If (LEqual (VTPE, 0x00)) { EC19 () } Else { EC20 () } } Method (_Q80, 0, NotSerialized) { Store (0x80, P80H) If (LEqual (VTPE, 0x00)) { Store (0x00, TLST) EC19 () } Else { PHSR (0x2E, 0x01) } } Method (_Q81, 0, NotSerialized) { Store (0x81, P80H) If (LEqual (VTPE, 0x00)) { Store (0x01, TLST) EC19 () } Else { PHSR (0x2E, 0x02) } } Method (_Q82, 0, NotSerialized) { Store (0x82, P80H) If (LEqual (VTPE, 0x00)) { Store (0x02, TLST) EC19 () } Else { PHSR (0x2E, 0x03) } } Method (_Q84, 0, NotSerialized) { Store (0x84, P80H) If (LEqual (VTPE, 0x00)) { Store (0x04, TLST) EC19 () } Else { PHSR (0x2E, 0x04) } } Method (_Q1A, 0, NotSerialized) { Store (0x1A, P80H) HKEY (0x1A) } Method (_Q5C, 0, NotSerialized) { Store (0x5C, P80H) HKEY (0x5C) } Method (_Q5D, 0, NotSerialized) { Store (0x5D, P80H) Store (0x00, \_SB.PCI0.LPCB.EC0.MTST) Store (0x00, BOBO) } Method (_Q10, 0, NotSerialized) { Store (0x10, P80H) HKEY (0x10) } Method (_Q11, 0, NotSerialized) { Store (0x11, P80H) HKEY (0x11) } Method (_Q12, 0, NotSerialized) { Store (0x12, P80H) HKEY (0x12) } Method (_Q13, 0, NotSerialized) { Store (0x13, P80H) HKEY (0x13) } Method (_Q14, 0, NotSerialized) { Store (0x14, P80H) HKEY (0x14) } Method (_Q15, 0, NotSerialized) { Store (0x15, P80H) HKEY (0x15) } Method (_Q33, 0, NotSerialized) { Store (0x33, P80H) Store (0x00, \_TZ.T4FG) Store (0x00, \_TZ.T5FG) Notify (\_TZ.TZS0, 0x80) Notify (\_TZ.TZS1, 0x80) } Method (_Q34, 0, NotSerialized) { Store (0x34, P80H) Store (0x01, \_TZ.T4FG) Store (0x00, \_TZ.T5FG) Notify (\_TZ.TZS0, 0x80) Notify (\_TZ.TZS1, 0x80) } Method (_Q35, 0, NotSerialized) { Store (0x35, P80H) Store (0x01, \_TZ.T5FG) Notify (\_TZ.TZS0, 0x80) Notify (\_TZ.TZS1, 0x80) } Method (_Q36, 0, NotSerialized) { Sleep (0x01F4) Store (0x36, P80H) Notify (\_TZ.TZS0, 0x80) Notify (\_TZ.TZS1, 0x80) } Method (_Q40, 0, NotSerialized) { Store (0x40, P80H) Notify (\_SB.PCI0.LPCB.EC0.BAT0, 0x81) } Method (_Q41, 0, NotSerialized) { Store (0x41, P80H) Notify (\_SB.PCI0.LPCB.EC0.BAT0, 0x81) } Method (_Q48, 0, NotSerialized) { Store (0x48, P80H) Notify (\_SB.PCI0.LPCB.EC0.BAT0, 0x80) } Method (_Q4C, 0, NotSerialized) { Store (0x4C, P80H) If (B0ST) { Notify (\_SB.PCI0.LPCB.EC0.BAT0, 0x80) } } Method (_Q50, 0, NotSerialized) { Store (0x50, P80H) Notify (\_SB.PCI0.LPCB.EC0.ADP1, 0x80) } Method (_Q51, 0, NotSerialized) { Store (0x51, P80H) Notify (\_SB.PCI0.LPCB.EC0.ADP1, 0x80) } Method (_Q52, 0, NotSerialized) { Notify (\_SB.LID0, 0x80) } Method (_Q53, 0, NotSerialized) { Notify (\_SB.LID0, 0x80) } Field (RAM, AnyAcc, Lock, Preserve) { Offset (0x02), NBID, 8, Offset (0x88), NB0A, 1, , 3, NBL2, 1, Offset (0x89), NB1A, 1 } Field (RAM, AnyAcc, Lock, Preserve) { Offset (0x88), NB0S, 8, NB1S, 8 } Field (RAM, AnyAcc, Lock, Preserve) { Offset (0xE0), BSRC, 16, BSFC, 16, BSPE, 16, BSAC, 16, BSVO, 16, , 15, BSCM, 1, BSCU, 16 } Field (RAM, AnyAcc, Lock, Preserve) { Offset (0xE0), BSDC, 16, BSDV, 16, BSSN, 16 } Field (RAM, ByteAcc, NoLock, Preserve) { Offset (0xE0), BSMN, 128 } Field (RAM, ByteAcc, NoLock, Preserve) { Offset (0xE0), BSDN, 128 } Field (RAM, ByteAcc, NoLock, Preserve) { Offset (0xE0), BSCH, 128 } Mutex (BATM, 0x07) Method (GBIF, 3, NotSerialized) { Acquire (BATM, 0xFFFF) If (Arg2) { Store (0xFFFFFFFF, Index (Arg1, 0x01)) Store (0xFFFFFFFF, Index (Arg1, 0x02)) Store (0xFFFFFFFF, Index (Arg1, 0x04)) Store (0x00, Index (Arg1, 0x05)) Store (0x00, Index (Arg1, 0x06)) } Else { Store (Arg0, NBID) Store (BSCM, Local0) XOr (Local0, 0x01, Index (Arg1, 0x00)) Or (Arg0, 0x01, NBID) If (Local0) { Multiply (BSDC, 0x0A, Local1) } Else { Store (BSDC, Local1) } Store (Local1, Index (Arg1, 0x01)) And (Arg0, 0xF0, NBID) If (Local0) { Multiply (BSFC, 0x0A, Local2) } Else { Store (BSFC, Local2) } Store (Local2, Index (Arg1, 0x02)) Store (BSDV, Index (Arg1, 0x04)) Divide (Local2, 0x64, Local7, Local6) Multiply (Local6, 0x05, Local3) Store (Local3, Index (Arg1, 0x05)) Multiply (Local6, 0x03, Local4) Store (Local4, Index (Arg1, 0x06)) Subtract (Local3, Local4, Index (Arg1, 0x07)) Subtract (Local2, Local3, Index (Arg1, 0x08)) Or (Arg0, 0x01, NBID) Store (BSSN, Local7) Name (SERN, Buffer (0x06) { " " }) Store (0x04, Local6) While (Local7) { Divide (Local7, 0x0A, Local5, Local7) Add (Local5, 0x30, Index (SERN, Local6)) Decrement (Local6) } Store (SERN, Index (Arg1, 0x0A)) Or (Arg0, 0x03, NBID) Store (BSDN, Index (Arg1, 0x09)) And (Arg0, 0xF0, NBID) Or (Arg0, 0x04, NBID) Store (BSCH, Index (Arg1, 0x0B)) And (Arg0, 0xF0, NBID) Or (Arg0, 0x02, NBID) Store (BSMN, Index (Arg1, 0x0C)) } Release (BATM) Return (Arg1) } Method (GBST, 4, NotSerialized) { Acquire (BATM, 0xFFFF) If (And (Arg1, 0x02)) { Store (0x02, Local0) } Else { If (And (Arg1, 0x04)) { Store (0x01, Local0) } Else { Store (0x00, Local0) } } If (NBL2) { Or (Local0, 0x04, Local0) } If (And (Arg1, 0x01)) { And (Arg0, 0xF0, NBID) Store (BSAC, Local1) If (Arg2) { Multiply (BSRC, 0x0A, Local2) } Else { Store (BSRC, Local2) } Store (BSVO, Local3) If (LNot (LLess (Local1, 0x8000))) { If (And (Local0, 0x01)) { Subtract (0x00010000, Local1, Local1) } Else { Store (0x00, Local1) } } Else { If (LEqual (And (Local0, 0x02), 0x00)) { Store (0x00, Local1) } } If (Arg2) { Multiply (Local3, Local1, Local1) Divide (Local1, 0x03E8, Local7, Local1) } } Else { Store (0x00, Local0) Store (0xFFFFFFFF, Local1) Store (0xFFFFFFFF, Local2) Store (0xFFFFFFFF, Local3) } Store (Local0, Index (Arg3, 0x00)) Store (Local1, Index (Arg3, 0x01)) Store (Local2, Index (Arg3, 0x02)) Store (Local3, Index (Arg3, 0x03)) Release (BATM) Return (Arg3) } Name (B0ST, 0x00) Device (BAT0) { Name (_HID, EisaId ("PNP0C0A")) Name (_UID, 0x01) Method (_PCL, 0, NotSerialized) { Return (\_SB) } Name (B0IP, Package (0x0D) { 0x01, 0xFFFFFFFF, 0xFFFFFFFF, 0x01, 0xFFFFFFFF, 0x00, 0x00, 0x5A, 0x5A, "", "100", "Lion", 0x00 }) Name (B0SP, Package (0x04) { 0x00, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }) Method (_STA, 0, NotSerialized) { If (\ECON) { Store (NB0A, Local1) } Else { ShiftRight (RBEC (0x88), 0x00, Local0) And (Local0, 0x01, Local1) } Store (Local1, B0ST) If (Local1) { Return (0x1F) } Else { Return (0x0F) } } Method (_BIF, 0, NotSerialized) { If (\ECON) { Store (NB0A, Local0) } Else { ShiftRight (RBEC (0x88), 0x00, Local0) } And (Local0, 0x01, Local6) Store (0x14, Local7) While (LAnd (Local6, Local7)) { If (\ECON) { Store (NB0S, Local1) } Else { Store (RBEC (0x88), Local1) } If (And (Local1, 0x08)) { Store (0x00, Local6) } Else { Sleep (0x01F4) Decrement (Local7) } } Return (GBIF (0x00, B0IP, Local6)) } Method (_BST, 0, NotSerialized) { XOr (DerefOf (Index (B0IP, 0x00)), 0x01, Local0) If (\ECON) { Store (NB0S, Local1) } Else { Store (RBEC (0x88), Local1) } Return (GBST (0x00, Local1, Local0, B0SP)) } } Name (ACST, 0x01) Device (ADP1) { Name (_HID, "ACPI0003") Method (_PSR, 0, NotSerialized) { If (ECON) { Store (KACS, Local1) } Else { Store (RBEC (0x70), Local0) And (Local0, 0x20, Local1) } If (Local1) { Store (0x01, ACST) } Else { Store (0x00, ACST) } Return (ACST) } Method (_PCL, 0, NotSerialized) { Return (\_SB) } Method (_STA, 0, NotSerialized) { Return (0x0F) } } } Device (DMAC) { Name (_HID, EisaId ("PNP0200")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0000, 0x0000, 0x01, 0x20) IO (Decode16, 0x0081, 0x0081, 0x01, 0x11) IO (Decode16, 0x0093, 0x0093, 0x01, 0x0D) IO (Decode16, 0x00C0, 0x00C0, 0x01, 0x20) DMA (Compatibility, NotBusMaster, Transfer8_16) {4} }) } Device (FWHD) { Name (_HID, EisaId ("INT0800")) Name (_CRS, ResourceTemplate () { Memory32Fixed (ReadOnly, 0xFF800000, 0x00800000) }) } Device (HPET) { Name (_HID, EisaId ("PNP0103")) Name (BUF0, ResourceTemplate () { IRQNoFlags () {0} IRQNoFlags () {8} Memory32Fixed (ReadOnly, 0xFED00000, 0x00000400) }) Method (_STA, 0, NotSerialized) { If (LNot (LLess (OSYS, 0x07D1))) { If (HPAE) { Return (0x0F) } } Else { If (HPAE) { Return (0x0B) } } Return (0x00) } Method (_CRS, 0, Serialized) { If (HPAE) { CreateDWordField (BUF0, 0x0A, HPT0) If (LEqual (HPAS, 0x01)) { Store (0xFED01000, HPT0) } If (LEqual (HPAS, 0x02)) { Store (0xFED02000, HPT0) } If (LEqual (HPAS, 0x03)) { Store (0xFED03000, HPT0) } } Return (BUF0) } } Device (IPIC) { Name (_HID, EisaId ("PNP0000")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0020, 0x0020, 0x01, 0x02) IO (Decode16, 0x0024, 0x0024, 0x01, 0x02) IO (Decode16, 0x0028, 0x0028, 0x01, 0x02) IO (Decode16, 0x002C, 0x002C, 0x01, 0x02) IO (Decode16, 0x0030, 0x0030, 0x01, 0x02) IO (Decode16, 0x0034, 0x0034, 0x01, 0x02) IO (Decode16, 0x0038, 0x0038, 0x01, 0x02) IO (Decode16, 0x003C, 0x003C, 0x01, 0x02) IO (Decode16, 0x00A0, 0x00A0, 0x01, 0x02) IO (Decode16, 0x00A4, 0x00A4, 0x01, 0x02) IO (Decode16, 0x00A8, 0x00A8, 0x01, 0x02) IO (Decode16, 0x00AC, 0x00AC, 0x01, 0x02) IO (Decode16, 0x00B0, 0x00B0, 0x01, 0x02) IO (Decode16, 0x00B4, 0x00B4, 0x01, 0x02) IO (Decode16, 0x00B8, 0x00B8, 0x01, 0x02) IO (Decode16, 0x00BC, 0x00BC, 0x01, 0x02) IO (Decode16, 0x04D0, 0x04D0, 0x01, 0x02) IRQNoFlags () {2} }) } Device (MATH) { Name (_HID, EisaId ("PNP0C04")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x00F0, 0x00F0, 0x01, 0x01) IRQNoFlags () {13} }) } Device (MBD0) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x01) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0061, 0x0061, 0x01, 0x01) IO (Decode16, 0x0063, 0x0063, 0x01, 0x01) IO (Decode16, 0x0065, 0x0065, 0x01, 0x01) IO (Decode16, 0x0067, 0x0067, 0x01, 0x01) IO (Decode16, 0x0080, 0x0080, 0x01, 0x01) IO (Decode16, 0x0092, 0x0092, 0x01, 0x01) IO (Decode16, 0x00B2, 0x00B2, 0x01, 0x02) IO (Decode16, 0x0800, 0x0800, 0x01, 0x10) IO (Decode16, 0x1000, 0x1000, 0x01, 0x80) IO (Decode16, 0x1180, 0x1180, 0x01, 0x40) IO (Decode16, 0x1200, 0x1200, 0x01, 0x01) IO (Decode16, 0x1204, 0x1204, 0x01, 0x01) Memory32Fixed (ReadWrite, 0xE0000000, 0x10000000) Memory32Fixed (ReadWrite, 0xF0000000, 0x00004000) Memory32Fixed (ReadWrite, 0xF0004000, 0x00001000) Memory32Fixed (ReadWrite, 0xF0005000, 0x00001000) Memory32Fixed (ReadWrite, 0xF0008000, 0x00004000) Memory32Fixed (ReadWrite, 0xFED20000, 0x00070000) }) } Device (MBD1) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x02) Name (_CRS, ResourceTemplate () { Memory32Fixed (ReadWrite, 0xFEC00000, 0x00001000) Memory32Fixed (ReadWrite, 0xFEE00000, 0x00001000) }) Method (_STA, 0, NotSerialized) { If (LNot (LGreater (OSYS, 0x07CF))) { If (LOr (APIC, HTTE)) { Return (0x0B) } } Return (0x00) } } Device (RTC) { Name (_HID, EisaId ("PNP0B00")) Name (BUF0, ResourceTemplate () { IO (Decode16, 0x0070, 0x0070, 0x01, 0x08) }) Name (BUF1, ResourceTemplate () { IO (Decode16, 0x0070, 0x0070, 0x01, 0x08) IRQNoFlags () {8} }) Method (_CRS, 0, Serialized) { If (HPAE) { Return (BUF0) } Return (BUF1) } } Device (TIMR) { Name (_HID, EisaId ("PNP0100")) Name (BUF0, ResourceTemplate () { IO (Decode16, 0x0040, 0x0040, 0x01, 0x04) IO (Decode16, 0x0050, 0x0050, 0x10, 0x04) }) Name (BUF1, ResourceTemplate () { IO (Decode16, 0x0040, 0x0040, 0x01, 0x04) IO (Decode16, 0x0050, 0x0050, 0x10, 0x04) IRQNoFlags () {0} }) Method (_CRS, 0, Serialized) { If (HPAE) { Return (BUF0) } Return (BUF1) } } Device (KBC0) { Name (_HID, EisaId ("PNP0303")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0060, 0x0060, 0x01, 0x01) IO (Decode16, 0x0064, 0x0064, 0x01, 0x01) IRQ (Edge, ActiveHigh, Exclusive) {1} }) Method (_STA, 0, NotSerialized) { If (\ECON) { Store (\_SB.PCI0.LPCB.EC0.KBID, Local0) If (LEqual (Local0, 0x01)) { Return (0x00) } Else { Return (0x0F) } } Else { ShiftRight (RBEC (0x71), 0x04, Local0) And (Local0, 0x07, Local0) If (LEqual (Local0, 0x01)) { Return (0x00) } Else { Return (0x0F) } } } } Device (KBC1) { Name (_HID, EisaId ("PNP0320")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0060, 0x0060, 0x01, 0x01) IO (Decode16, 0x0064, 0x0064, 0x01, 0x01) IRQ (Edge, ActiveHigh, Exclusive) {1} }) Method (_STA, 0, NotSerialized) { If (\ECON) { Store (\_SB.PCI0.LPCB.EC0.KBID, Local0) If (LEqual (Local0, 0x01)) { Return (0x0F) } Else { Return (0x00) } } Else { ShiftRight (RBEC (0x71), 0x04, Local0) And (Local0, 0x07, Local0) If (LEqual (Local0, 0x01)) { Return (0x0F) } Else { Return (0x00) } } } } Device (PS2M) { Name (_HID, EisaId ("SYN0302")) Name (_CID, Package (0x02) { 0x00032E4F, 0x130FD041 }) Name (_CRS, ResourceTemplate () { IRQ (Edge, ActiveHigh, Exclusive) {12} }) } } Device (PATA) { Name (_ADR, 0x001F0001) OperationRegion (PACS, PCI_Config, 0x40, 0xC0) Field (PACS, DWordAcc, NoLock, Preserve) { PRIT, 16, Offset (0x04), PSIT, 4, Offset (0x08), SYNC, 4, Offset (0x0A), SDT0, 2, , 2, SDT1, 2, Offset (0x14), ICR0, 4, ICR1, 4, ICR2, 4, ICR3, 4, ICR4, 4, ICR5, 4 } Device (PRID) { Name (_ADR, 0x00) Method (_GTM, 0, NotSerialized) { Name (PBUF, Buffer (0x14) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) CreateDWordField (PBUF, 0x00, PIO0) CreateDWordField (PBUF, 0x04, DMA0) CreateDWordField (PBUF, 0x08, PIO1) CreateDWordField (PBUF, 0x0C, DMA1) CreateDWordField (PBUF, 0x10, FLAG) Store (GETP (PRIT), PIO0) Store (GDMA (And (SYNC, 0x01), And (ICR3, 0x01), And (ICR0, 0x01), SDT0, And (ICR1, 0x01)), DMA0) If (LEqual (DMA0, 0xFFFFFFFF)) { Store (PIO0, DMA0) } If (And (PRIT, 0x4000)) { If (LEqual (And (PRIT, 0x90), 0x80)) { Store (0x0384, PIO1) } Else { Store (GETT (PSIT), PIO1) } } Else { Store (0xFFFFFFFF, PIO1) } Store (GDMA (And (SYNC, 0x02), And (ICR3, 0x02), And (ICR0, 0x02), SDT1, And (ICR1, 0x02)), DMA1) If (LEqual (DMA1, 0xFFFFFFFF)) { Store (PIO1, DMA1) } Store (GETF (And (SYNC, 0x01), And (SYNC, 0x02), PRIT), FLAG) If (And (LEqual (PIO0, 0xFFFFFFFF), LEqual (DMA0, 0xFFFFFFFF))) { Store (0x78, PIO0) Store (0x14, DMA0) Store (0x03, FLAG) } Return (PBUF) } Method (_STM, 3, NotSerialized) { CreateDWordField (Arg0, 0x00, PIO0) CreateDWordField (Arg0, 0x04, DMA0) CreateDWordField (Arg0, 0x08, PIO1) CreateDWordField (Arg0, 0x0C, DMA1) CreateDWordField (Arg0, 0x10, FLAG) If (LEqual (SizeOf (Arg1), 0x0200)) { And (PRIT, 0x40F0, PRIT) And (SYNC, 0x02, SYNC) Store (0x00, SDT0) And (ICR0, 0x02, ICR0) And (ICR1, 0x02, ICR1) And (ICR3, 0x02, ICR3) And (ICR5, 0x02, ICR5) CreateWordField (Arg1, 0x62, W490) CreateWordField (Arg1, 0x6A, W530) CreateWordField (Arg1, 0x7E, W630) CreateWordField (Arg1, 0x80, W640) CreateWordField (Arg1, 0xB0, W880) CreateWordField (Arg1, 0xBA, W930) Or (PRIT, 0x8004, PRIT) If (LAnd (And (FLAG, 0x02), And (W490, 0x0800))) { Or (PRIT, 0x02, PRIT) } Or (PRIT, SETP (PIO0, W530, W640), PRIT) If (And (FLAG, 0x01)) { Or (SYNC, 0x01, SYNC) Store (SDMA (DMA0), SDT0) If (LLess (DMA0, 0x1E)) { Or (ICR3, 0x01, ICR3) } If (LLess (DMA0, 0x3C)) { Or (ICR0, 0x01, ICR0) } If (And (W930, 0x2000)) { Or (ICR1, 0x01, ICR1) } } } If (LEqual (SizeOf (Arg2), 0x0200)) { And (PRIT, 0x3F0F, PRIT) Store (0x00, PSIT) And (SYNC, 0x01, SYNC) Store (0x00, SDT1) And (ICR0, 0x01, ICR0) And (ICR1, 0x01, ICR1) And (ICR3, 0x01, ICR3) And (ICR5, 0x01, ICR5) CreateWordField (Arg2, 0x62, W491) CreateWordField (Arg2, 0x6A, W531) CreateWordField (Arg2, 0x7E, W631) CreateWordField (Arg2, 0x80, W641) CreateWordField (Arg2, 0xB0, W881) CreateWordField (Arg2, 0xBA, W931) Or (PRIT, 0x8040, PRIT) If (LAnd (And (FLAG, 0x08), And (W491, 0x0800))) { Or (PRIT, 0x20, PRIT) } If (And (FLAG, 0x10)) { Or (PRIT, 0x4000, PRIT) If (LGreater (PIO1, 0xF0)) { Or (PRIT, 0x80, PRIT) } Else { Or (PRIT, 0x10, PRIT) Store (SETT (PIO1, W531, W641), PSIT) } } If (And (FLAG, 0x04)) { Or (SYNC, 0x02, SYNC) Store (SDMA (DMA1), SDT1) If (LLess (DMA1, 0x1E)) { Or (ICR3, 0x02, ICR3) } If (LLess (DMA1, 0x3C)) { Or (ICR0, 0x02, ICR0) } If (And (W931, 0x2000)) { Or (ICR1, 0x02, ICR1) } } } } Device (P_D0) { Name (_ADR, 0x00) Method (_GTF, 0, NotSerialized) { Name (PIB0, Buffer (0x0E) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF }) CreateByteField (PIB0, 0x01, PMD0) CreateByteField (PIB0, 0x08, DMD0) If (And (PRIT, 0x02)) { If (LEqual (And (PRIT, 0x09), 0x08)) { Store (0x08, PMD0) } Else { Store (0x0A, PMD0) ShiftRight (And (PRIT, 0x0300), 0x08, Local0) ShiftRight (And (PRIT, 0x3000), 0x0C, Local1) Add (Local0, Local1, Local2) If (LEqual (0x03, Local2)) { Store (0x0B, PMD0) } If (LEqual (0x05, Local2)) { Store (0x0C, PMD0) } } } Else { Store (0x01, PMD0) } If (And (SYNC, 0x01)) { Store (Or (SDT0, 0x40), DMD0) If (And (ICR1, 0x01)) { If (And (ICR0, 0x01)) { Add (DMD0, 0x02, DMD0) } If (And (ICR3, 0x01)) { Store (0x45, DMD0) } } } Else { Or (Subtract (And (PMD0, 0x07), 0x02), 0x20, DMD0) } Return (PIB0) } } Device (P_D1) { Name (_ADR, 0x01) Method (_GTF, 0, NotSerialized) { Name (PIB1, Buffer (0x0E) { 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF, 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF }) CreateByteField (PIB1, 0x01, PMD1) CreateByteField (PIB1, 0x08, DMD1) If (And (PRIT, 0x20)) { If (LEqual (And (PRIT, 0x90), 0x80)) { Store (0x08, PMD1) } Else { Add (And (PSIT, 0x03), ShiftRight (And (PSIT, 0x0C), 0x02), Local0) If (LEqual (0x05, Local0)) { Store (0x0C, PMD1) } Else { If (LEqual (0x03, Local0)) { Store (0x0B, PMD1) } Else { Store (0x0A, PMD1) } } } } Else { Store (0x01, PMD1) } If (And (SYNC, 0x02)) { Store (Or (SDT1, 0x40), DMD1) If (And (ICR1, 0x02)) { If (And (ICR0, 0x02)) { Add (DMD1, 0x02, DMD1) } If (And (ICR3, 0x02)) { Store (0x45, DMD1) } } } Else { Or (Subtract (And (PMD1, 0x07), 0x02), 0x20, DMD1) } Return (PIB1) } } } } Device (SATA) { Name (_ADR, 0x001F0002) OperationRegion (SACS, PCI_Config, 0x40, 0xC0) Field (SACS, DWordAcc, NoLock, Preserve) { PRIT, 16, SECT, 16, PSIT, 4, SSIT, 4, Offset (0x08), SYNC, 4, Offset (0x0A), SDT0, 2, , 2, SDT1, 2, Offset (0x0B), SDT2, 2, , 2, SDT3, 2, Offset (0x14), ICR0, 4, ICR1, 4, ICR2, 4, ICR3, 4, ICR4, 4, ICR5, 4, Offset (0x50), MAPV, 2, Offset (0x52), PCSR, 8 } } Device (SBUS) { Name (_ADR, 0x001F0003) OperationRegion (SMBP, PCI_Config, 0x40, 0xC0) Field (SMBP, DWordAcc, NoLock, Preserve) { , 2, I2CE, 1 } OperationRegion (SMBI, SystemIO, 0x18E0, 0x10) Field (SMBI, ByteAcc, NoLock, Preserve) { HSTS, 8, Offset (0x02), HCON, 8, HCOM, 8, TXSA, 8, DAT0, 8, DAT1, 8, HBDR, 8, PECR, 8, RXSA, 8, SDAT, 16 } Method (SSXB, 2, Serialized) { If (STRT ()) { Return (0x00) } Store (0x00, I2CE) Store (0xBF, HSTS) Store (Arg0, TXSA) Store (Arg1, HCOM) Store (0x48, HCON) If (COMP ()) { Or (HSTS, 0xFF, HSTS) Return (0x01) } Return (0x00) } Method (SRXB, 1, Serialized) { If (STRT ()) { Return (0xFFFF) } Store (0x00, I2CE) Store (0xBF, HSTS) Store (Or (Arg0, 0x01), TXSA) Store (0x44, HCON) If (COMP ()) { Or (HSTS, 0xFF, HSTS) Return (DAT0) } Return (0xFFFF) } Method (SWRB, 3, Serialized) { If (STRT ()) { Return (0x00) } Store (0x00, I2CE) Store (0xBF, HSTS) Store (Arg0, TXSA) Store (Arg1, HCOM) Store (Arg2, DAT0) Store (0x48, HCON) If (COMP ()) { Or (HSTS, 0xFF, HSTS) Return (0x01) } Return (0x00) } Method (SRDB, 2, Serialized) { If (STRT ()) { Return (0xFFFF) } Store (0x00, I2CE) Store (0xBF, HSTS) Store (Or (Arg0, 0x01), TXSA) Store (Arg1, HCOM) Store (0x48, HCON) If (COMP ()) { Or (HSTS, 0xFF, HSTS) Return (DAT0) } Return (0xFFFF) } Method (SBLW, 4, Serialized) { If (STRT ()) { Return (0x00) } Store (Arg3, I2CE) Store (0xBF, HSTS) Store (Arg0, TXSA) Store (Arg1, HCOM) Store (SizeOf (Arg2), DAT0) Store (0x00, Local1) Store (DerefOf (Index (Arg2, 0x00)), HBDR) Store (0x54, HCON) While (LGreater (SizeOf (Arg2), Local1)) { Store (0x0FA0, Local0) While (LAnd (LNot (And (HSTS, 0x80)), Local0)) { Decrement (Local0) Stall (0x32) } If (LNot (Local0)) { KILL () Return (0x00) } Store (0x80, HSTS) Increment (Local1) If (LGreater (SizeOf (Arg2), Local1)) { Store (DerefOf (Index (Arg2, Local1)), HBDR) } } If (COMP ()) { Or (HSTS, 0xFF, HSTS) Return (0x01) } Return (0x00) } Method (SBLR, 3, Serialized) { Name (TBUF, Buffer (0x0100) {}) If (STRT ()) { Return (0x00) } Store (Arg2, I2CE) Store (0xBF, HSTS) Store (Or (Arg0, 0x01), TXSA) Store (Arg1, HCOM) Store (0x54, HCON) Store (0x0FA0, Local0) While (LAnd (LNot (And (HSTS, 0x80)), Local0)) { Decrement (Local0) Stall (0x32) } If (LNot (Local0)) { KILL () Return (0x00) } Store (DAT0, Index (TBUF, 0x00)) Store (0x80, HSTS) Store (0x01, Local1) While (LLess (Local1, DerefOf (Index (TBUF, 0x00)))) { Store (0x0FA0, Local0) While (LAnd (LNot (And (HSTS, 0x80)), Local0)) { Decrement (Local0) Stall (0x32) } If (LNot (Local0)) { KILL () Return (0x00) } Store (HBDR, Index (TBUF, Local1)) Store (0x80, HSTS) Increment (Local1) } If (COMP ()) { Or (HSTS, 0xFF, HSTS) Return (TBUF) } Return (0x00) } Method (STRT, 0, Serialized) { Store (0xC8, Local0) While (Local0) { If (And (HSTS, 0x40)) { Decrement (Local0) Sleep (0x01) If (LEqual (Local0, 0x00)) { Return (0x01) } } Else { Store (0x00, Local0) } } Store (0x0FA0, Local0) While (Local0) { If (And (HSTS, 0x01)) { Decrement (Local0) Stall (0x32) If (LEqual (Local0, 0x00)) { KILL () } } Else { Return (0x00) } } Return (0x01) } Method (COMP, 0, Serialized) { Store (0x0FA0, Local0) While (Local0) { If (And (HSTS, 0x02)) { Return (0x01) } Else { Decrement (Local0) Stall (0x32) If (LEqual (Local0, 0x00)) { KILL () } } } Return (0x00) } Method (KILL, 0, Serialized) { Or (HCON, 0x02, HCON) Or (HSTS, 0xFF, HSTS) } } } } Scope (\_SB.PCI0.SATA) { Device (PRT0) { Name (_ADR, 0xFFFF) Method (_SDD, 1, NotSerialized) { Name (GBU0, Buffer (0x07) { 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00 }) CreateByteField (GBU0, 0x00, GB00) CreateByteField (GBU0, 0x01, GB01) CreateByteField (GBU0, 0x02, GB02) CreateByteField (GBU0, 0x03, GB03) CreateByteField (GBU0, 0x04, GB04) CreateByteField (GBU0, 0x05, GB05) CreateByteField (GBU0, 0x06, GB06) If (LEqual (SizeOf (Arg0), 0x0200)) { CreateWordField (Arg0, 0x9C, W780) CreateWordField (Arg0, 0x9E, W790) If (LAnd (W780, 0x04)) { If (LEqual (And (W790, 0x04), 0x00)) { Store (0x10, GB00) Store (0x03, GB01) Store (0xEF, GB06) } } } Store (GBU0, GTF0) } Method (_GTF, 0, NotSerialized) { Return (GTF0) } } Device (PRT2) { Name (_ADR, 0x0002FFFF) Method (_SDD, 1, NotSerialized) { Name (GBU2, Buffer (0x07) { 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00 }) CreateByteField (GBU2, 0x00, GB20) CreateByteField (GBU2, 0x01, GB21) CreateByteField (GBU2, 0x02, GB22) CreateByteField (GBU2, 0x03, GB23) CreateByteField (GBU2, 0x04, GB24) CreateByteField (GBU2, 0x05, GB25) CreateByteField (GBU2, 0x06, GB26) If (LEqual (SizeOf (Arg0), 0x0200)) { CreateWordField (Arg0, 0x9C, W782) CreateWordField (Arg0, 0x9E, W792) If (LAnd (W782, 0x04)) { If (LEqual (And (W792, 0x04), 0x00)) { Store (0x10, GB20) Store (0x03, GB21) Store (0xEF, GB26) } } } Store (GBU2, GTF2) } Method (_GTF, 0, NotSerialized) { Return (GTF2) } } } Scope (\_PR.CPU0) { Method (_PPC, 0, NotSerialized) { Return (0x00) } Method (_PCT, 0, NotSerialized) { If (And (CFGD, 0x4000)) { Return (Package (0x02) { ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x0000000000000800) }, ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x0000000000000802) } }) } If (LAnd (And (CFGD, 0x02), And (PDC0, 0x01))) { Return (Package (0x02) { ResourceTemplate () { Register (FFixedHW, 0x00, 0x00, 0x0000000000000000) }, ResourceTemplate () { Register (FFixedHW, 0x00, 0x00, 0x0000000000000000) } }) } Return (Package (0x02) { ResourceTemplate () { Register (SystemIO, 0x10, 0x00, 0x00000000000000B2) }, ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x00000000000000B3) } }) } Method (_PSS, 0, NotSerialized) { If (LAnd (LNot (And (CFGD, 0x4000)), LAnd (And (CFGD, 0x02), And (PDC0, 0x01)))) { Return (NPSS) } Return (SPSS) } Name (SPSS, Package (0x06) { Package (0x06) { 0x00000640, 0x00005208, 0x0000006E, 0x0000000A, 0x00000083, 0x00000000 }, Package (0x06) { 0x00000578, 0x00004844, 0x0000006E, 0x0000000A, 0x00000183, 0x00000001 }, Package (0x06) { 0x000004B0, 0x00003C8C, 0x0000006E, 0x0000000A, 0x00000283, 0x00000002 }, Package (0x06) { 0x000003E8, 0x000032C8, 0x0000006E, 0x0000000A, 0x00000383, 0x00000003 }, Package (0x06) { 0x00000320, 0x00002710, 0x0000006E, 0x0000000A, 0x00000483, 0x00000004 }, Package (0x06) { 0x00000258, 0x00001D4C, 0x0000006E, 0x0000000A, 0x00000583, 0x00000005 } }) Name (NPSS, Package (0x06) { Package (0x06) { 0x00000640, 0x00005208, 0x0000000A, 0x0000000A, 0x00001028, 0x00001028 }, Package (0x06) { 0x00000578, 0x00004844, 0x0000000A, 0x0000000A, 0x00000E24, 0x00000E24 }, Package (0x06) { 0x000004B0, 0x00003C8C, 0x0000000A, 0x0000000A, 0x00000C20, 0x00000C20 }, Package (0x06) { 0x000003E8, 0x000032C8, 0x0000000A, 0x0000000A, 0x00000A1B, 0x00000A1B }, Package (0x06) { 0x00000320, 0x00002710, 0x0000000A, 0x0000000A, 0x00000817, 0x00000817 }, Package (0x06) { 0x00000258, 0x00001D4C, 0x0000000A, 0x0000000A, 0x00000612, 0x00000612 } }) } Scope (\_PR.CPU0) { Method (_CST, 0, NotSerialized) { If (And (CFGD, 0x4000)) { Return (Package (0x02) { 0x01, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, 0x01, 0x0000000000000809) }, 0x01, 0x01, 0x03E8 } }) } If (LAnd (And (CFGD, 0x80), LNot (PWRS))) { Return (Package (0x04) { 0x04, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, 0x00, 0x0000000000000000) }, 0x01, 0x01, 0x03E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x0000000000001014) }, 0x02, 0x01, 0x01F4 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x0000000000001015) }, 0x03, 0x55, 0xFA } }) } If (And (CFGD, 0x40)) { Return (Package (0x04) { 0x03, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, 0x00, 0x0000000000000000) }, 0x01, 0x01, 0x03E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x0000000000001014) }, 0x02, 0x01, 0x01F4 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x0000000000001015) }, 0x03, 0x55, 0xFA } }) } If (And (CFGD, 0x20)) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, 0x00, 0x0000000000000000) }, 0x01, 0x01, 0x03E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, 0x00, 0x0000000000001014) }, 0x02, 0x01, 0x01F4 } }) } Return (Package (0x02) { 0x01, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, 0x00, 0x0000000000000000) }, 0x01, 0x01, 0x03E8 } }) } } Scope (\) { Name (SSDT, Package (0x0C) { "CPU0IST ", 0x1F6E4D09, 0x000002B9, "CPU1IST ", 0x00000000, 0xF000FF53, "CPU0CST ", 0x1F6E4B49, 0x000001C0, "CPU1CST ", 0x00000000, 0xF000FF53 }) Name (CFGD, 0x06D883F2) Name (\PDC0, 0x80000000) Name (\PDC1, 0x80000000) } Scope (\_PR.CPU0) { Name (HI0, 0x00) Name (HC0, 0x00) Method (_PDC, 1, NotSerialized) { CreateDWordField (Arg0, 0x08, CAP0) Store (CAP0, PDC0) If (LAnd (And (CFGD, 0x4000), LEqual (And (PDC0, 0x0A), 0x0A))) { If (And (CFGD, 0x03)) { OperationRegion (IST0, SystemMemory, DerefOf (Index (SSDT, 0x01)), DerefOf (Index (SSDT, 0x02))) Load (IST0, HI0) } If (And (CFGD, 0x10)) { OperationRegion (CST0, SystemMemory, DerefOf (Index (SSDT, 0x07)), DerefOf (Index (SSDT, 0x08))) Load (CST0, HC0) } } } } Scope (\_PR.CPU1) { Name (HI1, 0x00) Name (HC1, 0x00) Method (_PDC, 1, NotSerialized) { CreateDWordField (Arg0, 0x08, CAP1) Store (CAP1, PDC1) If (LAnd (And (CFGD, 0x4000), LEqual (And (PDC1, 0x0A), 0x0A))) { If (And (CFGD, 0x03)) { OperationRegion (IST1, SystemMemory, DerefOf (Index (SSDT, 0x04)), DerefOf (Index (SSDT, 0x05))) Load (IST1, HI1) } If (And (CFGD, 0x10)) { OperationRegion (CST1, SystemMemory, DerefOf (Index (SSDT, 0x0A)), DerefOf (Index (SSDT, 0x0B))) Load (CST1, HC1) } } If (LEqual (And (PDC1, 0x0A), 0x0A)) {} } } } ------=_Part_6969_13589512.1135351065237 Content-Type: text/plain; name=dmesg_acpi.txt; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="dmesg_acpi.txt" acpi0: <PTLTD Wistron> on motherboard acpi0: Power Button (fixed) pci_link0: <ACPI PCI Link LNKA> irq 10 on acpi0 pci_link1: <ACPI PCI Link LNKB> irq 11 on acpi0 pci_link2: <ACPI PCI Link LNKC> irq 11 on acpi0 pci_link3: <ACPI PCI Link LNKD> irq 11 on acpi0 pci_link4: <ACPI PCI Link LNKE> irq 10 on acpi0 pci_link5: <ACPI PCI Link LNKF> irq 10 on acpi0 pci_link6: <ACPI PCI Link LNKG> irq 10 on acpi0 pci_link7: <ACPI PCI Link LNKH> irq 11 on acpi0 acpi_ec0: <Embedded Controller: GPE 0x17> port 0x62,0x66 on acpi0 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0 cpu0: <ACPI CPU> on acpi0 acpi_perf0: <ACPI CPU Frequency Control> on cpu0 acpi_perf0: failed in PERF_STATUS attach device_attach: acpi_perf0 attach returned 6 acpi_perf0: <ACPI CPU Frequency Control> on cpu0 acpi_perf0: failed in PERF_STATUS attach device_attach: acpi_perf0 attach returned 6 acpi_throttle0: <ACPI CPU Throttling> on cpu0 acpi_lid0: <Control Method Lid Switch> on acpi0 acpi_button0: <Sleep Button> on acpi0 pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0 acpi_tz0: <Thermal Zone> on acpi0 acpi_tz1: <Thermal Zone> on acpi0 atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0 battery0: <ACPI Control Method Battery> on acpi0 acpi_acad0: <AC Adapter> on acpi0 ------=_Part_6969_13589512.1135351065237--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?12848a3b0512230717uf7d9513rfcdf8904aab498ba>