From owner-acpi-jp@jp.FreeBSD.org Thu Dec  5 03:31:22 2002
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) id gB4IVMx89331;
	Thu, 5 Dec 2002 03:31:22 +0900 (JST)
	(envelope-from owner-acpi-jp@jp.FreeBSD.org)
Received: from tasogare.imasy.or.jp (root@tasogare.imasy.or.jp [202.227.24.5])
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) with ESMTP/inet id gB4IVK289236
	for <acpi-jp@jp.FreeBSD.org>; Thu, 5 Dec 2002 03:31:21 +0900 (JST)
	(envelope-from iwasaki@jp.FreeBSD.org)
Received: from localhost (iwa@tasogare.imasy.or.jp [202.227.24.5])
	by tasogare.imasy.or.jp (8.11.6+3.4W/8.11.6/tasogare) with ESMTP/inet id gB4IUpi67506;
	Thu, 5 Dec 2002 03:30:52 +0900 (JST)
	(envelope-from iwasaki@jp.FreeBSD.org)
Message-Id: <20021205.033039.133919281.iwasaki@jp.FreeBSD.org>
To: acpi-jp@jp.FreeBSD.org
Cc: ertank@ozlerplastik.com
From: Mitsuru IWASAKI <iwasaki@jp.FreeBSD.org>
X-Mailer: Mew version 2.2 on Emacs 20.7 / Mule 4.0 (HANANOEN)
Mime-Version: 1.0
Content-Type: Multipart/Mixed;
 boundary="--Next_Part(Thu_Dec__5_03:30:39_2002_438)--"
Content-Transfer-Encoding: 7bit
Reply-To: acpi-jp@jp.FreeBSD.org
Precedence: list
Date: Thu, 05 Dec 2002 03:30:39 +0900
X-Sequence: acpi-jp 2021
Subject: [acpi-jp 2021] S5 problem on Compaq EVO 300
Errors-To: owner-acpi-jp@jp.FreeBSD.org
Sender: owner-acpi-jp@jp.FreeBSD.org
X-Originator: iwasaki@jp.FreeBSD.org
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+021111

----Next_Part(Thu_Dec__5_03:30:39_2002_438)--
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Hi, I've got a report recently which power-off doesn't work right
on Compaq EVO 300.  Looking into the DSDT, there is no sleep related
objects or methods (_Sx_, _PTS, _WAK...).  Instead, it seems that
this BIOS has many SSDT.

Here is the original report.  Does anyone have ideas to make this
work properly ?
----
When I use halt -p command the system does all required things
correctly. When it comes to turn-off the power it displays:
Power system off using ACPI...

After a while it prints:
ACPI power-off failed - timeout.

And, system reboots itself.
----

acpidump output attached.  Thanks.

----Next_Part(Thu_Dec__5_03:30:39_2002_438)--
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename="CompaqEVO300.asl"

/*
RSD PTR: Checksum=120, OEMID=COMPAQ, RsdtAddress=0x000e5a40
 */
/*
RSDT: Length=84, Revision=1, Checksum=62,
	OEMID=COMPAQ, OEM Table ID=CPQ003E, OEM Revision=0x20020729,
	Creator ID=, Creator Revision=0x0
 */
/*
	Entries={ 0x000e5af0, 0x000e6f1c, 0x000e70b7, 0x000e5b64, 0x000e8e53, 0x000e7d64, 0x000e846f, 0x000e8657, 0x000e8990, 0x000e87f1, 0x000e8bef, 0x000e8fb2 }
 */
