NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
kern/37755: acpi problems on acer aspire 5310
>Number: 37755
>Category: kern
>Synopsis: acpi problems on acer aspire 5310
>Confidential: no
>Severity: serious
>Priority: high
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Jan 14 16:45:00 +0000 2008
>Originator: arto.huusko%pp2.inet.fi@localhost
>Release: NetBSD 4.99.49
>Organization:
>Environment:
System: NetBSD vekotin.local 4.99.49 NetBSD 4.99.49 (VEKOTIN) #1: Sun Jan 13
00:31:02 EET 2008
root%mutteri.local@localhost:/local/netbsd/build/netbsd-current/amd64/obj/sys/arch/amd64/compile/VEKOTIN
amd64
Architecture: x86_64
Machine: amd64
>Description:
There are several problems with ACPI on Acer Aspire 5310 laptop.
1. Pressing power or sleep button has no effect (with and without
powerd)
2. Powering off won't. The kernel prints
acpi: entering state 5
on the console, but then nothing happens.
3. envstat hangs (wchan=acpisem)
dmesg:
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008
The NetBSD Foundation, Inc. All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
NetBSD 4.99.49 (VEKOTIN) #1: Sun Jan 13 00:31:02 EET 2008
root%mutteri.local@localhost:/local/netbsd/build/netbsd-current/amd64/obj/sys/arch/amd64/compile/VEKOTIN
total memory = 1526 MB
avail memory = 1463 MB
timecounter: Timecounters tick every 10.000 msec
timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100
SMBIOS rev. 2.33 @ 0xe3810 (25 entries)
Acer Aspire 5310 (V1.50)
mainbus0 (root)
cpu0 at mainbus0 apid 0: (boot processor)
cpu0: Intel(R) Celeron(R) M CPU 520 @ 1.60GHz, 1596.11 MHz
cpu0: features: affbfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR>
cpu0: features: affbfbff<PGE,MCA,CMOV,PAT,PSE36,CFLUSH,B20,DS,ACPI,MMX>
cpu0: features: affbfbff<FXSR,SSE,SSE2,SS,TM,SBF>
cpu0: features2: e31d<SSE3,MONITOR,DS-CPL,TM2,SSSE3,CX16,xTPR,PDCM>
cpu0: features3: affbfbff<SYSCALL/SYSRET,XD,EM64T>
cpu0: L2 cache 1 MB 64B/line 4-way
cpu0: Initial APIC ID 0
cpu0: Cluster/Package ID 0
cpu0: calibrating local timer
cpu0: apic clock running at 132 MHz
cpu0: 64 page colors
ioapic0 at mainbus0 apid 1: pa 0xfec00000, version 20, 24 pins
acpi0 at mainbus0: Advanced Configuration and Power Interface
acpi0: using Intel ACPI CA subsystem version 20070320
acpi0: X/RSDT: OemId <ACRSYS,ACRPRDCT,06040000>, AslId < LTP,00000000>
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
acpi0: SCI interrupting at int 9
acpi0: fixed-feature power button present
timecounter: Timecounter "ACPI-Fast" frequency 3579545 Hz quality 1000
ACPI-Fast 24-bit timer
CPU0 (ACPI Object Type 'Processor' [0x0c]) at acpi0 not configured
CPU1 (ACPI Object Type 'Processor' [0x0c]) at acpi0 not configured
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
acpilid0 at acpi0 (LID, PNP0C0D): ACPI Lid Switch
WMID (PNP0C14) at acpi0 not configured
acpibut0 at acpi0 (SLPB, PNP0C0E): ACPI Sleep Button
acpibut1 at acpi0 (PWRB, PNP0C0C): ACPI Power Button
PCI0 (PNP0A08) [PCI Express/PCI-X Mode-2 Host Bridge] at acpi0 not configured
PDRC (PNP0C02) [Plug and Play motherboard register resources] at acpi0 not
configured
LNKA (PNP0C0F) [PCI interrupt link device] at acpi0 not configured
LNKB (PNP0C0F) [PCI interrupt link device] at acpi0 not configured
LNKC (PNP0C0F) [PCI interrupt link device] at acpi0 not configured
LNKD (PNP0C0F) [PCI interrupt link device] at acpi0 not configured
LNKE (PNP0C0F) [PCI interrupt link device] at acpi0 not configured
LNKG (PNP0C0F) [PCI interrupt link device] at acpi0 not configured
LNKH (PNP0C0F) [PCI interrupt link device] at acpi0 not configured
acpiec0 at acpi0 (EC0, PNP0C09): ACPI Embedded Controller
acpiec0: io 0x62,0x66
acpibat0 at acpi0 (BAT1, PNP0C0A-1): ACPI Battery (Control Method)
DMAC (PNP0200) [AT DMA Controller] at acpi0 not configured
FWHD (INT0800) [Intel FWH Random Number Generator] at acpi0 not configured
hpet0 at acpi0 (HPET, PNP0103)
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
hpet0: mem 0xfed00000-0xfed003ff
timecounter: Timecounter "hpet0" frequency 14318179 Hz quality 2000
IPIC (PNP0000) [AT Interrupt Controller] at acpi0 not configured
MATH (PNP0C04) [Math Coprocessor] at acpi0 not configured
LDRC (PNP0C02) [Plug and Play motherboard register resources] at acpi0 not
configured
RTC (PNP0B00) [AT Real-Time Clock] at acpi0 not configured
attimer1 at acpi0 (TIMR, PNP0100): AT Timer
attimer1: io 0x40-0x43,0x50-0x53 irq 0
pckbc1 at acpi0 (PS2K, PNP0303): kbd port
pckbc1: io 0x60,0x64 irq 1
pckbc2 at acpi0 (MSE0, PNP0F13): aux port
pckbc2: irq 12
acpiacad0 at acpi0 (ACAD, ACPI0003): ACPI AC Adapter
acpitz0 at acpi0 (TZ00):ACPI Warning (evmisc-0657): Cannot release the ACPI
Global Lock, it has not been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
critical 127.0C, passive cooling
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
acpitz1 at acpi0 (TZ01):ACPI Warning (evmisc-0657): Cannot release the ACPI
Global Lock, it has not been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
critical 100.0C passive 54.0C, passive cooling
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
ACPI Warning (evmisc-0657): Cannot release the ACPI Global Lock, it has not
been acquired [20070320]
ACPI Exception (exutils-0431): AE_NOT_ACQUIRED, Could not release Global Lock
[20070320]
pckbd0 at pckbc1 (kbd slot)
pckbc1: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard
pms0 at pckbc1 (aux slot)
pckbc1: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
pchb0 at pci0 dev 0 function 0
pchb0: Intel 82945GM/PM/GMS Host Bridge (rev. 0x03)
agp0 at pchb0: detected 7932k stolen memory
agp0: aperture at 0xc0000000, size 0x10000000
vga0 at pci0 dev 2 function 0: Intel 82945GM/PM/GMS Integrated Graphics Device
(rev. 0x03)
wsdisplay0 at vga0 kbdmux 1: console (80x25, vt100 emulation), using wskbd0
wsmux1: connecting to wsdisplay0
direct rendering for vga0 unsupported
Intel 82945GM/PM/GMS Integrated Graphics Device (miscellaneous display,
revision 0x03) at pci0 dev 2 function 1 not configured
azalia0 at pci0 dev 27 function 0: Generic High Definition Audio Controller
azalia0: interrupting at ioapic0 pin 22 (irq 10)
azalia0: host: Intel 82801GB/GR High Definition Audio Controller (rev. 2)
azalia0: host: High Definition Audio rev. 1.0
ppb0 at pci0 dev 28 function 0: Intel 82801GB/GR PCI Express Port #1 (rev. 0x02)
ppb0: disabling notification events
pci1 at ppb0 bus 2
pci1: no spaces enabled!
ppb1 at pci0 dev 28 function 2: Intel 82801GB/GR PCI Express Port #3 (rev. 0x02)
pci2 at ppb1 bus 4
pci2: i/o space, memory space enabled, rd/line, wr/inv ok
bge0 at pci2 dev 0 function 0: Broadcom BCM5787M Gigabit Ethernet
bge0: interrupting at ioapic0 pin 18 (irq 11)
bge0: ASIC BCM5754/5787 A2 (0xb002), Ethernet address 00:1b:38:2b:fc:30
bge0: setting short Tx thresholds
brgphy0 at bge0 phy 1: BCM5754/5787 1000BASE-T media interface, rev. 0
brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT,
1000baseT-FDX, auto
ppb2 at pci0 dev 28 function 3: Intel 82801GB/GR PCI Express Port #4 (rev. 0x02)
ppb2: disabling notification events
pci3 at ppb2 bus 5
pci3: i/o space, memory space enabled, rd/line, wr/inv ok
ath0 at pci3 dev 0 function 0
ath0: interrupting at ioapic0 pin 19 (irq 10)
ath0: unable to attach hardware; HAL status 13
uhci0 at pci0 dev 29 function 0: Intel 82801GB/GR USB UHCI Controller (rev.
0x02)
uhci0: interrupting at ioapic0 pin 23 (irq 5)
usb0 at uhci0: USB revision 1.0
uhub0 at usb0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhci1 at pci0 dev 29 function 1: Intel 82801GB/GR USB UHCI Controller (rev.
0x02)
uhci1: interrupting at ioapic0 pin 19 (irq 10)
usb1 at uhci1: USB revision 1.0
uhub1 at usb1
uhub1: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
uhci2 at pci0 dev 29 function 2: Intel 82801GB/GR USB UHCI Controller (rev.
0x02)
uhci2: interrupting at ioapic0 pin 18 (irq 11)
usb2 at uhci2: USB revision 1.0
uhub2 at usb2
uhub2: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub2: 2 ports with 2 removable, self powered
uhci3 at pci0 dev 29 function 3: Intel 82801GB/GR USB UHCI Controller (rev.
0x02)
uhci3: interrupting at ioapic0 pin 16 (irq 6)
usb3 at uhci3: USB revision 1.0
uhub3 at usb3
uhub3: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub3: 2 ports with 2 removable, self powered
ehci0 at pci0 dev 29 function 7: Intel 82801GB/GR USB EHCI Controller (rev.
0x02)
ehci0: interrupting at ioapic0 pin 23 (irq 5)
ehci0: BIOS has given up ownership
ehci0: EHCI version 1.0
ehci0: companion controllers, 2 ports each: uhci0 uhci1 uhci2 uhci3
usb4 at ehci0: USB revision 2.0
uhub4 at usb4
uhub4: Intel EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
uhub4: 8 ports with 8 removable, self powered
ppb3 at pci0 dev 30 function 0: Intel 82801BAM Hub-PCI Bridge (rev. 0xe2)
pci4 at ppb3 bus 6
pci4: no spaces enabled!
pcib0 at pci0 dev 31 function 0
pcib0: Intel 82801GBM LPC Interface Bridge (rev. 0x02)
piixide0 at pci0 dev 31 function 1
piixide0: Intel 82801GB/GR IDE Controller (ICH7) (rev. 0x02)
piixide0: bus-master DMA support present
piixide0: primary channel configured to compatibility mode
piixide0: primary channel interrupting at ioapic0 pin 14 (irq 14)
atabus0 at piixide0 channel 0
piixide0: secondary channel configured to compatibility mode
piixide0: secondary channel ignored (disabled)
ahcisata0 at pci0 dev 31 function 2: Intel 82801GBM AHCI SATA Controller
ahcisata0: interrupting at ioapic0 pin 19 (irq 10)
ahcisata0: AHCI revision 1.1, 4 ports, 32 command slots, features 0xc710e000
atabus1 at ahcisata0 channel 0
ichsmb0 at pci0 dev 31 function 3: Intel 82801GB/GR SMBus Controller (rev. 0x02)
ichsmb0: interrupting at ioapic0 pin 19 (irq 10)
iic0 at ichsmb0: I2C bus
isa0 at pcib0
pcppi0 at isa0 port 0x61
sysbeep0 at pcppi0
pcppi0: attached to attimer1
timecounter: Timecounter "TSC" frequency 1596098640 Hz quality 800
timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
azalia0: codec[0]: Realtek ALC268 (rev. 0.3)
azalia0: codec[0]: High Definition Audio rev. 1.0
azalia0: codec[1]: 0x14f1/0x2c06 (rev. 0.0)
azalia0: codec[1]: High Definition Audio rev. 1.0
azalia0: codec[1]: No support for modem function groups
azalia0: codec[1] has no audio function groups
audio0 at azalia0: full duplex, independent
pad0: outputs: 44100Hz, 16-bit, stereo
audio1 at pad0: half duplex
atapibus0 at atabus0: 2 targets
cd0 at atapibus0 drive 0: <MATSHITADVD-RAM UJ-850S, RC00 493128, 1.61> cdrom
removable
cd0: 32-bit data port
cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
cd0(piixide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA)
ahcisata0 port 0: device present, speed: 1.5Gb/s
wd0 at atabus1 drive 0: <Hitachi HTS541680J9SA00>
wd0: drive supports 16-sector PIO transfers, LBA48 addressing
wd0: 76319 MB, 155061 cyl, 16 head, 63 sec, 512 bytes/sect x 156301488 sectors
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 5 (Ultra/100)
wd0(ahcisata0:0:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 5 (Ultra/100)
(using DMA)
output of acpidump:
/*
RSD PTR: Checksum=11, OEMID=ACRSYS, RsdtAddress=0x5f685ddb
*/
/*
RSDT: Length=84, Revision=1, Checksum=1,
OEMID=ACRSYS, OEM Table ID=ACRPRDCT, OEM Revision=0x6040000,
Creator ID= LTP, Creator Revision=0x0
*/
/*
Entries={ 0x5f68cb90, 0x5f68cc04, 0x5f68cc6c, 0x5f68cca4, 0x5f68cce0,
0x5f68ce56, 0x5f68cf7e, 0x5f68cfd8, 0x5f686aa0, 0x5f6865de, 0x5f68637f,
0x5f685eb3 }
*/
/*
DSDT=0x5f686caa
INT_MODEL=PIC
SCI_INT=9
SMI_CMD=0xb2, ACPI_ENABLE=0xf0, ACPI_DISABLE=0xf1, S4BIOS_REQ=0x0
PM1a_EVT_BLK=0x1000-0x1003
PM1a_CNT_BLK=0x1004-0x1005
PM2_CNT_BLK=0x1020-0x1020
PM2_TMR_BLK=0x1008-0x100b
PM2_GPE0_BLK=0x1028-0x102f
P_LVL2_LAT=1ms, P_LVL3_LAT=35ms
FLUSH_SIZE=0, FLUSH_STRIDE=0
DUTY_OFFSET=1, DUTY_WIDTH=3
DAY_ALRM=13, MON_ALRM=0, CENTURY=50
Flags={WBINVD,PROC_C1,SLP_BUTTON,RTC_S4}
*/
/*
DSDT: Length=24294, Revision=1, Checksum=157,
OEMID=Acer, OEM Table ID=CALISTGA, OEM Revision=0x6040000,
Creator ID=INTL, Creator Revision=0x20060608
*/
DefinitionBlock ("acpi_dsdt.aml", //Output filename"DSDT",
//Signature0x1, //DSDT Revision"Acer", //OEMID"CALISTGA",
//TABLE ID0x6040000 //OEM Revision
)
{
Method(PHIS, 1) {
Store(Arg0, PRM0)
Store(0xa0, SMIF)
Store(Zero, TRP0)
}
OperationRegion(PRT0, SystemIO, 0x80, 0x4)
Field(PRT0, DWordAcc, Lock, Preserve) {
P80H, 32
}
OperationRegion(IO_T, SystemIO, 0x0800, 0x10)
Field(IO_T, ByteAcc, NoLock, Preserve) {
Offset(0x8),
TRP0, 8
}
OperationRegion(PMIO, SystemIO, 0x1000, 0x80)
Field(PMIO, ByteAcc, NoLock, Preserve) {
Offset(0x30),
, 4,
SLPE, 1,
Offset(0x34),
, 4,
SLPS, 1,
Offset(0x42),
, 1,
GPEC, 1
}
Scope(_SB_) {
Name(OSTB, Ones)
OperationRegion(OSTY, SystemMemory, Ones, 0xffff0047)
Field(OSTY, AnyAcc, NoLock, Preserve) {
TPOS, 8
}
Method(OSTP) {
If(LEqual(OSTB, Ones)) {
If(CondRefOf(_OSI, Local0)) {
If(_OSI) {
"Windows 2006"
Store(0x40, OSTB)
Store(0x40, TPOS)
Store(0x40, OSYS)
}
Else {
If(_OSI) {
"Windows 2001.1"
Store(0x20, OSTB)
Store(0x20, TPOS)
}
Else {
If(_OSI) {
"Windows 2001"
Store(0x8, OSTB)
Store(0x8, TPOS)
}
Else {
If(_OSI) {
"Windows 2001 SP1"
Store(0x10, OSTB)
Store(0x10, TPOS)
}
Else {
Store(Zero, OSTB)
Store(Zero, TPOS)
}
}
}
}
}
Else {
If(CondRefOf(_OS_, Local0)) {
If(SEQL(_OS_, "Microsoft Windows")) {
Store(One, OSTB)
Store(One, TPOS)
}
Else {
If(SEQL(_OS_, "Microsoft WindowsME: Millennium
Edition")) {
Store(0x2, OSTB)
Store(0x2, TPOS)
}
Else {
If(SEQL(_OS_, "Microsoft Windows NT")) {
Store(0x4, OSTB)
Store(0x4, TPOS)
}
Else {
Store(Zero, OSTB)
Store(Zero, TPOS)
}
}
}
}
Else {
Store(Zero, OSTB)
Store(Zero, TPOS)
}
}
}
Return(OSTB)
}
Method(SEQL, 2, Serialized) {
Store(SizeOf(Arg0), Local0)
Store(SizeOf(Arg1), Local1)
If(LNot(LEqual(Local0, Local1))) {
Return(Zero)
}
Name(BUF0, Buffer(Local0) { })
Store(Arg0, BUF0)
Name(BUF1, Buffer(Local0) { })
Store(Arg1, BUF1)
Store(Zero, Local2)
While(LLess(Local2, Local0)) {
Store(DerefOf(Index(BUF0, Local2, )), Local3)
Store(DerefOf(Index(BUF1, Local2, )), Local4)
If(LNot(LEqual(Local3, Local4))) {
Return(Zero)
}
Increment(Local2)
}
Return(One)
}
}
OperationRegion(GPIO, SystemIO, 0x1180, 0x3c)
Field(GPIO, ByteAcc, NoLock, Preserve) {
GU00, 8,
GU01, 8,
GU02, 8,
GU03, 8,
GIO0, 8,
GIO1, 8,
GIO2, 8,
GIO3, 8,
Offset(0xc),
GL00, 8,
, 4,
GP12, 1,
Offset(0xe),
GL02, 8,
GL03, 8,
Offset(0x18),
GB00, 8,
GB01, 8,
GB02, 8,
GB03, 8,
Offset(0x2c),
GIV0, 8,
, 5,
LPOL, 1,
Offset(0x2e),
GIV2, 8,
GIV3, 8,
GU04, 8,
GU05, 8,
GU06, 8,
GU07, 8,
GIO4, 8,
GIO5, 8,
GIO6, 8,
GIO7, 8,
, 7,
GP39, 1,
GL05, 8,
GL06, 8,
GL07, 8
}
OperationRegion(GNVS, SystemMemory, 0x5f68ddbc, 0x0100)
Field(GNVS, AnyAcc, Lock, Preserve) {
OSYS, 16,
SMIF, 8,
PRM0, 8,
PRM1, 8,
SCIF, 8,
PRM2, 8,
PRM3, 8,
LCKF, 8,
PRM4, 8,
PRM5, 8,
P80D, 32,
LIDS, 8,
PWRS, 8,
DBGS, 8,
Offset(0x14),
ACTT, 8,
PSVT, 8,
TC1V, 8,
TC2V, 8,
TSPV, 8,
CRTT, 8,
DTSE, 8,
DTS1, 8,
DTS2, 8,
Offset(0x1e),
BNUM, 8,
B0SC, 8,
B1SC, 8,
B2SC, 8,
B0SS, 8,
B1SS, 8,
B2SS, 8,
Offset(0x28),
APIC, 8,
MPEN, 8,
PPCS, 8,
PPCM, 8,
PCP0, 8,
PCP1, 8,
Offset(0x32),
NATP, 8,
CMAP, 8,
CMBP, 8,
LPTP, 8,
FDCP, 8,
CMCP, 8,
CIRP, 8,
Offset(0x3c),
IGDS, 8,
TLST, 8,
CADL, 8,
PADL, 8,
CSTE, 16,
NSTE, 16,
SSTE, 16,
NDID, 8,
DID1, 32,
DID2, 32,
DID3, 32,
DID4, 32,
DID5, 32,
Offset(0x67),
BLCS, 8,
BRTL, 8,
ALSE, 8,
ALAF, 8,
LLOW, 8,
LHIH, 8,
Offset(0x6e),
EMAE, 8,
EMAP, 16,
EMAL, 16,
Offset(0x74),
MEFE, 8,
Offset(0x82),
GTF0, 56,
GTF2, 56,
IDEM, 8,
Offset(0xa1),
WLDV, 4,
Offset(0xb4),
PCMS, 8,
TSTE, 8,
KBTP, 8
}
OperationRegion(RCRB, SystemMemory, 0xfed1c000, 0x4000)
Field(RCRB, DWordAcc, Lock, Preserve) {
Offset(0x1000),
Offset(0x3000),
Offset(0x3404),
HPAS, 2,
, 5,
HPAE, 1,
Offset(0x3418),
, 1,
PATD, 1,
SATD, 1,
SMBD, 1,
HDAD, 1,
A97D, 1,
Offset(0x341a),
RP1D, 1,
RP2D, 1,
RP3D, 1,
RP4D, 1,
RP5D, 1,
RP6D, 1
}
Mutex(MUTX, 0)
Name(_S0_, Package(0x3) {
Zero,
Zero,
Zero,
})
Name(_S3_, Package(0x3) {
0x5,
0x5,
Zero,
})
Name(_S4_, Package(0x3) {
0x6,
0x6,
Zero,
})
Name(_S5_, Package(0x3) {
0x7,
0x7,
Zero,
})
Name(CRTS, Zero)
Scope(_PR_) {
Processor(CPU0, 0, 0x1010, 0x6) {
}
Processor(CPU1, 1, 0x1010, 0x6) {
}
}
Name(DSEN, One)
Name(ECON, Zero)
Name(GPIC, Zero)
Name(CTYP, Zero)
Name(L01C, Zero)
Name(OEMB, Zero)
Method(_PIC, 1) {
Store(Arg0, GPIC)
}
Method(_PTS, 1) {
Store(0x50, P80H)
Store(One, SLPE)
Store(One, SLPS)
Store(\_SB_.PCI0.GFX0.IRES, OEMB)
If(LEqual(Arg0, 0x3)) {
PHIS(0x4c)
Store(0x53, P80H)
\_SB_.PCI0.LPCB.EC0_.CLCK(Zero)
PHIS(0x80)
}
If(LEqual(Arg0, 0x4)) {
Store(0x54, P80H)
PHIS(0x82)
}
Store(0x56, P80H)
}
Method(_WAK, 1) {
If(LOr(LEqual(Arg0, 0x3), LEqual(Arg0, 0x4))) {
If(And(CFGD, 0x01000000, )) {
If(LAnd(And(CFGD, 0xf0, ), LAnd(LEqual(OSYS, 0x07d1),
LNot(And(PDC0, 0x10, ))))) {
Store(0x3d, SMIF)
Store(Zero, TRP0)
}
}
}
If(LEqual(RP1D, Zero)) {
Notify(\_SB_.PCI0.RP01, Zero)
}
If(LEqual(Arg0, 0x3)) {
TRAP(0x46)
}
Store(0x31, P80H)
Store(One, SLPS)
Store(0xf, \_SB_.PCI0.USB1.U1SS)
If(\_SB_.PCI0.RP03.PMCS) {
Store(One, \_SB_.PCI0.RP03.PMCS)
}
If(LEqual(Arg0, 0x3)) {
Store(OEMB, \_SB_.PCI0.GFX0.IRES)
Store(0xf, \_SB_.PCI0.SATA.PCSR)
PHIS(0x81)
}
If(LEqual(Arg0, 0x4)) {
Store(OEMB, \_SB_.PCI0.GFX0.IRES)
PHIS(0x83)
If(DTSE) {
TRAP(0x47)
}
Notify(\_TZ_.TZ01, 0x80)
Notify(\_SB_.PWRB, 0x2)
If(LEqual(OSYS, 0x07d2)) {
If(And(CFGD, One, )) {
If(LGreater(PPCS, Zero)) {
Subtract(PPCS, One, PPCS)
PNOT()
Add(PPCS, One, PPCS)
PNOT()
}
Else {
Add(PPCS, One, PPCS)
PNOT()
Subtract(PPCS, One, PPCS)
PNOT()
}
}
}
}
Store(0x36, P80H)
Return(Package(0x2) {
Zero,
Zero,
})
}
Scope(_GPE) {
Method(_L01) {
Add(L01C, One, L01C)
Sleep(0x64)
If(LAnd(LEqual(RP1D, Zero), \_SB_.PCI0.RP01.HPCS)) {
If(\_SB_.PCI0.RP01.PDC1) {
Store(One, \_SB_.PCI0.RP01.PDC1)
Store(One, \_SB_.PCI0.RP01.HPCS)
Notify(\_SB_.PCI0.RP01, Zero)
}
Else {
Store(One, \_SB_.PCI0.RP01.HPCS)
}
}
If(LAnd(LEqual(RP2D, Zero), \_SB_.PCI0.RP02.HPCS)) {
If(\_SB_.PCI0.RP02.PDC2) {
Store(One, \_SB_.PCI0.RP02.PDC2)
Store(One, \_SB_.PCI0.RP02.HPCS)
Notify(\_SB_.PCI0.RP02, Zero)
}
Else {
Store(One, \_SB_.PCI0.RP02.HPCS)
}
}
If(LAnd(LEqual(RP3D, Zero), \_SB_.PCI0.RP03.HPCS)) {
If(\_SB_.PCI0.RP03.PDC3) {
Store(One, \_SB_.PCI0.RP03.PDC3)
Store(One, \_SB_.PCI0.RP03.HPCS)
Notify(\_SB_.PCI0.RP03, Zero)
}
Else {
Store(One, \_SB_.PCI0.RP03.HPCS)
}
}
}
Method(_L02) {
Store(Zero, GPEC)
Notify(\_TZ_.TZ01, 0x80)
}
Method(_L03) {
Notify(\_SB_.PCI0.USB1, 0x2)
}
Method(_L04) {
Notify(\_SB_.PCI0.USB2, 0x2)
}
Method(_L05) {
If(HDAD) {
Notify(\_SB_.PCI0.MODM, 0x2)
}
Else {
Notify(\_SB_.PCI0.AZAL, 0x2)
}
}
Method(_L09) {
}
Method(_L0B) {
Notify(\_SB_.PCI0.PCIB, 0x2)
}
Method(_L0C) {
Notify(\_SB_.PCI0.USB3, 0x2)
}
Method(_L0D) {
Notify(\_SB_.PCI0.USB7, 0x2)
}
Method(_L0E) {
Notify(\_SB_.PCI0.USB4, 0x2)
}
Method(_L16) {
If(LEqual(\_SB_.WMID.BGEF, One)) {
If(LNot(LEqual(CRTS, One))) {
Store(One, CRTS)
Store(Zero, GIV0)
Store(\_SB_.WMID.VAPI, Local0)
}
Else {
Store(Zero, CRTS)
Store(0x40, GIV0)
Store(\_SB_.WMID.VAPO, Local0)
}
Store(Local0, \_SB_.WMID.NTDV)
Notify(\_SB_.WMID, 0x82)
}
}
Method(_L1D) {
Not(LPOL, LPOL)
Notify(\_SB_.LID_, 0x80)
}
}
Method(PNOT, 0, Serialized) {
If(MPEN) {
If(And(PDC0, 0x8, )) {
Notify(\_PR_.CPU0, 0x80)
If(And(PDC0, 0x10, )) {
Sleep(0x64)
Notify(\_PR_.CPU0, 0x81)
}
}
If(And(PDC1, 0x8, )) {
Notify(\_PR_.CPU1, 0x80)
If(And(PDC1, 0x10, )) {
Sleep(0x64)
Notify(\_PR_.CPU1, 0x81)
}
}
}
Else {
Notify(\_PR_.CPU0, 0x80)
Sleep(0x64)
Notify(\_PR_.CPU0, 0x81)
}
}
Method(TRAP, 1, Serialized) {
Store(Arg0, SMIF)
Store(Zero, TRP0)
Return(SMIF)
}
Scope(_TZ_) {
ThermalZone(TZ00) {
Method(_CRT, 0, Serialized) {
Return(0x0fa2)
}
Method(_TMP, 0, Serialized) {
If(\_SB_.PCI0.LPCB.ECOK()) {
Store(\_SB_.PCI0.LPCB.EC0_.CTMP, Local0)
If(And(Local0, 0x80, )) {
Subtract(Local0, 0x0100, Local0)
}
Return(Add(0x0aac, Multiply(Local0, 0xa, ), ))
}
Return(0x0bb8)
}
}
ThermalZone(TZ01) {
Method(_CRT, 0, Serialized) {
Return(Add(0x0aac, Multiply(CRTT, 0xa, ), ))
}
Method(_SCP, 1, Serialized) {
Store(Arg0, CTYP)
}
Method(_TMP, 0, Serialized) {
If(DTSE) {
If(LNot(LLess(DTS1, DTS2))) {
Store(Add(0x0aac, Multiply(DTS1, 0xa, ), ), Local0)
}
Else {
Store(Add(0x0aac, Multiply(DTS2, 0xa, ), ), Local0)
}
Return(Local0)
}
If(\_SB_.PCI0.LPCB.ECOK()) {
Store(\_SB_.PCI0.LPCB.EC0_.CTMP, Local0)
If(And(Local0, 0x80, )) {
Subtract(Local0, 0x0100, Local0)
}
Return(Add(0x0aac, Multiply(Local0, 0xa, ), ))
}
Return(0x0bb8)
}
Method(_PSL, 0, Serialized) {
If(MPEN) {
Return(Package(0x2) {
\_PR_.CPU0,
\_PR_.CPU1,
})
}
Return(Package(0x1) {
\_PR_.CPU0,
})
}
Method(_PSV, 0, Serialized) {
Return(Add(0x0aac, Multiply(PSVT, 0xa, ), ))
}
Method(_TC1, 0, Serialized) {
Return(TC1V)
}
Method(_TC2, 0, Serialized) {
Return(TC2V)
}
Method(_TSP, 0, Serialized) {
Return(TSPV)
}
}
}
Method(GETP, 1, Serialized) {
If(LEqual(And(Arg0, 0x9, ), Zero)) {
Return(Ones)
}
If(LEqual(And(Arg0, 0x9, ), 0x8)) {
Return(0x0384)
}
ShiftRight(And(Arg0, 0x0300, ), 0x8, Local0)
ShiftRight(And(Arg0, 0x3000, ), 0xc, Local1)
Return(Multiply(0x1e, Subtract(0x9, Add(Local0, Local1, ), ), ))
}
Method(GDMA, 5, Serialized) {
If(Arg0) {
If(LAnd(Arg1, Arg4)) {
Return(0x14)
}
If(LAnd(Arg2, Arg4)) {
Return(Multiply(Subtract(0x4, Arg3, ), 0xf, ))
}
Return(Multiply(Subtract(0x4, Arg3, ), 0x1e, ))
}
Return(Ones)
}
Method(GETT, 1, Serialized) {
Return(Multiply(0x1e, Subtract(0x9, Add(And(ShiftRight(Arg0, 0x2, ), 0x3,
), And(Arg0, 0x3, ), ), ), ))
}
Method(GETF, 3, Serialized) {
Name(TMPF, Zero)
If(Arg0) {
Or(TMPF, One, TMPF)
}
If(And(Arg2, 0x2, )) {
Or(TMPF, 0x2, TMPF)
}
If(Arg1) {
Or(TMPF, 0x4, TMPF)
}
If(And(Arg2, 0x20, )) {
Or(TMPF, 0x8, TMPF)
}
If(And(Arg2, 0x4000, )) {
Or(TMPF, 0x10, TMPF)
}
Return(TMPF)
}
Method(SETP, 3, Serialized) {
If(LGreater(Arg0, 0xf0)) {
Return(0x8)
}
Else {
If(And(Arg1, 0x2, )) {
If(LAnd(LNot(LGreater(Arg0, 0x78)), And(Arg2, 0x2, ))) {
Return(0x2301)
}
If(LAnd(LNot(LGreater(Arg0, 0xb4)), And(Arg2, One, ))) {
Return(0x2101)
}
}
Return(0x1001)
}
}
Method(SDMA, 1, Serialized) {
If(LNot(LGreater(Arg0, 0x14))) {
Return(One)
}
If(LNot(LGreater(Arg0, 0x1e))) {
Return(0x2)
}
If(LNot(LGreater(Arg0, 0x2d))) {
Return(One)
}
If(LNot(LGreater(Arg0, 0x3c))) {
Return(0x2)
}
If(LNot(LGreater(Arg0, 0x5a))) {
Return(One)
}
Return(Zero)
}
Method(SETT, 3, Serialized) {
If(And(Arg1, 0x2, )) {
If(LAnd(LNot(LGreater(Arg0, 0x78)), And(Arg2, 0x2, ))) {
Return(0xb)
}
If(LAnd(LNot(LGreater(Arg0, 0xb4)), And(Arg2, One, ))) {
Return(0x9)
}
}
Return(0x4)
}
Name(FWSO, "FWSO")
Scope(_SB_) {
Method(_INI) {
If(DTSE) {
TRAP(0x47)
}
Store(0x07d0, OSYS)
If(CondRefOf(_OSI, Local0)) {
If(_OSI) {
"Linux"
Store(0x03e8, OSYS)
}
If(_OSI) {
"Windows 2001"
Store(0x07d1, OSYS)
}
If(_OSI) {
"Windows 2001 SP1"
Store(0x07d1, OSYS)
}
If(_OSI) {
"Windows 2001 SP2"
Store(0x07d2, OSYS)
}
If(_OSI) {
"Windows 2006"
Store(0x07d6, OSYS)
}
If(LAnd(MPEN, LEqual(OSYS, 0x07d1))) {
TRAP(0x3d)
}
}
If(LNot(LLess(OSYS, 0x07d0))) {
Store(One, PRM0)
If(LNot(LLess(OSYS, 0x07d1))) {
Store(0x3, PRM0)
}
}
Else {
Store(Zero, PRM0)
}
TRAP(0x32)
}
Device(LID_) {
Name(_HID, 0x0d0cd041)
Method(_LID) {
Return(LPOL)
}
}
Device(WMID) {
Name(_HID, "PNP0C14")
Name(_UID, Zero)
Name(ERRD, 0x00010000)
Name(BUFF, Buffer(0x4) {0x0, 0x0, 0x0, 0x0 })
CreateByteField(BUFF, Zero, BF00)
CreateByteField(BUFF, One, BF01)
CreateByteField(BUFF, 0x2, BF02)
CreateByteField(BUFF, 0x3, BF03)
Name(BUF1, Buffer(0x4) {0x0, 0x0, 0x0, 0x0 })
Name(AADS, Buffer(0x4) {0x0 })
CreateField(AADS, Zero, 0x4, AS00)
CreateField(AADS, 0x4, One, AS01)
CreateField(AADS, 0x5, One, AS02)
CreateField(AADS, 0x10, 0x10, AS03)
Name(BAEF, Zero)
Name(BADF, Zero)
Name(BADG, Package(0xd) {
One,
One,
Zero,
Zero,
Zero,
Zero,
Zero,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
Zero,
0x00010000,
})
Name(WLDS, Zero)
Name(WLED, Zero)
Name(BTDS, Zero)
Name(BTED, Zero)
Name(BLDS, Zero)
Name(BLED, Zero)
Name(NTDC, Zero)
Name(NTDV, Zero)
Name(WLSD, 0x0100)
Name(WLSE, 0x0101)
Name(BLTD, 0x0200)
Name(BLTE, 0x0201)
Name(LBL0, 0x0300)
Name(LBL1, 0x0301)
Name(LBL2, 0x0302)
Name(LBL3, 0x0303)
Name(LBL4, 0x0304)
Name(LBL5, 0x0305)
Name(LBL6, 0x0306)
Name(LBL7, 0x0307)
Name(LBL8, 0x0308)
Name(LBL9, 0x0309)
Name(LBLA, 0x030a)
Name(LBLB, 0x030b)
Name(LBLC, 0x030c)
Name(LBLD, 0x030d)
Name(LBLE, 0x030e)
Name(LBLF, 0x030f)
Name(VAPO, 0x0600)
Name(VAPI, 0x0601)
Name(CADI, 0x0401)
Name(CADO, 0x0400)
Name(GSEE, 0x0501)
Name(GSED, 0x0502)
Name(WBBO, 0x0701)
Name(WBBI, 0x0700)
Name(G3MD, 0x0800)
Name(G3ME, 0x0801)
Name(LANI, 0x0900)
Name(LANO, 0x0901)
Name(LDOF, 0x0a00)
Name(LDON, 0x0a01)
Name(BBSB, Buffer(0x4) {0x0, 0x0, 0x0, 0x0 })
CreateField(BBSB, Zero, 0x10, BBD0)
CreateField(BBSB, 0x10, 0x10, BBD1)
Name(TLS0, Zero)
Name(TLS1, One)
Name(TLS2, 0x2)
Name(TLS3, 0x3)
Name(TLS4, 0x4)
Name(TLS5, 0x5)
Name(TLS6, 0x6)
Name(TLS7, 0x7)
Name(BCDS, Package(0xd) {
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
})
Name(BDDS, Buffer(0x4) {0x0, 0x0, 0x0, 0x0 })
CreateField(BDDS, Zero, 0x10, BDD0)
CreateField(BDDS, 0x10, 0x10, BDD1)
Name(DSY0, Buffer(0x28) {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
Name(DSY1, Buffer(0x18) {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
Name(DSY2, Buffer(0x10) {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
Name(DSY3, Buffer(0x18) {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
Name(DSY4, Buffer(0x10) {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
Name(DSY5, Buffer(0x28) {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
CreateField(DSY0, Zero, 0x40, DY00)
CreateField(DSY0, 0x40, 0x40, DY01)
CreateField(DSY0, 0x80, 0x40, DY02)
CreateField(DSY0, 0xc0, 0x40, DY03)
CreateField(DSY0, 0x0100, 0x40, DY04)
CreateField(DSY1, Zero, 0x40, DY10)
CreateField(DSY1, 0x40, 0x40, DY11)
CreateField(DSY1, 0x80, 0x40, DY12)
CreateField(DSY2, Zero, 0x40, DY20)
CreateField(DSY2, 0x40, 0x10, DY21)
CreateField(DSY2, 0x50, 0x10, DY22)
CreateField(DSY0, Zero, 0xc0, DSX4)
Name(BEDS, Package(0x12) {
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
0x00010000,
})
Name(WIT0, Zero)
Name(DSY6, Buffer(0x14) {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
CreateField(DSY6, Zero, 0x20, DY60)
CreateField(DSY6, 0x20, 0x20, DY61)
CreateField(DSY6, 0x40, 0x20, DY62)
CreateField(DSY6, 0x60, 0x20, DY63)
CreateField(DSY6, 0x80, 0x20, DY64)
Name(WPRW, Buffer(0x14) {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
CreateField(WPRW, Zero, 0x8, WWD0)
CreateField(WPRW, 0x8, 0x8, WWD1)
CreateField(WPRW, 0x10, 0x8, WWD2)
CreateField(WPRW, 0x18, 0x8, WWD3)
CreateField(WPRW, 0x20, 0x8, WWD4)
CreateField(WPRW, 0x28, 0x20, WWD5)
Name(WPCI, Buffer(0x4) {0x0, 0x0, 0x0, 0x0 })
CreateField(WPCI, Zero, 0x8, WPIR)
CreateField(WPCI, 0x8, 0x3, WPIF)
CreateField(WPCI, 0xb, 0x5, WPID)
CreateField(WPCI, 0x10, 0x8, WPIB)
Name(BFDS, Package(0x4) {
0x2,
0x2,
0x2,
0x2,
})
Name(GSTS, Zero)
Name(BFEF, Zero)
Name(BGEF, Zero)
Name(BGDS, Package(0x1) {
One,
})
Method(AAF1) {
Store(^^PCI0.LPCB.EC0_.WLEX, AS00)
Store(^^PCI0.LPCB.EC0_.BTEX, AS01)
Store(Zero, AS02)
Store(Zero, AS03)
}
Method(Z000, 1) {
Store(^^PCI0.LPCB.EC0_.WLAT, Local0)
Store(Local0, Index(BADG, Zero, ))
Store(^^PCI0.LPCB.EC0_.BTAT, Local0)
Store(Local0, Index(BADG, One, ))
Store(^^PCI0.LPCB.EC0_.BRTS, Local0)
Store(Local0, Index(BADG, 0x2, ))
Store(One, Local0)
Store(Local0, Index(BADG, 0x7, ))
Store(Zero, Local0)
Store(Local0, Index(BADG, 0x8, ))
Store(^^PCI0.LPCB.EC0_.LANC, Local0)
Store(Local0, Index(BADG, 0xb, ))
Store(^^PCI0.LPCB.EC0_.LCDS, Local0)
Store(Local0, Index(BADG, 0xc, ))
}
Method(Z001, 2) {
Store(Arg1, BUFF)
Store(Arg0, Local0)
Store(BF00, Local1)
Store(Local0, Debug)
Store(Local1, Debug)
Store(Zero, Local2)
Name(_T_0, Zero)
Store(Local1, _T_0)
If(LEqual(_T_0, Zero)) {
Name(_T_1, Zero)
Store(Local0, _T_1)
If(LEqual(_T_1, 0x4)) {
Store(Zero, ^^PCI0.LPCB.EC0_.WLAT)
}
Else {
If(LEqual(_T_1, 0x5)) {
Store(Zero, ^^PCI0.LPCB.EC0_.BTAT)
}
Else {
If(LEqual(_T_1, 0x6)) {
Store(Zero, ^^PCI0.LPCB.EC0_.BRTS)
}
Else {
If(LEqual(_T_1, 0x7)) {
Store(Zero, BAEF)
}
Else {
Store(One, Local2)
}
}
}
}
}
Else {
Name(_T_2, Zero)
Store(Local0, _T_2)
If(LEqual(_T_2, 0x4)) {
Store(One, ^^PCI0.LPCB.EC0_.WLAT)
Store(Zero, Index(BADG, 0x3, ))
}
Else {
If(LEqual(_T_2, 0x5)) {
Store(One, ^^PCI0.LPCB.EC0_.BTAT)
Store(Zero, Index(BADG, 0x4, ))
}
Else {
If(LEqual(_T_2, 0x6)) {
Store(Local1, ^^PCI0.LPCB.EC0_.BRTS)
Store(Zero, Index(BADG, 0x5, ))
}
Else {
If(LEqual(_T_2, 0x7)) {
Store(One, BAEF)
Store(Zero, Index(BADG, 0x6, ))
}
Else {
Store(One, Local2)
}
}
}
}
}
If(LEqual(Local2, One)) {
Name(_T_3, Zero)
Store(Local0, _T_3)
If(LEqual(_T_3, 0x4)) {
Store(0x2, Index(BADG, 0x3, ))
}
Else {
If(LEqual(_T_3, 0x5)) {
Store(0x3, Index(BADG, 0x3, ))
}
Else {
If(LEqual(_T_3, 0x6)) {
Store(0x4, Index(BADG, 0x3, ))
}
}
}
}
}
Method(Z002) {
If(LEqual(BGEF, One)) {
Store(NTDV, Local0)
If(LNot(LEqual(Local0, Zero))) {
Store(Zero, NTDV)
Return(Local0)
}
}
If(LEqual(BAEF, One)) {
Store(NTDC, Local0)
If(LNot(LEqual(Local0, Zero))) {
Store(Zero, NTDC)
Return(Local0)
}
}
If(LEqual(BFEF, One)) {
}
}
Method(Z003, 2) {
Store(Arg0, Local0)
Store(Arg1, BUFF)
Store(Zero, BBSB)
Name(_T_0, Zero)
Store(Local0, _T_0)
If(LEqual(_T_0, One)) {
Store(^^PCI0.LPCB.EC0_.THRO(Zero), Local1)
If(And(Local1, One, )) {
Store(^^PCI0.LPCB.EC0_.THRO(One), Local1)
Store(Local1, BBSB)
}
}
Else {
If(LEqual(_T_0, 0x2)) {
Store(BF00, Local1)
^^PCI0.LPCB.EC0_.CLCK(Local1)
}
Else {
Store(0x00010000, BBSB)
}
}
}
Method(Z004, 2) {
}
Method(Z005, 1) {
Store(DSY5, DSY0)
Store(Arg0, Local0)
Store(PHWM(Zero, Arg0), Local2)
Store(Local2, DSY6)
Store(DY60, DY00)
Store(DY61, DY01)
Store(DY62, DY02)
Store(DY63, DY03)
}
Method(Z006, 1) {
Store(DSY3, DSY1)
Store(Arg0, DY00)
Store(PHWM(One, Arg0), Local2)
Store(Local2, DSY6)
Store(DY60, DY10)
Store(DY61, DY11)
Store(Zero, WIT0)
Store(WIT0, DY12)
}
Method(Z007, 1) {
Store(DSY3, DSY1)
Store(PHWM(0x2, Arg0), Local2)
Store(Local2, DSY6)
Store(DY60, DY10)
Store(DY61, DY11)
Store(Zero, WIT0)
Store(WIT0, DY12)
}
Method(Z008, 2) {
Store(Arg1, BUFF)
If(LEqual(Arg0, 0x4)) {
Store(BF00, ^^PCI0.LPCB.C4O3)
Store(BF00, Index(BCDS, 0x9, ))
}
Else {
Store(^^PCI0.LPCB.C4O3, Index(BCDS, 0x9, ))
}
}
Method(Z009) {
Store(^^PCI0.LPCB.EC0_.THFN, Local0)
Multiply(Local0, 0x64, Local1)
Store(Local1, Index(BCDS, 0xa, ))
}
Method(Z00A) {
Store(^^PCI0.LPCB.EC0_.CTMP, Index(BCDS, 0xb, ))
}
Method(Z00B, 1) {
Store(Arg0, Local0)
Store(PHWM(0x3, Arg0), Local2)
Store(Local2, DY20)
Store(Local2, DSY6)
Store(DSY4, DSY2)
Store(DY60, DY20)
}
Method(Z00C, 1) {
Store(Arg0, Local0)
Store(Arg0, DY20)
Store(PHWM(0x4, Arg0), Local2)
Store(Local2, DSY6)
Store(DY61, BUFF)
}
Method(Z00D) {
Store(PHWM(0x5, Zero), Local2)
Store(Local2, BUFF)
Store(BUFF, Index(BCDS, 0xc, ))
}
Method(PCID, 1) {
Acquire(PSMX, 0xffff)
Store(Arg0, DSY6)
Store(DY61, BUFF)
Store(DY60, Local1)
Store(Zero, DY60)
Store(Zero, DY61)
Store(Zero, DY62)
Store(Zero, DY63)
Store(Zero, DY64)
If(LEqual(BF00, Zero)) {
Store(One, DY64)
}
Else {
If(LEqual(BF00, One)) {
Store(One, DY64)
}
Else {
If(LEqual(BF00, 0x2)) {
Store(One, DY64)
}
Else {
If(LEqual(BF00, 0x3)) {
Store(Local1, BUFF)
If(LEqual(BF00, Zero)) {
Store(One, DY63)
}
Else {
If(LEqual(BF00, One)) {
Store(0x4, DY62)
}
}
}
}
}
}
Release(PSMX)
Return(DSY6)
}
Method(Z00E, 2) {
Store(Arg0, Local0)
Store(Arg1, BUFF)
If(LEqual(Local0, 0xd)) {
Store(BF02, BF00)
Store(BF01, Local1)
}
If(LEqual(Local0, 0xe)) {
If(LEqual(BF00, Zero)) {
Store(0xff, BF00)
}
Else {
Store(BF00, Local1)
Store(One, BF00)
}
}
Name(_T_0, Zero)
Store(BF00, _T_0)
If(LEqual(_T_0, One)) {
If(LEqual(^^PCI0.LPCB.EC0_.BDC0, Zero)) {
Store(0x00020000, Local1)
Decrement(Local0)
Store(Local1, Index(BEDS, Local0, ))
}
Else {
Name(_T_1, Zero)
Store(Local0, _T_1)
If(LEqual(_T_1, One)) {
Store(Zero, Index(BEDS, Zero, ))
}
Else {
If(LEqual(_T_1, 0x2)) {
Store(^^PCI0.LPCB.EC0_.BPTC, Index(BEDS, One, ))
}
Else {
If(LEqual(_T_1, 0x3)) {
Store(^^PCI0.LPCB.EC0_.BPV0, Index(BEDS, 0x2, ))
}
Else {
If(LEqual(_T_1, 0x4)) {
Store(^^PCI0.LPCB.EC0_.BSCU, Index(BEDS,
0x3, ))
}
Else {
If(LEqual(_T_1, 0x5)) {
Store(^^PCI0.LPCB.EC0_.BRC0,
Index(BEDS, 0x4, ))
}
Else {
If(LEqual(_T_1, 0x6)) {
Store(^^PCI0.LPCB.EC0_.BFC0,
Index(BEDS, 0x5, ))
}
Else {
If(LEqual(_T_1, 0x7)) {
Store(^^PCI0.LPCB.EC0_.BSCY,
Index(BEDS, 0x6, ))
}
Else {
If(LEqual(_T_1, 0x8)) {
Store(^^PCI0.LPCB.EC0_.BDC0, Index(BEDS, 0x7, ))
}
Else {
If(LEqual(_T_1, 0x9)) {
Store(^^PCI0.LPCB.EC0_.BDV0, Index(BEDS, 0x8, ))
}
Else {
If(LEqual(_T_1, 0xa)) {
Store(^^PCI0.LPCB.EC0_.BDAD, Index(BEDS, 0x9, ))
}
Else {
If(LEqual(_T_1,
0xb)) {
Store(^^PCI0.LPCB.EC0_.BSN0, Index(BEDS, 0xa, ))
}
Else {
If(LEqual(_T_1,
0xc)) {
If(LEqual(^^PCI0.LPCB.EC0_.ACIS, One)) {
Store(Zero, ^^PCI0.LPCB.EC0_.PSRC)
Store(One, Index(BEDS, 0xb, ))
}
Else {
Store(0x00020000, Index(BEDS, 0xb, ))
}
}
Else {
If(LEqual(_T_1, 0xd)) {
Store(Local1, ^^PCI0.LPCB.EC0_.BTMA)
Store(One, ^^PCI0.LPCB.EC0_.SCCF)
Store(One, Index(BEDS, 0xc, ))
}
Else {
If(LEqual(_T_1, 0xe)) {
Store(Local1, ^^PCI0.LPCB.EC0_.BTPV)
Store(Zero, ^^PCI0.LPCB.EC0_.SCHG)
Store(One, ^^PCI0.LPCB.EC0_.SCPF)
Store(One, Index(BEDS, 0xd, ))
}
Else {
If(LEqual(_T_1, 0xf)) {
Store(^^PCI0.LPCB.EC0_.BDFC, Index(BEDS, 0xe, ))
}
Else {
If(LEqual(_T_1, 0x10)) {
Store(^^PCI0.LPCB.EC0_.BDME, Index(BEDS, 0xf, ))
}
Else {
If(LEqual(_T_1, 0x11)) {
Store(0x03e8, Index(BEDS, 0x10, ))
}
Else {
If(LEqual(_T_1, 0x12)) {
Store(Zero, Index(BEDS, 0x11, ))
}
Else {
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
Else {
Name(_T_2, Zero)
Store(Local0, _T_2)
If(LEqual(_T_2, One)) {
Store(0x00020000, Index(BEDS, Zero, ))
}
Else {
If(LEqual(_T_2, 0x2)) {
Store(0x00020000, Index(BEDS, One, ))
}
Else {
If(LEqual(_T_2, 0x3)) {
Store(0x00020000, Index(BEDS, 0x2, ))
}
Else {
If(LEqual(_T_2, 0x4)) {
Store(0x00020000, Index(BEDS, 0x3, ))
}
Else {
If(LEqual(_T_2, 0x5)) {
Store(0x00020000, Index(BEDS, 0x4, ))
}
Else {
If(LEqual(_T_2, 0x6)) {
Store(0x00020000, Index(BEDS, 0x5, ))
}
Else {
If(LEqual(_T_2, 0x7)) {
Store(0x00020000, Index(BEDS, 0x6,
))
}
Else {
If(LEqual(_T_2, 0x8)) {
Store(0x00020000, Index(BEDS,
0x7, ))
}
Else {
If(LEqual(_T_2, 0x9)) {
Store(0x00020000,
Index(BEDS, 0x8, ))
}
Else {
If(LEqual(_T_2, 0xa)) {
Store(0x00020000,
Index(BEDS, 0x9, ))
}
Else {
If(LEqual(_T_2, 0xb)) {
Store(0x00020000,
Index(BEDS, 0xa, ))
}
Else {
If(LEqual(_T_2,
0xc)) {
If(LEqual(^^PCI0.LPCB.EC0_.BDC0, Zero)) {
Store(0x00030000, Index(BEDS, 0xb, ))
}
Else {
Store(One,
^^PCI0.LPCB.EC0_.PSRC)
Store(One,
Index(BEDS, 0xb, ))
}
}
Else {
If(LEqual(_T_2,
0xd)) {
Store(0x00020000, Index(BEDS, 0xc, ))
}
Else {
If(LEqual(_T_2, 0xe)) {
Store(One, ^^PCI0.LPCB.EC0_.SCHG)
Store(One, ^^PCI0.LPCB.EC0_.SCPF)
Store(One, Index(BEDS, 0xd, ))
}
Else {
If(LEqual(_T_2, 0xf)) {
Store(0x00020000, Index(BEDS, 0xe, ))
}
Else {
If(LEqual(_T_2, 0x10)) {
Store(0x00020000, Index(BEDS, 0xf, ))
}
Else {
If(LEqual(_T_2, 0x11)) {
Store(0x03e8, Index(BEDS, 0x10, ))
}
Else {
If(LEqual(_T_2, 0x12)) {
Store(Zero, Index(BEDS, 0x11, ))
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
Method(Z00F) {
Store(One, GSTS)
Return(GSTS)
}
Method(Z00G, 1) {
}
Method(Z00H, 1) {
}
Method(Z00I, 1) {
}
Method(Z00J, 1) {
}
Method(Z00K, 1) {
Store(Arg0, Local0)
If(LEqual(Local0, One)) {
Store(One, BGEF)
}
Else {
Store(Zero, BGEF)
}
Store(Zero, Index(BGDS, Zero, ))
}
Name(_WDG, Buffer(0xdc) {0x9, 0x4e, 0x76, 0x95, 0x56, 0xfb, 0x83, 0x4e,
0xb3, 0x1a, 0x37, 0x76, 0x1f, 0x60, 0x99, 0x4a, 0x41, 0x41, 0x1, 0x1, 0x58,
0xf2, 0xf4, 0x6a, 0x1, 0xb4, 0xfd, 0x42, 0xbe, 0x91, 0x3d, 0x4a, 0xc2, 0xd7,
0xc0, 0xd3, 0x42, 0x41, 0x1, 0x2, 0xac, 0x61, 0x1a, 0xcc, 0x56, 0x42, 0xa3,
0x41, 0xb9, 0xe0, 0x5, 0xa4, 0x45, 0xad, 0xe2, 0xf5, 0x80, 0x0, 0x1, 0x8, 0x53,
0x44, 0x8c, 0xe7, 0x27, 0x2, 0x61, 0x48, 0x9e, 0xde, 0xf5, 0x60, 0xb, 0x4a,
0x3d, 0x39, 0x42, 0x42, 0x1, 0x2, 0x7b, 0x4f, 0xe0, 0xaa, 0xc5, 0xb3, 0x65,
0x48, 0x95, 0xd6, 0x9f, 0xac, 0x7f, 0xf3, 0xe9, 0x2b, 0x42, 0x43, 0x1, 0x2,
0x79, 0x4c, 0xf9, 0xcf, 0x77, 0x6c, 0xf7, 0x4a, 0xac, 0x56, 0x7d, 0xd0, 0xce,
0x1, 0xc9, 0x97, 0x42, 0x44, 0x1, 0x2, 0xc5, 0x2e, 0x77, 0x79, 0xb1, 0x4, 0xfd,
0x4b, 0x84, 0x3c, 0x61, 0xe7, 0xf7, 0x7b, 0x6c, 0xc9, 0x42, 0x45, 0x1, 0x2,
0xb7, 0xa0, 0xc9, 0xa7, 0x9d, 0x4c, 0x72, 0x4c, 0x83, 0xbb, 0x53, 0xa3, 0x45,
0x91, 0x71, 0xdf, 0x42, 0x46, 0x1, 0x2, 0x4f, 0x6, 0x3a, 0x65
, 0x3a, 0xa2, 0x5f, 0x48, 0xb3, 0xd9, 0x13, 0xf6, 0x53, 0x2a, 0x1, 0x82, 0x42,
0x47, 0x1, 0x2, 0xa7, 0xb1, 0x85, 0xdb, 0x9a, 0x6, 0xbb, 0x4a, 0xa2, 0xb5,
0xd1, 0x86, 0xa2, 0x1b, 0x80, 0xf1, 0x81, 0x0, 0x1, 0x8, 0x91, 0x6b, 0x91,
0x36, 0x64, 0x1a, 0x83, 0x45, 0x84, 0xd0, 0x53, 0x83, 0xf, 0xb9, 0x10, 0x8d,
0x82, 0x0, 0x1, 0x8 })
Method(WQAA, 1) {
AAF1()
Store(AADS, BUFF)
Return(BUFF)
}
Method(WMBA, 3) {
Name(_T_0, Zero)
Store(Arg1, _T_0)
If(LNot(LEqual(Match(Package(0x8) {
One,
0x2,
0x3,
0x8,
0x9,
0xa,
0xc,
0xd,
}, MEQ, _T_0, MTR, Zero, Zero), Ones))) {
Store(Zero, Local0)
}
Else {
If(LNot(LEqual(Match(Package(0x5) {
0x4,
0x5,
0x6,
0x7,
0xb,
}, MEQ, _T_0, MTR, Zero, Zero), Ones))) {
If(LEqual(Arg1, 0x7)) {
Store(Arg2, BUFF)
If(BF00) {
Store(One, BAEF)
}
}
Store(One, Local0)
}
}
If(Local0) {
Z001(Arg1, Arg2)
}
Else {
Z000(Arg1)
}
Store(DerefOf(Index(BADG, Subtract(Arg1, One, ), )), BUFF)
Return(BUFF)
}
Method(_WED, 1) {
If(LNot(LLess(Arg0, 0x80))) {
If(LLess(Arg0, 0x83)) {
Return(Z002())
}
}
}
Method(WMBB, 3) {
Z003(Arg1, Arg2)
If(LEqual(Arg1, One)) {
Store(BBSB, BUFF)
}
If(LEqual(Arg1, 0x2)) {
Store(BBD1, BUFF)
}
Return(BUFF)
}
Method(WMBC, 3) {
Z004(Arg1, Arg2)
If(LLess(Arg1, 0xa)) {
Subtract(Arg1, One, Local0)
Store(DerefOf(Index(BCDS, Subtract(Arg1, One, ), )), BUFF)
}
Else {
ShiftRight(DerefOf(Index(BCDS, Subtract(Arg1, 0xa, ), )), 0x10,
BUFF)
}
Return(BUFF)
}
Method(WMBD, 3) {
If(LEqual(Arg1, One)) {
Store(Arg2, BUFF)
Store(BUFF, Local0)
Store(Arg2, WIT0)
Z005(WIT0)
Return(DSY0)
}
If(LEqual(Arg1, 0x2)) {
Store(Arg2, Local0)
Z006(Arg2)
Return(DSY1)
}
If(LEqual(Arg1, 0x3)) {
Store(Arg2, Local0)
Z007(Arg2)
Return(DSY1)
}
If(LEqual(Arg1, 0x4)) {
Z008(Arg1, Arg2)
ShiftRight(DerefOf(Index(BCDS, Add(Arg1, 0x5, ), )), 0x10, BUFF)
Return(BUFF)
}
If(LEqual(Arg1, 0x5)) {
Z008(Arg1, Arg2)
Store(DerefOf(Index(BCDS, Add(Arg1, 0x4, ), )), BUFF)
Return(BUFF)
}
If(LEqual(Arg1, 0x6)) {
Z009()
Store(DerefOf(Index(BCDS, Add(Arg1, 0x4, ), )), BUFF)
Return(BUFF)
}
If(LEqual(Arg1, 0x7)) {
Z00A()
Store(DerefOf(Index(BCDS, Add(Arg1, 0x4, ), )), BUFF)
Return(BUFF)
}
If(LEqual(Arg1, 0x8)) {
Store(Arg2, WPRW)
Store(WWD1, WPIR)
Store(WWD2, WPIF)
Store(WWD3, WPID)
Store(WWD4, WPIB)
Concatenate(WPCI, WWD0, Local0)
Z00B(Local0)
Return(DSY2)
}
If(LEqual(Arg1, 0x9)) {
Store(Arg2, DSY6)
Store(DY60, Local0)
Store(Arg2, DSY0)
Store(DY01, WPRW)
Store(WWD1, WPIR)
Store(WWD2, WPIF)
Store(WWD3, WPID)
Store(WWD4, WPIB)
Store(WPCI, Local1)
Concatenate(DY60, WPCI, Local0)
Concatenate(Local0, WWD0, Local1)
Z00C(Local1)
Return(BUFF)
}
If(LEqual(Arg1, 0xa)) {
Z00D()
Store(DerefOf(Index(BCDS, Add(Arg1, 0x2, ), )), BUFF)
Return(BUFF)
}
If(LEqual(Arg1, 0xb)) {
PCID(Arg2)
Return(DSY6)
}
}
Method(WMBE, 3) {
Z00E(Arg1, Arg2)
Store(BUFF, Debug)
Store(BEDS, Debug)
Store(DerefOf(Index(BEDS, Subtract(Arg1, One, ), )), BUFF)
Store(BUFF, Debug)
Return(BUFF)
}
Method(WMBF, 3) {
If(LGreater(Arg1, 0x4)) {
Store(0x2, BF00)
Store(Zero, BF01)
Store(Zero, BF02)
Store(Zero, BF03)
Return(BUFF)
}
If(Z00F()) {
Store(Arg2, BUFF)
If(LEqual(Arg1, One)) {
Z00G(BF00)
}
Else {
If(LEqual(Arg1, 0x2)) {
Z00H(BF00)
}
Else {
If(LEqual(Arg1, 0x3)) {
Z00I(BF00)
}
Else {
Z00J(BF00)
}
}
}
Store(DerefOf(Index(BFDS, Subtract(Arg1, One, ), )), BUFF)
Store(BUFF, Debug)
}
Else {
Store(0x3, BF00)
Store(Zero, BF01)
Store(Zero, BF02)
Store(Zero, BF03)
}
Return(BUFF)
}
Method(WMBG, 3) {
Store(Arg2, BUFF)
Z00K(BF00)
Store(DerefOf(Index(BGDS, Subtract(Arg1, One, ), )), BUFF)
Store(BUFF, Debug)
Return(BUFF)
}
}
OperationRegion(SMI0, SystemIO, Ones, 0xffff0040)
Field(SMI0, AnyAcc, NoLock, Preserve) {
SMIC, 8
}
OperationRegion(SMI1, SystemMemory, Ones, 0xffff0041)
Field(SMI1, AnyAcc, NoLock, Preserve) {
WCMD, 8,
WDID, 32,
TPID, 8,
DI00, 320
}
Field(SMI1, AnyAcc, NoLock, Preserve) {
Offset(0x6),
D000, 32,
D001, 32,
D002, 32,
D003, 32,
D004, 32
}
Mutex(PSMX, 0)
Method(PHWM, 2) {
Acquire(PSMX, 0xffff)
Store(0xe0, WCMD)
Store(0x57, TPID)
Store(Arg0, WDID)
Store(Arg1, DI00)
Store(Zero, SMIC)
Store(DI00, Local0)
Release(PSMX)
Return(Local0)
}
Device(SLPB) {
Name(_HID, 0x0e0cd041)
}
Device(PWRB) {
Name(_HID, 0x0c0cd041)
}
Device(PCI0) {
Name(_HID, 0x080ad041)
Name(_CID, 0x030ad041)
Name(_ADR, Zero)
Name(_BBN, Zero)
OperationRegion(HBUS, PCI_Config, 0x40, 0xc0)
Field(HBUS, DWordAcc, NoLock, Preserve) {
Offset(0x50),
, 4,
PM0H, 2,
Offset(0x51),
PM1L, 2,
, 2,
PM1H, 2,
Offset(0x52),
PM2L, 2,
, 2,
PM2H, 2,
Offset(0x53),
PM3L, 2,
, 2,
PM3H, 2,
Offset(0x54),
PM4L, 2,
, 2,
PM4H, 2,
Offset(0x55),
PM5L, 2,
, 2,
PM5H, 2,
Offset(0x56),
PM6L, 2,
, 2,
PM6H, 2,
Offset(0x57),
, 7,
HENA, 1,
Offset(0x5c),
, 3,
TOUD, 5
}
Name(BUF0, Buffer(0x01ee) {0x88, 0xd, 0x0, 0x2, 0xc, 0x0, 0x0, 0x0,
0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x1, 0x87, 0x17, 0x0, 0x1, 0xc, 0x3, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf7, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0xf8, 0xc, 0x0, 0x0, 0x47, 0x1, 0xf8, 0xc, 0xf8, 0xc, 0x1, 0x8, 0x87, 0x17,
0x0, 0x1, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0x0, 0xff, 0xff, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf3, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xa, 0x0, 0xff, 0xff, 0xb, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x2, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0xc, 0x0, 0xff, 0x3f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0,
0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0xc, 0x0,
0xff, 0x7f, 0xc, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0,
0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xc, 0x0, 0xff, 0xbf, 0xc, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0
, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xc, 0x0, 0xff, 0xff, 0xc, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0xd, 0x0, 0xff, 0x3f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0,
0x40, 0xd, 0x0, 0xff, 0x7f, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0,
0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80, 0xd, 0x0, 0xff,
0xbf, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0,
0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xd, 0x0, 0xff, 0xff, 0xd, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0xe, 0x0, 0xff, 0x3f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40,
0xe, 0x0, 0xff, 0x7f, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87,
0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x
80, 0xe, 0x0, 0xff, 0xbf, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0,
0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xc0, 0xe, 0x0, 0xff,
0xff, 0xe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0,
0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf, 0x0, 0xff, 0xff, 0xf, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xbf, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0xd4, 0xfe, 0xff, 0x4f, 0xd4, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x79, 0x0 })
Method(_CRS, 0, Serialized) {
If(PM1L) {
CreateDWordField(BUF0, 0x7c, C0LN)
Store(Zero, C0LN)
}
If(LEqual(PM1L, One)) {
CreateBitField(BUF0, 0x0358, C0RW)
Store(Zero, C0RW)
}
If(PM1H) {
CreateDWordField(BUF0, 0x96, C4LN)
Store(Zero, C4LN)
}
If(LEqual(PM1H, One)) {
CreateBitField(BUF0, 0x0428, C4RW)
Store(Zero, C4RW)
}
If(PM2L) {
CreateDWordField(BUF0, 0xb0, C8LN)
Store(Zero, C8LN)
}
If(LEqual(PM2L, One)) {
CreateBitField(BUF0, 0x04f8, C8RW)
Store(Zero, C8RW)
}
If(PM2H) {
CreateDWordField(BUF0, 0xca, CCLN)
Store(Zero, CCLN)
}
If(LEqual(PM2H, One)) {
CreateBitField(BUF0, 0x05c8, CCRW)
Store(Zero, CCRW)
}
If(PM3L) {
CreateDWordField(BUF0, 0xe4, D0LN)
Store(Zero, D0LN)
}
If(LEqual(PM3L, One)) {
CreateBitField(BUF0, 0x0698, D0RW)
Store(Zero, D0RW)
}
If(PM3H) {
CreateDWordField(BUF0, 0xfe, D4LN)
Store(Zero, D4LN)
}
If(LEqual(PM3H, One)) {
CreateBitField(BUF0, 0x0768, D4RW)
Store(Zero, D4RW)
}
If(PM4L) {
CreateDWordField(BUF0, 0x0118, D8LN)
Store(Zero, D8LN)
}
If(LEqual(PM4L, One)) {
CreateBitField(BUF0, 0x0838, D8RW)
Store(Zero, D8RW)
}
If(PM4H) {
CreateDWordField(BUF0, 0x0132, DCLN)
Store(Zero, DCLN)
}
If(LEqual(PM4H, One)) {
CreateBitField(BUF0, 0x0908, DCRW)
Store(Zero, DCRW)
}
If(PM5L) {
CreateDWordField(BUF0, 0x014c, E0LN)
Store(Zero, E0LN)
}
If(LEqual(PM5L, One)) {
CreateBitField(BUF0, 0x09d8, E0RW)
Store(Zero, E0RW)
}
If(PM5H) {
CreateDWordField(BUF0, 0x0166, E4LN)
Store(Zero, E4LN)
}
If(LEqual(PM5H, One)) {
CreateBitField(BUF0, 0x0aa8, E4RW)
Store(Zero, E4RW)
}
If(PM6L) {
CreateDWordField(BUF0, 0x0180, E8LN)
Store(Zero, E8LN)
}
If(LEqual(PM6L, One)) {
CreateBitField(BUF0, 0x0b78, E8RW)
Store(Zero, E8RW)
}
If(PM6H) {
CreateDWordField(BUF0, 0x019a, ECLN)
Store(Zero, ECLN)
}
If(LEqual(PM6H, One)) {
CreateBitField(BUF0, 0x0c48, ECRW)
Store(Zero, ECRW)
}
If(PM0H) {
CreateDWordField(BUF0, 0x01b4, F0LN)
Store(Zero, F0LN)
}
If(LEqual(PM0H, One)) {
CreateBitField(BUF0, 0x0d18, F0RW)
Store(Zero, F0RW)
}
CreateDWordField(BUF0, 0x01c2, M1MN)
CreateDWordField(BUF0, 0x01c6, M1MX)
CreateDWordField(BUF0, 0x01ce, M1LN)
ShiftLeft(TOUD, 0x1b, M1MN)
Add(Subtract(M1MX, M1MN, ), One, M1LN)
Return(BUF0)
}
Method(_PRT) {
If(GPIC) {
Return(Package(0x11) {
Package(0x4) {
0x0001ffff,
Zero,
Zero,
0x10,
},
Package(0x4) {
0x0002ffff,
Zero,
Zero,
0x10,
},
Package(0x4) {
0x0007ffff,
Zero,
Zero,
0x10,
},
Package(0x4) {
0x001bffff,
Zero,
Zero,
0x16,
},
Package(0x4) {
0x001cffff,
Zero,
Zero,
0x11,
},
Package(0x4) {
0x001cffff,
One,
Zero,
0x10,
},
Package(0x4) {
0x001cffff,
0x2,
Zero,
0x12,
},
Package(0x4) {
0x001cffff,
0x3,
Zero,
0x13,
},
Package(0x4) {
0x001dffff,
Zero,
Zero,
0x17,
},
Package(0x4) {
0x001dffff,
One,
Zero,
0x13,
},
Package(0x4) {
0x001dffff,
0x2,
Zero,
0x12,
},
Package(0x4) {
0x001dffff,
0x3,
Zero,
0x10,
},
Package(0x4) {
0x001effff,
Zero,
Zero,
0x16,
},
Package(0x4) {
0x001effff,
One,
Zero,
0x14,
},
Package(0x4) {
0x001fffff,
Zero,
Zero,
0x12,
},
Package(0x4) {
0x001fffff,
One,
Zero,
0x13,
},
Package(0x4) {
0x001fffff,
0x3,
Zero,
0x10,
},
})
}
Else {
Return(Package(0x11) {
Package(0x4) {
0x0001ffff,
Zero,
^LPCB.LNKA,
Zero,
},
Package(0x4) {
0x0002ffff,
Zero,
^LPCB.LNKA,
Zero,
},
Package(0x4) {
0x0007ffff,
Zero,
^LPCB.LNKA,
Zero,
},
Package(0x4) {
0x001bffff,
Zero,
^LPCB.LNKG,
Zero,
},
Package(0x4) {
0x001cffff,
Zero,
^LPCB.LNKB,
Zero,
},
Package(0x4) {
0x001cffff,
One,
^LPCB.LNKA,
Zero,
},
Package(0x4) {
0x001cffff,
0x2,
^LPCB.LNKC,
Zero,
},
Package(0x4) {
0x001cffff,
0x3,
^LPCB.LNKD,
Zero,
},
Package(0x4) {
0x001dffff,
Zero,
^LPCB.LNKH,
Zero,
},
Package(0x4) {
0x001dffff,
One,
^LPCB.LNKD,
Zero,
},
Package(0x4) {
0x001dffff,
0x2,
^LPCB.LNKC,
Zero,
},
Package(0x4) {
0x001dffff,
0x3,
^LPCB.LNKA,
Zero,
},
Package(0x4) {
0x001effff,
Zero,
^LPCB.LNKG,
Zero,
},
Package(0x4) {
0x001effff,
One,
^LPCB.LNKE,
Zero,
},
Package(0x4) {
0x001fffff,
Zero,
^LPCB.LNKC,
Zero,
},
Package(0x4) {
0x001fffff,
One,
^LPCB.LNKD,
Zero,
},
Package(0x4) {
0x001fffff,
0x3,
^LPCB.LNKA,
Zero,
},
})
}
}
Device(PDRC) {
Name(_HID, 0x020cd041)
Name(_UID, One)
Name(_CRS, Buffer(0x4a) {0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0x0, 0xe0,
0x0, 0x0, 0x0, 0x10, 0x86, 0x9, 0x0, 0x1, 0x0, 0x40, 0xd1, 0xfe, 0x0, 0x40,
0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x80, 0xd1, 0xfe, 0x0, 0x10, 0x0, 0x0,
0x86, 0x9, 0x0, 0x1, 0x0, 0x90, 0xd1, 0xfe, 0x0, 0x10, 0x0, 0x0, 0x86, 0x9,
0x0, 0x1, 0x0, 0xc0, 0xd1, 0xfe, 0x0, 0x40, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0,
0x0, 0xd2, 0xfe, 0x0, 0x0, 0x2, 0x0, 0x79, 0x0 })
}
Device(PEGP) {
Name(_ADR, 0x00010000)
Method(_PRT) {
If(GPIC) {
Return(Package(0x4) {
Package(0x4) {
0xffff,
Zero,
Zero,
0x10,
},
Package(0x4) {
0xffff,
One,
Zero,
0x11,
},
Package(0x4) {
0xffff,
0x2,
Zero,
0x12,
},
Package(0x4) {
0xffff,
0x3,
Zero,
0x13,
},
})
}
Else {
Return(Package(0x4) {
Package(0x4) {
0xffff,
Zero,
^^LPCB.LNKA,
Zero,
},
Package(0x4) {
0xffff,
One,
^^LPCB.LNKB,
Zero,
},
Package(0x4) {
0xffff,
0x2,
^^LPCB.LNKC,
Zero,
},
Package(0x4) {
0xffff,
0x3,
^^LPCB.LNKD,
Zero,
},
})
}
}
Device(VGA_) {
Name(_ADR, Zero)
Name(NHKI, Zero)
Name(NCDD, Package(0xb) {
One,
One,
One,
0x5,
0x5,
0x3,
0x3,
0x4,
0x4,
0x2,
0x2,
})
Name(NADD, Package(0xb) {
0x3,
0x5,
0x7,
0x5,
0x7,
0x3,
0x7,
0x7,
0x5,
0x7,
0x3,
})
Name(NNDD, Package(0xb) {
0x2,
0x4,
0x2,
One,
One,
One,
0x5,
0x3,
0x5,
0x4,
0x3,
})
OperationRegion(EGFX, PCI_Config, Zero, 0x4)
Field(EGFX, DWordAcc, NoLock, Preserve) {
EVID, 16
}
Method(_DOS, 1) {
Store(And(Arg0, 0x3, ), DSEN)
}
Method(_DOD) {
Return(Package(0x3) {
0x00010100,
0x00010110,
0x00010200,
})
}
Device(LCD_) {
Name(_ADR, 0x0110)
Method(_DCS) {
PHIS(0xc)
If(And(CSTE, One, )) {
Return(0x1f)
}
Return(0x1d)
}
Method(_DGS) {
If(And(NSTE, One, )) {
Return(One)
}
Return(Zero)
}
Method(_BCL) {
Return(Package(0xc) {
0x64,
0x46,
0xa,
0x14,
0x1e,
0x28,
0x32,
0x3c,
0x46,
0x50,
0x5a,
0x64,
})
}
Method(_BCM, 1) {
Divide(Arg0, 0xa, Local0, Local1)
Decrement(Local1)
Store(Local1, ^^^^LPCB.EC0_.BRTS)
}
Method(_BQC) {
Multiply(^^^^LPCB.EC0_.BRTS, 0xa, Local0)
Add(Local0, One, Local0)
Return(Local0)
}
}
Device(CRT1) {
Name(_ADR, 0x0100)
Method(_DCS) {
PHIS(0xc)
If(And(CSTE, 0x2, )) {
Return(0x1f)
}
Return(0x1d)
}
Method(_DGS) {
If(And(NSTE, 0x2, )) {
Return(One)
}
Return(Zero)
}
}
Device(DTV1) {
Name(_ADR, 0x0200)
Method(_DCS) {
PHIS(0xc)
If(And(CSTE, 0x4, )) {
Return(0x1f)
}
Return(0x1d)
}
Method(_DGS) {
If(And(NSTE, 0x4, )) {
Return(One)
}
Return(Zero)
}
}
Method(DSSW) {
If(LEqual(Zero, DSEN)) {
PHIS(0xc)
Store(0xb, NHKI)
Store(One, NSTE)
And(CADL, 0x7, CADL)
And(CSTE, 0x7, CSTE)
While(NHKI) {
Decrement(NHKI)
Store(DerefOf(Index(NCDD, NHKI, )), Local0)
If(LEqual(Local0, CSTE)) {
Store(DerefOf(Index(NADD, NHKI, )), Local0)
If(LEqual(Local0, CADL)) {
Store(DerefOf(Index(NNDD, NHKI, )), NSTE)
Store(Zero, NHKI)
}
}
}
Notify(VGA_, 0x80)
}
If(LEqual(One, DSEN)) {
PHIS(One)
Notify(VGA_, 0x81)
}
}
}
}
Device(GFX0) {
Name(_ADR, 0x00020000)
Name(IHKI, Zero)
Name(ICDD, Package(0xb) {
0x8,
0x8,
0x8,
0xa,
0xa,
0x9,
0x9,
0x2,
0x2,
One,
One,
})
Name(IADD, Package(0xb) {
0x9,
0xa,
0xb,
0xa,
0xb,
0x9,
0xb,
0xb,
0xa,
0xb,
0x9,
})
Name(INDD, Package(0xb) {
One,
0x2,
One,
0x8,
0x8,
0x8,
0xa,
0x9,
0xa,
0x2,
0x9,
})
OperationRegion(IGFX, PCI_Config, Zero, 0xa4)
Field(IGFX, DWordAcc, NoLock, Preserve) {
IVID, 16,
Offset(0x95),
IRES, 24
}
Method(_DOS, 1) {
Store(And(Arg0, 0x3, ), DSEN)
}
Method(_DOD) {
Return(Package(0x3) {
0x00010100,
0x00010400,
0x00010200,
})
}
Device(LCD_) {
Name(_ADR, 0x0400)
Method(_DCS) {
PHIS(0xc)
If(And(CSTE, 0x8, )) {
Return(0x1f)
}
Return(0x1d)
}
Method(_DGS) {
If(And(NSTE, 0x8, )) {
Return(One)
}
Return(Zero)
}
Method(_BCL) {
Return(Package(0xc) {
0x64,
0x46,
0xa,
0x14,
0x1e,
0x28,
0x32,
0x3c,
0x46,
0x50,
0x5a,
0x64,
})
}
Method(_BCM, 1) {
Divide(Arg0, 0xa, Local0, Local1)
Decrement(Local1)
Store(Local1, ^^^LPCB.EC0_.BRTS)
}
Method(_BQC) {
Multiply(^^^LPCB.EC0_.BRTS, 0xa, Local0)
Add(Local0, One, Local0)
Return(Local0)
}
}
Device(CRT1) {
Name(_ADR, 0x0100)
Method(_DCS) {
PHIS(0xc)
If(And(CSTE, One, )) {
Return(0x1f)
}
Return(0x1d)
}
Method(_DGS) {
If(And(NSTE, One, )) {
Return(One)
}
Return(Zero)
}
}
Device(DTV1) {
Name(_ADR, 0x0200)
Method(_DCS) {
PHIS(0xc)
If(And(CSTE, 0x2, )) {
Return(0x1f)
}
Return(0x1d)
}
Method(_DGS) {
If(And(NSTE, 0x2, )) {
Return(One)
}
Return(Zero)
}
}
Method(DSSW) {
If(LEqual(Zero, DSEN)) {
PHIS(0xc)
Store(0xb, IHKI)
Store(0x8, NSTE)
And(CADL, 0xb, CADL)
And(CSTE, 0xb, CSTE)
While(IHKI) {
Decrement(IHKI)
Store(DerefOf(Index(ICDD, IHKI, )), Local0)
If(LEqual(Local0, CSTE)) {
Store(DerefOf(Index(IADD, IHKI, )), Local0)
If(LEqual(Local0, CADL)) {
Store(DerefOf(Index(INDD, IHKI, )), NSTE)
Store(Zero, IHKI)
}
}
}
Notify(GFX0, 0x80)
}
Else {
PHIS(One)
Notify(GFX0, 0x81)
}
}
}
Device(RP01) {
Name(_ADR, 0x001c0000)
OperationRegion(P1CS, PCI_Config, 0x40, 0x0100)
Field(P1CS, AnyAcc, NoLock, WriteAsZeros) {
Offset(0x1a),
ABP1, 1,
, 2,
PDC1, 1,
, 2,
PDS1, 1,
Offset(0x20),
Offset(0x22),
PSP1, 1,
Offset(0x9c),
, 30,
HPCS, 1,
PMCS, 1
}
Device(PXS1) {
Name(_ADR, Zero)
OperationRegion(P1FG, PCI_Config, Zero, 0x8)
Field(P1FG, DWordAcc, NoLock, Preserve) {
P1ID, 32
}
Method(_RMV) {
Return(One)
}
Method(_STA) {
If(LEqual(P1ID, Ones)) {
Return(Zero)
}
Else {
Return(0xf)
}
}
Name(_PRW, Package(0x2) {
0x9,
0x4,
})
Name(_EJD, "\_SB.PCI0.USB7.HUB7.PRT2")
}
Method(_PRT) {
If(GPIC) {
Return(Package(0x4) {
Package(0x4) {
0xffff,
Zero,
Zero,
0x10,
},
Package(0x4) {
0xffff,
One,
Zero,
0x11,
},
Package(0x4) {
0xffff,
0x2,
Zero,
0x12,
},
Package(0x4) {
0xffff,
0x3,
Zero,
0x13,
},
})
}
Else {
Return(Package(0x4) {
Package(0x4) {
0xffff,
Zero,
^^LPCB.LNKA,
Zero,
},
Package(0x4) {
0xffff,
One,
^^LPCB.LNKB,
Zero,
},
Package(0x4) {
0xffff,
0x2,
^^LPCB.LNKC,
Zero,
},
Package(0x4) {
0xffff,
0x3,
^^LPCB.LNKD,
Zero,
},
})
}
}
}
Device(RP02) {
Name(_ADR, 0x001c0001)
OperationRegion(P2CS, PCI_Config, 0x40, 0x0100)
Field(P2CS, AnyAcc, NoLock, WriteAsZeros) {
Offset(0x1a),
ABP2, 1,
, 2,
PDC2, 1,
, 2,
PDS2, 1,
Offset(0x20),
Offset(0x22),
PSP2, 1,
Offset(0x9c),
, 30,
HPCS, 1,
PMCS, 1
}
Device(PXS2) {
Name(_ADR, Zero)
OperationRegion(P2FG, PCI_Config, Zero, 0x8)
Field(P2FG, DWordAcc, NoLock, Preserve) {
P2ID, 32
}
Method(_STA) {
If(LEqual(P2ID, Ones)) {
Return(Zero)
}
Else {
Return(0xf)
}
}
Name(_PRW, Package(0x2) {
0x9,
0x4,
})
Name(_EJD, "\_SB.PCI0.USB7.HUB7.PRT8")
}
Method(_PRT) {
If(GPIC) {
Return(Package(0x4) {
Package(0x4) {
0xffff,
Zero,
Zero,
0x11,
},
Package(0x4) {
0xffff,
One,
Zero,
0x12,
},
Package(0x4) {
0xffff,
0x2,
Zero,
0x13,
},
Package(0x4) {
0xffff,
0x3,
Zero,
0x10,
},
})
}
Else {
Return(Package(0x4) {
Package(0x4) {
0xffff,
Zero,
^^LPCB.LNKB,
Zero,
},
Package(0x4) {
0xffff,
One,
^^LPCB.LNKC,
Zero,
},
Package(0x4) {
0xffff,
0x2,
^^LPCB.LNKD,
Zero,
},
Package(0x4) {
0xffff,
0x3,
^^LPCB.LNKA,
Zero,
},
})
}
}
}
Device(RP03) {
Name(_ADR, 0x001c0002)
OperationRegion(P3CS, PCI_Config, 0x40, 0x0100)
Field(P3CS, AnyAcc, NoLock, WriteAsZeros) {
Offset(0x1a),
ABP3, 1,
, 2,
PDC3, 1,
, 2,
PDS3, 1,
Offset(0x20),
Offset(0x22),
PSP3, 1,
Offset(0x9c),
, 30,
HPCS, 1,
PMCS, 1
}
Method(_PRT) {
If(GPIC) {
Return(Package(0x4) {
Package(0x4) {
0xffff,
Zero,
Zero,
0x12,
},
Package(0x4) {
0xffff,
One,
Zero,
0x13,
},
Package(0x4) {
0xffff,
0x2,
Zero,
0x10,
},
Package(0x4) {
0xffff,
0x3,
Zero,
0x11,
},
})
}
Else {
Return(Package(0x4) {
Package(0x4) {
0xffff,
Zero,
^^LPCB.LNKC,
Zero,
},
Package(0x4) {
0xffff,
One,
^^LPCB.LNKD,
Zero,
},
Package(0x4) {
0xffff,
0x2,
^^LPCB.LNKA,
Zero,
},
Package(0x4) {
0xffff,
0x3,
^^LPCB.LNKB,
Zero,
},
})
}
}
Device(BCOL) {
Name(_ADR, Zero)
Name(_PRW, Package(0x2) {
0xb,
0x4,
})
Name(LANP, Zero)
Method(_PSW, 1) {
If(LEqual(Arg0, Zero)) {
Store(Zero, LANP)
}
Else {
Store(One, LANP)
}
}
}
}
Device(RP04) {
Name(_ADR, 0x001c0003)
OperationRegion(P4CS, PCI_Config, 0x40, 0x0100)
Field(P4CS, AnyAcc, NoLock, WriteAsZeros) {
Offset(0x1a),
ABP4, 1,
, 2,
PDC4, 1,
, 2,
PDS4, 1,
Offset(0x20),
Offset(0x22),
PSP4, 1,
Offset(0x9c),
, 30,
HPCS, 1,
PMCS, 1
}
Device(PXS4) {
Name(_ADR, Zero)
Name(_PRW, Package(0x2) {
0x9,
0x4,
})
}
Method(_PRT) {
If(GPIC) {
Return(Package(0x4) {
Package(0x4) {
0xffff,
Zero,
Zero,
0x13,
},
Package(0x4) {
0xffff,
One,
Zero,
0x10,
},
Package(0x4) {
0xffff,
0x2,
Zero,
0x11,
},
Package(0x4) {
0xffff,
0x3,
Zero,
0x12,
},
})
}
Else {
Return(Package(0x4) {
Package(0x4) {
0xffff,
Zero,
^^LPCB.LNKD,
Zero,
},
Package(0x4) {
0xffff,
One,
^^LPCB.LNKA,
Zero,
},
Package(0x4) {
0xffff,
0x2,
^^LPCB.LNKB,
Zero,
},
Package(0x4) {
0xffff,
0x3,
^^LPCB.LNKC,
Zero,
},
})
}
}
}
Device(USB1) {
Name(_ADR, 0x001d0000)
Device(HUB1) {
Name(_ADR, Zero)
Device(PRT1) {
Name(_ADR, One)
}
Device(PRT2) {
Name(_ADR, 0x2)
Name(_EJD, "\_SB.PCI0.RP01.PXS1")
}
}
OperationRegion(U1CS, PCI_Config, 0xc0, 0x8)
Field(U1CS, DWordAcc, NoLock, Preserve) {
Offset(0x1),
U1SS, 4,
Offset(0x4),
U1EN, 2
}
Name(_PRW, Package(0x2) {
0x3,
0x3,
})
Method(_PSW, 1) {
If(Arg0) {
Store(0x3, U1EN)
}
Else {
Store(Zero, U1EN)
}
}
}
Device(USB2) {
Name(_ADR, 0x001d0001)
Device(HUB2) {
Name(_ADR, Zero)
Device(PRT1) {
Name(_ADR, One)
}
Device(PRT2) {
Name(_ADR, 0x2)
}
}
OperationRegion(U2CS, PCI_Config, 0xc0, 0x8)
Field(U2CS, DWordAcc, NoLock, Preserve) {
Offset(0x1),
U2SS, 4,
Offset(0x4),
U2EN, 2
}
Name(_PRW, Package(0x2) {
0x4,
0x3,
})
Method(_PSW, 1) {
If(Arg0) {
Store(0x3, U2EN)
}
Else {
Store(Zero, U2EN)
}
}
}
Device(USB3) {
Name(_ADR, 0x001d0002)
Device(HUB3) {
Name(_ADR, Zero)
Device(PRT1) {
Name(_ADR, One)
}
Device(PRT2) {
Name(_ADR, 0x2)
}
}
OperationRegion(U3CS, PCI_Config, 0xc0, 0x8)
Field(U3CS, DWordAcc, NoLock, Preserve) {
Offset(0x1),
U3SS, 4,
Offset(0x4),
U3EN, 2
}
Name(_PRW, Package(0x2) {
0xc,
0x3,
})
Method(_PSW, 1) {
If(Arg0) {
Store(0x3, U3EN)
}
Else {
Store(Zero, U3EN)
}
}
}
Device(USB4) {
Name(_ADR, 0x001d0003)
Device(HUB4) {
Name(_ADR, Zero)
Device(PRT1) {
Name(_ADR, One)
}
Device(PRT2) {
Name(_ADR, 0x2)
Name(_EJD, "\_SB.PCI0.RP02.PXS2")
}
}
OperationRegion(U4CS, PCI_Config, 0xc0, 0x8)
Field(U4CS, DWordAcc, NoLock, Preserve) {
Offset(0x1),
U4SS, 4,
Offset(0x4),
U4EN, 2
}
Name(_PRW, Package(0x2) {
0xe,
0x3,
})
Method(_PSW, 1) {
If(Arg0) {
Store(0x3, U4EN)
}
Else {
Store(Zero, U4EN)
}
}
}
Device(USB7) {
Name(_ADR, 0x001d0007)
Device(HUB7) {
Name(_ADR, Zero)
OperationRegion(U7CS, PCI_Config, 0x72, 0x4)
Field(U7CS, DWordAcc, NoLock, Preserve) {
U7SS, 14
}
Method(_STA) {
Store(0x10, U7SS)
Return(0xf)
}
Device(PRT1) {
Name(_ADR, One)
}
Device(PRT2) {
Name(_ADR, 0x2)
Name(_EJD, "\_SB.PCI0.RP01.PXS1")
}
Device(PRT3) {
Name(_ADR, 0x3)
}
Device(PRT4) {
Name(_ADR, 0x4)
}
Device(PRT5) {
Name(_ADR, 0x5)
}
Device(PRT6) {
Name(_ADR, 0x6)
}
Device(PRT7) {
Name(_ADR, 0x7)
}
Device(PRT8) {
Name(_ADR, 0x8)
Name(_EJD, "\_SB.PCI0.RP02.PXS2")
}
}
Name(_PRW, Package(0x2) {
0xd,
0x3,
})
}
Device(PCIB) {
Name(_ADR, 0x001e0000)
Device(LANC) {
Name(_ADR, 0x00010000)
Name(_PRW, Package(0x2) {
0x8,
0x5,
})
Name(LANP, Zero)
Method(_PSW, 1) {
If(LEqual(Arg0, Zero)) {
Store(Zero, LANP)
}
Else {
Store(One, LANP)
}
}
}
Method(_PRT) {
If(GPIC) {
Return(Package(0x1) {
Package(0x4) {
0xffff,
Zero,
Zero,
0x14,
},
})
}
Else {
Return(Package(0x1) {
Package(0x4) {
0xffff,
Zero,
^^LPCB.LNKE,
Zero,
},
})
}
}
}
Device(MODM) {
Name(_ADR, 0x001e0003)
Name(_PRW, Package(0x2) {
0x5,
0x3,
})
}
Device(LPCB) {
Name(_ADR, 0x001f0000)
OperationRegion(LPC0, PCI_Config, 0x40, 0xc0)
Field(LPC0, AnyAcc, NoLock, Preserve) {
Offset(0x20),
PARC, 8,
PBRC, 8,
PCRC, 8,
PDRC, 8,
Offset(0x28),
PERC, 8,
PFRC, 8,
PGRC, 8,
PHRC, 8,
Offset(0x40),
IOD0, 8,
IOD1, 8,
CMA0, 1,
CMB0, 1,
LP0E, 1,
FDDE, 1,
Offset(0x44),
DIO1, 16,
RIO1, 8,
Offset(0x60),
, 7,
C4O3, 1
}
Device(LNKA) {
Name(_HID, 0x0f0cd041)
Name(_UID, One)
Method(_DIS, 0, Serialized) {
Store(0x80, PARC)
}
Name(_PRS, Buffer(0x6) {0x23, 0x62, 0xd4, 0x18, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
Name(RTLA, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLA, One, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(One, And(PARC, 0xf, ), IRQ0)
Return(RTLA)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, One, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PARC)
}
Method(_STA, 0, Serialized) {
If(And(PARC, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKB) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x2)
Method(_DIS, 0, Serialized) {
Store(0x80, PBRC)
}
Name(_PRS, Buffer(0x6) {0x23, 0x62, 0xd8, 0x18, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
Name(RTLB, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLB, One, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(One, And(PBRC, 0xf, ), IRQ0)
Return(RTLB)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, One, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PBRC)
}
Method(_STA, 0, Serialized) {
If(And(PBRC, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKC) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x3)
Method(_DIS, 0, Serialized) {
Store(0x80, PCRC)
}
Name(_PRS, Buffer(0x6) {0x23, 0x62, 0xd4, 0x18, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
Name(RTLC, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLC, One, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(One, And(PCRC, 0xf, ), IRQ0)
Return(RTLC)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, One, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PCRC)
}
Method(_STA, 0, Serialized) {
If(And(PCRC, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKD) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x4)
Method(_DIS, 0, Serialized) {
Store(0x80, PDRC)
}
Name(_PRS, Buffer(0x6) {0x23, 0x62, 0xd8, 0x18, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
Name(RTLD, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLD, One, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(One, And(PDRC, 0xf, ), IRQ0)
Return(RTLD)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, One, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PDRC)
}
Method(_STA, 0, Serialized) {
If(And(PDRC, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKE) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x5)
Method(_DIS, 0, Serialized) {
Store(0x80, PERC)
}
Name(_PRS, Buffer(0x6) {0x23, 0x62, 0xd4, 0x18, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
Name(RTLE, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLE, One, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(One, And(PERC, 0xf, ), IRQ0)
Return(RTLE)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, One, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PERC)
}
Method(_STA, 0, Serialized) {
If(And(PERC, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKF) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x6)
Method(_DIS, 0, Serialized) {
Store(0x80, PFRC)
}
Name(_PRS, Buffer(0x6) {0x23, 0x62, 0xd8, 0x18, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
Name(RTLF, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLF, One, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(One, And(PFRC, 0xf, ), IRQ0)
Return(RTLF)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, One, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PFRC)
}
Method(_STA, 0, Serialized) {
If(And(PFRC, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKG) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x7)
Method(_DIS, 0, Serialized) {
Store(0x80, PGRC)
}
Name(_PRS, Buffer(0x6) {0x23, 0x62, 0xd4, 0x18, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
Name(RTLG, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLG, One, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(One, And(PGRC, 0xf, ), IRQ0)
Return(RTLG)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, One, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PGRC)
}
Method(_STA, 0, Serialized) {
If(And(PGRC, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Device(LNKH) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x8)
Method(_DIS, 0, Serialized) {
Store(0x80, PHRC)
}
Name(_PRS, Buffer(0x6) {0x23, 0x62, 0xd8, 0x18, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
Name(RTLH, Buffer(0x6) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(RTLH, One, IRQ0)
Store(Zero, IRQ0)
ShiftLeft(One, And(PHRC, 0xf, ), IRQ0)
Return(RTLH)
}
Method(_SRS, 1, Serialized) {
CreateWordField(Arg0, One, IRQ0)
FindSetRightBit(IRQ0, Local0)
Decrement(Local0)
Store(Local0, PHRC)
}
Method(_STA, 0, Serialized) {
If(And(PHRC, 0x80, )) {
Return(0x9)
}
Else {
Return(0xb)
}
}
}
Method(ECOK) {
If(LEqual(^EC0_.ECRY, One)) {
If(LEqual(OSYS, 0x40)) {
Store(One, ^EC0_.OSIF)
}
Else {
Store(Zero, ^EC0_.OSIF)
}
Return(One)
}
Else {
Return(Zero)
}
}
Device(EC0_) {
Name(_HID, 0x090cd041)
Name(_GPE, 0x19)
Name(ECRY, Zero)
Name(_CRS, Buffer(0x12) {0x47, 0x1, 0x62, 0x0, 0x62, 0x0, 0x1,
0x1, 0x47, 0x1, 0x66, 0x0, 0x66, 0x0, 0x1, 0x1, 0x79, 0x0 })
Method(_REG, 2) {
If(LEqual(Arg0, 0x3)) {
Store(Arg1, ECRY)
}
}
OperationRegion(ERAM, EmbeddedControl, Zero, 0xff)
Field(ERAM, ByteAcc, Lock, Preserve) {
SCAP, 8,
BTPV, 8,
THFN, 8,
BDME, 16,
BDFC, 16,
MLED, 1,
SCHG, 1,
SCCF, 1,
SCPF, 1,
ACIS, 1,
Offset(0x8),
Offset(0xf),
LIDS, 1,
Offset(0x10),
Offset(0x60),
SMPR, 8,
SMST, 8,
SMAD, 8,
SMCM, 8,
SMDR, 32,
BCNT, 8,
SMAA, 8,
SMD0, 8,
SMD1, 8,
Offset(0x90),
Offset(0x91),
Offset(0x92),
Offset(0x93),
Offset(0x94),
EXNI, 8,
EXNB, 8,
EXND, 8,
Offset(0x98),
Offset(0x99),
OSIF, 1,
Offset(0x9a),
BAL1, 1,
BAL2, 1,
BAL3, 1,
BAL4, 1,
BCL1, 1,
BCL2, 1,
BCL3, 1,
BCL4, 1,
BPU1, 1,
BPU2, 1,
BPU3, 1,
BPU4, 1,
BOS1, 1,
BOS2, 1,
BOS3, 1,
BOS4, 1,
PHDD, 1,
IFDD, 1,
IODD, 1,
SHDD, 1,
LS20, 1,
EFDD, 1,
ECRT, 1,
LANC, 1,
SBTN, 1,
VIDO, 1,
VOLD, 1,
VOLU, 1,
MUTE, 1,
CONT, 1,
BRGT, 1,
HBTN, 1,
S4SE, 1,
SKEY, 1,
BKEY, 1,
TKEY, 1,
FKEY, 1,
DVDM, 1,
DIGM, 1,
CDLK, 1,
, 1,
LIDO, 1,
PMEE, 1,
PBET, 1,
RIIN, 1,
BTWK, 1,
DKIN, 1,
Offset(0xa0),
, 6,
SWTH, 1,
HWTH, 1,
DKT0, 1,
DKT1, 1,
, 2,
OSUD, 1,
OSDK, 1,
OSSU, 1,
DKCG, 1,
ODTS, 8,
S1LD, 1,
S3LD, 1,
VGAQ, 1,
PCMQ, 1,
PCMR, 1,
ADPT, 1,
SYS6, 1,
SYS7, 1,
PWAK, 1,
MWAK, 1,
LWAK, 1,
RWAK, 1,
, 2,
KWAK, 1,
MSWK, 1,
CCAC, 1,
AOAC, 1,
BLAC, 1,
PSRC, 1,
BOAC, 1,
LCAC, 1,
AAAC, 1,
ACAC, 1,
PCEC, 8,
THON, 8,
THSD, 8,
THEM, 8,
TCON, 8,
THRS, 8,
THSE, 8,
FSSN, 4,
FANU, 4,
PTVL, 3,
, 3,
TTSR, 1,
TTHR, 1,
TSTH, 1,
TSBC, 1,
TSBF, 1,
TSPL, 1,
TSBT, 1,
, 2,
THTA, 1,
CTMP, 8,
LTMP, 8,
SKTA, 8,
SKTB, 8,
SKTC, 8,
CDTS, 8,
NBTP, 8,
LANP, 1,
LCDS, 1,
Offset(0xb8),
Offset(0xb9),
BRTS, 8,
CTRS, 8,
WLAT, 1,
BTAT, 1,
WLEX, 1,
BTEX, 1,
KLSW, 1,
WLOK, 1,
Offset(0xbc),
PJID, 8,
CPUN, 8,
Offset(0xc0),
BTYP, 8,
BST0, 8,
BRC0, 16,
BSN0, 16,
BPV0, 16,
BDV0, 16,
BDC0, 16,
BFC0, 16,
GAU0, 8,
BSCY, 8,
BSCU, 16,
BAC0, 16,
BTW0, 8,
BATV, 8,
BPTC, 8,
BTTC, 8,
BTMA, 16,
BTSC, 8,
BCIX, 8,
CCBA, 8,
CBOT, 8,
BTSS, 16,
OVCC, 8,
CCFC, 8,
BADC, 8,
BSC1, 16,
BSC2, 16,
BSC3, 16,
BSC4, 16,
Offset(0xed),
Offset(0xee),
Offset(0xef),
Offset(0xf0),
BTS1, 8,
BTS2, 8,
BSCS, 16,
BDAD, 16,
BACV, 16
}
Method(PCLK) {
Store(PTVL, Local0)
If(LEqual(Local0, Zero)) {
Store(Zero, THEN)
}
Else {
Not(Local0, Local0)
Add(Local0, One, Local0)
And(Local0, 0x7, Local0)
Store(Local0, DUTY)
If(LEqual(Local0, Zero)) {
Store(Zero, THEN)
}
Else {
Store(One, THEN)
}
}
}
Method(_Q2D) {
PHIS(0x2)
}
Method(_Q11) {
If(LEqual(OSYS, 0x07d6)) {
If(LEqual(^^^GFX0.IVID, 0x8086)) {
Notify(^^^GFX0.LCD_, 0x87)
}
Else {
Notify(^^^PEGP.VGA_.LCD_, 0x87)
}
}
Else {
If(LEqual(^^^^WMID.BAEF, One)) {
Store(BRTS, Local1)
Store(^^^^WMID.LBL0, Local2)
Add(Local2, Local1, Local2)
Store(Local2, ^^^^WMID.NTDC)
Notify(WMID, 0x80)
}
}
}
Method(_Q12) {
If(LEqual(OSYS, 0x07d6)) {
If(LEqual(^^^GFX0.IVID, 0x8086)) {
Notify(^^^GFX0.LCD_, 0x86)
}
Else {
Notify(^^^PEGP.VGA_.LCD_, 0x86)
}
}
Else {
If(LEqual(^^^^WMID.BAEF, One)) {
Store(BRTS, Local1)
Store(^^^^WMID.LBL0, Local2)
Add(Local2, Local1, Local2)
Store(Local2, ^^^^WMID.NTDC)
Notify(WMID, 0x80)
}
}
}
Method(_Q1D) {
PCLK()
}
Method(_Q22) {
Notify(BAT1, 0x80)
}
Method(_Q25) {
Notify(BAT1, 0x81)
Notify(BAT1, 0x80)
}
Method(_Q34) {
If(LEqual(^^^^WMID.BAEF, One)) {
Store(BTAT, Local1)
Store(^^^^WMID.BLTD, Local2)
Add(Local2, Local1, Local2)
Store(Local2, ^^^^WMID.NTDC)
Notify(WMID, 0x80)
}
}
Method(_Q37) {
Notify(ACAD, Zero)
Sleep(0x03e8)
Notify(BAT1, 0x80)
Notify(\_PR_.CPU0, 0x80)
}
Method(_Q38) {
Notify(ACAD, One)
Sleep(0x03e8)
Notify(BAT1, 0x80)
Notify(\_PR_.CPU0, 0x80)
}
Method(_Q60) {
If(LEqual(^^^^WMID.BAEF, One)) {
Store(WLAT, Local1)
Store(^^^^WMID.WLSD, Local2)
Add(Local2, Local1, Local2)
Store(Local2, ^^^^WMID.NTDC)
Notify(WMID, 0x80)
}
}
Method(_Q4F) {
If(LEqual(^^^^WMID.BAEF, One)) {
Store(One, Local1)
If(LEqual(LANC, One)) {
Store(Zero, Local1)
}
Store(^^^^WMID.LANI, Local2)
Add(Local2, Local1, Local2)
Store(Local2, ^^^^WMID.NTDC)
Notify(WMID, 0x80)
}
}
Method(_Q50) {
If(LEqual(^^^^WMID.BAEF, One)) {
Store(Zero, Local1)
If(LEqual(LCDS, One)) {
Store(One, Local1)
}
Store(^^^^WMID.LDOF, Local2)
Add(Local2, Local1, Local2)
Store(Local2, ^^^^WMID.NTDC)
Notify(WMID, 0x80)
}
}
OperationRegion(CCLK, SystemIO, 0x1010, 0x4)
Field(CCLK, DWordAcc, NoLock, Preserve) {
, 1,
DUTY, 3,
THEN, 1,
Offset(0x1),
FTT_, 1,
, 8,
TSTS, 1
}
OperationRegion(ECRM, EmbeddedControl, Zero, 0xff)
Field(ECRM, ByteAcc, Lock, Preserve) {
Offset(0x94),
ERIB, 16,
ERBD, 8
}
Mutex(FAMX, 0)
Method(FANG, 1) {
Acquire(FAMX, 0xffff)
Store(Arg0, ERIB)
Store(ERBD, Local0)
Release(FAMX)
Return(Local0)
}
Method(FANW, 2) {
Acquire(FAMX, 0xffff)
Store(Arg0, ERIB)
Store(Arg1, ERBD)
Release(FAMX)
Return(Arg1)
}
Method(TUVR, 1) {
Return(0x3)
}
Method(THRO, 1) {
If(LEqual(Arg0, Zero)) {
Return(THEN)
}
Else {
If(LEqual(Arg0, One)) {
Return(DUTY)
}
Else {
If(LEqual(Arg0, 0x2)) {
Return(TTHR)
}
Else {
Return(0xff)
}
}
}
}
Method(CLCK, 1) {
If(LEqual(Arg0, Zero)) {
Store(Zero, THEN)
}
Else {
Store(Arg0, DUTY)
Store(One, THEN)
}
Return(THEN)
}
}
Device(BAT1) {
Name(_HID, 0x0a0cd041)
Name(_UID, One)
Name(_PCL, Package(0x1) {
_SB_,
})
Name(PBIF, Package(0xd) {
One,
0x0fa0,
0x0fa0,
One,
0x39d0,
0x0190,
0x78,
0x0108,
0x0ec4,
"Primary ",
"",
"Lion",
"ACER",
})
Name(PBST, Package(0x4) {
One,
Ones,
Ones,
0x39d0,
})
Method(_STA) {
If(ECOK()) {
If(^^EC0_.BAL1) {
Sleep(0x14)
Return(0x1f)
}
Else {
Sleep(0x14)
Return(0xf)
}
}
Else {
Sleep(0x14)
Return(0x1f)
}
}
Method(_BIF) {
If(ECOK()) {
Sleep(0x14)
Store(^^EC0_.BDC0, Index(PBIF, One, ))
Sleep(0x14)
Store(^^EC0_.BFC0, Index(PBIF, 0x2, ))
Sleep(0x14)
Store(^^EC0_.BDV0, Index(PBIF, 0x4, ))
Sleep(0x14)
Store(^^EC0_.BDC0, Local2)
Divide(Local2, 0x64, Local6, Local2)
Multiply(Local2, 0x5, Local3)
Store(Local3, Index(PBIF, 0x5, ))
Multiply(Local2, 0x3, Local4)
Store(Local4, Index(PBIF, 0x6, ))
}
Return(PBIF)
}
Method(_BST) {
If(ECOK()) {
Sleep(0x14)
Store(^^EC0_.BST0, Local0)
And(Local0, 0x7, Local0)
Store(Local0, Index(PBST, Zero, ))
Sleep(0x14)
Store(^^EC0_.GAU0, Local2)
Sleep(0x14)
Store(^^EC0_.BPV0, Local3)
Sleep(0x14)
Store(^^EC0_.BFC0, Local1)
Sleep(0x14)
If(Local2) {
Multiply(Local2, Local1, Local2)
Divide(Local2, 0x64, Local6, Local2)
If(Local6) {
Increment(Local2)
}
}
Store(^^EC0_.BAC0, Local1)
If(And(Local1, 0x8000, Local1)) {
Store(^^EC0_.BAC0, Local1)
Subtract(0xffff, Local1, Local1)
}
Else {
Store(Zero, Local1)
}
Sleep(0x14)
Store(Local1, Index(PBST, One, ))
Store(Local2, Index(PBST, 0x2, ))
Store(Local3, Index(PBST, 0x3, ))
}
Return(PBST)
}
}
Device(DMAC) {
Name(_HID, 0x0002d041)
Name(_CRS, Buffer(0x25) {0x47, 0x1, 0x0, 0x0, 0x0, 0x0, 0x1,
0x20, 0x47, 0x1, 0x81, 0x0, 0x81, 0x0, 0x1, 0x11, 0x47, 0x1, 0x93, 0x0, 0x93,
0x0, 0x1, 0xd, 0x47, 0x1, 0xc0, 0x0, 0xc0, 0x0, 0x1, 0x20, 0x2a, 0x10, 0x1,
0x79, 0x0 })
}
Device(FWHD) {
Name(_HID, 0x0008d425)
Name(_CRS, Buffer(0xe) {0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0x0,
0xff, 0x0, 0x0, 0x0, 0x1, 0x79, 0x0 })
}
Device(HPET) {
Name(_HID, 0x0301d041)
Name(_CID, 0x010cd041)
Name(BUF0, Buffer(0xe) {0x86, 0x9, 0x0, 0x0, 0x0, 0x0, 0xd0,
0xfe, 0x0, 0x4, 0x0, 0x0, 0x79, 0x0 })
Method(_STA) {
If(LNot(LLess(OSYS, 0x07d1))) {
If(HPAE) {
Return(0xf)
}
}
Else {
If(HPAE) {
Return(0xb)
}
}
Return(Zero)
}
Method(_CRS, 0, Serialized) {
If(HPAE) {
CreateDWordField(BUF0, 0x4, HPT0)
If(LEqual(HPAS, One)) {
Store(0xfed01000, HPT0)
}
If(LEqual(HPAS, 0x2)) {
Store(0xfed02000, HPT0)
}
If(LEqual(HPAS, 0x3)) {
Store(0xfed03000, HPT0)
}
}
Return(BUF0)
}
}
Device(IPIC) {
Name(_HID, 0xd041)
Name(_CRS, Buffer(0x8d) {0x47, 0x1, 0x20, 0x0, 0x20, 0x0, 0x1,
0x2, 0x47, 0x1, 0x24, 0x0, 0x24, 0x0, 0x1, 0x2, 0x47, 0x1, 0x28, 0x0, 0x28,
0x0, 0x1, 0x2, 0x47, 0x1, 0x2c, 0x0, 0x2c, 0x0, 0x1, 0x2, 0x47, 0x1, 0x30, 0x0,
0x30, 0x0, 0x1, 0x2, 0x47, 0x1, 0x34, 0x0, 0x34, 0x0, 0x1, 0x2, 0x47, 0x1,
0x38, 0x0, 0x38, 0x0, 0x1, 0x2, 0x47, 0x1, 0x3c, 0x0, 0x3c, 0x0, 0x1, 0x2,
0x47, 0x1, 0xa0, 0x0, 0xa0, 0x0, 0x1, 0x2, 0x47, 0x1, 0xa4, 0x0, 0xa4, 0x0,
0x1, 0x2, 0x47, 0x1, 0xa8, 0x0, 0xa8, 0x0, 0x1, 0x2, 0x47, 0x1, 0xac, 0x0,
0xac, 0x0, 0x1, 0x2, 0x47, 0x1, 0xb0, 0x0, 0xb0, 0x0, 0x1, 0x2, 0x47, 0x1,
0xb4, 0x0, 0xb4, 0x0, 0x1, 0x2, 0x47, 0x1, 0xb8, 0x0, 0xb8, 0x0, 0x1, 0x2,
0x47, 0x1, 0xbc, 0x0, 0xbc, 0x0, 0x1, 0x2, 0x47, 0x1, 0xd0, 0x4, 0xd0, 0x4,
0x1, 0x2, 0x22, 0x4, 0x0, 0x79, 0x0 })
}
Device(MATH) {
Name(_HID, 0x040cd041)
Name(_CRS, Buffer(0xd) {0x47, 0x1, 0xf0, 0x0, 0xf0, 0x0, 0x1,
0x1, 0x22, 0x0, 0x20, 0x79, 0x0 })
}
Device(LDRC) {
Name(_HID, 0x020cd041)
Name(_UID, 0x2)
Name(BUF0, Buffer(0x92) {0x47, 0x1, 0x2e, 0x0, 0x2e, 0x0, 0x1,
0x2, 0x47, 0x1, 0x4e, 0x0, 0x4e, 0x0, 0x1, 0x2, 0x47, 0x1, 0x61, 0x0, 0x61,
0x0, 0x1, 0x1, 0x47, 0x1, 0x63, 0x0, 0x63, 0x0, 0x1, 0x1, 0x47, 0x1, 0x65, 0x0,
0x65, 0x0, 0x1, 0x1, 0x47, 0x1, 0x67, 0x0, 0x67, 0x0, 0x1, 0x1, 0x47, 0x1,
0x68, 0x0, 0x68, 0x0, 0x1, 0x1, 0x47, 0x1, 0x6c, 0x0, 0x6c, 0x0, 0x1, 0x1,
0x47, 0x1, 0x70, 0x0, 0x70, 0x0, 0x1, 0x1, 0x47, 0x1, 0x80, 0x0, 0x80, 0x0,
0x1, 0x1, 0x47, 0x1, 0x92, 0x0, 0x92, 0x0, 0x1, 0x1, 0x47, 0x1, 0xb2, 0x0,
0xb2, 0x0, 0x1, 0x2, 0x47, 0x1, 0x0, 0x8, 0x0, 0x8, 0x1, 0x10, 0x47, 0x1, 0x0,
0x10, 0x0, 0x10, 0x1, 0x80, 0x47, 0x1, 0x80, 0x11, 0x80, 0x11, 0x1, 0x40, 0x47,
0x1, 0x40, 0x16, 0x40, 0x16, 0x1, 0x10, 0x47, 0x1, 0x0, 0xfe, 0x0, 0xfe, 0x1,
0xff, 0x47, 0x1, 0x2c, 0xff, 0x2c, 0xff, 0x1, 0x4, 0x79, 0x0 })
Name(BUF1, Buffer(0x82) {0x47, 0x1, 0x2e, 0x0, 0x2e, 0x0, 0x1,
0x2, 0x47, 0x1, 0x4e, 0x0, 0x4e, 0x0, 0x1, 0x2, 0x47, 0x1, 0x61, 0x0, 0x61,
0x0, 0x1, 0x1, 0x47, 0x1, 0x63, 0x0, 0x63, 0x0, 0x1, 0x1, 0x47, 0x1, 0x65, 0x0,
0x65, 0x0, 0x1, 0x1, 0x47, 0x1, 0x67, 0x0, 0x67, 0x0, 0x1, 0x1, 0x47, 0x1,
0x70, 0x0, 0x70, 0x0, 0x1, 0x1, 0x47, 0x1, 0x80, 0x0, 0x80, 0x0, 0x1, 0x1,
0x47, 0x1, 0x92, 0x0, 0x92, 0x0, 0x1, 0x1, 0x47, 0x1, 0xb2, 0x0, 0xb2, 0x0,
0x1, 0x2, 0x47, 0x1, 0x0, 0x8, 0x0, 0x8, 0x1, 0x10, 0x47, 0x1, 0x0, 0x10, 0x0,
0x10, 0x1, 0x80, 0x47, 0x1, 0x80, 0x11, 0x80, 0x11, 0x1, 0x40, 0x47, 0x1, 0x40,
0x16, 0x40, 0x16, 0x1, 0x10, 0x47, 0x1, 0x0, 0xfe, 0x0, 0xfe, 0x1, 0xff, 0x47,
0x1, 0x2c, 0xff, 0x2c, 0xff, 0x1, 0x4, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
If(CIRP) {
Return(BUF0)
}
Return(BUF1)
}
}
Device(RTC_) {
Name(_HID, 0x000bd041)
Name(_CRS, Buffer(0xd) {0x47, 0x1, 0x70, 0x0, 0x70, 0x0, 0x1,
0x8, 0x22, 0x0, 0x1, 0x79, 0x0 })
}
Device(TIMR) {
Name(_HID, 0x0001d041)
Name(_CRS, Buffer(0x15) {0x47, 0x1, 0x40, 0x0, 0x40, 0x0, 0x1,
0x4, 0x47, 0x1, 0x50, 0x0, 0x50, 0x0, 0x10, 0x4, 0x22, 0x1, 0x0, 0x79, 0x0 })
}
Device(PS2K) {
Name(_HID, 0x0303d041)
Method(_STA) {
If(LEqual(KBTP, 0x4a)) {
Return(Zero)
}
Else {
Return(0xf)
}
}
Name(_CRS, Buffer(0x16) {0x47, 0x1, 0x60, 0x0, 0x60, 0x0, 0x1,
0x1, 0x47, 0x1, 0x64, 0x0, 0x64, 0x0, 0x1, 0x1, 0x23, 0x2, 0x0, 0x1, 0x79, 0x0
})
}
Device(KBCJ) {
Name(_HID, 0x2003d041)
Method(_STA) {
If(LEqual(KBTP, 0x4a)) {
Return(0xf)
}
Else {
Return(Zero)
}
}
Name(_CRS, Buffer(0x16) {0x47, 0x1, 0x60, 0x0, 0x60, 0x0, 0x1,
0x1, 0x47, 0x1, 0x64, 0x0, 0x64, 0x0, 0x1, 0x1, 0x23, 0x2, 0x0, 0x1, 0x79, 0x0
})
}
Device(MSE0) {
Name(_HID, 0x130fd041)
Method(_STA) {
And(TSTE, 0x7, TSTE)
If(LEqual(TSTE, One)) {
Return(Zero)
}
Else {
If(LEqual(TSTE, 0x2)) {
Return(0xf)
}
Else {
If(LEqual(TSTE, 0x4)) {
Return(0xf)
}
Else {
Return(0xf)
}
}
}
}
Name(_CRS, Buffer(0x6) {0x23, 0x0, 0x10, 0x1, 0x79, 0x0 })
}
Device(MSS0) {
Name(_HID, 0x071b2e4f)
Name(_CID, Package(0x3) {
0x001b2e4f,
0x02002e4f,
0x130fd041,
})
Method(_STA) {
And(TSTE, 0x7, TSTE)
If(LEqual(TSTE, One)) {
Return(0xf)
}
Else {
If(LEqual(TSTE, 0x2)) {
Return(Zero)
}
Else {
If(LEqual(TSTE, 0x4)) {
Return(Zero)
}
Else {
Return(Zero)
}
}
}
}
Name(_CRS, Buffer(0x6) {0x23, 0x0, 0x10, 0x1, 0x79, 0x0 })
}
Device(ACAD) {
Name(_HID, "ACPI0003")
Name(_PCL, Package(0x1) {
_SB_,
})
Method(_PSR) {
If(ECOK()) {
Return(^^EC0_.ADPT)
}
Return(One)
}
}
}
Device(PATA) {
Name(_ADR, 0x001f0001)
OperationRegion(PACS, PCI_Config, 0x40, 0xc0)
Field(PACS, DWordAcc, NoLock, Preserve) {
PRIT, 16,
Offset(0x4),
PSIT, 4,
Offset(0x8),
SYNC, 4,
Offset(0xa),
SDT0, 2,
, 2,
SDT1, 2,
Offset(0x14),
ICR0, 4,
ICR1, 4,
ICR2, 4,
ICR3, 4,
ICR4, 4,
ICR5, 4
}
Device(PRID) {
Name(_ADR, Zero)
Method(_GTM) {
Name(PBUF, Buffer(0x14) {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
CreateDWordField(PBUF, Zero, PIO0)
CreateDWordField(PBUF, 0x4, DMA0)
CreateDWordField(PBUF, 0x8, PIO1)
CreateDWordField(PBUF, 0xc, DMA1)
CreateDWordField(PBUF, 0x10, FLAG)
Store(GETP(PRIT), PIO0)
Store(GDMA(And(SYNC, One, ), And(ICR3, One, ), And(ICR0,
One, ), SDT0, And(ICR1, One, )), DMA0)
If(LEqual(DMA0, Ones)) {
Store(PIO0, DMA0)
}
If(And(PRIT, 0x4000, )) {
If(LEqual(And(PRIT, 0x90, ), 0x80)) {
Store(0x0384, PIO1)
}
Else {
Store(GETT(PSIT), PIO1)
}
}
Else {
Store(Ones, PIO1)
}
Store(GDMA(And(SYNC, 0x2, ), And(ICR3, 0x2, ), And(ICR0,
0x2, ), SDT1, And(ICR1, 0x2, )), DMA1)
If(LEqual(DMA1, Ones)) {
Store(PIO1, DMA1)
}
Store(GETF(And(SYNC, One, ), And(SYNC, 0x2, ), PRIT), FLAG)
If(And(LEqual(PIO0, Ones), LEqual(DMA0, Ones), )) {
Store(0x78, PIO0)
Store(0x14, DMA0)
Store(0x3, FLAG)
}
Return(PBUF)
}
Method(_STM, 3) {
CreateDWordField(Arg0, Zero, PIO0)
CreateDWordField(Arg0, 0x4, DMA0)
CreateDWordField(Arg0, 0x8, PIO1)
CreateDWordField(Arg0, 0xc, DMA1)
CreateDWordField(Arg0, 0x10, FLAG)
If(LEqual(SizeOf(Arg1), 0x0200)) {
And(PRIT, 0x40f0, PRIT)
And(SYNC, 0x2, SYNC)
Store(Zero, SDT0)
And(ICR0, 0x2, ICR0)
And(ICR1, 0x2, ICR1)
And(ICR3, 0x2, ICR3)
And(ICR5, 0x2, ICR5)
CreateWordField(Arg1, 0x62, W490)
CreateWordField(Arg1, 0x6a, W530)
CreateWordField(Arg1, 0x7e, W630)
CreateWordField(Arg1, 0x80, W640)
CreateWordField(Arg1, 0xb0, W880)
CreateWordField(Arg1, 0xba, W930)
Or(PRIT, 0x8004, PRIT)
If(LAnd(And(FLAG, 0x2, ), And(W490, 0x0800, ))) {
Or(PRIT, 0x2, PRIT)
}
Or(PRIT, SETP(PIO0, W530, W640), PRIT)
If(And(FLAG, One, )) {
Or(SYNC, One, SYNC)
Store(SDMA(DMA0), SDT0)
If(LLess(DMA0, 0x1e)) {
Or(ICR3, One, ICR3)
}
If(LLess(DMA0, 0x3c)) {
Or(ICR0, One, ICR0)
}
If(And(W930, 0x2000, )) {
Or(ICR1, One, ICR1)
}
}
}
If(LEqual(SizeOf(Arg2), 0x0200)) {
And(PRIT, 0x3f0f, PRIT)
Store(Zero, PSIT)
And(SYNC, One, SYNC)
Store(Zero, SDT1)
And(ICR0, One, ICR0)
And(ICR1, One, ICR1)
And(ICR3, One, ICR3)
And(ICR5, One, ICR5)
CreateWordField(Arg2, 0x62, W491)
CreateWordField(Arg2, 0x6a, W531)
CreateWordField(Arg2, 0x7e, W631)
CreateWordField(Arg2, 0x80, W641)
CreateWordField(Arg2, 0xb0, W881)
CreateWordField(Arg2, 0xba, W931)
Or(PRIT, 0x8040, PRIT)
If(LAnd(And(FLAG, 0x8, ), And(W491, 0x0800, ))) {
Or(PRIT, 0x20, PRIT)
}
If(And(FLAG, 0x10, )) {
Or(PRIT, 0x4000, PRIT)
If(LGreater(PIO1, 0xf0)) {
Or(PRIT, 0x80, PRIT)
}
Else {
Or(PRIT, 0x10, PRIT)
Store(SETT(PIO1, W531, W641), PSIT)
}
}
If(And(FLAG, 0x4, )) {
Or(SYNC, 0x2, SYNC)
Store(SDMA(DMA1), SDT1)
If(LLess(DMA1, 0x1e)) {
Or(ICR3, 0x2, ICR3)
}
If(LLess(DMA1, 0x3c)) {
Or(ICR0, 0x2, ICR0)
}
If(And(W931, 0x2000, )) {
Or(ICR1, 0x2, ICR1)
}
}
}
}
Device(P_D0) {
Name(_ADR, Zero)
Method(_GTF) {
Name(PIB0, Buffer(0xe) {0x3, 0x0, 0x0, 0x0, 0x0, 0xa0,
0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xa0, 0xef })
CreateByteField(PIB0, One, PMD0)
CreateByteField(PIB0, 0x8, DMD0)
If(And(PRIT, 0x2, )) {
If(LEqual(And(PRIT, 0x9, ), 0x8)) {
Store(0x8, PMD0)
}
Else {
Store(0xa, PMD0)
ShiftRight(And(PRIT, 0x0300, ), 0x8, Local0)
ShiftRight(And(PRIT, 0x3000, ), 0xc, Local1)
Add(Local0, Local1, Local2)
If(LEqual(0x3, Local2)) {
Store(0xb, PMD0)
}
If(LEqual(0x5, Local2)) {
Store(0xc, PMD0)
}
}
}
Else {
Store(One, PMD0)
}
If(And(SYNC, One, )) {
Store(Or(SDT0, 0x40, ), DMD0)
If(And(ICR1, One, )) {
If(And(ICR0, One, )) {
Add(DMD0, 0x2, DMD0)
}
If(And(ICR3, One, )) {
Store(0x45, DMD0)
}
}
}
Else {
Or(Subtract(And(PMD0, 0x7, ), 0x2, ), 0x20, DMD0)
}
Return(PIB0)
}
}
Device(P_D1) {
Name(_ADR, One)
Method(_GTF) {
Name(PIB1, Buffer(0xe) {0x3, 0x0, 0x0, 0x0, 0x0, 0xb0,
0xef, 0x3, 0x0, 0x0, 0x0, 0x0, 0xb0, 0xef })
CreateByteField(PIB1, One, PMD1)
CreateByteField(PIB1, 0x8, DMD1)
If(And(PRIT, 0x20, )) {
If(LEqual(And(PRIT, 0x90, ), 0x80)) {
Store(0x8, PMD1)
}
Else {
Add(And(PSIT, 0x3, ), ShiftRight(And(PSIT, 0xc,
), 0x2, ), Local0)
If(LEqual(0x5, Local0)) {
Store(0xc, PMD1)
}
Else {
If(LEqual(0x3, Local0)) {
Store(0xb, PMD1)
}
Else {
Store(0xa, PMD1)
}
}
}
}
Else {
Store(One, PMD1)
}
If(And(SYNC, 0x2, )) {
Store(Or(SDT1, 0x40, ), DMD1)
If(And(ICR1, 0x2, )) {
If(And(ICR0, 0x2, )) {
Add(DMD1, 0x2, DMD1)
}
If(And(ICR3, 0x2, )) {
Store(0x45, DMD1)
}
}
}
Else {
Or(Subtract(And(PMD1, 0x7, ), 0x2, ), 0x20, DMD1)
}
Return(PIB1)
}
}
}
}
Device(SATA) {
Name(_ADR, 0x001f0002)
OperationRegion(SACS, PCI_Config, 0x40, 0xc0)
Field(SACS, DWordAcc, NoLock, Preserve) {
PRIT, 16,
SECT, 16,
PSIT, 4,
SSIT, 4,
Offset(0x8),
SYNC, 4,
Offset(0xa),
SDT0, 2,
, 2,
SDT1, 2,
Offset(0xb),
SDT2, 2,
, 2,
SDT3, 2,
Offset(0x14),
ICR0, 4,
ICR1, 4,
ICR2, 4,
ICR3, 4,
ICR4, 4,
ICR5, 4,
Offset(0x50),
MAPV, 2,
Offset(0x53),
PCSR, 8
}
}
Device(SBUS) {
Name(_ADR, 0x001f0003)
OperationRegion(SMBP, PCI_Config, 0x40, 0xc0)
Field(SMBP, DWordAcc, NoLock, Preserve) {
, 2,
I2CE, 1
}
OperationRegion(SMBI, SystemIO, 0x5420, 0x10)
Field(SMBI, ByteAcc, NoLock, Preserve) {
HSTS, 8,
Offset(0x2),
HCON, 8,
HCOM, 8,
TXSA, 8,
DAT0, 8,
DAT1, 8,
HBDR, 8,
PECR, 8,
RXSA, 8,
SDAT, 16
}
Method(SSXB, 2, Serialized) {
If(STRT()) {
Return(Zero)
}
Store(Zero, I2CE)
Store(0xbf, HSTS)
Store(Arg0, TXSA)
Store(Arg1, HCOM)
Store(0x48, HCON)
If(COMP()) {
Or(HSTS, 0xff, HSTS)
Return(One)
}
Return(Zero)
}
Method(SRXB, 1, Serialized) {
If(STRT()) {
Return(0xffff)
}
Store(Zero, I2CE)
Store(0xbf, HSTS)
Store(Or(Arg0, One, ), TXSA)
Store(0x44, HCON)
If(COMP()) {
Or(HSTS, 0xff, HSTS)
Return(DAT0)
}
Return(0xffff)
}
Method(SWRB, 3, Serialized) {
If(STRT()) {
Return(Zero)
}
Store(Zero, I2CE)
Store(0xbf, HSTS)
Store(Arg0, TXSA)
Store(Arg1, HCOM)
Store(Arg2, DAT0)
Store(0x48, HCON)
If(COMP()) {
Or(HSTS, 0xff, HSTS)
Return(One)
}
Return(Zero)
}
Method(SRDB, 2, Serialized) {
If(STRT()) {
Return(0xffff)
}
Store(Zero, I2CE)
Store(0xbf, HSTS)
Store(Or(Arg0, One, ), TXSA)
Store(Arg1, HCOM)
Store(0x48, HCON)
If(COMP()) {
Or(HSTS, 0xff, HSTS)
Return(DAT0)
}
Return(0xffff)
}
Method(SBLW, 4, Serialized) {
If(STRT()) {
Return(Zero)
}
Store(Arg3, I2CE)
Store(0xbf, HSTS)
Store(Arg0, TXSA)
Store(Arg1, HCOM)
Store(SizeOf(Arg2), DAT0)
Store(Zero, Local1)
Store(DerefOf(Index(Arg2, Zero, )), HBDR)
Store(0x54, HCON)
While(LGreater(SizeOf(Arg2), Local1)) {
Store(0x0fa0, Local0)
While(LAnd(LNot(And(HSTS, 0x80, )), Local0)) {
Decrement(Local0)
Stall(0x32)
}
If(LNot(Local0)) {
KILL()
Return(Zero)
}
Store(0x80, HSTS)
Increment(Local1)
If(LGreater(SizeOf(Arg2), Local1)) {
Store(DerefOf(Index(Arg2, Local1, )), HBDR)
}
}
If(COMP()) {
Or(HSTS, 0xff, HSTS)
Return(One)
}
Return(Zero)
}
Method(SBLR, 3, Serialized) {
Name(TBUF, Buffer(0x0100) { })
If(STRT()) {
Return(Zero)
}
Store(Arg2, I2CE)
Store(0xbf, HSTS)
Store(Or(Arg0, One, ), TXSA)
Store(Arg1, HCOM)
Store(0x54, HCON)
Store(0x0fa0, Local0)
While(LAnd(LNot(And(HSTS, 0x80, )), Local0)) {
Decrement(Local0)
Stall(0x32)
}
If(LNot(Local0)) {
KILL()
Return(Zero)
}
Store(DAT0, Index(TBUF, Zero, ))
Store(0x80, HSTS)
Store(One, Local1)
While(LLess(Local1, DerefOf(Index(TBUF, Zero, )))) {
Store(0x0fa0, Local0)
While(LAnd(LNot(And(HSTS, 0x80, )), Local0)) {
Decrement(Local0)
Stall(0x32)
}
If(LNot(Local0)) {
KILL()
Return(Zero)
}
Store(HBDR, Index(TBUF, Local1, ))
Store(0x80, HSTS)
Increment(Local1)
}
If(COMP()) {
Or(HSTS, 0xff, HSTS)
Return(TBUF)
}
Return(Zero)
}
Method(STRT, 0, Serialized) {
Store(0xc8, Local0)
While(Local0) {
If(And(HSTS, 0x40, )) {
Decrement(Local0)
Sleep(One)
If(LEqual(Local0, Zero)) {
Return(One)
}
}
Else {
Store(Zero, Local0)
}
}
Store(0x0fa0, Local0)
While(Local0) {
If(And(HSTS, One, )) {
Decrement(Local0)
Stall(0x32)
If(LEqual(Local0, Zero)) {
KILL()
}
}
Else {
Return(Zero)
}
}
Return(One)
}
Method(COMP, 0, Serialized) {
Store(0x0fa0, Local0)
While(Local0) {
If(And(HSTS, 0x2, )) {
Return(One)
}
Else {
Decrement(Local0)
Stall(0x32)
If(LEqual(Local0, Zero)) {
KILL()
}
}
}
Return(Zero)
}
Method(KILL, 0, Serialized) {
Or(HCON, 0x2, HCON)
Or(HSTS, 0xff, HSTS)
}
}
Device(AZAL) {
Name(_ADR, 0x001b0000)
Name(_PRW, Package(0x2) {
0x5,
0x3,
})
}
}
}
}
/*
APIC: Length=104, Revision=1, Checksum=155,
OEMID=Acer, OEM Table ID=Acadia, OEM Revision=0x6040000,
Creator ID=LOHR, Creator Revision=0x5a
*/
/*
HPET: Length=56, Revision=1, Checksum=216,
OEMID=Acer, OEM Table ID=Acadia, OEM Revision=0x6040000,
Creator ID=LOHR, Creator Revision=0x5a
*/
/*
MCFG: Length=60, Revision=1, Checksum=0,
OEMID=Acer, OEM Table ID=Acadia, OEM Revision=0x6040000,
Creator ID=LOHR, Creator Revision=0x5a
*/
/*
SLIC: Length=374, Revision=1, Checksum=158,
OEMID=ACRSYS, OEM Table ID=ACRPRDCT, OEM Revision=0x6040000,
Creator ID=LOHR, Creator Revision=0x0
*/
/*
DBGP: Length=52, Revision=1, Checksum=255,
OEMID=Acer, OEM Table ID=Acadia, OEM Revision=0x6040000,
Creator ID=LOHR, Creator Revision=0x0
*/
/*
APIC: Length=90, Revision=1, Checksum=62,
OEMID=PTLTD, OEM Table ID= APIC, OEM Revision=0x6040000,
Creator ID= LTP, Creator Revision=0x0
*/
/*
BOOT: Length=40, Revision=1, Checksum=165,
OEMID=PTLTD, OEM Table ID=$SBFTBL$, OEM Revision=0x6040000,
Creator ID= LTP, Creator Revision=0x1
*/
/*
SSDT: Length=522, Revision=1, Checksum=2,
OEMID=SataRe, OEM Table ID=SataAhci, OEM Revision=0x1000,
Creator ID=INTL, Creator Revision=0x20050228
*/
/*
SSDT: Length=1218, Revision=1, Checksum=200,
OEMID=PmRef, OEM Table ID=Cpu0Cst, OEM Revision=0x3001,
Creator ID=INTL, Creator Revision=0x20050228
*/
/*
SSDT: Length=607, Revision=1, Checksum=200,
OEMID=PmRef, OEM Table ID=Cpu0Tst, OEM Revision=0x3000,
Creator ID=INTL, Creator Revision=0x20050228
*/
/*
SSDT: Length=1228, Revision=1, Checksum=185,
OEMID=PmRef, OEM Table ID=CpuPm, OEM Revision=0x3000,
Creator ID=INTL, Creator Revision=0x20050228
*/
>How-To-Repeat:
>Fix:
Home |
Main Index |
Thread Index |
Old Index