Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 10 Jun 2003 16:50:49 +0200
From:      "Michael L. Hostbaek" <mich@FreeBSD.org>
To:        current@FreeBSD.org
Subject:   ACPI errors from today
Message-ID:  <20030610145049.GA94470@mich2.itxmarket.com>

next in thread | raw e-mail | index | archive | help

--J2SCkAp4GZ/dPZZf
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Howdy,

I cvsup'ed and rebuild my sources today. On boot I get loads of these
errors:

ACPI-0340: *** Error: Could not release ACPI Global Lock,
AE_BAD_PARAMETER

Any ideas ?

I have attached full dmesg and acpidump. It is a noname laptop, however
I believe several parts are orginating from Dell.

Let me know, if you need more info.

/mich

-- 
Best Regards,
	Michael L. Hostbaek 
	mich@FreeBSD.org - http://www.FreeBSD.org

	*/ PGP-key available upon request /*

--J2SCkAp4GZ/dPZZf
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="dmesg.txt"

Copyright (c) 1992-2003 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.1-CURRENT #0: Tue Jun 10 15:45:30 CEST 2003
    root@mich.itxmarket.com:/usr/obj/usr/src/sys/CURRENT_01
Preloaded elf kernel "/boot/kernel/kernel" at 0xc05bc000.
Preloaded userconfig_script "/boot/kernel.conf" at 0xc05bc1f4.
Preloaded elf module "/boot/kernel/acpi.ko" at 0xc05bc244.
Timecounter "i8254"  frequency 1193182 Hz
Timecounter "TSC"  frequency 497837701 Hz
CPU: Intel Pentium III (497.84-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x681  Stepping = 1
  Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE>
real memory  = 268369920 (255 MB)
avail memory = 254439424 (242 MB)
Pentium Pro MTRR support enabled
npx0: <math processor> on motherboard
npx0: INT 16 interface
acpi0: <COMPAL N30W   > on motherboard
pcibios: BIOS version 2.10
Using $PIR table, 7 entries at 0xc00fdf50
Timecounter "ACPI-safe"  frequency 3579545 Hz
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0
acpi_cpu0: <CPU> port 0x530-0x537 on acpi0
acpi_tz0: <thermal zone> on acpi0
acpi_lid0: <Control Method Lid Switch> on acpi0
acpi_cmbat0: <Control method Battery> on acpi0
acpi_cmbat1: <Control method Battery> on acpi0
acpi_acad0: <AC adapter> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
pcib0: slot 7 INTD is routed to irq 5
pcib0: slot 8 INTA is routed to irq 5
pcib0: slot 16 INTA is routed to irq 5
agp0: <Intel 82443BX (440 BX) host to PCI bridge> mem 0xe0000000-0xe3ffffff at device 0.0 on pci0
pcib1: <ACPI PCI-PCI bridge> at device 1.0 on pci0
pci1: <ACPI PCI bus> on pcib1
pcib1: slot 0 INTA is routed to irq 11
pci1: <display, VGA> at device 0.0 (no driver attached)
cbb0: <TI1225 PCI-CardBus Bridge> at device 4.0 on pci0
cardbus0: <CardBus bus> on cbb0
pccard0: <16-bit PCCard bus> on cbb0
pcib0: slot 4 INTA is routed to irq 11
cbb1: <TI1225 PCI-CardBus Bridge> at device 4.1 on pci0
cardbus1: <CardBus bus> on cbb1
pccard1: <16-bit PCCard bus> on cbb1
pcib0: slot 4 INTA is routed to irq 11
isab0: <PCI-ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX4 UDMA33 controller> port 0x1050-0x105f at device 7.1 on pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
uhci0: <Intel 82371AB/EB (PIIX4) USB controller> port 0x1060-0x107f irq 5 at device 7.2 on pci0
usb0: <Intel 82371AB/EB (PIIX4) USB controller> 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
pci0: <bridge, PCI-unknown> at device 7.3 (no driver attached)
pcm0: <ESS Technology Maestro-2E> port 0x1400-0x14ff irq 5 at device 8.0 on pci0
pcm0: <SigmaTel STAC9721/23 AC97 Codec>
malloc() of "64" with the following non-sleepablelocks held:
exclusive sleep mutex pcm0:mixer (pcm mixer) r = 0 (0xc2647bc0) locked @ /usr/src/sys/dev/sound/pcm/mixer.c:322
malloc() of "16" with the following non-sleepablelocks held:
exclusive sleep mutex pcm0:mixer (pcm mixer) r = 0 (0xc2647bc0) locked @ /usr/src/sys/dev/sound/pcm/mixer.c:322
malloc() of "16" with the following non-sleepablelocks held:
exclusive sleep mutex pcm0:mixer (pcm mixer) r = 0 (0xc2647bc0) locked @ /usr/src/sys/dev/sound/pcm/mixer.c:322
malloc() of "16" with the following non-sleepablelocks held:
exclusive sleep mutex pcm0:mixer (pcm mixer) r = 0 (0xc2647bc0) locked @ /usr/src/sys/dev/sound/pcm/mixer.c:322
malloc() of "64" with the following non-sleepablelocks held:
exclusive sleep mutex pcm0:mixer (pcm mixer) r = 0 (0xc2647bc0) locked @ /usr/src/sys/dev/sound/pcm/mixer.c:322
malloc() of "16" with the following non-sleepablelocks held:
exclusive sleep mutex pcm0:mixer (pcm mixer) r = 0 (0xc2647bc0) locked @ /usr/src/sys/dev/sound/pcm/mixer.c:322
malloc() of "16" with the following non-sleepablelocks held:
exclusive sleep mutex pcm0:mixer (pcm mixer) r = 0 (0xc2647bc0) locked @ /usr/src/sys/dev/sound/pcm/mixer.c:322
malloc() of "16" with the following non-sleepablelocks held:
exclusive sleep mutex pcm0:mixer (pcm mixer) r = 0 (0xc2647bc0) locked @ /usr/src/sys/dev/sound/pcm/mixer.c:322
pci0: <simple comms> at device 16.0 (no driver attached)
acpi_button0: <Power Button> on acpi0
acpi_button1: <Sleep Button> on acpi0
acpi_ec0: <embedded controller> port 0x66,0x62 on acpi0
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 IntelliMouse, device ID 3
fdc0: <Enhanced floppy controller (i82077, NE72065 or clone)> port 0x3f7,0x3f0-0x3f5 irq 6 drq 2 on acpi0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
sio0 port 0x2f8-0x2ff irq 3 on acpi0
sio0: type 16550A
sio1 port 0x258-0x25f,0x3f8-0x3ff irq 4 drq 0 on acpi0
sio1: type 16550A
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
orm0: <Option ROM> at iomem 0xc0000-0xcffff on isa0
pmtimer0 on isa0
ppc0: parallel port not found.
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
Timecounters tick every 10.000 msec
acpi_cpu: throttling enabled, 8 steps (100% to 12.5%), currently 100.0%
ep0: <3Com Megahertz 574B> at port 0x100-0x11f irq 11 function 0 config 1 on pccard0
ep0: Ethernet address 00:50:04:e7:26:08
    ACPI-0432: *** Error: Handler for [EmbeddedControl] returned AE_ERROR
    ACPI-1287: *** Error: Method execution failed [\\_SB_.BAT0._STA] (Node 0xc0eb9520), AE_ERROR
    ACPI-0432: *** Error: Handler for [EmbeddedControl] returned AE_ERROR
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-1287: *** Error: Method execution failed [\\_SB_.BAT1._STA] (Node 0xc0eb9440), AE_ERROR
ata1-slave: timeout waiting for interrupt
ata1-slave: ATAPI identify failed
ad0: 17301MB <IBM-DARA-218000> [35152/16/63] at ata0-master UDMA33
    ACPI-0432: *** Error: Handler for [EmbeddedControl] returned AE_ERROR
    ACPI-1287: *** Error: Method execution failed [\\_SB_.BAT1._STA] (Node 0xc0eb9440), AE_ERROR
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
acd0: DVD-ROM <TOSHIBA DVD-ROM SD-C2302> at ata1-master PIO4
Mounting root from ufs:/dev/ad0s1a
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER
    ACPI-0340: *** Error: Could not release ACPI Global Lock, AE_BAD_PARAMETER

--J2SCkAp4GZ/dPZZf
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="acpidump.txt"
Content-Transfer-Encoding: quoted-printable

/*
RSD PTR: Checksum=3D231, OEMID=3DCOMPAL, RsdtAddress=3D0x0fffb17f
 */
/*
RSDT: Length=3D44, Revision=3D1, Checksum=3D8,
	OEMID=3DCOMPAL, OEM Table ID=3DN30W, OEM Revision=3D0x6040000,
	Creator ID=3D LTP, Creator Revision=3D0x0
 */
/*
	Entries=3D{ 0x0ffffb65, 0x0ffffbd9 }
 */
/*
	DSDT=3D0xfffb1ab
	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_TMR_BLK=3D0x1008-0x100b
	PM2_GPE0_BLK=3D0x100c-0x100f
	P_LVL2_LAT=3D10ms, P_LVL3_LAT=3D20ms
	FLUSH_SIZE=3D0, FLUSH_STRIDE=3D0
	DUTY_OFFSET=3D1, DUTY_WIDTH=3D3
	DAY_ALRM=3D13, MON_ALRM=3D0, CENTURY=3D50
	Flags=3D{WBINVD,PWR_BUTTON,SLP_BUTTON,DCK_CAP}
 */
/*
DSDT: Length=3D18874, Revision=3D1, Checksum=3D248,
	OEMID=3DCOMPAL, OEM Table ID=3DN30W, OEM Revision=3D0x6040000,
	Creator ID=3DMSFT, Creator Revision=3D0x100000b
 */
DefinitionBlock (
    "acpi_dsdt.aml",	//Output filename
    "DSDT",		//Signature
    0x1,		//DSDT Revision
    "COMPAL",		//OEMID
    "N30W",		//TABLE ID
    0x6040000		//OEM Revision
)

