* RE: Error: Handler for [EmbeddedControl] returned AE_BAD_PARAMETER
[not found] ` <B44D37711ED29844BEA67908EAF36F032D5750-4yWAQGcml65pB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
@ 2004-06-29 1:21 ` Z F
0 siblings, 0 replies; 6+ messages in thread
From: Z F @ 2004-06-29 1:21 UTC (permalink / raw)
To: Li, Shaohua; +Cc: acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f
[-- Attachment #1: Type: text/plain, Size: 2714 bytes --]
Dear Shaohua Li,
Thank you very muc for your reply. Attached are the outputs of the
dmesg
(I loaded ac, battery, processor and thermal modules) is in the
dmesg.out file. The new_dsdt file contains output of acpidump
from pacpidump package. Could you take a look and see what is wrong.
Thank you very much for your kind help.
Lazar
--- "Li, Shaohua" <shaohua.li-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> wrote:
> Please attach your dmesg and acpidmp output, so we can check it.
>
> Thanks,
> -Shaohua
> >-----Original Message-----
> >From: acpi-devel-admin-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org [mailto:acpi-devel-
> >admin-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org] On Behalf Of Z F
> >Sent: Monday, June 28, 2004 1:26 PM
> >To: acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
> >Subject: [ACPI] Error: Handler for [EmbeddedControl] returned
> >AE_BAD_PARAMETER
> >
> >Hello Everybody,
> >
> >IT seems to me that all my problems start with the error message
> >indicated in the subject line. Could someone explain to me what this
> >error message means and possibly how (if possible) to correct the
> >problem.
> >
> >I use Dell Latitude x300 laptop and 2.4.26 kernel with the latest
> acpi
> >patch (acpi-20040326-2.4.26).
> >
> >I have modified the dsdt table so that it compiles without any
> errors,
> >but
> >I still get the above error at boot. AC/Battery status does not
> work.
> >Thermal does not work. It seems I can change the throttling of the
> CPU.
> >
> >Any suggestions are highly appreciated. Could I ask some one to
> reply
> >to me even if they do not know how to solve the problem? You see, I
> >have sent
> >several emails to this list and got very small number of replies.
> Maybe
> >
> >my subscription is broken? Sometimes I get double postings of other
> >people.
> >Thanks a lot for you kind help
> >
> >Lazar
> >
> >
> >
> >__________________________________
> >Do you Yahoo!?
> >New and Improved Yahoo! Mail - Send 10MB messages!
> >http://promotions.yahoo.com/new_mail
> >
> >
> >-------------------------------------------------------
> >This SF.Net email sponsored by Black Hat Briefings & Training.
> >Attend Black Hat Briefings & Training, Las Vegas July 24-29 -
> >digital self defense, top technical experts, no vendor pitches,
> >unmatched networking opportunities. Visit www.blackhat.com
> >_______________________________________________
> >Acpi-devel mailing list
> >Acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
> >https://lists.sourceforge.net/lists/listinfo/acpi-devel
>
>
__________________________________
Do you Yahoo!?
Yahoo! Mail - 50x more storage than other providers!
http://promotions.yahoo.com/new_mail
[-- Attachment #2: new_dsdt --]
[-- Type: application/octet-stream, Size: 133018 bytes --]
/*
RSD PTR: Checksum=163, OEMID=DELL, RsdtAddress=0x076e4e1a
*/
/*
RSDT: Length=56, Revision=1, Checksum=24,
OEMID=DELL, OEM Table ID=Montara, OEM Revision=0x6040000,
Creator ID= LTP, Creator Revision=0x0
*/
/*
Entries={ 0x076eae9e, 0x076eafa4, 0x076eafcc, 0x076e52b0, 0x076e4e52 }
*/
/*
DSDT=0x76e5402
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=85ms
FLUSH_SIZE=0, FLUSH_STRIDE=0
DUTY_OFFSET=1, DUTY_WIDTH=3
DAY_ALRM=13, MON_ALRM=0, CENTURY=50
Flags={WBINVD,PROC_C1,SLP_BUTTON,DCK_CAP}
*/
/*
DSDT: Length=23196, Revision=1, Checksum=107,
OEMID=INTEL, OEM Table ID=MONTARAG, OEM Revision=0x6040000,
Creator ID=MSFT, Creator Revision=0x100000e
*/
DefinitionBlock ( "acpi_dsdt.aml", //Output filename "DSDT", //Signature 0x1, //DSDT Revision "INTEL", //OEMID "MONTARAG", //TABLE ID 0x6040000 //OEM Revision
)
{
OperationRegion(PORT, SystemIO, 0x80, 0x2)
Field(PORT, ByteAcc, NoLock, Preserve) {
P80H, 8,
P81H, 8
}
OperationRegion(IO_T, SystemIO, 0x0800, 0x10)
Field(IO_T, ByteAcc, NoLock, Preserve) {
TRP0, 8
}
OperationRegion(A_IO, SystemIO, 0x1000, 0x30)
Field(A_IO, ByteAcc, NoLock, Preserve) {
PMS0, 8,
PMS1, 8,
PME0, 8,
PME1, 8,
PMC0, 8,
PMC1, 8,
Offset(0x8),
TMR0, 8,
TMR1, 8,
TMR2, 8,
TMR3, 8,
Offset(0x10),
PRC0, 8,
PRC1, 8,
PRC2, 8,
PRC3, 8,
Offset(0x2a),
GPS0, 8,
GPS1, 8
}
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(0xc),
GL00, 8,
GL01, 8,
GL02, 8,
GL03, 8,
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,
, 6,
LDBK, 1,
Offset(0x39),
GL05, 8,
GL06, 8,
GL07, 8
}
OperationRegion(MNVS, SystemMemory, 0x076ebd79, 0x40)
Field(MNVS, AnyAcc, Lock, Preserve) {
OSYS, 16,
SMIF, 8,
PRM0, 8,
PRM1, 8,
SCIF, 8,
PRM2, 8,
PRM3, 8,
LCKF, 8,
PRM4, 8,
PRM5, 8,
DBGS, 8,
DCKS, 4,
CDCK, 4,
FPEN, 8,
FPST, 8,
LIDS, 8,
PWRS, 8,
Offset(0x14),
CMAP, 8,
CMBP, 8,
LPTP, 8,
FDCP, 8,
TZON, 8,
ACTT, 8,
PSVT, 8,
TC1V, 8,
TC2V, 8,
TSPV, 8,
CRTT, 8,
Offset(0x20),
BVAL, 32,
TMP0, 8,
TMP1, 8,
TMP2, 8,
C4EN, 8,
TMP4, 32,
TMP5, 32,
IGDS, 8,
LCDA, 16,
TLST, 8,
CADL, 16,
PADL, 16,
CSTE, 16,
NSTE, 16,
SSTE, 16
}
Mutex(MUTX, 0)
Name(_S0_, Package(0x3) {
0x0,
0x0,
0x0,
})
Name(_S3_, Package(0x3) {
0x5,
0x5,
0x0,
})
Name(_S4_, Package(0x3) {
0x6,
0x6,
0x0,
})
Name(_S5_, Package(0x3) {
0x7,
0x7,
0x0,
})
Scope(\_PR_) {
Processor(CPU0, 0, 0x1010, 0x6) {
}
}
Name(\GPIC, 0x0)
Name(\CTYP, 0x0)
Name(\ECON, 0x0)
Name(\DSEN, 0x1)
Name(\WEND, 0x0)
Name(\HSAV, 0x0)
Name(\INWK, 0x0)
Name(\B1SA, 0x0)
Name(\B2SA, 0x0)
Method(\_PIC, 1) {
Store(Arg0, GPIC)
}
Method(_PTS, 1) {
Store(Arg0, P80H)
Store(\_SB_.PCI0.PCIB.DHID, \HSAV)
If(LEqual(Arg0, 0x5)) {
\_SB_.PHS_(0x9a)
\_SB_.PHS1(0x9c, 0xff)
Store(Zero, LDBK)
\_SB_.PHS_(0x9d)
}
If(LEqual(Arg0, 0x4)) {
\_SB_.PHS_(0x9a)
\_SB_.PHS1(0x98, 0x14)
}
If(LEqual(\_SB_.MEDB._STA(), 0xf)) {
Store(One, \_SB_.MEDB.DCBF)
}
Else {
Store(Zero, \_SB_.MEDB.DCBF)
}
Store(Zero, \_SB_.MEDB.S4FL)
Store(Zero, \_SB_.MEDB.SPUD)
And(GL03, 0xe5, GL03)
}
Method(_WAK, 1) {
Store(0x0, P80H)
Store(\HSAV, \_SB_.PCI0.PCIB.DHID)
\_SB_.PHS1(0x98, 0x0)
If(LEqual(Arg0, 0x4)) {
Notify(\_SB_.PWRB, 0x2)
Store(One, \_SB_.MEDB.S4FL)
}
If(LEqual(\_SB_.MEDB.DCBF, One)) {
If(LEqual(\_SB_.MEDB._STA(), Zero)) {
Store(One, \_SB_.MEDB.SPUD)
Notify(\_SB_.MEDB, 0x1)
Store(Zero, \_SB_.MEDB.DCST)
}
}
Else {
If(LEqual(\_SB_.MEDB._STA(), 0xf)) {
Notify(\_SB_.MEDB, 0x0)
Store(One, \_SB_.MEDB.DCST)
}
}
Store(\_SB_.PCI0.LPCB.H_EC.ACEX, PWRS)
If(LEqual(\_SB_.PCI0.LPCB.H_EC.B2EX, 0x1)) {
Store(\_SB_.PCI0.LPCB.H_EC.B2AF, Local0)
ShiftRight(Local0, 0x10, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LNot(LEqual(Local0, B2SA))) {
Notify(\_SB_.BAT2, 0x1)
Notify(\_SB_.BAT2, 0x81)
}
}
If(LEqual(\_SB_.PCI0.LPCB.H_EC.B1EX, 0x1)) {
Store(\_SB_.PCI0.LPCB.H_EC.B1AF, Local0)
ShiftRight(Local0, 0x10, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LNot(LEqual(Local0, B1SA))) {
Notify(\_SB_.BAT1, 0x1)
Notify(\_SB_.BAT1, 0x81)
}
}
Return(Package(0x2) {
0x0,
0x0,
})
}
Scope(\_GPE) {
Method(_L05) {
Notify(\_SB_.PCI0.MODM, 0x2)
Notify(\_SB_.PWRB, 0x2)
}
Method(_L0B) {
Notify(\_SB_.PCI0.PCIB, 0x2)
}
Method(_L14) {
If(\_SB_.MEDB.DSFL) {
\_SB_.MEDB.EVNT()
Signal(\_SB_.MEDB.DSYN)
Store(Zero, \_SB_.MEDB.DSFL)
}
Else {
Store(One, \_SB_.MEDB.DSFL)
If(LEqual(\_SB_.MEDB.ICNF, 0x0)) {
If(IGDS) {
Store(0x10, SMIF)
Store(0x0, TRP0)
}
Store(0x1, \_SB_.MEDB.ICNF)
}
Wait(\_SB_.MEDB.DSYN, 0xffff)
Reset(\_SB_.MEDB.DSYN)
If(LEqual(\_SB_.MEDB.ICNF, 0x1)) {
If(IGDS) {
Store(0x12, SMIF)
Store(0x0, TRP0)
}
Store(0x0, \_SB_.MEDB.ICNF)
}
}
}
Method(_L15) {
If(\_SB_.MEDB.DSFL) {
\_SB_.MEDB.EVNT()
Signal(\_SB_.MEDB.DSYN)
Store(Zero, \_SB_.MEDB.DSFL)
}
Else {
Store(One, \_SB_.MEDB.DSFL)
If(LEqual(\_SB_.MEDB.ICNF, 0x0)) {
If(IGDS) {
Store(0x10, SMIF)
Store(0x0, TRP0)
}
Store(0x1, \_SB_.MEDB.ICNF)
}
Wait(\_SB_.MEDB.DSYN, 0xffff)
Reset(\_SB_.MEDB.DSYN)
If(LEqual(\_SB_.MEDB.ICNF, 0x1)) {
If(IGDS) {
Store(0x12, SMIF)
Store(0x0, TRP0)
}
Store(0x0, \_SB_.MEDB.ICNF)
}
}
}
Method(_L1B) {
If(LNot(LEqual(CADL, PADL))) {
Store(CADL, PADL)
If(LEqual(OSYS, 0x07d1)) {
Notify(\_SB_.PCI0, 0x0)
}
Else {
Notify(\_SB_.PCI0.GFX0, 0x0)
}
Sleep(0x02ee)
}
Notify(\_SB_.PCI0.GFX0, 0x80)
Sleep(0x03e8)
USBN()
}
Method(_L1D) {
Notify(\_SB_.PWRB, 0x2)
If(ECON) {
If(LNot(LEqual(LIDS, \_SB_.PCI0.LPCB.H_EC.LIDI))) {
Store(\_SB_.PCI0.LPCB.H_EC.LIDI, LIDS)
If(IGDS) {
LSDS(LIDS)
}
Else {
Store(0x2a, SMIF)
Store(0x0, TRP0)
}
Sleep(0x01f4)
Sleep(0x01f4)
Notify(\_SB_.LID0, 0x80)
}
If(LNot(LEqual(PWRS, \_SB_.PCI0.LPCB.H_EC.ACEX))) {
Store(\_SB_.PCI0.LPCB.H_EC.ACEX, PWRS)
Store(0x2b, SMIF)
Store(0x0, TRP0)
Notify(\_SB_.BAT1, 0x80)
Notify(\_SB_.BAT2, 0x80)
Notify(\_PR_.CPU0, 0x80)
Sleep(0x64)
Notify(\_PR_.CPU0, 0x81)
}
}
}
}
Method(BTTM, 1) {
If(FPEN) {
If(FPST) {
If(LNot(LLess(Arg0, BVAL))) {
Store(Arg0, BVAL)
Notify(\_SB_.BAT1, 0x80)
Notify(\_SB_.BAT2, 0x80)
}
}
Else {
If(LNot(LGreater(Arg0, BVAL))) {
Store(Arg0, BVAL)
Notify(\_SB_.BAT1, 0x80)
Notify(\_SB_.BAT2, 0x80)
}
}
}
Else {
If(PWRS) {
If(LNot(LLess(Arg0, BVAL))) {
Store(Arg0, BVAL)
Notify(\_SB_.BAT1, 0x80)
Notify(\_SB_.BAT2, 0x80)
}
}
Else {
If(LNot(LGreater(Arg0, BVAL))) {
Store(Arg0, BVAL)
Notify(\_SB_.BAT1, 0x80)
Notify(\_SB_.BAT2, 0x80)
}
}
}
}
Method(HKDS, 1, Serialized) {
If(LEqual(0x0, DSEN)) {
Store(Arg0, SMIF)
Store(0x0, TRP0)
If(LEqual(SMIF, 0x0)) {
If(LNot(LEqual(CADL, PADL))) {
Store(CADL, PADL)
If(LEqual(OSYS, 0x07d1)) {
Notify(\_SB_.PCI0, 0x0)
}
Else {
Notify(\_SB_.PCI0.GFX0, 0x0)
}
Sleep(0x02ee)
}
Notify(\_SB_.PCI0.GFX0, 0x80)
}
}
If(LEqual(0x1, DSEN)) {
Store(Increment(Arg0), SMIF)
Store(0x0, TRP0)
If(LEqual(SMIF, 0x0)) {
Notify(\_SB_.PCI0.GFX0, 0x81)
}
}
Sleep(0x03e8)
Notify(\_SB_.PCI0.USB0, 0x0)
Notify(\_SB_.PCI0.USB1, 0x0)
Notify(\_SB_.PCI0.USB2, 0x0)
}
Method(LSDS, 1, Serialized) {
If(Arg0) {
HKDS(0xc)
}
Else {
HKDS(0xe)
}
}
Method(PNOT, 0, Serialized) {
Notify(\_SB_.BAT1, 0x80)
Notify(\_SB_.BAT2, 0x80)
Notify(\_PR_.CPU0, 0x80)
Sleep(0x64)
Notify(\_PR_.CPU0, 0x81)
}
Method(USBN) {
Notify(\_SB_.PCI0.USB0, 0x0)
Notify(\_SB_.PCI0.USB1, 0x0)
Notify(\_SB_.PCI0.USB2, 0x0)
Notify(\_SB_.PCI0.USB7, 0x0)
}
Scope(\_TZ_) {
PowerResource(PFAN, 0, 0) {
Method(_STA) {
Return(FANE)
}
Method(_ON_) {
Store(0x1, FANE)
}
Method(_OFF) {
Store(0x0, FANE)
}
}
Name(FANE, 0x1)
Device(FAN0) {
Name(_HID, 0x0b0cd041)
Name(_PR0, Package(0x1) {
PFAN,
})
}
ThermalZone(THRM) {
Method(_TMP, 0, Serialized) {
If(LEqual(\ECON, 0x1)) {
If(LEqual(\_SB_.PCI0.LPCB.H_EC.TZF5, One)) {
If(LNot(LEqual(\TZON, 0x5))) {
Store(0x5, \TZON)
PNOT()
}
}
Else {
If(LEqual(\_SB_.PCI0.LPCB.H_EC.TZF4, One)) {
If(LNot(LEqual(\TZON, 0x4))) {
Store(0x4, \TZON)
PNOT()
}
}
Else {
If(LNot(LEqual(\TZON, 0x0))) {
Store(0x0, \TZON)
PNOT()
}
}
}
Store(\_SB_.PCI0.LPCB.H_EC.CTMP, Local0)
If(LNot(LEqual(Local0, 0xff))) {
Return(Add(0x0aac, Multiply(Local0, 0xa, ), ))
}
Else {
Return(0x0bb8)
}
}
Else {
Return(0x0bb8)
}
}
Method(_AC0, 0, Serialized) {
Store(0x41, Local0)
Return(Add(0x0aac, Multiply(Local0, 0xa, ), ))
}
Name(_AL0, Package(0x1) {
FAN0,
})
Method(XPSV, 0, Serialized) {
Store(0x78, Local0)
Return(Add(0x0aac, Multiply(Local0, 0xa, ), ))
}
Name(XPSL, Package(0x1) {
\_PR_.CPU0,
})
Method(_CRT, 0, Serialized) {
Store(0x54, Local0)
Return(Add(0x0aac, Multiply(Local0, 0xa, ), ))
}
Method(_SCP, 1, Serialized) {
Store("Not Support", Debug)
}
Name(_TC1, 0x4)
Name(_TC2, 0x3)
Name(_TSP, 0x96)
}
}
Scope(\_SB_) {
OperationRegion(PHSD, SystemMemory, 0x076fbdbd, 0x00000190)
Field(PHSD, AnyAcc, NoLock, Preserve) {
BCMD, 8,
DID_, 32,
INFO, 3152,
Offset(0x190)
}
Field(PHSD, AnyAcc, NoLock, Preserve) {
Offset(0x5),
INF_, 8,
INF1, 8,
INF2, 8,
INF3, 8
}
Field(PHSD, AnyAcc, NoLock, Preserve) {
Offset(0x5),
INFW, 16
}
Field(PHSD, AnyAcc, NoLock, Preserve) {
Offset(0x5),
INFD, 32
}
OperationRegion(PHSI, SystemIO, 0x0000fe00, 0x00000002)
Field(PHSI, AnyAcc, NoLock, Preserve) {
SMIC, 8
}
Mutex(MPHS, 0)
Method(PHS_, 1, Serialized) {
Acquire(MPHS, 0xffff)
Store(Arg0, BCMD)
Store(Zero, SMIC)
Store(0x0, BCMD)
Store(INF_, Local7)
Release(MPHS)
Return(Local7)
}
Method(PHS1, 2, Serialized) {
Acquire(MPHS, 0xffff)
Store(Arg0, BCMD)
Store(Arg1, INF_)
Store(Zero, SMIC)
Store(0x0, BCMD)
Store(INF_, Local7)
Release(MPHS)
Return(Local7)
}
Method(PHS2, 3, Serialized) {
Acquire(MPHS, 0xffff)
Store(Arg0, BCMD)
Store(Arg1, INF_)
Store(Arg2, INF1)
Store(Zero, SMIC)
Store(0x0, BCMD)
Store(INFW, Local7)
Release(MPHS)
Return(Local7)
}
Device(MEDB) {
Name(_CID, 0x150cd041)
Name(_HID, 0x0200a34c)
Name(_UID, 0x2)
Name(_BDN, 0x2)
Name(DCBF, 0x0)
Name(DCST, 0x0)
Name(DSFL, 0x0)
Name(SPUD, 0x0)
Name(ICNF, 0x0)
Name(S4FL, 0x0)
Event(DSYN)
Event(DEVT)
Method(_STA) {
If(LEqual(OSYS, 0x07d0)) {
If(LEqual(S4FL, One)) {
If(LEqual(SPUD, One)) {
Return(0xf)
}
}
}
Store(GPS0, Local0)
And(Local0, 0x80, Local0)
Store(Local0, GPS0)
Store(GPS0, Local0)
And(Local0, 0x80, Local0)
If(LEqual(Local0, 0x80)) {
Return(0xf)
}
Else {
Return(0x0)
}
}
Method(_DCK, 1) {
If(LEqual(Arg0, 0x0)) {
Sleep(0xc8)
Return(0x1)
}
Else {
Sleep(0x1e)
\_SB_.PHS_(0x90)
Sleep(0x01f4)
Sleep(0x01f4)
Sleep(0x01f4)
Sleep(0x01f4)
Sleep(0x01f4)
Sleep(0x01f4)
Store(One, \_SB_.MEDB.DCST)
Store(Zero, \_SB_.MEDB.SPUD)
If(IGDS) {
HKDS(0x13)
}
Return(0x1)
}
}
Method(_EJ0, 1) {
Store(Zero, \_SB_.MEDB.DCST)
\_SB_.PHS_(0x91)
Sleep(0x01f4)
If(LEqual(SPUD, Zero)) {
If(LEqual(ICNF, 0x0)) {
Store(0x2, ICNF)
If(IGDS) {
Store(0x11, SMIF)
Store(0x0, TRP0)
}
}
Wait(DEVT, 0xffff)
Reset(DEVT)
If(LEqual(ICNF, 0x2)) {
If(IGDS) {
Store(0x12, SMIF)
Store(0x0, TRP0)
}
Store(0x0, ICNF)
}
}
Else {
Store(Zero, \_SB_.MEDB.SPUD)
}
Sleep(0x01f4)
If(IGDS) {
HKDS(0x13)
}
If(LEqual(OSYS, 0x07d0)) {
USBN()
}
Return(0x1)
}
Method(_EJ3, 1) {
\_SB_.PHS_(0x91)
Sleep(0x01f4)
If(LEqual(SPUD, Zero)) {
}
Else {
Store(Zero, \_SB_.MEDB.SPUD)
}
Store(Zero, \_SB_.MEDB.DCST)
Return(0x1)
}
Method(EVNT) {
Sleep(0xfa)
Store(GPS0, Local0)
And(Local0, 0x30, Local0)
Store(Local0, GPS0)
Store(GPS0, Local0)
And(Local0, 0x30, Local0)
Store(GIV0, Local1)
And(Local1, 0x30, Local1)
If(LNot(LEqual(Local0, Local1))) {
If(LNot(LEqual(\_SB_.MEDB.DCST, Zero))) {
Store(One, \_SB_.MEDB.SPUD)
Notify(\_SB_.MEDB, 0x1)
}
Signal(\_SB_.MEDB.DEVT)
Sleep(0xc8)
}
Else {
If(LEqual(\_SB_.MEDB.DCST, Zero)) {
Notify(\_SB_.MEDB, 0x0)
}
Sleep(0xc8)
}
XOr(GIV0, 0x30, GIV0)
Sleep(0x1e)
Store(GPS0, Local0)
And(Local0, 0x30, Local0)
Store(Local0, GPS0)
}
}
Device(ADP1) {
Name(_HID, "ACPI0003")
Method(_PSR) {
If(LEqual(\WEND, One)) {
Store(Zero, \WEND)
\_SB_.PHS_(0x97)
Notify(\_PR_.CPU0, 0x80)
Sleep(0x64)
Notify(\_PR_.CPU0, 0x81)
}
If(LEqual(\ECON, 0x0)) {
Store(\_SB_.PHS1(0x81, 0x2), Local0)
}
Else {
Store(\_SB_.PCI0.LPCB.H_EC.ACEX, Local0)
}
Return(Local0)
}
Method(_PCL) {
Return(Package(0x2) {
\_SB_.BAT1,
\_SB_.BAT2,
})
}
Method(_STA) {
If(LEqual(\ECON, 0x0)) {
Store(0xf, Local0)
}
Else {
If(LEqual(\_SB_.PCI0.LPCB.H_EC.ACEX, 0x0)) {
Store(0x1f, Local0)
}
Else {
Store(0xf, Local0)
}
}
Return(Local0)
}
}
Device(BAT1) {
Name(_HID, 0x0a0cd041)
Name(_UID, 0x1)
Name(BATI, Package(0xd) {
0x1,
0xffffffff,
0xffffffff,
0x1,
0xffffffff,
0xa,
0x3,
0x1,
0x1,
"Unknown",
"Unknown",
"Unknown",
"Unknown",
})
Method(_BIF) {
If(LEqual(\ECON, 0x0)) {
Store(\_SB_.PHS2(0x8c, 0xb0, 0x0), Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(BATI, 0x1, ))
}
Else {
Store(Local0, Index(BATI, 0x1, ))
}
Store(\_SB_.PHS2(0x8c, 0xb2, 0x0), Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(BATI, 0x2, ))
Store(0xffffffff, Local2)
Store(0xffff, B1SA)
}
Else {
Store(Local0, Index(BATI, 0x2, ))
Store(Local0, Local2)
Store(Local0, B1SA)
}
Store(\_SB_.PHS2(0x8c, 0xb4, 0x0), Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(BATI, 0x4, ))
}
Else {
Store(Local0, Index(BATI, 0x4, ))
}
}
Else {
Store(\_SB_.PCI0.LPCB.H_EC.B1AF, Local3)
Store(\_SB_.PCI0.LPCB.H_EC.B1VL, Local4)
Store(Local3, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(BATI, 0x1, ))
}
Else {
Store(Local0, Index(BATI, 0x1, ))
}
Store(Local3, Local0)
ShiftRight(Local0, 0x10, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(BATI, 0x2, ))
Store(0xffffffff, Local2)
Store(0xffff, B1SA)
}
Else {
Store(Local0, Index(BATI, 0x2, ))
Store(Local0, Local2)
Store(Local0, B1SA)
}
Store(Local4, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(BATI, 0x4, ))
}
Else {
Store(Local0, Index(BATI, 0x4, ))
}
}
If(LNot(LEqual(Local2, 0xffffffff))) {
Store(Local2, Local0)
Divide(Local0, 0x64, Local2, Local1)
If(LNot(LLess(Local2, 0x32))) {
Increment(Local1)
}
Multiply(Local1, 0xa, Local0)
Store(Local0, Index(BATI, 0x5, ))
Multiply(Local1, 0x3, Local0)
Store(Local0, Index(BATI, 0x6, ))
}
Store("", Index(BATI, 0x9, ))
Store("", Index(BATI, 0xa, ))
Store("LION", Index(BATI, 0xb, ))
Store("DELL Computer Corporation", Index(BATI, 0xc, ))
Return(BATI)
}
Name(STAT, Package(0x4) {
0x0,
0x0,
0x0,
0x0,
})
Method(_BST) {
If(LEqual(\WEND, One)) {
Store(Zero, \WEND)
\_SB_.PHS_(0x97)
Notify(\_PR_.CPU0, 0x80)
Sleep(0x64)
Notify(\_PR_.CPU0, 0x81)
}
If(LEqual(\ECON, 0x0)) {
Store(\_SB_.PHS2(0x8b, 0x84, 0x0), Local0)
If(LAnd(LNot(LEqual(Local0, 0x0)), LNot(And(Local0, 0x4, )))) {
If(LEqual(\PWRS, 0x1)) {
Store(0x2, Local0)
}
Else {
Store(0x1, Local0)
}
}
Store(Local0, Index(STAT, 0x0, ))
Store(\_SB_.PHS2(0x8c, 0xa4, 0x0), Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(STAT, 0x1, ))
}
Else {
If(LNot(LLess(Local0, 0x8000))) {
XOr(Local0, 0xffff, Local0)
Increment(Local0)
}
Store(Local0, Index(STAT, 0x1, ))
}
Store(\_SB_.PHS2(0x8c, 0xa2, 0x0), Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(STAT, 0x2, ))
}
Else {
Store(Local0, Index(STAT, 0x2, ))
}
Store(\_SB_.PHS2(0x8c, 0xa6, 0x0), Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(STAT, 0x3, ))
}
Else {
Store(Local0, Index(STAT, 0x3, ))
}
}
Else {
Store(\_SB_.PCI0.LPCB.H_EC.B1RR, Local3)
Store(\_SB_.PCI0.LPCB.H_EC.B1PV, Local4)
Store(Local3, Local0)
And(Local0, 0xff, Local0)
If(LAnd(LNot(LEqual(Local0, 0x0)), LNot(And(Local0, 0x4, )))) {
If(LEqual(\PWRS, 0x1)) {
Store(0x2, Local0)
}
Else {
Store(0x1, Local0)
}
}
Store(Local0, Index(STAT, 0x0, ))
Store(Local4, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(STAT, 0x1, ))
}
Else {
If(LNot(LLess(Local0, 0x8000))) {
XOr(Local0, 0xffff, Local0)
Increment(Local0)
}
Store(Local0, Index(STAT, 0x1, ))
}
Store(Local3, Local0)
ShiftRight(Local0, 0x10, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(STAT, 0x2, ))
}
Else {
Store(Local0, Index(STAT, 0x2, ))
}
Store(Local4, Local0)
ShiftRight(Local0, 0x10, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(STAT, 0x3, ))
}
Else {
Store(Local0, Index(STAT, 0x3, ))
}
}
Return(STAT)
}
Method(_STA) {
If(LEqual(\ECON, 0x0)) {
If(LEqual(\_SB_.PHS1(0x81, 0x0), 0x1)) {
Store(0x1f, Local0)
}
Else {
Store(0xf, Local0)
}
}
Else {
If(LEqual(\_SB_.PCI0.LPCB.H_EC.B1EX, 0x1)) {
Store(0x1f, Local0)
}
Else {
Store(0xf, Local0)
}
}
Return(Local0)
}
Method(_PCL) {
Return(\_SB_)
}
}
Device(BAT2) {
Name(_HID, 0x0a0cd041)
Name(_UID, 0x2)
Name(BATI, Package(0xd) {
0x1,
0xffffffff,
0xffffffff,
0x1,
0xffffffff,
0xa,
0x3,
0x1,
0x1,
"Unknown",
"Unknown",
"Unknown",
"Unknown",
})
Method(_BIF) {
If(LEqual(\ECON, 0x0)) {
Store(\_SB_.PHS2(0x8c, 0xb8, 0x0), Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(BATI, 0x1, ))
}
Else {
Store(Local0, Index(BATI, 0x1, ))
}
Store(\_SB_.PHS2(0x8c, 0xba, 0x0), Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(BATI, 0x2, ))
Store(0xffffffff, Local2)
Store(0xffff, B2SA)
}
Else {
Store(Local0, Index(BATI, 0x2, ))
Store(Local0, Local2)
Store(Local0, B2SA)
}
Store(\_SB_.PHS2(0x8c, 0xbc, 0x0), Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(BATI, 0x4, ))
}
Else {
Store(Local0, Index(BATI, 0x4, ))
}
}
Else {
Store(\_SB_.PCI0.LPCB.H_EC.B2AF, Local3)
Store(\_SB_.PCI0.LPCB.H_EC.B2VL, Local4)
Store(Local3, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(BATI, 0x1, ))
}
Else {
Store(Local0, Index(BATI, 0x1, ))
}
Store(Local3, Local0)
ShiftRight(Local0, 0x10, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(BATI, 0x2, ))
Store(0xffffffff, Local2)
Store(0xffff, B2SA)
}
Else {
Store(Local0, Index(BATI, 0x2, ))
Store(Local0, Local2)
Store(Local0, B2SA)
}
Store(Local4, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(BATI, 0x4, ))
}
Else {
Store(Local0, Index(BATI, 0x4, ))
}
}
If(LNot(LEqual(Local2, 0xffffffff))) {
Store(Local2, Local0)
Divide(Local0, 0x64, Local2, Local1)
If(LNot(LLess(Local2, 0x32))) {
Increment(Local1)
}
Multiply(Local1, 0xa, Local0)
Store(Local0, Index(BATI, 0x5, ))
Multiply(Local1, 0x3, Local0)
Store(Local0, Index(BATI, 0x6, ))
}
Store("", Index(BATI, 0x9, ))
Store("", Index(BATI, 0xa, ))
Store("LION", Index(BATI, 0xb, ))
Store("DELL Computer Corporation", Index(BATI, 0xc, ))
Return(BATI)
}
Name(STAT, Package(0x4) {
0x0,
0x0,
0x0,
0x0,
})
Method(_BST) {
If(LEqual(\WEND, One)) {
Store(Zero, \WEND)
\_SB_.PHS_(0x97)
Notify(\_PR_.CPU0, 0x80)
Sleep(0x64)
Notify(\_PR_.CPU0, 0x81)
}
If(LEqual(\ECON, 0x0)) {
Store(\_SB_.PHS2(0x8b, 0x85, 0x0), Local0)
If(LAnd(LNot(LEqual(Local0, 0x0)), LNot(And(Local0, 0x4, )))) {
If(LEqual(\PWRS, 0x1)) {
Store(0x2, Local0)
}
Else {
Store(0x1, Local0)
}
}
Store(Local0, Index(STAT, 0x0, ))
Store(\_SB_.PHS2(0x8c, 0xac, 0x0), Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(STAT, 0x1, ))
}
Else {
If(LNot(LLess(Local0, 0x8000))) {
XOr(Local0, 0xffff, Local0)
Increment(Local0)
}
Store(Local0, Index(STAT, 0x1, ))
}
Store(\_SB_.PHS2(0x8c, 0xaa, 0x0), Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(STAT, 0x2, ))
}
Else {
Store(Local0, Index(STAT, 0x2, ))
}
Store(\_SB_.PHS2(0x8c, 0xae, 0x0), Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(STAT, 0x3, ))
}
Else {
Store(Local0, Index(STAT, 0x3, ))
}
}
Else {
Store(\_SB_.PCI0.LPCB.H_EC.B2RR, Local3)
Store(\_SB_.PCI0.LPCB.H_EC.B2PV, Local4)
Store(Local3, Local0)
And(Local0, 0xff, Local0)
If(LAnd(LNot(LEqual(Local0, 0x0)), LNot(And(Local0, 0x4, )))) {
If(LEqual(\PWRS, 0x1)) {
Store(0x2, Local0)
}
Else {
Store(0x1, Local0)
}
}
Store(Local0, Index(STAT, 0x0, ))
Store(Local4, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(STAT, 0x1, ))
}
Else {
If(LNot(LLess(Local0, 0x8000))) {
XOr(Local0, 0xffff, Local0)
Increment(Local0)
}
Store(Local0, Index(STAT, 0x1, ))
}
Store(Local3, Local0)
ShiftRight(Local0, 0x10, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(STAT, 0x2, ))
}
Else {
Store(Local0, Index(STAT, 0x2, ))
}
Store(Local4, Local0)
ShiftRight(Local0, 0x10, Local0)
And(Local0, 0xffff, Local0)
ShiftLeft(Local0, 0x8, Local1)
And(Local1, 0xff00, Local1)
ShiftRight(Local0, 0x8, Local0)
Or(Local0, Local1, Local0)
If(LEqual(Local0, 0xffff)) {
Store(0xffffffff, Index(STAT, 0x3, ))
}
Else {
Store(Local0, Index(STAT, 0x3, ))
}
}
Return(STAT)
}
Method(_STA) {
If(LEqual(\ECON, 0x0)) {
If(LEqual(\_SB_.PHS1(0x81, 0x1), 0x1)) {
Store(0x1f, Local0)
}
Else {
Store(0xf, Local0)
}
}
Else {
If(LEqual(\_SB_.PCI0.LPCB.H_EC.B2EX, 0x1)) {
Store(0x1f, Local0)
}
Else {
Store(0xf, Local0)
}
}
Return(Local0)
}
Method(_PCL) {
Return(\_SB_)
}
}
Device(LID0) {
Name(_HID, 0x0d0cd041)
Name(_PRW, Package(0x2) {
0x1d,
0x3,
})
Method(_PSW, 1) {
If(\ECON) {
If(Arg0) {
Store(One, \_SB_.PCI0.LPCB.H_EC.LIDE)
}
Else {
Store(Zero, \_SB_.PCI0.LPCB.H_EC.LIDE)
}
}
}
Method(_STA) {
Return(0xf)
}
Method(_LID) {
If(\ECON) {
If(LEqual(\_SB_.PCI0.LPCB.H_EC.LIDI, 0x1)) {
Return(0x1)
}
}
Return(0x0)
}
}
Device(SLPB) {
Name(_HID, 0x0e0cd041)
Method(_STA) {
Return(0xf)
}
}
Device(PWRB) {
Name(_HID, 0x0c0cd041)
Name(_PRW, Package(0x2) {
0x1d,
0x4,
})
}
Device(PCI0) {
Method(_INI) {
If(CondRefOf(_OSI, Local0)) {
Store(0x07d1, OSYS)
\_SB_.PHS1(0x92, 0x3)
}
Else {
If(LEqual(SizeOf(_OS_), 0x14)) {
Store(0x07d0, OSYS)
\_SB_.PHS1(0x92, 0x2)
}
Else {
If(LEqual(SizeOf(_OS_), 0x27)) {
Store(0x07cf, OSYS)
\_SB_.PHS1(0x92, 0x1)
}
Else {
Store(0x07ce, OSYS)
\_SB_.PHS1(0x92, 0x0)
}
}
}
If(LNot(LGreater(OSYS, 0x07cf))) {
Store(0x1, ECON)
}
\_SB_.PHS1(0x98, 0x0)
}
Method(_S3D) {
Return(0x2)
}
Method(_S4D) {
Return(0x2)
}
Name(_HID, 0x030ad041)
Name(_ADR, 0x0)
Name(_BBN, 0x0)
OperationRegion(HBUS, PCI_Config, 0x40, 0xc0)
Field(HBUS, DWordAcc, NoLock, Preserve) {
Offset(0x18),
, 7,
HENA, 1,
, 4,
PM0H, 2,
Offset(0x1a),
PM1L, 2,
, 2,
PM1H, 2,
Offset(0x1b),
PM2L, 2,
, 2,
PM2H, 2,
Offset(0x1c),
PM3L, 2,
, 2,
PM3H, 2,
Offset(0x1d),
PM4L, 2,
, 2,
PM4H, 2,
Offset(0x1e),
PM5L, 2,
, 2,
PM5H, 2,
Offset(0x1f),
PM6L, 2,
, 2,
PM6H, 2,
Offset(0x20)
}
Name(BUF0, Buffer(0x0201) {0x88, 0xe, 0x0, 0x2, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x87, 0x18, 0x0, 0x1, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf7, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xc, 0x0, 0x0, 0x0, 0x47, 0x1, 0xf8, 0xc, 0xf8, 0xc, 0x1, 0x8, 0x87, 0x18, 0x0, 0x1, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0x0, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf3, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0xff, 0xff, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0xff, 0x3f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xc, 0x0, 0xff, 0x7f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xc, 0x0, 0xff, 0xbf, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xc, 0x0, 0xff, 0xff, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0xff, 0x3f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xd, 0x0, 0xff, 0x7f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xd, 0x0, 0xff, 0xbf, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xd, 0x0, 0xff, 0xff, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0, 0xff, 0x3f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xe, 0x0, 0xff, 0x7f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xe, 0x0, 0xff, 0xbf, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xe, 0x0, 0xff, 0xff, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0x0, 0xff, 0xff, 0xf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xbf, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
If(PM1L) {
CreateDWordField(BUF0, 0x80, C0LN)
Store(Zero, C0LN)
}
If(LEqual(PM1L, 0x1)) {
CreateBitField(BUF0, 0x0378, C0RW)
Store(Zero, C0RW)
}
If(PM1H) {
CreateDWordField(BUF0, 0x9b, C4LN)
Store(Zero, C4LN)
}
If(LEqual(PM1H, 0x1)) {
CreateBitField(BUF0, 0x0450, C4RW)
Store(Zero, C4RW)
}
If(PM2L) {
CreateDWordField(BUF0, 0xb6, C8LN)
Store(Zero, C8LN)
}
If(LEqual(PM2L, 0x1)) {
CreateBitField(BUF0, 0x0528, C8RW)
Store(Zero, C8RW)
}
If(PM2H) {
CreateDWordField(BUF0, 0xd1, CCLN)
Store(Zero, CCLN)
}
If(LEqual(PM2H, 0x1)) {
CreateBitField(BUF0, 0x0600, CCRW)
Store(Zero, CCRW)
}
If(PM3L) {
CreateDWordField(BUF0, 0xec, D0LN)
Store(Zero, D0LN)
}
If(LEqual(PM3L, 0x1)) {
CreateBitField(BUF0, 0x06d8, D0RW)
Store(Zero, D0RW)
}
If(PM3H) {
CreateDWordField(BUF0, 0x0107, D4LN)
Store(Zero, D4LN)
}
If(LEqual(PM3H, 0x1)) {
CreateBitField(BUF0, 0x07b0, D4RW)
Store(Zero, D4RW)
}
If(PM4L) {
CreateDWordField(BUF0, 0x0122, D8LN)
Store(Zero, D8LN)
}
If(LEqual(PM4L, 0x1)) {
CreateBitField(BUF0, 0x0888, D8RW)
Store(Zero, D8RW)
}
If(PM4H) {
CreateDWordField(BUF0, 0x013d, DCLN)
Store(Zero, DCLN)
}
If(LEqual(PM4H, 0x1)) {
CreateBitField(BUF0, 0x0960, DCRW)
Store(Zero, DCRW)
}
If(PM5L) {
CreateDWordField(BUF0, 0x0158, E0LN)
Store(Zero, E0LN)
}
If(LEqual(PM5L, 0x1)) {
CreateBitField(BUF0, 0x0a38, E0RW)
Store(Zero, E0RW)
}
If(PM5H) {
CreateDWordField(BUF0, 0x0173, E4LN)
Store(Zero, E4LN)
}
If(LEqual(PM5H, 0x1)) {
CreateBitField(BUF0, 0x0b10, E4RW)
Store(Zero, E4RW)
}
If(PM6L) {
CreateDWordField(BUF0, 0x018e, E8LN)
Store(Zero, E8LN)
}
If(LEqual(PM6L, 0x1)) {
CreateBitField(BUF0, 0x0be8, E8RW)
Store(Zero, E8RW)
}
If(PM6H) {
CreateDWordField(BUF0, 0x01a9, ECLN)
Store(Zero, ECLN)
}
If(LEqual(PM6H, 0x1)) {
CreateBitField(BUF0, 0x0cc0, ECRW)
Store(Zero, ECRW)
}
If(PM0H) {
CreateDWordField(BUF0, 0x01c4, F0LN)
Store(Zero, F0LN)
}
If(LEqual(PM0H, 0x1)) {
CreateBitField(BUF0, 0x0d98, F0RW)
Store(Zero, F0RW)
}
CreateDWordField(BUF0, 0x01d3, M1MN)
CreateDWordField(BUF0, 0x01d7, M1MX)
CreateDWordField(BUF0, 0x01df, M1LN)
Multiply(0x02000000, \_SB_.PCI0.MBUS.DRB3, M1MN)
Add(Subtract(M1MX, M1MN, ), 0x1, M1LN)
ShiftRight(And(\_SB_.PCI0.LPCB.HPTE, 0x00038000, ), 0xf, Local0)
If(And(Local0, 0x4, )) {
CreateDWordField(BUF0, 0x01ee, M2MN)
CreateDWordField(BUF0, 0x01f2, M2MX)
CreateDWordField(BUF0, 0x01fa, M2LN)
Store(0xfed00000, M2MN)
Store(0xfed003ff, M2MX)
Store(0x0400, M2LN)
If(LEqual(Local0, 0x5)) {
Store(0xfed01000, M2MN)
Store(0xfed013ff, M2MX)
}
If(LEqual(Local0, 0x6)) {
Store(0xfed02000, M2MN)
Store(0xfed023ff, M2MX)
}
If(LEqual(Local0, 0x7)) {
Store(0xfed03000, M2MN)
Store(0xfed033ff, M2MX)
}
}
Return(BUF0)
}
Method(_PRT) {
If(GPIC) {
Return(Package(0x7) {
Package(0x4) {
0x0002ffff,
0x0,
0x0,
0x10,
},
Package(0x4) {
0x001dffff,
0x0,
0x0,
0x10,
},
Package(0x4) {
0x001dffff,
0x1,
0x0,
0x13,
},
Package(0x4) {
0x001dffff,
0x2,
0x0,
0x12,
},
Package(0x4) {
0x001dffff,
0x3,
0x0,
0x17,
},
Package(0x4) {
0x001fffff,
0x0,
0x0,
0x12,
},
Package(0x4) {
0x001fffff,
0x1,
0x0,
0x11,
},
})
}
Else {
Return(Package(0x7) {
Package(0x4) {
0x0002ffff,
0x0,
\_SB_.PCI0.LPCB.LNKA,
0x0,
},
Package(0x4) {
0x001dffff,
0x0,
\_SB_.PCI0.LPCB.LNKA,
0x0,
},
Package(0x4) {
0x001dffff,
0x1,
\_SB_.PCI0.LPCB.LNKD,
0x0,
},
Package(0x4) {
0x001dffff,
0x2,
\_SB_.PCI0.LPCB.LNKC,
0x0,
},
Package(0x4) {
0x001dffff,
0x3,
\_SB_.PCI0.LPCB.LNKH,
0x0,
},
Package(0x4) {
0x001fffff,
0x0,
\_SB_.PCI0.LPCB.LNKC,
0x0,
},
Package(0x4) {
0x001fffff,
0x1,
\_SB_.PCI0.LPCB.LNKB,
0x0,
},
})
}
}
Device(MBUS) {
Name(_ADR, 0x1)
OperationRegion(MBUS, PCI_Config, 0x40, 0xc0)
Field(MBUS, DWordAcc, NoLock, Preserve) {
DRB0, 8,
DRB1, 8,
DRB2, 8,
DRB3, 8
}
}
Device(GFX0) {
Name(_ADR, 0x00020000)
OperationRegion(VNVS, SystemMemory, 0x076ebdb9, 0x00010004)
Field(VNVS, AnyAcc, Lock, Preserve) {
RSIZ, 32,
RBUF, 524288
}
Method(_DOS, 1) {
Store(And(Arg0, 0x3, ), DSEN)
}
Method(_DOD) {
If(LEqual(LCDA, 0x0110)) {
Return(Package(0x6) {
0x00010100,
0x00010110,
0x00010200,
0x00010300,
0x00010500,
0x00010600,
})
}
Return(Package(0x6) {
0x00010100,
0x00010200,
0x00010300,
0x00010400,
0x00010500,
0x00010600,
})
}
Method(_ROM, 2) {
Store(Arg0, Local0)
Store(Arg1, Local1)
If(LGreater(Local1, 0x1000)) {
Store(0x1000, Local1)
}
If(LGreater(Add(Local0, Local1, ), RSIZ)) {
Store(0x0, Local0)
}
Multiply(Local0, 0x8, Local2)
Multiply(Local1, 0x8, Local3)
Name(ROM1, Buffer(RSIZ) { })
Name(ROM2, Buffer(Local1) { })
Store(RBUF, ROM1)
CreateField(ROM1, Local2, Local3, TMPB)
Store(TMPB, ROM2)
Return(ROM2)
}
Device(CRT1) {
Name(_ADR, 0x0100)
Method(_DCS) {
Store(0x1, SMIF)
Store(0x0, TRP0)
If(And(CSTE, 0x0101, )) {
Return(0x1f)
}
Return(0x1d)
}
Method(_DGS) {
If(And(NSTE, 0x0101, )) {
Return(0x1)
}
Return(0x0)
}
Method(_DSS, 1) {
If(LEqual(And(Arg0, 0xc0000000, ), 0xc0000000)) {
Store(NSTE, CSTE)
}
}
}
Device(DTV1) {
Name(_ADR, 0x0200)
Method(_DCS) {
Store(0x1, SMIF)
Store(0x0, TRP0)
If(And(CSTE, 0x0202, )) {
Return(0x1f)
}
Return(0x1d)
}
Method(_DGS) {
If(And(NSTE, 0x0202, )) {
Return(0x1)
}
Return(0x0)
}
Method(_DSS, 1) {
If(LEqual(And(Arg0, 0xc0000000, ), 0xc0000000)) {
Store(NSTE, CSTE)
}
}
}
Device(DFP1) {
Name(_ADR, 0x0300)
Method(_DCS) {
Store(0x1, SMIF)
Store(0x0, TRP0)
If(And(CSTE, 0x0404, )) {
Return(0x1f)
}
Return(0x1d)
}
Method(_DGS) {
If(And(NSTE, 0x0404, )) {
Return(0x1)
}
Return(0x0)
}
Method(_DSS, 1) {
If(LEqual(And(Arg0, 0xc0000000, ), 0xc0000000)) {
Store(NSTE, CSTE)
}
}
}
Device(LCD_) {
Method(_ADR) {
If(LEqual(LCDA, 0x0110)) {
Return(0x0110)
}
Return(0x0400)
}
Method(_DCS) {
Store(0x1, SMIF)
Store(0x0, TRP0)
If(And(CSTE, 0x0808, )) {
Return(0x1f)
}
Return(0x1d)
}
Method(_DGS) {
If(And(NSTE, 0x0808, )) {
Return(0x1)
}
Return(0x0)
}
Method(_DSS, 1) {
If(LEqual(And(Arg0, 0xc0000000, ), 0xc0000000)) {
Store(NSTE, CSTE)
}
}
Method(_BCL) {
Return(Package(0x8) {
0x50,
0x3c,
0x0,
0x14,
0x28,
0x3c,
0x50,
0x64,
})
}
Method(_BCM, 1) {
Store(Arg0, P80H)
}
}
Device(DTV2) {
Name(_ADR, 0x0500)
Method(_DCS) {
Store(0x1, SMIF)
Store(0x0, TRP0)
If(And(CSTE, 0x1010, )) {
Return(0x1f)
}
Return(0x1d)
}
Method(_DGS) {
If(And(NSTE, 0x1010, )) {
Return(0x1)
}
Return(0x0)
}
Method(_DSS, 1) {
If(LEqual(And(Arg0, 0xc0000000, ), 0xc0000000)) {
Store(NSTE, CSTE)
}
}
}
Device(DFP2) {
Name(_ADR, 0x0600)
Method(_DCS) {
Store(0x1, SMIF)
Store(0x0, TRP0)
If(And(CSTE, 0x2020, )) {
Return(0x1f)
}
Return(0x1d)
}
Method(_DGS) {
If(And(NSTE, 0x2020, )) {
Return(0x1)
}
Return(0x0)
}
Method(_DSS, 1) {
If(LEqual(And(Arg0, 0xc0000000, ), 0xc0000000)) {
Store(NSTE, CSTE)
}
}
}
}
Device(PCIB) {
Name(_ADR, 0x001e0000)
OperationRegion(PBUS, PCI_Config, 0x44, 0x4)
Field(PBUS, DWordAcc, NoLock, Preserve) {
DHID, 8
}
Device(CDB0) {
Name(_ADR, 0x00030000)
OperationRegion(CBD0, PCI_Config, 0x0, 0xf0)
Field(CBD0, AnyAcc, NoLock, Preserve) {
Offset(0x3c),
CD3C, 8,
Offset(0x44),
CD44, 32,
Offset(0xa5),
CDA5, 8,
Offset(0xe1),
PMES, 8
}
Method(_INI) {
Or(CD3C, 0xff, CD3C)
Store(0x0, CD44)
}
}
Device(CDB1) {
Name(_ADR, 0x00030001)
OperationRegion(CBD1, PCI_Config, 0x0, 0xf0)
Field(CBD1, AnyAcc, NoLock, Preserve) {
Offset(0x3c),
CD3C, 8,
Offset(0x44),
CD44, 32,
Offset(0xe1),
PMES, 8
}
Method(_INI) {
Or(CD3C, 0xff, CD3C)
Store(0x0, CD44)
}
}
Device(OHCI) {
Name(_ADR, 0x00030002)
}
Device(LANC) {
Name(_ADR, 0x00050000)
Name(_PRW, Package(0x2) {
0xb,
0x4,
})
}
Device(MPC0) {
Name(_ADR, 0x00040000)
Name(_PRW, Package(0x2) {
0xb,
0x3,
})
}
Device(MPC1) {
Name(_ADR, 0x00040001)
Name(_PRW, Package(0x2) {
0xb,
0x3,
})
}
Method(_PRT) {
If(GPIC) {
Return(Package(0x6) {
Package(0x4) {
0x0003ffff,
0x0,
0x0,
0x10,
},
Package(0x4) {
0x0003ffff,
0x1,
0x0,
0x11,
},
Package(0x4) {
0x0003ffff,
0x2,
0x0,
0x12,
},
Package(0x4) {
0x0004ffff,
0x0,
0x0,
0x14,
},
Package(0x4) {
0x0004ffff,
0x1,
0x0,
0x15,
},
Package(0x4) {
0x0005ffff,
0x0,
0x0,
0x13,
},
})
}
Else {
Return(Package(0x6) {
Package(0x4) {
0x0003ffff,
0x0,
\_SB_.PCI0.LPCB.LNKA,
0x0,
},
Package(0x4) {
0x0003ffff,
0x1,
\_SB_.PCI0.LPCB.LNKB,
0x0,
},
Package(0x4) {
0x0003ffff,
0x2,
\_SB_.PCI0.LPCB.LNKC,
0x0,
},
Package(0x4) {
0x0004ffff,
0x0,
\_SB_.PCI0.LPCB.LNKE,
0x0,
},
Package(0x4) {
0x0004ffff,
0x1,
\_SB_.PCI0.LPCB.LNKF,
0x0,
},
Package(0x4) {
0x0005ffff,
0x0,
\_SB_.PCI0.LPCB.LNKD,
0x0,
},
})
}
}
}
Device(LPCB) {
Name(_ADR, 0x001f0000)
OperationRegion(LPC0, PCI_Config, 0x40, 0xc0)
Field(LPC0, AnyAcc, NoLock, Preserve) {
Offset(0x20),
PIRA, 8,
PIRB, 8,
PIRC, 8,
PIRD, 8,
Offset(0x28),
PIRE, 8,
PIRF, 8,
PIRG, 8,
PIRH, 8,
Offset(0x90),
HPTE, 32,
Offset(0xa0),
LDE0, 8,
LDE1, 8,
Offset(0xa6),
LDEN, 8
}
Method(IRQ5, 0, Serialized) {
Name(BUF1, Buffer(0x6) {0x23, 0x20, 0x0, 0x18, 0x79, 0x0 })
Return(BUF1)
}
Method(IRQA, 0, Serialized) {
Name(BUF2, Buffer(0x6) {0x23, 0x0, 0x4, 0x18, 0x79, 0x0 })
Return(BUF2)
}
Method(IRQB, 0, Serialized) {
Name(BUF3, Buffer(0x6) {0x23, 0x0, 0x8, 0x18, 0x79, 0x0 })
Return(BUF3)
}
Device(LNKA) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x1)
Method(_DIS, 0, Serialized) {
Store(0x80, PIRA)
}
Method(_PRS, 0, Serialized) {
Return(IRQA())
}
Method(_CRS, 0, Serialized) {
Name(RTLA, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLA, 0x1, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(0x1, And(PIRA, 0xf, ), IRQ0)
Return(RTLA)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, 0x1, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PIRA)
}
Method(_STA, 0, Serialized) {
If(And(PIRA, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKB) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x2)
Method(_DIS, 0, Serialized) {
Store(0x80, PIRB)
}
Method(_PRS, 0, Serialized) {
Return(IRQA())
}
Method(_CRS, 0, Serialized) {
Name(RTLB, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLB, 0x1, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(0x1, And(PIRB, 0xf, ), IRQ0)
Return(RTLB)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, 0x1, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PIRB)
}
Method(_STA, 0, Serialized) {
If(And(PIRB, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKC) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x3)
Method(_DIS, 0, Serialized) {
Store(0x80, PIRC)
}
Method(_PRS, 0, Serialized) {
Return(IRQB())
}
Method(_CRS, 0, Serialized) {
Name(RTLC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLC, 0x1, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(0x1, And(PIRC, 0xf, ), IRQ0)
Return(RTLC)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, 0x1, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PIRC)
}
Method(_STA, 0, Serialized) {
If(And(PIRC, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKD) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x4)
Method(_DIS, 0, Serialized) {
Store(0x80, PIRD)
}
Method(_PRS, 0, Serialized) {
Return(IRQB())
}
Method(_CRS, 0, Serialized) {
Name(RTLD, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLD, 0x1, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(0x1, And(PIRD, 0xf, ), IRQ0)
Return(RTLD)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, 0x1, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PIRD)
}
Method(_STA, 0, Serialized) {
If(And(PIRD, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKE) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x5)
Method(_DIS, 0, Serialized) {
Store(0x80, PIRE)
}
Method(_PRS, 0, Serialized) {
Return(IRQ5())
}
Method(_CRS, 0, Serialized) {
Name(RTLE, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLE, 0x1, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(0x1, And(PIRE, 0xf, ), IRQ0)
Return(RTLE)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, 0x1, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PIRE)
}
Method(_STA, 0, Serialized) {
If(And(PIRE, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKF) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x6)
Method(_DIS, 0, Serialized) {
Store(0x80, PIRF)
}
Method(_PRS, 0, Serialized) {
Return(IRQ5())
}
Method(_CRS, 0, Serialized) {
Name(RTLF, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLF, 0x1, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(0x1, And(PIRF, 0xf, ), IRQ0)
Return(RTLF)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, 0x1, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PIRF)
}
Method(_STA, 0, Serialized) {
If(And(PIRF, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKG) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x7)
Method(_DIS, 0, Serialized) {
Store(0x80, PIRG)
}
Method(_PRS, 0, Serialized) {
Return(IRQA())
}
Method(_CRS, 0, Serialized) {
Name(RTLG, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLG, 0x1, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(0x1, And(PIRG, 0xf, ), IRQ0)
Return(RTLG)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, 0x1, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PIRG)
}
Method(_STA, 0, Serialized) {
If(And(PIRG, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKH) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x8)
Method(_DIS, 0, Serialized) {
Store(0x80, PIRH)
}
Method(_PRS, 0, Serialized) {
Return(IRQA())
}
Method(_CRS, 0, Serialized) {
Name(RTLH, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLH, 0x1, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(0x1, And(PIRH, 0xf, ), IRQ0)
Return(RTLH)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, 0x1, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PIRH)
}
Method(_STA, 0, Serialized) {
If(And(PIRH, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(TIMR) {
Name(_HID, 0x0001d041)
Name(BUF0, Buffer(0x12) {0x47, 0x1, 0x40, 0x0, 0x40, 0x0, 0x1, 0x4, 0x47, 0x1, 0x50, 0x0, 0x50, 0x0, 0x10, 0x4, 0x79, 0x0 })
Name(BUF1, Buffer(0x15) {0x47, 0x1, 0x40, 0x0, 0x40, 0x0, 0x1, 0x4, 0x47, 0x1, 0x50, 0x0, 0x50, 0x0, 0x10, 0x4, 0x22, 0x1, 0x0, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
If(And(HPTE, 0x00020000, )) {
Return(BUF0)
}
Return(BUF1)
}
}
Device(IPIC) {
Name(_HID, 0xd041)
Name(_CRS, Buffer(0x8d) {0x47, 0x1, 0x20, 0x0, 0x20, 0x0, 0x1, 0x2, 0x47, 0x1, 0x24, 0x0, 0x24, 0x0, 0x1, 0x2, 0x47, 0x1, 0x28, 0x0, 0x28, 0x0, 0x1, 0x2, 0x47, 0x1, 0x2c, 0x0, 0x2c, 0x0, 0x1, 0x2, 0x47, 0x1, 0x30, 0x0, 0x30, 0x0, 0x1, 0x2, 0x47, 0x1, 0x34, 0x0, 0x34, 0x0, 0x1, 0x2, 0x47, 0x1, 0x38, 0x0, 0x38, 0x0, 0x1, 0x2, 0x47, 0x1, 0x3c, 0x0, 0x3c, 0x0, 0x1, 0x2, 0x47, 0x1, 0xa0, 0x0, 0xa0, 0x0, 0x1, 0x2, 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, 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, 0x22, 0x4, 0x0, 0x79, 0x0 })
}
Device(RTC_) {
Name(_HID, 0x000bd041)
Name(BUF0, Buffer(0xa) {0x47, 0x1, 0x70, 0x0, 0x70, 0x0, 0x1, 0x8, 0x79, 0x0 })
Name(BUF1, Buffer(0xd) {0x47, 0x1, 0x70, 0x0, 0x70, 0x0, 0x1, 0x8, 0x22, 0x0, 0x1, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
If(And(HPTE, 0x00020000, )) {
Return(BUF0)
}
Return(BUF1)
}
}
Device(MATH) {
Name(_HID, 0x040cd041)
Name(_CRS, Buffer(0xd) {0x47, 0x1, 0xf0, 0x0, 0xf0, 0x0, 0x1, 0x1, 0x22, 0x0, 0x20, 0x79, 0x0 })
}
Device(DMAC) {
Name(_HID, 0x0002d041)
Name(_CRS, Buffer(0x2d) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x20, 0x47, 0x1, 0x81, 0x0, 0x81, 0x0, 0x1, 0xf, 0x47, 0x1, 0x90, 0x0, 0x90, 0x0, 0x1, 0x2, 0x47, 0x1, 0x93, 0x0, 0x93, 0x0, 0x1, 0xd, 0x47, 0x1, 0xc0, 0x0, 0xc0, 0x0, 0x1, 0x20, 0x2a, 0x10, 0x1, 0x79, 0x0 })
}
Device(MBRD) {
Name(_HID, 0x020cd041)
Name(_CRS, Buffer(0x76) {0x47, 0x1, 0x2e, 0x0, 0x2e, 0x0, 0x1, 0x2, 0x47, 0x1, 0x61, 0x0, 0x61, 0x0, 0x1, 0x1, 0x47, 0x1, 0x63, 0x0, 0x63, 0x0, 0x1, 0x1, 0x47, 0x1, 0x65, 0x0, 0x65, 0x0, 0x1, 0x1, 0x47, 0x1, 0x67, 0x0, 0x67, 0x0, 0x1, 0x1, 0x47, 0x1, 0x80, 0x0, 0x80, 0x0, 0x1, 0x1, 0x47, 0x1, 0x92, 0x0, 0x92, 0x0, 0x1, 0x1, 0x47, 0x1, 0xb2, 0x0, 0xb2, 0x0, 0x1, 0x2, 0x47, 0x1, 0x0, 0x6, 0x0, 0x6, 0x1, 0x10, 0x47, 0x1, 0x0, 0x7, 0x0, 0x7, 0x1, 0x10, 0x47, 0x1, 0x0, 0x8, 0x0, 0x8, 0x1, 0x10, 0x47, 0x1, 0x0, 0x10, 0x0, 0x10, 0x1, 0x80, 0x47, 0x1, 0x80, 0x11, 0x80, 0x11, 0x1, 0x40, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0xc1, 0xfe, 0x0, 0x0, 0x1, 0x0, 0x79, 0x0 })
}
Device(FWHD) {
Name(_HID, 0x0008d425)
Name(_CRS, Buffer(0xe) {0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0x80, 0xff, 0x0, 0x0, 0x80, 0x0, 0x79, 0x0 })
}
Device(HPET) {
Name(_HID, 0x0301d041)
Name(BUF0, Buffer(0x14) {0x22, 0x1, 0x0, 0x22, 0x0, 0x1, 0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0xd0, 0xfe, 0x0, 0x4, 0x0, 0x0, 0x79, 0x0 })
Method(_STA) {
ShiftRight(And(HPTE, 0x00038000, ), 0xf, Local0)
If(LEqual(OSYS, 0x07d1)) {
If(And(Local0, 0x4, )) {
Return(0xf)
}
}
Else {
If(And(Local0, 0x4, )) {
Return(0xb)
}
}
Return(0x0)
}
Method(_CRS, 0, Serialized) {
ShiftRight(And(HPTE, 0x00038000, ), 0xf, Local0)
If(And(Local0, 0x4, )) {
CreateDWordField(BUF0, 0xa, HPT0)
If(LEqual(Local0, 0x5)) {
Store(0xfed01000, HPT0)
}
If(LEqual(Local0, 0x6)) {
Store(0xfed02000, HPT0)
}
If(LEqual(Local0, 0x7)) {
Store(0xfed03000, HPT0)
}
}
Return(BUF0)
}
}
Device(H_EC) {
Name(_HID, 0x090cd041)
Name(_UID, 0x1)
Method(_CRS) {
Name(BFFR, Buffer(0x12) {0x47, 0x1, 0x62, 0x0, 0x62, 0x0, 0x0, 0x1, 0x47, 0x1, 0x66, 0x0, 0x66, 0x0, 0x0, 0x1, 0x79, 0x0 })
Return(BFFR)
}
OperationRegion(ECR_, EmbeddedControl, 0x0, 0xff)
Field(ECR_, DWordAcc, Lock, Preserve) {
Offset(0x80),
B1EX, 1,
B2EX, 1,
ACEX, 1,
Offset(0x81),
SWBE, 1,
DCBE, 1,
Offset(0x82),
Offset(0x83),
LIDI, 1,
, 3,
LIDE, 1,
Offset(0x84),
B1ST, 8,
B2ST, 8,
Offset(0xa0),
B1RR, 32,
B1PV, 32,
B2RR, 32,
B2PV, 32,
B1AF, 32,
B1VL, 32,
B2AF, 32,
B2VL, 32,
CTMP, 8,
Offset(0xc4),
LTMP, 8,
Offset(0xca),
TZF4, 1,
TZF5, 1,
Offset(0xd0),
B1TI, 16,
B1SE, 16,
B1CR, 16,
B1TM, 16,
B2TI, 16,
B2SE, 16,
B2CR, 16,
B2TM, 16
}
Method(_REG, 2) {
If(LAnd(LEqual(Arg0, 0x3), LEqual(Arg1, 0x1))) {
Store(0x1, ECON)
If(LNot(LEqual(LIDS, LIDI))) {
Store(LIDI, LIDS)
If(IGDS) {
LSDS(LIDS)
}
Else {
Store(0x2a, SMIF)
Store(0x0, TRP0)
}
Notify(\_SB_.LID0, 0x80)
}
If(LNot(LEqual(ACEX, PWRS))) {
Store(ACEX, PWRS)
Store(0x2b, SMIF)
Store(0x0, TRP0)
Notify(\_SB_.BAT1, 0x80)
Notify(\_SB_.BAT2, 0x80)
}
}
If(LEqual(\_SB_.MEDB._STA(), 0xf)) {
Store(One, \_SB_.MEDB.DCST)
}
Else {
Store(Zero, \_SB_.MEDB.DCST)
}
}
Name(_GPE, 0x1c)
Method(_Q50) {
Notify(\_SB_.PWRB, 0x80)
}
Method(_Q51) {
\_SB_.PHS_(0x82)
Store(0x1, \PWRS)
Notify(\_SB_.ADP1, 0x80)
}
Method(_Q52) {
\_SB_.PHS_(0x82)
Store(0x0, \PWRS)
Notify(\_SB_.ADP1, 0x80)
}
Method(_Q53) {
Notify(\_SB_.BAT1, 0x1)
Notify(\_SB_.BAT1, 0x81)
Sleep(0x01f4)
USBN()
}
Method(_Q54) {
Notify(\_SB_.BAT1, 0x1)
Notify(\_SB_.BAT1, 0x81)
Sleep(0x01f4)
USBN()
}
Method(_Q55) {
Notify(\_SB_.BAT2, 0x1)
Notify(\_SB_.BAT2, 0x81)
Sleep(0x01f4)
USBN()
}
Method(_Q56) {
Notify(\_SB_.BAT2, 0x1)
Notify(\_SB_.BAT2, 0x81)
Sleep(0x01f4)
USBN()
}
Method(_Q58) {
Notify(\_SB_.MEDB, 0x1)
}
Method(_Q5B) {
Notify(\_SB_.SLPB, 0x80)
}
Method(_Q5D) {
If(IGDS) {
Store(0x1, TLST)
HKDS(0xa)
}
}
Method(_Q5E) {
Store(LIDI, LIDS)
If(IGDS) {
LSDS(LIDS)
}
Else {
Store(0x2a, SMIF)
Store(0x0, TRP0)
}
Sleep(0x01f4)
Sleep(0x01f4)
Notify(\_SB_.LID0, 0x80)
}
Method(_Q5F) {
Store(LIDI, LIDS)
If(IGDS) {
LSDS(LIDS)
}
Else {
Store(0x2a, SMIF)
Store(0x0, TRP0)
}
Sleep(0x01f4)
Sleep(0x01f4)
Notify(\_SB_.LID0, 0x80)
}
Method(_Q63) {
\_SB_.PHS_(0x9e)
}
Method(_Q64) {
\_SB_.PHS_(0x9f)
}
Method(_Q65) {
Notify(\_TZ_.THRM, 0x80)
}
Method(_Q66) {
Notify(\_SB_.BAT1, 0x80)
}
Method(_Q67) {
Notify(\_SB_.BAT2, 0x80)
}
Method(_Q6C) {
\_SB_.PHS_(0xa0)
}
Method(_Q6D) {
If(LEqual(TZF5, One)) {
Store(0x5, TZON)
PNOT()
}
Else {
If(LEqual(TZF4, One)) {
Store(0x4, TZON)
PNOT()
}
Else {
If(LNot(LEqual(TZON, Zero))) {
Store(0x0, TZON)
PNOT()
}
}
}
}
}
Device(SIOD) {
Name(_HID, 0x050ad041)
OperationRegion(N393, SystemIO, 0x2e, 0x2)
Field(N393, ByteAcc, NoLock, Preserve) {
INDX, 8,
DATA, 8
}
Method(SETD, 1, Serialized) {
Store(0x7, INDX)
Stall(0x32)
Store(Arg0, DATA)
Stall(0x32)
}
Method(READ, 1, Serialized) {
Store(Arg0, INDX)
Stall(0x32)
Store(DATA, Local0)
Stall(0x32)
Return(Local0)
}
Method(WRIT, 2, Serialized) {
Store(Arg0, INDX)
Stall(0x32)
Store(Arg1, DATA)
Stall(0x32)
}
Method(LTST) {
If(LEqual(OSYS, 0x07d0)) {
Return(0xf)
}
Else {
Return(\_SB_.MEDB._STA())
}
}
Device(COMA) {
Name(_HID, 0x0105d041)
Name(_EJD, "\_SB.MEDB")
Method(_STA) {
If(LEqual(\_SB_.MEDB._STA(), Zero)) {
Return(0x0)
}
If(CMAP) {
SETD(0x3)
If(READ(0x30)) {
Return(0xf)
}
Return(0xd)
}
Return(0x0)
}
Method(_DIS) {
SETD(0x3)
WRIT(0x30, 0x0)
And(LDEN, 0xfe, LDEN)
}
Method(_CRS) {
If(LEqual(\_SB_.MEDB._STA(), Zero)) {
Name(BUF1, Buffer(0x10) {0x31, 0x8, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x22, 0x0, 0x0, 0x38, 0x79, 0x0 })
Return(BUF1)
}
Name(BUF0, Buffer(0xd) {0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x79, 0x0 })
SETD(0x3)
If(CMAP) {
CreateByteField(BUF0, 0x2, IOL0)
CreateByteField(BUF0, 0x3, IOH0)
CreateByteField(BUF0, 0x4, IOL1)
CreateByteField(BUF0, 0x5, IOH1)
CreateByteField(BUF0, 0x7, LEN0)
CreateWordField(BUF0, 0x9, IRQW)
Store(READ(0x60), IOH0)
Store(READ(0x61), IOL0)
Store(READ(0x60), IOH1)
Store(READ(0x61), IOL1)
Store(0x8, LEN0)
And(READ(0x70), 0xf, Local0)
If(Local0) {
ShiftLeft(One, Local0, IRQW)
}
Else {
Store(Zero, IRQW)
}
}
Return(BUF0)
}
Method(_PRS) {
If(LEqual(\_SB_.MEDB._STA(), Zero)) {
Name(BUF1, Buffer(0x10) {0x31, 0x8, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x22, 0x0, 0x0, 0x38, 0x79, 0x0 })
Return(BUF1)
}
Name(BUF0, Buffer(0x6b) {0x31, 0x8, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x31, 0x8, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x1, 0x8, 0x22, 0x10, 0x0, 0x31, 0x8, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x31, 0x8, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x1, 0x8, 0x22, 0x10, 0x0, 0x31, 0x8, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x1, 0x8, 0x22, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x1, 0x8, 0x22, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x38, 0x79, 0x0 })
Return(BUF0)
}
Method(_SRS, 1) {
CreateByteField(Arg0, 0x2, IOLO)
CreateByteField(Arg0, 0x3, IOHI)
CreateWordField(Arg0, 0x9, IRQW)
SETD(0x3)
WRIT(0x30, 0x0)
WRIT(0x61, IOLO)
WRIT(0x60, IOHI)
FindSetRightBit(IRQW, Local0)
If(LNot(LEqual(IRQW, Zero))) {
Decrement(Local0)
}
WRIT(0x70, Local0)
And(LDE0, 0xf8, LDE0)
If(LEqual(IOHI, 0x3)) {
If(LEqual(IOLO, 0xf8)) {
Or(LDE0, 0x0, LDE0)
}
Else {
Or(LDE0, 0x7, LDE0)
}
}
Else {
If(LEqual(IOLO, 0xf8)) {
Or(LDE0, 0x1, LDE0)
}
Else {
Or(LDE0, 0x5, LDE0)
}
}
Or(LDEN, 0x1, LDEN)
If(\_SB_.MEDB._STA()) {
SETD(0x3)
WRIT(0x30, 0x1)
}
}
Method(_PS0) {
SETD(0x3)
WRIT(0xf0, 0x82)
WRIT(0x30, 0x1)
Or(LDEN, 0x1, LDEN)
}
Method(_PS3) {
SETD(0x3)
WRIT(0x30, 0x0)
}
}
Device(SIR_) {
Name(_HID, 0x1005d041)
Name(_UID, 0x1)
Method(_STA) {
If(CMBP) {
SETD(0x2)
If(LNot(LEqual(READ(0x74), 0x4))) {
Return(0x0)
}
If(READ(0x30)) {
Return(0xf)
}
Return(0xd)
}
Return(0x0)
}
Method(_DIS) {
SETD(0x2)
WRIT(0x30, 0x0)
And(LDEN, 0xfd, LDEN)
}
Method(_CRS) {
Name(BUF0, Buffer(0xd) {0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x79, 0x0 })
SETD(0x2)
If(CMBP) {
CreateByteField(BUF0, 0x2, IOL0)
CreateByteField(BUF0, 0x3, IOH0)
CreateByteField(BUF0, 0x4, IOL1)
CreateByteField(BUF0, 0x5, IOH1)
CreateByteField(BUF0, 0x7, LEN0)
CreateWordField(BUF0, 0x9, IRQW)
Store(READ(0x60), IOH0)
Store(READ(0x61), IOL0)
Store(READ(0x60), IOH1)
Store(READ(0x61), IOL1)
Store(0x8, LEN0)
And(READ(0x70), 0xf, Local0)
If(Local0) {
ShiftLeft(One, Local0, IRQW)
}
Else {
Store(Zero, IRQW)
}
}
Return(BUF0)
}
Method(_PRS) {
Name(BUF0, Buffer(0x6b) {0x31, 0x8, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x31, 0x8, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x1, 0x8, 0x22, 0x10, 0x0, 0x31, 0x8, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x31, 0x8, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x1, 0x8, 0x22, 0x10, 0x0, 0x31, 0x8, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x1, 0x8, 0x22, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x1, 0x8, 0x22, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x38, 0x79, 0x0 })
Return(BUF0)
}
Method(_SRS, 1) {
CreateByteField(Arg0, 0x2, IOLO)
CreateByteField(Arg0, 0x3, IOHI)
CreateWordField(Arg0, 0x9, IRQW)
SETD(0x2)
WRIT(0x30, 0x0)
WRIT(0x61, IOLO)
WRIT(0x60, IOHI)
FindSetRightBit(IRQW, Local0)
If(LNot(LEqual(IRQW, Zero))) {
Decrement(Local0)
}
WRIT(0x70, Local0)
And(LDE0, 0x8f, LDE0)
If(LEqual(IOHI, 0x3)) {
If(LEqual(IOLO, 0xf8)) {
Or(LDE0, 0x0, LDE0)
}
Else {
Or(LDE0, 0x70, LDE0)
}
}
Else {
If(LEqual(IOLO, 0xf8)) {
Or(LDE0, 0x10, LDE0)
}
Else {
Or(LDE0, 0x50, LDE0)
}
}
Or(LDEN, 0x2, LDEN)
WRIT(0x30, 0x1)
}
Method(_PS0) {
SETD(0x2)
WRIT(0xf0, 0x82)
WRIT(0x30, 0x1)
Or(LDEN, 0x2, LDEN)
}
Method(_PS3) {
SETD(0x2)
WRIT(0x30, 0x0)
}
}
Device(FIR_) {
Name(_HID, 0x0160633a)
Name(_UID, 0x2)
Method(_STA) {
If(CMBP) {
SETD(0x2)
If(LEqual(READ(0x74), 0x4)) {
Return(0x0)
}
If(READ(0x30)) {
Return(0xf)
}
Return(0xd)
}
Return(0x0)
}
Method(_DIS) {
SETD(0x2)
WRIT(0x30, 0x0)
And(LDEN, 0xfd, LDEN)
}
Method(_CRS) {
Name(BUF0, Buffer(0x10) {0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x2a, 0x8, 0x0, 0x79, 0x0 })
SETD(0x2)
If(CMBP) {
CreateByteField(BUF0, 0x2, IOL0)
CreateByteField(BUF0, 0x3, IOH0)
CreateByteField(BUF0, 0x4, IOL1)
CreateByteField(BUF0, 0x5, IOH1)
CreateByteField(BUF0, 0x7, LEN0)
CreateWordField(BUF0, 0x9, IRQW)
CreateByteField(BUF0, 0xc, DMA0)
CreateByteField(BUF0, 0xd, DMA1)
Store(READ(0x60), IOH0)
Store(READ(0x61), IOL0)
Store(READ(0x60), IOH1)
Store(READ(0x61), IOL1)
Store(0x8, LEN0)
And(READ(0x70), 0xf, Local0)
If(Local0) {
ShiftLeft(One, Local0, IRQW)
}
Else {
Store(Zero, IRQW)
}
Store(READ(0x74), Local0)
If(LEqual(Local0, 0x4)) {
Store(Zero, DMA0)
}
Else {
ShiftLeft(One, Local0, DMA0)
}
}
Return(BUF0)
}
Method(_PRS) {
Name(BUF0, Buffer(0x83) {0x31, 0x8, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x2a, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x1, 0x8, 0x22, 0x10, 0x0, 0x2a, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x2a, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x1, 0x8, 0x22, 0x10, 0x0, 0x2a, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x1, 0x8, 0x22, 0x8, 0x0, 0x2a, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x2a, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x1, 0x8, 0x22, 0x8, 0x0, 0x2a, 0x8, 0x0, 0x31, 0x8, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x2a, 0x8, 0x0, 0x38, 0x79, 0x0 })
Return(BUF0)
}
Method(_SRS, 1) {
CreateByteField(Arg0, 0x2, IOLO)
CreateByteField(Arg0, 0x3, IOHI)
CreateWordField(Arg0, 0x9, IRQW)
CreateByteField(Arg0, 0xc, DMA0)
Store(DMA0, P80H)
SETD(0x2)
WRIT(0x30, 0x0)
WRIT(0x61, IOLO)
WRIT(0x60, IOHI)
FindSetRightBit(IRQW, Local0)
If(LNot(LEqual(IRQW, Zero))) {
Decrement(Local0)
}
WRIT(0x70, Local0)
FindSetRightBit(DMA0, Local0)
If(LNot(LEqual(DMA0, Zero))) {
Decrement(Local0)
}
WRIT(0x74, Local0)
And(LDE0, 0x8f, LDE0)
If(LEqual(IOHI, 0x3)) {
If(LEqual(IOLO, 0xf8)) {
Or(LDE0, 0x0, LDE0)
}
Else {
Or(LDE0, 0x70, LDE0)
}
}
Else {
If(LEqual(IOLO, 0xf8)) {
Or(LDE0, 0x10, LDE0)
}
Else {
Or(LDE0, 0x50, LDE0)
}
}
Or(LDEN, 0x2, LDEN)
WRIT(0x30, 0x1)
}
Method(_PS0) {
SETD(0x2)
WRIT(0xf0, 0x82)
WRIT(0x30, 0x1)
Or(LDEN, 0x2, LDEN)
}
Method(_PS3) {
SETD(0x2)
WRIT(0x30, 0x0)
}
}
Device(POUT) {
Name(_HID, 0x0004d041)
Name(_UID, 0x1)
Method(_EJD) {
If(LEqual(OSYS, 0x07d0)) {
Return("\_SB.PCI0.LPCB.MBRD")
}
Return("\_SB.MEDB")
}
Method(_STA) {
If(LEqual(LTST(), Zero)) {
Return(0x0)
}
SETD(0x1)
If(LEqual(And(READ(0xf0), 0xe0, ), 0x0)) {
If(LPTP) {
SETD(0x1)
If(READ(0x30)) {
Return(0xf)
}
Return(0xd)
}
}
Return(0x0)
}
Method(_DIS) {
SETD(0x1)
If(LEqual(And(READ(0xf0), 0xe0, ), 0x0)) {
WRIT(0x30, 0x0)
}
And(LDEN, 0xfb, LDEN)
}
Method(_CRS) {
If(LEqual(LTST(), Zero)) {
Name(BUF1, Buffer(0x10) {0x31, 0x8, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x22, 0x0, 0x0, 0x38, 0x79, 0x0 })
Return(BUF1)
}
Name(BUF0, Buffer(0xd) {0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x4, 0x22, 0x80, 0x0, 0x79, 0x0 })
SETD(0x1)
If(LEqual(And(READ(0xf0), 0xe0, ), 0x0)) {
CreateByteField(BUF0, 0x2, IOL0)
CreateByteField(BUF0, 0x3, IOH0)
CreateByteField(BUF0, 0x4, IOL1)
CreateByteField(BUF0, 0x5, IOH1)
CreateByteField(BUF0, 0x7, LEN0)
CreateWordField(BUF0, 0x9, IRQW)
SETD(0x1)
Store(READ(0x61), IOL0)
Store(READ(0x60), IOH0)
Store(IOL0, IOL1)
Store(IOH0, IOH1)
Store(0x4, LEN0)
If(And(READ(0x70), 0xf, )) {
ShiftLeft(One, And(READ(0x70), 0xf, ), IRQW)
}
Else {
Store(Zero, IRQW)
}
}
Return(BUF0)
}
Method(_PRS) {
If(LEqual(LTST(), Zero)) {
Name(BUF1, Buffer(0x10) {0x31, 0x8, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x22, 0x0, 0x0, 0x38, 0x79, 0x0 })
Return(BUF1)
}
Name(BUF0, Buffer(0x51) {0x31, 0x8, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x4, 0x22, 0x80, 0x0, 0x31, 0x8, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x4, 0x22, 0x80, 0x0, 0x31, 0x8, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x1, 0x4, 0x22, 0x80, 0x0, 0x31, 0x8, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x4, 0x22, 0x20, 0x0, 0x31, 0x8, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x4, 0x22, 0x20, 0x0, 0x31, 0x8, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x1, 0x4, 0x22, 0x20, 0x0, 0x38, 0x79, 0x0 })
Return(BUF0)
}
Method(_SRS, 1) {
CreateByteField(Arg0, 0x2, IOL0)
CreateByteField(Arg0, 0x3, IOH0)
CreateWordField(Arg0, 0x9, IRQW)
SETD(0x1)
WRIT(0x30, 0x0)
WRIT(0xf0, And(READ(0xf0), 0xf, ))
WRIT(0x74, 0x4)
WRIT(0x61, IOL0)
WRIT(0x60, IOH0)
FindSetRightBit(IRQW, Local0)
If(LNot(LEqual(IRQW, Zero))) {
Decrement(Local0)
}
WRIT(0x70, Local0)
And(LDE1, 0xfc, LDE1)
If(LEqual(IOH0, 0x3)) {
If(LEqual(IOL0, 0x78)) {
Or(LDE1, 0x0, LDE1)
}
Else {
Or(LDE1, 0x2, LDE1)
}
}
Else {
Or(LDE1, 0x1, LDE1)
}
Or(LDEN, 0x4, LDEN)
If(LTST()) {
SETD(0x1)
WRIT(0x30, 0x1)
}
}
Method(_PS0) {
SETD(0x1)
WRIT(0x30, 0x1)
Or(LDEN, 0x4, LDEN)
}
Method(_PS3) {
SETD(0x1)
If(LEqual(And(READ(0xf0), 0xe0, ), 0x0)) {
WRIT(0x30, 0x0)
}
}
}
Device(PBID) {
Name(_HID, 0x0004d041)
Name(_UID, 0x2)
Method(_EJD) {
If(LEqual(OSYS, 0x07d0)) {
Return("\_SB.PCI0.LPCB.MBRD")
}
Return("\_SB.MEDB")
}
Method(_STA) {
If(LEqual(LTST(), Zero)) {
Return(0x0)
}
SETD(0x1)
If(LEqual(And(READ(0xf0), 0xe0, ), 0x20)) {
If(LPTP) {
SETD(0x1)
If(READ(0x30)) {
Return(0xf)
}
Return(0xd)
}
}
Return(0x0)
}
Method(_DIS) {
SETD(0x1)
If(LEqual(And(READ(0xf0), 0xe0, ), 0x20)) {
WRIT(0x30, 0x0)
}
And(LDEN, 0xfb, LDEN)
}
Method(_CRS) {
If(LEqual(LTST(), Zero)) {
Name(BUF1, Buffer(0x10) {0x31, 0x8, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x22, 0x0, 0x0, 0x38, 0x79, 0x0 })
Return(BUF1)
}
Name(BUF0, Buffer(0xd) {0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x4, 0x22, 0x80, 0x0, 0x79, 0x0 })
SETD(0x1)
If(LEqual(And(READ(0xf0), 0xe0, ), 0x20)) {
CreateByteField(BUF0, 0x2, IOL0)
CreateByteField(BUF0, 0x3, IOH0)
CreateByteField(BUF0, 0x4, IOL1)
CreateByteField(BUF0, 0x5, IOH1)
CreateByteField(BUF0, 0x7, LEN0)
CreateWordField(BUF0, 0x9, IRQW)
SETD(0x1)
Store(READ(0x61), IOL0)
Store(READ(0x60), IOH0)
Store(IOL0, IOL1)
Store(IOH0, IOH1)
Store(0x4, LEN0)
If(And(READ(0x70), 0xf, )) {
ShiftLeft(One, And(READ(0x70), 0xf, ), IRQW)
}
Else {
Store(Zero, IRQW)
}
}
Return(BUF0)
}
Method(_PRS) {
If(LEqual(LTST(), Zero)) {
Name(BUF1, Buffer(0x10) {0x31, 0x8, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x22, 0x0, 0x0, 0x38, 0x79, 0x0 })
Return(BUF1)
}
Name(BUF0, Buffer(0x51) {0x31, 0x8, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x4, 0x22, 0x80, 0x0, 0x31, 0x8, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x4, 0x22, 0x80, 0x0, 0x31, 0x8, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x1, 0x4, 0x22, 0x80, 0x0, 0x31, 0x8, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x4, 0x22, 0x20, 0x0, 0x31, 0x8, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x4, 0x22, 0x20, 0x0, 0x31, 0x8, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x1, 0x4, 0x22, 0x20, 0x0, 0x38, 0x79, 0x0 })
Return(BUF0)
}
Method(_SRS, 1) {
CreateByteField(Arg0, 0x2, IOL0)
CreateByteField(Arg0, 0x3, IOH0)
CreateWordField(Arg0, 0x9, IRQW)
SETD(0x1)
WRIT(0x30, 0x0)
WRIT(0xf0, Or(0x20, And(READ(0xf0), 0xf, ), ))
WRIT(0x74, 0x4)
WRIT(0x61, IOL0)
WRIT(0x60, IOH0)
FindSetRightBit(IRQW, Local0)
If(LNot(LEqual(IRQW, Zero))) {
Decrement(Local0)
}
WRIT(0x70, Local0)
And(LDE1, 0xfc, LDE1)
If(LEqual(IOH0, 0x3)) {
If(LEqual(IOL0, 0x78)) {
Or(LDE1, 0x0, LDE1)
}
Else {
Or(LDE1, 0x2, LDE1)
}
}
Else {
Or(LDE1, 0x1, LDE1)
}
Or(LDEN, 0x4, LDEN)
If(LTST()) {
SETD(0x1)
WRIT(0x30, 0x1)
}
}
Method(_PS0) {
SETD(0x1)
WRIT(0x30, 0x1)
Or(LDEN, 0x4, LDEN)
}
Method(_PS3) {
SETD(0x1)
If(LEqual(And(READ(0xf0), 0xe0, ), 0x20)) {
WRIT(0x30, 0x0)
}
}
}
Device(PECP) {
Name(_HID, 0x0104d041)
Name(_UID, 0x3)
Method(_EJD) {
If(LEqual(OSYS, 0x07d0)) {
Return("\_SB.PCI0.LPCB.MBRD")
}
Return("\_SB.MEDB")
}
Method(_STA) {
If(LEqual(LTST(), Zero)) {
Return(0x0)
}
SETD(0x1)
If(LEqual(And(READ(0xf0), 0xe0, ), 0xe0)) {
If(LPTP) {
SETD(0x1)
If(READ(0x30)) {
Return(0xf)
}
Return(0xd)
}
}
Return(0x0)
}
Method(_DIS) {
SETD(0x1)
If(LEqual(And(READ(0xf0), 0xe0, ), 0xe0)) {
WRIT(0x30, 0x0)
}
And(LDEN, 0xfb, LDEN)
}
Method(_CRS) {
If(LEqual(LTST(), Zero)) {
Name(BUF1, Buffer(0x10) {0x31, 0x8, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x22, 0x0, 0x0, 0x38, 0x79, 0x0 })
Return(BUF1)
}
Name(BUF0, Buffer(0x18) {0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x1, 0x8, 0x22, 0x80, 0x0, 0x2a, 0x2, 0x1, 0x79, 0x0 })
If(LEqual(And(READ(0xf0), 0xe0, ), 0xe0)) {
CreateByteField(BUF0, 0x2, IOL0)
CreateByteField(BUF0, 0x3, IOH0)
CreateByteField(BUF0, 0x4, IOL1)
CreateByteField(BUF0, 0x5, IOH1)
CreateByteField(BUF0, 0x7, LEN0)
CreateByteField(BUF0, 0xa, IOL2)
CreateByteField(BUF0, 0xb, IOH2)
CreateByteField(BUF0, 0xc, IOL3)
CreateByteField(BUF0, 0xd, IOH3)
CreateByteField(BUF0, 0xf, LEN1)
CreateWordField(BUF0, 0x11, IRQW)
CreateByteField(BUF0, 0x14, DMA0)
SETD(0x1)
Store(READ(0x61), IOL0)
Store(READ(0x60), IOH0)
Store(IOL0, IOL1)
Store(IOH0, IOH1)
Store(IOL0, IOL2)
Store(Add(0x4, IOH0, ), IOH2)
Store(IOL0, IOL3)
Store(Add(0x4, IOH0, ), IOH3)
Store(0x8, LEN0)
Store(0x8, LEN1)
And(READ(0x70), 0xf, Local0)
If(Local0) {
ShiftLeft(One, Local0, IRQW)
}
Else {
Store(Zero, IRQW)
}
Store(READ(0x74), Local0)
If(LEqual(Local0, 0x4)) {
Store(Zero, DMA0)
}
Else {
ShiftLeft(One, Local0, DMA0)
}
}
Return(BUF0)
}
Method(_PRS) {
If(LEqual(LTST(), Zero)) {
Name(BUF1, Buffer(0x10) {0x31, 0x8, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x22, 0x0, 0x0, 0x38, 0x79, 0x0 })
Return(BUF1)
}
Name(BUF0, Buffer(0xc3) {0x31, 0x8, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x1, 0x8, 0x22, 0x80, 0x0, 0x2a, 0x8, 0x1, 0x31, 0x8, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x1, 0x8, 0x22, 0x80, 0x0, 0x2a, 0x8, 0x1, 0x31, 0x8, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x1, 0x8, 0x22, 0x20, 0x0, 0x2a, 0x8, 0x1, 0x31, 0x8, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x1, 0x8, 0x22, 0x20, 0x0, 0x2a, 0x8, 0x1, 0x31, 0x8, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x1, 0x8, 0x22, 0x80, 0x0, 0x2a, 0x2, 0x1, 0x31, 0x8, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x1, 0x8, 0x22, 0x80, 0x0, 0x2a, 0x2, 0x1, 0x31, 0x8, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x1, 0x8, 0x22, 0x20, 0x0, 0x2a, 0x2, 0x1, 0x31, 0x8, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x1, 0x8, 0x22, 0x20, 0x0, 0x2a, 0x2, 0x1, 0x38, 0x79, 0x0 })
Return(BUF0)
}
Method(_SRS, 1) {
CreateByteField(Arg0, 0x2, IOL0)
CreateByteField(Arg0, 0x3, IOH0)
CreateWordField(Arg0, 0x11, IRQW)
CreateByteField(Arg0, 0x14, DMA0)
SETD(0x1)
WRIT(0x30, 0x0)
WRIT(0xf0, Or(0xf0, READ(0xf0), ))
WRIT(0x61, IOL0)
WRIT(0x60, IOH0)
FindSetRightBit(IRQW, Local0)
If(LNot(LEqual(IRQW, Zero))) {
Decrement(Local0)
}
WRIT(0x70, Local0)
FindSetRightBit(DMA0, Local0)
If(LNot(LEqual(DMA0, Zero))) {
Decrement(Local0)
}
WRIT(0x74, Local0)
And(LDE1, 0xfc, LDE1)
If(LEqual(IOH0, 0x3)) {
Or(LDE1, 0x0, LDE1)
}
Else {
Or(LDE1, 0x1, LDE1)
}
Or(LDEN, 0x4, LDEN)
If(LTST()) {
SETD(0x1)
WRIT(0x30, 0x1)
}
}
Method(_PS0) {
SETD(0x1)
WRIT(0x30, 0x1)
Or(LDEN, 0x4, LDEN)
}
Method(_PS3) {
SETD(0x1)
If(LEqual(And(READ(0xf0), 0xe0, ), 0xe0)) {
WRIT(0x30, 0x0)
}
}
}
}
Device(PS2K) {
Name(_HID, 0x0303d041)
Name(_CRS, Buffer(0x16) {0x47, 0x1, 0x60, 0x0, 0x60, 0x0, 0x1, 0x1, 0x47, 0x1, 0x64, 0x0, 0x64, 0x0, 0x1, 0x1, 0x23, 0x2, 0x0, 0x1, 0x79, 0x0 })
}
Device(PS2M) {
Name(_HID, 0x02002e4f)
Name(_CID, 0x130fd041)
Name(_CRS, Buffer(0x6) {0x23, 0x0, 0x10, 0x1, 0x79, 0x0 })
Name(_PSC, 0x0)
Method(_PS0) {
Store(One, \WEND)
Store(Zero, _PSC)
}
Method(_PS3) {
Store(0x3, _PSC)
}
}
}
Device(USB0) {
Name(_ADR, 0x001d0000)
Device(HUB0) {
Name(_ADR, 0x0)
Device(POT0) {
Name(_ADR, 0x1)
}
Device(POT1) {
Name(_ADR, 0x2)
}
}
}
Device(USB1) {
Name(_ADR, 0x001d0001)
Device(HUB1) {
Name(_ADR, 0x0)
Device(POT2) {
Name(_ADR, 0x1)
Name(_EJD, "\_SB.MEDB")
}
Device(POT3) {
Name(_ADR, 0x2)
}
}
}
Device(USB2) {
Name(_ADR, 0x001d0002)
Device(HUB2) {
Name(_ADR, 0x0)
Device(POT4) {
Name(_ADR, 0x1)
Name(_EJD, "\_SB.MEDB")
}
Device(POT5) {
Name(_ADR, 0x2)
Name(_EJD, "\_SB.MEDB")
}
}
}
Device(USB7) {
Name(_ADR, 0x001d0007)
Device(RHUB) {
Name(_ADR, 0x0)
Name(_EJD, "\_SB.MEDB")
}
}
Name(PUAL, Package(0x1) {
0x001f0001,
})
Device(IDEC) {
Name(_ADR, 0x001f0001)
OperationRegion(IDEC, PCI_Config, 0x40, 0x18)
Field(IDEC, DWordAcc, NoLock, Preserve) {
PRIT, 16,
SECT, 16,
PSIT, 4,
SSIT, 4,
Offset(0x8),
SYNC, 4,
Offset(0xa),
SDT0, 2,
, 2,
SDT1, 2,
Offset(0xb),
SDT2, 2,
, 2,
SDT3, 2,
Offset(0x14),
ICR0, 4,
ICR1, 4,
ICR2, 4,
ICR3, 4,
ICR4, 4,
ICR5, 4
}
Device(PRID) {
Name(_ADR, 0x0)
Method(_GTM) {
Name(PBUF, Buffer(0x14) {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
CreateDWordField(PBUF, 0x0, PIO0)
CreateDWordField(PBUF, 0x4, DMA0)
CreateDWordField(PBUF, 0x8, PIO1)
CreateDWordField(PBUF, 0xc, DMA1)
CreateDWordField(PBUF, 0x10, FLAG)
Store(GETP(PRIT), PIO0)
Store(GDMA(And(SYNC, 0x1, ), And(ICR3, 0x1, ), And(ICR0, 0x1, ), SDT0, And(ICR1, 0x1, )), 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, 0x2, ), And(ICR3, 0x2, ), And(ICR0, 0x2, ), SDT1, And(ICR1, 0x2, )), DMA1)
If(LEqual(DMA1, 0xffffffff)) {
Store(PIO1, DMA1)
}
Store(GETF(And(SYNC, 0x1, ), And(SYNC, 0x2, ), PRIT), FLAG)
Return(PBUF)
}
Method(_STM, 3) {
CreateDWordField(Arg0, 0x0, PIO0)
CreateDWordField(Arg0, 0x4, DMA0)
CreateDWordField(Arg0, 0x8, PIO1)
CreateDWordField(Arg0, 0xc, DMA1)
CreateDWordField(Arg0, 0x10, FLAG)
Store(0x4, ICR2)
If(LEqual(SizeOf(Arg1), 0x0200)) {
And(PRIT, 0x40f0, PRIT)
And(SYNC, 0xe, SYNC)
Store(0x0, SDT0)
And(ICR0, 0xe, ICR0)
And(ICR1, 0xe, ICR1)
And(ICR3, 0xe, ICR3)
And(ICR5, 0xe, 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, 0x2, ), And(W490, 0x0800, ))) {
Or(PRIT, 0x2, PRIT)
}
Or(PRIT, SETP(PIO0, W530, W640), PRIT)
If(And(FLAG, 0x1, )) {
Or(SYNC, 0x1, SYNC)
Store(SDMA(DMA0), SDT0)
If(LLess(DMA0, 0x1e)) {
Or(ICR3, 0x1, ICR3)
}
If(LLess(DMA0, 0x3c)) {
Or(ICR0, 0x1, ICR0)
}
If(And(W930, 0x2000, )) {
Or(ICR1, 0x1, ICR1)
}
}
}
If(LEqual(SizeOf(Arg2), 0x0200)) {
And(PRIT, 0x3f0f, PRIT)
Store(0x0, PSIT)
And(SYNC, 0xd, SYNC)
Store(0x0, SDT1)
And(ICR0, 0xd, ICR0)
And(ICR1, 0xd, ICR1)
And(ICR3, 0xd, ICR3)
And(ICR5, 0xd, 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, 0x8, ), 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, 0x4, )) {
Or(SYNC, 0x2, SYNC)
Store(SDMA(DMA1), SDT1)
If(LLess(DMA1, 0x1e)) {
Or(ICR3, 0x2, ICR3)
}
If(LLess(DMA1, 0x3c)) {
Or(ICR0, 0x2, ICR0)
}
If(And(W931, 0x2000, )) {
Or(ICR1, 0x2, ICR1)
}
}
}
}
Device(P_D0) {
Name(_ADR, 0x0)
Method(_GTF) {
Name(PIB0, Buffer(0xe) {0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef })
CreateByteField(PIB0, 0x1, PMD0)
CreateByteField(PIB0, 0x8, DMD0)
If(And(PRIT, 0x2, )) {
If(LEqual(And(PRIT, 0x9, ), 0x8)) {
Store(0x8, PMD0)
}
Else {
Store(0xa, PMD0)
ShiftRight(And(PRIT, 0x0300, ), 0x8, Local0)
ShiftRight(And(PRIT, 0x3000, ), 0xc, Local1)
Add(Local0, Local1, Local2)
If(LEqual(0x3, Local2)) {
Store(0xb, PMD0)
}
If(LEqual(0x5, Local2)) {
Store(0xc, PMD0)
}
}
}
Else {
Store(0x1, PMD0)
}
If(And(SYNC, 0x1, )) {
Store(Or(SDT0, 0x40, ), DMD0)
If(And(ICR1, 0x1, )) {
If(And(ICR0, 0x1, )) {
Add(DMD0, 0x2, DMD0)
}
If(And(ICR3, 0x1, )) {
Store(0x45, DMD0)
}
}
}
Else {
Or(Subtract(And(PMD0, 0x7, ), 0x2, ), 0x20, DMD0)
}
Return(PIB0)
}
}
Device(P_D1) {
Name(_ADR, 0x1)
Method(_GTF) {
Name(PIB1, Buffer(0xe) {0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xef })
CreateByteField(PIB1, 0x1, PMD1)
CreateByteField(PIB1, 0x8, DMD1)
If(And(PRIT, 0x20, )) {
If(LEqual(And(PRIT, 0x90, ), 0x80)) {
Store(0x8, PMD1)
}
Else {
Add(And(PSIT, 0x3, ), ShiftRight(And(PSIT, 0xc, ), 0x2, ), Local0)
If(LEqual(0x5, Local0)) {
Store(0xc, PMD1)
}
Else {
If(LEqual(0x3, Local0)) {
Store(0xb, PMD1)
}
Else {
Store(0xa, PMD1)
}
}
}
}
Else {
Store(0x1, PMD1)
}
If(And(SYNC, 0x2, )) {
Store(Or(SDT1, 0x40, ), DMD1)
If(And(ICR1, 0x2, )) {
If(And(ICR0, 0x2, )) {
Add(DMD1, 0x2, DMD1)
}
If(And(ICR3, 0x2, )) {
Store(0x45, DMD1)
}
}
}
Else {
Or(Subtract(And(PMD1, 0x7, ), 0x2, ), 0x20, DMD1)
}
Return(PIB1)
}
}
Method(_PS0) {
}
Method(_PS3) {
}
}
Method(GETP, 1, Serialized) {
If(LEqual(And(Arg0, 0x9, ), 0x0)) {
Return(0xffffffff)
}
If(LEqual(And(Arg0, 0x9, ), 0x8)) {
Return(0x0384)
}
ShiftRight(And(Arg0, 0x0300, ), 0x8, Local0)
ShiftRight(And(Arg0, 0x3000, ), 0xc, Local1)
Return(Multiply(0x1e, Subtract(0x9, Add(Local0, Local1, ), ), ))
}
Method(GDMA, 5, Serialized) {
If(Arg0) {
If(LAnd(Arg1, Arg4)) {
Return(0x14)
}
If(LAnd(Arg2, Arg4)) {
Return(Multiply(Subtract(0x4, Arg3, ), 0xf, ))
}
Return(Multiply(Subtract(0x4, Arg3, ), 0x1e, ))
}
Return(0xffffffff)
}
Method(GETT, 1, Serialized) {
Return(Multiply(0x1e, Subtract(0x9, Add(And(ShiftRight(Arg0, 0x2, ), 0x3, ), And(Arg0, 0x3, ), ), ), ))
}
Method(GETF, 3, Serialized) {
Name(TMPF, 0x0)
If(Arg0) {
Or(TMPF, 0x1, TMPF)
}
If(And(Arg2, 0x2, )) {
Or(TMPF, 0x2, TMPF)
}
If(Arg1) {
Or(TMPF, 0x4, TMPF)
}
If(And(Arg2, 0x20, )) {
Or(TMPF, 0x8, TMPF)
}
If(And(Arg2, 0x4000, )) {
Or(TMPF, 0x10, TMPF)
}
Return(TMPF)
}
Method(SETP, 3, Serialized) {
If(LGreater(Arg0, 0xf0)) {
Return(0x8)
}
Else {
If(And(Arg1, 0x2, )) {
If(LAnd(LNot(LGreater(Arg0, 0x78)), And(Arg2, 0x2, ))) {
Return(0x2301)
}
If(LAnd(LNot(LGreater(Arg0, 0xb4)), And(Arg2, 0x1, ))) {
Return(0x2101)
}
}
Return(0x1001)
}
}
Method(SDMA, 1, Serialized) {
If(LNot(LGreater(Arg0, 0x14))) {
Return(0x1)
}
If(LNot(LGreater(Arg0, 0x1e))) {
Return(0x2)
}
If(LNot(LGreater(Arg0, 0x2d))) {
Return(0x1)
}
If(LNot(LGreater(Arg0, 0x3c))) {
Return(0x2)
}
If(LNot(LGreater(Arg0, 0x5a))) {
Return(0x1)
}
Return(0x0)
}
Method(SETT, 3, Serialized) {
If(And(Arg1, 0x2, )) {
If(LAnd(LNot(LGreater(Arg0, 0x78)), And(Arg2, 0x2, ))) {
Return(0xb)
}
If(LAnd(LNot(LGreater(Arg0, 0xb4)), And(Arg2, 0x1, ))) {
Return(0x9)
}
}
Return(0x4)
}
}
Device(SBUS) {
Name(_ADR, 0x001f0003)
}
Device(AUD0) {
Name(_ADR, 0x001f0005)
}
Device(MODM) {
Name(_ADR, 0x001f0006)
Name(_PRW, Package(0x2) {
0x5,
0x3,
})
}
}
}
}
/*
BOOT: Length=40, Revision=1, Checksum=234,
OEMID=DELL, OEM Table ID=$SBFTBL$, OEM Revision=0x6040000,
Creator ID= LTP, Creator Revision=0x1
*/
/*
ASF!: Length=52, Revision=1, Checksum=96,
OEMID=DELL, OEM Table ID=MONTARA, OEM Revision=0x6040000,
Creator ID=PTL, Creator Revision=0x1
*/
/*
SSDT: Length=330, Revision=1, Checksum=163,
OEMID=INTEL, OEM Table ID=CPU0CST, OEM Revision=0x1,
Creator ID=INTL, Creator Revision=0x20020725
*/
/*
SSDT: Length=722, Revision=1, Checksum=29,
OEMID=DELL, OEM Table ID=MONTARA, OEM Revision=0x6040000,
Creator ID=INTL, Creator Revision=0x20020725
*/
[-- Attachment #3: dmesg.out --]
[-- Type: application/octet-stream, Size: 8028 bytes --]
Linux version 2.4.26acpi (root@GrayMatter) (gcc version 3.3.4 (Debian 1:3.3.4-2)) #9 Mon Jun 28 21:00:25 EDT 2004
BIOS-provided physical RAM map:
BIOS-e820: 0000000000000000 - 000000000009f800 (usable)
BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000d8000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 000000000767e000 (usable)
BIOS-e820: 000000000767e000 - 00000000076e0000 (ACPI NVS)
BIOS-e820: 00000000076e0000 - 00000000076eb000 (ACPI data)
BIOS-e820: 00000000076eb000 - 0000000007700000 (ACPI NVS)
BIOS-e820: 0000000007700000 - 0000000008000000 (reserved)
BIOS-e820: 00000000fec10000 - 00000000fec20000 (reserved)
BIOS-e820: 00000000ff800000 - 00000000ffc00000 (reserved)
BIOS-e820: 00000000fffffc00 - 0000000100000000 (reserved)
118MB LOWMEM available.
On node 0 totalpages: 30334
zone(0): 4096 pages.
zone(1): 26238 pages.
zone(2): 0 pages.
Dell Latitude with broken BIOS detected. Refusing to enable the local APIC.
ACPI: RSDP (v000 DELL ) @ 0x000f60f0
ACPI: RSDT (v001 DELL Montara 0x06040000 LTP 0x00000000) @ 0x076e4e1a
ACPI: FADT (v001 DELL MONTARA 0x06040000 PTL 0x00000050) @ 0x076eae9e
ACPI: BOOT (v001 DELL $SBFTBL$ 0x06040000 LTP 0x00000001) @ 0x076eafa4
ACPI: ASF! (v001 DELL MONTARA 0x06040000 PTL 0x00000001) @ 0x076eafcc
ACPI: SSDT (v001 INTEL CPU0CST 0x00000001 INTL 0x20020725) @ 0x076e52b0
ACPI: SSDT (v001 DELL MONTARA 0x06040000 INTL 0x20020725) @ 0x076e4e52
ACPI: DSDT (v001 INTEL MONTARAG 0x06040000 MSFT 0x0100000e) @ 0x00000000
Kernel command line:
Initializing CPU#0
Detected 1196.134 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 2385.51 BogoMIPS
Memory: 117508k/121336k available (1256k kernel code, 3440k reserved, 318k data, 292k init, 0k highmem)
Dentry cache hash table entries: 16384 (order: 5, 131072 bytes)
Inode cache hash table entries: 8192 (order: 4, 65536 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer cache hash table entries: 4096 (order: 2, 16384 bytes)
Page-cache hash table entries: 32768 (order: 5, 131072 bytes)
CPU: L1 I cache: 32K, L1 D cache: 32K
CPU: L2 cache: 1024K
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
CPU: After generic, caps: a7e9f9bf 00000000 00000000 00000000
CPU: Common caps: a7e9f9bf 00000000 00000000 00000000
CPU: Intel(R) Pentium(R) M processor 1200MHz stepping 05
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
mtrr: v1.40 (20010327) Richard Gooch (rgooch@atnf.csiro.au)
mtrr: detected mtrr type: Intel
ACPI: Subsystem revision 20040326
PCI: PCI BIOS revision 2.10 entry at 0xfd9b0, last bus=2
PCI: Using configuration type 1
ACPI: IRQ9 SCI: Edge set to Level Trigger.
ACPI: Interpreter enabled
ACPI: Using PIC for interrupt routing
ACPI: System [ACPI] (supports S0 S3 S4 S5)
ACPI: PCI Root Bridge [PCI0] (00:00)
PCI: Probing PCI hardware (bus 00)
PCI: Ignoring BAR0-3 of IDE controller 00:1f.1
Transparent bridge - Intel Corp. 82801BAM/CAM PCI Bridge
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.PCIB._PRT]
ACPI: PCI Interrupt Link [LNKA] (IRQs *10)
ACPI: PCI Interrupt Link [LNKB] (IRQs *10)
ACPI: PCI Interrupt Link [LNKC] (IRQs *11)
ACPI: PCI Interrupt Link [LNKD] (IRQs *11)
ACPI: PCI Interrupt Link [LNKE] (IRQs *5)
ACPI: PCI Interrupt Link [LNKF] (IRQs 5) *0, disabled.
ACPI: PCI Interrupt Link [LNKG] (IRQs 10) *0, disabled.
ACPI: PCI Interrupt Link [LNKH] (IRQs *10)
ACPI: Embedded Controller [H_EC] (gpe 28)
ACPI-0347: *** Error: Handler for [EmbeddedControl] returned AE_BAD_PARAMETER
ACPI-1133: *** Error: Method execution failed [\_SB_.PCI0.LPCB.H_EC._REG] (Node c7639f00), AE_BAD_PARAMETER
ACPI: Power Resource [PFAN] (on)
PCI: Probing PCI hardware
ACPI: PCI Interrupt Link [LNKA] enabled at IRQ 10
ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 11
ACPI: PCI Interrupt Link [LNKC] enabled at IRQ 11
ACPI: PCI Interrupt Link [LNKH] enabled at IRQ 10
ACPI: PCI Interrupt Link [LNKB] enabled at IRQ 10
ACPI: PCI Interrupt Link [LNKE] enabled at IRQ 5
PCI: Using ACPI for IRQ routing
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Starting kswapd
Journalled Block Device driver loaded
intelfb: Framebuffer driver for Intel(R) 830M/845G/852GM/855GM/865G chipsets
intelfb: Version 0.7.7, written by David Dawes <dawes@tungstengraphics.com>
intelfb: 00:02.0: Intel(R) 855GM, aperture size 128MB, stolen memory 8060kB
intelfb: Acceleration is not supported for the Intel(R) 855GM chipset.
intelfb: HW cursor is not supported for mobile platforms.
intelfb: Non-CRT device is enabled (LVDS port). Disabling mode switching.
intelfb: Video mode must be programmed at boot time.
pty: 256 Unix98 ptys configured
i8k: unable to get SMM BIOS version
Dell laptop SMM driver v1.13 14/05/2002 Massimo Dal Zotto (dz@debian.org)
Real Time Clock Driver v1.10f
Linux agpgart interface v0.99 (c) Jeff Hartmann
agpgart: Maximum main memory to use for agp memory: 85M
agpgart: Detected an Intel(R) 855GM Chipset.
agpgart: Detected 8060K stolen memory.
agpgart: AGP aperture is 128M @ 0xe8000000
[drm] AGP 0.99 Aperture @ 0xe8000000 128MB
[drm] Initialized i830 1.3.2 20021108 on minor 0
Uniform Multi-Platform E-IDE driver Revision: 7.00beta4-2.4
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
ICH4: IDE controller at PCI slot 00:1f.1
PCI: Enabling device 00:1f.1 (0005 -> 0007)
ICH4: chipset revision 1
ICH4: not 100% native mode: will probe irqs later
ide0: BM-DMA at 0x1810-0x1817, BIOS settings: hda:DMA, hdb:pio
hda: IC25N060ATMR04-0, ATA DISK drive
blk: queue c03022a0, I/O limit 4095Mb (mask 0xffffffff)
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hda: attached ide-disk driver.
hda: host protected area => 1
hda: 117210240 sectors (60012 MB) w/7884KiB Cache, CHS=7296/255/63, UDMA(100)
Partition check:
hda: hda1 hda2 hda3 hda4 < hda5 hda6 hda7 >
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP, IGMP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 8192 bind 16384)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
kjournald starting. Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.
Freeing unused kernel memory: 292k freed
Adding Swap: 995988k swap-space (priority -1)
EXT3 FS 2.4-0.9.19, 19 August 2002 on ide0(3,6), internal journal
kjournald starting. Commit interval 5 seconds
EXT3 FS 2.4-0.9.19, 19 August 2002 on ide0(3,5), internal journal
EXT3-fs: mounted filesystem with ordered data mode.
Serial driver version 5.05c (2001-07-08) with MANY_PORTS SHARE_IRQ SERIAL_PCI enabled
ttyS00 at 0x03f8 (irq = 4) is a 16550A
ttyS01 at 0x02f8 (irq = 3) is a 16550A
ndiswrapper version 0.7 loaded
ndiswrapper adding bcmwl5.sys
wlan0: ndiswrapper ethernet device 00:90:4b:7b:16:16 using driver bcmwl5.sys
mtrr: base(0xe8020000) is not aligned on a size(0x300000) boundary
ACPI-0347: *** Error: Handler for [EmbeddedControl] returned AE_BAD_PARAMETER
ACPI-1133: *** Error: Method execution failed [\_SB_.ADP1._PSR] (Node c1153e40), AE_BAD_PARAMETER
ACPI-0347: *** Error: Handler for [EmbeddedControl] returned AE_BAD_PARAMETER
ACPI-1133: *** Error: Method execution failed [\_SB_.BAT1._STA] (Node c1151240), AE_AML_NO_RETURN_VALUE
ACPI-0347: *** Error: Handler for [EmbeddedControl] returned AE_BAD_PARAMETER
ACPI-1133: *** Error: Method execution failed [\_SB_.BAT2._STA] (Node c1151480), AE_AML_NO_RETURN_VALUE
ACPI: Processor [CPU0] (supports C1 C2 C3, 6 performance states, 8 throttling states)
ACPI-0347: *** Error: Handler for [EmbeddedControl] returned AE_BAD_PARAMETER
ACPI-1133: *** Error: Method execution failed [\_TZ_.THRM._TMP] (Node c11532c0), AE_AML_NO_RETURN_VALUE
^ permalink raw reply [flat|nested] 6+ messages in thread