/*
	DSDT=0xe5bbe
	INT_MODEL=APIC
	SCI_INT=9
	SMI_CMD=0xb2, ACPI_ENABLE=0x8a, ACPI_DISABLE=0x8b, S4BIOS_REQ=0x0
	PM1a_EVT_BLK=0xf800-0xf803
	PM1a_CNT_BLK=0xf804-0xf805
	PM1b_CNT_BLK=0x460-0x461
	PM2_TMR_BLK=0xf808-0xf80b
	PM2_GPE0_BLK=0xf828-0xf82b
	P_LVL2_LAT=101ms, P_LVL3_LAT=1001ms
	FLUSH_SIZE=16384, FLUSH_STRIDE=32
	DUTY_OFFSET=1, DUTY_WIDTH=3
	DAY_ALRM=13, MON_ALRM=0, CENTURY=50
	Flags={WBINVD,PROC_C1,SLP_BUTTON,RTC_S4}
 */
/*
DSDT: Length=4958, Revision=1, Checksum=86,
	OEMID=COMPAQ, OEM Table ID=DSDT, OEM Revision=0x1,
	Creator ID=MSFT, Creator Revision=0x100000e
 */
DefinitionBlock (
    "acpi_dsdt.aml",	//Output filename
    "DSDT",		//Signature
    0x1,		//DSDT Revision
    "COMPAQ",		//OEMID
    "DSDT",		//TABLE ID
    0x1		//OEM Revision
)