{
Scope(\_PR_) {
    Processor(CPU0, 0, 0x1010, 0x6) {
    }
}
Name(SLST, 0x0)
Method(_PTS, 1) {
    Store(Arg0, SLST)
    Store(0x1, PWRS)
    If(LEqual(Arg0, 0x1)) {
        Store(0x1, \_SB_.PCI0.PX40.EC0_.S1EN)
    }
    If(LNot(LLess(Arg0, 0x2))) {
        Store(0x1, \_SB_.PCI0.CRST)
    }
    Else {
        Store(0x0, \_SB_.PCI0.CRST)
    }
    If(LEqual(Arg0, 0x3)) {
        Store(0x1, \_SB_.PCI0.PX40.EC0_.LWAK)
        Store(0x1, \_SB_.PCI0.PX40.EC0_.DCWT)
        Store(0x88, \_SB_.BCMD)
        Store(0x0, \_SB_.SMIC)
    }
    Return(0x0)
}
Method(_WAK, 1) {
    Store(0x1, PWRS)
    If(LEqual(Arg0, 0x1)) {
        Store(0x0, \_SB_.PCI0.PX40.EC0_.S1EN)
    }
    If(LLess(Arg0, 0x3)) {
        Store(0x86, \_SB_.BCMD)
        Store(0x0, \_SB_.SMIC)
    }
    If(LEqual(Arg0, 0x4)) {
        Notify(\_SB_.LID_, 0x80)
    }
    If(LNot(LLess(Arg0, 0x3))) {
        Notify(\_SB_.PCI0, 0x0)
        Store(\_SB_.PCI0.PX40.EC0_.DCID, Local0)
        If(Local0) {
            Store(0x1, \_SB_.PCI0.PX40.EC0_.LDDS)
            Store(0x0, \_SB_.PCI0.PX40.EC0_.DCWT)
        }
        If(LNot(LEqual(Local0, \_SB_.DKTP))) {
            If(Local0) {
                \_SB_.PCI0.PX40.EC0_._Q04()
            }
            Else {
                \_SB_.PCI0.PX40.EC0_._Q05()
            }
        }
        Else {
            If(LEqual(Local0, 0x3)) {
                \_SB_.PCI0.FDS_.ENQB()
            }
        }
    }
    Return(0x0)
}
Name(\_S0_, Package(0x3) {
    0x5,
    0x5,
    0x0,
})
Name(\_S1_, Package(0x3) {
    0x4,
    0x4,
    0x0,
})
Name(\_S3_, Package(0x3) {
    0x1,
    0x1,
    0x0,
})
Name(\_S4_, Package(0x3) {
    0x0,
    0x0,
    0x0,
})
Name(\_S5_, Package(0x3) {
    0x0,
    0x0,
    0x0,
})
OperationRegion(LDS_, SystemIO, 0x102b, 0x1)
Field(LDS_, ByteAcc, NoLock, Preserve) {
    SMFZ,	1,
    LPOL,	1
}
OperationRegion(PMS_, SystemIO, 0x1001, 0x1)
Field(PMS_, ByteAcc, NoLock, Preserve) {
    PWRS,	1
}
Scope(_GPE) {
    Method(_L0A) {
        If(\_SB_.PCI0.PX40.EC0_.PWRW) {
            Store(0x0, \_SB_.PCI0.PX40.EC0_.PWRW)
            Notify(\_SB_.PWRB, 0x2)
        }
        If(\_SB_.PCI0.PX40.EC0_.RNGW) {
            Store(0x0, \_SB_.PCI0.PX40.EC0_.RNGW)
            Notify(\_SB_.PCI0.MDM1, 0x2)
        }
        If(\_SB_.PCI0.PX40.EC0_.LANW) {
            Store(0x0, \_SB_.PCI0.PX40.EC0_.LANW)
            Notify(\_SB_.PCI0.FDS_, 0x2)
            Notify(\_SB_.PCI0.MDM1, 0x2)
        }
        If(\_SB_.PCI0.PX40.EC0_.COMW) {
            Store(0x0, \_SB_.PCI0.PX40.EC0_.COMW)
            Notify(\_SB_.PCI0.PX40.SIO_.COM1, 0x2)
        }
    }
    Method(_L0B) {
        Not(LPOL, LPOL)
        If(\_SB_.PCI0.PX40.ECOK()) {
            If(LEqual(\_SB_.PCI0.PX40.EC0_.LIDC, 0x0)) {
                Notify(\_SB_.LID_, 0x80)
            }
        }
        Else {
            Notify(\_SB_.LID_, 0x80)
        }
    }
}
Scope(\_SI_) {
    Method(_MSG, 1) {
        If(\_SB_.PCI0.PX40.ECOK()) {
            If(LEqual(Arg0, 0x0)) {
                Store(0x0, \_SB_.PCI0.PX40.EC0_.S1LD)
            }
            If(LEqual(Arg0, 0x1)) {
                Store(0x1, \_SB_.PCI0.PX40.EC0_.S1LD)
            }
            If(LEqual(Arg0, 0x2)) {
                Store(0x1, \_SB_.PCI0.PX40.EC0_.S1LD)
            }
        }
        Store("SI_MSG", Debug)
    }
    Method(_SST, 1) {
        If(\_SB_.PCI0.PX40.ECOK()) {
            If(LEqual(Arg0, 0x0)) {
                If(LNot(LEqual(SLST, 0x5))) {
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.S1LD)
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.S2LD)
                }
                Store(0x0, SLST)
            }
            If(LEqual(Arg0, 0x1)) {
                Store(0x1, \_SB_.PCI0.PX40.EC0_.S1LD)
                Store(0x0, \_SB_.PCI0.PX40.EC0_.S2LD)
            }
            If(LEqual(Arg0, 0x2)) {
                Store(0x1, \_SB_.PCI0.PX40.EC0_.S1LD)
                Store(0x1, \_SB_.PCI0.PX40.EC0_.S2LD)
            }
            If(LEqual(Arg0, 0x3)) {
                Store(0x1, \_SB_.PCI0.PX40.EC0_.S2LD)
            }
            If(LEqual(Arg0, 0x4)) {
                Store(0x1, \_SB_.PCI0.PX40.EC0_.S1LD)
                Store(0x0, \_SB_.PCI0.PX40.EC0_.S2LD)
            }
        }
    }
}
Scope(\_TZ_) {
    Method(KELV, 1) {
        If(And(Arg0, 0x80, )) {
            Store(0xffffff00, Local1)
        }
        Else {
            Store(Zero, Local1)
        }
        Or(Local1, Arg0, Local1)
        Add(Local1, 0x0111, Local1)
        Add(ShiftLeft(Local1, 0x1, ), ShiftLeft(Local1, 0x3, ), Local0)
        Return(Local0)
    }
    PowerResource(PFN0, 0, 0) {
        Method(_STA) {
            If(\_SB_.PCI0.PX40.ECOK()) {
                Return(\_SB_.PCI0.PX40.EC0_.FAN0)
            }
            Else {
                Return(0x0)
            }
        }
        Method(_ON_) {
            If(\_SB_.PCI0.PX40.ECOK()) {
                Store(One, \_SB_.PCI0.PX40.EC0_.FAN0)
            }
        }
        Method(_OFF) {
            If(\_SB_.PCI0.PX40.ECOK()) {
                Store(Zero, \_SB_.PCI0.PX40.EC0_.FAN0)
            }
        }
    }
    PowerResource(PFN1, 0, 0) {
        Method(_STA) {
            If(\_SB_.PCI0.PX40.ECOK()) {
                Return(\_SB_.PCI0.PX40.EC0_.FAN1)
            }
            Else {
                Return(0x0)
            }
        }
        Method(_ON_) {
            If(\_SB_.PCI0.PX40.ECOK()) {
                Store(One, \_SB_.PCI0.PX40.EC0_.FAN1)
            }
        }
        Method(_OFF) {
            If(\_SB_.PCI0.PX40.ECOK()) {
                Store(Zero, \_SB_.PCI0.PX40.EC0_.FAN1)
            }
        }
    }
    Device(FAN0) {
        Name(_HID, 0x0b0cd041)
        Name(_PR0, Package(0x1) {
            PFN0,
        })
        Name(_UID, 0x1)
        Name(_PSC, 0x0)
        Method(_PS0) {
            Store(0x0, _PSC)
        }
        Method(_PS3) {
            Store(0x3, _PSC)
        }
    }
    Device(FAN1) {
        Name(_HID, 0x0b0cd041)
        Name(_PR0, Package(0x2) {
            PFN0,
            PFN1,
        })
        Name(_UID, 0x2)
        Name(_PSC, 0x0)
        Method(_PS0) {
            Store(0x0, _PSC)
        }
        Method(_PS3) {
            Store(0x3, _PSC)
        }
    }
    ThermalZone(THRM) {
        Name(_AL0, Package(0x1) {
            FAN1,
        })
        Name(_AL1, Package(0x1) {
            FAN0,
        })
        Method(_TMP) {
            If(\_SB_.PCI0.PX40.ECOK()) {
                Store(\_SB_.PCI0.PX40.EC0_.TMP_, Local0)
                Return(KELV(Local0))
            }
            Else {
                Return(KELV(0x44))
            }
        }
        Method(_AC0) {
            Return(KELV(0x50))
        }
        Method(_AC1) {
            Return(KELV(0x4a))
        }
        Method(_PSV) {
            Return(KELV(0x56))
        }
        Method(_CRT) {
            Return(KELV(0x73))
        }
        Method(_SCP, 1) {
            If(\_SB_.PCI0.PX40.ECOK()) {
                Store(Arg0, \_SB_.PCI0.PX40.EC0_.MODE)
            }
        }
        Name(_TC1, 0x4)
        Name(_TC2, 0x3)
        Name(_TSP, 0x012c)
    }
}
Method(CMPS, 2) {
    Name(STG1, Buffer(0x50) { })
    Name(STG2, Buffer(0x50) { })
    Store(Arg0, STG1)
    Store(Arg1, STG2)
    Store(SizeOf(Arg0), Local0)
    Store(SizeOf(Arg1), Local1)
    If(LNot(LEqual(Local0, Local1))) {
        Return(Zero)
    }
    Store(Zero, Local4)
    While(LLess(Local4, Local0)) {
        Store(DerefOf(Index(STG1, Local4, )), Local2)
        Store(DerefOf(Index(STG2, Local4, )), Local3)
        If(LNot(LEqual(Local2, Local3))) {
            Return(Zero)
        }
        Increment(Local4)
    }
    Return(One)
}
Name(WNOS, 0x0)
Method(CKOS) {
    If(LEqual(WNOS, 0x0)) {
        If(CMPS(\_OS_, "Microsoft Windows NT")) {
            Store(0x2, WNOS)
        }
        If(CMPS(\_OS_, "Microsoft Windows")) {
            Store(0x1, WNOS)
        }
    }
    Return(WNOS)
}
Scope(\_SB_) {
    Name(DCKF, 0x0)
    Device(MEM_) {
        Name(_HID, 0x010cd041)
        Method(_CRS) {
            Name(MCRS, Buffer(0x26) {0x86, 0x9, 0x0, 0x0, 0x0, 0xc0, 0xd, 0=
x0, 0x0, 0x40, 0x0, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0xf8, 0xff, 0x0, 0x=
0, 0x2, 0x0, 0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0xfa, 0xff, 0x0, 0x0, 0x6, 0x0,=
 0x79, 0x0 })
            Return(MCRS)
        }
        Method(_STA) {
            Return(0xf)
        }
    }
    OperationRegion(ACB_, SystemMemory, 0x0fffff2c, 0x00000090)
    Field(ACB_, AnyAcc, NoLock, Preserve) {
        BCMD,	8,
        DID_,	32,
        INFO,	1104
    }
    Field(ACB_, AnyAcc, NoLock, Preserve) {
        Offset(0x5),
        INF_,	8
    }
    Field(ACB_, AnyAcc, NoLock, Preserve) {
        Offset(0x89),
        MFLG,	8
    }
    Field(ACB_, AnyAcc, NoLock, Preserve) {
        Offset(0x8b),
        DKSN,	32
    }
    Field(ACB_, AnyAcc, NoLock, Preserve) {
        Offset(0x8f),
        DKTP,	8
    }
    OperationRegion(SMIB, SystemIO, 0x0000fe00, 0x00000002)
    Field(SMIB, AnyAcc, NoLock, Preserve) {
        SMIC,	8
    }
    Device(LID_) {
        Name(_HID, 0x0d0cd041)
        Method(_LID) {
            Store("LID STATE", Debug)
            Return(LPOL)
        }
        Name(_PRW, Package(0x2) {
            0xb,
            0x4,
        })
    }
    Device(BAT0) {
        Name(_UID, 0x1)
        Name(_HID, 0x0a0cd041)
        Name(_PCL, Package(0x1) {
            \_SB_,
        })
        Method(_STA) {
            If(\_SB_.PCI0.PX40.ECOK()) {
                If(\_SB_.PCI0.PX40.EC0_.BAT0) {
                    Return(0x1f)
                }
                Else {
                    Return(0xf)
                }
            }
            Else {
                Return(0x1f)
            }
        }
        Method(_BIF) {
            Return(Package(0xd) {
                0x1,
                0x1194,
                0x1194,
                0x1,
                0x3840,
                0x01a4,
                0x9c,
                0x0108,
                0x0ec4,
                "N30W  ",
                "3658Q",
                "Li-Ion",
                "COMP",
            })
        }
        Method(_BST) {
            Store(0x1, Local0)
            Store(0x01ff, Local1)
            Store(0x0900, Local2)
            Store(0x1fff, Local3)
            Name(STAT, Package(0x4) {
            })
            If(\_SB_.PCI0.PX40.ECOK()) {
                Store(\_SB_.PCI0.PX40.EC0_.BST0, Local0)
                Store(\_SB_.PCI0.PX40.EC0_.BPR0, Local1)
                Store(\_SB_.PCI0.PX40.EC0_.BRC0, Local2)
                Store(\_SB_.PCI0.PX40.EC0_.BPV0, Local3)
            }
            Store(Local0, Index(STAT, 0x0, ))
            Store(Local1, Index(STAT, 0x1, ))
            Store(Local2, Index(STAT, 0x2, ))
            Store(Local3, Index(STAT, 0x3, ))
            Return(STAT)
        }
    }
    Device(BAT1) {
        Name(_UID, 0x2)
        Name(_HID, 0x0a0cd041)
        Name(_PCL, Package(0x1) {
            \_SB_,
        })
        Method(_STA) {
            If(\_SB_.PCI0.PX40.ECOK()) {
                If(\_SB_.PCI0.PX40.EC0_.BAT1) {
                    Return(0x1f)
                }
                Else {
                    Return(0xf)
                }
            }
            Else {
                Return(0x1f)
            }
        }
        Method(_BIF) {
            Return(Package(0xd) {
                0x1,
                0x1194,
                0x1194,
                0x1,
                0x3840,
                0x01a4,
                0x9c,
                0x0108,
                0x0ec4,
                "N30W  ",
                "3659Q",
                "Li-Ion",
                "COMP",
            })
        }
        Method(_BST) {
            Store(Zero, Local0)
            Store(Zero, Local1)
            Store(Zero, Local2)
            Store(Zero, Local3)
            Name(STAT, Package(0x4) {
            })
            If(\_SB_.PCI0.PX40.ECOK()) {
                Store(\_SB_.PCI0.PX40.EC0_.BST1, Local0)
                Store(\_SB_.PCI0.PX40.EC0_.BPR1, Local1)
                Store(\_SB_.PCI0.PX40.EC0_.BRC1, Local2)
                Store(\_SB_.PCI0.PX40.EC0_.BPV1, Local3)
            }
            Store(Local0, Index(STAT, 0x0, ))
            Store(Local1, Index(STAT, 0x1, ))
            Store(Local2, Index(STAT, 0x2, ))
            Store(Local3, Index(STAT, 0x3, ))
            Return(STAT)
        }
    }
    Device(AC__) {
        Name(_HID, "ACPI0003")
        Name(_PCL, Package(0x1) {
            \_SB_,
        })
        Method(_PSR) {
            If(\_SB_.PCI0.PX43.ACPW) {
                Return(0x0)
            }
            Else {
                Return(0x1)
            }
        }
        Method(_STA) {
            If(\_SB_.PCI0.PX43.ACPW) {
                Return(0xf)
            }
            Else {
                Return(0xf)
            }
        }
    }
    Device(PCI0) {
        Name(_HID, 0x030ad041)
        Name(_ADR, 0x0)
        Name(_PRT, Package(0x6) {
            Package(0x4) {
                0x0007ffff,
                0x3,
                \_SB_.PCI0.PX40.LNKD,
                0x0,
            },
            Package(0x4) {
                0x0004ffff,
                0x0,
                \_SB_.PCI0.PX40.LNKA,
                0x0,
            },
            Package(0x4) {
                0x0004ffff,
                0x1,
                \_SB_.PCI0.PX40.LNKB,
                0x0,
            },
            Package(0x4) {
                0x0008ffff,
                0x0,
                \_SB_.PCI0.PX40.LNKD,
                0x0,
            },
            Package(0x4) {
                0x0010ffff,
                0x0,
                \_SB_.PCI0.PX40.LNKD,
                0x0,
            },
            Package(0x4) {
                0x000dffff,
                0x0,
                \_SB_.PCI0.PX40.LNKB,
                0x0,
            },
        })
        Name(_BBN, 0x0)
        OperationRegion(REGS, PCI_Config, 0x40, 0xc0)
        Field(REGS, DWordAcc, NoLock, Preserve) {
            Offset(0x19),
            PAM0,	8,
            PAM1,	8,
            PAM2,	8,
            PAM3,	8,
            PAM4,	8,
            PAM5,	8,
            PAM6,	8,
            DRB0,	8,
            DRB1,	8,
            DRB2,	8,
            DRB3,	8,
            DRB4,	8,
            DRB5,	8,
            DRB6,	8,
            DRB7,	8,
            ,	6,
            HEN_,	2,
            Offset(0x33),
            T_EN,	1,
            T_SZ,	2,
            Offset(0x3a),
            CRST,	1
        }
        Method(MDET) {
            ShiftLeft(DRB7, 0x17, Local0)
            Return(Local0)
        }
        Name(RSRC, Buffer(0x01da) {0x88, 0xe, 0x0, 0x2, 0xe, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x87, 0x18, 0x0, 0x0, 0xe, 0=
x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0xff, 0xff, 0xb, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xe, 0x3, 0x0, 0x=
0, 0x0, 0x0, 0x0, 0x0, 0xc, 0x0, 0xff, 0x3f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xe, 0x3, 0x0, 0x0, 0x0, 0x=
0, 0x0, 0x40, 0xc, 0x0, 0xff, 0x7f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40=
, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xe, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x80, 0xc, 0x0, 0xff, 0xbf, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x=
0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xe, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xc,=
 0x0, 0xff, 0xff, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0=
x87, 0x18, 0x0, 0x0, 0xe, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0xff=
, 0x3f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18,=
 0x0, 0x0, 0xe, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xd, 0x0, 0xff, 0x7f, 0=
xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0=
, 0xe, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xd, 0x0, 0xff, 0xbf, 0xd, 0x0, =
0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xe, 0x=
1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xd, 0x0, 0xff, 0xff, 0xd, 0x0, 0x0, 0x0,=
 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xe, 0x1, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0xe, 0x0, 0xff, 0x3f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0,=
 0x0, 0x40, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xe, 0x1, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x40, 0xe, 0x0, 0xff, 0x7f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4=
0, 0x0, 0x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xe, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, =
0x80, 0xe, 0x0, 0xff, 0xbf, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0=
x0, 0x0, 0x87, 0x18, 0x0, 0x0, 0xe, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xe=
, 0x0, 0xff, 0xff, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, =
0x87, 0x18, 0x0, 0x0, 0xe, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0=
, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x87, 0x18, 0=
x0, 0x0, 0xe, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0=
x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x47, 0x1, 0xf8, 0xc, 0xf8=
, 0xc, 0x1, 0x8, 0x88, 0xe, 0x0, 0x1, 0xe, 0x3, 0x0, 0x0, 0x0, 0x0, 0xf7, 0=
xc, 0x0, 0x0, 0xf8, 0xc, 0x0, 0x88, 0xe, 0x0, 0x1, 0xe, 0x3, 0x0, 0x0, 0x0,=
 0xd, 0xff, 0xff, 0x0, 0x0, 0x0, 0xf3, 0x0, 0x47, 0x1, 0x0, 0x10, 0x0, 0x10=
, 0x1, 0x16, 0x79, 0x0 })
        Method(_CRS, 0, Serialized) {
            Store(Zero, Local1)
            If(T_EN) {
                ShiftLeft(0x1, Add(T_SZ, 0x11, ), Local1)
            }
            CreateDWordField(RSRC, 0x017a, BTMN)
            CreateDWordField(RSRC, 0x017e, BTMX)
            CreateDWordField(RSRC, 0x0186, BTLN)
            Multiply(DRB7, 0x00800000, Local0)
            If(T_EN) {
                Subtract(Local0, Local1, Local2)
                Store(Local2, BTMN)
                Subtract(Add(Local0, 0x10000000, ), BTMN, BTLN)
            }
            Else {
                Store(Local0, BTMN)
                Subtract(0xffe00000, Local0, BTLN)
                Subtract(Add(BTMN, BTLN, ), 0x1, BTMX)
            }
            CreateDWordField(RSRC, 0x0195, ATMN)
            CreateDWordField(RSRC, 0x0199, ATMX)
            CreateDWordField(RSRC, 0x01a1, ATLN)
            If(T_EN) {
                Add(Add(BTMN, BTLN, ), Local1, ATMN)
                Subtract(0xffe00000, ATMN, ATLN)
                Subtract(Add(ATMN, ATLN, ), 0x1, ATMX)
            }
            Else {
                Store(Zero, ATLN)
            }
            CreateBitField(RSRC, 0x0188, C0RW)
            CreateDWordField(RSRC, 0x36, C0MN)
            CreateDWordField(RSRC, 0x3a, C0MX)
            CreateDWordField(RSRC, 0x42, C0LN)
            Store(One, C0RW)
            If(LEqual(And(PAM1, 0x3, ), 0x1)) {
                Store(Zero, C0RW)
            }
            Store(Zero, C0LN)
            If(LNot(And(PAM1, 0x3, ))) {
                Store(0x4000, C0LN)
            }
            CreateBitField(RSRC, 0x0260, C4RW)
            CreateDWordField(RSRC, 0x51, C4MN)
            CreateDWordField(RSRC, 0x55, C4MX)
            CreateDWordField(RSRC, 0x5d, C4LN)
            Store(One, C4RW)
            If(LEqual(And(PAM1, 0x30, ), 0x10)) {
                Store(Zero, C4RW)
            }
            Store(Zero, C4LN)
            If(LNot(And(PAM1, 0x30, ))) {
                Store(0x4000, C4LN)
            }
            CreateBitField(RSRC, 0x0338, C8RW)
            CreateDWordField(RSRC, 0x6c, C8MN)
            CreateDWordField(RSRC, 0x70, C8MX)
            CreateDWordField(RSRC, 0x78, C8LN)
            Store(One, C8RW)
            If(LEqual(And(PAM2, 0x3, ), 0x1)) {
                Store(Zero, C8RW)
            }
            Store(Zero, C8LN)
            If(LNot(And(PAM2, 0x3, ))) {
                Store(0x4000, C8LN)
            }
            CreateBitField(RSRC, 0x0410, CCRW)
            CreateDWordField(RSRC, 0x87, CCMN)
            CreateDWordField(RSRC, 0x8b, CCMX)
            CreateDWordField(RSRC, 0x93, CCLN)
            Store(One, CCRW)
            If(LEqual(And(PAM2, 0x30, ), 0x10)) {
                Store(Zero, CCRW)
            }
            Store(Zero, CCLN)
            If(LNot(And(PAM2, 0x30, ))) {
                Store(0x4000, CCLN)
            }
            CreateBitField(RSRC, 0x04e8, D0RW)
            CreateDWordField(RSRC, 0xa2, D0MN)
            CreateDWordField(RSRC, 0xa6, D0MX)
            CreateDWordField(RSRC, 0xae, D0LN)
            Store(One, D0RW)
            If(LEqual(And(PAM3, 0x3, ), 0x1)) {
                Store(Zero, D0RW)
            }
            Store(Zero, D0LN)
            If(LNot(And(PAM3, 0x3, ))) {
                Store(0x4000, D0LN)
            }
            CreateBitField(RSRC, 0x05c0, D4RW)
            CreateDWordField(RSRC, 0xbd, D4MN)
            CreateDWordField(RSRC, 0xc1, D4MX)
            CreateDWordField(RSRC, 0xc9, D4LN)
            Store(One, D4RW)
            If(LEqual(And(PAM3, 0x30, ), 0x10)) {
                Store(Zero, D4RW)
            }
            Store(Zero, D4LN)
            If(LNot(And(PAM3, 0x30, ))) {
                Store(0x4000, D4LN)
            }
            CreateBitField(RSRC, 0x0698, D8RW)
            CreateDWordField(RSRC, 0xd8, D8MN)
            CreateDWordField(RSRC, 0xdc, D8MX)
            CreateDWordField(RSRC, 0xe4, D8LN)
            Store(One, D8RW)
            If(LEqual(And(PAM4, 0x3, ), 0x1)) {
                Store(Zero, D8RW)
            }
            Store(Zero, D8LN)
            If(LNot(And(PAM4, 0x3, ))) {
                Store(0x4000, D8LN)
            }
            CreateBitField(RSRC, 0x0770, DCRW)
            CreateDWordField(RSRC, 0xf3, DCMN)
            CreateDWordField(RSRC, 0xf7, DCMX)
            CreateDWordField(RSRC, 0xff, DCLN)
            Store(One, DCRW)
            If(LEqual(And(PAM4, 0x30, ), 0x10)) {
                Store(Zero, DCRW)
            }
            Store(Zero, DCLN)
            If(LNot(And(PAM4, 0x30, ))) {
                Store(0x4000, DCLN)
            }
            CreateBitField(RSRC, 0x0848, E0RW)
            CreateDWordField(RSRC, 0x010e, E0MN)
            CreateDWordField(RSRC, 0x0112, E0MX)
            CreateDWordField(RSRC, 0x011a, E0LN)
            Store(One, E0RW)
            If(LEqual(And(PAM5, 0x3, ), 0x1)) {
                Store(Zero, E0RW)
            }
            Store(Zero, E0LN)
            If(LNot(And(PAM5, 0x3, ))) {
                Store(0x4000, E0LN)
            }
            CreateBitField(RSRC, 0x0920, E4RW)
            CreateDWordField(RSRC, 0x0129, E4MN)
            CreateDWordField(RSRC, 0x012d, E4MX)
            CreateDWordField(RSRC, 0x0135, E4LN)
            Store(One, E4RW)
            If(LEqual(And(PAM5, 0x30, ), 0x10)) {
                Store(Zero, E4RW)
            }
            Store(Zero, E4LN)
            If(LNot(And(PAM5, 0x30, ))) {
                Store(0x4000, E4LN)
            }
            CreateBitField(RSRC, 0x09f8, E8RW)
            CreateDWordField(RSRC, 0x0144, E8MN)
            CreateDWordField(RSRC, 0x0148, E8MX)
            CreateDWordField(RSRC, 0x0150, E8LN)
            Store(One, E8RW)
            If(LEqual(And(PAM6, 0x3, ), 0x1)) {
                Store(Zero, E8RW)
            }
            Store(Zero, E8LN)
            If(LNot(And(PAM6, 0x3, ))) {
                Store(0x4000, E8LN)
            }
            CreateBitField(RSRC, 0x0ad0, ECRW)
            CreateDWordField(RSRC, 0x015f, ECMN)
            CreateDWordField(RSRC, 0x0163, ECMX)
            CreateDWordField(RSRC, 0x016b, ECLN)
            Store(One, ECRW)
            If(LEqual(And(PAM6, 0x30, ), 0x10)) {
                Store(Zero, ECRW)
            }
            Store(Zero, ECLN)
            If(LNot(And(PAM6, 0x30, ))) {
                Store(0x4000, ECLN)
            }
            Return(RSRC)
        }
        Method(_STA) {
            Return(0xf)
        }
        Device(PX40) {
            Name(_ADR, 0x00070000)
            OperationRegion(PIRX, PCI_Config, 0x60, 0x4)
            Field(PIRX, ByteAcc, NoLock, Preserve) {
                PIRA,	8,
                PIRB,	8,
                PIRC,	8,
                PIRD,	8
            }
            OperationRegion(P4B0, PCI_Config, 0xb0, 0x4)
            Field(P4B0, ByteAcc, NoLock, Preserve) {
                ISEI,	1,
                POSD,	1,
                ,	10,
                SISI,	1,
                Offset(0x2)
            }
            Name(LPT1, Package(0x3) {
                0x03bc,
                0x0378,
                0x0278,
            })
            Name(LPT2, Package(0x3) {
                0x03be,
                0x037f,
                0x027f,
            })
            Name(UAP1, Package(0x8) {
                0x03f8,
                0x02f8,
                0x0220,
                0x0228,
                0x0238,
                0x02e8,
                0x0338,
                0x03e8,
            })
            Name(UAP2, Package(0x8) {
                0x03ff,
                0x02ff,
                0x0227,
                0x022f,
                0x023f,
                0x02ef,
                0x033f,
                0x03ef,
            })
            Name(FDC1, Package(0x2) {
                0x03f0,
                0x0370,
            })
            Name(FDC2, Package(0x2) {
                0x03f7,
                0x0377,
            })
            Method(DECD, 4) {
                Store("DECD", Debug)
                Store(Arg0, Debug)
                Store(Arg1, Debug)
                Store(Arg2, Debug)
                Store(Arg3, Debug)
                DISB(Arg0, Arg1)
                If(LNot(LEqual(Arg3, Ones))) {
                    ENAB(Arg2, Arg3, Arg0)
                }
            }
            Method(DISB, 2) {
                If(LAnd(^^PX43.LPTE, ^^PX43.LPTM)) {
                    If(LNot(LLess(Arg0, DerefOf(Index(LPT1, ^^PX43.LPTA, ))=
))) {
                        If(LNot(LGreater(Add(Arg0, Arg1, ), DerefOf(Index(L=
PT2, ^^PX43.LPTA, ))))) {
                            Store("LPT Decode Disabled", Debug)
                            Store(Arg0, Debug)
                            Store(Zero, ^^PX43.LPTE)
                            Return(Zero)
                        }
                    }
                }
                If(LAnd(^^PX43.U1E_, ^^PX43.U1M_)) {
                    If(LNot(LLess(Arg0, DerefOf(Index(UAP1, ^^PX43.U1A_, ))=
))) {
                        If(LNot(LGreater(Add(Arg0, Arg1, ), DerefOf(Index(U=
AP2, ^^PX43.U1A_, ))))) {
                            Store("COM1 Decode Disabled", Debug)
                            Store(Arg0, Debug)
                            Store(Zero, ^^PX43.U1E_)
                            Return(Zero)
                        }
                    }
                }
                If(LAnd(^^PX43.U2E_, ^^PX43.U2M_)) {
                    If(LNot(LLess(Arg0, DerefOf(Index(UAP1, ^^PX43.U2A_, ))=
))) {
                        If(LNot(LGreater(Add(Arg0, Arg1, ), DerefOf(Index(U=
AP2, ^^PX43.U2A_, ))))) {
                            Store("COM2 Decode Disabled", Debug)
                            Store(Arg0, Debug)
                            Store(Zero, ^^PX43.U2E_)
                            Return(Zero)
                        }
                    }
                }
                If(LAnd(^^PX43.FDCE, ^^PX43.FDCM)) {
                    If(LNot(LLess(Arg0, DerefOf(Index(FDC1, ^^PX43.FDCA, ))=
))) {
                        If(LNot(LGreater(Add(Arg0, Arg1, ), DerefOf(Index(F=
DC2, ^^PX43.FDCA, ))))) {
                            Store("FDC Decode Disabled", Debug)
                            Store(Arg0, Debug)
                            Store(Zero, ^^PX43.FDCE)
                            Return(Zero)
                        }
                    }
                }
                Return(Ones)
            }
            Method(ENAB, 3) {
                Store(Arg0, Local0)
                Add(Arg0, Arg1, Local1)
                Store(SizeOf(LPT1), Local2)
                While(Local2) {
                    Decrement(Local2)
                    If(LNot(LLess(Local0, DerefOf(Index(LPT1, Local2, )))))=
 {
                        If(LNot(LGreater(Local1, DerefOf(Index(LPT2, Local2=
, ))))) {
                            Store("LPT Decode Enabled", Debug)
                            Store(Arg0, Debug)
                            Store(Local2, Debug)
                            Store(Local2, ^^PX43.LPTA)
                            Store(One, ^^PX43.LPTE)
                            Store(One, ^^PX43.LPTM)
                            Return(Zero)
                        }
                    }
                }
                If(LEqual(Arg2, 0x11)) {
                    Store(SizeOf(UAP1), Local2)
                    While(Local2) {
                        Decrement(Local2)
                        If(LNot(LLess(Local0, DerefOf(Index(UAP1, Local2, )=
)))) {
                            If(LNot(LGreater(Local1, DerefOf(Index(UAP2, Lo=
cal2, ))))) {
                                Store("COM1 Decode Enabled", Debug)
                                Store(Arg0, Debug)
                                Store(Local2, Debug)
                                Store(Local2, ^^PX43.U1A_)
                                Store(One, ^^PX43.U1E_)
                                Store(One, ^^PX43.U1M_)
                                Return(Zero)
                            }
                        }
                    }
                }
                If(LEqual(Arg2, 0x22)) {
                    Store(SizeOf(UAP1), Local2)
                    While(Local2) {
                        Decrement(Local2)
                        If(LNot(LLess(Local0, DerefOf(Index(UAP1, Local2, )=
)))) {
                            If(LNot(LGreater(Local1, DerefOf(Index(UAP2, Lo=
cal2, ))))) {
                                Store("COM2 Decode Enabled", Debug)
                                Store(Arg0, Debug)
                                Store(Local2, Debug)
                                Store(Local2, ^^PX43.U2A_)
                                Store(One, ^^PX43.U2E_)
                                Store(One, ^^PX43.U2M_)
                                Return(Zero)
                            }
                        }
                    }
                }
                Store(SizeOf(FDC1), Local2)
                While(Local2) {
                    Decrement(Local2)
                    If(LNot(LLess(Local0, DerefOf(Index(FDC1, Local2, )))))=
 {
                        If(LNot(LGreater(Local1, DerefOf(Index(FDC2, Local2=
, ))))) {
                            Store("FDC Decode Enabled", Debug)
                            Store(Arg0, Debug)
                            Store(Local2, Debug)
                            Store(Local2, ^^PX43.FDCA)
                            Store(One, ^^PX43.FDCE)
                            Store(One, ^^PX43.FDCM)
                            Return(Zero)
                        }
                    }
                }
            }
            Device(SIO_) {
                Name(_HID, 0x050ad041)
                Name(_UID, 0x1)
                Mutex(MSIO, 0)
                Name(DMMP, Package(0x4) {
                    0x1,
                    0x4,
                    0x8,
                    0x2,
                })
                Name(DMMT, Package(0x5) {
                    0xff,
                    0x0,
                    0x3,
                    0x1,
                    0x2,
                })
                Name(LPMD, Package(0x4) {
                    0x2,
                    0x3,
                    0x4,
                    0xff,
                })
                OperationRegion(SMC1, SystemIO, 0x0370, 0x2)
                Field(SMC1, ByteAcc, NoLock, Preserve) {
                    INDX,	8,
                    DATA,	8
                }
                IndexField(INDX, DATA, ByteAcc, NoLock, Preserve) {
                    CR00,	8,
                    CR01,	8,
                    CR02,	8,
                    Offset(0x4),
                    CR04,	8,
                    Offset(0x7),
                    CR07,	8,
                    Offset(0xc),
                    CR0C,	8,
                    Offset(0x20),
                    CR20,	8,
                    Offset(0x23),
                    CR23,	8,
                    CR24,	8,
                    CR25,	8,
                    CR26,	8,
                    CR27,	8,
                    CR28,	8,
                    Offset(0x2b),
                    CR2B,	8,
                    CR2C,	8
                }
                Method(ENFG) {
                    Acquire(MSIO, 0xffff)
                    Store(0x0370, \_SB_.PCI0.PX43.DEC1)
                    Store(0x11, \_SB_.PCI0.PX43.DEEN)
                    Store(0xd, INDX)
                    While(LNot(LEqual(DATA, 0x29))) {
                        Store(0x55, INDX)
                        Store(0xd, INDX)
                    }
                }
                Method(EXFG) {
                    Store(0xaa, INDX)
                    Store(0x1, \_SB_.PCI0.PX43.DEEN)
                    Release(MSIO)
                }
                Name(REGS, Package(0x18) {
                    0x0,
                    0x1,
                    0x2,
                    0x4,
                    0x5,
                    0x7,
                    0xa,
                    0xc,
                    0x1e,
                    0x20,
                    0x21,
                    0x22,
                    0x23,
                    0x24,
                    0x25,
                    0x26,
                    0x27,
                    0x28,
                    0x29,
                    0x2b,
                    0x2c,
                    0x2d,
                    0x2e,
                    0x2f,
                })
                Name(SAVE, Package(0x18) {
                    0x0,
                    0x1,
                    0x2,
                    0x4,
                    0x5,
                    0x7,
                    0xa,
                    0xc,
                    0x1e,
                    0x20,
                    0x21,
                    0x22,
                    0x23,
                    0x24,
                    0x25,
                    0x26,
                    0x27,
                    0x28,
                    0x29,
                    0x2b,
                    0x2c,
                    0x2d,
                    0x2e,
                    0x2f,
                })
                Name(LPTM, 0x0)
                Name(FDCM, 0x0)
                Name(UT1M, 0x0)
                Name(UT2M, 0x0)
                Method(_INI) {
                    ENFG()
                    If(LNot(FDCM)) {
                        And(CR00, 0x8, Local0)
                        If(Local0) {
                            Store(0x1, FDCM)
                        }
                        Else {
                            Store(0xff, FDCM)
                        }
                    }
                    If(LNot(LPTM)) {
                        And(CR01, 0x4, Local0)
                        And(CR01, 0x8, Local1)
                        And(CR04, 0x3, Local2)
                        Store(0xff, LPTM)
                        If(Local0) {
                            If(Local1) {
                                Store(0xff, LPTM)
                            }
                            Else {
                                Store(DerefOf(Index(LPMD, Local2, )), LPTM)
                            }
                        }
                        Else {
                            Store(0xff, LPTM)
                        }
                    }
                    If(LNot(UT1M)) {
                        And(CR02, 0x8, Local0)
                        If(Local0) {
                            Store(0x1, UT1M)
                        }
                        Else {
                            Store(0xff, UT1M)
                        }
                    }
                    If(LNot(UT2M)) {
                        And(CR02, 0x80, Local0)
                        And(CR0C, 0x38, Local1)
                        And(CR2B, 0xe0, Local4)
                        Store(0xff, UT2M)
                        If(Local0) {
                            If(LEqual(Local1, 0x0)) {
                                Store(0xff, UT2M)
                            }
                            If(LEqual(Local1, 0x8)) {
                                If(Local4) {
                                    Store(0x4, UT2M)
                                }
                                Else {
                                    Store(0x2, UT2M)
                                }
                            }
                            If(LEqual(Local1, 0x10)) {
                                Store(0xff, UT2M)
                            }
                        }
                        Else {
                            Store(0xff, UT2M)
                        }
                    }
                    EXFG()
                }
                Name(_PSC, 0x0)
                Name(_PR0, Package(0x0) {
                })
                Method(_PS0) {
                    ON__()
                }
                Method(_PS3) {
                    OFF_()
                }
                Method(ON__) {
                    If(LEqual(_PSC, 0x3)) {
                        ENFG()
                        Store(Zero, Local0)
                        While(LLess(Local0, SizeOf(REGS))) {
                            Store(DerefOf(Index(REGS, Local0, )), INDX)
                            Store(DerefOf(Index(SAVE, Local0, )), DATA)
                            Increment(Local0)
                        }
                        EXFG()
                    }
                    Store(0x0, _PSC)
                }
                Method(OFF_) {
                    ENFG()
                    Store(Zero, Local0)
                    While(LLess(Local0, SizeOf(REGS))) {
                        Store(DerefOf(Index(REGS, Local0, )), INDX)
                        Store(DATA, Index(SAVE, Local0, ))
                        Increment(Local0)
                    }
                    EXFG()
                    Store(0x3, _PSC)
                }
                Device(FDC_) {
                    Name(_HID, 0x0007d041)
                    Method(_STA) {
                        ENFG()
                        Store(0x0, Local7)
                        If(LNot(LEqual(FDCM, 0xff))) {
                            And(CR00, 0x8, Local0)
                            And(CR20, 0xc0, Local1)
                            Store(0x5, Local7)
                            If(LAnd(Local0, Local1)) {
                                Store(0xf, Local7)
                            }
                        }
                        EXFG()
                        Return(Local7)
                    }
                    Method(_DIS) {
                        ENFG()
                        And(CR00, 0xf7, CR00)
                        EXFG()
                    }
                    Method(_CRS) {
                        Name(RSRC, Buffer(0x18) {0x47, 0x1, 0xf0, 0x3, 0xf0=
, 0x3, 0x1, 0x6, 0x47, 0x1, 0xf7, 0x3, 0xf7, 0x3, 0x1, 0x1, 0x22, 0x40, 0x0=
, 0x2a, 0x4, 0x0, 0x79, 0x0 })
                        ENFG()
                        CreateByteField(RSRC, 0x2, IO1_)
                        CreateByteField(RSRC, 0x3, IO2_)
                        CreateByteField(RSRC, 0x4, IO3_)
                        CreateByteField(RSRC, 0x5, IO4_)
                        CreateByteField(RSRC, 0xa, IO5_)
                        CreateByteField(RSRC, 0xb, IO6_)
                        CreateByteField(RSRC, 0xc, IO7_)
                        CreateByteField(RSRC, 0xd, IO8_)
                        CreateWordField(RSRC, 0x11, IRQV)
                        CreateByteField(RSRC, 0x14, DMAV)
                        ShiftLeft(CR20, 0x2, Local0)
                        ShiftRight(CR20, 0x6, Local1)
                        Store(Local0, IO1_)
                        Store(Local1, IO2_)
                        Store(Local0, IO3_)
                        Store(Local1, IO4_)
                        Add(Local0, 0x7, Local2)
                        Store(Local2, IO5_)
                        Store(Local1, IO6_)
                        Store(Local2, IO7_)
                        Store(Local1, IO8_)
                        ShiftRight(CR27, 0x4, Local3)
                        Store(0x1, Local4)
                        ShiftLeft(Local4, Local3, Local5)
                        And(Local5, 0xfe, IRQV)
                        ShiftRight(CR26, 0x4, Local6)
                        Store(0x0, DMAV)
                        If(LNot(LGreater(Local6, 0x3))) {
                            Store(DerefOf(Index(DMMP, Local6, )), DMAV)
                        }
                        EXFG()
                        Return(RSRC)
                    }
                    Name(_PRS, Buffer(0x18) {0x47, 0x1, 0xf0, 0x3, 0xf0, 0x=
3, 0x1, 0x6, 0x47, 0x1, 0xf7, 0x3, 0xf7, 0x3, 0x1, 0x1, 0x22, 0x40, 0x0, 0x=
2a, 0x4, 0x0, 0x79, 0x0 })
                    Method(_SRS, 1) {
                        CreateByteField(Arg0, 0x2, IO1_)
                        CreateByteField(Arg0, 0x3, IO2_)
                        CreateWordField(Arg0, 0x11, IRQV)
                        CreateByteField(Arg0, 0x14, DMAV)
                        CreateWordField(Arg0, 0x2, FDIO)
                        ENFG()
                        ShiftRight(IO1_, 0x2, Local0)
                        ShiftLeft(IO2_, 0x6, Local1)
                        Or(Local0, Local1, CR20)
                        FindSetRightBit(IRQV, Local3)
                        If(Local3) {
                            Decrement(Local3)
                        }
                        ShiftLeft(Local3, 0x4, Local3)
                        And(CR27, 0xf, CR27)
                        Or(CR27, Local3, CR27)
                        FindSetRightBit(DMAV, Local4)
                        Store(DerefOf(Index(DMMT, Local4, )), Local4)
                        ShiftLeft(Local4, 0x4, Local4)
                        And(CR26, 0xf, CR26)
                        Or(CR26, Local4, CR26)
                        EXFG()
                        Store(FDIO, Local6)
                        DECD(0x0, 0x0, Local6, 0x7)
                    }
                    Method(_PSC) {
                        ENFG()
                        If(And(CR00, 0x8, )) {
                            Store(0x0, Local0)
                        }
                        Else {
                            Store(0x3, Local0)
                        }
                        EXFG()
                        Return(Local0)
                    }
                    Name(_PR0, Package(0x0) {
                    })
                    Method(_PS0) {
                        ENFG()
                        Or(CR00, 0x8, CR00)
                        EXFG()
                    }
                    Method(_PS3) {
                        ENFG()
                        And(CR00, 0xf7, CR00)
                        EXFG()
                    }
                }
                Device(LPT_) {
                    Method(_HID) {
                        Store(0x0004d041, Local7)
                        If(LEqual(LPTM, 0x4)) {
                            Store(0x0104d041, Local7)
                        }
                        Return(Local7)
                    }
                    Method(_STA) {
                        ENFG()
                        If(LNot(LEqual(LPTM, 0xff))) {
                            And(CR01, 0x4, Local0)
                            And(CR23, 0xc0, Local1)
                            Store(0x5, Local7)
                            If(LAnd(Local0, Local1)) {
                                Store(0xf, Local7)
                            }
                        }
                        Else {
                            Store(0x0, Local7)
                        }
                        EXFG()
                        Return(Local7)
                    }
                    Method(_DIS) {
                        ENFG()
                        And(CR23, 0x3f, CR23)
                        And(CR26, 0xf0, CR26)
                        And(CR27, 0xf0, CR27)
                        EXFG()
                    }
                    Method(_CRS) {
                        ENFG()
                        If(LNot(LEqual(LPTM, 0x4))) {
                            Name(CRSA, Buffer(0xd) {0x47, 0x1, 0x0, 0x0, 0x=
0, 0x0, 0x1, 0x8, 0x22, 0x0, 0x0, 0x79, 0x0 })
                            And(CR01, 0x4, Local0)
                            And(CR23, 0xc0, Local1)
                            And(CR26, 0xf, Local2)
                            And(CR27, 0xf, Local3)
                            CreateByteField(CRSA, 0x2, IOA1)
                            CreateByteField(CRSA, 0x3, IOA2)
                            CreateByteField(CRSA, 0x4, IOA3)
                            CreateByteField(CRSA, 0x5, IOA4)
                            CreateByteField(CRSA, 0x7, LNA1)
                            CreateWordField(CRSA, 0x9, IRQA)
                            ShiftLeft(CR23, 0x2, Local0)
                            ShiftRight(CR23, 0x6, Local1)
                            Store(Local0, IOA1)
                            Store(Local1, IOA2)
                            Store(Local0, IOA3)
                            Store(Local1, IOA4)
                            If(LEqual(Local0, 0x03bc)) {
                                Store(0x4, LNA1)
                            }
                            Else {
                                Store(0x8, LNA1)
                            }
                            And(CR27, 0xf, Local2)
                            Store(0x1, Local3)
                            ShiftLeft(Local3, Local2, Local4)
                            And(Local4, 0xfe, IRQA)
                            Store(CRSA, Local7)
                        }
                        Else {
                            Name(CRSB, Buffer(0x18) {0x47, 0x1, 0x0, 0x0, 0=
x0, 0x0, 0x1, 0x8, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x8, 0x22, 0x0, 0x0,=
 0x2a, 0x0, 0x0, 0x79, 0x0 })
                            CreateByteField(CRSB, 0x2, IOB1)
                            CreateByteField(CRSB, 0x3, IOB2)
                            CreateByteField(CRSB, 0x4, IOB3)
                            CreateByteField(CRSB, 0x5, IOB4)
                            CreateByteField(CRSB, 0x7, LNB1)
                            CreateByteField(CRSB, 0xa, IOB5)
                            CreateByteField(CRSB, 0xb, IOB6)
                            CreateByteField(CRSB, 0xc, IOB7)
                            CreateByteField(CRSB, 0xd, IOB8)
                            CreateByteField(CRSB, 0xf, LNB2)
                            CreateWordField(CRSB, 0x11, IRQB)
                            CreateWordField(CRSB, 0x14, DMAV)
                            ShiftLeft(CR23, 0x2, Local0)
                            ShiftRight(CR23, 0x6, Local1)
                            Store(Local0, IOB1)
                            Store(Local1, IOB2)
                            Store(Local0, IOB3)
                            Store(Local1, IOB4)
                            Store(Local0, IOB5)
                            Add(Local1, 0x4, IOB6)
                            Store(Local0, IOB7)
                            Add(Local1, 0x4, IOB8)
                            If(LEqual(Local0, 0x03bc)) {
                                Store(0x4, LNB1)
                                Store(0x4, LNB2)
                            }
                            Else {
                                Store(0x8, LNB1)
                                Store(0x8, LNB2)
                            }
                            And(CR27, 0xf, Local2)
                            Store(0x1, Local3)
                            ShiftLeft(Local3, Local2, Local4)
                            And(Local4, 0xfe, IRQB)
                            And(CR26, 0xf, Local5)
                            Store(0x0, DMAV)
                            If(LNot(LGreater(Local5, 0x3))) {
                                Store(DerefOf(Index(DMMP, Local5, )), DMAV)
                            }
                            Store(CRSB, Local7)
                        }
                        EXFG()
                        Return(Local7)
                    }
                    Name(PRSA, Buffer(0x6f) {0x30, 0x47, 0x1, 0x78, 0x3, 0x=
78, 0x3, 0x1, 0x8, 0x22, 0x80, 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, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x8, 0x22, 0x=
20, 0x0, 0x30, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x1, 0x4, 0x22, 0x80, 0x0, =
0x30, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x1, 0x4, 0x22, 0x20, 0x0, 0x30, 0x4=
7, 0x1, 0x78, 0x3, 0x78, 0x3, 0x1, 0x8, 0x22, 0xa0, 0xc, 0x30, 0x47, 0x1, 0=
x78, 0x2, 0x78, 0x2, 0x1, 0x8, 0x22, 0xa0, 0xc, 0x30, 0x47, 0x1, 0xbc, 0x3,=
 0xbc, 0x3, 0x1, 0x4, 0x22, 0xa0, 0xc, 0x38, 0x79, 0x0 })
                    Name(PRSB, Buffer(0xd2) {0x30, 0x47, 0x1, 0x78, 0x3, 0x=
78, 0x3, 0x1, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x1, 0x8, 0x22, 0x80, 0=
x0, 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, 0x47, 0x1, 0x78, 0x2, 0x=
78, 0x2, 0x1, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x1, 0x8, 0x22, 0x20, 0=
x0, 0x2a, 0xb, 0x0, 0x30, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x1, 0x4, 0x47, =
0x1, 0xbc, 0x7, 0xbc, 0x7, 0x1, 0x4, 0x22, 0x80, 0x0, 0x2a, 0xb, 0x0, 0x30,=
 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x1, 0x4, 0x47, 0x1, 0xbc, 0x7, 0xbc, 0x7=
, 0x1, 0x4, 0x22, 0x20, 0x0, 0x2a, 0xb, 0x0, 0x30, 0x47, 0x1, 0x78, 0x3, 0x=
78, 0x3, 0x1, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x1, 0x8, 0x22, 0xa0, 0=
xc, 0x2a, 0xb, 0x0, 0x30, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x1, 0x8, 0x47, =
0x1, 0x78, 0x6, 0x78, 0x6, 0x1, 0x8, 0x22, 0xa0, 0xc, 0x2a, 0xb, 0x0, 0x30,=
 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x1, 0x4, 0x47, 0x1, 0xbc, 0x7, 0xbc, 0x7=
, 0x1, 0x4, 0x22, 0xa0, 0xc, 0x2a, 0xb, 0x0, 0x38, 0x79, 0x0 })
                    Method(_PRS) {
                        Store(PRSA, Local7)
                        If(LEqual(LPTM, 0x4)) {
                            Store(PRSB, Local7)
                        }
                        Return(Local7)
                    }
                    Method(_SRS, 1) {
                        ENFG()
                        CreateByteField(Arg0, 0x2, IO1_)
                        CreateByteField(Arg0, 0x3, IO2_)
                        CreateWordField(Arg0, 0x9, IRQV)
                        CreateWordField(Arg0, 0x11, EIRQ)
                        CreateByteField(Arg0, 0x14, EDMA)
                        CreateWordField(Arg0, 0x2, LPIO)
                        ShiftRight(IO1_, 0x2, Local0)
                        ShiftLeft(IO2_, 0x6, Local1)
                        Or(Local0, Local1, CR23)
                        If(LEqual(LPTM, 0x4)) {
                            FindSetRightBit(EDMA, Local2)
                            Store(DerefOf(Index(DMMT, Local2, )), Local3)
                            And(CR26, 0xf0, CR26)
                            Or(CR26, Local3, CR26)
                            FindSetRightBit(EIRQ, Local4)
                        }
                        Else {
                            FindSetRightBit(IRQV, Local4)
                        }
                        If(Local4) {
                            Decrement(Local4)
                        }
                        And(CR27, 0xf0, CR27)
                        Or(CR27, Local4, CR27)
                        EXFG()
                        Store(LPIO, Local6)
                        DECD(0x0, 0x0, Local6, 0x7)
                    }
                    Method(_PSC) {
                        ENFG()
                        If(And(CR01, 0x4, )) {
                            Store(0x0, Local0)
                        }
                        Else {
                            Store(0x3, Local0)
                        }
                        EXFG()
                        Return(Local0)
                    }
                    Name(_PR0, Package(0x0) {
                    })
                    Method(_PS0) {
                        ENFG()
                        Or(CR01, 0x4, CR01)
                        EXFG()
                    }
                    Method(_PS3) {
                        ENFG()
                        And(CR01, 0xfb, CR01)
                        EXFG()
                    }
                }
                Device(COM1) {
                    Name(_HID, 0x0105d041)
                    Method(_STA) {
                        ENFG()
                        Store(0x0, Local7)
                        If(LNot(LEqual(UT1M, 0xff))) {
                            Store(0xf, Local7)
                            If(And(CR02, 0x8, )) {
                                And(Local7, 0xf7, )
                            }
                            If(And(CR24, 0xc0, )) {
                                And(Local7, 0xfd, )
                            }
                        }
                        EXFG()
                        Return(Local7)
                    }
                    Method(_DIS) {
                        ENFG()
                        And(CR24, 0x3f, CR24)
                        EXFG()
                    }
                    Method(_CRS) {
                        Name(RSRC, Buffer(0xd) {0x47, 0x1, 0xf8, 0x3, 0xf8,=
 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x79, 0x0 })
                        ENFG()
                        CreateByteField(RSRC, 0x2, IO1_)
                        CreateByteField(RSRC, 0x3, IO2_)
                        CreateByteField(RSRC, 0x4, IO3_)
                        CreateByteField(RSRC, 0x5, IO4_)
                        CreateByteField(RSRC, 0x7, LN1_)
                        CreateWordField(RSRC, 0x9, IRQV)
                        ShiftLeft(CR24, 0x2, Local0)
                        ShiftRight(CR24, 0x6, Local1)
                        Store(Local0, IO1_)
                        Store(Local1, IO2_)
                        Store(Local0, IO3_)
                        Store(Local1, IO4_)
                        If(And(CR24, 0xc0, )) {
                            Store(0x8, LN1_)
                        }
                        Else {
                            Store(0x0, LN1_)
                        }
                        ShiftRight(CR28, 0x4, Local0)
                        Store(0x1, Local1)
                        ShiftLeft(Local1, Local0, Local0)
                        And(Local0, 0xfe, Local0)
                        Store(Local0, IRQV)
                        EXFG()
                        Return(RSRC)
                    }
                    Name(_PRS, Buffer(0x63) {0x30, 0x47, 0x1, 0xf8, 0x3, 0x=
f8, 0x3, 0x1, 0x8, 0x22, 0x10, 0x0, 0x30, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, =
0x1, 0x8, 0x22, 0x8, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x1, 0x8, =
0x22, 0x10, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x1, 0x8, 0x22, 0x8=
, 0x0, 0x30, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x1, 0x8, 0x22, 0x8, 0x0, 0x3=
0, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x1, 0x8, 0x22, 0x10, 0x0, 0x30, 0x47, =
0x1, 0xe8, 0x3, 0xe8, 0x3, 0x1, 0x8, 0x22, 0x8, 0x0, 0x30, 0x47, 0x1, 0xe8,=
 0x2, 0xe8, 0x2, 0x1, 0x8, 0x22, 0x10, 0x0, 0x38, 0x79, 0x0 })
                    Method(_SRS, 1) {
                        CreateByteField(Arg0, 0x2, IO1_)
                        CreateByteField(Arg0, 0x3, IO2_)
                        CreateWordField(Arg0, 0x9, IRQV)
                        CreateWordField(Arg0, 0x2, CAIO)
                        ENFG()
                        Store(0x0, CR24)
                        ShiftRight(IO1_, 0x2, Local0)
                        ShiftLeft(IO2_, 0x6, Local1)
                        Or(Local0, Local1, CR24)
                        FindSetRightBit(IRQV, Local0)
                        If(Local0) {
                            Decrement(Local0)
                        }
                        ShiftLeft(Local0, 0x4, Local0)
                        And(CR28, 0xf, CR28)
                        Or(CR28, Local0, CR28)
                        EXFG()
                        Store(CAIO, Local6)
                        DECD(0x11, 0x0, Local6, 0x7)
                    }
                    Method(_PSC) {
                        ENFG()
                        If(And(CR02, 0x8, )) {
                            Store(0x0, Local0)
                        }
                        Else {
                            Store(0x3, Local0)
                        }
                        EXFG()
                        Return(Local0)
                    }
                    Name(_PR0, Package(0x0) {
                    })
                    Method(_PS0) {
                        ENFG()
                        Or(CR02, 0x8, CR02)
                        EXFG()
                    }
                    Method(_PS3) {
                        ENFG()
                        And(CR02, 0xf7, CR02)
                        EXFG()
                    }
                    Name(_PRW, Package(0x2) {
                        0xa,
                        0x4,
                    })
                }
                Device(SIRA) {
                    Name(_HID, 0x1005d041)
                    Method(_STA) {
                        ENFG()
                        If(LEqual(UT2M, 0x2)) {
                            And(CR02, 0x80, Local0)
                            And(CR25, 0xc0, Local1)
                            And(CR28, 0xf, Local2)
                            Store(0x5, Local7)
                            If(LAnd(LAnd(Local0, Local1), LNot(LEqual(Local=
2, 0xf)))) {
                                Store(0xf, Local7)
                            }
                        }
                        Else {
                            Store(0x0, Local7)
                        }
                        EXFG()
                        Return(Local7)
                    }
                    Method(_DIS) {
                        ENFG()
                        And(CR02, 0x7f, CR02)
                        EXFG()
                    }
                    Method(_CRS) {
                        Name(RSRC, Buffer(0xd) {0x47, 0x1, 0x0, 0x0, 0x0, 0=
x0, 0x1, 0x8, 0x22, 0x0, 0x0, 0x79, 0x0 })
                        ENFG()
                        And(CR25, 0xc0, Local0)
                        And(CR02, 0x80, Local1)
                        If(LAnd(Local0, Local1)) {
                            CreateByteField(RSRC, 0x2, IO1_)
                            CreateByteField(RSRC, 0x3, IO2_)
                            CreateByteField(RSRC, 0x4, IO3_)
                            CreateByteField(RSRC, 0x5, IO4_)
                            CreateWordField(RSRC, 0x9, IRQV)
                            ShiftLeft(CR25, 0x2, Local2)
                            ShiftRight(CR25, 0x6, Local3)
                            Store(Local2, IO1_)
                            Store(Local3, IO2_)
                            Store(Local2, IO3_)
                            Store(Local3, IO4_)
                            And(CR28, 0xf, Local5)
                            Store(0x1, Local4)
                            ShiftLeft(Local4, Local5, IRQV)
                        }
                        EXFG()
                        Return(RSRC)
                    }
                    Name(_PRS, Buffer(0x63) {0x30, 0x47, 0x1, 0xf8, 0x3, 0x=
f8, 0x3, 0x8, 0x8, 0x22, 0x10, 0x0, 0x30, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, =
0x8, 0x8, 0x22, 0x8, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x8, 0x8, =
0x22, 0x10, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x8, 0x8, 0x22, 0x8=
, 0x0, 0x30, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x8, 0x8, 0x22, 0x8, 0x0, 0x3=
0, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x8, 0x8, 0x22, 0x10, 0x0, 0x30, 0x47, =
0x1, 0xe8, 0x3, 0xe8, 0x3, 0x8, 0x8, 0x22, 0x8, 0x0, 0x30, 0x47, 0x1, 0xe8,=
 0x2, 0xe8, 0x2, 0x8, 0x8, 0x22, 0x10, 0x0, 0x38, 0x79, 0x0 })
                    Method(_SRS, 1) {
                        CreateByteField(Arg0, 0x2, IO1_)
                        CreateByteField(Arg0, 0x3, IO2_)
                        CreateWordField(Arg0, 0x9, IRQV)
                        CreateWordField(Arg0, 0x2, SIRO)
                        ENFG()
                        ShiftRight(IO1_, 0x2, Local1)
                        ShiftLeft(IO2_, 0x6, Local2)
                        Or(Local1, Local2, CR25)
                        FindSetRightBit(IRQV, Local3)
                        Decrement(Local3)
                        And(CR28, 0xf0, CR28)
                        Or(CR28, Local3, CR28)
                        Or(CR02, 0x80, CR02)
                        And(CR07, 0xdf, CR07)
                        EXFG()
                        Store(SIRO, Local6)
                        DECD(0x22, 0x0, Local6, 0x7)
                    }
                    Method(_PSC) {
                        ENFG()
                        If(And(CR02, 0x80, )) {
                            Store(0x0, Local0)
                        }
                        Else {
                            Store(0x3, Local0)
                        }
                        EXFG()
                        Return(Local0)
                    }
                    Name(_PR0, Package(0x0) {
                    })
                    Method(_PS0) {
                        ENFG()
                        Or(CR02, 0x80, CR02)
                        EXFG()
                    }
                    Method(_PS3) {
                        ENFG()
                        And(CR02, 0x7f, CR02)
                        EXFG()
                    }
                }
                Device(FIRA) {
                    Name(_HID, 0x10f0a34d)
                    Method(_STA) {
                        ENFG()
                        If(LEqual(UT2M, 0x4)) {
                            And(CR02, 0x80, Local0)
                            And(CR25, 0xc0, Local1)
                            And(CR28, 0xf, Local2)
                            And(CR2B, 0xe0, Local3)
                            And(CR2C, 0xf, Local4)
                            Store(0x5, Local7)
                            If(LAnd(LAnd(Local0, Local1), LNot(LEqual(Local=
2, 0xf)))) {
                                If(LAnd(Local3, LNot(LGreater(Local4, 0x3))=
)) {
                                    Store(0xf, Local7)
                                }
                            }
                        }
                        Else {
                            Store(0x0, Local7)
                        }
                        EXFG()
                        Return(Local7)
                    }
                    Method(_DIS) {
                        ENFG()
                        And(CR02, 0x7f, CR02)
                        EXFG()
                    }
                    Method(_CRS) {
                        Name(RSRC, Buffer(0x18) {0x47, 0x1, 0x0, 0x0, 0x0, =
0x0, 0x1, 0x8, 0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1, 0x8, 0x22, 0x0, 0x0, 0x2=
a, 0x0, 0x0, 0x79, 0x0 })
                        ENFG()
                        And(CR25, 0xc0, Local0)
                        And(CR02, 0x80, Local1)
                        If(LAnd(Local0, Local1)) {
                            CreateByteField(RSRC, 0x2, IOU1)
                            CreateByteField(RSRC, 0x3, IOU2)
                            CreateByteField(RSRC, 0x4, IOU3)
                            CreateByteField(RSRC, 0x5, IOU4)
                            CreateByteField(RSRC, 0xa, IOF1)
                            CreateByteField(RSRC, 0xb, IOF2)
                            CreateByteField(RSRC, 0xc, IOF3)
                            CreateByteField(RSRC, 0xd, IOF4)
                            CreateWordField(RSRC, 0x11, IRQV)
                            CreateByteField(RSRC, 0x14, DMAV)
                            ShiftLeft(CR25, 0x2, Local2)
                            ShiftRight(CR25, 0x6, Local3)
                            Store(Local2, IOU1)
                            Store(Local3, IOU2)
                            Store(Local2, IOU3)
                            Store(Local3, IOU4)
                            And(CR28, 0xf, Local5)
                            Store(0x1, Local4)
                            ShiftLeft(CR2B, 0x3, Local6)
                            ShiftRight(CR2B, 0x5, Local7)
                            Store(Local6, IOF1)
                            Store(Local7, IOF2)
                            Store(Local6, IOF3)
                            Store(Local7, IOF4)
                            ShiftLeft(Local4, Local5, IRQV)
                            And(CR2C, 0xf, Local4)
                            Store(DerefOf(Index(DMMP, Local4, )), DMAV)
                        }
                        EXFG()
                        Return(RSRC)
                    }
                    Name(_PRS, Buffer(0xbb) {0x30, 0x47, 0x1, 0xf8, 0x3, 0x=
f8, 0x3, 0x8, 0x8, 0x47, 0x1, 0x58, 0x2, 0x58, 0x2, 0x8, 0x8, 0x22, 0x10, 0=
x0, 0x2a, 0xb, 0x0, 0x30, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x8, 0x8, 0x47, =
0x1, 0x58, 0x1, 0x58, 0x1, 0x8, 0x8, 0x22, 0x8, 0x0, 0x2a, 0xb, 0x0, 0x30, =
0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x8, 0x8, 0x47, 0x1, 0x48, 0x2, 0x48, 0x2,=
 0x8, 0x8, 0x22, 0x10, 0x0, 0x2a, 0xb, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x2, 0xe=
8, 0x2, 0x8, 0x8, 0x47, 0x1, 0x48, 0x1, 0x48, 0x1, 0x8, 0x8, 0x22, 0x8, 0x0=
, 0x2a, 0xb, 0x0, 0x30, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x8, 0x8, 0x47, 0x=
1, 0x58, 0x2, 0x58, 0x2, 0x8, 0x8, 0x22, 0x8, 0x0, 0x2a, 0xb, 0x0, 0x30, 0x=
47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x8, 0x8, 0x47, 0x1, 0x58, 0x1, 0x58, 0x1, 0=
x8, 0x8, 0x22, 0x10, 0x0, 0x2a, 0xb, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x3, 0xe8,=
 0x3, 0x8, 0x8, 0x47, 0x1, 0x48, 0x2, 0x48, 0x2, 0x8, 0x8, 0x22, 0x8, 0x0, =
0x2a, 0xb, 0x0, 0x30, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x8, 0x8, 0x47, 0x1,=
 0x48, 0x1, 0x48, 0x1, 0x8, 0x8, 0x22, 0x10, 0x0, 0x2a, 0xb, 0x0, 0x38, 0x7=
9, 0x0 })
                    Method(_SRS, 1) {
                        CreateByteField(Arg0, 0x2, IOU1)
                        CreateByteField(Arg0, 0x3, IOU2)
                        CreateByteField(Arg0, 0xa, IOF1)
                        CreateByteField(Arg0, 0xb, IOF2)
                        CreateWordField(Arg0, 0x11, IRQV)
                        CreateWordField(Arg0, 0x14, DMAV)
                        CreateWordField(Arg0, 0x2, FIRO)
                        ENFG()
                        ShiftRight(IOU1, 0x2, Local1)
                        ShiftLeft(IOU2, 0x6, Local2)
                        Or(Local1, Local2, CR25)
                        FindSetRightBit(IRQV, Local3)
                        Decrement(Local3)
                        And(CR28, 0xf0, CR28)
                        Or(CR28, Local3, CR28)
                        ShiftRight(IOF1, 0x3, Local1)
                        ShiftLeft(IOF2, 0x5, Local2)
                        Or(Local1, Local2, CR2B)
                        FindSetRightBit(DMAV, Local4)
                        Store(DerefOf(Index(DMMT, Local4, )), Local4)
                        And(CR2C, 0xf, CR2C)
                        Or(CR2C, Local4, CR2C)
                        Or(CR02, 0x80, CR02)
                        EXFG()
                        Store(FIRO, Local6)
                        DECD(0x22, 0x0, Local6, 0x7)
                    }
                    Method(_PSC) {
                        ENFG()
                        If(And(CR02, 0x80, )) {
                            Store(0x0, Local0)
                        }
                        Else {
                            Store(0x3, Local0)
                        }
                        EXFG()
                        Return(Local0)
                    }
                    Name(_PR0, Package(0x0) {
                    })
                    Method(_PS0) {
                        ENFG()
                        Or(CR02, 0x80, CR02)
                        EXFG()
                    }
                    Method(_PS3) {
                        ENFG()
                        And(CR02, 0x7f, CR02)
                        EXFG()
                    }
                }
            }
            Device(LNKA) {
                Name(_HID, 0x0f0cd041)
                Name(_UID, 0x1)
                Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xce, 0x18, 0x79, 0x0 })
                Name(RSRC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
                Method(_DIS) {
                    Store("LNKA_DIS", Debug)
                    Or(\_SB_.PCI0.PX40.PIRA, 0x80, \_SB_.PCI0.PX40.PIRA)
                }
                Method(_CRS) {
                    Store("LNKA_CRS", Debug)
                    CreateWordField(RSRC, 0x1, IRQ0)
                    Store(Zero, IRQ0)
                    If(LNot(And(\_SB_.PCI0.PX40.PIRA, 0x80, ))) {
                        And(\_SB_.PCI0.PX40.PIRA, 0xf, Local0)
                        ShiftLeft(0x1, Local0, IRQ0)
                    }
                    Store(RSRC, Debug)
                    Return(RSRC)
                }
                Method(_SRS, 1) {
                    Store("LNKA_SRS", Debug)
                    Store(Arg0, Debug)
                    CreateWordField(Arg0, 0x1, IRQ0)
                    FindSetRightBit(IRQ0, Local0)
                    Decrement(Local0)
                    Or(Local0, And(\_SB_.PCI0.PX40.PIRA, 0x70, ), \_SB_.PCI=
0.PX40.PIRA)
                }
                Method(_STA) {
                    Store("LNKA_STA", Debug)
                    If(And(\_SB_.PCI0.PX40.PIRA, 0x80, )) {
                        Store(0x9, Debug)
                        Return(0x9)
                    }
                    Store(0xb, Debug)
                    Return(0xb)
                }
            }
            Device(LNKB) {
                Name(_HID, 0x0f0cd041)
                Name(_UID, 0x2)
                Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xce, 0x18, 0x79, 0x0 })
                Name(RSRC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
                Method(_DIS) {
                    Store("LNKB_DIS", Debug)
                    Or(\_SB_.PCI0.PX40.PIRB, 0x80, \_SB_.PCI0.PX40.PIRB)
                }
                Method(_CRS) {
                    CreateWordField(RSRC, 0x1, IRQ0)
                    Store(Zero, IRQ0)
                    If(LNot(And(\_SB_.PCI0.PX40.PIRB, 0x80, ))) {
                        And(\_SB_.PCI0.PX40.PIRB, 0xf, Local0)
                        ShiftLeft(0x1, Local0, IRQ0)
                    }
                    Return(RSRC)
                }
                Method(_SRS, 1) {
                    CreateWordField(Arg0, 0x1, IRQ0)
                    FindSetRightBit(IRQ0, Local0)
                    Decrement(Local0)
                    Or(Local0, And(\_SB_.PCI0.PX40.PIRB, 0x70, ), \_SB_.PCI=
0.PX40.PIRB)
                }
                Method(_STA) {
                    If(And(\_SB_.PCI0.PX40.PIRB, 0x80, )) {
                        Return(0x9)
                    }
                    Return(0xb)
                }
            }
            Device(LNKC) {
                Name(_HID, 0x0f0cd041)
                Name(_UID, 0x3)
                Name(_PRS, Buffer(0x6) {0x23, 0xa0, 0x0, 0x18, 0x79, 0x0 })
                Name(RSRC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
                Method(_DIS) {
                    Or(\_SB_.PCI0.PX40.PIRC, 0x80, \_SB_.PCI0.PX40.PIRC)
                }
                Method(_CRS) {
                    CreateWordField(RSRC, 0x1, IRQ0)
                    Store(Zero, IRQ0)
                    If(LNot(And(\_SB_.PCI0.PX40.PIRC, 0x80, ))) {
                        And(\_SB_.PCI0.PX40.PIRC, 0xf, Local0)
                        ShiftLeft(0x1, Local0, IRQ0)
                    }
                    Return(RSRC)
                }
                Method(_SRS, 1) {
                    CreateWordField(Arg0, 0x1, IRQ0)
                    FindSetRightBit(IRQ0, Local0)
                    Decrement(Local0)
                    Or(Local0, And(\_SB_.PCI0.PX40.PIRC, 0x70, ), \_SB_.PCI=
0.PX40.PIRC)
                }
                Method(_STA) {
                    If(And(\_SB_.PCI0.PX40.PIRC, 0x80, )) {
                        Return(0x9)
                    }
                    Return(0xb)
                }
            }
            Device(LNKD) {
                Name(_HID, 0x0f0cd041)
                Name(_UID, 0x4)
                Name(_PRS, Buffer(0x6) {0x23, 0xf8, 0xce, 0x18, 0x79, 0x0 })
                Name(RSRC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
                Method(_DIS) {
                    Or(\_SB_.PCI0.PX40.PIRD, 0x80, \_SB_.PCI0.PX40.PIRD)
                }
                Method(_CRS) {
                    CreateWordField(RSRC, 0x1, IRQ0)
                    Store(Zero, IRQ0)
                    If(LNot(And(\_SB_.PCI0.PX40.PIRD, 0x80, ))) {
                        And(\_SB_.PCI0.PX40.PIRD, 0xf, Local0)
                        ShiftLeft(0x1, Local0, IRQ0)
                    }
                    Return(RSRC)
                }
                Method(_SRS, 1) {
                    CreateWordField(Arg0, 0x1, IRQ0)
                    FindSetRightBit(IRQ0, Local0)
                    Decrement(Local0)
                    Or(Local0, And(\_SB_.PCI0.PX40.PIRD, 0x70, ), \_SB_.PCI=
0.PX40.PIRD)
                }
                Method(_STA) {
                    If(And(\_SB_.PCI0.PX40.PIRD, 0x80, )) {
                        Return(0x9)
                    }
                    Return(0xb)
                }
            }
            Device(MOTH) {
                Name(_HID, 0x020cd041)
                Name(_CRS, Buffer(0x22) {0x47, 0x1, 0xd0, 0x4, 0xd0, 0x4, 0=
x1, 0x2, 0x47, 0x1, 0x40, 0x10, 0x40, 0x10, 0x1, 0x10, 0x47, 0x1, 0x10, 0x3=
8, 0x10, 0x38, 0x1, 0x10, 0x47, 0x1, 0x16, 0x10, 0x16, 0x10, 0x1, 0x2a, 0x7=
9, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(DMAA) {
                Name(_HID, 0x0002d041)
                Name(_CRS, Buffer(0x1d) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1=
, 0x10, 0x47, 0x1, 0x81, 0x0, 0x81, 0x0, 0x1, 0xf, 0x47, 0x1, 0xc0, 0x0, 0x=
c0, 0x0, 0x1, 0x20, 0x2a, 0x10, 0x2, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(RTC_) {
                Name(_HID, 0x000bd041)
                Name(_CRS, Buffer(0xd) {0x47, 0x1, 0x70, 0x0, 0x70, 0x0, 0x=
1, 0x2, 0x22, 0x0, 0x1, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(PIC_) {
                Name(_HID, 0xd041)
                Name(_CRS, Buffer(0x15) {0x47, 0x1, 0x20, 0x0, 0x20, 0x0, 0=
x1, 0x2, 0x47, 0x1, 0xa0, 0x0, 0xa0, 0x0, 0x1, 0x2, 0x22, 0x4, 0x0, 0x79, 0=
x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(FPU_) {
                Name(_HID, 0x040cd041)
                Name(_CRS, Buffer(0xd) {0x47, 0x1, 0xf0, 0x0, 0xf0, 0x0, 0x=
1, 0xf, 0x22, 0x0, 0x20, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(TMR_) {
                Name(_HID, 0x0001d041)
                Name(_CRS, Buffer(0xd) {0x47, 0x1, 0x40, 0x0, 0x40, 0x0, 0x=
1, 0x4, 0x22, 0x1, 0x0, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(SPKR) {
                Name(_HID, 0x0008d041)
                Name(_CRS, Buffer(0xa) {0x47, 0x1, 0x61, 0x0, 0x61, 0x0, 0x=
1, 0x1, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Method(ECOK) {
                If(LAnd(And(\_SB_.PCI0.PX40.EC0_.OPRG, 0x8, ), And(MFLG, 0x=
1, ))) {
                    Return(0x1)
                }
                Else {
                    Return(0x0)
                }
            }
            Device(EC0_) {
                Name(_HID, 0x090cd041)
                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, 0x9)
                Name(OPRG, 0x17)
                Method(_REG, 2) {
                    If(LEqual(Arg0, 0x3)) {
                        If(LEqual(Arg1, 0x0)) {
                            And(OPRG, Not(0x8, ), OPRG)
                        }
                        Else {
                            Or(OPRG, 0x8, OPRG)
                        }
                    }
                }
                OperationRegion(RAM_, EmbeddedControl, 0x28, 0x40)
                Field(RAM_, AnyAcc, Lock, Preserve) {
                    TMP_,	8,
                    TMPC,	8,
                    TMPA,	8,
                    TMPP,	8,
                    DCID,	8,
                    Offset(0x6),
                    ,	1,
                    ,	1,
                    TME0,	1,
                    TME1,	1,
                    ,	1,
                    PHDD,	1,
                    SHDD,	1,
                    FDD_,	1,
                    DPWR,	1,
                    UDR0,	1,
                    UDR5,	1,
                    EQBF,	1,
                    LDDS,	1,
                    CRST,	1,
                    DCWT,	1,
                    QVCC,	1,
                    S1LD,	1,
                    S2LD,	1,
                    VGAQ,	1,
                    LIDS,	1,
                    LWAK,	1,
                    MWAK,	1,
                    ADP_,	1,
                    POLL,	1,
                    Offset(0xa),
                    Offset(0x16),
                    BAT0,	1,
                    BAT1,	1,
                    BAT2,	1,
                    BAT3,	1,
                    Offset(0x17),
                    Offset(0x18),
                    BDC0,	16,
                    BDV0,	16,
                    BTY0,	1,
                    Offset(0x1d),
                    BST0,	8,
                    BPR0,	16,
                    BRC0,	16,
                    BPV0,	16,
                    BTP0,	16,
                    Offset(0x28),
                    BDC1,	16,
                    BDV1,	16,
                    BTY1,	1,
                    Offset(0x2d),
                    BST1,	8,
                    BPR1,	16,
                    BRC1,	16,
                    BPV1,	16,
                    BTP1,	16,
                    Offset(0x38),
                    LDEN,	1,
                    S1EN,	1,
                    ,	3,
                    SFLD,	1,
                    LIDC,	1,
                    Offset(0x39),
                    Offset(0x3a),
                    Offset(0x3b),
                    Offset(0x3c),
                    Offset(0x3d),
                    Offset(0x3e),
                    MODE,	1,
                    FAN0,	1,
                    FAN1,	1,
                    Offset(0x3f),
                    PWRW,	1,
                    RNGW,	1,
                    LANW,	1,
                    COMW,	1,
                    Offset(0x40)
                }
                Method(_Q03) {
                    Notify(\_TZ_.THRM, 0x80)
                }
                Method(_Q04) {
                    Store(0x89, \_SB_.BCMD)
                    Store(0x0, \_SB_.SMIC)
                    Store(\_SB_.PCI0.PX40.EC0_.DCID, \_SB_.DKTP)
                    Store(\_SB_.PCI0.PX40.EC0_.DCID, \_SB_.DKSN)
                    Store(0x1, \_SB_.PCI0.PX40.EC0_.LDDS)
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.DCWT)
                    If(LEqual(\_SB_.PCI0.PX40.EC0_.DCID, 0x3)) {
                        Store(0x1, \_SB_.PCI0.PX40.EC0_.DPWR)
                        Notify(\_SB_.PCI0.FDS_, 0x0)
                    }
                    Else {
                        Notify(\_SB_.PCI0.SPR_, 0x0)
                    }
                }
                Method(_Q05) {
                    Store(\_SB_.PCI0.PX40.EC0_.DCID, \_SB_.DKTP)
                    Store(\_SB_.PCI0.PX40.EC0_.DCID, \_SB_.DKSN)
                    If(LNot(LEqual(\_SB_.PCI0.PX40.EC0_.DCID, 0x0))) {
                        If(LEqual(\_SB_.PCI0.PX40.EC0_.DCID, 0x3)) {
                            Notify(\_SB_.PCI0.FDS_, 0x1)
                        }
                        Else {
                            Notify(\_SB_.PCI0.SPR_, 0x1)
                        }
                    }
                    Else {
                        Store(0x89, \_SB_.BCMD)
                        Store(0x0, \_SB_.SMIC)
                        Store(0x0, \_SB_.PCI0.PX40.EC0_.LDDS)
                        Store(0x1, \_SB_.PCI0.PX40.EC0_.DCWT)
                    }
                }
                Method(_Q06) {
                    If(SHDD) {
                        Sleep(0x01f4)
                        Store(0x1, \_SB_.PCI0.PX40.SISI)
                        Store(0x1, \_SB_.PCI0.PX43.SDPW)
                        Store(0x1, \_SB_.PCI0.PX43.SRST)
                        Sleep(0x32)
                        Store(0x0, \_SB_.PCI0.PX43.SDPW)
                        Sleep(0x32)
                        Store(0x0, \_SB_.PCI0.PX40.SISI)
                        Sleep(0x32)
                        Store(0x1, \_SB_.PCI0.PX41.SIDE)
                        Sleep(0x32)
                        Store(0x0, \_SB_.PCI0.PX43.SRST)
                        Store(0x14, Local7)
                        While(Local7) {
                            Sleep(0x01f4)
                            Decrement(Local7)
                        }
                        Notify(\_SB_.PCI0.PX41.SECN, 0x0)
                    }
                    Else {
                    }
                }
                Method(_Q08) {
                    Store("Geyserville", Debug)
                    Store(0x83, \_SB_.BCMD)
                    Store(0x0, \_SB_.SMIC)
                    If(\_SB_.PCI0.PX43.ACPW) {
                        Notify(\_SB_.AC__, 0x80)
                    }
                    Else {
                        Notify(\_SB_.AC__, 0x80)
                    }
                }
                Method(_Q09) {
                    If(\_SB_.PCI0.PX40.EC0_.BAT0) {
                        Notify(\_SB_.BAT0, 0x80)
                    }
                    Else {
                        Notify(\_SB_.BAT0, 0x80)
                    }
                    If(\_SB_.PCI0.PX40.EC0_.BAT1) {
                        Notify(\_SB_.BAT1, 0x80)
                    }
                    Else {
                        Notify(\_SB_.BAT1, 0x80)
                    }
                }
                Method(_Q0B) {
                    Notify(\_SB_.BAT0, 0x80)
                    Notify(\_SB_.BAT1, 0x80)
                }
                Method(_Q0D) {
                    Notify(\_SB_.SBTN, 0x80)
                }
                Method(_Q0E) {
                    Store(0x1, PWRS)
                    Notify(\_SB_.PWRB, 0x80)
                }
            }
            Device(KBC_) {
                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 })
                Method(_STA) {
                    Return(0xf)
                }
            }
            Device(MOUE) {
                Name(_HID, 0x130fd041)
                Name(_CRS, Buffer(0x5) {0x22, 0x0, 0x10, 0x79, 0x0 })
                Method(_STA) {
                    Return(0xf)
                }
            }
        }
        Device(PX41) {
            Name(_ADR, 0x00070001)
            Device(PRIM) {
                Name(_ADR, 0x0)
                Method(_STA) {
                    Store("PCI IDE Primary _STA", Debug)
                    Return(0xf)
                }
                Device(MAST) {
                    Name(_ADR, 0x0)
                }
                Device(SLAV) {
                    Name(_ADR, 0x1)
                }
            }
            Device(SECN) {
                Name(_ADR, 0x1)
                Method(_STA) {
                    Store(0x1, \_SB_.PCI0.PX41.SIDE)
                    Return(0xf)
                }
                Device(MAST) {
                    Name(_ADR, 0x0)
                    Method(_STA) {
                        Store(BEXT(), Local7)
                        Return(Local7)
                    }
                    Method(_EJ3, 1) {
                        If(Arg0) {
                            Store(0x0, \_SB_.PCI0.PX41.SIDE)
                            Store(0x1, \_SB_.PCI0.PX40.SISI)
                            Store(0x1, \_SB_.PCI0.PX43.SDPW)
                        }
                        Return(0x0)
                    }
                }
                Device(SLAV) {
                    Name(_ADR, 0x1)
                    Method(_STA) {
                        Store(BEXT(), Local7)
                        Return(Local7)
                    }
                    Name(_EJD, "\_SB_.PCI0.PX41.SECN.MAST")
                }
                Method(BEXT) {
                    If(\_SB_.PCI0.PX40.ECOK()) {
                        Store(0x0, Local7)
                        Store(\_SB_.PCI0.PX40.EC0_.SHDD, Local0)
                        Store(\_SB_.PCI0.PX41.SIDE, Local1)
                        Store(LNot(\_SB_.PCI0.PX43.SDPW), Local2)
                        Store(LNot(\_SB_.PCI0.PX43.SRST), Local3)
                        Store(LNot(\_SB_.PCI0.PX40.SISI), Local4)
                        If(LAnd(Local0, Local1)) {
                            If(LAnd(Local2, Local3)) {
                                If(Local4) {
                                    Store(0xf, Local7)
                                }
                            }
                        }
                        If(LNot(Local7)) {
                            Store(0x1, \_SB_.PCI0.PX43.SDPW)
                        }
                    }
                    Else {
                        Store(0xf, Local7)
                    }
                    Return(Local7)
                }
            }
            Name(_PSC, 0x0)
            Name(_PR0, Package(0x0) {
            })
            Method(_PS0) {
                Store("IDE_PS0", Debug)
                Store(0x0, _PSC)
            }
            Method(_PS3) {
                Store("IDE_PS3", Debug)
                Store(0x87, \_SB_.BCMD)
                Store(0x0, \_SB_.SMIC)
                Store(0x3, _PSC)
            }
            OperationRegion(PIDE, PCI_Config, 0x40, 0x4)
            Field(PIDE, DWordAcc, NoLock, Preserve) {
                ,	31,
                SIDE,	1
            }
            Field(PIDE, DWordAcc, NoLock, Preserve) {
                Offset(0x2),
                SIDT,	16
            }
        }
        Device(PX42) {
            Name(_ADR, 0x00070002)
            Name(_PSC, 0x0)
            Name(_PR0, Package(0x0) {
            })
            Method(_PS0) {
                Store("USB_PS0", Debug)
                Store(0x0, _PSC)
            }
            Method(_PS3) {
                Store("USB_PS3", Debug)
                Store(0x3, _PSC)
            }
            Name(_PRW, Package(0x2) {
                0x8,
                0x4,
            })
            Method(_STA) {
                Store("USB_STA", Debug)
                Return(0xf)
            }
        }
        Device(PX43) {
            Name(_ADR, 0x00070003)
            Method(_STA) {
                Return(0xf)
            }
            OperationRegion(PCI_, PCI_Config, 0x50, 0x30)
            Field(PCI_, DWordAcc, NoLock, Preserve) {
                Offset(0x1),
                ,	4,
                FDCM,	1,
                ,	1,
                U1M_,	1,
                Offset(0x2),
                U2M_,	1,
                ,	1,
                LPTM,	1,
                Offset(0xc),
                MDIE,	1,
                MDIA,	2,
                SBE_,	1,
                ,	1,
                SBA_,	2,
                MSSE,	1,
                MSSA,	2,
                Offset(0xf),
                ,	1,
                AUDM,	1,
                ,	2,
                KBCM,	1,
                G12M,	1,
                G13M,	1,
                LPTE,	1,
                G09A,	16,
                G09L,	4,
                ,	1,
                G09M,	1,
                G09E,	1,
                Offset(0x13),
                ,	1,
                LPTA,	2,
                ,	1,
                FDCA,	1,
                FDCE,	1,
                KBCE,	1,
                Offset(0x14),
                G10A,	16,
                G10L,	4,
                ,	1,
                G10M,	1,
                G10E,	1,
                Offset(0x17),
                U1A_,	3,
                U1E_,	1,
                U2A_,	3,
                U2E_,	1,
                G12A,	16,
                G12L,	4,
                G12E,	1,
                Offset(0x20),
                G13A,	16,
                G13L,	4,
                G13E,	1,
                Offset(0x2c),
                DEC1,	16,
                DEEN,	8
            }
            OperationRegion(SMBP, PCI_Config, 0xd2, 0x5)
            Field(SMBP, DWordAcc, NoLock, Preserve) {
                RD20,	8,
                RD30,	8,
                RD40,	8,
                RD50,	8,
                RD60,	8
            }
            OperationRegion(SMBI, SystemIO, 0x1040, 0xd)
            Field(SMBI, ByteAcc, NoLock, Preserve) {
                S000,	1,
                S001,	1,
                S002,	1,
                S003,	1,
                S004,	1,
                Offset(0x1),
                S010,	1,
                ,	1,
                S012,	1,
                S013,	1,
                S014,	1,
                S015,	1,
                Offset(0x2),
                S020,	1,
                S021,	1,
                S022,	3,
                ,	1,
                S025,	1,
                Offset(0x3),
                S030,	8,
                S040,	8,
                S050,	8,
                S060,	8,
                S070,	8,
                S080,	1,
                S081,	1,
                S082,	1,
                S083,	1,
                Offset(0x9),
                S090,	8,
                S0A0,	8,
                Offset(0xc),
                S0C0,	8
            }
            OperationRegion(GPOS, SystemIO, 0x1034, 0x4)
            Field(GPOS, ByteAcc, NoLock, Preserve) {
                ,	1,
                HDPW,	1,
                SDPW,	1,
                ,	3,
                PRST,	1,
                SRST,	1,
                ENFD,	1,
                Offset(0x2),
                Offset(0x3),
                ,	6,
                ,	1
            }
            OperationRegion(GPIS, SystemIO, 0x1030, 0x1)
            Field(GPIS, ByteAcc, NoLock, Preserve) {
                ,	5,
                ACPW,	1,
                Offset(0x1)
            }
        }
        Device(AUD_) {
            Name(_ADR, 0x00080000)
            Name(_PSC, 0x0)
            Name(_PR0, Package(0x0) {
            })
            Method(_PS0) {
                Store("AUD_PS0", Debug)
                Store(0x0, _PSC)
            }
            Method(_PS3) {
                Store("AUD_PS3", Debug)
                Store(0x3, _PSC)
            }
            Method(_STA) {
                Store("AUD_STA", Debug)
                Return(0xf)
            }
        }
        Device(MDM1) {
            Name(_ADR, 0x00100000)
            OperationRegion(DMG1, PCI_Config, 0x0, 0x4)
            Field(DMG1, DWordAcc, NoLock, Preserve) {
                MDR1,	32
            }
            Name(_PSC, 0x0)
            Name(_PR0, Package(0x0) {
            })
            Method(_PS0) {
                Store("MDM1_PS0", Debug)
                Store(0x0, _PSC)
            }
            Method(_PS3) {
                Store("MDM1_PS3", Debug)
                Store(0x3, _PSC)
            }
            Method(_STA) {
                Store("MDM1_STA", Debug)
                If(LEqual(MDR1, 0xffffffff)) {
                    Return(0x0)
                }
                Else {
                    Return(0xf)
                }
            }
            Name(_PRW, Package(0x2) {
                0xa,
                0x4,
            })
        }
        Device(CB1_) {
            Name(_ADR, 0x00040000)
            Name(_PSC, 0x0)
            Name(_PR0, Package(0x0) {
            })
            Method(_PS0) {
                Store("CB1_PS0", Debug)
                Store(0x0, _PSC)
            }
            Method(_PS3) {
                Store("CB1_PS3", Debug)
                Store(0x3, _PSC)
            }
            Method(_STA) {
                Return(0xf)
            }
        }
        Device(CB2_) {
            Name(_ADR, 0x00040001)
            Name(_PSC, 0x0)
            Name(_PR0, Package(0x0) {
            })
            Method(_PS0) {
                Store("CB2_PS0", Debug)
                Store(0x0, _PSC)
            }
            Method(_PS3) {
                Store("CB2_PS3", Debug)
                Store(0x3, _PSC)
            }
            Method(_STA) {
                Return(0xf)
            }
        }
        Device(SPR_) {
            Name(_HID, 0x050ad041)
            Method(_UID) {
                If(LEqual(\_SB_.DKTP, 0x1)) {
                    Return(0x11111111)
                }
                Else {
                    Return(0x2)
                }
            }
            Name(_BDN, 0x1)
            Name(_PSC, 0x0)
            Name(_PR0, Package(0x0) {
            })
            Method(_PS0) {
                Store(0x0, _PSC)
            }
            Method(_PS3) {
                Store(0x3, _PSC)
            }
            Method(_EJ3, 1) {
                Return(0x1)
            }
            Method(_DCK, 1) {
                If(Arg0) {
                    Store(0x1, \_SB_.PCI0.PX40.EC0_.LDDS)
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.DCWT)
                }
                Else {
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.LDDS)
                    Store(0x1, \_SB_.PCI0.PX40.EC0_.DCWT)
                    Store(0x1, \_SB_.PCI0.PX40.EC0_.SFLD)
                    Return(0x1)
                }
            }
            Method(_STA) {
                If(LEqual(\_SB_.DKTP, 0x1)) {
                    Return(0xf)
                }
                Else {
                    Return(0x0)
                }
            }
        }
        Device(FDS_) {
            Name(_ADR, 0x000d0000)
            Mutex(MFDS, 0)
            Method(_UID) {
                If(LEqual(\_SB_.DKTP, 0x3)) {
                    Return(0x33333333)
                }
                Else {
                    Return(Ones)
                }
            }
            Name(_BDN, 0x3)
            Method(ENQB) {
                Acquire(MFDS, 0xffff)
                Name(CNT1, 0x0)
                Store(0x1, \_SB_.PCI0.PX40.EC0_.DPWR)
                Store(0x1, \_SB_.PCI0.PX40.EC0_.CRST)
                Store(0x0, CNT1)
                While(LNot(LGreater(CNT1, 0x1e))) {
                    If(LEqual(\_SB_.PCI0.PX40.EC0_.QVCC, 0x1)) {
                        Store(0xffff, CNT1)
                    }
                    Else {
                        Increment(CNT1)
                        Sleep(0x1e)
                    }
                }
                Release(MFDS)
                If(LEqual(CNT1, 0xffff)) {
                    Store(0x1, \_SB_.PCI0.PX40.EC0_.EQBF)
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.CRST)
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.DCWT)
                    Store(0x1, \_SB_.PCI0.PX40.EC0_.LDDS)
                    Return(0x1)
                }
                Else {
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.EQBF)
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.CRST)
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.DPWR)
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.DCWT)
                    Return(0x0)
                }
            }
            Name(_PSC, 0x0)
            Name(_PR0, Package(0x0) {
            })
            Method(_PS0) {
                Store(0x0, _PSC)
            }
            Method(_PS3) {
                Store(0x3, _PSC)
            }
            Name(_PRW, Package(0x2) {
                0xa,
                0x4,
            })
            Method(_EJ3, 1) {
                Return(0x1)
            }
            Method(_DCK, 1) {
                If(Arg0) {
                    Return(ENQB())
                }
                Else {
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.EQBF)
                    Store(0x0, \_SB_.PCI0.PX40.EC0_.LDDS)
                    Store(0x1, \_SB_.PCI0.PX40.EC0_.DCWT)
                    Store(0x1, \_SB_.PCI0.PX40.EC0_.SFLD)
                    Return(0x1)
                }
            }
            Method(_STA) {
                If(LEqual(\_SB_.DKTP, 0x3)) {
                    Return(0xf)
                }
                Else {
                    Return(0x0)
                }
            }
        }
        Method(_INI) {
            If(LEqual(CKOS(), 0x2)) {
                Store(0x85, \_SB_.BCMD)
                Store(0x0, \_SB_.SMIC)
            }
            If(LEqual(CKOS(), 0x1)) {
                Store(0x84, \_SB_.BCMD)
                Store(0x0, \_SB_.SMIC)
            }
        }
        Device(AGP_) {
            Name(_ADR, 0x00010000)
            Name(_PRT, Package(0x1) {
                Package(0x4) {
                    0xffff,
                    0x0,
                    \_SB_.PCI0.PX40.LNKA,
                    0x0,
                },
            })
            Device(VGA_) {
                Name(_ADR, 0x0)
                Name(_PSC, 0x0)
                Name(_PR0, Package(0x0) {
                })
                Method(_PS0) {
                    Store("VGA_PS0", Debug)
                    If(\_SB_.PCI0.PX40.ECOK()) {
                        Store(0x0, \_SB_.PCI0.PX40.EC0_.LDEN)
                    }
                    Store(0x0, _PSC)
                }
                Method(_PS3) {
                    Store("VGA_PS3", Debug)
                    If(\_SB_.PCI0.PX40.ECOK()) {
                        Store(0x1, \_SB_.PCI0.PX40.EC0_.LDEN)
                    }
                    Store(0x3, _PSC)
                }
                Method(_STA) {
                    Store("VGA_STA", Debug)
                    Return(0xf)
                }
            }
        }
    }
    Device(PWRB) {
        Name(_HID, 0x0c0cd041)
        Name(_PRW, Package(0x2) {
            0xa,
            0x4,
        })
    }
    Device(SBTN) {
        Name(_HID, 0x0e0cd041)
    }
}

}
/*
BOOT: Length=3D39, Revision=3D1, Checksum=3D165,
	OEMID=3DPTLTD, OEM Table ID=3D$SBFTBL$, OEM Revision=3D0x6040000,
	Creator ID=3D LTP, Creator Revision=3D0x1
 */

--J2SCkAp4GZ/dPZZf--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030610145049.GA94470>