I get pass this crash if I disable acpi...
dmesg and partial (due to segmentation fault) acpidump follows.
acpidump -o output at http://anka.org/acpidump/
OpenBSD 4.4-current (GENERIC.MP) #2000: Tue Dec 2 22:35:51 MST 2008
[EMAIL PROTECTED]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
real mem = 2060275712 (1964MB)
avail mem = 2000232448 (1907MB)
RTC BIOS diagnostic error
fe<clock_battery,ROM_cksum,config_unit,memory_size,fixed_disk,invalid_time>
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.4 @ 0x7bbc4000 (21 entries)
bios0: vendor Hewlett-Packard version "68PCU Ver. F.0C" date 10/17/2008
bios0: Hewlett-Packard HP EliteBook 6930p
acpi0 at bios0: rev 0
acpi0: tables DSDT FACP HPET APIC MCFG ASF! SSDT SLIC DMAR SSDT SSDT SSDT
acpi0: wakeup devices LANC(S5) HDEF(S4) RP02(S5) WNIC(S5) RP03(S5)
ECF0(S5) RP05(S5) ECF0(S5) RP06(S5) NIC_(S5) USB1(S3) USB2(S3)
USB3(S3) USB4(S3) USB5(S3) USB6(S3) U6RM(S3) EHC1(S3) EHC2(S3)
PCIB(S5) HST1(S5)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpihpet0 at acpi0: 14318179 Hz
acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz, 2394.54 MHz
cpu0:
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,VMX,SMX,EST,TM2,CX16,xTPR,NXE,LONG
cpu0: 3MB 64b/line 8-way L2 cache
cpu0: apic clock running at 266MHz
cpu1 at mainbus0: apid 1 (application processor)
cpu1: Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz, 2394.00 MHz
cpu1:
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,VMX,SMX,EST,TM2,CX16,xTPR,NXE,LONG
cpu1: 3MB 64b/line 8-way L2 cache
ioapic0 at mainbus0 apid 1 pa 0xfec00000, version 20, 24 pins
ioapic0: misconfigured as apic 0, remapped to apid 1
acpiprt0 at acpi0: bus -1 (PEGP)
acpiprt1 at acpi0: bus 1 (RP01)
acpiprt2 at acpi0: bus 2 (RP02)
acpiprt3 at acpi0: bus 3 (RP03)
acpiprt4 at acpi0: bus 68 (RP05)
acpiprt5 at acpi0: bus 133 (PCIB)
acpiprt6 at acpi0: bus 0 (PCI0)
acpiec0 at acpi0
acpicpu0 at acpi0: C2, C1, PSS
acpicpu1 at acpi0: C2, C1, PSS
acpitz0 at acpi0: critical temperature 105 degC
acpitz1 at acpi0: critical temperature 112 degC
acpitz2 at acpi0: critical temperature 112 degC
acpitz3 at acpi0: critical temperature 90 degC
acpitz4 at acpi0: critical temperature 95 degC
acpibat0 at acpi0: BAT0 model "Primary" serial 02583 2008/09/18 type
LIon oem "Hewlett-Packard"
acpibat1 at acpi0: BAT1 not present
acpiac0 at acpi0: AC unit online
acpibtn0 at acpi0: SLPB
acpibtn1 at acpi0: LID_
acpivideo at acpi0 not configured
cpu0: Enhanced SpeedStep 2394 MHz: speeds: 2401, 2400, 1600, 800 MHz
pci0 at mainbus0 bus 0: configuration mode 1
pchb0 at pci0 dev 0 function 0 "Intel GM45 Host" rev 0x07
vga1 at pci0 dev 2 function 0 "Intel GM45 Video" rev 0x07
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
intagp at vga1 not configured
inteldrm0 at vga1
drm0 at inteldrm0: couldn't find agp
"Intel GM45 Video" rev 0x07 at pci0 dev 2 function 1 not configured
"Intel ICH9 IGP M AMT" rev 0x03 at pci0 dev 25 function 0 not configured
uhci0 at pci0 dev 26 function 0 "Intel 82801I USB" rev 0x03: apic 1
int 16 (irq 10)
uhci1 at pci0 dev 26 function 1 "Intel 82801I USB" rev 0x03: apic 1
int 17 (irq 10)
uhci2 at pci0 dev 26 function 2 "Intel 82801I USB" rev 0x03: apic 1
int 18 (irq 10)
ehci0 at pci0 dev 26 function 7 "Intel 82801I USB" rev 0x03: apic 1
int 19 (irq 10)
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
azalia0 at pci0 dev 27 function 0 "Intel 82801I HD Audio" rev 0x03:
apic 1 int 17 (irq 10)
azalia0: RIRB time out
azalia0: codecs: Analog Devices/0x194a, AT&T/Lucent/0x1040, using
Analog Devices/0x194a
audio0 at azalia0
ppb0 at pci0 dev 28 function 0 "Intel 82801I PCIE" rev 0x03: apic 1
int 16 (irq 10)
pci1 at ppb0 bus 1
ppb1 at pci0 dev 28 function 1 "Intel 82801I PCIE" rev 0x03: apic 1
int 17 (irq 10)
pci2 at ppb1 bus 2
iwn0 at pci2 dev 0 function 0 "Intel WiFi Link 5300AGN" rev 0x00: apic
1 int 17 (irq 10), MIMO 3T3R, MoW, address 00:16:ea:70:8ZZZZ
ppb2 at pci0 dev 28 function 2 "Intel 82801I PCIE" rev 0x03: apic 1
int 18 (irq 10)
pci3 at ppb2 bus 3
ppb3 at pci0 dev 28 function 4 "Intel 82801I PCIE" rev 0x03: apic 1
int 16 (irq 10)
pci4 at ppb3 bus 68
uhci3 at pci0 dev 29 function 0 "Intel 82801I USB" rev 0x03: apic 1
int 20 (irq 10)
uhci4 at pci0 dev 29 function 1 "Intel 82801I USB" rev 0x03: apic 1
int 22 (irq 11)
uhci5 at pci0 dev 29 function 2 "Intel 82801I USB" rev 0x03: apic 1
int 18 (irq 10)
ehci1 at pci0 dev 29 function 7 "Intel 82801I USB" rev 0x03: apic 1
int 20 (irq 10)
usb1 at ehci1: USB revision 2.0
uhub1 at usb1 "Intel EHCI root hub" rev 2.00/1.00 addr 1
ppb4 at pci0 dev 30 function 0 "Intel 82801BAM Hub-to-PCI" rev 0x93
pci5 at ppb4 bus 133
"Ricoh 5C832 Firewire" rev 0x06 at pci5 dev 9 function 0 not configured
sdhc0 at pci5 dev 9 function 1 "Ricoh 5C822 SD/MMC" rev 0x25: apic 1
int 22 (irq 11)
sdmmc0 at sdhc0
"Ricoh 5C843 MMC" rev 0x14 at pci5 dev 9 function 2 not configured
cbb0 at pci5 dev 9 function 3 "Ricoh 5C476 CardBus" rev 0xbb: apic 1
int 22 (irq 11)
cardslot0 at cbb0 slot 0 flags 0
cardbus0 at cardslot0: bus 134 device 0 cacheline 0x0, lattimer 0x20
pcmcia0 at cardslot0
pcib0 at pci0 dev 31 function 0 "Intel 82801IEM LPC" rev 0x03
ahci0 at pci0 dev 31 function 2 "Intel 82801I AHCI" rev 0x03: apic 1
int 21 (irq 10), AHCI 1.2
scsibus0 at ahci0: 32 targets, initiator 32
sd0 at scsibus0 targ 0 lun 0: <ATA, ST9160823AS, 3.AH> SCSI3 0/direct fixed
sd0: 152627MB, 512 bytes/sec, 312581808 sec total
cd0 at scsibus0 targ 1 lun 0: <Optiarc, DVD RW AD-7561S, AH03> ATAPI
5/cdrom removable
usb2 at uhci0: USB revision 1.0
uhub2 at usb2 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb3 at uhci1: USB revision 1.0
uhub3 at usb3 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb4 at uhci2: USB revision 1.0
uhub4 at usb4 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb5 at uhci3: USB revision 1.0
uhub5 at usb5 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb6 at uhci4: USB revision 1.0
uhub6 at usb6 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb7 at uhci5: USB revision 1.0
uhub7 at usb7 "Intel UHCI root hub" rev 1.00/1.00 addr 1
isa0 at pcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
spkr0 at pcppi0
lpt0 at isa0 port 0x378/4 irq 7
mtrr: Pentium Pro MTRR support
com2 at pcmcia0 function 0: can't allocate i/o space
copyvalue: 105700Store to default type! f7a00
83ed Called: \\_SB_.PCI0.LPCB.EC0_.RPPC
local0: 0xffff8000000ffb08 cnt:01 stk:60 integer: 2
local1: 0xffff800000101c08 cnt:01 stk:61 integer: 0
local2: 0xffff800000102b08 cnt:02 stk:62 objref: 0xffff800000128f88
index:0 opcode:RefOf
kernel: protection fault trap, code=0
Stopped at aml_nodename+0x22: movq 0(%rdi),%rdi
ddb{0}> aml_nodename() at aml_nodename+0x22
aml_showvalue() at aml_showvalue+0x331
_aml_die() at _aml_die+0x18c
aml_xstore() at aml_xstore+0x1cc
aml_xparse() at aml_xparse+0x696
aml_xeval() at aml_xeval+0xf7
aml_xparse() at aml_xparse+0x5e6
aml_xeval() at aml_xeval+0xf7
aml_evalnode() at aml_evalnode+0x97
acpiec_gpehandler() at acpiec_gpehandler+0xa3
acpi_isr_thread() at acpi_isr_thread+0x183
end trace frame: 0x0, count: -11
ddb{0}> PID PPID PGRP UID S FLAGS WAIT
COMMAND
16 0 0 0 3 0x2100200 pftm pfpurge
15 0 0 0 3 0x2100200 config usb7
14 0 0 0 3 0x2100200 config usb6
13 0 0 0 3 0x2100200 config usb5
12 0 0 0 3 0x2100200 config usb4
11 0 0 0 3 0x2100200 config usb3
10 0 0 0 3 0x2100200 config usb2
9 0 0 0 3 0x2100200 mmctsk sdmmc0
8 0 0 0 3 0x2100200 usbdly usb1
7 0 0 0 3 0x2100200 usbtsk usbtask
6 0 0 0 3 0x2100200 usbdly usb0
* 5 0 0 0 7 0x2100200 acpi0
4 0 0 0 3 0x100200 idle1
3 0 0 0 3 0x2100200 bored syswq
2 0 0 0 3 0x100200 idle0
1 0 0 0 3 0x2000000 initexec swapper
0 -1 0 0 3 0x2080200 cfpend swapper
ddb{0}> ds 0x4f08 mp_pdirpa+0x2e21
es 0x6ec1 mp_pdirpa+0x4dda
fs 0x49e0 mp_pdirpa+0x28f9
gs 0
rdi 0xdeadbeefdeadbeef
rsi 0x3d0
rbp 0xffff800016554a10
rbx 0xdeadbeefdeadbeef
rdx 0xffffffff808a8be0 cpu_info_primary
rcx 0x282
rax 0xffffffff80ba5740 __bss_start+0x52d28
r8 0xffff800016554930
r9 0
r10 0x1
r11 0xffff80000011df98
r12 0x2
r13 0
r14 0xb38
r15 0xffffffff80784f64 btkbd_trtab+0x1ac4
rip 0xffffffff805765a2 aml_nodename+0x22
cs 0x8
rflags 0x10282 mp_pdirpa+0xe19b
rsp 0xffff800016554a00
ss 0x10
aml_nodename+0x22: movq 0(%rdi),%rdi
ddb{0}> syncing disks... done
WARNING: not updating battery clock
rebooting...
/*
RSD PTR: Checksum=63, OEMID=HPQOEM, RsdtAddress=0x7bcfe0ac
*/
/*
RSDT: Length=80, Revision=1, Checksum=75,
OEMID=HPQOEM, OEM Table ID=SLIC-MPC, OEM Revision=0xf,
Creator ID=, Creator Revision=0x1000013
*/
/*
Entries={ 0x7bcfc000, 0x7bcfb000, 0x7bcfa000, 0x7bcf9000, 0x7bcf8000,
0x7bcdc000, 0x7bcda000, 0x7bcd9000, 0x7bcd8000, 0x7bcd7000, 0x7bcd6000
}
*/
/*
DSDT=0x7bcdf000
INT_MODEL=PIC
SCI_INT=9
SMI_CMD=0xb2, ACPI_ENABLE=0xf0, ACPI_DISABLE=0xf1, S4BIOS_REQ=0xf2
PM1a_EVT_BLK=0x400-0x403
PM1a_CNT_BLK=0x404-0x405
PM2_CNT_BLK=0x450-0x450
PM2_TMR_BLK=0x408-0x40b
PM2_GPE0_BLK=0x420-0x42f
P_LVL2_LAT=101ms, P_LVL3_LAT=1001ms
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=97271, Revision=1, Checksum=116,
OEMID=HPQOEM, OEM Table ID=30DB, OEM Revision=0x1,
Creator ID=INTL, Creator Revision=0x20060912
*/
DefinitionBlock (
"acpi_dsdt.aml", //Output filename
"DSDT", //Signature
0x1, //DSDT Revision
"HPQOEM", //OEMID
"30DB", //TABLE ID
0x1 //OEM Revision
)
{
Name(LSTA, 0x0)
Name(IECP, 0x0)
Name(DECP, 0x0)
Name(IDPM, 0x0)
Method(\HPTS, 1) {
Store(Arg0, SLPT)
\_SB_.ODGW(Or(0x5500, Arg0))
If(LGreater(Arg0, 0x0)) {
Store(0x0, \_SB_.PCI0.LPCB.EC0_.HSST)
Store(\_SB_.PCI0.RP03.PDSX, IECP)
Store(\_SB_.PCI0.RP05.PDSX, DECP)
Store(\APMC, IDPM)
If(LNot(LEqual(Arg0, 0x5))) {
\_SB_.PCI0.LPCB.EC0_.BTDR(0x0)
Store(0x1, \_SB_.NFBS)
If(LEqual(Arg0, 0x3)) {
Store(\_SB_.LID_._LID(), LSTA)
}
}
}
}
Method(\HWAK, 1) {
Store(0x0, SLPT)
\_SB_.ODGW(Or(0x5600, Arg0))
If(LEqual(Arg0, 0x3)) {
\_SB_.SSMI(0xea80, 0x0, 0x0, 0x0, 0x0)
}
\_SB_.PCI0.LPCB.EC0_.ITLB()
\_SB_.PCI0.LPCB.EC0_.RPPC()
If(\_SB_.PCI0.LPCB.EC0_.ECRG) {
Acquire(\_SB_.PCI0.LPCB.EC0_.ECMX, 0xffff)
Store(0x1, \_SB_.PCI0.LPCB.EC0_.ACPI)
Store(0x0, \_SB_.PCI0.LPCB.EC0_.SLPT)
Release(\_SB_.PCI0.LPCB.EC0_.ECMX)
}
If(LGreater(Arg0, 0x2)) {
\_TZ_.RETD()
\_TZ_.INTM(0x1)
Store(0x1, \_SB_.NFBS)
If(LEqual(Arg0, 0x3)) {
If(XOr(\_SB_.LID_._LID(), LSTA)) {
XOr(GIV_, 0x2000, Local0)
Store(Local0, GIV_)
}
Store(IDPM, \APMC)
}
If(LEqual(Arg0, 0x4)) {
\_SB_.WMID.WGWE(0x5, 0x0)
}
}
If(LOr(LEqual(Arg0, 0x4), LEqual(\WCOS(), 0x1))) {
Notify(\_SB_.SLPB, 0x2)
}
Store(\_SB_.PCI0.LPCB.EC0_.GACS(), Local2)
\_SB_.PCI0.LPCB.EC0_.PWUP(0x3, 0xff)
Store(\_SB_.PCI0.LPCB.EC0_.GBAP(), Local1)
Store(\_SB_.PCI0.LPCB.EC0_.GACS(), Local3)
XOr(Local2, Local3, Local3)
If(Local3) {
Notify(\_SB_.AC__, 0x80)
PNOT()
}
Else {
If(LEqual(Arg0, 0x4)) {
XOr(Local2, 0x1, \_SB_.ACST)
}
}
WKET(Arg0)
\_SB_.VWAK(Arg0)
\_SB_.VWAK(0x1)
Store(\_SB_.HST1.GHID(), Local0)
\_SB_.PCI0.ACEL.ITAL()
}
Mutex(MUTX, 0)
Method(P8XH, 2, Serialized) {
If(LEqual(Arg0, 0x0)) {
\_SB_.ODBG(Arg1)
Store(Or(And(P80D, 0xffffff00), Arg1), P80D)
}
If(LEqual(Arg0, 0x1)) {
\_SB_.ODG1(Arg1)
Store(Or(And(P80D, 0xffff00ff), ShiftLeft(Arg1, 0x8)), P80D)
}
If(LEqual(Arg0, 0x2)) {
Store(Or(And(P80D, 0xff00ffff), ShiftLeft(Arg1, 0x10)), P80D)
}
If(LEqual(Arg0, 0x3)) {
Store(Or(And(P80D, 0x00ffffff), ShiftLeft(Arg1, 0x18)), P80D)
}
}
OperationRegion(SPRT, SystemIO, 0xb2, 0x2)
Field(SPRT, ByteAcc, Lock, Preserve) {
SSMP, 8
}
Method(\_PIC, 1) {
Store(Arg0, GPIC)
}
Method(_PTS, 1) {
HPTS(Arg0)
If(LEqual(Arg0, 0x3)) {
If(LAnd(DTSE, MPEN)) {
TRAP(0x2, 0x1e)
}
}
}
Method(_WAK, 1) {
HWAK(Arg0)
If(LEqual(Arg0, 0x3)) {
}
If(LOr(LEqual(Arg0, 0x3), LEqual(Arg0, 0x4))) {
If(LAnd(DTSE, MPEN)) {
TRAP(0x2, 0x14)
}
If(And(CFGD, 0x01000000)) {
If(LAnd(And(CFGD, 0xf0), LAnd(LEqual(OSYS, 0x07d1),
LNot(And(PDC0, 0x10))))) {
TRAP(0x1, 0x48)
}
}
If(LEqual(OSYS, 0x07d2)) {
If(And(CFGD, 0x1)) {
If(LGreater(\_PR_.CPU0._PPC, 0x0)) {
Subtract(\_PR_.CPU0._PPC, 0x1, \_PR_.CPU0._PPC)
PNOT()
Add(\_PR_.CPU0._PPC, 0x1, \_PR_.CPU0._PPC)
PNOT()
}
Else {
Add(\_PR_.CPU0._PPC, 0x1, \_PR_.CPU0._PPC)
PNOT()
Subtract(\_PR_.CPU0._PPC, 0x1, \_PR_.CPU0._PPC)
PNOT()
}
}
}
}
Return(Package(0x2) {
0x0,
0x0,
})
}
Method(GETB, 3, Serialized) {
Multiply(Arg0, 0x8, Local0)
Multiply(Arg1, 0x8, Local1)
CreateField(Arg2, Local0, Local1, TBF3)
Return(TBF3)
}
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, 2, Serialized) {
Store(Arg1, SMIF)
If(LEqual(Arg0, 0x1)) {
Store(0x0, TRP0)
}
If(LEqual(Arg0, 0x2)) {
Store(Arg1, DTSF)
Store(0x0, TRPD)
Return(DTSF)
}
If(LEqual(Arg0, 0x3)) {
Store(0x0, TRPH)
}
Return(SMIF)
}
Scope(\_SB_) {
Method(_INI) {
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(0x1, 0x48)
}
TRAP(0x3, 0x35)
}
\_TZ_.BOTT()
\_TZ_.RETD()
}
}
OperationRegion(GNVS, SystemMemory, 0x7bcc3d98, 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,
THOF, 8,
ACT1, 8,
ACTT, 8,
PSVT, 8,
TC1V, 8,
TC2V, 8,
TSPV, 8,
CRTT, 8,
DTSE, 8,
DTS1, 8,
DTS2, 8,
DTSF, 8,
Offset(0x28),
APIC, 8,
MPEN, 8,
PCP0, 8,
PCP1, 8,
PPCM, 8,
PPMF, 32,
Offset(0x32),
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,
BDSP, 8,
PTY1, 8,
PTY2, 8,
PSCL, 8,
TVF1, 8,
TVF2, 8,
GETM, 8,
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,
DSTS, 8,
Offset(0x78),
TPMP, 8,
TPME, 8,
Offset(0x82),
GTF0, 56,
GTF5, 56,
IDEM, 8,
GTF1, 56,
BID_, 8,
Offset(0xaa),
ASLB, 32,
IBTT, 8,
IPAT, 8,
ITVF, 8,
ITVM, 8,
IPSC, 8,
IBLC, 8,
IBIA, 8,
ISSC, 8,
I409, 8,
I509, 8,
I609, 8,
I709, 8,
IDMM, 8,
IDMS, 8,
IF1E, 8,
HVCO, 8,
NXD1, 32,
NXD2, 32,
NXD3, 32,
NXD4, 32,
NXD5, 32,
NXD6, 32,
NXD7, 32,
NXD8, 32,
GSMI, 8,
Offset(0xeb),
DSEN, 8,
ECON, 8,
GPIC, 8,
CTYP, 8,
L01C, 8,
VFN0, 8,
VFN1, 8
}
OperationRegion(ASMA, SystemMemory, 0x7bcc0018, 0x1060)
Field(ASMA, AnyAcc, NoLock, Preserve) {
ASMB, 33536
}
OperationRegion(AF10, SystemMemory, 0x7bcc2818, 0x0793)
Field(AF10, AnyAcc, Lock, Preserve) {
STAT, 32,
EVAL, 8,
ASTL, 8,
ASTG, 256,
OWNT, 640,
PROD, 640,
MODL, 640,
PTYP, 640,
PFRQ, 640,
MEMS, 640,
DATE, 640,
FAMI, 640,
SERL, 640,
VREV, 640,
KBCD, 640,
HDDS, 160,
HDDM, 320,
CDAT, 136,
CSTS, 8,
CYCL, 8,
PBSN, 144,
SBSN, 144,
BSTS, 8,
BORD, 64,
APST, 8,
OAPW, 3200,
NAPW, 3200,
SECO, 32,
SECS, 32,
SKUN, 128,
SVID, 48,
SSID, 32,
BTFC, 160,
WLFC, 160,
WWFC, 160,
PWDL, 16
}
OperationRegion(HPDF, SystemMemory, 0x7bcc3f18, 0x006e)
Field(HPDF, AnyAcc, Lock, Preserve) {
SLPT, 4,
WHOS, 4,
SDFG, 4,
LEGF, 1,
KCDB, 1,
KLDB, 1,
TPMX, 1,
FOAL, 1,
AEDA, 1,
ALSF, 1,
WOLD, 1,
HSED, 1,
HDEN, 1,
MDEN, 1,
ASFG, 9,
WDPE, 8,
WDSA, 8,
WDST, 8,
WDGN, 8,
WDSS, 8,
WLBN, 8,
PRDT, 8,
LPDP, 16,
EAX_, 32,
EBX_, 32,
ECX_, 32,
EDX_, 32,
REFS, 32,
SSCI, 8,
SBFC, 8,
THOS, 8,
TRCN, 8,
DCAP, 8,
BRLV, 88,
LOTR, 160,
HITR, 160,
WABN, 8,
WADN, 8,
WAFN, 8,
DTCD, 32,
BCLV, 104,
BDCP, 8
}
OperationRegion(HPD2, SystemMemory, 0x7bbcaf98, 0x0007)
Field(HPD2, AnyAcc, Lock, Preserve) {
CWDS, 8,
CWLS, 8,
CBTS, 8,
CWWS, 8,
CFPS, 8,
CMDS, 8,
BRID, 8
}
Scope(\_GPE) {
Method(_L00) {
\_TZ_.THEV()
}
Method(_L01) {
Add(L01C, 0x1, L01C)
\_SB_.PCI0.RP01.HPLG()
\_SB_.PCI0.RP02.HPLG()
\_SB_.PCI0.RP03.HPLG()
\_SB_.PCI0.RP04.HPLG()
\_SB_.PCI0.RP05.HPLG()
\_SB_.PCI0.RP06.HPLG()
}
Method(_L02) {
Store(0x0, GPEC)
Store(SSCI, Local0)
If(Local0) {
Store(0x0, SSCI)
If(LEqual(Local0, 0x1)) {
VFN4()
}
If(LAnd(LNot(LLess(Local0, 0x4)), LNot(LGreater(Local0, 0x5)))) {
\_SB_.WMID.WGWE(Local0, 0x0)
}
If(LEqual(Local0, 0x7)) {
Acquire(\_TZ_.THER, 0xffff)
Or(\_TZ_.THSC, 0x1, \_TZ_.THSC)
Release(\_TZ_.THER)
Notify(\_TZ_.DTSZ, 0x80)
}
If(LEqual(Local0, 0x3)) {
VBRE(0x87)
}
If(LEqual(Local0, 0x2)) {
VBRE(0x86)
}
}
}
Method(_L03) {
Notify(\_SB_.PCI0.USB1, 0x2)
}
Method(_L04) {
Notify(\_SB_.PCI0.USB2, 0x2)
}
Method(_L05) {
Notify(\_SB_.PCI0.USB5, 0x2)
}
Method(_L09) {
\_SB_.PCI0.RP01.PME_()
\_SB_.PCI0.RP02.PME_()
\_SB_.PCI0.RP03.PME_()
\_SB_.PCI0.RP04.PME_()
\_SB_.PCI0.RP05.PME_()
\_SB_.PCI0.RP06.PME_()
}
Method(_L0B) {
Notify(\_SB_.PCI0.PCIB, 0x2)
}
Method(_L0C) {
Notify(\_SB_.PCI0.USB3, 0x2)
}
Method(_L0D) {
If(\_SB_.PCI0.EHC1.PMES) {
Store(0x1, \_SB_.PCI0.EHC1.PMES)
Notify(\_SB_.PCI0.EHC1, 0x2)
}
If(\_SB_.PCI0.EHC2.PMES) {
Store(0x1, \_SB_.PCI0.EHC2.PMES)
Notify(\_SB_.PCI0.EHC2, 0x2)
}
If(\_SB_.PCI0.HDEF.PMES) {
Store(0x1, \_SB_.PCI0.HDEF.PMES)
Notify(\_SB_.PCI0.HDEF, 0x2)
}
Notify(\_SB_.PCI0.LANC, 0x2)
}
Method(_L0E) {
Notify(\_SB_.PCI0.USB4, 0x2)
}
Method(_L18) {
XOr(GIV_, 0x0100, Local0)
Store(Local0, GIV_)
VDET()
\_SB_.WMID.WGWE(0x1, 0x0)
Sleep(0x03e8)
Notify(\_SB_.PCI0.USB5, 0x0)
Notify(\_SB_.PCI0.USB6, 0x0)
Notify(\_SB_.PCI0.EHC2, 0x0)
Notify(\_SB_.PCI0.SATA, 0x0)
DKET()
}
Method(_L1D) {
XOr(GIV_, 0x2000, Local0)
Store(Local0, GIV_)
Multiply(0x2000, 0x2000, Local1)
ShiftLeft(Local1, 0x1, Local2)
Or(Local1, Local2, Local3)
And(\_SB_.PCI0.LPCB.GPRO, Not(Local3), Local0)
Store(Local0, \_SB_.PCI0.LPCB.GPRO)
If(\_SB_.PCI0.LPCB.EC0_.ECRG) {
XOr(\_SB_.LID_._LID(), 0x1, \_SB_.PCI0.LPCB.EC0_.LIDS)
}
Notify(\_SB_.LID_, 0x80)
If(VLET()) {
And(\_SB_.PCI0.LPCB.GPRO, Not(Local3), Local0)
Or(Local0, Local2, \_SB_.PCI0.LPCB.GPRO)
}
\_SB_.PCI0.ACEL.AJAL()
}
}
Scope(\_PR_) {
Processor(CPU0, 0, 0x410, 0x6) {
}
Processor(CPU1, 1, 0x410, 0x6) {
}
Processor(CPU2, 2, 0x410, 0x6) {
}
Processor(CPU3, 3, 0x410, 0x6) {
}
}
Scope(\_TZ_) {
Name(TRIP, Package(0x6) {
Package(0x2) {
Package(0x8) {
0x0aac,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0fa3,
},
Package(0x8) {
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x14ac,
},
},
Package(0x2) {
Package(0x2) {
0x0aac,
0x0e62,
},
Package(0x2) {
0x0ec6,
0x0fa3,
},
},
Package(0x2) {
Package(0x2) {
0x0aac,
0x0ca0,
},
Package(0x2) {
0x0d04,
0x0fa3,
},
},
Package(0x2) {
Package(0x3) {
0x0aac,
0x0e1c,
0x0e30,
},
Package(0x3) {
0x0e80,
0x0f0c,
0x0fa2,
},
},
Package(0x2) {
Package(0x3) {
0x0aac,
0x0dcc,
0x0e08,
},
Package(0x3) {
0x0e1c,
0x0e62,
0x0fa2,
},
},
Package(0x2) {
Package(0x3) {
0x0aac,
0x0db8,
0x0e08,
},
Package(0x3) {
0x0dea,
0x0e30,
0x0fa2,
},
},
})
Name(FAOS, 0x6)
Name(PU1T, Package(0x1) {
Package(0x8) {
0x0,
0xb,
0x1f,
0x29,
0x33,
0x3d,
0x51,
0x51,
},
})
Method(TRUP, 0, Serialized) {
Store(0x0, Local0)
}
Method(INTM, 1, Serialized) {
Store(0x0, Local0)
INTS(Local0, 0x0)
If(Arg0) {
Notify(\_TZ_.CPUZ, 0x80)
Notify(\_TZ_.SKNZ, 0x80)
Notify(\_TZ_.LOCZ, 0x80)
}
}
Name(SCPC, 0x0)
Name(WHTR, 0x38)
Name(OSTH, 0x0)
Name(LARE, Package(0x6) {
})
Name(LARP, Package(0x6) {
})
Name(CUZO, Package(0x6) {
})
Mutex(THER, 0)
Name(THSC, 0x3d)
Name(THOS, 0x0)
Name(MIFA, 0x0)
Name(VGGT, 0x1e)
Name(VGST, 0x0)
Method(GETP, 2, Serialized) {
Store(0x1, Local0)
Store(Arg0, Local1)
Store(DerefOf(Index(CUZO, Arg1)), Local3)
If(LEqual(Local3, 0xff)) {
Store(0x0, Local3)
}
If(LLess(Arg0, Local3)) {
Store(0x0, Local0)
Add(Arg0, 0x1, Local1)
}
Store(DerefOf(Index(DerefOf(Index(DerefOf(Index(TRIP,
CATZ(Arg1))), Local0)), Local1)), Local2)
Return(Local2)
}
Method(ADCT, 2, Serialized) {
If(And(Arg0, 0x80)) {
Subtract(Arg0, 0x0100, Local0)
}
Else {
Store(Arg0, Local0)
}
If(LEqual(Arg1, 0x1)) {
Add(Local0, THOS, Local2)
}
Else {
Subtract(Local0, THOS, Local2)
}
If(LGreater(Local2, 0x7f)) {
If(LEqual(And(Local2, 0x8000), 0x0)) {
Store(0x7f, Local2)
}
And(Local2, 0xff, Local2)
}
Return(Local2)
}
Method(GEDT, 0, Serialized) {
Store(TRCN, Local0)
Store(LOTR, Local2)
Store(HITR, Local3)
Store(0x0, Local1)
While(LLess(Local1, Local0)) {
If(Local1) {
Store(DerefOf(Index(Local2, Local1)), Local4)
Multiply(Local4, 0xa, Local4)
Add(Local4, 0x0aac, Local4)
Store(Local4, Index(DerefOf(Index(DerefOf(Index(TRIP,
CATZ(0x0))), 0x0)), Local1))
}
Store(DerefOf(Index(Local3, Local1)), Local4)
Multiply(Local4, 0xa, Local4)
Add(Local4, 0x0aac, Local4)
Store(Local4, Index(DerefOf(Index(DerefOf(Index(TRIP,
CATZ(0x0))), 0x1)), Local1))
Increment(Local1)
}
}
Method(BOTT, 0, Serialized) {
TRUP()
GEDT()
If(And(\THOS, 0x80)) {
Subtract(\THOS, 0x0100, \_TZ_.THOS)
}
Else {
Store(\THOS, \_TZ_.THOS)
}
}
Method(RETD, 0, Serialized) {
Acquire(THER, 0xffff)
Store(0x3d, THSC)
Store(0x38, WHTR)
Store(0x0, Local0)
While(LLess(Local0, 0x6)) {
Store(0x0, Index(LARE, Local0))
Store(0x0, Index(LARP, Local0))
Store(0xff, Index(CUZO, Local0))
Increment(Local0)
}
Release(THER)
}
Method(INTS, 2, Serialized) {
Store(\_SB_.PCI0.LPCB.SMAB(0x5d, 0x27, 0x0), Local0)
Store(\_SB_.PCI0.LPCB.SMAB(0x5d, 0x20, 0x0), Local0)
If(LEqual(And(Local0, 0xff00), 0x0)) {
And(Local0, 0x7f, Local0)
\_SB_.PCI0.LPCB.SMAB(0x5c, 0x20, Local0)
}
\_SB_.PCI0.LPCB.SMAB(0x5c, 0x28, 0x7)
}
Method(GTTP, 1, Serialized) {
If(LEqual(Arg0, 0x2)) {
Store(0x0b4c, Local1)
Acquire(\_SB_.PCI0.LPCB.EC0_.ECMX, 0xffff)
If(\_SB_.PCI0.LPCB.EC0_.ECRG) {
Store(\_SB_.PCI0.LPCB.EC0_.CBT_, Local1)
}
Release(\_SB_.PCI0.LPCB.EC0_.ECMX)
}
Else {
If(LLess(Arg0, 0x2)) {
If(LEqual(Arg0, 0x0)) {
Store(0x10, Local2)
If(DTSE) {
Store(DTS1, Local2)
Store(DTS2, Local3)
If(LGreater(Local3, Local2)) {
Store(Local3, Local2)
}
}
}
If(LEqual(Arg0, 0x1)) {
Store(VGGT, Local2)
}
}
Else {
If(LEqual(Arg0, 0x3)) {
Store(\_SB_.PCI0.LPCB.SMAB(0x5d, 0x2, 0x0), Local2)
If(LEqual(And(Local2, 0xff00), 0x0)) {
Store(ADCT(Local2, 0x0), Local2)
}
}
If(LEqual(Arg0, 0x4)) {
Store(\_SB_.PCI0.LPCB.SMAB(0x5d, 0x4, 0x0), Local2)
}
If(LEqual(Arg0, 0x5)) {
Store(\_SB_.PCI0.LPCB.SMAB(0x5d, 0x0, 0x0), Local2)
}
If(And(Local2, 0xff00)) {
Store(0x0, Local2)
}
If(And(Local2, 0x80)) {
Subtract(Local2, 0x0100, Local2)
}
}
Multiply(Local2, 0xa, Local1)
Add(Local1, 0x0aac, Local1)
}
Store(Local1, Local2)
Store(0x0, Local3)
If(LLess(Local1, 0x0b4c)) {
If(LLess(DerefOf(Index(LARE, Arg0)), 0x0b4c)) {
Store(0x0b4c, Index(LARP, Arg0))
}
Store(DerefOf(Index(LARP, Arg0)), Local1)
}
If(LEqual(Arg0, 0x0)) {
If(LGreater(Local2, DerefOf(Index(LARE, Arg0)))) {
Store(0x1, Local3)
}
}
Store(Local2, Index(LARE, Arg0))
Store(Local1, Index(LARP, Arg0))
Acquire(THER, 0xffff)
Store(ShiftLeft(0x1, Arg0), Local2)
If(And(THSC, Local2)) {
If(LEqual(Arg0, 0x0)) {
Or(WHTR, Local3, WHTR)
}
If(And(WHTR, Local2)) {
Store(Match(DerefOf(Index(DerefOf(Index(TRIP,
CATZ(Arg0))), 0x1)), MGT, Local1, MTR, 0x0, 0x0), Local0)
}
Else {
Store(Match(DerefOf(Index(DerefOf(Index(TRIP,
CATZ(Arg0))), 0x0)), MGE, Local1, MTR, 0x0, 0x0), Local0)
Decrement(Local0)
Or(WHTR, Local2, WHTR)
}
If(LOr(LNot(LEqual(Local0, DerefOf(Index(CUZO, Arg0)))), SCPC)) {
Store(0x0, SCPC)
Store(Local0, Index(CUZO, Arg0))
If(LNot(LLess(Arg0, 0x3))) {
SETM(Local0, Arg0)
}
Else {
If(LEqual(Arg0, 0x2)) {
Notify(\_TZ_.BATZ, 0x81)
}
Else {
PSWT()
If(LEqual(Arg0, 0x0)) {
Notify(\_TZ_.DTSZ, 0x81)
}
}
}
}
And(THSC, Not(Local2), THSC)
}
Release(THER)
Return(Local1)
}
Method(SETM, 2, Serialized) {
Store(DerefOf(Index(DerefOf(Index(DerefOf(Index(TRIP,
CATZ(Arg1))), 0x1)), Arg0)), Local0)
Subtract(Local0, 0x0aac, Local0)
Divide(Local0, 0xa, Local1, Local6)
If(LAnd(LEqual(Arg1, 0x3), LLess(Local6, 0x7f))) {
Store(ADCT(Local6, 0x1), Local6)
}
Store(DerefOf(Index(DerefOf(Index(DerefOf(Index(TRIP,
CATZ(Arg1))), 0x0)), Arg0)), Local0)
If(LLess(Local0, 0x0aac)) {
Subtract(0x0aac, Local0, Local1)
Divide(Local1, 0xa, Local3, Local2)
Not(Local2, Local2)
Add(Local2, 0x1, Local2)
And(Local2, 0xff, Local2)
}
Else {
Subtract(Local0, 0x0aac, Local0)
Divide(Local0, 0xa, Local1, Local2)
If(LEqual(Arg1, 0x3)) {
Store(ADCT(Local2, 0x1), Local2)
}
}
If(LEqual(Arg1, 0x3)) {
\_SB_.PCI0.LPCB.SMAB(0x5c, 0x38, Local2)
\_SB_.PCI0.LPCB.SMAB(0x5c, 0x30, Local6)
Notify(\_TZ_.CPUZ, 0x81)
}
If(LEqual(Arg1, 0x4)) {
\_SB_.PCI0.LPCB.SMAB(0x5c, 0x39, Local2)
\_SB_.PCI0.LPCB.SMAB(0x5c, 0x31, Local6)
Notify(\_TZ_.SKNZ, 0x81)
}
If(LEqual(Arg1, 0x5)) {
\_SB_.PCI0.LPCB.SMAB(0x5c, 0x3c, Local2)
\_SB_.PCI0.LPCB.SMAB(0x5c, 0x34, Local6)
Notify(\_TZ_.LOCZ, 0x81)
}
}
Method(PSWT, 0, Serialized) {
Store(0x0, Local4)
If(LAnd(FOAL, \_SB_.PCI0.LPCB.EC0_.GACS())) {
Store(FAOS, Local4)
}
Store(0x0, Local2)
Store(DerefOf(Index(CUZO, 0x0)), Local0)
If(LLess(Local0, 0xff)) {
Store(DerefOf(Index(DerefOf(Index(PU1T, 0x0)), Local0)), Local2)
}
Store(0x0, Local3)
Store(DerefOf(Index(CUZO, 0x1)), Local1)
If(LLess(Local1, 0xff)) {
Store(DerefOf(Index(DerefOf(Index(PU1T, 0x1)), Local1)), Local3)
}
If(LGreater(Local4, Local2)) {
Store(Local4, Local2)
}
If(LGreater(Local3, Local2)) {
Store(Local3, Local2)
}
\_SB_.PCI0.LPCB.SMAB(0x5c, 0xc, Local2)
}
Method(CATZ, 1, Serialized) {
Store(Arg0, Local1)
Return(Local1)
}
Method(PSL_, 0, Serialized) {
If(And(CFGD, 0x01000000)) {
Return(Package(0x2) {
\_PR_.CPU0,
\_PR_.CPU1,
})
}
Else {
Return(Package(0x1) {
\_PR_.CPU0,
})
}
}
ThermalZone(DTSZ) {
Method(_PSV) {
Return(GETP(0x5, 0x0))
}
Method(_PSL) {
Return(PSL_())
}
Name(_TSP, 0x012c)
Name(_TC1, 0x1)
Name(_TC2, 0x2)
Method(_CRT, 0, Serialized) {
Return(GETP(0x6, 0x0))
}
Method(_TMP, 0, Serialized) {
If(LEqual(OSTH, 0x0)) {
\_TZ_.INTM(0x0)
Store(0x1, OSTH)
}
Return(GTTP(0x0))
}
}
ThermalZone(BATZ) {
Method(_PSV) {
Return(GETP(0x0, 0x2))
}
Method(_PSL) {
Return(PSL_())
}
Name(_TSP, 0x012c)
Name(_TC1, 0x1)
Name(_TC2, 0x2)
Method(_CRT, 0, Serialized) {
Return(\_TZ_.CPUZ._CRT())
}
Method(_TMP, 0, Serialized) {
Return(GTTP(0x2))
}
}
ThermalZone(CPUZ) {
Method(_PSV) {
Return(GETP(0x0, 0x3))
}
Method(_PSL) {
Return(PSL_())
}
Name(_TSP, 0x012c)
Name(_TC1, 0x1)
Name(_TC2, 0x2)
Method(_CRT, 0, Serialized) {
Return(GETP(0x1, 0x3))
}
Method(_TMP, 0, Serialized) {
Store(GTTP(0x3), Local0)
Return(Local0)
}
}
ThermalZone(LOCZ) {
Method(_PSV) {
Return(GETP(0x0, 0x5))
}
Method(_PSL) {
Return(PSL_())
}
Name(_TSP, 0x012c)
Name(_TC1, 0x1)
Name(_TC2, 0x2)
Method(_CRT, 0, Serialized) {
Return(GETP(0x1, 0x5))
}
Method(_TMP, 0, Serialized) {
Return(GTTP(0x5))
}
}
Method(THEV, 0, Serialized) {
Store(\_SB_.PCI0.LPCB.SMAB(0x19, 0x0, 0x0), Local0)
Store(0x0, Local1)
Store(0x38, Local3)
Store(\_SB_.PCI0.LPCB.SMAB(0x5d, 0x23, 0x0), Local0)
If(LEqual(And(Local0, 0xff00), 0x0)) {
If(And(Local0, 0x2)) {
Store(\_SB_.PCI0.LPCB.SMAB(0x5d, 0x25, 0x0), Local2)
If(LEqual(And(Local2, 0xff00), 0x0)) {
If(And(Local2, 0x1)) {
Or(Local1, 0x20, Local1)
And(Local3, Not(0x20), Local3)
}
If(And(Local2, 0x2)) {
Or(Local1, 0x8, Local1)
And(Local3, Not(0x8), Local3)
}
If(And(Local2, 0x4)) {
Or(Local1, 0x10, Local1)
And(Local3, Not(0x10), Local3)
}
}
}
If(And(Local0, 0x4)) {
Store(\_SB_.PCI0.LPCB.SMAB(0x5d, 0x24, 0x0), Local2)
If(LEqual(And(Local2, 0xff00), 0x0)) {
If(And(Local2, 0x1)) {
Or(Local1, 0x20, Local1)
}
If(And(Local2, 0x2)) {
Or(Local1, 0x8, Local1)
}
If(And(Local2, 0x4)) {
Or(Local1, 0x10, Local1)
}
}
}
}
Else {
Store(0x38, Local1)
}
Acquire(THER, 0xffff)
Or(THSC, Local1, THSC)
And(WHTR, Not(0x38), Local4)
Or(Local4, Local3, WHTR)
Release(THER)
If(And(Local1, 0x20)) {
Notify(LOCZ, 0x80)
}
If(And(Local1, 0x8)) {
Notify(CPUZ, 0x80)
}
If(And(Local1, 0x10)) {
Notify(SKNZ, 0x80)
}
}
Method(FOAA) {
If(FOAL) {
PSWT()
}
}
ThermalZone(SKNZ) {
Method(_PSV) {
Return(GETP(0x0, 0x4))
}
Method(_PSL) {
Return(PSL_())
}
Name(_TSP, 0x012c)
Name(_TC1, 0x1)
Name(_TC2, 0x2)
Method(_CRT, 0, Serialized) {
Return(GETP(0x1, 0x4))
}
Method(_TMP, 0, Serialized) {
Return(GTTP(0x4))
}
}
}
Name(\NIST, Package(0x10) {
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"A",
"B",
"C",
"D",
"E",
"F",
})
Method(\ISTR, 2) {
Store(Arg0, Local0)
Store("", Local7)
Store(Arg1, Local4)
While(LGreater(Local4, 0x0)) {
And(Local0, 0xf, Local1)
Store(DerefOf(Index(\NIST, Local1)), Local2)
Concatenate(Local2, Local7, Local3)
Store(Local3, Local7)
ShiftRight(Local0, 0x4, Local0)
Decrement(Local4)
}
Return(Local7)
}
Method(\SRCP, 2) {
Store(SizeOf(Arg0), Local7)
If(LNot(LEqual(Local7, SizeOf(Arg1)))) {
Return(0x0)
}
Name(ST00, Buffer(Local7) { })
Name(ST01, Buffer(Local7) { })
Store(Arg0, ST00)
Store(Arg1, ST01)
Store(0x0, Local6)
Store(0x1, Local0)
While(LAnd(LNot(LEqual(Local6, Local7)), Local0)) {
Store(DerefOf(Index(ST00, Local6)), Local2)
Store(DerefOf(Index(ST01, Local6)), Local3)
Increment(Local6)
If(LNot(LEqual(Local2, Local3))) {
Store(0x0, Local0)
}
}
Return(Local0)
}
Name(WOSI, 0xff)
Name(OSID, Package(0x3) {
"Microsoft Windows",
"Microsoft WindowsME: Millennium Edition",
"Microsoft Windows NT",
})
Method(\SRCM, 3) {
Name(ST00, Buffer(0x8c) { })
Name(ST01, Buffer(0x8c) { })
Store(Arg0, ST00)
Store(Arg1, ST01)
Store(0x0, Local6)
Store(0x1, Local0)
While(LAnd(LNot(LEqual(Local6, Arg2)), Local0)) {
Store(DerefOf(Index(ST00, Local6)), Local2)
Store(DerefOf(Index(ST01, Local6)), Local3)
Increment(Local6)
If(LNot(LEqual(Local2, Local3))) {
Store(0x0, Local0)
}
}
Return(Local0)
}
Method(WCOS, 0, Serialized) {
If(LEqual(WOSI, 0xff)) {
Store(\_OS_, Local0)
Store(SizeOf(OSID), Local7)
Store(0x0, Local1)
While(LAnd(LLess(Local1, Local7), LEqual(WOSI, 0xff))) {
Store(\SRCP(Local0, DerefOf(Index(OSID, Local1))), Local2)
If(Local2) {
Add(Local1, 0x1, WOSI)
}
Else {
Increment(Local1)
}
}
If(LEqual(WOSI, 0xff)) {
Store(0x0, WOSI)
}
If(LOr(LEqual(WOSI, 0x0), LEqual(WOSI, 0x3))) {
If(CondRefOf(\_OSI, Local0)) {
If(\_OSI) {
"Windows 2001"
Store(0x4, WOSI)
}
If(\_OSI) {
"Windows 2001 SP1"
Store(0x4, WOSI)
}
If(\_OSI) {
"Windows 2001 SP2"
Store(0x5, WOSI)
}
If(\_OSI) {
"Windows 2006"
Store(0x6, WOSI)
}
}
}
Store(WOSI, WHOS)
}
Return(WOSI)
}
Method(CBRT, 2, Serialized) {
Store(SizeOf(Arg0), Local6)
Store(SizeOf(Arg1), Local7)
If(LEqual(Local6, 0x0)) {
Store(Arg1, Local0)
Return(Local0)
}
If(LEqual(Local7, 0x0)) {
Store(Arg0, Local0)
Return(Local0)
}
Add(Local7, Local6, Local1)
Subtract(Local1, 0x2, Local1)
Store(Buffer(Local1) { }, Local0)
Store(0x0, Local1)
While(LLess(Local1, SizeOf(Arg0))) {
Store(DerefOf(Index(Arg0, Local1)), Index(Local0, Local1))
Increment(Local1)
}
Subtract(Local1, 0x2, Local1)
Store(0x0, Local2)
While(LLess(Local2, SizeOf(Arg1))) {
Store(DerefOf(Index(Arg1, Local2)), Index(Local0, Local1))
Increment(Local1)
Increment(Local2)
}
Return(Local0)
}
Scope(\_SB_) {
Mutex(MSMI, 0)
Method(SSMI, 5) {
Acquire(MSMI, 0xffff)
If(Arg4) {
Acquire(\_GL_, 0xffff)
}
ShiftLeft(Arg0, 0x10, EAX_)
Store(Arg1, EBX_)
Store(Arg2, ECX_)
Store(Arg3, EDX_)
Store(0x0, REFS)
\_SB_.PCI0.GSWS(Arg0)
Store(REFS, Local0)
If(Arg4) {
Release(\_GL_)
}
Release(MSMI)
Return(Local0)
}
}
Scope(\_SB_) {
Device(PCI0) {
Name(_HPP, Package(0x4) {
0x10,
0x40,
0x0,
0x0,
})
Method(_S3D) {
Return(0x2)
}
Method(_S4D) {
Return(0x2)
}
Name(_HID, 0x080ad041)
Name(_CID, 0x030ad041)
Device(MCHC) {
Name(_ADR, 0x0)
OperationRegion(HBUS, PCI_Config, 0x40, 0xc0)
Field(HBUS, DWordAcc, NoLock, Preserve) {
EPEN, 1,
, 11,
EPBR, 20,
Offset(0x8),
MHEN, 1,
, 13,
MHBR, 18,
Offset(0x20),
PXEN, 1,
PXSZ, 2,
, 23,
PXBR, 6,
Offset(0x28),
DIEN, 1,
, 11,
DIBR, 20,
Offset(0x30),
IPEN, 1,
, 11,
IPBR, 20,
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(0x62),
TUUD, 16,
Offset(0x70),
, 4,
TLUD, 12,
Offset(0x89),
, 3,
GTSE, 1,
Offset(0x8a)
}
OperationRegion(MCHT, SystemMemory, 0xfed11000, 0xff)
Field(MCHT, ByteAcc, NoLock, Preserve) {
Offset(0x1e),
T0IS, 16,
Offset(0x5e),
T1IS, 16,
Offset(0xef),
ESCS, 8
}
}
Name(BUF0, Buffer(0x0208) {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, 0x80, 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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0xff, 0xff, 0xdf, 0xfe, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x87, 0x17, 0x0, 0x0, 0xc, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0,
0x10, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x0, 0x0, 0x0, 0x0, 0xff,
0xef, 0x1f, 0x1, 0x79, 0x0 })
Method(_CRS, 0, Serialized) {
If(^MCHC.PM1L) {
CreateDWordField(BUF0, 0x7c, C0LN)
Store(Zero, C0LN)
}
If(LEqual(^MCHC.PM1L, 0x1)) {
CreateBitField(BUF0, 0x0358, C0RW)
Store(Zero, C0RW)
}
If(^MCHC.PM1H) {
CreateDWordField(BUF0, 0x96, C4LN)
Store(Zero, C4LN)
}
If(LEqual(^MCHC.PM1H, 0x1)) {
CreateBitField(BUF0, 0x0428, C4RW)
Store(Zero, C4RW)
}
If(^MCHC.PM2L) {
CreateDWordField(BUF0, 0xb0, C8LN)
Store(Zero, C8LN)
}
If(LEqual(^MCHC.PM2L, 0x1)) {
CreateBitField(BUF0, 0x04f8, C8RW)
Store(Zero, C8RW)
}
If(^MCHC.PM2H) {
CreateDWordField(BUF0, 0xca, CCLN)
Store(Zero, CCLN)
}
If(LEqual(^MCHC.PM2H, 0x1)) {
CreateBitField(BUF0, 0x05c8, CCRW)
Store(Zero, CCRW)
}
If(^MCHC.PM3L) {
CreateDWordField(BUF0, 0xe4, D0LN)
Store(Zero, D0LN)
}
If(LEqual(^MCHC.PM3L, 0x1)) {
CreateBitField(BUF0, 0x0698, D0RW)
Store(Zero, D0RW)
}
If(^MCHC.PM3H) {
CreateDWordField(BUF0, 0xfe, D4LN)
Store(Zero, D4LN)
}
If(LEqual(^MCHC.PM3H, 0x1)) {
CreateBitField(BUF0, 0x0768, D4RW)
Store(Zero, D4RW)
}
If(^MCHC.PM4L) {
CreateDWordField(BUF0, 0x0118, D8LN)
Store(Zero, D8LN)
}
If(LEqual(^MCHC.PM4L, 0x1)) {
CreateBitField(BUF0, 0x0838, D8RW)
Store(Zero, D8RW)
}
If(^MCHC.PM4H) {
CreateDWordField(BUF0, 0x0132, DCLN)
Store(Zero, DCLN)
}
If(LEqual(^MCHC.PM4H, 0x1)) {
CreateBitField(BUF0, 0x0908, DCRW)
Store(Zero, DCRW)
}
If(^MCHC.PM5L) {
CreateDWordField(BUF0, 0x014c, E0LN)
Store(Zero, E0LN)
}
If(LEqual(^MCHC.PM5L, 0x1)) {
CreateBitField(BUF0, 0x09d8, E0RW)
Store(Zero, E0RW)
}
If(^MCHC.PM5H) {
CreateDWordField(BUF0, 0x0166, E4LN)
Store(Zero, E4LN)
}
If(LEqual(^MCHC.PM5H, 0x1)) {
CreateBitField(BUF0, 0x0aa8, E4RW)
Store(Zero, E4RW)
}
If(^MCHC.PM6L) {
CreateDWordField(BUF0, 0x0180, E8LN)
Store(Zero, E8LN)
}
If(LEqual(^MCHC.PM6L, 0x1)) {
CreateBitField(BUF0, 0x0b78, E8RW)
Store(Zero, E8RW)
}
If(^MCHC.PM6H) {
CreateDWordField(BUF0, 0x019a, ECLN)
Store(Zero, ECLN)
}
If(LEqual(^MCHC.PM6H, 0x1)) {
CreateBitField(BUF0, 0x0c48, ECRW)
Store(Zero, ECRW)
}
If(^MCHC.PM0H) {
CreateDWordField(BUF0, 0x01b4, F0LN)
Store(Zero, F0LN)
}
If(LEqual(^MCHC.PM0H, 0x1)) {
CreateBitField(BUF0, 0x0d18, F0RW)
Store(Zero, F0RW)
}
CreateDWordField(BUF0, 0x01c2, M1MN)
CreateDWordField(BUF0, 0x01c6, M1MX)
CreateDWordField(BUF0, 0x01ce, M1LN)
ShiftLeft(^MCHC.PXBR, 0x1a, Local0)
ShiftLeft(^MCHC.TLUD, 0x14, M1MN)
Subtract(Local0, 0x1, M1MX)
Add(Subtract(Local0, M1MN), 0x1, M1LN)
CreateDWordField(BUF0, 0x01dc, M2MN)
CreateDWordField(BUF0, 0x01e0, M2MX)
CreateDWordField(BUF0, 0x01e8, M2LN)
ShiftRight(0x10000000, ^MCHC.PXSZ, Local1)
Add(Local0, Local1, M2MN)
Add(Subtract(M2MX, M2MN), 0x1, M2LN)
Return(BUF0)
}
Device(PDRC) {
Name(_HID, 0x020cd041)
Name(_UID, 0x1)
Name(BUF0, Buffer(0x62) {0x86, 0x9, 0x0, 0x1, 0x0, 0x0,
0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0x0,
0x0, 0x0, 0x40, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0,
0x0, 0x10, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0,
0x10, 0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0xc0, 0xfe, 0x0, 0x10, 0x0,
0x0, 0x86, 0x9, 0x0, 0x1, 0x0, 0x0, 0xd2, 0xfe, 0x0, 0x0, 0x2, 0x0,
0x86, 0x9, 0x0, 0x1, 0x0, 0x50, 0xd4, 0xfe, 0x0, 0xb0, 0x4, 0x0, 0x79,
0x0 })
Method(_CRS, 0, Serialized) {
CreateDWordField(BUF0, 0x4, RBR0)
ShiftLeft(\_SB_.PCI0.LPCB.RCBA, 0xe, RBR0)
CreateDWordField(BUF0, 0x10, MBR0)
ShiftLeft(\_SB_.PCI0.MCHC.MHBR, 0xe, MBR0)
CreateDWordField(BUF0, 0x1c, DBR0)
ShiftLeft(\_SB_.PCI0.MCHC.DIBR, 0xc, DBR0)
CreateDWordField(BUF0, 0x28, EBR0)
ShiftLeft(\_SB_.PCI0.MCHC.EPBR, 0xc, EBR0)
CreateDWordField(BUF0, 0x34, XBR0)
ShiftLeft(\_SB_.PCI0.MCHC.PXBR, 0x1a, XBR0)
CreateDWordField(BUF0, 0x38, XSZ0)
ShiftRight(0x10000000, \_SB_.PCI0.MCHC.PXSZ, XSZ0)
Return(BUF0)
}
}
Device(PEGP) {
Name(_ADR, 0x00010000)
Method(_PRT) {
If(GPIC) {
Return(Package(0x4) {
Package(0x4) {
0xffff,
0x0,
0x0,
0x10,
},
Package(0x4) {
0xffff,
0x1,
0x0,
0x11,
},
Package(0x4) {
0xffff,
0x2,
0x0,
0x12,
},
Package(0x4) {
0xffff,
0x3,
0x0,
0x13,
},
})
}
Else {
Return(Package(0x4) {
Package(0x4) {
0xffff,
0x0,
\_SB_.PCI0.LPCB.LNKA,
0x0,
},
Package(0x4) {
0xffff,
0x1,
\_SB_.PCI0.LPCB.LNKB,
0x0,
},
Package(0x4) {
0xffff,
0x2,
\_SB_.PCI0.LPCB.LNKC,
0x0,
},
Package(0x4) {
0xffff,
0x3,
\_SB_.PCI0.LPCB.LNKD,
0x0,
},
})
}
}
}
Device(GFX0) {
Name(_ADR, 0x00020000)
Method(_DOS, 1) {
Store(And(Arg0, 0x7), DSEN)
HDOS(Arg0)
}
Method(_DOD) {
If(LEqual(DODC, 0x0)) {
Store(0x1, DODC)
If(SCIP()) {
HDOD()
Store(0x0, NDID)
If(LNot(LEqual(DIDL, Zero))) {
Store(SDDL(DID1), DID1)
}
If(LNot(LEqual(DDL2, Zero))) {
Store(SDDL(DID2), DID2)
}
If(LNot(LEqual(DDL3, Zero))) {
Store(SDDL(DID3), DID3)
}
If(LNot(LEqual(DDL4, Zero))) {
Store(SDDL(DID4), DID4)
}
If(LNot(LEqual(DDL5, Zero))) {
Store(SDDL(DID5), DID5)
}
}
If(LEqual(NDID, 0x0)) {
Store(0x0400, Index(DerefOf(Index(DODS, NDID)), 0x0))
}
If(LEqual(NDID, 0x1)) {
Store(Or(0x00010000, DID1),
Index(DerefOf(Index(DODS, NDID)), 0x0))
}
If(LEqual(NDID, 0x2)) {
Store(Or(0x00010000, DID1),
Index(DerefOf(Index(DODS, NDID)), 0x0))
Store(Or(0x00010000, DID2),
Index(DerefOf(Index(DODS, NDID)), 0x1))
}
If(LEqual(NDID, 0x3)) {
Store(Or(0x00010000, DID1),
Index(DerefOf(Index(DODS, NDID)), 0x0))
Store(Or(0x00010000, DID2),
Index(DerefOf(Index(DODS, NDID)), 0x1))
Store(Or(0x00010000, DID3),
Index(DerefOf(Index(DODS, NDID)), 0x2))
}
If(LEqual(NDID, 0x4)) {
Store(Or(0x00010000, DID1),
Index(DerefOf(Index(DODS, NDID)), 0x0))
Store(Or(0x00010000, DID2),
Index(DerefOf(Index(DODS, NDID)), 0x1))
Store(Or(0x00010000, DID3),
Index(DerefOf(Index(DODS, NDID)), 0x2))
Store(Or(0x00010000, DID4),
Index(DerefOf(Index(DODS, NDID)), 0x3))
}
If(LGreater(NDID, 0x4)) {
Store(Or(0x00010000, DID1),
Index(DerefOf(Index(DODS, NDID)), 0x0))
Store(Or(0x00010000, DID2),
Index(DerefOf(Index(DODS, NDID)), 0x1))
Store(Or(0x00010000, DID3),
Index(DerefOf(Index(DODS, NDID)), 0x2))
Store(Or(0x00010000, DID4),
Index(DerefOf(Index(DODS, NDID)), 0x3))
Store(Or(0x00010000, DID5),
Index(DerefOf(Index(DODS, NDID)), 0x4))
}
}
Store(NDID, Local0)
If(LGreater(NDID, 0x5)) {
Store(0x0, Local0)
}
Return(DerefOf(Index(DODS, Local0)))
}
Device(DD01) {
Method(_ADR, 0, Serialized) {
If(LEqual(DID1, 0x0)) {
Return(0x1)
}
Else {
Return(And(0xffff, DID1))
}
}
Method(_DCS) {
Return(HDCS(DID1))
}
Method(_DGS) {
Return(HDGS(DID1))
}
Method(_DSS, 1) {