{
OperationRegion(VECT, SystemMemory, 0x000f8036, 0x4)
Field(VECT, DWordAcc, NoLock, Preserve) {
    ABIO,	32
}
OperationRegion(BIOS, SystemMemory, ABIO, 0x0fc0)
Field(BIOS, AnyAcc, NoLock, Preserve) {
    SSMC,	1,
    ,	1,
    ,	1,
    S4BW,	1,
    PKWN,	1,
    PMWN,	1,
    PKWU,	1,
    PMWU,	1,
    OPKW,	1,
    OPMW,	1,
    S3OC,	1,
    WN98,	1,
    WNME,	1,
    WN2K,	1,
    WNXP,	1,
    OSFS,	1,
    MLEN,	32,
    ,	1,
    ,	1,
    ,	1,
    LPTN,	1,
    CM2N,	1,
    CM1N,	1,
    FPMW,	1,
    PS2S,	1,
    Offset(0x8),
    IHPM,	1,
    IHPS,	1,
    IHSM,	1,
    IHSS,	1,
    ATPM,	1,
    ATPS,	1,
    ATSM,	1,
    ATSS,	1,
    IHPC,	2,
    IHSC,	2,
    ATPC,	2,
    ATSC,	2,
    PITB,	160,
    SITB,	160,
    PMCC,	8,
    PMCB,	448,
    PSCC,	8,
    PSCB,	448,
    SMCC,	8,
    SMCB,	448,
    SSCC,	8,
    SSCB,	448,
    ODDM,	32,
    DCHM,	288,
    AP0C,	4,
    APPC,	2,
    ASPC,	2
}
Field(BIOS, AnyAcc, NoLock, Preserve) {
    Offset(0x9),
    IHMS,	4
}
Name(\PICM, Zero)
Method(GDBF, 2) {
    CreateDWordField(Arg0, Arg1, BPTR)
    Return(BPTR)
}
Method(SDBF, 3) {
    CreateDWordField(Arg0, Arg1, BPTR)
    Store(Arg2, BPTR)
}
Method(\_PIC, 1) {
    Store(Arg0, \PICM)
}
Scope(\_SB_) {
    Device(LNKA) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x1)
        Name(CRES, Buffer(0x6) {0x23, 0x0, 0x8, 0x18, 0x79, 0x0 })
        Method(_STA) {
            And(\_SB_.PCI0.LPC_.PIRA, 0x80, Local0)
            If(LEqual(Local0, 0x80)) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRA, 0x80, \_SB_.PCI0.LPC_.PIRA)
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xcc, 0x18, 0x79, 0x0 })
        Method(_CRS) {
            CreateWordField(CRES, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRA, 0xf, Local0)
            Store(One, Local1)
            ShiftLeft(Local1, Local0, IRQW)
            Return(CRES)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRA, 0x70, Local0)
            Store(Zero, Local1)
            FindSetLeftBit(IRQW, Local1)
            Or(Local0, Decrement(Local1), \_SB_.PCI0.LPC_.PIRA)
        }
    }
    Device(LNKB) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x2)
        Name(CRES, Buffer(0x6) {0x23, 0x0, 0x8, 0x18, 0x79, 0x0 })
        Method(_STA) {
            And(\_SB_.PCI0.LPC_.PIRB, 0x80, Local0)
            If(LEqual(Local0, 0x80)) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRB, 0x80, \_SB_.PCI0.LPC_.PIRB)
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xcc, 0x18, 0x79, 0x0 })
        Method(_CRS) {
            CreateWordField(CRES, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRB, 0xf, Local0)
            Store(One, Local1)
            ShiftLeft(Local1, Local0, IRQW)
            Return(CRES)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRB, 0x70, Local0)
            Store(Zero, Local1)
            FindSetLeftBit(IRQW, Local1)
            Or(Local0, Decrement(Local1), \_SB_.PCI0.LPC_.PIRB)
        }
    }
    Device(LNKC) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x3)
        Name(CRES, Buffer(0x6) {0x23, 0x0, 0x8, 0x18, 0x79, 0x0 })
        Method(_STA) {
            And(\_SB_.PCI0.LPC_.PIRC, 0x80, Local0)
            If(LEqual(Local0, 0x80)) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRC, 0x80, \_SB_.PCI0.LPC_.PIRC)
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xcc, 0x18, 0x79, 0x0 })
        Method(_CRS) {
            CreateWordField(CRES, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRC, 0xf, Local0)
            Store(One, Local1)
            ShiftLeft(Local1, Local0, IRQW)
            Return(CRES)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRC, 0x70, Local0)
            Store(Zero, Local1)
            FindSetLeftBit(IRQW, Local1)
            Or(Local0, Decrement(Local1), \_SB_.PCI0.LPC_.PIRC)
        }
    }
    Device(LNKD) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x4)
        Name(CRES, Buffer(0x6) {0x23, 0x0, 0x8, 0x18, 0x79, 0x0 })
        Method(_STA) {
            And(\_SB_.PCI0.LPC_.PIRD, 0x80, Local0)
            If(LEqual(Local0, 0x80)) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRD, 0x80, \_SB_.PCI0.LPC_.PIRD)
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xcc, 0x18, 0x79, 0x0 })
        Method(_CRS) {
            CreateWordField(CRES, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRD, 0xf, Local0)
            Store(One, Local1)
            ShiftLeft(Local1, Local0, IRQW)
            Return(CRES)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRD, 0x70, Local0)
            Store(Zero, Local1)
            FindSetLeftBit(IRQW, Local1)
            Or(Local0, Decrement(Local1), \_SB_.PCI0.LPC_.PIRD)
        }
    }
    Device(LNKE) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x5)
        Name(CRES, Buffer(0x6) {0x23, 0x0, 0x8, 0x18, 0x79, 0x0 })
        Method(_STA) {
            And(\_SB_.PCI0.LPC_.PIRE, 0x80, Local0)
            If(LEqual(Local0, 0x80)) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRE, 0x80, \_SB_.PCI0.LPC_.PIRE)
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xcc, 0x18, 0x79, 0x0 })
        Method(_CRS) {
            CreateWordField(CRES, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRE, 0xf, Local0)
            Store(One, Local1)
            ShiftLeft(Local1, Local0, IRQW)
            Return(CRES)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRE, 0x70, Local0)
            Store(Zero, Local1)
            FindSetLeftBit(IRQW, Local1)
            Or(Local0, Decrement(Local1), \_SB_.PCI0.LPC_.PIRE)
        }
    }
    Device(LNKF) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x6)
        Name(CRES, Buffer(0x6) {0x23, 0x0, 0x8, 0x18, 0x79, 0x0 })
        Method(_STA) {
            And(\_SB_.PCI0.LPC_.PIRF, 0x80, Local0)
            If(LEqual(Local0, 0x80)) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRF, 0x80, \_SB_.PCI0.LPC_.PIRF)
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xcc, 0x18, 0x79, 0x0 })
        Method(_CRS) {
            CreateWordField(CRES, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRF, 0xf, Local0)
            Store(One, Local1)
            ShiftLeft(Local1, Local0, IRQW)
            Return(CRES)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRF, 0x70, Local0)
            Store(Zero, Local1)
            FindSetLeftBit(IRQW, Local1)
            Or(Local0, Decrement(Local1), \_SB_.PCI0.LPC_.PIRF)
        }
    }
    Device(LNKG) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x7)
        Name(CRES, Buffer(0x6) {0x23, 0x0, 0x8, 0x18, 0x79, 0x0 })
        Method(_STA) {
            And(\_SB_.PCI0.LPC_.PIRG, 0x80, Local0)
            If(LEqual(Local0, 0x80)) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRG, 0x80, \_SB_.PCI0.LPC_.PIRG)
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xcc, 0x18, 0x79, 0x0 })
        Method(_CRS) {
            CreateWordField(CRES, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRG, 0xf, Local0)
            Store(One, Local1)
            ShiftLeft(Local1, Local0, IRQW)
            Return(CRES)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRG, 0x70, Local0)
            Store(Zero, Local1)
            FindSetLeftBit(IRQW, Local1)
            Or(Local0, Decrement(Local1), \_SB_.PCI0.LPC_.PIRG)
        }
    }
    Device(LNKH) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x8)
        Name(CRES, Buffer(0x6) {0x23, 0x0, 0x8, 0x18, 0x79, 0x0 })
        Method(_STA) {
            And(\_SB_.PCI0.LPC_.PIRH, 0x80, Local0)
            If(LEqual(Local0, 0x80)) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRH, 0x80, \_SB_.PCI0.LPC_.PIRH)
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xcc, 0x18, 0x79, 0x0 })
        Method(_CRS) {
            CreateWordField(CRES, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRH, 0xf, Local0)
            Store(One, Local1)
            ShiftLeft(Local1, Local0, IRQW)
            Return(CRES)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRQW)
            And(\_SB_.PCI0.LPC_.PIRH, 0x70, Local0)
            Store(Zero, Local1)
            FindSetLeftBit(IRQW, Local1)
            Or(Local0, Decrement(Local1), \_SB_.PCI0.LPC_.PIRH)
        }
    }
}
Scope(\_SB_) {
    Device(PCI0) {
        Name(_HID, 0x030ad041)
        Name(_ADR, 0x0)
        Name(_PRW, Package(0x2) {
            0xb,
            0x4,
        })
        Method(_S1D) {
            Return(One)
        }
        Method(_S4D) {
            Return(0x3)
        }
        Method(_S5D) {
            Return(0x3)
        }
        Name(CRES, Buffer(0xd6) {0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0xff, 0xff, 0xbf, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xfa, 0x88, 0xd, 0x0, 0x2, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x47, 0x1, 0xf8, 0xc, 0xf8, 0xc, 0x1, 0x8, 0x88, 0xd, 0x0, 0x1, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0xf7, 0xc, 0x0, 0x0, 0xf8, 0xc, 0x88, 0xd, 0x0, 0x1, 0xc, 0x3, 0x0, 0x0, 0x0, 0xd, 0xff, 0xff, 0x0, 0x0, 0x0, 0xf3, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0xff, 0xff, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x79, 0x0, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,!
  0x79, 0x0, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 })
        Method(_CRS) {
            CreateDWordField(CRES, 0xa, RAMT)
            CreateDWordField(CRES, 0x16, PCIT)
            Add(MLEN, 0x00100000, RAMT)
            Subtract(0xfec00000, RAMT, PCIT)
            Store(0x6c, Local0)
            Store(0x0, Local1)
            Store(\GDBF(DCHM, Local1), Local2)
            While(LAnd(Local2, LLess(Local1, 0x20))) {
                \SDBF(CRES, Local0, 0x1787)
                Add(Local0, 0xa, Local0)
                \SDBF(CRES, Local0, Local2)
                Add(Local0, 0x4, Local0)
                Add(Local1, 0x4, Local1)
                Store(\GDBF(DCHM, Local1), Local3)
                Decrement(Local3)
                \SDBF(CRES, Local0, Local3)
                Add(Local0, 0x8, Local0)
                Increment(Local3)
                Subtract(Local3, Local2, Local2)
                \SDBF(CRES, Local0, Local2)
                Add(Local0, 0x4, Local0)
                Add(Local1, 0x4, Local1)
                Store(\GDBF(DCHM, Local1), Local2)
            }
            Return(CRES)
        }
        Method(_PRT) {
            If(LEqual(\PICM, Zero)) {
                Return(Package(0x6) {
                    Package(0x4) {
                        0x001fffff,
                        0x0,
                        \_SB_.LNKA,
                        0x0,
                    },
                    Package(0x4) {
                        0x001fffff,
                        0x1,
                        \_SB_.LNKB,
                        0x0,
                    },
                    Package(0x4) {
                        0x001fffff,
                        0x2,
                        \_SB_.LNKH,
                        0x0,
                    },
                    Package(0x4) {
                        0x001fffff,
                        0x3,
                        \_SB_.LNKD,
                        0x0,
                    },
                    Package(0x4) {
                        0x0001ffff,
                        0x0,
                        \_SB_.LNKC,
                        0x0,
                    },
                    Package(0x4) {
                        0x0001ffff,
                        0x1,
                        \_SB_.LNKD,
                        0x0,
                    },
                })
            }
            Else {
                Return(Package(0x6) {
                    Package(0x4) {
                        0x001fffff,
                        0x0,
                        0x0,
                        0x10,
                    },
                    Package(0x4) {
                        0x001fffff,
                        0x1,
                        0x0,
                        0x11,
                    },
                    Package(0x4) {
                        0x001fffff,
                        0x2,
                        0x0,
                        0x17,
                    },
                    Package(0x4) {
                        0x001fffff,
                        0x3,
                        0x0,
                        0x13,
                    },
                    Package(0x4) {
                        0x0001ffff,
                        0x0,
                        0x0,
                        0x12,
                    },
                    Package(0x4) {
                        0x0001ffff,
                        0x1,
                        0x0,
                        0x13,
                    },
                })
            }
        }
    }
}
Scope(\_SB_.PCI0) {
    Device(HUB_) {
        Name(_ADR, 0x001e0000)
        Name(_PRW, Package(0x2) {
            0xb,
            0x4,
        })
        Method(_S1D) {
            Return(One)
        }
        Method(_S4D) {
            Return(0x3)
        }
        Method(_S5D) {
            Return(0x3)
        }
        Method(_PRT) {
            If(LEqual(\PICM, Zero)) {
                Return(Package(0x16) {
                    Package(0x4) {
                        0x0004ffff,
                        0x0,
                        \_SB_.LNKA,
                        0x0,
                    },
                    Package(0x4) {
                        0x0004ffff,
                        0x1,
                        \_SB_.LNKC,
                        0x0,
                    },
                    Package(0x4) {
                        0x0004ffff,
                        0x2,
                        \_SB_.LNKF,
                        0x0,
                    },
                    Package(0x4) {
                        0x0004ffff,
                        0x3,
                        \_SB_.LNKG,
                        0x0,
                    },
                    Package(0x4) {
                        0x0009ffff,
                        0x0,
                        \_SB_.LNKC,
                        0x0,
                    },
                    Package(0x4) {
                        0x0009ffff,
                        0x1,
                        \_SB_.LNKF,
                        0x0,
                    },
                    Package(0x4) {
                        0x0009ffff,
                        0x2,
                        \_SB_.LNKG,
                        0x0,
                    },
                    Package(0x4) {
                        0x0009ffff,
                        0x3,
                        \_SB_.LNKA,
                        0x0,
                    },
                    Package(0x4) {
                        0x000affff,
                        0x0,
                        \_SB_.LNKF,
                        0x0,
                    },
                    Package(0x4) {
                        0x000affff,
                        0x1,
                        \_SB_.LNKG,
                        0x0,
                    },
                    Package(0x4) {
                        0x000affff,
                        0x2,
                        \_SB_.LNKA,
                        0x0,
                    },
                    Package(0x4) {
                        0x000affff,
                        0x3,
                        \_SB_.LNKC,
                        0x0,
                    },
                    Package(0x4) {
                        0x000bffff,
                        0x0,
                        \_SB_.LNKG,
                        0x0,
                    },
                    Package(0x4) {
                        0x000bffff,
                        0x1,
                        \_SB_.LNKA,
                        0x0,
                    },
                    Package(0x4) {
                        0x000bffff,
                        0x2,
                        \_SB_.LNKC,
                        0x0,
                    },
                    Package(0x4) {
                        0x000bffff,
                        0x3,
                        \_SB_.LNKF,
                        0x0,
                    },
                    Package(0x4) {
                        0x000dffff,
                        0x0,
                        \_SB_.LNKC,
                        0x0,
                    },
                    Package(0x4) {
                        0x000dffff,
                        0x1,
                        \_SB_.LNKF,
                        0x0,
                    },
                    Package(0x4) {
                        0x000dffff,
                        0x2,
                        \_SB_.LNKG,
                        0x0,
                    },
                    Package(0x4) {
                        0x000dffff,
                        0x3,
                        \_SB_.LNKA,
                        0x0,
                    },
                    Package(0x4) {
                        0x0008ffff,
                        0x0,
                        \_SB_.LNKE,
                        0x0,
                    },
                    Package(0x4) {
                        0x0006ffff,
                        0x0,
                        \_SB_.LNKE,
                        0x0,
                    },
                })
            }
            Else {
                Return(Package(0x16) {
                    Package(0x4) {
                        0x0004ffff,
                        0x0,
                        0x0,
                        0x10,
                    },
                    Package(0x4) {
                        0x0004ffff,
                        0x1,
                        0x0,
                        0x12,
                    },
                    Package(0x4) {
                        0x0004ffff,
                        0x2,
                        0x0,
                        0x15,
                    },
                    Package(0x4) {
                        0x0004ffff,
                        0x3,
                        0x0,
                        0x16,
                    },
                    Package(0x4) {
                        0x0009ffff,
                        0x0,
                        0x0,
                        0x12,
                    },
                    Package(0x4) {
                        0x0009ffff,
                        0x1,
                        0x0,
                        0x15,
                    },
                    Package(0x4) {
                        0x0009ffff,
                        0x2,
                        0x0,
                        0x16,
                    },
                    Package(0x4) {
                        0x0009ffff,
                        0x3,
                        0x0,
                        0x10,
                    },
                    Package(0x4) {
                        0x000affff,
                        0x0,
                        0x0,
                        0x15,
                    },
                    Package(0x4) {
                        0x000affff,
                        0x1,
                        0x0,
                        0x16,
                    },
                    Package(0x4) {
                        0x000affff,
                        0x2,
                        0x0,
                        0x10,
                    },
                    Package(0x4) {
                        0x000affff,
                        0x3,
                        0x0,
                        0x12,
                    },
                    Package(0x4) {
                        0x000bffff,
                        0x0,
                        0x0,
                        0x16,
                    },
                    Package(0x4) {
                        0x000bffff,
                        0x1,
                        0x0,
                        0x10,
                    },
                    Package(0x4) {
                        0x000bffff,
                        0x2,
                        0x0,
                        0x12,
                    },
                    Package(0x4) {
                        0x000bffff,
                        0x3,
                        0x0,
                        0x15,
                    },
                    Package(0x4) {
                        0x000dffff,
                        0x0,
                        0x0,
                        0x12,
                    },
                    Package(0x4) {
                        0x000dffff,
                        0x1,
                        0x0,
                        0x15,
                    },
                    Package(0x4) {
                        0x000dffff,
                        0x2,
                        0x0,
                        0x16,
                    },
                    Package(0x4) {
                        0x000dffff,
                        0x3,
                        0x0,
                        0x10,
                    },
                    Package(0x4) {
                        0x0008ffff,
                        0x0,
                        0x0,
                        0x14,
                    },
                    Package(0x4) {
                        0x0006ffff,
                        0x0,
                        0x0,
                        0x14,
                    },
                })
            }
        }
    }
}
Scope(\_SB_.PCI0) {
    Device(LPC_) {
        Name(_ADR, 0x001f0000)
        OperationRegion(PIRQ, PCI_Config, 0x60, 0xc)
        Field(PIRQ, ByteAcc, NoLock, Preserve) {
            PIRA,	8,
            PIRB,	8,
            PIRC,	8,
            PIRD,	8,
            Offset(0x8),
            PIRE,	8,
            PIRF,	8,
            PIRG,	8,
            PIRH,	8
        }
    }
}
Scope(\_SB_.PCI0.LPC_) {
    Device(NCP_) {
        Name(_HID, 0x040cd041)
        Name(_CRS, Buffer(0xd) {0x47, 0x1, 0xf0, 0x0, 0xf0, 0x0, 0x0, 0x10, 0x22, 0x0, 0x20, 0x79, 0x0 })
    }
}
Scope(\_SB_.PCI0.LPC_) {
    Device(PIC_) {
        Name(_HID, 0xd041)
        Name(_CRS, Buffer(0x1d) {0x47, 0x1, 0x20, 0x0, 0x20, 0x0, 0x0, 0xe, 0x47, 0x1, 0x30, 0x0, 0x30, 0x0, 0x0, 0x10, 0x47, 0x1, 0xa0, 0x0, 0xa0, 0x0, 0x0, 0x20, 0x22, 0x4, 0x0, 0x79, 0x0 })
    }
}
Scope(\_SB_.PCI0.LPC_) {
    Device(TIME) {
        Name(_HID, 0x0001d041)
        Name(_CRS, Buffer(0xd) {0x47, 0x1, 0x40, 0x0, 0x40, 0x0, 0x0, 0x4, 0x22, 0x1, 0x0, 0x79, 0x0 })
    }
}
Scope(\_SB_.PCI0.LPC_) {
    Device(IDMA) {
        Name(_HID, 0x0002d041)
        Name(_CRS, Buffer(0x1d) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x10, 0x47, 0x1, 0x80, 0x0, 0x80, 0x0, 0x0, 0x10, 0x47, 0x1, 0xc0, 0x0, 0xc0, 0x0, 0x0, 0x20, 0x2a, 0x10, 0x2, 0x79, 0x0 })
    }
}
Scope(\_SB_.PCI0.LPC_) {
    Device(RTC_) {
        Name(_HID, 0x000bd041)
        Name(_CRS, Buffer(0xd) {0x47, 0x1, 0x70, 0x0, 0x70, 0x0, 0x0, 0x2, 0x22, 0x0, 0x1, 0x79, 0x0 })
    }
}
Scope(\_SB_.PCI0.LPC_) {
    Device(SPKR) {
        Name(_HID, 0x0008d041)
        Name(_CRS, Buffer(0xa) {0x47, 0x1, 0x61, 0x0, 0x61, 0x0, 0x0, 0x1, 0x79, 0x0 })
    }
}
Scope(\_SB_.PCI0.LPC_) {
    Device(PS2M) {
        Name(_HID, 0x130fd041)
        Name(_CID, 0x0e0fd041)
        Name(_CRS, Buffer(0x5) {0x22, 0x0, 0x10, 0x79, 0x0 })
    }
}
Scope(\_SB_.PCI0.LPC_) {
    Device(KBD_) {
        Name(_HID, 0x0303d041)
        Name(_CRS, Buffer(0x15) {0x47, 0x1, 0x60, 0x0, 0x60, 0x0, 0x0, 0x1, 0x47, 0x1, 0x64, 0x0, 0x64, 0x0, 0x0, 0x1, 0x22, 0x2, 0x0, 0x79, 0x0 })
    }
}
Scope(\_SB_.PCI0) {
    Device(USB1) {
        Name(_ADR, 0x001f0002)
        Method(_S1D) {
            Return(One)
        }
        Method(_S4D) {
            Return(0x3)
        }
        Method(_S5D) {
            Return(0x3)
        }
    }
    Device(USB2) {
        Name(_ADR, 0x001f0004)
        Method(_S1D) {
            Return(One)
        }
        Method(_S4D) {
            Return(0x3)
        }
        Method(_S5D) {
            Return(0x3)
        }
    }
    Device(IDE_) {
        Name(_ADR, 0x001f0001)
    }
}

}
/*
SSDT: Length=411, Revision=1, Checksum=240,
	OEMID=COMPAQ, OEM Table ID=CORE_UTL, OEM Revision=0x1,
	Creator ID=MSFT, Creator Revision=0x100000e
 */
/*
SSDT: Length=3245, Revision=1, Checksum=218,
	OEMID=COMPAQ, OEM Table ID=VILLTBL1, OEM Revision=0x1,
	Creator ID=MSFT, Creator Revision=0x100000e
 */
/*
APIC: Length=90, Revision=1, Checksum=158,
	OEMID=COMPAQ, OEM Table ID=BROOKDA, OEM Revision=0x1,
	Creator ID=, Creator Revision=0x0
 */
/*
SSDT: Length=118, Revision=1, Checksum=93,
	OEMID=COMPAQ, OEM Table ID=APIC, OEM Revision=0x1,
	Creator ID=MSFT, Creator Revision=0x100000e
 */
/*
SSDT: Length=1709, Revision=1, Checksum=244,
	OEMID=COMPAQ, OEM Table ID=PNP_PRSS, OEM Revision=0x1,
	Creator ID=MSFT, Creator Revision=0x100000e
 */
/*
SSDT: Length=488, Revision=1, Checksum=132,
	OEMID=COMPAQ, OEM Table ID=S3, OEM Revision=0x1,
	Creator ID=MSFT, Creator Revision=0x100000e
 */
/*
SSDT: Length=410, Revision=1, Checksum=180,
	OEMID=COMPAQ, OEM Table ID=PIDETM, OEM Revision=0x1,
	Creator ID=MSFT, Creator Revision=0x100000e
 */
/*
SSDT: Length=301, Revision=1, Checksum=82,
	OEMID=COMPAQ, OEM Table ID=GTF0, OEM Revision=0x1,
	Creator ID=MSFT, Creator Revision=0x100000e
 */
/*
SSDT: Length=415, Revision=1, Checksum=149,
	OEMID=COMPAQ, OEM Table ID=SIDETM, OEM Revision=0x1,
	Creator ID=MSFT, Creator Revision=0x100000e
 */
/*
SSDT: Length=306, Revision=1, Checksum=210,
	OEMID=COMPAQ, OEM Table ID=GTF2, OEM Revision=0x1,
	Creator ID=MSFT, Creator Revision=0x100000e
 */
/*
SSDT: Length=78, Revision=1, Checksum=80,
	OEMID=COMPAQ, OEM Table ID=FINIS, OEM Revision=0x1,
	Creator ID=MSFT, Creator Revision=0x100000e
 */

----Next_Part(Thu_Dec__5_03:30:39_2002_438)----
