public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
From: Z F <mail4me9999-/E1597aS9LQAvxtiuMwx3w@public.gmane.org>
To: "Li, Shaohua" <shaohua.li-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: RE: Error: Handler for [EmbeddedControl] returned AE_BAD_PARAMETER
Date: Mon, 28 Jun 2004 18:21:58 -0700 (PDT)	[thread overview]
Message-ID: <20040629012158.97672.qmail@web20423.mail.yahoo.com> (raw)
In-Reply-To: <B44D37711ED29844BEA67908EAF36F032D5750-4yWAQGcml65pB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>

[-- 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

  parent reply	other threads:[~2004-06-29  1:21 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-06-28  7:40 Error: Handler for [EmbeddedControl] returned AE_BAD_PARAMETER Li, Shaohua
     [not found] ` <B44D37711ED29844BEA67908EAF36F032D5750-4yWAQGcml65pB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2004-06-29  1:21   ` Z F [this message]
     [not found] <B44D37711ED29844BEA67908EAF36F0332D2A1@pdsmsx401.ccr.corp.intel.com>
     [not found] ` <B44D37711ED29844BEA67908EAF36F0332D2A1-4yWAQGcml65pB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2004-06-30  3:00   ` Z F
  -- strict thread matches above, loose matches on Subject: below --
2004-06-29  7:11 Li, Shaohua
     [not found] ` <B44D37711ED29844BEA67908EAF36F0332CECD-4yWAQGcml65pB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2004-06-29 14:52   ` Z F
2004-06-28  1:48 ACPI-CA does not compile Jerome Werner
     [not found] ` <20040628014815.C590AB6B6-ch062KcR4QwMxUCXveYptA1yzfppHFFyQQ4Iyu8u01E@public.gmane.org>
2004-06-28  5:25   ` Error: Handler for [EmbeddedControl] returned AE_BAD_PARAMETER Z F

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20040629012158.97672.qmail@web20423.mail.yahoo.com \
    --to=mail4me9999-/e1597as9lqavxtiumwx3w@public.gmane.org \
    --cc=acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=shaohua.li-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox