From owner-acpi-jp@jp.FreeBSD.org Tue Nov 26 04:59:21 2002
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) id gAPJxLO06931;
	Tue, 26 Nov 2002 04:59:21 +0900 (JST)
	(envelope-from owner-acpi-jp@jp.FreeBSD.org)
Received: from milan.hitnet.rwth-aachen.de (milan.hitnet.RWTH-Aachen.DE [137.226.181.144])
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) with ESMTP/inet id gAPJwu206891;
	Tue, 26 Nov 2002 04:58:58 +0900 (JST)
	(envelope-from chris@unixpages.org)
Received: from gondor.middleearth (gondor.middleearth [192.168.1.42])
	by milan.hitnet.rwth-aachen.de (Postfix) with ESMTP
	id 19555A91E; Mon, 25 Nov 2002 20:58:54 +0100 (CET)
Received: by gondor.middleearth (Postfix, from userid 1001)
	id 25038154C8; Mon, 25 Nov 2002 20:58:52 +0100 (CET)
From: Christian Brueffer <chris@unixpages.org>
To: Mitsuru IWASAKI <iwasaki@jp.FreeBSD.org>
Cc: current@freebsd.org, acpi-jp@jp.FreeBSD.org
Message-ID: <20021125195852.GC21123@unixpages.org>
References: <20021121.194205.48537091.iwasaki@jp.FreeBSD.org>
Mime-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha1;
	protocol="application/pgp-signature"; boundary="fXStkuK2IQBfcDe+"
Content-Disposition: inline
In-Reply-To: <20021121.194205.48537091.iwasaki@jp.FreeBSD.org>
User-Agent: Mutt/1.4i
X-Operating-System: FreeBSD 5.0-CURRENT
X-PGP-Key: http://www.unixpages.org/cbrueffer.asc
Reply-To: acpi-jp@jp.FreeBSD.org
Precedence: list
Date: Mon, 25 Nov 2002 20:58:52 +0100
X-Sequence: acpi-jp 1976
Subject: [acpi-jp 1976] Re: Call for testers: acpica-unix-20021118.tar.gz
Errors-To: owner-acpi-jp@jp.FreeBSD.org
Sender: owner-acpi-jp@jp.FreeBSD.org
X-Originator: chris@unixpages.org
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+021111


--fXStkuK2IQBfcDe+
Content-Type: multipart/mixed; boundary="/Uq4LBwYP4y1W6pO"
Content-Disposition: inline


--/Uq4LBwYP4y1W6pO
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Nov 21, 2002 at 07:42:05PM +0900, Mitsuru IWASAKI wrote:
> Hi all,
>=20
> I've made patches for the latest ACPI CA snapshot between 20021002 and
> 20021118.
> http://people.freebsd.org/~iwasaki/acpi/acpica-20021002-20021118-test2002=
1121.diff
>=20
> A lot of bugs are fixed, please check the change log at:
> http://developer.intel.com/technology/iapc/acpi/downloads/CHANGES.txt
>=20
> Please test them and feedback to acpi-jp@jp.freebsd.org if you find any
> problems.  I'll import them into src tree before RC1.
>=20
> Thanks
>=20
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-current" in the body of the message
>=20

Hi,

the new snapshot boots fine here.

However, I still get the message

acpi0: AcpiGetSleepTypeData failed - AE_NOT_FOUND

when I try to suspend the machine or anything with closing the lid,
or using the keyboard buttons, or when I try something like
acpiconf -s 1.

The box in question is an IBM Thinkpad R32.

Any ideas?

dmesg.boot and acpidump output are attached.

- Christian

--=20
http://www.unixpages.org			chris@unixpages.org
GPG Pub-Key    : www.unixpages.org/cbrueffer.asc
GPG Fingerprint: A5C8 2099 19FF AACA F41B  B29B 6C76 178C A0ED 982D
GPG Key ID     : 0xA0ED982D

--/Uq4LBwYP4y1W6pO
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="dmesg.boot"
Content-Transfer-Encoding: quoted-printable

Copyright (c) 1992-2002 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD 5.0-CURRENT #1: Mon Nov 25 19:55:21 CET 2002
    root@fangorn.middleearth:/usr/obj/usr/src/sys/FANGORN
Preloaded elf kernel "/boot/kernel/kernel" at 0xc0587000.
Preloaded elf module "/boot/kernel/acpi.ko" at 0xc05870a8.
Timecounter "i8254"  frequency 1193182 Hz
Timecounter "TSC"  frequency 1599826188 Hz
CPU: Pentium 4 (1599.83-MHz 686-class CPU)
  Origin =3D "GenuineIntel"  Id =3D 0xf24  Stepping =3D 4
  Features=3D0x3febf9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA=
,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM>
real memory  =3D 267845632 (255 MB)
avail memory =3D 254230528 (242 MB)
Security policy loaded: TrustedBSD MAC/BSD Extended (trustedbsd_mac_bsdexte=
nded)
Security policy loaded: TrustedBSD MAC/Biba (trustedbsd_mac_biba)
Initializing GEOMetry subsystem
Pentium Pro MTRR support enabled
npx0: <math processor> on motherboard
npx0: INT 16 interface
acpi0: <IBM    TP-1M   > on motherboard
    ACPI-0625: *** Info: GPE Block0 defined as GPE0 to GPE15
    ACPI-0625: *** Info: GPE Block1 defined as GPE16 to GPE31
Using $PIR table, 10 entries at 0xc00fdef0
acpi0: power button is handled as a fixed feature programming model.
Timecounter "ACPI-fast"  frequency 3579545 Hz
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0
acpi_cpu0: <CPU> on acpi0
acpi_tz0: <thermal zone> on acpi0
acpi_tz1: <thermal zone> on acpi0
acpi_lid0: <Control Method Lid Switch> on acpi0
acpi_button0: <Sleep Button> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
---- initial configuration ------------------------
\\_SB_.LNKA irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 0.29.0
\\_SB_.LNKD irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 0.29.1
\\_SB_.LNKC irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 0.29.2
\\_SB_.LNKH irq   0: [  3  4  5  6  7  9 10 11] low,level,sharable 0.29.3
\\_SB_.LNKC irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 0.31.0
\\_SB_.LNKB irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 0.31.1
---- before setting priority for links ------------
\\_SB_.LNKH:
	interrupts:	     3     4     5     6     7     9    10    11
	penalty:	  1110  1110   110  1110  1110   110   110   610
	references:	1
	priority:	0
---- before fixup boot-disabled links -------------
\\_SB_.LNKH:
	interrupts:	     3     4     5     6     7     9    10    11
	penalty:	  1110  1110   110  1110  1110   110   110   610
	references:	1
	priority:	672
---- after fixup boot-disabled links --------------
---- arbitrated configuration ---------------------
\\_SB_.LNKA irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 0.29.0
\\_SB_.LNKD irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 0.29.1
\\_SB_.LNKC irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 0.29.2
\\_SB_.LNKH irq  10: [  3  4  5  6  7  9 10 11] low,level,sharable 0.29.3
\\_SB_.LNKC irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 0.31.0
\\_SB_.LNKB irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 0.31.1
pci0: <ACPI PCI bus> on pcib0
agp0: <Intel 82845 host to AGP bridge> mem 0xe0000000-0xe3ffffff at device =
0.0 on pci0
pcib1: <ACPI PCI-PCI bridge> at device 1.0 on pci0
---- initial configuration ------------------------
\\_SB_.LNKA irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 1.0.0
\\_SB_.LNKB irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 1.0.1
---- before setting priority for links ------------
---- before fixup boot-disabled links -------------
---- after fixup boot-disabled links --------------
---- arbitrated configuration ---------------------
\\_SB_.LNKA irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 1.0.0
\\_SB_.LNKB irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 1.0.1
pci1: <ACPI PCI bus> on pcib1
drm0: <ATI Radeon LY Mobility 6 (AGP)> port 0x3000-0x30ff mem 0xd0100000-0x=
d010ffff,0xe8000000-0xefffffff irq 11 at device 0.0 on pci1
info: [drm] AGP at 0xe0000000 64MB
info: [drm] Initialized radeon 1.1.1 20010405 on minor 0
uhci0: <Intel 82801CA/CAM (ICH3) USB controller USB-A> port 0x1800-0x181f i=
rq 11 at device 29.0 on pci0
usb0: <Intel 82801CA/CAM (ICH3) USB controller USB-A> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhci1: <Intel 82801CA/CAM (ICH3) USB controller USB-B> port 0x1820-0x183f i=
rq 11 at device 29.1 on pci0
usb1: <Intel 82801CA/CAM (ICH3) USB controller USB-B> on uhci1
usb1: USB revision 1.0
uhub1: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
uhci2: <Intel 82801CA/CAM (ICH3) USB controller USB-C> port 0x1840-0x185f i=
rq 11 at device 29.2 on pci0
usb2: <Intel 82801CA/CAM (ICH3) USB controller USB-C> on uhci2
usb2: USB revision 1.0
uhub2: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub2: 2 ports with 2 removable, self powered
pcib2: <ACPI PCI-PCI bridge> at device 30.0 on pci0
---- initial configuration ------------------------
\\_SB_.LNKB irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 2.9.0
\\_SB_.LNKF irq   0: [  3  4  5  6  7  9 10 11] low,level,sharable 2.3.0
\\_SB_.LNKE irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 2.8.0
\\_SB_.LNKE irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 2.7.0
\\_SB_.LNKC irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 2.7.1
---- before setting priority for links ------------
\\_SB_.LNKF:
	interrupts:	     3     4     5     6     7     9    10    11
	penalty:	  1220  1220   220  1220  1220   220   320  1320
	references:	1
	priority:	0
---- before fixup boot-disabled links -------------
\\_SB_.LNKF:
	interrupts:	     3     4     5     6     7     9    10    11
	penalty:	  1220  1220   220  1220  1220   220   320  1320
	references:	1
	priority:	870
---- after fixup boot-disabled links --------------
---- arbitrated configuration ---------------------
\\_SB_.LNKB irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 2.9.0
\\_SB_.LNKF irq   9: [  3  4  5  6  7  9 10 11] low,level,sharable 2.3.0
\\_SB_.LNKE irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 2.8.0
\\_SB_.LNKE irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 2.7.0
\\_SB_.LNKC irq  11: [  3  4  5  6  7  9 10 11] low,level,sharable 2.7.1
pci2: <ACPI PCI bus> on pcib2
wi0: <Intersil Prism2.5> mem 0xf8000000-0xf8000fff irq 11 at device 7.0 on =
pci2
wi0: 802.11 address: 00:20:e0:8e:5f:c2
wi0: using RF:PRISM2.5 MAC:ISL3874A(Mini-PCI)
wi0: Intersil Firmware: Primary 1.00.07, Station 1.03.06
fxp0: <Intel Pro/100 Ethernet> port 0x8000-0x803f mem 0xd0200000-0xd0200fff=
 irq 11 at device 8.0 on pci2
fxp0: Ethernet address 00:00:e2:8b:c8:5a
inphy0: <i82562ET 10/100 media interface> on miibus0
inphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
cbb0: <TI1410 PCI-CardBus Bridge> irq 11 at device 9.0 on pci2
cardbus0: <CardBus bus> on cbb0
pccard0: <16-bit PCCard bus> on cbb0
isab0: <PCI-ISA bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel ICH3 ATA100 controller> port 0x1860-0x186f,0x374-0x377,0x17=
0-0x177,0x3f4-0x3f7,0x1f0-0x1f7 at device 31.1 on pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
pci0: <serial bus, SMBus> at device 31.3 (no driver attached)
pcm0: <Intel 82801CA (ICH3)> port 0x18c0-0x18ff,0x1c00-0x1cff irq 11 at dev=
ice 31.5 on pci0
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:fake" locked from /=
usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:fake" locked from /=
usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:fake" locked from /=
usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:fake" locked from /=
usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:record:0" locked fr=
om /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:record:0" locked fr=
om /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:record:0" locked fr=
om /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:record:0" locked fr=
om /usr/src/sys/dev/sound/pcm/channel.c:677
pci0: <simple comms> at device 31.6 (no driver attached)
atkbdc0: <Keyboard controller (i8042)> port 0x64,0x60 irq 1 on acpi0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
fdc0: <Enhanced floppy controller (i82077, NE72065 or clone)> port 0x3f7,0x=
3f0-0x3f5 irq 6 drq 2 on acpi0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
sio0: configured irq 4 not in bitmap of probed irqs 0
sio0: port may not be enabled
sio0 port 0x3f8-0x3ff irq 4 on acpi0
sio0: type 8250 or not responding
ppc0 port 0x3bc-0x3c3 irq 7 on acpi0
ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode
plip0: <PLIP network interface> on ppbus0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
sio1 port 0x2f8-0x2ff irq 3 drq 3 on acpi0
sio1: type 16550A
acpi_ec0: <embedded controller> port 0x66,0x62 on acpi0
acpi_cmbat0: <Control method Battery> on acpi0
acpi_cmbat1: <Control method Battery> on acpi0
acpi_acad0: <AC adapter> on acpi0
orm0: <Option ROMs> at iomem 0xe0000-0xeffff,0xdc000-0xdffff,0xd0000-0xd17f=
f,0xc0000-0xcefff on isa0
pmtimer0 on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=3D0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
Timecounters tick every 10.000 msec
IPsec: Initialized Security Association Processing.
IP Filter: v3.4.29 initialized.  Default =3D pass all, Logging =3D enabled
acpi_cpu: CPU throttling enabled, 8 steps from 100% to 12.5%
ata1-slave: timeout waiting for interrupt
ata1-slave: ATAPI identify failed
ad0: 19077MB <IC25N020ATCS04-0> [41344/15/63] at ata0-master UDMA100
acd0: DVD-ROM <HL-DT-STDVD-ROM GDR8081N> at ata1-master UDMA33
pass0 at ata1 bus 0 target 0 lun 0
pass0: <HL-DT-ST DVD-ROM GDR8081N 0012> Removable CD-ROM SCSI-0 device=20
pass0: 33.000MB/s transfers
Mounting root from ufs:/dev/ad0s1a
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/kern/kern_sysctl.c:1002: could sleep with "drm memory" locked =
from /usr/src/sys/dev/drm/drm_memory.h:217
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
acquiring duplicate lock of same type: "pcm channel"
 1st pcm0:play:0 @ /usr/src/sys/dev/sound/pcm/vchan.c:240
 2nd pcm0:virtual:0 @ /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:0" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:0" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:0" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:0" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:1" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:1" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:1" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:1" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:2" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:2" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:2" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:2" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:3" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:3" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:3" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:virtual:3" locked f=
rom /usr/src/sys/dev/sound/pcm/channel.c:677
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0:play:0" locked from=
 /usr/src/sys/dev/sound/pcm/vchan.c:240
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134
/usr/src/sys/vm/uma_core.c:1330: could sleep with "pcm0" locked from /usr/s=
rc/sys/dev/sound/pcm/sound.c:134

--/Uq4LBwYP4y1W6pO
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="acpi_dsdt.aml"
Content-Transfer-Encoding: quoted-printable

/*
RSD PTR: Checksum=3D174, OEMID=3DIBM, RsdtAddress=3D0x0ff733c0
 */
/*
RSDT: Length=3D56, Revision=3D1, Checksum=3D35,
	OEMID=3DIBM, OEM Table ID=3DTP-1M, OEM Revision=3D0x2011,
	Creator ID=3D LTP, Creator Revision=3D0x0
 */
/*
	Entries=3D{ 0x0ff73444, 0x0ff734c5, 0x0ff79f55, 0x0ff79fa6, 0x0ff79fd8 }
 */
/*
	DSDT=3D0xff7352b
	INT_MODEL=3DPIC
	SCI_INT=3D9
	SMI_CMD=3D0xb2, ACPI_ENABLE=3D0xf0, ACPI_DISABLE=3D0xf1, S4BIOS_REQ=3D0x0
	PM1a_EVT_BLK=3D0x1000-0x1003
	PM1a_CNT_BLK=3D0x1004-0x1005
	PM2_CNT_BLK=3D0x1020-0x1020
	PM2_TMR_BLK=3D0x1008-0x100b
	PM2_GPE0_BLK=3D0x1028-0x102b
	PM2_GPE1_BLK=3D0x102c-0x102f, GPE1_BASE=3D16
	P_LVL2_LAT=3D1ms, P_LVL3_LAT=3D85ms
	FLUSH_SIZE=3D0, FLUSH_STRIDE=3D0
	DUTY_OFFSET=3D1, DUTY_WIDTH=3D3
	DAY_ALRM=3D13, MON_ALRM=3D8, CENTURY=3D50
	Flags=3D{WBINVD,PROC_C1,P_LVL2_UP,SLP_BUTTON,RTC_S4,DCK_CAP}
 */
/*
DSDT: Length=3D27178, Revision=3D1, Checksum=3D236,
	OEMID=3DIBM, OEM Table ID=3DTP-1M, OEM Revision=3D0x2011,
	Creator ID=3DMSFT, Creator Revision=3D0x100000d
 */
DefinitionBlock (
    "acpi_dsdt.aml",	//Output filename
    "DSDT",		//Signature
    0x1,		//DSDT Revision
    "IBM",		//OEMID
    "TP-1M",		//TABLE ID
    0x2011		//OEM Revision
)

{
Scope(\_PR_) {
    Processor(CPU_, 1, 0x1010, 0x6) {
        Method(_INI) {
            Store(\P0FQ, Index(DerefOf(Index(_PSS, 0x0, )), 0x0, ))
            Store(\P0PW, Index(DerefOf(Index(_PSS, 0x0, )), 0x1, ))
            Store(\P1FQ, Index(DerefOf(Index(_PSS, 0x1, )), 0x0, ))
            Store(\P1PW, Index(DerefOf(Index(_PSS, 0x1, )), 0x1, ))
            If(\PCEL) {
                Store(0xf6, Index(DerefOf(Index(_PSS, 0x1, )), 0x5, ))
                Store(0x0, Index(DerefOf(Index(_PSS, 0x1, )), 0x5, ))
            }
        }
        Name(_PCT, Package(0x2) {
            Buffer(0x11) {0x82, 0xc, 0x0, 0x1, 0x8, 0x0, 0x0, 0xb2, 0x0, 0x=
0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 },
            Buffer(0x11) {0x82, 0xc, 0x0, 0x1, 0x8, 0x0, 0x0, 0x50, 0x10, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 },
        })
        Name(_PSS, Package(0x2) {
            Package(0x6) {
                0x0,
                0x0,
                0x01f4,
                0x0,
                0xf6,
                0x0,
            },
            Package(0x6) {
                0x0,
                0x0,
                0x01f4,
                0x0,
                0xf7,
                0x1,
            },
        })
        Method(_PPC) {
            If(LNot(\SPEN)) {
                Return(0x1)
            }
            If(\_SB_.PCI0.LPC_.EC__.TT4F) {
                Return(0x1)
            }
            Else {
                Return(0x0)
            }
        }
    }
}
Scope(\_SB_) {
    Method(_INI) {
        If(LEqual(\SCMP(\_OS_, "Microsoft Windows"), Zero)) {
            Store(0x1, \W98F)
        }
        Else {
            If(CondRefOf(_OSI, Local0)) {
                If(\_OSI) {
                    "Windows 2001"
                    Store(0x2, \WNTF)
                }
            }
            Else {
                If(LEqual(\SCMP(\_OS_, "Microsoft Windows NT"), Zero)) {
                    Store(0x1, \WNTF)
                }
                Else {
                    If(LEqual(\SCMP(\_OS_, "Microsoft WindowsME: Millennium=
 Edition"), Zero)) {
                        Store(0x1, \WMEF)
                        Store(0x1, \W98F)
                    }
                }
            }
        }
        \OEMF(0x1, \WNTF)
        If(LNot(LLess(\_REV, 0x2))) {
            Store(0x1, \H8DR)
        }
        Store(0x1, \OSIF)
    }
    Device(LNKA) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x1)
        Method(_STA) {
            If(LNot(VPIR(\_SB_.PCI0.LPC_.PIRA))) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xe, 0x18, 0x79, 0x0 })
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRA, 0x80, \_SB_.PCI0.LPC_.PIRA)
        }
        Name(BUFA, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
        CreateWordField(BUFA, 0x1, IRA1)
        Method(_CRS) {
            And(\_SB_.PCI0.LPC_.PIRA, 0x8f, Local0)
            If(VPIR(Local0)) {
                ShiftLeft(0x1, Local0, IRA1)
            }
            Else {
                Store(0x0, IRA1)
            }
            Return(BUFA)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRA2)
            FindSetRightBit(IRA2, Local0)
            And(\_SB_.PCI0.LPC_.PIRA, 0x70, Local1)
            Or(Local1, Decrement(Local0), Local1)
            Store(Local1, \_SB_.PCI0.LPC_.PIRA)
        }
    }
    Device(LNKB) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x2)
        Method(_STA) {
            If(LNot(VPIR(\_SB_.PCI0.LPC_.PIRB))) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xe, 0x18, 0x79, 0x0 })
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRB, 0x80, \_SB_.PCI0.LPC_.PIRB)
        }
        Name(BUFB, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
        CreateWordField(BUFB, 0x1, IRB1)
        Method(_CRS) {
            And(\_SB_.PCI0.LPC_.PIRB, 0x8f, Local0)
            If(VPIR(Local0)) {
                ShiftLeft(0x1, Local0, IRB1)
            }
            Else {
                Store(0x0, IRB1)
            }
            Return(BUFB)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRB2)
            FindSetRightBit(IRB2, Local0)
            And(\_SB_.PCI0.LPC_.PIRB, 0x70, Local1)
            Or(Local1, Decrement(Local0), Local1)
            Store(Local1, \_SB_.PCI0.LPC_.PIRB)
        }
    }
    Device(LNKC) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x3)
        Method(_STA) {
            If(LNot(VPIR(\_SB_.PCI0.LPC_.PIRC))) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xe, 0x18, 0x79, 0x0 })
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRC, 0x80, \_SB_.PCI0.LPC_.PIRC)
        }
        Name(BUFC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
        CreateWordField(BUFC, 0x1, IRC1)
        Method(_CRS) {
            And(\_SB_.PCI0.LPC_.PIRC, 0x8f, Local0)
            If(VPIR(Local0)) {
                ShiftLeft(0x1, Local0, IRC1)
            }
            Else {
                Store(0x0, IRC1)
            }
            Return(BUFC)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRC2)
            FindSetRightBit(IRC2, Local0)
            And(\_SB_.PCI0.LPC_.PIRC, 0x70, Local1)
            Or(Local1, Decrement(Local0), Local1)
            Store(Local1, \_SB_.PCI0.LPC_.PIRC)
        }
    }
    Device(LNKD) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x4)
        Method(_STA) {
            If(LNot(VPIR(\_SB_.PCI0.LPC_.PIRD))) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xe, 0x18, 0x79, 0x0 })
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRD, 0x80, \_SB_.PCI0.LPC_.PIRD)
        }
        Name(BUFD, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
        CreateWordField(BUFD, 0x1, IRD1)
        Method(_CRS) {
            And(\_SB_.PCI0.LPC_.PIRD, 0x8f, Local0)
            If(VPIR(Local0)) {
                ShiftLeft(0x1, Local0, IRD1)
            }
            Else {
                Store(0x0, IRD1)
            }
            Return(BUFD)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRD2)
            FindSetRightBit(IRD2, Local0)
            And(\_SB_.PCI0.LPC_.PIRD, 0x70, Local1)
            Or(Local1, Decrement(Local0), Local1)
            Store(Local1, \_SB_.PCI0.LPC_.PIRD)
        }
    }
    Device(LNKE) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x5)
        Method(_STA) {
            If(LNot(VPIR(\_SB_.PCI0.LPC_.PIRE))) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xe, 0x18, 0x79, 0x0 })
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRE, 0x80, \_SB_.PCI0.LPC_.PIRE)
        }
        Name(BUFE, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
        CreateWordField(BUFE, 0x1, IRE1)
        Method(_CRS) {
            And(\_SB_.PCI0.LPC_.PIRE, 0x8f, Local0)
            If(VPIR(Local0)) {
                ShiftLeft(0x1, Local0, IRE1)
            }
            Else {
                Store(0x0, IRE1)
            }
            Return(BUFE)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRE2)
            FindSetRightBit(IRE2, Local0)
            And(\_SB_.PCI0.LPC_.PIRE, 0x70, Local1)
            Or(Local1, Decrement(Local0), Local1)
            Store(Local1, \_SB_.PCI0.LPC_.PIRE)
        }
    }
    Device(LNKF) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x6)
        Method(_STA) {
            If(LNot(VPIR(\_SB_.PCI0.LPC_.PIRF))) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xe, 0x18, 0x79, 0x0 })
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRF, 0x80, \_SB_.PCI0.LPC_.PIRF)
        }
        Name(BUFF, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
        CreateWordField(BUFF, 0x1, IRF1)
        Method(_CRS) {
            And(\_SB_.PCI0.LPC_.PIRF, 0x8f, Local0)
            If(VPIR(Local0)) {
                ShiftLeft(0x1, Local0, IRF1)
            }
            Else {
                Store(0x0, IRF1)
            }
            Return(BUFF)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRF2)
            FindSetRightBit(IRF2, Local0)
            And(\_SB_.PCI0.LPC_.PIRF, 0x70, Local1)
            Or(Local1, Decrement(Local0), Local1)
            Store(Local1, \_SB_.PCI0.LPC_.PIRF)
        }
    }
    Device(LNKG) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x7)
        Method(_STA) {
            If(LNot(VPIR(\_SB_.PCI0.LPC_.PIRG))) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xe, 0x18, 0x79, 0x0 })
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRG, 0x80, \_SB_.PCI0.LPC_.PIRG)
        }
        Name(BUFG, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
        CreateWordField(BUFG, 0x1, IRG1)
        Method(_CRS) {
            And(\_SB_.PCI0.LPC_.PIRG, 0x8f, Local0)
            If(VPIR(Local0)) {
                ShiftLeft(0x1, Local0, IRG1)
            }
            Else {
                Store(0x0, IRG1)
            }
            Return(BUFG)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRG2)
            FindSetRightBit(IRG2, Local0)
            And(\_SB_.PCI0.LPC_.PIRG, 0x70, Local1)
            Or(Local1, Decrement(Local0), Local1)
            Store(Local1, \_SB_.PCI0.LPC_.PIRG)
        }
    }
    Device(LNKH) {
        Name(_HID, 0x0f0cd041)
        Name(_UID, 0x8)
        Method(_STA) {
            If(LNot(VPIR(\_SB_.PCI0.LPC_.PIRH))) {
                Return(0x9)
            }
            Else {
                Return(0xb)
            }
        }
        Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xe, 0x18, 0x79, 0x0 })
        Method(_DIS) {
            Or(\_SB_.PCI0.LPC_.PIRH, 0x80, \_SB_.PCI0.LPC_.PIRH)
        }
        Name(BUFH, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
        CreateWordField(BUFH, 0x1, IRH1)
        Method(_CRS) {
            And(\_SB_.PCI0.LPC_.PIRH, 0x8f, Local0)
            If(VPIR(Local0)) {
                ShiftLeft(0x1, Local0, IRH1)
            }
            Else {
                Store(0x0, IRH1)
            }
            Return(BUFH)
        }
        Method(_SRS, 1) {
            CreateWordField(Arg0, 0x1, IRH2)
            FindSetRightBit(IRH2, Local0)
            And(\_SB_.PCI0.LPC_.PIRH, 0x70, Local1)
            Or(Local1, Decrement(Local0), Local1)
            Store(Local1, \_SB_.PCI0.LPC_.PIRH)
        }
    }
    Method(VPIR, 1) {
        Store(0x1, Local0)
        If(And(Arg0, 0x80, )) {
            Store(0x0, Local0)
        }
        Else {
            And(Arg0, 0xf, Local1)
            If(LLess(Local1, 0x3)) {
                Store(0x0, Local0)
            }
            Else {
                If(LOr(LEqual(Local1, 0x8), LEqual(Local1, 0xd))) {
                    Store(0x0, Local0)
                }
            }
        }
        Return(Local0)
    }
    Device(MEM_) {
        Name(_HID, 0x010cd041)
        Name(ME98, Buffer(0x32) {0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0xa, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0, 0x0, 0x0, 0x2, =
0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0x10, 0x0, 0x0, 0x0, 0xee, 0x1, 0x86, 0=
x9, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xfe, 0x0, 0x0, 0x40, 0x1, 0x79, 0x0 })
        CreateDWordField(ME98, 0x1c, MEB0)
        CreateDWordField(ME98, 0x20, MEL0)
        Name(MGAP, Buffer(0xe) {0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x=
0, 0x0, 0x0, 0x0, 0x79, 0x0 })
        CreateDWordField(MGAP, 0x4, MGPB)
        CreateDWordField(MGAP, 0x8, MGPL)
        Name(MEMS, Buffer(0xc2) {0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0xa, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0x0, 0x0, 0x0, =
0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0x40, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x86, 0x=
9, 0x0, 0x0, 0x0, 0x80, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x86, 0x9, 0x0, 0x0, =
0x0, 0xc0, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0xd=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0x40, 0xd, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0x80, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x86, 0x9, 0x0, 0x0, 0x0, 0xc0, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x86, 0x9, 0=
x0, 0x0, 0x0, 0x0, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, =
0x40, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0x80, 0xe, 0x=
0, 0x0, 0x0, 0x0, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0xc0, 0xe, 0x0, 0x0, 0x0, =
0x0, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0xf, 0x0, 0x0, 0x0, 0x1, 0x0, 0x86=
, 0x9, 0x0, 0x1, 0x0, 0x0, 0x10, 0x0, 0x0, 0x0, 0xee, 0x1, 0x86, 0x9, 0x0, =
0x0, 0x0, 0x0, 0xc0, 0xfe, 0x0, 0x0, 0x40, 0x1, 0x79, 0x0 })
        CreateDWordField(MEMS, 0x14, MC0L)
        CreateDWordField(MEMS, 0x20, MC4L)
        CreateDWordField(MEMS, 0x2c, MC8L)
        CreateDWordField(MEMS, 0x38, MCCL)
        CreateDWordField(MEMS, 0x44, MD0L)
        CreateDWordField(MEMS, 0x50, MD4L)
        CreateDWordField(MEMS, 0x5c, MD8L)
        CreateDWordField(MEMS, 0x68, MDCL)
        CreateDWordField(MEMS, 0x74, ME0L)
        CreateDWordField(MEMS, 0x80, ME4L)
        CreateDWordField(MEMS, 0x8c, ME8L)
        CreateDWordField(MEMS, 0x98, MECL)
        CreateBitField(MEMS, 0x78, MC0W)
        CreateBitField(MEMS, 0xd8, MC4W)
        CreateBitField(MEMS, 0x0138, MC8W)
        CreateBitField(MEMS, 0x0198, MCCW)
        CreateBitField(MEMS, 0x01f8, MD0W)
        CreateBitField(MEMS, 0x0258, MD4W)
        CreateBitField(MEMS, 0x02b8, MD8W)
        CreateBitField(MEMS, 0x0318, MDCW)
        CreateBitField(MEMS, 0x0378, ME0W)
        CreateBitField(MEMS, 0x03d8, ME4W)
        CreateBitField(MEMS, 0x0438, ME8W)
        CreateBitField(MEMS, 0x0498, MECW)
        CreateDWordField(MEMS, 0xac, MEB1)
        CreateDWordField(MEMS, 0xb0, MEL1)
        Method(_CRS) {
            If(\W98F) {
                Subtract(\MEMX, MEB0, MEL0)
                Store(\GAPA, MGPB)
                Store(\GAPL, MGPL)
                If(LAnd(MGPB, MGPL)) {
                    Subtract(SizeOf(ME98), 0x2, Local0)
                    Name(MBF0, Buffer(Local0) { })
                    Add(Local0, SizeOf(MGAP), Local0)
                    Name(MBF1, Buffer(Local0) { })
                    Store(ME98, MBF0)
                    Concatenate(MBF0, MGAP, MBF1)
                    Return(MBF1)
                }
                Else {
                    Return(ME98)
                }
            }
            And(\_SB_.PCI0.PAM1, 0x3, Local0)
            If(Local0) {
                Store(0x4000, MC0L)
                If(And(Local0, 0x2, )) {
                    Store(0x1, MC0W)
                }
            }
            And(\_SB_.PCI0.PAM1, 0x30, Local0)
            If(Local0) {
                Store(0x4000, MC4L)
                If(And(Local0, 0x20, )) {
                    Store(0x1, MC4W)
                }
            }
            And(\_SB_.PCI0.PAM2, 0x3, Local0)
            If(Local0) {
                Store(0x4000, MC8L)
                If(And(Local0, 0x2, )) {
                    Store(0x1, MC8W)
                }
            }
            And(\_SB_.PCI0.PAM2, 0x30, Local0)
            If(Local0) {
                Store(0x4000, MCCL)
                If(And(Local0, 0x20, )) {
                    Store(0x1, MCCW)
                }
            }
            And(\_SB_.PCI0.PAM3, 0x3, Local0)
            If(Local0) {
                Store(0x4000, MD0L)
                If(And(Local0, 0x2, )) {
                    Store(0x1, MD0W)
                }
            }
            And(\_SB_.PCI0.PAM3, 0x30, Local0)
            If(Local0) {
                Store(0x4000, MD4L)
                If(And(Local0, 0x20, )) {
                    Store(0x1, MD4W)
                }
            }
            And(\_SB_.PCI0.PAM4, 0x3, Local0)
            If(Local0) {
                Store(0x4000, MD8L)
                If(And(Local0, 0x2, )) {
                    Store(0x1, MD8W)
                }
            }
            And(\_SB_.PCI0.PAM4, 0x30, Local0)
            If(Local0) {
                Store(0x4000, MDCL)
                If(And(Local0, 0x20, )) {
                    Store(0x1, MDCW)
                }
            }
            And(\_SB_.PCI0.PAM5, 0x3, Local0)
            If(Local0) {
                Store(0x4000, ME0L)
                If(And(Local0, 0x2, )) {
                    Store(0x1, ME0W)
                }
            }
            And(\_SB_.PCI0.PAM5, 0x30, Local0)
            If(Local0) {
                Store(0x4000, ME4L)
                If(And(Local0, 0x20, )) {
                    Store(0x1, ME4W)
                }
            }
            And(\_SB_.PCI0.PAM6, 0x3, Local0)
            If(Local0) {
                Store(0x4000, ME8L)
                If(And(Local0, 0x2, )) {
                    Store(0x1, ME8W)
                }
            }
            And(\_SB_.PCI0.PAM6, 0x30, Local0)
            If(Local0) {
                Store(0x4000, MECL)
                If(And(Local0, 0x20, )) {
                    Store(0x1, MECW)
                }
            }
            Subtract(\MEMX, MEB1, MEL1)
            Return(MEMS)
        }
    }
    Device(LID_) {
        Name(_HID, 0x0d0cd041)
        Method(_LID) {
            If(And(\RBEC(0x43), 0x10, )) {
                Return(0x1)
            }
            Else {
                Return(0x0)
            }
        }
        Method(_PRW) {
            If(LAnd(\W98F, LNot(\WMEF))) {
                Return(Package(0x2) {
                    0x18,
                    0x4,
                })
            }
            Else {
                Return(Package(0x2) {
                    0x18,
                    0x3,
                })
            }
        }
    }
    Device(SLPB) {
        Name(_HID, 0x0e0cd041)
        Method(_PRW) {
            If(LAnd(\W98F, LNot(\WMEF))) {
                Return(Package(0x2) {
                    0x18,
                    0x4,
                })
            }
            Else {
                Return(Package(0x2) {
                    0x18,
                    0x3,
                })
            }
        }
    }
    Device(PCI0) {
        Device(LPC_) {
            Name(_ADR, 0x001f0000)
            Name(_S3D, 0x3)
            Device(SIO_) {
                Name(_HID, 0x020cd041)
                Name(_UID, 0x0)
                Name(_CRS, Buffer(0xb2) {0x47, 0x1, 0x10, 0x0, 0x10, 0x0, 0=
x1, 0x10, 0x47, 0x1, 0x90, 0x0, 0x90, 0x0, 0x1, 0x10, 0x47, 0x1, 0x24, 0x0,=
 0x24, 0x0, 0x1, 0x2, 0x47, 0x1, 0x28, 0x0, 0x28, 0x0, 0x1, 0x2, 0x47, 0x1,=
 0x2c, 0x0, 0x2c, 0x0, 0x1, 0x2, 0x47, 0x1, 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, 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, 0x6=
, 0x47, 0x1, 0xb8, 0x0, 0xb8, 0x0, 0x1, 0x2, 0x47, 0x1, 0xbc, 0x0, 0xbc, 0x=
0, 0x1, 0x2, 0x47, 0x1, 0x50, 0x0, 0x50, 0x0, 0x1, 0x4, 0x47, 0x1, 0x72, 0x=
0, 0x72, 0x0, 0x1, 0x6, 0x47, 0x1, 0x2e, 0x0, 0x2e, 0x0, 0x1, 0x2, 0x47, 0x=
1, 0x0, 0x10, 0x0, 0x10, 0x1, 0x80, 0x47, 0x1, 0x80, 0x11, 0x80, 0x11, 0x1,=
 0x40, 0x47, 0x1, 0xe0, 0x15, 0xe0, 0x15, 0x1, 0x10, 0x47, 0x1, 0x0, 0x16, =
0x0, 0x16, 0x1, 0x80, 0x79, 0x0 })
            }
            OperationRegion(LPCS, PCI_Config, 0x0, 0x0100)
            Field(LPCS, AnyAcc, NoLock, Preserve) {
                Offset(0x60),
                PIRA,	8,
                PIRB,	8,
                PIRC,	8,
                PIRD,	8,
                SERQ,	8,
                Offset(0x68),
                PIRE,	8,
                PIRF,	8,
                PIRG,	8,
                PIRH,	8,
                Offset(0xa0),
                ,	2,
                CLKR,	1,
                GYEN,	1,
                Offset(0xa2),
                Offset(0xe0),
                XU1A,	3,
                ,	1,
                XU2A,	3,
                Offset(0xe1),
                XPA_,	2,
                ,	2,
                XFA_,	1,
                Offset(0xe2),
                Offset(0xe4),
                XG1E,	1,
                ,	6,
                XG1A,	9,
                XU1E,	1,
                XU2E,	1,
                XPE_,	1,
                XFE_,	1,
                Offset(0xe8),
                Offset(0xec),
                XG2E,	1,
                ,	3,
                XG2A,	12
            }
            OperationRegion(LPIO, SystemIO, 0x1180, 0x40)
            Field(LPIO, DWordAcc, NoLock, Preserve) {
                Offset(0xc),
                ,	25,
                GL25,	1,
                ,	2,
                GL28,	1,
                Offset(0x18),
                ,	25,
                GB25,	1,
                ,	2,
                GB28,	1,
                Offset(0x38),
                GL32,	1,
                GL33,	1,
                GL34,	1,
                GL35,	1,
                GL36,	1
            }
            Device(PIC_) {
                Name(_HID, 0xd041)
                Name(_CRS, Buffer(0x1d) {0x47, 0x1, 0x20, 0x0, 0x20, 0x0, 0=
x1, 0x2, 0x47, 0x1, 0xa0, 0x0, 0xa0, 0x0, 0x1, 0x2, 0x47, 0x1, 0xd0, 0x4, 0=
xd0, 0x4, 0x1, 0x2, 0x22, 0x4, 0x0, 0x79, 0x0 })
            }
            Device(TIMR) {
                Name(_HID, 0x0001d041)
                Name(_CRS, Buffer(0xd) {0x47, 0x1, 0x40, 0x0, 0x40, 0x0, 0x=
1, 0x4, 0x22, 0x1, 0x0, 0x79, 0x0 })
            }
            Device(DMAC) {
                Name(_HID, 0x0002d041)
                Name(_CRS, Buffer(0x1d) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1=
, 0x10, 0x47, 0x1, 0x80, 0x0, 0x80, 0x0, 0x1, 0x10, 0x47, 0x1, 0xc0, 0x0, 0=
xc0, 0x0, 0x1, 0x20, 0x2a, 0x10, 0x5, 0x79, 0x0 })
            }
            Device(SPKR) {
                Name(_HID, 0x0008d041)
                Name(_CRS, Buffer(0xa) {0x47, 0x1, 0x61, 0x0, 0x61, 0x0, 0x=
1, 0x1, 0x79, 0x0 })
            }
            Device(FPU_) {
                Name(_HID, 0x040cd041)
                Name(_CRS, Buffer(0xd) {0x47, 0x1, 0xf0, 0x0, 0xf0, 0x0, 0x=
1, 0x1, 0x22, 0x0, 0x20, 0x79, 0x0 })
            }
            Device(RTC_) {
                Name(_HID, 0x000bd041)
                Name(_CRS, Buffer(0xd) {0x47, 0x1, 0x70, 0x0, 0x70, 0x0, 0x=
1, 0x2, 0x22, 0x0, 0x1, 0x79, 0x0 })
            }
            Device(KBD_) {
                Name(_HID, 0x0303d041)
                Name(_CRS, Buffer(0x15) {0x47, 0x1, 0x60, 0x0, 0x60, 0x0, 0=
x1, 0x1, 0x47, 0x1, 0x64, 0x0, 0x64, 0x0, 0x1, 0x1, 0x22, 0x2, 0x0, 0x79, 0=
x0 })
            }
            Device(MOU_) {
                Name(_HID, 0x80374d24)
                Name(_CID, 0x130fd041)
                Name(_CRS, Buffer(0x5) {0x22, 0x0, 0x10, 0x79, 0x0 })
            }
            OperationRegion(NCFG, SystemIO, 0x2e, 0x2)
            Field(NCFG, ByteAcc, NoLock, Preserve) {
                INDX,	8,
                DATA,	8
            }
            IndexField(INDX, DATA, ByteAcc, NoLock, Preserve) {
                Offset(0x7),
                LDN_,	8,
                Offset(0x20),
                Offset(0x21),
                Offset(0x22),
                Offset(0x23),
                Offset(0x24),
                Offset(0x25),
                ,	2,
                PPSE,	1,
                ,	4,
                PNF_,	1,
                FDCD,	1,
                PPD_,	1,
                SP2D,	1,
                SP1D,	1,
                ,	1,
                GPSR,	2,
                Offset(0x27),
                SRID,	8,
                Offset(0x29),
                SCCS,	2,
                SCCE,	1,
                VMCS,	1,
                AMES,	1,
                Offset(0x2a),
                Offset(0x2b),
                Offset(0x30),
                LDA_,	1,
                Offset(0x31),
                Offset(0x60),
                IOHI,	8,
                IOLW,	8,
                Offset(0x70),
                IRQN,	4,
                IRQW,	1,
                Offset(0x71),
                IRQT,	1,
                IRQL,	1,
                Offset(0x72),
                Offset(0x74),
                DMA0,	3,
                Offset(0x75),
                DMA1,	3,
                Offset(0x76)
            }
            IndexField(INDX, DATA, ByteAcc, NoLock, Preserve) {
                Offset(0xf0),
                PTRS,	1,
                PPMC,	1,
                ,	2,
                PERA,	1,
                PMDS,	3
            }
            IndexField(INDX, DATA, ByteAcc, NoLock, Preserve) {
                Offset(0xf0),
                STRS,	1,
                SPMC,	1,
                SBSY,	1,
                ,	4,
                SBSE,	1
            }
            OperationRegion(NSIO, SystemIO, 0x1620, 0xc)
            Field(NSIO, ByteAcc, NoLock, Preserve) {
                NACL,	1,
                MUTE,	1,
                AOFF,	1,
                Offset(0x1),
                ,	4,
                DKID,	4,
                Offset(0x8),
                DKIE,	1,
                WPRF,	1,
                KBLO,	1,
                EHPO,	1,
                Offset(0x9),
                ,	2,
                KBLI,	1,
                ,	1,
                ID00,	1,
                ,	1,
                ID12,	2,
                ,	2,
                EBPW,	1,
                FTBL,	1,
                Offset(0xb),
                ID34,	2,
                PRID,	3
            }
            Method(BGID) {
                Store(ID00, Local1)
                Add(ShiftLeft(Local1, 0x4, ), ID12, Local0)
                Store(ID34, Local1)
                Add(ShiftLeft(Local1, 0x2, ), Local0, Local0)
                Return(Local0)
            }
            Device(FDC_) {
                Name(_HID, 0x0007d041)
                Method(_STA) {
                    If(\LFDC) {
                        If(XFE_) {
                            Return(0xf)
                        }
                        Else {
                            Return(0xd)
                        }
                    }
                    Else {
                        Return(0x0)
                    }
                }
                Method(_DIS) {
                    Store(0x0, XFE_)
                    Store(0x0, LDN_)
                    Store(0x0, IRQN)
                    Store(0x0, LDA_)
                }
                Name(_CRS, Buffer(0x18) {0x47, 0x1, 0xf0, 0x3, 0xf0, 0x3, 0=
x1, 0x6, 0x47, 0x1, 0xf7, 0x3, 0xf7, 0x3, 0x1, 0x1, 0x22, 0x40, 0x0, 0x2a, =
0x4, 0x0, 0x79, 0x0 })
                Name(_PRS, Buffer(0x18) {0x47, 0x1, 0xf0, 0x3, 0xf0, 0x3, 0=
x1, 0x6, 0x47, 0x1, 0xf7, 0x3, 0xf7, 0x3, 0x1, 0x1, 0x22, 0x40, 0x0, 0x2a, =
0x4, 0x0, 0x79, 0x0 })
                Method(_SRS, 1) {
                    Store(0x0, LDN_)
                    Store(0x0, LDA_)
                    Store(0x3, IOHI)
                    Store(0xf0, IOLW)
                    Store(0x6, IRQN)
                    Store(0x2, DMA0)
                    Store(0x1, LDA_)
                    Store(0x0, XFA_)
                    Store(0x1, XFE_)
                }
                Method(_PSC) {
                    Store(0x0, LDN_)
                    If(LDA_) {
                        Return(0x0)
                    }
                    Else {
                        Return(0x3)
                    }
                }
                Method(_PS0) {
                    Store(0x0, LDN_)
                    Store(0x1, LDA_)
                }
                Method(_PS3) {
                    Store(0x0, LDN_)
                    Store(0x0, LDA_)
                }
                Device(FDD0) {
                    Name(_ADR, 0x0)
                    Name(_FDI, Package(0x10) {
                        0x0,
                        0x4,
                        0x4f,
                        0x12,
                        0x1,
                        0xdf,
                        0x2,
                        0x25,
                        0x2,
                        0x12,
                        0x1b,
                        0xff,
                        0x6c,
                        0xf6,
                        0xf,
                        0x5,
                    })
                }
            }
            Device(UART) {
                Name(_HID, 0x0105d041)
                Name(_PRW, Package(0x2) {
                    0x18,
                    0x3,
                })
                Method(_STA) {
                    If(XU1E) {
                        Return(0xf)
                    }
                    Else {
                        Return(0xd)
                    }
                }
                Method(_DIS) {
                    Store(0x0, XU1E)
                    Store(0x3, LDN_)
                    Store(0x0, IRQN)
                    Store(0x0, LDA_)
                }
                Name(U1BF, Buffer(0xd) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1,=
 0x8, 0x22, 0x0, 0x0, 0x79, 0x0 })
                CreateWordField(U1BF, 0x2, U1MN)
                CreateWordField(U1BF, 0x4, U1MX)
                CreateWordField(U1BF, 0x9, U1IQ)
                Method(_CRS) {
                    Store(0x3, LDN_)
                    Or(ShiftLeft(IOHI, 0x8, ), IOLW, Local0)
                    Store(Local0, U1MN)
                    Store(Local0, U1MX)
                    Store(IRQN, Local0)
                    If(Local0) {
                        ShiftLeft(0x1, IRQN, U1IQ)
                    }
                    Else {
                        Store(0x0, U1IQ)
                    }
                    Return(U1BF)
                }
                Name(_PRS, Buffer(0x6b) {0x31, 0x0, 0x47, 0x1, 0xf8, 0x3, 0=
xf8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x31, 0x1, 0x47, 0x1, 0xf8, 0x2, 0xf8,=
 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x31, 0x1, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3,=
 0x1, 0x8, 0x22, 0x10, 0x0, 0x31, 0x1, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x1=
, 0x8, 0x22, 0x8, 0x0, 0x31, 0x2, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x1, 0x8=
, 0x22, 0xa8, 0x0, 0x31, 0x2, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x1, 0x8, 0x=
22, 0xb0, 0x0, 0x31, 0x2, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x1, 0x8, 0x22, =
0xa8, 0x0, 0x31, 0x2, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x1, 0x8, 0x22, 0xb0=
, 0x0, 0x38, 0x79, 0x0 })
                Method(_SRS, 1) {
                    CreateByteField(Arg0, 0x2, RUIL)
                    CreateByteField(Arg0, 0x3, RUIH)
                    CreateWordField(Arg0, 0x2, RUIO)
                    CreateWordField(Arg0, 0x9, RUIQ)
                    Store(0x3, LDN_)
                    Store(0x0, LDA_)
                    Store(RUIL, IOLW)
                    Store(RUIH, IOHI)
                    If(RUIQ) {
                        FindSetRightBit(RUIQ, Local0)
                        Store(Decrement(Local0), IRQN)
                    }
                    Else {
                        Store(0x0, IRQN)
                    }
                    Store(0x1, LDA_)
                    If(LEqual(RUIO, 0x03f8)) {
                        Store(0x0, XU1A)
                    }
                    Else {
                        If(LEqual(RUIO, 0x02f8)) {
                            Store(0x1, XU1A)
                        }
                        Else {
                            If(LEqual(RUIO, 0x03e8)) {
                                Store(0x7, XU1A)
                            }
                            Else {
                                If(LEqual(RUIO, 0x02e8)) {
                                    Store(0x5, XU1A)
                                }
                                Else {
                                    Fatal(0x2, 0x90020000, 0x018c)
                                }
                            }
                        }
                    }
                    Store(0x1, XU1E)
                }
                Method(_PSC) {
                    Store(0x3, LDN_)
                    If(LDA_) {
                        Return(0x0)
                    }
                    Else {
                        Return(0x3)
                    }
                }
                Method(_PS0) {
                    Store(0x3, LDN_)
                    Store(0x1, LDA_)
                }
                Method(_PS3) {
                    Store(0x3, LDN_)
                    Store(0x0, LDA_)
                }
            }
            Device(LPT_) {
                Name(_HID, 0x0004d041)
                Method(_STA) {
                    If(LNot(LEqual(\PMOD, 0x3))) {
                        If(XPE_) {
                            Return(0xf)
                        }
                        Else {
                            Return(0xd)
                        }
                    }
                    Else {
                        Return(0x0)
                    }
                }
                Method(_DIS) {
                    Store(0x0, XPE_)
                    Store(0x1, LDN_)
                    Store(0x0, IRQN)
                    Store(0x0, LDA_)
                }
                Name(PPBF, Buffer(0xd) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1,=
 0x0, 0x22, 0x0, 0x0, 0x79, 0x0 })
                CreateWordField(PPBF, 0x2, LPN0)
                CreateWordField(PPBF, 0x4, LPX0)
                CreateByteField(PPBF, 0x7, LPL0)
                CreateWordField(PPBF, 0x9, LPIQ)
                Method(_CRS) {
                    If(LEqual(\PMOD, 0x3)) {
                        Return(PPBF)
                    }
                    Store(0x1, LDN_)
                    Or(ShiftLeft(IOHI, 0x8, ), IOLW, Local0)
                    Store(Local0, LPN0)
                    Store(Local0, LPX0)
                    If(LEqual(Local0, 0x03bc)) {
                        Store(0x3, LPL0)
                    }
                    Else {
                        Store(0x8, LPL0)
                    }
                    Store(IRQN, Local0)
                    If(Local0) {
                        ShiftLeft(0x1, IRQN, LPIQ)
                    }
                    Else {
                        Store(0x0, LPIQ)
                    }
                    Return(PPBF)
                }
                Method(_PRS) {
                    If(\PMOD) {
                        Return(PEPP)
                    }
                    Else {
                        Return(PLPT)
                    }
                }
                Name(PLPT, Buffer(0x4b) {0x30, 0x47, 0x1, 0xbc, 0x3, 0xbc, =
0x3, 0x1, 0x3, 0x22, 0x80, 0x0, 0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1,=
 0x8, 0x22, 0x80, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x8, 0x2=
2, 0x20, 0x0, 0x30, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x1, 0x3, 0x22, 0x20, =
0x0, 0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x8, 0x22, 0x20, 0x0, 0x30=
, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x8, 0x22, 0x80, 0x0, 0x38, 0x79, 0=
x0 })
                Name(PEPP, Buffer(0x33) {0x30, 0x47, 0x1, 0x78, 0x3, 0x78, =
0x3, 0x1, 0x8, 0x22, 0x80, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1,=
 0x8, 0x22, 0x20, 0x0, 0x30, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x8, 0x2=
2, 0x20, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x8, 0x22, 0x80, =
0x0, 0x38, 0x79, 0x0 })
                Method(_SRS, 1) {
                    CreateByteField(Arg0, 0x2, RLIL)
                    CreateByteField(Arg0, 0x3, RLIH)
                    CreateWordField(Arg0, 0x2, RLIO)
                    CreateWordField(Arg0, 0x9, RLIQ)
                    Store(0x1, LDN_)
                    Store(0x0, LDA_)
                    Store(RLIL, IOLW)
                    Store(RLIH, IOHI)
                    If(RLIQ) {
                        FindSetRightBit(RLIQ, Local0)
                        Store(Decrement(Local0), IRQN)
                    }
                    Else {
                        Store(0x0, IRQN)
                    }
                    If(LEqual(\PMOD, 0x0)) {
                        If(\PDIR) {
                            Store(0x1, PMDS)
                        }
                        Else {
                            Store(0x0, PMDS)
                        }
                    }
                    Else {
                        If(LEqual(\PMOD, 0x1)) {
                            Store(0x2, PMDS)
                        }
                        Else {
                            Store(0x3, PMDS)
                        }
                    }
                    Store(0x1, LDA_)
                    If(LEqual(RLIO, 0x0378)) {
                        Store(0x0, XPA_)
                    }
                    Else {
                        If(LEqual(RLIO, 0x0278)) {
                            Store(0x1, XPA_)
                        }
                        Else {
                            If(LEqual(RLIO, 0x03bc)) {
                                Store(0x2, XPA_)
                            }
                            Else {
                                Fatal(0x2, 0x90020000, 0x01b6)
                            }
                        }
                    }
                    Store(0x1, XPE_)
                }
                Method(_PSC) {
                    Store(0x1, LDN_)
                    If(LDA_) {
                        Return(0x0)
                    }
                    Else {
                        Return(0x3)
                    }
                }
                Method(_PS0) {
                    Store(0x1, LDN_)
                    Store(0x1, LDA_)
                }
                Method(_PS3) {
                    Store(0x1, LDN_)
                    Store(0x0, LDA_)
                }
            }
            Device(ECP_) {
                Name(_HID, 0x0104d041)
                Method(_STA) {
                    If(LEqual(\PMOD, 0x3)) {
                        If(XPE_) {
                            Return(0xf)
                        }
                        Else {
                            Return(0xd)
                        }
                    }
                    Else {
                        Return(0x0)
                    }
                }
                Method(_DIS) {
                    Store(0x0, XPE_)
                    Store(0x1, LDN_)
                    Store(0x0, IRQN)
                    Store(0x0, LDA_)
                }
                Name(EPBF, Buffer(0x18) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1=
, 0x0, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x22, 0x0, 0x0, 0x2a, 0x0, =
0x0, 0x79, 0x0 })
                CreateWordField(EPBF, 0x2, ECN0)
                CreateWordField(EPBF, 0x4, ECX0)
                CreateByteField(EPBF, 0x7, ECL0)
                CreateWordField(EPBF, 0xa, ECN1)
                CreateWordField(EPBF, 0xc, ECX1)
                CreateByteField(EPBF, 0xf, ECL1)
                CreateWordField(EPBF, 0x11, ECIQ)
                CreateWordField(EPBF, 0x14, ECDQ)
                Method(_CRS) {
                    If(LNot(LEqual(\PMOD, 0x3))) {
                        Return(EPBF)
                    }
                    Store(0x1, LDN_)
                    Or(ShiftLeft(IOHI, 0x8, ), IOLW, Local0)
                    Store(Local0, ECN0)
                    Store(Local0, ECX0)
                    Add(Local0, 0x0400, ECN1)
                    Add(Local0, 0x0400, ECX1)
                    If(LEqual(Local0, 0x03bc)) {
                        Store(0x3, ECL0)
                        Store(0x3, ECL1)
                    }
                    Else {
                        Store(0x8, ECL0)
                        Store(0x8, ECL1)
                    }
                    Store(IRQN, Local0)
                    If(Local0) {
                        ShiftLeft(0x1, IRQN, ECIQ)
                    }
                    Else {
                        Store(0x0, ECIQ)
                    }
                    Store(DMA0, Local0)
                    If(LLess(Local0, 0x4)) {
                        ShiftLeft(0x1, Local0, ECDQ)
                    }
                    Else {
                        Store(0x0, ECDQ)
                    }
                    Return(EPBF)
                }
                Name(_PRS, Buffer(0x8d) {0x30, 0x47, 0x1, 0x78, 0x3, 0x78, =
0x3, 0x1, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x1, 0x8, 0x22, 0x80, 0x0, =
0x2a, 0xb, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x8, 0x47, 0x1,=
 0x78, 0x6, 0x78, 0x6, 0x1, 0x8, 0x22, 0x20, 0x0, 0x2a, 0xb, 0x0, 0x30, 0x4=
7, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x1, 0x3, 0x47, 0x1, 0xbc, 0x7, 0xbc, 0x7, 0x=
1, 0x3, 0x22, 0x80, 0x0, 0x2a, 0xb, 0x0, 0x30, 0x47, 0x1, 0x78, 0x3, 0x78, =
0x3, 0x1, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x1, 0x8, 0x22, 0x20, 0x0, =
0x2a, 0xb, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x8, 0x47, 0x1,=
 0x78, 0x6, 0x78, 0x6, 0x1, 0x8, 0x22, 0x80, 0x0, 0x2a, 0xb, 0x0, 0x30, 0x4=
7, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x1, 0x3, 0x47, 0x1, 0xbc, 0x7, 0xbc, 0x7, 0x=
1, 0x3, 0x22, 0x20, 0x0, 0x2a, 0xb, 0x0, 0x38, 0x79, 0x0 })
                Method(_SRS, 1) {
                    CreateByteField(Arg0, 0x2, RLIL)
                    CreateByteField(Arg0, 0x3, RLIH)
                    CreateWordField(Arg0, 0x2, RLIO)
                    CreateWordField(Arg0, 0x11, RLIQ)
                    CreateByteField(Arg0, 0x14, RLDQ)
                    Store(0x1, LDN_)
                    Store(0x0, LDA_)
                    Store(0x7, PMDS)
                    Store(0x1, PERA)
                    Store(RLIL, IOLW)
                    Store(RLIH, IOHI)
                    If(RLIQ) {
                        FindSetRightBit(RLIQ, Local0)
                        Store(Decrement(Local0), IRQN)
                    }
                    Else {
                        Store(0x0, IRQN)
                    }
                    If(And(RLDQ, 0xf, )) {
                        FindSetRightBit(RLDQ, Local0)
                        Store(Decrement(Local0), DMA0)
                    }
                    Else {
                        Store(0x4, DMA0)
                    }
                    Store(0x1, LDA_)
                    If(LEqual(RLIO, 0x0378)) {
                        Store(0x0, XPA_)
                    }
                    Else {
                        If(LEqual(RLIO, 0x0278)) {
                            Store(0x1, XPA_)
                        }
                        Else {
                            If(LEqual(RLIO, 0x03bc)) {
                                Store(0x2, XPA_)
                            }
                            Else {
                                Fatal(0x2, 0x90020000, 0x037a)
                            }
                        }
                    }
                    Store(0x1, XPE_)
                }
                Method(_PSC) {
                    Store(0x1, LDN_)
                    If(LDA_) {
                        Return(0x0)
                    }
                    Else {
                        Return(0x3)
                    }
                }
                Method(_PS0) {
                    Store(0x1, LDN_)
                    Store(0x1, LDA_)
                }
                Method(_PS3) {
                    Store(0x1, LDN_)
                    Store(0x0, LDA_)
                }
            }
            Device(FIR_) {
                Name(_HID, 0x71004d24)
                Name(_CID, 0x1105d041)
                Method(_STA) {
                    If(XU2E) {
                        Return(0xf)
                    }
                    Else {
                        Return(0xd)
                    }
                }
                Method(_DIS) {
                    Store(0x0, XU2E)
                    Store(0x2, LDN_)
                    Store(0x0, IRQN)
                    Store(0x0, LDA_)
                }
                Name(U2BF, Buffer(0x10) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1=
, 0x8, 0x22, 0x0, 0x0, 0x2a, 0x0, 0x0, 0x79, 0x0 })
                CreateWordField(U2BF, 0x2, IRMN)
                CreateWordField(U2BF, 0x4, IRMX)
                CreateWordField(U2BF, 0x9, IRIQ)
                CreateByteField(U2BF, 0xc, IRDQ)
                Method(_CRS) {
                    Store(0x2, LDN_)
                    Or(ShiftLeft(IOHI, 0x8, ), IOLW, Local0)
                    Store(Local0, IRMN)
                    Store(Local0, IRMX)
                    Store(IRQN, Local0)
                    If(Local0) {
                        ShiftLeft(0x1, IRQN, IRIQ)
                    }
                    Else {
                        Store(0x0, IRIQ)
                    }
                    Store(DMA0, Local0)
                    If(LLess(Local0, 0x4)) {
                        ShiftLeft(0x1, Local0, IRDQ)
                    }
                    Else {
                        Store(0x0, IRDQ)
                    }
                    Return(U2BF)
                }
                Name(_PRS, Buffer(0x83) {0x31, 0x0, 0x47, 0x1, 0xf8, 0x2, 0=
xf8, 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x2a, 0xb, 0x0, 0x31, 0x1, 0x47, 0x1, 0=
xf8, 0x3, 0xf8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x2a, 0xb, 0x0, 0x31, 0x1, =
0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x1, 0x8, 0x22, 0x8, 0x0, 0x2a, 0xb, 0x0, =
0x31, 0x1, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x2a=
, 0xb, 0x0, 0x31, 0x2, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x1, 0x8, 0x22, 0xb=
0, 0x0, 0x2a, 0xb, 0x0, 0x31, 0x2, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x1, 0x=
8, 0x22, 0xa8, 0x0, 0x2a, 0xb, 0x0, 0x31, 0x2, 0x47, 0x1, 0xe8, 0x2, 0xe8, =
0x2, 0x1, 0x8, 0x22, 0xb0, 0x0, 0x2a, 0xb, 0x0, 0x31, 0x2, 0x47, 0x1, 0xe8,=
 0x3, 0xe8, 0x3, 0x1, 0x8, 0x22, 0xa8, 0x0, 0x2a, 0xb, 0x0, 0x38, 0x79, 0x0=
 })
                Method(_SRS, 1) {
                    CreateByteField(Arg0, 0x2, RIIL)
                    CreateByteField(Arg0, 0x3, RIIH)
                    CreateWordField(Arg0, 0x2, RIIO)
                    CreateWordField(Arg0, 0x9, RIIQ)
                    CreateByteField(Arg0, 0xc, RIDQ)
                    Store(0x2, LDN_)
                    Store(0x0, LDA_)
                    Store(RIIL, IOLW)
                    Store(RIIH, IOHI)
                    If(RIIQ) {
                        FindSetRightBit(RIIQ, Local0)
                        Store(Decrement(Local0), IRQN)
                    }
                    Else {
                        Store(0x0, IRQN)
                    }
                    If(And(RIDQ, 0xf, )) {
                        FindSetRightBit(RIDQ, Local0)
                        Store(Decrement(Local0), DMA0)
                    }
                    Else {
                        Store(0x4, DMA0)
                    }
                    Store(0x4, DMA1)
                    Store(0x1, SBSE)
                    Store(0x1, LDA_)
                    If(LEqual(RIIO, 0x03f8)) {
                        Store(0x0, XU2A)
                    }
                    Else {
                        If(LEqual(RIIO, 0x02f8)) {
                            Store(0x1, XU2A)
                        }
                        Else {
                            If(LEqual(RIIO, 0x03e8)) {
                                Store(0x7, XU2A)
                            }
                            Else {
                                If(LEqual(RIIO, 0x02e8)) {
                                    Store(0x5, XU2A)
                                }
                                Else {
                                    Fatal(0x2, 0x90020000, 0x0197)
                                }
                            }
                        }
                    }
                    Store(0x1, XU2E)
                }
                Method(_PSC) {
                    Store(0x2, LDN_)
                    If(LDA_) {
                        Return(0x0)
                    }
                    Else {
                        Return(0x3)
                    }
                }
                Method(_PS0) {
                    Store(0x2, LDN_)
                    Store(0x1, LDA_)
                }
                Method(_PS3) {
                    Store(0x2, LDN_)
                    Store(0x0, LDA_)
                }
            }
            Device(EC__) {
                Name(_HID, 0x090cd041)
                Name(_UID, 0x0)
                Name(_CRS, Buffer(0x12) {0x47, 0x1, 0x62, 0x0, 0x62, 0x0, 0=
x1, 0x1, 0x47, 0x1, 0x66, 0x0, 0x66, 0x0, 0x1, 0x1, 0x79, 0x0 })
                Name(_GPE, 0x1c)
                Method(_REG, 2) {
                    If(LEqual(Arg0, 0x3)) {
                        Store(Arg1, \H8DR)
                    }
                }
                OperationRegion(ECOR, EmbeddedControl, 0x0, 0x0100)
                Field(ECOR, ByteAcc, NoLock, Preserve) {
                    Offset(0x43),
                    SERA,	1,
                    ,	2,
                    FNMK,	1,
                    HPLD,	1,
                    BL2_,	1,
                    Offset(0x48),
                    HWLO,	1,
                    ,	2,
                    LDPT,	1,
                    Offset(0x49),
                    P55S,	8,
                    P50S,	8,
                    P43S,	8,
                    P54T,	8,
                    P55T,	8,
                    P50T,	8,
                    P43T,	8,
                    P60S,	8,
                    P61S,	8,
                    P62S,	8,
                    P63S,	8,
                    P64S,	8,
                    Offset(0x57),
                    P67S,	8,
                    Offset(0x5f),
                    P67T,	8,
                    Offset(0x78),
                    HB1A,	1,
                    HPAC,	1,
                    HB0A,	1,
                    P63_,	1,
                    P64_,	1,
                    P65_,	1,
                    P66_,	1,
                    P67_,	1,
                    Offset(0x83),
                    STMP,	8,
                    Offset(0x8b),
                    CTMP,	8,
                    Offset(0xd4),
                    SSTP,	8,
                    SPSV,	8,
                    SCRT,	8,
                    Offset(0xde),
                    THRF,	8
                }
                OperationRegion(ERAM, EmbeddedControl, 0x0, 0xff)
                Field(ECOR, ByteAcc, NoLock, Preserve) {
                    Offset(0x4),
                    CMCM,	8,
                    CMD1,	8,
                    CMD2,	8,
                    CMD3,	8,
                    Offset(0x18),
                    SMPR,	8,
                    SMST,	8,
                    SMAD,	8,
                    SMCM,	8,
                    SMD0,	264,
                    SMAA,	8,
                    Offset(0xde),
                    TCNT,	2,
                    TFN0,	1,
                    TFN1,	1,
                    TFN2,	1,
                    TFN3,	1,
                    TT4F,	1,
                    TT5F,	1
                }
                Field(ECOR, ByteAcc, NoLock, Preserve) {
                    Offset(0x1c),
                    SMW0,	16
                }
                Field(ECOR, ByteAcc, NoLock, Preserve) {
                    Offset(0x1c),
                    SMB0,	8
                }
                Mutex(MUT0, 0)
                Method(ECAC, 4, Serialized) {
                    Acquire(MUT0, 0xffff)
                    Store(Arg1, CMD1)
                    Store(Arg2, CMD2)
                    Store(Arg3, CMD3)
                    Store(Arg0, CMCM)
                    Store(CMCM, Local0)
                    While(Local0) {
                        Store(CMCM, Local0)
                    }
                    Store(CMD1, Local0)
                    Release(MUT0)
                    Return(Local0)
                }
                Method(EC2A, 2, Serialized) {
                    Acquire(MUT0, 0xffff)
                    Store(Arg1, CMD1)
                    Store(Arg0, CMCM)
                    Store(CMCM, Local0)
                    While(Local0) {
                        Store(CMCM, Local0)
                    }
                    Store(CMD1, Local0)
                    Release(MUT0)
                    Return(Local0)
                }
                Method(SMRD, 4) {
                    If(LNot(LEqual(Arg0, 0x7))) {
                        If(LNot(LEqual(Arg0, 0x9))) {
                            If(LNot(LEqual(Arg0, 0xb))) {
                                Return(0x19)
                            }
                        }
                    }
                    Acquire(MUT0, 0xffff)
                    Store(0x3, Local0)
                    While(LGreater(Local0, 0x1)) {
                        And(SMST, 0x40, SMST)
                        Store(Arg2, SMCM)
                        Store(Arg1, SMAD)
                        Store(Arg0, SMPR)
                        While(LNot(And(SMST, 0xbf, Local1))) {
                            Sleep(0x2)
                        }
                        If(LEqual(Local1, 0x80)) {
                            Store(0x0, Local0)
                        }
                        Else {
                            Decrement(Local0)
                        }
                    }
                    If(Local0) {
                        Store(And(Local1, 0x1f, ), Local0)
                    }
                    Else {
                        If(LEqual(Arg0, 0x7)) {
                            Store(SMB0, Arg3)
                        }
                        If(LEqual(Arg0, 0x9)) {
                            Store(SMW0, Arg3)
                        }
                        If(LEqual(Arg0, 0xb)) {
                            Store(SMD0, Arg3)
                        }
                    }
                    Release(MUT0)
                    Return(Local0)
                }
                Method(SMWR, 4) {
                    If(LNot(LEqual(Arg0, 0x6))) {
                        If(LNot(LEqual(Arg0, 0x8))) {
                            If(LNot(LEqual(Arg0, 0xa))) {
                                Return(0x19)
                            }
                        }
                    }
                    Acquire(MUT0, 0xffff)
                    Store(0x3, Local0)
                    While(LGreater(Local0, 0x1)) {
                        If(LEqual(Arg0, 0x6)) {
                            Store(Arg3, SMB0)
                        }
                        If(LEqual(Arg0, 0x8)) {
                            Store(Arg3, SMW0)
                        }
                        If(LEqual(Arg0, 0xa)) {
                            Store(Arg3, SMD0)
                        }
                        And(SMST, 0x40, SMST)
                        Store(Arg2, SMCM)
                        Store(Arg1, SMAD)
                        Store(Arg0, SMPR)
                        While(LNot(And(SMST, 0xbf, Local1))) {
                            Sleep(0x2)
                        }
                        If(LEqual(Local1, 0x80)) {
                            Store(0x0, Local0)
                        }
                        Else {
                            Decrement(Local0)
                        }
                    }
                    If(Local0) {
                        Store(And(Local1, 0x1f, ), Local0)
                    }
                    Release(MUT0)
                    Return(Local0)
                }
                Method(LED_, 2) {
                    If(LEqual(Arg0, 0x7)) {
                        Store(0x1, Local0)
                        Store(0x0, Local1)
                        If(LEqual(Arg1, 0x80)) {
                            Store(0x0, Local0)
                        }
                        If(LEqual(Arg1, 0xc0)) {
                            Store(0x1, Local1)
                        }
                        Store(Local0, \_SB_.PCI0.LPC_.GL28)
                        Store(Local1, \_SB_.PCI0.LPC_.GB28)
                    }
                    If(LEqual(Arg0, 0x4)) {
                        Store(0x1, Local0)
                        Store(0x0, Local1)
                        If(LEqual(Arg1, 0x80)) {
                            Store(0x0, Local0)
                        }
                        If(LEqual(Arg1, 0xc0)) {
                            Store(0x1, Local1)
                        }
                        Store(Local0, \_SB_.PCI0.LPC_.GL25)
                        Store(Local1, \_SB_.PCI0.LPC_.GB25)
                    }
                }
                Name(BAON, 0x0)
                Name(WBON, 0x0)
                Method(BEEP, 1) {
                    If(LEqual(Arg0, 0x5)) {
                        Store(0x0, WBON)
                    }
                    Store(WBON, Local2)
                    If(BAON) {
                        If(LEqual(Arg0, 0x0)) {
                            Store(0x0, BAON)
                            If(WBON) {
                                Store(0x3, Local0)
                                Store(0x8, Local1)
                            }
                            Else {
                                Store(0x0, Local0)
                                Store(0x0, Local1)
                            }
                        }
                        Else {
                            Store(0xff, Local0)
                            Store(0x0, Local1)
                            If(LEqual(Arg0, 0x11)) {
                                Store(0x0, WBON)
                            }
                            If(LEqual(Arg0, 0x10)) {
                                Store(0x1, WBON)
                            }
                        }
                    }
                    Else {
                        Store(Arg0, Local0)
                        Store(0x0, Local1)
                        If(LEqual(Arg0, 0xf)) {
                            Store(Arg0, Local0)
                            Store(0x8, Local1)
                            Store(0x1, BAON)
                        }
                        If(LEqual(Arg0, 0x11)) {
                            Store(0x0, Local0)
                            Store(0x0, Local1)
                            Store(0x0, WBON)
                        }
                        If(LEqual(Arg0, 0x10)) {
                            Store(0x3, Local0)
                            Store(0x8, Local1)
                            Store(0x1, WBON)
                        }
                    }
                    If(LEqual(Arg0, 0x3)) {
                        Store(0x0, WBON)
                        If(Local2) {
                            Store(0x7, Local0)
                            If(LEqual(\SPS_, 0x4)) {
                                Store(0x0, Local2)
                                Store(0xff, Local0)
                                Store(0xff, Local1)
                            }
                        }
                    }
                    If(LEqual(Arg0, 0x7)) {
                        If(Local2) {
                            Store(0x0, Local2)
                            Store(0xff, Local0)
                            Store(0xff, Local1)
                        }
                    }
                    If(LNot(LEqual(Local0, 0xff))) {
                        \NARI(Local0, Local1)
                        If(LEqual(Arg0, 0x3)) {
                            Sleep(0x012c)
                        }
                        If(LEqual(Arg0, 0x7)) {
                            Sleep(0x01f4)
                        }
                    }
                }
                Method(BGID, 1) {
                    If(Arg0) {
                        Store(0xff, Local0)
                    }
                    Else {
                        Store(\_SB_.PCI0.LPC_.BGID(), Local0)
                        If(LEqual(Local0, 0xf)) {
                            If(\H8DR) {
                                If(LEqual(HB1A, 0x0)) {
                                    Store(0x10, Local0)
                                }
                            }
                            Else {
                                If(LEqual(And(\RBEC(0x78), 0x8, ), 0x0)) {
                                    Store(0x10, Local0)
                                }
                            }
                        }
                    }
                    Return(Local0)
                }
                PowerResource(PUBS, 3, 0) {
                    Method(_STA) {
                        Store(\KCMD(0xc5, 0xa), Local0)
                        If(Local0) {
                            Return(0x1)
                        }
                        Else {
                            Return(0x0)
                        }
                    }
                    Method(_ON_) {
                        Store(\KCMD(0xc5, 0x4a), Local0)
                    }
                    Method(_OFF) {
                        Store(\KCMD(0xc5, 0x2a), Local0)
                    }
                }
                Method(_Q0C) {
                    \_SB_.PCI0.LPC_.EC__.HKEY.MHKQ(0x1003)
                }
                Method(_Q0D) {
                    If(\_SB_.PCI0.LPC_.EC__.HKEY.DHKC) {
                        \_SB_.PCI0.LPC_.EC__.HKEY.MHKQ(0x1004)
                    }
                    Else {
                        Notify(\_SB_.SLPB, 0x80)
                    }
                }
                Method(_Q10) {
                    If(\_SB_.PCI0.LPC_.EC__.HKEY.MHKK(0x40)) {
                        \_SB_.PCI0.LPC_.EC__.HKEY.MHKQ(0x1007)
                    }
                    Else {
                        \_SB_.PCI0.AGP_.VID_.VSWT()
                    }
                }
                Method(_Q11) {
                    If(\_SB_.PCI0.LPC_.EC__.HKEY.MHKK(0x80)) {
                        \_SB_.PCI0.LPC_.EC__.HKEY.MHKQ(0x1008)
                    }
                    Else {
                        If(LNot(\WNTF)) {
                            VEXP()
                        }
                    }
                }
                Method(_Q15) {
                    \_SB_.PCI0.LPC_.EC__.HKEY.MHKQ(0x100c)
                }
                Method(_Q14) {
                    \CMOS(0xe)
                }
                Method(_Q31) {
                    \CMOS(0x12)
                    Store(\_SB_.PCI0.LPC_.EC__.AC__._PSR(), Local0)
                    If(\SPEN) {
                        If(\OSPX) {
                            Notify(\_PR_.CPU_, 0x80)
                        }
                        Else {
                            If(Local0) {
                                \STEP(0x0)
                            }
                            Else {
                                \STEP(0x1)
                            }
                        }
                    }
                    Notify(AC__, 0x80)
                }
                Method(_Q73) {
                    \_SB_.PCI0.AGP_.VID_.VLOC(0x1)
                    \_SB_.PCI0.LPC_.EC__.HKEY.MHKQ(0x5002)
                    Notify(\_SB_.LID_, 0x80)
                }
                Method(_Q72) {
                    \_SB_.PCI0.LPC_.EC__.HKEY.MHKQ(0x5001)
                    \CMOS(0xd)
                    Notify(\_SB_.LID_, 0x80)
                }
                Method(_Q48) {
                    If(\SPEN) {
                        If(\OSPX) {
                            Notify(\_PR_.CPU_, 0x80)
                        }
                        Else {
                            \STEP(0x4)
                        }
                    }
                }
                Method(_Q49) {
                    If(\SPEN) {
                        If(\OSPX) {
                            Notify(\_PR_.CPU_, 0x80)
                        }
                        Else {
                            \STEP(0x5)
                        }
                    }
                }
                Method(_Q25) {
                    \_SB_.PCI0.LPC_.EC__.HKEY.MHKQ(0x6011)
                }
                Method(_Q26) {
                    \_SB_.PCI0.LPC_.EC__.HKEY.MHKQ(0x6011)
                }
                Method(_Q23) {
                    Notify(BAT0, 0x80)
                }
                Method(_Q24) {
                    Notify(BAT1, 0x80)
                }
                Method(_Q09) {
                    \CMOS(0x15)
                }
                Method(_Q2F) {
                    If(LEqual(HB0A, 0x0)) {
                        Notify(BAT0, 0x80)
                    }
                    If(LEqual(HB1A, 0x0)) {
                        Notify(BAT1, 0x80)
                    }
                }
                Method(_Q32) {
                    Sleep(0x01f4)
                    \CMOS(0x13)
                    Notify(BAT0, 0x81)
                }
                Method(_Q30) {
                    Sleep(0x01f4)
                    \CMOS(0x14)
                    Notify(BAT1, 0x81)
                }
                Field(ECOR, ByteAcc, NoLock, Preserve) {
                    Offset(0xa0),
                    RCHA,	8,
                    RCLA,	8,
                    Offset(0xa3),
                    ,	4,
                    FDSA,	1,
                    FCSA,	1,
                    STSA,	1,
                    Offset(0xa4),
                    RTHA,	8,
                    RTLA,	8,
                    Offset(0xa7),
                    PERA,	8,
                    RCHB,	8,
                    RCLB,	8,
                    Offset(0xab),
                    ,	4,
                    FDSB,	1,
                    FCSB,	1,
                    STSB,	1,
                    Offset(0xac),
                    RTHB,	8,
                    RTLB,	8,
                    Offset(0xaf),
                    PERB,	8
                }
                Mutex(BATM, 7)
                Method(GBIF, 2) {
                    Acquire(BATM, 0xffff)
                    SMI_(0x0, 0xf, Arg0, 0x0, 0x0)
                    Store(PAR1, Local0)
                    If(LLess(Local0, 0xfa)) {
                        If(Arg0) {
                            Store(0x1194, Local0)
                        }
                        Else {
                            Store(0x1388, Local0)
                        }
                    }
                    Store(Local0, Index(Arg1, 0x2, ))
                    Store(Local0, Index(Arg1, 0x1, ))
                    Divide(Local0, 0x64, Local3, Local1)
                    If(Local3) {
                        Increment(Local1)
                    }
                    Store(Local1, Index(Arg1, 0x6, ))
                    Multiply(Local1, 0x3, Local2)
                    Store(Local2, Index(Arg1, 0x5, ))
                    Subtract(Local0, Local2, Local3)
                    Store(Local3, Index(Arg1, 0x7, ))
                    Subtract(Local2, Local1, Local3)
                    Store(Local3, Index(Arg1, 0x8, ))
                    Release(BATM)
                    Return(Arg1)
                }
                Method(GBST, 4) {
                    Acquire(BATM, 0xffff)
                    If(Arg1) {
                        Store(GBPI(Arg0), Local0)
                        Store(PAR1, Local1)
                        Store(PAR2, Local2)
                        Store(PAR3, Local3)
                    }
                    If(\_SB_.PCI0.LPC_.EC__.AC__.ACST) {
                        If(Arg1) {
                            If(And(Local0, 0x20, )) {
                                Store(0x0, Index(Arg2, 0x0, ))
                            }
                            Else {
                                If(And(Local0, 0x40, )) {
                                    Store(0x0, Index(Arg2, 0x0, ))
                                }
                                Else {
                                    Store(0x2, Index(Arg2, 0x0, ))
                                }
                            }
                        }
                        Else {
                            Store(0x0, Index(Arg2, 0x0, ))
                            Store(0xffffffff, Index(Arg2, 0x1, ))
                            Store(0xffffffff, Index(Arg2, 0x2, ))
                            Store(0xffffffff, Index(Arg2, 0x3, ))
                            Return(Arg2)
                        }
                    }
                    Else {
                        Store(0x0, Local5)
                        If(And(Local0, 0x40, )) {
                            If(LAnd(LLess(Local2, 0x8000), LGreater(Local2,=
 0x0))) {
                                Or(Local5, 0x1, Local5)
                            }
                        }
                        If(LEqual(And(\RBEC(0x43), 0x20, ), 0x0)) {
                            Or(Local5, 0x4, Local5)
                        }
                        Store(Local5, Index(Arg2, 0x0, ))
                    }
                    If(LEqual(Local3, 0x64)) {
                        Store(Arg3, Local4)
                    }
                    Else {
                        Multiply(Arg3, Local3, Local5)
                        Divide(Local5, 0x64, Local6, Local4)
                        If(Local6) {
                            Increment(Local4)
                        }
                    }
                    Store(Local4, Index(Arg2, 0x2, ))
                    Store(0x0, Local5)
                    If(LGreater(Local2, 0x0)) {
                        If(LNot(LEqual(Local2, 0xffff))) {
                            Multiply(Local1, 0x3c, Local4)
                            Divide(Local4, Local2, Local6, Local5)
                            If(Local6) {
                                Increment(Local5)
                            }
                        }
                    }
                    If(LEqual(Local5, 0x0)) {
                        If(Arg0) {
                            Store(0x0898, Local5)
                        }
                        Else {
                            Store(0x05dc, Local5)
                        }
                    }
                    Store(Local5, Index(Arg2, 0x1, ))
                    If(Arg0) {
                        Store(0x2ee0, Index(Arg2, 0x3, ))
                    }
                    Else {
                        Store(0x3e80, Index(Arg2, 0x3, ))
                    }
                    Release(BATM)
                    Return(Arg2)
                }
                Device(BAT0) {
                    Name(_HID, 0x0a0cd041)
                    Name(_UID, 0x0)
                    Name(_PCL, Package(0x1) {
                        \_SB_,
                    })
                    Name(B0ST, 0x0)
                    Method(_STA) {
                        If(And(\RBEC(0x78), 0x4, )) {
                            Store(0x0, B0ST)
                        }
                        Else {
                            Store(0x1, B0ST)
                        }
                        If(B0ST) {
                            Return(0x1f)
                        }
                        Else {
                            Return(0xf)
                        }
                    }
                    Name(BT0I, Package(0xd) {
                        0x0,
                        0x1388,
                        0x1388,
                        0x1,
                        0x41a0,
                        0xfa,
                        0x78,
                        0xdc,
                        0x01f4,
                        "ANA",
                        "110",
                        "Lion",
                        "IBM",
                    })
                    Method(_BIF) {
                        Return(GBIF(0x0, BT0I))
                    }
                    Name(BT0P, Package(0x4) {
                        0x0,
                        0xffffffff,
                        0x0bb8,
                        0xffffffff,
                    })
                    Method(_BST) {
                        Store(DerefOf(Index(BT0I, 0x2, )), Local0)
                        Return(GBST(0x0, B0ST, BT0P, Local0))
                    }
                }
                Device(BAT1) {
                    Name(_HID, 0x0a0cd041)
                    Name(_UID, 0x1)
                    Name(_PCL, Package(0x1) {
                        \_SB_,
                    })
                    Name(B1ST, 0x0)
                    Method(_STA) {
                        If(And(\RBEC(0x78), 0x1, )) {
                            Store(0x0, B1ST)
                        }
                        Else {
                            Store(0x1, B1ST)
                        }
                        If(B1ST) {
                            Return(0x1f)
                        }
                        Else {
                            Return(0xf)
                        }
                    }
                    Name(BT1I, Package(0xd) {
                        0x0,
                        0x1194,
                        0x1194,
                        0x1,
                        0x3138,
                        0xe0,
                        0xb4,
                        0xdc,
                        0x01f4,
                        "ANA",
                        "210",
                        "Lion",
                        "IBM",
                    })
                    Method(_BIF) {
                        Return(GBIF(0x1, BT1I))
                    }
                    Name(BT1P, Package(0x4) {
                        0x0,
                        0xffffffff,
                        0x0bb8,
                        0xffffffff,
                    })
                    Method(_BST) {
                        Store(DerefOf(Index(BT1I, 0x2, )), Local0)
                        Return(GBST(0x1, B1ST, BT1P, Local0))
                    }
                }
                Device(AC__) {
                    Name(_HID, "ACPI0003")
                    Name(_UID, 0x0)
                    Name(ACST, 0x0)
                    Name(_PCL, Package(0x1) {
                        \_SB_,
                    })
                    Method(_PSR) {
                        If(And(\RBEC(0x78), 0x2, )) {
                            Store(0x0, Local0)
                        }
                        Else {
                            Store(0x1, Local0)
                        }
                        Store(Local0, ACST)
                        Return(Local0)
                    }
                    Method(_STA) {
                        Return(0xf)
                    }
                }
                Device(HKEY) {
                    Name(_HID, 0x68004d24)
                    Method(_STA) {
                        Return(0xf)
                    }
                    Method(MHKV) {
                        Return(0x0100)
                    }
                    Name(DHKC, 0x0)
                    Name(DHKB, 0x1)
                    Mutex(XDHK, 7)
                    Name(DHKH, 0x0)
                    Name(DHKW, 0x0)
                    Name(DHKS, 0x0)
                    Name(DHKD, 0x0)
                    Name(DHKN, 0x080c)
                    Name(DHKT, 0x0)
                    Method(MHKA) {
                        Return(0x08cc)
                    }
                    Method(MHKN) {
                        Return(DHKN)
                    }
                    Method(MHKK, 1) {
                        If(DHKC) {
                            Return(And(DHKN, Arg0, ))
                        }
                        Else {
                            Return(Zero)
                        }
                    }
                    Method(MHKM, 2) {
                        Acquire(XDHK, 0xffff)
                        If(LGreater(Arg0, 0x20)) {
                            Noop
                        }
                        Else {
                            ShiftLeft(One, Decrement(Arg0), Local0)
                            If(And(Local0, 0x08cc, )) {
                                If(Arg1) {
                                    Or(Local0, DHKN, DHKN)
                                }
                                Else {
                                    And(DHKN, XOr(Local0, 0xffffffff, ), DH=
KN)
                                }
                            }
                            Else {
                                Noop
                            }
                        }
                        Release(XDHK)
                    }
                    Method(MHKS) {
                        Notify(\_SB_.SLPB, 0x80)
                    }
                    Method(MHKC, 1) {
                        Store(Arg0, DHKC)
                    }
                    Method(MHKP) {
                        Acquire(XDHK, 0xffff)
                        If(DHKW) {
                            Store(DHKW, Local1)
                            Store(Zero, DHKW)
                        }
                        Else {
                            If(DHKD) {
                                Store(DHKD, Local1)
                                Store(Zero, DHKD)
                            }
                            Else {
                                If(DHKS) {
                                    Store(DHKS, Local1)
                                    Store(Zero, DHKS)
                                }
                                Else {
                                    If(DHKT) {
                                        Store(DHKT, Local1)
                                        Store(Zero, DHKT)
                                    }
                                    Else {
                                        Store(DHKH, Local1)
                                        Store(Zero, DHKH)
                                    }
                                }
                            }
                        }
                        Release(XDHK)
                        Return(Local1)
                    }
                    Method(MHKE, 1) {
                        Store(Arg0, DHKB)
                        Acquire(XDHK, 0xffff)
                        Store(Zero, DHKH)
                        Store(Zero, DHKW)
                        Store(Zero, DHKS)
                        Store(Zero, DHKD)
                        Store(Zero, DHKT)
                        Release(XDHK)
                    }
                    Method(MHKQ, 1) {
                        If(DHKB) {
                            If(DHKC) {
                                Acquire(XDHK, 0xffff)
                                If(LLess(Arg0, 0x1000)) {
                                }
                                Else {
                                    If(LLess(Arg0, 0x2000)) {
                                        Store(Arg0, DHKH)
                                    }
                                    Else {
                                        If(LLess(Arg0, 0x3000)) {
                                            Store(Arg0, DHKW)
                                        }
                                        Else {
                                            If(LLess(Arg0, 0x4000)) {
                                                Store(Arg0, DHKS)
                                            }
                                            Else {
                                                If(LLess(Arg0, 0x5000)) {
                                                    Store(Arg0, DHKD)
                                                }
                                                Else {
                                                    If(LLess(Arg0, 0x6000))=
 {
                                                        Store(Arg0, DHKH)
                                                    }
                                                    Else {
                                                        If(LLess(Arg0, 0x70=
00)) {
                                                            Store(Arg0, DHK=
T)
                                                        }
                                                        Else {
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                Release(XDHK)
                                If(LEqual(DHKH, 0x1003)) {
                                    \CMOS(0xd)
                                }
                                Notify(HKEY, 0x80)
                            }
                            Else {
                                If(LEqual(Arg0, 0x1004)) {
                                    Notify(\_SB_.SLPB, 0x80)
                                }
                            }
                        }
                    }
                    Method(MHKB, 1) {
                        If(LEqual(Arg0, 0x0)) {
                            \_SB_.PCI0.LPC_.EC__.BEEP(0x11)
                        }
                        Else {
                            If(LEqual(Arg0, 0x1)) {
                                \_SB_.PCI0.LPC_.EC__.BEEP(0x10)
                            }
                            Else {
                            }
                        }
                    }
                    Method(MHKD) {
                        \_SB_.PCI0.AGP_.VID_.VLOC(0x0)
                    }
                }
            }
        }
        Name(_ADR, 0x0)
        Name(_S3D, 0x2)
        Name(_PRT, Package(0x6) {
            Package(0x4) {
                0x001dffff,
                0x0,
                \_SB_.LNKA,
                0x0,
            },
            Package(0x4) {
                0x001dffff,
                0x1,
                \_SB_.LNKD,
                0x0,
            },
            Package(0x4) {
                0x001dffff,
                0x2,
                \_SB_.LNKC,
                0x0,
            },
            Package(0x4) {
                0x001dffff,
                0x3,
                \_SB_.LNKH,
                0x0,
            },
            Package(0x4) {
                0x001fffff,
                0x0,
                \_SB_.LNKC,
                0x0,
            },
            Package(0x4) {
                0x001fffff,
                0x1,
                \_SB_.LNKB,
                0x0,
            },
        })
        Name(_HID, 0x030ad041)
        Name(_BBN, 0x0)
        OperationRegion(MHCS, PCI_Config, 0x0, 0x0100)
        Field(MHCS, DWordAcc, NoLock, Preserve) {
            Offset(0x60),
            DRB0,	8,
            DRB1,	8,
            DRB2,	8,
            DRB3,	8,
            DRB4,	8,
            DRB5,	8,
            DRB6,	8,
            DRB7,	8,
            Offset(0x90),
            PAM0,	8,
            PAM1,	8,
            PAM2,	8,
            PAM3,	8,
            PAM4,	8,
            PAM5,	8,
            PAM6,	8
        }
        Name(_CRS, Buffer(0x01a6) {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, 0=
x0, 0x0, 0x0, 0xa, 0x0, 0xff, 0xff, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x2, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x=
c, 0x0, 0xff, 0x3f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87=
, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xc, 0x0, 0xff, =
0x7f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0=
x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xc, 0x0, 0xff, 0xbf, 0xc, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, =
0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xc, 0x0, 0xff, 0xff, 0xc, 0x0, 0x0, 0x0, 0x=
0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0xd, 0x0, 0xff, 0x3f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x=
40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40=
, 0xd, 0x0, 0xff, 0x7f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, =
0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xd, 0x0, 0x=
ff, 0xbf, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x=
0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xd, 0x0, 0xff, 0xff, 0xd,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0=
x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0, 0xff, 0x3f, 0xe, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x40, 0xe, 0x0, 0xff, 0x7f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x80, 0xe, 0x0, 0xff, 0xbf, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0=
x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xe, 0x0=
, 0xff, 0xff, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17=
, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x10, 0x0, 0xff, 0xff, =
0xbf, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xfe, 0x79, 0x0 })
        CreateDWordField(_CRS, 0x68, C0LN)
        CreateDWordField(_CRS, 0x82, C4LN)
        CreateDWordField(_CRS, 0x9c, C8LN)
        CreateDWordField(_CRS, 0xb6, CCLN)
        CreateDWordField(_CRS, 0xd0, D0LN)
        CreateDWordField(_CRS, 0xea, D4LN)
        CreateDWordField(_CRS, 0x0104, D8LN)
        CreateDWordField(_CRS, 0x011e, DCLN)
        CreateDWordField(_CRS, 0x0138, E0LN)
        CreateDWordField(_CRS, 0x0152, E4LN)
        CreateDWordField(_CRS, 0x016c, E8LN)
        CreateDWordField(_CRS, 0x0186, ECLN)
        CreateDWordField(_CRS, 0x0194, XXMN)
        CreateDWordField(_CRS, 0x0198, XXMX)
        CreateDWordField(_CRS, 0x01a0, XXLN)
        Method(_INI, 0, Serialized) {
            If(LNot(\OSIF)) {
                \_SB_._INI()
            }
            Multiply(0x02000000, DRB7, Local0)
            Store(Local0, \MEMX)
            Store(Local0, XXMN)
            Add(Subtract(XXMX, XXMN, ), 0x1, XXLN)
            If(And(PAM1, 0x3, )) {
                Store(0x0, C0LN)
            }
            If(And(PAM1, 0x30, )) {
                Store(0x0, C4LN)
            }
            If(And(PAM2, 0x3, )) {
                Store(0x0, C8LN)
            }
            If(And(PAM2, 0x30, )) {
                Store(0x0, CCLN)
            }
            If(And(PAM3, 0x3, )) {
                Store(0x0, D0LN)
            }
            If(And(PAM3, 0x30, )) {
                Store(0x0, D4LN)
            }
            If(And(PAM4, 0x3, )) {
                Store(0x0, D8LN)
            }
            If(And(PAM4, 0x30, )) {
                Store(0x0, DCLN)
            }
            If(And(PAM5, 0x3, )) {
                Store(0x0, E0LN)
            }
            If(And(PAM5, 0x30, )) {
                Store(0x0, E4LN)
            }
            If(And(PAM6, 0x3, )) {
                Store(0x0, E8LN)
            }
            If(And(PAM6, 0x30, )) {
                Store(0x0, ECLN)
            }
        }
        Name(_PRW, Package(0x2) {
            0xd,
            0x4,
        })
        Device(AGP_) {
            Name(_ADR, 0x00010000)
            Name(_S3D, 0x3)
            Name(_PRT, Package(0x2) {
                Package(0x4) {
                    0xffff,
                    0x0,
                    \_SB_.LNKA,
                    0x0,
                },
                Package(0x4) {
                    0xffff,
                    0x1,
                    \_SB_.LNKB,
                    0x0,
                },
            })
            Name(EDX1, Buffer(0x80) {0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf=
f, 0x0, 0x24, 0x4d, 0x55, 0xa, 0x1, 0x1, 0x1, 0x1, 0x23, 0x9, 0x1, 0x2, 0x8=
0, 0x21, 0x18, 0x0, 0xea, 0xd, 0xfb, 0xa0, 0x57, 0x47, 0x98, 0x27, 0x12, 0x=
4d, 0x51, 0xa1, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x64, 0x19, 0x0, 0x40, 0x41, 0x0, 0x26, 0x30=
, 0x18, 0x88, 0x36, 0x0, 0xe, 0xcb, 0x10, 0x0, 0x0, 0x1a, 0x0, 0x0, 0x0, 0x=
fc, 0x0, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x50, 0x61, 0x64, 0x20, 0x4c, 0x43, =
0x44, 0x20, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x31, 0x30, 0x32, 0x34, 0x78, 0x37, 0=
x36, 0x38, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x33 })
            Name(EDX2, Buffer(0x0100) {0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0=
xff, 0x0, 0x24, 0x4d, 0x55, 0xa, 0x1, 0x1, 0x1, 0x1, 0x23, 0x9, 0x1, 0x2, 0=
x80, 0x21, 0x18, 0x0, 0xea, 0xd, 0xfb, 0xa0, 0x57, 0x47, 0x98, 0x27, 0x12, =
0x4d, 0x51, 0xa1, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x=
0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x64, 0x19, 0x0, 0x40, 0x41, 0x0, 0x26, 0x=
30, 0x18, 0x88, 0x36, 0x0, 0xe, 0xcb, 0x10, 0x0, 0x0, 0x1a, 0x0, 0x0, 0x0, =
0xfc, 0x0, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x50, 0x61, 0x64, 0x20, 0x4c, 0x43=
, 0x44, 0x20, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x31, 0x30, 0x32, 0x34, 0x78, 0x37,=
 0x36, 0x38, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x=
0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x33, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
            Name(EDL1, Buffer(0x80) {0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf=
f, 0x0, 0x24, 0x4d, 0x4d, 0x25, 0x1, 0x1, 0x1, 0x1, 0x23, 0x9, 0x1, 0x2, 0x=
80, 0x21, 0x18, 0x0, 0xea, 0xd, 0xfb, 0xa0, 0x57, 0x47, 0x98, 0x27, 0x12, 0=
x4d, 0x51, 0xa1, 0x8, 0x0, 0x81, 0x80, 0x90, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x30, 0x2a, 0x78, 0x20, 0x51, 0x1a, 0x1=
0, 0x40, 0x30, 0x70, 0x13, 0x0, 0x30, 0xe4, 0x10, 0x0, 0x0, 0x1a, 0x0, 0x0,=
 0x0, 0xfc, 0x0, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x50, 0x61, 0x64, 0x20, 0x4c=
, 0x43, 0x44, 0x20, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x31, 0x34, 0x30, 0x30, 0x78,=
 0x31, 0x30, 0x35, 0x30, 0x20, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xdf })
            Name(EDL2, Buffer(0x0100) {0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0=
xff, 0x0, 0x24, 0x4d, 0x4d, 0x25, 0x1, 0x1, 0x1, 0x1, 0x23, 0x9, 0x1, 0x2, =
0x80, 0x21, 0x18, 0x0, 0xea, 0xd, 0xfb, 0xa0, 0x57, 0x47, 0x98, 0x27, 0x12,=
 0x4d, 0x51, 0xa1, 0x8, 0x0, 0x81, 0x80, 0x90, 0x40, 0x0, 0x0, 0x0, 0x0, 0x=
0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x30, 0x2a, 0x78, 0x20, 0x51, 0x1a, 0=
x10, 0x40, 0x30, 0x70, 0x13, 0x0, 0x30, 0xe4, 0x10, 0x0, 0x0, 0x1a, 0x0, 0x=
0, 0x0, 0xfc, 0x0, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x50, 0x61, 0x64, 0x20, 0x=
4c, 0x43, 0x44, 0x20, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x31, 0x34, 0x30, 0x30, 0x7=
8, 0x31, 0x30, 0x35, 0x30, 0x20, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xdf=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
            Name(EDL3, Buffer(0x80) {0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf=
f, 0x0, 0x24, 0x4d, 0x5e, 0x1a, 0x1, 0x1, 0x1, 0x1, 0x23, 0x9, 0x1, 0x2, 0x=
80, 0x21, 0x18, 0x0, 0xea, 0xd, 0xfb, 0xa0, 0x57, 0x47, 0x98, 0x27, 0x12, 0=
x4d, 0x51, 0xa1, 0x8, 0x0, 0x81, 0x80, 0x90, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x30, 0x2a, 0x78, 0x20, 0x51, 0x1a, 0x1=
0, 0x40, 0x30, 0x70, 0x13, 0x0, 0x30, 0xe4, 0x10, 0x0, 0x0, 0x1a, 0x0, 0x0,=
 0x0, 0xfc, 0x0, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x50, 0x61, 0x64, 0x20, 0x4c=
, 0x43, 0x44, 0x20, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x31, 0x34, 0x30, 0x30, 0x78,=
 0x31, 0x30, 0x35, 0x30, 0x20, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd9 })
            Name(EDL4, Buffer(0x0100) {0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0=
xff, 0x0, 0x24, 0x4d, 0x5e, 0x1a, 0x1, 0x1, 0x1, 0x1, 0x23, 0x9, 0x1, 0x2, =
0x80, 0x21, 0x18, 0x0, 0xea, 0xd, 0xfb, 0xa0, 0x57, 0x47, 0x98, 0x27, 0x12,=
 0x4d, 0x51, 0xa1, 0x8, 0x0, 0x81, 0x80, 0x90, 0x40, 0x0, 0x0, 0x0, 0x0, 0x=
0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x30, 0x2a, 0x78, 0x20, 0x51, 0x1a, 0=
x10, 0x40, 0x30, 0x70, 0x13, 0x0, 0x30, 0xe4, 0x10, 0x0, 0x0, 0x1a, 0x0, 0x=
0, 0x0, 0xfc, 0x0, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x50, 0x61, 0x64, 0x20, 0x=
4c, 0x43, 0x44, 0x20, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x31, 0x34, 0x30, 0x30, 0x7=
8, 0x31, 0x30, 0x35, 0x30, 0x20, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd9=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
            Name(EDU1, Buffer(0x80) {0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf=
f, 0x0, 0x24, 0x4d, 0x54, 0xa, 0x1, 0x1, 0x1, 0x1, 0x23, 0x9, 0x1, 0x2, 0x8=
0, 0x1e, 0x16, 0x0, 0xea, 0xd, 0xfb, 0xa0, 0x57, 0x47, 0x98, 0x27, 0x12, 0x=
4d, 0x51, 0xa1, 0x8, 0x0, 0x81, 0x80, 0xa9, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x48, 0x3f, 0x40, 0x30, 0x62, 0xb0, 0x32=
, 0x40, 0x40, 0xc0, 0x14, 0x0, 0x30, 0xe4, 0x10, 0x0, 0x0, 0x1a, 0x0, 0x0, =
0x0, 0xfc, 0x0, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x50, 0x61, 0x64, 0x20, 0x4c,=
 0x43, 0x44, 0x20, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x31, 0x36, 0x30, 0x30, 0x78, =
0x31, 0x32, 0x30, 0x30, 0x20, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x=
0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb1 })
            Name(EDU2, Buffer(0x0100) {0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0=
xff, 0x0, 0x24, 0x4d, 0x54, 0xa, 0x1, 0x1, 0x1, 0x1, 0x23, 0x9, 0x1, 0x2, 0=
x80, 0x1e, 0x16, 0x0, 0xea, 0xd, 0xfb, 0xa0, 0x57, 0x47, 0x98, 0x27, 0x12, =
0x4d, 0x51, 0xa1, 0x8, 0x0, 0x81, 0x80, 0xa9, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x48, 0x3f, 0x40, 0x30, 0x62, 0xb0, 0x=
32, 0x40, 0x40, 0xc0, 0x14, 0x0, 0x30, 0xe4, 0x10, 0x0, 0x0, 0x1a, 0x0, 0x0=
, 0x0, 0xfc, 0x0, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x50, 0x61, 0x64, 0x20, 0x4=
c, 0x43, 0x44, 0x20, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x31, 0x36, 0x30, 0x30, 0x78=
, 0x31, 0x32, 0x30, 0x30, 0x20, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb1,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
            Name(EDU3, Buffer(0x80) {0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf=
f, 0x0, 0x24, 0x4d, 0x5d, 0x1a, 0x1, 0x1, 0x1, 0x1, 0x23, 0x9, 0x1, 0x2, 0x=
80, 0x1e, 0x16, 0x0, 0xea, 0xd, 0xfb, 0xa0, 0x57, 0x47, 0x98, 0x27, 0x12, 0=
x4d, 0x51, 0xa1, 0x8, 0x0, 0x81, 0x80, 0xa9, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x48, 0x3f, 0x40, 0x30, 0x62, 0xb0, 0x3=
2, 0x40, 0x40, 0xc0, 0x14, 0x0, 0x30, 0xe4, 0x10, 0x0, 0x0, 0x1a, 0x0, 0x0,=
 0x0, 0xfc, 0x0, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x50, 0x61, 0x64, 0x20, 0x4c=
, 0x43, 0x44, 0x20, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x31, 0x36, 0x30, 0x30, 0x78,=
 0x31, 0x32, 0x30, 0x30, 0x20, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x98 })
            Name(EDU4, Buffer(0x0100) {0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0=
xff, 0x0, 0x24, 0x4d, 0x5d, 0x1a, 0x1, 0x1, 0x1, 0x1, 0x23, 0x9, 0x1, 0x2, =
0x80, 0x1e, 0x16, 0x0, 0xea, 0xd, 0xfb, 0xa0, 0x57, 0x47, 0x98, 0x27, 0x12,=
 0x4d, 0x51, 0xa1, 0x8, 0x0, 0x81, 0x80, 0xa9, 0x40, 0x0, 0x0, 0x0, 0x0, 0x=
0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x48, 0x3f, 0x40, 0x30, 0x62, 0xb0, 0=
x32, 0x40, 0x40, 0xc0, 0x14, 0x0, 0x30, 0xe4, 0x10, 0x0, 0x0, 0x1a, 0x0, 0x=
0, 0x0, 0xfc, 0x0, 0x54, 0x68, 0x69, 0x6e, 0x6b, 0x50, 0x61, 0x64, 0x20, 0x=
4c, 0x43, 0x44, 0x20, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x31, 0x36, 0x30, 0x30, 0x7=
8, 0x31, 0x32, 0x30, 0x30, 0x20, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x98=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
            Name(EDT1, Buffer(0x80) {0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf=
f, 0x0, 0xc1, 0xd0, 0xfe, 0x9, 0x1, 0x1, 0x1, 0x1, 0x23, 0x9, 0x1, 0x2, 0x0=
, 0x0, 0x0, 0x0, 0xea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x=
a1, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x31, 0x58, 0x1c, 0x20, 0x28, 0x80, =
0x1, 0x0, 0xf6, 0xb8, 0x0, 0x0, 0x0, 0x1a, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x54, =
0x68, 0x69, 0x6e, 0x6b, 0x50, 0x61, 0x64, 0x20, 0x54, 0x56, 0x20, 0x20, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x59 })
            Name(EDT2, Buffer(0x0100) {0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0=
xff, 0x0, 0xc1, 0xd0, 0xfe, 0x9, 0x1, 0x1, 0x1, 0x1, 0x23, 0x9, 0x1, 0x2, 0=
x0, 0x0, 0x0, 0x0, 0xea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, =
0xa1, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x31, 0x58, 0x1c, 0x20, 0x28, 0x80=
, 0x1, 0x0, 0xf6, 0xb8, 0x0, 0x0, 0x0, 0x1a, 0x0, 0x0, 0x0, 0xfc, 0x0, 0x54=
, 0x68, 0x69, 0x6e, 0x6b, 0x50, 0x61, 0x64, 0x20, 0x54, 0x56, 0x20, 0x20, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x59, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x0 })
            Mutex(MDGS, 7)
            Name(VDEE, 0x1)
            Name(VDDA, Buffer(0x2) { })
            CreateBitField(VDDA, 0x0, VUPC)
            CreateBitField(VDDA, 0x1, VQDL)
            CreateBitField(VDDA, 0x2, VQDC)
            CreateBitField(VDDA, 0x3, VQDT)
            CreateBitField(VDDA, 0x4, VQDD)
            CreateBitField(VDDA, 0x5, VSDL)
            CreateBitField(VDDA, 0x6, VSDC)
            CreateBitField(VDDA, 0x7, VSDT)
            CreateBitField(VDDA, 0x8, VSDD)
            CreateBitField(VDDA, 0xa, MSWT)
            CreateBitField(VDDA, 0xb, VWST)
            Device(VID_) {
                Name(_ADR, 0x0)
                OperationRegion(VPCG, PCI_Config, 0x0, 0x0100)
                Field(VPCG, DWordAcc, NoLock, Preserve) {
                    Offset(0x54),
                    VPWR,	32
                }
                Name(_S3D, 0x3)
                Method(_INI) {
                    \VUPS(0x2)
                    Store(\VCDL, VQDL)
                    Store(\VCDC, VQDC)
                    Store(\VCDT, VQDT)
                    Store(\VCDD, VQDD)
                }
                Method(VSWT) {
                    \VUPS(0x80)
                    If(LNot(\VCIN)) {
                        Store(0x0, Local2)
                        If(\VCDT) {
                            Or(0x4, Local2, Local2)
                        }
                        If(\VCDD) {
                            Or(0x8, Local2, Local2)
                        }
                        Store(0x1, Local0)
                        If(\VCDL) {
                            Add(0x1, Local0, Local0)
                        }
                        If(\VCDC) {
                            Add(0x2, Local0, Local0)
                        }
                        If(LEqual(0x4, Local0)) {
                            Store(0x1, Local1)
                        }
                        Else {
                            Store(Local0, Local1)
                        }
                        Or(Local2, Local1, Local1)
                        ASWT(Local1, 0x1)
                    }
                }
                Method(VLOC, 1) {
                    \VSLD(Arg0)
                    If(LEqual(VPWR, 0x0)) {
                        If(Arg0) {
                            Store(\VEVT(0x1), Local0)
                        }
                        Else {
                            Store(\VEVT(0x2), Local0)
                        }
                        And(0xf, Local0, Local1)
                        If(Local1) {
                            ASWT(Local1, 0x0)
                        }
                    }
                }
                Method(_DOS, 1) {
                    If(LEqual(Arg0, 0x2)) {
                        Store(0x1, Local0)
                        While(Local0) {
                            Acquire(MDGS, 0xffff)
                            If(LEqual(0x0, MSWT)) {
                                Store(0x1, MSWT)
                                Store(0x0, Local0)
                                Store(Arg0, VDEE)
                            }
                            Release(MDGS)
                            Sleep(0x1)
                        }
                    }
                    Else {
                        Acquire(MDGS, 0xffff)
                        If(LEqual(VDEE, 0x2)) {
                            Store(0x0, MSWT)
                        }
                        If(LGreater(Arg0, 0x2)) {
                            Store(0x1, VDEE)
                        }
                        Else {
                            Store(Arg0, VDEE)
                        }
                        Release(MDGS)
                    }
                }
                Method(_DOD) {
                    Return(Package(0x4) {
                        0x0110,
                        0x0100,
                        0x0200,
                        0x0210,
                    })
                }
                Method(ASWT, 2) {
                    If(LEqual(0x1, VDEE)) {
                        And(0x1, Arg1, Local1)
                        \VSDS(Arg0, Local1)
                    }
                    Else {
                        Store(0x1, Local0)
                        While(Local0) {
                            Acquire(MDGS, 0xffff)
                            If(LEqual(0x0, MSWT)) {
                                Store(0x0, Local0)
                                If(And(0x1, Arg1, )) {
                                    Store(0x1, VUPC)
                                }
                                Else {
                                    Store(0x0, VUPC)
                                }
                                If(And(0x1, Arg0, )) {
                                    Store(0x1, VQDL)
                                }
                                Else {
                                    Store(0x0, VQDL)
                                }
                                If(And(0x2, Arg0, )) {
                                    Store(0x1, VQDC)
                                }
                                Else {
                                    Store(0x0, VQDC)
                                }
                                If(And(0x4, Arg0, )) {
                                    Store(0x1, VQDT)
                                }
                                Else {
                                    Store(0x0, VQDT)
                                }
                                If(And(0x8, Arg0, )) {
                                    Store(0x1, VQDD)
                                }
                                Else {
                                    Store(0x0, VQDD)
                                }
                            }
                            Release(MDGS)
                            Sleep(0x1)
                        }
                        If(And(0x2, Arg1, )) {
                            Notify(VID_, 0x81)
                        }
                        Else {
                            Notify(VID_, 0x80)
                        }
                    }
                }
                Method(VDSW, 1) {
                    If(LEqual(VPWR, 0x0)) {
                        If(Arg0) {
                            Store(\VEVT(0x3), Local0)
                        }
                        Else {
                            Store(\VEVT(0x4), Local0)
                        }
                        And(0xf, Local0, Local1)
                        If(Local1) {
                            ASWT(Local1, 0x0)
                        }
                    }
                }
                Device(LCD0) {
                    Name(_ADR, 0x0110)
                    Method(_DCS) {
                        \VUPS(0x0)
                        If(\VCDL) {
                            Return(0x1f)
                        }
                        Else {
                            Return(0x1d)
                        }
                    }
                    Method(_DDC, 1) {
                        If(LEqual(Arg0, 0x1)) {
                            Return(EDX1)
                        }
                        Else {
                            If(LEqual(Arg0, 0x2)) {
                                Return(EDX2)
                            }
                        }
                        Return(0x0)
                    }
                    Method(_DGS) {
                        Return(VQDL)
                    }
                    Method(_DSS, 1) {
                        And(Arg0, 0x1, VSDL)
                        If(And(Arg0, 0x80000000, )) {
                            If(And(Arg0, 0x40000000, )) {
                                DSWT(0x2)
                            }
                            Else {
                                DSWT(0x1)
                            }
                        }
                    }
                }
                Device(CRT0) {
                    Name(_ADR, 0x0100)
                    Method(_DCS) {
                        \VUPS(0x1)
                        If(\VCSS) {
                            If(\VCDC) {
                                Return(0x1f)
                            }
                            Else {
                                Return(0x1d)
                            }
                        }
                        Else {
                            If(\VCDC) {
                                Return(0xf)
                            }
                            Else {
                                Return(0xd)
                            }
                        }
                    }
                    Method(_DDC, 1) {
                        \VDDC()
                        If(LEqual(Arg0, 0x1)) {
                            Return(\DDC1)
                        }
                        Else {
                            If(LEqual(Arg0, 0x2)) {
                                Return(\DDC2)
                            }
                            Else {
                                Return(0x0)
                            }
                        }
                    }
                    Method(_DGS) {
                        Return(VQDC)
                    }
                    Method(_DSS, 1) {
                        And(Arg0, 0x1, VSDC)
                        If(And(Arg0, 0x80000000, )) {
                            If(And(Arg0, 0x40000000, )) {
                                DSWT(0x2)
                            }
                            Else {
                                DSWT(0x1)
                            }
                        }
                    }
                }
                Device(TV0_) {
                    Name(_ADR, 0x0200)
                    Method(_DCS) {
                        \VUPS(0x0)
                        If(\VCDT) {
                            Return(0x1f)
                        }
                        Else {
                            Return(0x1d)
                        }
                    }
                    Method(_DDC, 1) {
                        If(LEqual(Arg0, 0x1)) {
                            Return(EDT1)
                        }
                        Else {
                            If(LEqual(Arg0, 0x2)) {
                                Return(EDT2)
                            }
                        }
                        Return(0x0)
                    }
                    Method(_DGS) {
                        Return(VQDT)
                    }
                    Method(_DSS, 1) {
                        And(Arg0, 0x1, VSDT)
                        If(And(Arg0, 0x80000000, )) {
                            If(And(Arg0, 0x40000000, )) {
                                DSWT(0x2)
                            }
                            Else {
                                DSWT(0x1)
                            }
                        }
                    }
                }
                Device(DVI0) {
                    Name(_ADR, 0x0210)
                    Method(_DCS) {
                        \VUPS(0x0)
                        If(\VCDD) {
                            Return(0x1f)
                        }
                        Else {
                            Return(0x1d)
                        }
                    }
                    Method(_DGS) {
                        Return(VQDD)
                    }
                    Method(_DSS, 1) {
                        And(Arg0, 0x1, VSDD)
                        If(And(Arg0, 0x80000000, )) {
                            If(And(Arg0, 0x40000000, )) {
                                DSWT(0x2)
                            }
                            Else {
                                DSWT(0x1)
                            }
                        }
                    }
                }
                Method(DSWT, 1) {
                    If(VSDL) {
                        Store(0x1, Local0)
                    }
                    Else {
                        Store(0x0, Local0)
                    }
                    If(VSDC) {
                        Or(0x2, Local0, Local0)
                    }
                    If(Local0) {
                        If(VUPC) {
                            \VSDS(Local0, Arg0)
                        }
                    }
                    Else {
                        Noop
                    }
                }
            }
        }
        Device(PCI1) {
            Name(_ADR, 0x001e0000)
            Name(_S3D, 0x2)
            Name(_PRT, Package(0x5) {
                Package(0x4) {
                    0x0009ffff,
                    0x0,
                    \_SB_.LNKB,
                    0x0,
                },
                Package(0x4) {
                    0x0003ffff,
                    0x0,
                    \_SB_.LNKF,
                    0x0,
                },
                Package(0x4) {
                    0x0008ffff,
                    0x0,
                    \_SB_.LNKE,
                    0x0,
                },
                Package(0x4) {
                    0x0007ffff,
                    0x0,
                    \_SB_.LNKE,
                    0x0,
                },
                Package(0x4) {
                    0x0007ffff,
                    0x1,
                    \_SB_.LNKC,
                    0x0,
                },
            })
            Device(CBS0) {
                Name(_ADR, 0x00090000)
                Name(_S3D, 0x3)
                Name(_SUN, 0x1)
            }
            Device(OBLN) {
                Name(_ADR, 0x00080000)
                Name(_PRW, Package(0x2) {
                    0xb,
                    0x5,
                })
                Method(_PSW, 1) {
                    Noop
                }
            }
        }
        Device(IDE0) {
            Name(_ADR, 0x001f0001)
            Name(_S3D, 0x3)
            OperationRegion(IDCS, PCI_Config, 0x0, 0x0100)
            Field(IDCS, DWordAcc, NoLock, Preserve) {
                Offset(0x40),
                PFT0,	1,
                PIE0,	1,
                PPE0,	1,
                PDT0,	1,
                PFT1,	1,
                PIE1,	1,
                PPE1,	1,
                PDT1,	1,
                PRC0,	2,
                ,	2,
                PIS0,	2,
                PSIE,	1,
                PIDE,	1,
                SFT0,	1,
                SIE0,	1,
                SPE0,	1,
                SDT0,	1,
                SFT1,	1,
                SIE1,	1,
                SPE1,	1,
                SDT1,	1,
                SRC0,	2,
                ,	2,
                SIS0,	2,
                SSIE,	1,
                SIDE,	1,
                PRC1,	2,
                PIS1,	2,
                SRC1,	2,
                SIS1,	2,
                Offset(0x48),
                PSD0,	1,
                PSD1,	1,
                SSD0,	1,
                SSD1,	1,
                Offset(0x4a),
                PCT0,	2,
                ,	2,
                PCT1,	2,
                Offset(0x4b),
                SCT0,	2,
                ,	2,
                SCT1,	2,
                Offset(0x4c),
                Offset(0x54),
                PCB0,	1,
                PCB1,	1,
                SCB0,	1,
                SCB1,	1,
                PCR0,	1,
                PCR1,	1,
                SCR0,	1,
                SCR1,	1,
                ,	2,
                WRPP,	1,
                ,	1,
                FPB0,	1,
                FPB1,	1,
                FSB0,	1,
                FSB1,	1,
                PSIG,	2,
                SSIG,	2
            }
            Field(IDCS, DWordAcc, NoLock, Preserve) {
                Offset(0x40),
                PTI0,	4,
                PTI1,	4,
                Offset(0x42),
                STI0,	4,
                STI1,	4
            }
            Method(GPCT, 4) {
                If(LNot(Or(Arg0, Arg1, ))) {
                    Return(0x0)
                }
                If(LAnd(LNot(Arg0), Arg1)) {
                    Return(0x0384)
                }
                Return(Multiply(Subtract(0x9, Add(Arg2, Arg3, ), ), 0x1e, ))
            }
            Method(GDCT, 4) {
                If(LNot(Arg0)) {
                    Return(0x0)
                }
                If(Arg1) {
                    Return(0x14)
                }
                If(Arg2) {
                    Return(Multiply(Subtract(0x4, Arg3, ), 0xf, ))
                }
                Return(Multiply(Subtract(0x4, Arg3, ), 0x1e, ))
            }
            Method(MTIM, 2) {
                Store(0x0, Local0)
                If(Arg0) {
                    Or(Local0, 0x1, Local0)
                }
                If(LNot(LLess(Arg0, 0x2))) {
                    Or(Local0, 0x2, Local0)
                }
                If(LNot(Arg1)) {
                    Or(Local0, 0x4, Local0)
                }
                If(LNot(Arg0)) {
                    Or(Local0, 0x8, Local0)
                }
                Return(Local0)
            }
            Method(MISP, 1) {
                If(LNot(Arg0)) {
                    Return(0x0)
                }
                If(LNot(LGreater(Arg0, 0x2))) {
                    Return(0x1)
                }
                Return(0x2)
            }
            Method(MRCT, 1) {
                If(LNot(LGreater(Arg0, 0x2))) {
                    Return(0x0)
                }
                If(LEqual(Arg0, 0x3)) {
                    Return(0x1)
                }
                Return(0x3)
            }
            Device(PRIM) {
                Name(_ADR, 0x0)
                Name(BGTM, Buffer(0x14) { })
                CreateDWordField(BGTM, 0x0, GTP0)
                CreateDWordField(BGTM, 0x4, GTD0)
                CreateDWordField(BGTM, 0x8, GTP1)
                CreateDWordField(BGTM, 0xc, GTD1)
                CreateDWordField(BGTM, 0x10, GTMF)
                Name(BPI0, 0x0)
                Name(BDM0, 0x0)
                Name(BPI1, 0x0)
                Name(BDM1, 0x0)
                Method(_GTM) {
                    Store(GPCT(PFT0, PDT0, PIS0, PRC0), GTP0)
                    Store(GDCT(PSD0, FPB0, PCB0, PCT0), GTD0)
                    If(LNot(GTD0)) {
                        Store(GTP0, GTD0)
                    }
                    If(PSIE) {
                        Store(GPCT(PFT1, PDT1, PIS1, PRC1), GTP1)
                        Store(GDCT(PSD1, FPB1, PCB1, PCT1), GTD1)
                        If(LNot(GTD1)) {
                            Store(GTP1, GTD1)
                        }
                    }
                    Else {
                        Store(0x0, GTP1)
                        Store(0x0, GTD1)
                    }
                    Store(0x0, GTMF)
                    If(PSD0) {
                        Or(GTMF, 0x1, GTMF)
                    }
                    If(PIE0) {
                        Or(GTMF, 0x2, GTMF)
                    }
                    If(PSD1) {
                        Or(GTMF, 0x4, GTMF)
                    }
                    If(PIE1) {
                        Or(GTMF, 0x8, GTMF)
                    }
                    Or(GTMF, 0x10, GTMF)
                    Return(BGTM)
                }
                Method(_STM, 3) {
                    CreateDWordField(Arg0, 0x0, STP0)
                    CreateDWordField(Arg0, 0x4, STD0)
                    CreateDWordField(Arg0, 0x8, STP1)
                    CreateDWordField(Arg0, 0xc, STD1)
                    CreateDWordField(Arg0, 0x10, STMF)
                    If(LEqual(SizeOf(Arg1), 0x0200)) {
                        CreateWordField(Arg1, 0x0, M000)
                        CreateWordField(Arg1, 0x62, M049)
                        CreateWordField(Arg1, 0x66, M051)
                        CreateWordField(Arg1, 0x6a, M053)
                        CreateWordField(Arg1, 0x7c, M062)
                        CreateWordField(Arg1, 0x7e, M063)
                        CreateWordField(Arg1, 0x80, M064)
                        CreateWordField(Arg1, 0x82, M065)
                        CreateWordField(Arg1, 0x88, M068)
                        CreateWordField(Arg1, 0xb0, M088)
                        If(\W98F) {
                            Store(\UUDM(M053, M088), STD0)
                            If(STD0) {
                                Or(STMF, 0x1, STMF)
                            }
                            Else {
                                And(STMF, 0xfe, STMF)
                            }
                            Store(\UMDM(M053, M063, M062, M065), STP0)
                            If(LNot(STP0)) {
                                Store(\UPIO(M053, M064, M051, M068), STP0)
                            }
                            If(And(M049, 0x0800, )) {
                                Or(STMF, 0x2, STMF)
                            }
                            Else {
                                And(STMF, 0xfd, STMF)
                            }
                        }
                        Store(\DPIO(STP0, And(STMF, 0x2, )), Local0)
                        Store(\DUDM(STD0, And(STMF, 0x1, )), Local1)
                        Store(MTIM(Local0, And(M000, 0x8000, )), PTI0)
                        Store(MISP(Local0), PIS0)
                        Store(MRCT(Local0), PRC0)
                        If(LEqual(Local1, 0xff)) {
                            Store(0x0, PSD0)
                        }
                        Else {
                            Store(0x1, PSD0)
                            If(LNot(LGreater(Local1, 0x2))) {
                                Store(Local1, PCT0)
                            }
                            Else {
                                If(And(Local1, 0x1, )) {
                                    Store(0x1, PCT0)
                                }
                                Else {
                                    Store(0x2, PCT0)
                                }
                            }
                            If(LNot(LLess(Local1, 0x3))) {
                                Store(0x1, PCB0)
                            }
                            Else {
                                Store(0x0, PCB0)
                            }
                            If(LEqual(Local1, 0x5)) {
                                Store(0x1, FPB0)
                            }
                            Else {
                                Store(0x0, FPB0)
                            }
                            Store(0x1, PCR0)
                        }
                        Store(\FDMA(Local0, Local1), BDM0)
                        Store(\FPIO(Local0), BPI0)
                    }
                    If(LEqual(SizeOf(Arg2), 0x0200)) {
                        CreateWordField(Arg2, 0x0, S000)
                        CreateWordField(Arg2, 0x62, S049)
                        CreateWordField(Arg2, 0x66, S051)
                        CreateWordField(Arg2, 0x6a, S053)
                        CreateWordField(Arg2, 0x7c, S062)
                        CreateWordField(Arg2, 0x7e, S063)
                        CreateWordField(Arg2, 0x80, S064)
                        CreateWordField(Arg2, 0x82, S065)
                        CreateWordField(Arg2, 0x88, S068)
                        CreateWordField(Arg2, 0xb0, S088)
                        If(\W98F) {
                            Store(\UUDM(S053, S088), STD1)
                            If(STD1) {
                                Or(STMF, 0x4, STMF)
                            }
                            Else {
                                And(STMF, 0xfb, STMF)
                            }
                            Store(\UMDM(S053, S063, S062, S065), STP1)
                            If(LNot(STP1)) {
                                Store(\UPIO(S053, S064, S051, S068), STP1)
                            }
                            If(And(S049, 0x0800, )) {
                                Or(STMF, 0x8, STMF)
                            }
                            Else {
                                And(STMF, 0xf7, STMF)
                            }
                        }
                        Store(\DPIO(STP1, And(STMF, 0x8, )), Local0)
                        Store(\DUDM(STD1, And(STMF, 0x4, )), Local1)
                        If(STP1) {
                            Store(MTIM(Local0, And(S000, 0x8000, )), PTI1)
                            If(And(STMF, 0x10, )) {
                                Store(MISP(Local0), PIS1)
                                Store(MRCT(Local0), PRC1)
                                Store(0x1, PSIE)
                            }
                        }
                        Else {
                            Store(0x0, PTI1)
                            Store(0x0, PSIE)
                        }
                        If(LEqual(Local1, 0xff)) {
                            Store(0x0, PSD1)
                        }
                        Else {
                            Store(0x1, PSD1)
                            If(LNot(LGreater(Local1, 0x2))) {
                                Store(Local1, PCT1)
                            }
                            Else {
                                If(And(Local1, 0x1, )) {
                                    Store(0x1, PCT1)
                                }
                                Else {
                                    Store(0x2, PCT1)
                                }
                            }
                            If(LNot(LLess(Local1, 0x3))) {
                                Store(0x1, PCB1)
                            }
                            Else {
                                Store(0x0, PCB1)
                            }
                            If(LEqual(Local1, 0x5)) {
                                Store(0x1, FPB1)
                            }
                            Else {
                                Store(0x0, FPB1)
                            }
                            Store(0x1, PCR1)
                        }
                        Store(\FDMA(Local0, Local1), BDM1)
                        Store(\FPIO(Local0), BPI1)
                    }
                }
                Device(MSTR) {
                    Name(_ADR, 0x0)
                    Name(HDTF, Buffer(0x1c) {0x2, 0x0, 0x0, 0x0, 0x0, 0xa0,=
 0xef, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xf5, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, =
0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef })
                    CreateByteField(HDTF, 0xf, HDMA)
                    CreateByteField(HDTF, 0x16, HPIO)
                    Name(IDTF, Buffer(0xe) {0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, =
0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef })
                    CreateByteField(IDTF, 0x1, IDMA)
                    CreateByteField(IDTF, 0x8, IPIO)
                    Name(DDTF, Buffer(0x1c) {0x3, 0x0, 0x0, 0x0, 0x0, 0xa0,=
 0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa0, =
0xe3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xe3 })
                    CreateByteField(DDTF, 0x1, DDMA)
                    CreateByteField(DDTF, 0x8, DPIO)
                    CreateByteField(DDTF, 0xf, DTAT)
                    CreateByteField(DDTF, 0x16, DTFT)
                    Method(_GTF) {
                        Store(^^BDM0, HDMA)
                        Store(^^BPI0, HPIO)
                        Return(HDTF)
                    }
                }
                Device(SLAV) {
                    Name(_ADR, 0x1)
                    Name(_SUN, 0x1)
                    Name(HDTF, Buffer(0x1c) {0x2, 0x0, 0x0, 0x0, 0x0, 0xb0,=
 0xef, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xf5, 0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, =
0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xef })
                    CreateByteField(HDTF, 0xf, HDMA)
                    CreateByteField(HDTF, 0x16, HPIO)
                    Name(IDTF, Buffer(0xe) {0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, =
0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xef })
                    CreateByteField(IDTF, 0x1, IDMA)
                    CreateByteField(IDTF, 0x8, IPIO)
                    Name(DDTF, Buffer(0x1c) {0x3, 0x0, 0x0, 0x0, 0x0, 0xb0,=
 0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xef, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb0, =
0xe3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xe3 })
                    CreateByteField(DDTF, 0x1, DDMA)
                    CreateByteField(DDTF, 0x8, DPIO)
                    CreateByteField(DDTF, 0xf, DTAT)
                    CreateByteField(DDTF, 0x16, DTFT)
                    Method(_GTF) {
                        Store(\_SB_.PCI0.LPC_.EC__.BGID(0x1), Local0)
                        If(LEqual(Local0, 0x6)) {
                            Store(^^BDM1, HDMA)
                            Store(^^BPI1, HPIO)
                            Return(HDTF)
                        }
                        Store(Zero, Local1)
                        If(LEqual(Local0, 0x3)) {
                            Store(One, Local1)
                        }
                        If(LEqual(Local0, 0xa)) {
                            Store(One, Local1)
                        }
                        If(LEqual(Local0, 0xb)) {
                            Store(One, Local1)
                        }
                        If(Local1) {
                            Store(\CDFL, DTFT)
                            Store(\CDAH, DTAT)
                            Store(^^BDM1, DDMA)
                            Store(^^BPI1, DPIO)
                            Return(DDTF)
                        }
                        Else {
                            Store(^^BDM1, IDMA)
                            Store(^^BPI1, IPIO)
                            Return(IDTF)
                        }
                    }
                }
            }
            Device(SCND) {
                Name(_ADR, 0x1)
                Name(BGTM, Buffer(0x14) { })
                CreateDWordField(BGTM, 0x0, GTP0)
                CreateDWordField(BGTM, 0x4, GTD0)
                CreateDWordField(BGTM, 0x8, GTP1)
                CreateDWordField(BGTM, 0xc, GTD1)
                CreateDWordField(BGTM, 0x10, GTMF)
                Name(BPI0, 0x0)
                Name(BDM0, 0x0)
                Name(BPI1, 0x0)
                Name(BDM1, 0x0)
                Method(_GTM) {
                    Store(GPCT(SFT0, SDT0, SIS0, SRC0), GTP0)
                    Store(GDCT(SSD0, FSB0, SCB0, SCT0), GTD0)
                    If(LNot(GTD0)) {
                        Store(GTP0, GTD0)
                    }
                    Store(0x0, GTP1)
                    Store(0x0, GTD1)
                    Store(0x0, GTMF)
                    If(SSD0) {
                        Or(GTMF, 0x1, GTMF)
                    }
                    If(SIE0) {
                        Or(GTMF, 0x2, GTMF)
                    }
                    Or(GTMF, 0x10, GTMF)
                    Return(BGTM)
                }
                Method(_STM, 3) {
                    CreateDWordField(Arg0, 0x0, STP0)
                    CreateDWordField(Arg0, 0x4, STD0)
                    CreateDWordField(Arg0, 0x8, STP1)
                    CreateDWordField(Arg0, 0xc, STD1)
                    CreateDWordField(Arg0, 0x10, STMF)
                    If(LEqual(SizeOf(Arg1), 0x0200)) {
                        CreateWordField(Arg1, 0x0, M000)
                        CreateWordField(Arg1, 0x62, M049)
                        CreateWordField(Arg1, 0x66, M051)
                        CreateWordField(Arg1, 0x6a, M053)
                        CreateWordField(Arg1, 0x7c, M062)
                        CreateWordField(Arg1, 0x7e, M063)
                        CreateWordField(Arg1, 0x80, M064)
                        CreateWordField(Arg1, 0x82, M065)
                        CreateWordField(Arg1, 0x88, M068)
                        CreateWordField(Arg1, 0xb0, M088)
                        If(\W98F) {
                            Store(\UUDM(M053, M088), STD0)
                            If(STD0) {
                                Or(STMF, 0x1, STMF)
                            }
                            Else {
                                And(STMF, 0xfe, STMF)
                            }
                            Store(\UMDM(M053, M063, M062, M065), STP0)
                            If(LNot(STP0)) {
                                Store(\UPIO(M053, M064, M051, M068), STP0)
                            }
                            If(And(M049, 0x0800, )) {
                                Or(STMF, 0x2, STMF)
                            }
                            Else {
                                And(STMF, 0xfd, STMF)
                            }
                        }
                        Store(\DPIO(STP0, And(STMF, 0x2, )), Local0)
                        Store(\DUDM(STD0, And(STMF, 0x1, )), Local1)
                        Store(MTIM(Local0, And(M000, 0x8000, )), STI0)
                        Store(MISP(Local0), SIS0)
                        Store(MRCT(Local0), SRC0)
                        If(LEqual(Local1, 0xff)) {
                            Store(0x0, SSD0)
                        }
                        Else {
                            Store(0x1, SSD0)
                            If(LNot(LGreater(Local1, 0x2))) {
                                Store(Local1, SCT0)
                            }
                            Else {
                                If(And(Local1, 0x1, )) {
                                    Store(0x1, SCT0)
                                }
                                Else {
                                    Store(0x2, SCT0)
                                }
                            }
                            If(LNot(LLess(Local1, 0x3))) {
                                Store(0x1, SCB0)
                            }
                            Else {
                                Store(0x0, SCB0)
                            }
                            If(LEqual(Local1, 0x5)) {
                                Store(0x1, FSB0)
                            }
                            Else {
                                Store(0x0, FSB0)
                            }
                            Store(0x1, SCR0)
                        }
                        Store(\FDMA(Local0, Local1), BDM0)
                        Store(\FPIO(Local0), BPI0)
                    }
                }
                Device(MSTR) {
                    Name(_ADR, 0x0)
                    Name(_SUN, 0x2)
                    Name(HDTF, Buffer(0x1c) {0x2, 0x0, 0x0, 0x0, 0x0, 0xa0,=
 0xef, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xf5, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, =
0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef })
                    CreateByteField(HDTF, 0xf, HDMA)
                    CreateByteField(HDTF, 0x16, HPIO)
                    Name(IDTF, Buffer(0xe) {0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, =
0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef })
                    CreateByteField(IDTF, 0x1, IDMA)
                    CreateByteField(IDTF, 0x8, IPIO)
                    Name(DDTF, Buffer(0x1c) {0x3, 0x0, 0x0, 0x0, 0x0, 0xa0,=
 0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa0, =
0xe3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xe3 })
                    CreateByteField(DDTF, 0x1, DDMA)
                    CreateByteField(DDTF, 0x8, DPIO)
                    CreateByteField(DDTF, 0xf, DTAT)
                    CreateByteField(DDTF, 0x16, DTFT)
                    Method(_GTF) {
                        Store(\_SB_.PCI0.LPC_.EC__.BGID(0x0), Local0)
                        If(LEqual(Local0, 0x6)) {
                            Store(^^BDM0, HDMA)
                            Store(^^BPI0, HPIO)
                            Return(HDTF)
                        }
                        Store(Zero, Local1)
                        If(LEqual(Local0, 0x3)) {
                            Store(One, Local1)
                        }
                        If(LEqual(Local0, 0xa)) {
                            Store(One, Local1)
                        }
                        If(LEqual(Local0, 0xb)) {
                            Store(One, Local1)
                        }
                        If(Local1) {
                            Store(\CDFL, DTFT)
                            Store(\CDAH, DTAT)
                            Store(^^BDM0, DDMA)
                            Store(^^BPI0, DPIO)
                            Return(DDTF)
                        }
                        Else {
                            Store(^^BDM0, IDMA)
                            Store(^^BPI0, IPIO)
                            Return(IDTF)
                        }
                    }
                }
            }
        }
        Device(USB0) {
            Name(_ADR, 0x001d0000)
            Name(_S3D, 0x2)
            OperationRegion(U0CS, PCI_Config, 0xc4, 0x4)
            Field(U0CS, DWordAcc, NoLock, Preserve) {
                U0EN,	2,
                Offset(0x4)
            }
            Name(_PR0, Package(0x1) {
                \_SB_.PCI0.LPC_.EC__.PUBS,
            })
            Name(_PR1, Package(0x1) {
                \_SB_.PCI0.LPC_.EC__.PUBS,
            })
            Name(_PR2, Package(0x1) {
                \_SB_.PCI0.LPC_.EC__.PUBS,
            })
            Name(_PRW, Package(0x3) {
                0x3,
                0x3,
                \_SB_.PCI0.LPC_.EC__.PUBS,
            })
            Method(_PSW, 1) {
                If(Arg0) {
                    Store(0x3, U0EN)
                }
                Else {
                    Store(0x0, U0EN)
                }
            }
        }
        Device(USB1) {
            Name(_ADR, 0x001d0001)
            Name(_S3D, 0x2)
            OperationRegion(U1CS, PCI_Config, 0xc4, 0x4)
            Field(U1CS, DWordAcc, NoLock, Preserve) {
                U1EN,	2,
                Offset(0x4)
            }
            Name(_PR0, Package(0x1) {
                \_SB_.PCI0.LPC_.EC__.PUBS,
            })
            Name(_PR1, Package(0x1) {
                \_SB_.PCI0.LPC_.EC__.PUBS,
            })
            Name(_PR2, Package(0x1) {
                \_SB_.PCI0.LPC_.EC__.PUBS,
            })
            Name(_PRW, Package(0x3) {
                0x4,
                0x3,
                \_SB_.PCI0.LPC_.EC__.PUBS,
            })
            Method(_PSW, 1) {
                If(Arg0) {
                    Store(0x3, U1EN)
                }
                Else {
                    Store(0x0, U1EN)
                }
            }
        }
        Device(USB2) {
            Name(_ADR, 0x001d0002)
            Name(_S3D, 0x2)
            OperationRegion(U2CS, PCI_Config, 0xc4, 0x4)
            Field(U2CS, DWordAcc, NoLock, Preserve) {
                U2EN,	2,
                Offset(0x4)
            }
            Name(_PRW, Package(0x2) {
                0xc,
                0x3,
            })
            Method(_PSW, 1) {
                If(Arg0) {
                    Store(0x3, U2EN)
                }
                Else {
                    Store(0x0, U2EN)
                }
            }
        }
        Device(AC97) {
            Name(_ADR, 0x001f0006)
            Name(_S3D, 0x3)
            Name(_PRW, Package(0x2) {
                0x5,
                0x4,
            })
            Method(_PSW, 1) {
                Noop
            }
        }
    }
    Scope(\_SB_.PCI0.LPC_.EC__) {
        Method(_Q51) {
            \CMOS(0x0)
        }
        Method(_Q52) {
            \CMOS(0x1)
        }
        Method(_Q53) {
            \CMOS(0x2)
        }
    }
    Scope(\_SB_.PCI0.LPC_.EC__) {
        Method(_Q0E) {
            \CMOS(0x4)
        }
        Method(_Q0F) {
            \CMOS(0x5)
        }
    }
    Scope(\_SB_.PCI0.LPC_.EC__) {
        Method(_Q50) {
            \CMOS(0x3)
        }
    }
    Scope(\_SB_.PCI0.LPC_.EC__) {
        Method(_Q13) {
            \CMOS(0xb)
        }
    }
    Scope(\_SB_.PCI0.LPC_.EC__.HKEY) {
        Name(BTFG, 0x0)
        Method(GULP) {
            Store(0x0, Local0)
            Return(Local0)
        }
        Method(SULP, 1) {
            Return(GULP())
        }
        Method(GBDC) {
            Store(0x0, Local0)
            If(DBTH()) {
                Or(Local0, 0x1, Local0)
            }
            If(DPWS()) {
                Or(Local0, 0x2, Local0)
            }
            If(And(BTFG, 0x00010000, )) {
                Or(Local0, 0x4, Local0)
            }
            Return(Local0)
        }
        Method(SBDC, 1) {
            If(And(Arg0, 0x2, )) {
                DPWC(0x1)
            }
            Else {
                DPWC(0x0)
            }
            If(And(Arg0, 0x4, )) {
                Or(BTFG, 0x00010000, BTFG)
                \BLTH(0x2)
            }
            Else {
                And(BTFG, Not(0x00010000, ), BTFG)
                \BLTH(0x3)
            }
            Return(GBDC())
        }
        Method(BTIN) {
            If(\BLTH(0x1)) {
                Or(BTFG, 0x00010000, BTFG)
            }
            DATH(0x1)
        }
        Method(BTPS, 1) {
            If(LNot(And(BTFG, 0x00010000, ))) {
                If(DBTH()) {
                    DPWC(0x0)
                }
            }
            PWRS()
        }
        Method(BTWA, 1) {
            If(And(BTFG, 0x0200, )) {
                DPWC(0x1)
            }
        }
        Method(PWRS) {
            If(DPWS()) {
                Or(BTFG, 0x0200, BTFG)
            }
            Else {
                And(BTFG, Not(0x0200, ), BTFG)
            }
            Store(0x0, Local0)
            If(LAnd(DBTH(), And(BTFG, 0x0200, ))) {
                Or(Local0, 0x1, Local0)
            }
            Return(Local0)
        }
        Method(DATH, 1) {
            If(Arg0) {
                Store(0x0, \_SB_.PCI0.LPC_.GL34)
            }
            Else {
                Store(0x1, \_SB_.PCI0.LPC_.GL34)
            }
        }
        Method(DBTH) {
            Store(0x1, Local0)
            If(\_SB_.PCI0.LPC_.GL35) {
                Store(0x0, Local0)
            }
            Return(Local0)
        }
        Method(DPWS) {
            Return(\_SB_.PCI0.LPC_.GL36)
        }
        Method(DPWC, 1) {
            If(Arg0) {
                Store(0x1, \_SB_.PCI0.LPC_.GL36)
            }
            Else {
                Store(0x0, \_SB_.PCI0.LPC_.GL36)
            }
        }
    }
    Scope(\_SB_.PCI0.LPC_.EC__) {
        Method(_Q7E) {
            \CMOS(0xf)
        }
        Method(_Q7F) {
            \CMOS(0x10)
        }
        Method(_Q7D) {
            \CMOS(0x11)
        }
    }
}
Method(NARI, 2) {
    SMI_(0x0, 0x9, Arg0, Arg1, 0x0)
}
Method(KCMD, 2) {
    Return(SMI_(0x0, 0xc, Arg0, Arg1, 0x0))
}
Method(GBPI, 1) {
    Return(SMI_(0x0, 0xd, Arg0, 0x0, 0x0))
}
Method(OEMF, 2) {
    Return(SMI_(0x0, 0xe, Arg0, Arg1, 0x0))
}
Method(TRPW) {
    SMI_(0x5, 0x2, 0x0, 0x0, 0x0)
}
Name(\_S0_, Package(0x4) {
    0x0,
    0x0,
    0x0,
    0x0,
})
Name(\_S3_, Package(0x4) {
    0x5,
    0x5,
    0x0,
    0x0,
})
Name(\_S4_, Package(0x4) {
    0x6,
    0x6,
    0x0,
    0x0,
})
Name(\_S5_, Package(0x4) {
    0x7,
    0x7,
    0x0,
    0x0,
})
Method(\_PTS, 1) {
    Store(0x1, Local0)
    If(LEqual(Arg0, \SPS_)) {
        Store(0x0, Local0)
    }
    If(LOr(LEqual(Arg0, 0x0), LNot(LLess(Arg0, 0x6)))) {
        Store(0x0, Local0)
    }
    If(Local0) {
        Store(Arg0, \SPS_)
        \_SB_.PCI0.LPC_.EC__.HKEY.MHKE(0x0)
        If(LEqual(Arg0, 0x3)) {
            \TRAP()
        }
        If(LEqual(Arg0, 0x4)) {
            If(\SPEN) {
                \STEP(0x7)
            }
            \TRAP()
        }
        If(LEqual(Arg0, 0x5)) {
            \TRAP()
        }
        If(LNot(LEqual(Arg0, 0x5))) {
            If(\W98F) {
                \CBRI()
            }
        }
        \_SB_.PCI0.LPC_.EC__.HKEY.BTPS(Arg0)
    }
}
Name(WAKI, Package(0x2) {
    0x0,
    0x0,
})
Method(\_WAK, 1) {
    If(LOr(LEqual(Arg0, 0x0), LNot(LLess(Arg0, 0x5)))) {
        Return(WAKI)
    }
    Store(0x0, \SPS_)
    \_SB_.PCI0.LPC_.EC__.HKEY.MHKE(0x1)
    If(LOr(LEqual(Arg0, 0x1), LEqual(Arg0, 0x3))) {
        \TRPW()
    }
    If(LEqual(Arg0, 0x4)) {
        If(\W98F) {
            Notify(\_SB_.SLPB, 0x2)
        }
        If(\WMEF) {
            \_SB_.PCI0.LPC_.EC__.BEEP(0x5)
        }
        If(\SPEN) {
            \STEP(0x8)
        }
    }
    \_SB_.PCI0.LPC_.EC__.HKEY.BTWA(Arg0)
    Notify(\_TZ_.THM0, 0x80)
    \VSLD(\_SB_.LID_._LID())
    If(LAnd(\W98F, LNot(\WMEF))) {
        Notify(\_SB_.PCI0.USB0, 0x0)
        Notify(\_SB_.PCI0.USB1, 0x0)
    }
    If(LLess(Arg0, 0x4)) {
        If(LEqual(\RRBF, 0x2f)) {
            ShiftLeft(Arg0, 0x8, Local0)
            Store(Or(0x2013, Local0, ), Local0)
            \_SB_.PCI0.LPC_.EC__.HKEY.MHKQ(Local0)
        }
    }
    Store(Zero, \RRBF)
    Return(WAKI)
}
Scope(\_SI_) {
    Method(_SST, 1) {
        If(LEqual(Arg0, 0x0)) {
            \_SB_.PCI0.LPC_.EC__.LED_(0x0, 0x0)
            \_SB_.PCI0.LPC_.EC__.LED_(0x7, 0x0)
        }
        If(LEqual(Arg0, 0x1)) {
            If(LOr(\SPS_, \WNTF)) {
                \_SB_.PCI0.LPC_.EC__.BEEP(0x5)
            }
            \_SB_.PCI0.LPC_.EC__.LED_(0x0, 0x80)
            \_SB_.PCI0.LPC_.EC__.LED_(0x7, 0x0)
        }
        If(LEqual(Arg0, 0x2)) {
            \_SB_.PCI0.LPC_.EC__.LED_(0x0, 0x80)
            \_SB_.PCI0.LPC_.EC__.LED_(0x7, 0xc0)
        }
        If(LEqual(Arg0, 0x3)) {
            If(LGreater(\SPS_, 0x3)) {
                \_SB_.PCI0.LPC_.EC__.BEEP(0x7)
            }
            Else {
                If(LEqual(\SPS_, 0x3)) {
                    \_SB_.PCI0.LPC_.EC__.BEEP(0x3)
                }
                Else {
                    \_SB_.PCI0.LPC_.EC__.BEEP(0x4)
                }
            }
            If(LEqual(\SPS_, 0x3)) {
                \_SB_.PCI0.LPC_.EC__.LED_(0x0, 0x0)
            }
            Else {
                \_SB_.PCI0.LPC_.EC__.LED_(0x0, 0x80)
            }
            \_SB_.PCI0.LPC_.EC__.LED_(0x7, 0x80)
        }
        If(LEqual(Arg0, 0x4)) {
            \_SB_.PCI0.LPC_.EC__.BEEP(0x3)
            \_SB_.PCI0.LPC_.EC__.LED_(0x7, 0xc0)
        }
    }
}
Scope(\_GPE) {
    Method(_L0B) {
        Store("GPE_L0B - PME", Debug)
    }
    Method(_L1B) {
        SMI_(0x0, 0xb, 0x0, 0x0, 0x0)
    }
    Method(_L18) {
        Sleep(0x07d0)
        Store(\KCMD(0xc9, 0x0), Local0)
        Store(Local0, \RRBF)
        If(LEqual(Local0, 0x2f)) {
            ShiftLeft(Arg0, 0x8, Local0)
            Store(Or(0x2013, Local0, ), Local0)
            \_SB_.PCI0.LPC_.EC__.HKEY.MHKQ(Local0)
        }
        Notify(\_SB_.SLPB, 0x2)
    }
}
Scope(\_TZ_) {
    Name(LTMP, 0x0bb8)
    ThermalZone(THM0) {
        Name(_PSL, Package(0x1) {
            \_PR_.CPU_,
        })
        Method(_CRT) {
            Store(\TCRT, Local0)
            If(LLess(Local0, 0x0ca0)) {
                Store(0x0f5c, Local0)
            }
            If(LEqual(\_SB_.PCI0.LPC_.PRID, 0x0)) {
                Store(0x0f5c, Local0)
            }
            Return(Local0)
        }
        Method(_PSV) {
            Store(\TPSV, Local0)
            If(LLess(Local0, 0x0ca0)) {
                Store(0x0e94, Local0)
            }
            If(LEqual(\_SB_.PCI0.LPC_.PRID, 0x0)) {
                Store(0x0e94, Local0)
            }
            Return(Local0)
        }
        Method(_TMP) {
            If(LEqual(\_SB_.PCI0.LPC_.PRID, 0x0)) {
                Store(0x32, Local0)
            }
            Else {
                Store(\RBEC(0x83), Local0)
                Store(\RBEC(0xde), Local1)
                If(LOr(LEqual(Local1, 0x2), LEqual(Local1, 0x3))) {
                    Add(\TCRT, 0x1, Local0)
                    Return(Local0)
                }
            }
            Store(C2K_(Local0), LTMP)
            Return(LTMP)
        }
    }
    ThermalZone(THM1) {
        Method(_CRT) {
            Return(0x0ca0)
        }
        Method(_TMP) {
            And(\_SB_.PCI0.LPC_.EC__.THON, 0x10, Local0)
            If(Local0) {
                Return(0x0ca3)
            }
            Else {
                Return(0x0c9e)
            }
        }
    }
    Method(C2K_, 1) {
        Add(Multiply(Arg0, 0xa, ), 0x0aac, Local0)
        If(LNot(LGreater(Local0, 0x0b54))) {
            Store(LTMP, Local0)
        }
        If(LNot(LLess(Local0, 0x0f5c))) {
            Store(LTMP, Local0)
        }
        Return(Local0)
    }
}
Scope(\_SB_.PCI0.LPC_.EC__) {
    OperationRegion(THTL, SystemIO, 0x1010, 0x1)
    Field(THTL, ByteAcc, NoLock, Preserve) {
        PM10,	8
    }
    Method(_Q77) {
        Notify(\_TZ_.THM0, 0x80)
        If(\SPEN) {
            If(\OSPX) {
                Notify(\_PR_.CPU_, 0x80)
            }
            Else {
                \STEP(0x4)
            }
        }
    }
    Method(_Q79) {
        And(PM10, 0xef, PM10)
        Or(PM10, 0x4, PM10)
        Or(PM10, 0x10, PM10)
    }
    Method(_Q78) {
        And(PM10, 0xef, PM10)
        Notify(\_TZ_.THM0, 0x80)
        Store(\_SB_.PCI0.LPC_.EC__.THRF, Local0)
        If(LNot(LAnd(Local0, 0x40))) {
            If(\SPEN) {
                If(\OSPX) {
                    Notify(\_PR_.CPU_, 0x80)
                }
                Else {
                    \STEP(0x6)
                }
            }
        }
    }
    Method(_Q76) {
        Notify(\_TZ_.THM0, 0x80)
    }
    Name(THON, 0x0)
    Method(_Q34) {
        And(THON, 0xed, THON)
        Store(SMI_(0x0, 0xa, 0x0, 0x0, 0x0), Local1)
        If(LEqual(Local1, 0x2)) {
            Or(THON, 0x10, THON)
            Notify(\_TZ_.THM1, 0x80)
        }
        If(LEqual(Local1, 0x4)) {
            If(\SPEN) {
                If(\OSPX) {
                    Notify(\_PR_.CPU_, 0x80)
                }
                Else {
                    \STEP(0x6)
                }
            }
        }
        If(LEqual(Local1, 0x8)) {
            Or(THON, 0x2, THON)
            If(\SPEN) {
                If(\OSPX) {
                    Notify(\_PR_.CPU_, 0x80)
                }
                Else {
                    \STEP(0x4)
                }
            }
        }
        If(LEqual(Local1, 0x10)) {
            Or(THON, 0x10, THON)
            Notify(\_TZ_.THM1, 0x80)
        }
    }
}
OperationRegion(MNVS, SystemMemory, 0x0ff7b000, 0x1000)
Field(MNVS, DWordAcc, NoLock, Preserve) {
    Offset(0xf00),
    GAPA,	32,
    GAPL,	32,
    DCKI,	32,
    DCKS,	32,
    VCDL,	1,
    VCDC,	1,
    VCDT,	1,
    VCDD,	1,
    ,	1,
    VCSS,	1,
    VCDB,	1,
    VCIN,	1,
    Offset(0xf12),
    VLID,	4,
    Offset(0xf14),
    CDFL,	8,
    CDAH,	8,
    PMOD,	2,
    PDIR,	1,
    PDMA,	1,
    Offset(0xf17),
    LFDC,	1,
    Offset(0xf18),
    C2NA,	1,
    C3NA,	1,
    C4NA,	1,
    Offset(0xf19),
    SPEN,	1,
    ,	1,
    ,	1,
    ,	1,
    ,	3,
    PCEL,	1,
    OSPX,	1,
    OSC4,	1,
    Offset(0xf1b),
    UOPT,	8,
    BTID,	32,
    P0FQ,	16,
    P0PW,	16,
    P1FQ,	16,
    P1PW,	16,
    TCRT,	16,
    TPSV,	16,
    TTC1,	16,
    TTC2,	16,
    TTSP,	16
}
Field(MNVS, ByteAcc, NoLock, Preserve) {
    Offset(0xe00),
    DDC1,	1024,
    Offset(0xf00)
}
Field(MNVS, ByteAcc, NoLock, Preserve) {
    Offset(0xe00),
    DDC2,	2048
}
OperationRegion(SMI0, SystemIO, 0xb2, 0x1)
Field(SMI0, ByteAcc, NoLock, Preserve) {
    APMC,	8
}
Field(MNVS, AnyAcc, NoLock, Preserve) {
    Offset(0xfc0),
    CMD_,	8,
    ERR_,	32,
    PAR0,	32,
    PAR1,	32,
    PAR2,	32,
    PAR3,	32
}
Mutex(MSMI, 7)
Method(SMI_, 5) {
    Acquire(MSMI, 0xffff)
    Store(Arg0, CMD_)
    Store(Arg1, PAR0)
    Store(Arg2, PAR1)
    Store(Arg3, PAR2)
    Store(Arg4, PAR3)
    Store(0xf5, APMC)
    While(LEqual(ERR_, 0x1)) {
        Sleep(0x64)
        Store(0xf5, APMC)
    }
    Store(PAR0, Local0)
    Release(MSMI)
    Return(Local0)
}
Method(RPCI, 1) {
    Return(SMI_(0x0, 0x0, Arg0, 0x0, 0x0))
}
Method(WPCI, 2) {
    SMI_(0x0, 0x1, Arg0, Arg1, 0x0)
}
Method(MPCI, 3) {
    SMI_(0x0, 0x2, Arg0, Arg1, Arg2)
}
Method(RBEC, 1) {
    Return(SMI_(0x0, 0x3, Arg0, 0x0, 0x0))
}
Method(WBEC, 2) {
    SMI_(0x0, 0x4, Arg0, Arg1, 0x0)
}
Method(MBEC, 3) {
    SMI_(0x0, 0x5, Arg0, Arg1, Arg2)
}
Method(RISA, 1) {
    Return(SMI_(0x0, 0x6, Arg0, 0x0, 0x0))
}
Method(WISA, 2) {
    SMI_(0x0, 0x7, Arg0, Arg1, 0x0)
}
Method(MISA, 3) {
    SMI_(0x0, 0x8, Arg0, Arg1, Arg2)
}
Method(VEXP) {
    SMI_(0x1, 0x0, 0x0, 0x0, 0x0)
}
Method(VUPS, 1) {
    SMI_(0x1, 0x1, Arg0, 0x0, 0x0)
}
Method(VSDS, 2) {
    SMI_(0x1, 0x2, Arg0, Arg1, 0x0)
}
Method(VDDC) {
    SMI_(0x1, 0x3, 0x0, 0x0, 0x0)
}
Method(VVPD, 1) {
    SMI_(0x1, 0x4, Arg0, 0x0, 0x0)
}
Method(VNRS, 1) {
    SMI_(0x1, 0x5, Arg0, 0x0, 0x0)
}
Method(GLPW) {
    Return(SMI_(0x1, 0x6, 0x0, 0x0, 0x0))
}
Method(VSLD, 1) {
    SMI_(0x1, 0x7, Arg0, 0x0, 0x0)
}
Method(VEVT, 1) {
    Return(SMI_(0x1, 0x8, Arg0, 0x0, 0x0))
}
Method(CMOS, 1) {
    Return(SMI_(0x2, Arg0, 0x0, 0x0, 0x0))
}
Method(BHDP, 2) {
    Return(SMI_(0x3, 0x0, Arg0, Arg1, 0x0))
}
Method(DHDP, 1) {
    Return(SMI_(0x3, 0x1, Arg0, 0x0, 0x0))
}
Method(STEP, 1) {
    SMI_(0x4, Arg0, 0x0, 0x0, 0x0)
}
Method(TRAP) {
    SMI_(0x5, 0x0, 0x0, 0x0, 0x0)
}
Method(CBRI) {
    SMI_(0x5, 0x1, 0x0, 0x0, 0x0)
}
Method(BLTH, 1) {
    Return(SMI_(0x6, Arg0, 0x0, 0x0, 0x0))
}
Method(DPIO, 2) {
    If(LNot(Arg0)) {
        Return(0x0)
    }
    If(LGreater(Arg0, 0xf0)) {
        Return(0x0)
    }
    If(LGreater(Arg0, 0xb4)) {
        If(Arg1) {
            Return(0x2)
        }
        Else {
            Return(0x1)
        }
    }
    If(LGreater(Arg0, 0x78)) {
        Return(0x3)
    }
    Return(0x4)
}
Method(DUDM, 2) {
    If(LNot(Arg1)) {
        Return(0xff)
    }
    If(LGreater(Arg0, 0x5a)) {
        Return(0x0)
    }
    If(LGreater(Arg0, 0x3c)) {
        Return(0x1)
    }
    If(LGreater(Arg0, 0x2d)) {
        Return(0x2)
    }
    If(LGreater(Arg0, 0x1e)) {
        Return(0x3)
    }
    If(LGreater(Arg0, 0x14)) {
        Return(0x4)
    }
    Return(0x5)
}
Method(DMDM, 2) {
    If(Arg1) {
        Return(0x0)
    }
    If(LNot(Arg0)) {
        Return(0x0)
    }
    If(LGreater(Arg0, 0x96)) {
        Return(0x1)
    }
    If(LGreater(Arg0, 0x78)) {
        Return(0x2)
    }
    Return(0x3)
}
Method(UUDM, 2) {
    If(LNot(And(Arg0, 0x4, ))) {
        Return(0x0)
    }
    If(And(Arg1, 0x20, )) {
        Return(0x14)
    }
    If(And(Arg1, 0x10, )) {
        Return(0x1e)
    }
    If(And(Arg1, 0x8, )) {
        Return(0x2d)
    }
    If(And(Arg1, 0x4, )) {
        Return(0x3c)
    }
    If(And(Arg1, 0x2, )) {
        Return(0x5a)
    }
    If(And(Arg1, 0x1, )) {
        Return(0x78)
    }
    Return(0x0)
}
Method(UMDM, 4) {
    If(LNot(And(Arg0, 0x2, ))) {
        Return(0x0)
    }
    If(And(Arg1, 0x4, )) {
        Return(Arg3)
    }
    If(And(Arg1, 0x2, )) {
        If(LNot(LGreater(Arg3, 0x78))) {
            Return(0xb4)
        }
        Else {
            Return(Arg3)
        }
    }
    If(And(Arg2, 0x4, )) {
        If(LNot(LGreater(Arg3, 0xb4))) {
            Return(0xf0)
        }
        Else {
            Return(Arg3)
        }
    }
    Return(0x0)
}
Method(UPIO, 4) {
    If(LNot(And(Arg0, 0x2, ))) {
        If(LEqual(Arg2, 0x2)) {
            Return(0xf0)
        }
        Else {
            Return(0x0384)
        }
    }
    If(And(Arg1, 0x2, )) {
        Return(Arg3)
    }
    If(And(Arg1, 0x1, )) {
        If(LNot(LGreater(Arg3, 0x78))) {
            Return(0xb4)
        }
        Else {
            Return(Arg3)
        }
    }
    If(LEqual(Arg2, 0x2)) {
        Return(0xf0)
    }
    Else {
        Return(0x0384)
    }
}
Method(FDMA, 2) {
    If(LNot(LEqual(Arg1, 0xff))) {
        Return(Or(Arg1, 0x40, ))
    }
    If(LNot(LLess(Arg0, 0x3))) {
        Return(Or(Subtract(Arg0, 0x2, ), 0x20, ))
    }
    If(Arg0) {
        Return(0x12)
    }
    Return(0x0)
}
Method(FPIO, 1) {
    If(LNot(LLess(Arg0, 0x3))) {
        Return(Or(Arg0, 0x8, ))
    }
    If(LEqual(Arg0, 0x1)) {
        Return(0x1)
    }
    Return(0x0)
}
Method(SCMP, 2) {
    Store(SizeOf(Arg0), Local0)
    If(LNot(LEqual(Local0, SizeOf(Arg1)))) {
        Return(One)
    }
    Increment(Local0)
    Name(STR1, Buffer(Local0) { })
    Name(STR2, Buffer(Local0) { })
    Store(Arg0, STR1)
    Store(Arg1, STR2)
    Store(Zero, Local1)
    While(LLess(Local1, Local0)) {
        Store(DerefOf(Index(STR1, Local1, )), Local2)
        Store(DerefOf(Index(STR2, Local1, )), Local3)
        If(LNot(LEqual(Local2, Local3))) {
            Return(One)
        }
        Increment(Local1)
    }
    Return(Zero)
}
Name(SPS_, 0x0)
Name(OSIF, 0x0)
Name(W98F, 0x0)
Name(WNTF, 0x0)
Name(WMEF, 0x0)
Name(LNUX, 0x0)
Name(H8DR, 0x0)
Name(MEMX, 0x0)
Name(FNID, 0x0)
Name(RRBF, 0x0)

}
/*
SSDT: Length=3D51, Revision=3D1, Checksum=3D140,
	OEMID=3DIBM, OEM Table ID=3DTP-1M, OEM Revision=3D0x2011,
	Creator ID=3DMSFT, Creator Revision=3D0x100000d
 */
/*
ECDT: Length=3D81, Revision=3D1, Checksum=3D153,
	OEMID=3DIBM, OEM Table ID=3DTP-1M, OEM Revision=3D0x2011,
	Creator ID=3DIBM, Creator Revision=3D0x1
 */
/*
TCPA: Length=3D50, Revision=3D1, Checksum=3D124,
	OEMID=3DIBM, OEM Table ID=3DTP-1M, OEM Revision=3D0x2011,
	Creator ID=3DPTL, Creator Revision=3D0x1
 */
/*
BOOT: Length=3D40, Revision=3D1, Checksum=3D69,
	OEMID=3DIBM, OEM Table ID=3DTP-1M, OEM Revision=3D0x2011,
	Creator ID=3D LTP, Creator Revision=3D0x1
 */

--/Uq4LBwYP4y1W6pO--

--fXStkuK2IQBfcDe+
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.0 (FreeBSD)

iD8DBQE94oD8bHYXjKDtmC0RAm+SAKCSpb/UmGZKnu8z9kdYckInZLjmyACglB14
hW7sF6899iijRzGBgW16voY=
=wf4j
-----END PGP SIGNATURE-----

--fXStkuK2IQBfcDe+--
