NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/37538: Problems with ACPI and BIOS interrupts on some laptops
The following reply was made to PR kern/37538; it has been noted by GNATS.
From: buhrow%lothlorien.nfbcal.org@localhost (Brian Buhrow)
To: gnats-bugs%NetBSD.org@localhost
Cc: buhrow%lothlorien.nfbcal.org@localhost
Subject: Re: kern/37538: Problems with ACPI and BIOS interrupts on some laptops
Date: Wed, 1 Jul 2009 01:05:24 -0700
Hello. I'm sorry to have to report that the problem described in this
bug is not fixed with NetBSD-5.x. The patch shown in the beginning of this
bug report still does the trick, however, and I've been able to upgrade the
machine to 5.x with the patch applied. I was not able to report the state
of the requested patches because this machine has been in production use
for the past year and a half, and I could not afford to have it out of
service for testing during that period.
I have, however, now ben able to provide the asl description of the
acpi dstp table, which is included below. If kern/37001 is fixed in 5.x, then
this is
definitely not the same bug.
All my other notes from this bug, as originally reported, still apply,
including the invalid messages shown.
So, this problem exists in all versions of NetBSD from 3.x to 5.x, and
probably -current as well, though I haven't tried.
It would be nice to get a real fix for this problem in, but I know how hard
it can be to work on machines that are hard to test with, and because this
is my working laptop, there are not many windows of opportunity for me to
fool around with test kernels on it.
Here, for what it's worth is the dstp table.
Any light anyone can shed on the problem based on this output would be very
much appreciated.
-thanks
-Brian
/*
RSD PTR: Checksum=114, OEMID=DELL, RsdtAddress=0x1fef0000
*/
/*
RSDT: Length=44, Revision=1, Checksum=224,
OEMID=DELL, OEM Table ID=CPi R, OEM Revision=0x27d5061c,
Creator ID=ASL, Creator Revision=0x61
*/
/*
Entries={ 0x1fef0400, 0x1fef0800 }
*/
/*
DSDT=0x1fef0c00
INT_MODEL=PIC
SCI_INT=9
SMI_CMD=0xb2, ACPI_ENABLE=0x70, ACPI_DISABLE=0x71, S4BIOS_REQ=0x97
PM1a_EVT_BLK=0x800-0x803
PM1a_CNT_BLK=0x804-0x805
PM2_CNT_BLK=0x820-0x820
PM2_TMR_BLK=0x808-0x80b
PM2_GPE0_BLK=0x828-0x82f
P_LVL2_LAT=50ms, P_LVL3_LAT=50ms
FLUSH_SIZE=0, FLUSH_STRIDE=0
DUTY_OFFSET=1, DUTY_WIDTH=3
DAY_ALRM=0, MON_ALRM=0, CENTURY=0
Flags={WBINVD,PROC_C1,PWR_BUTTON,SLP_BUTTON,DCK_CAP}
*/
/*
DSDT: Length=12481, Revision=1, Checksum=48,
OEMID=INT430, OEM Table ID=SYSFexxx, OEM Revision=0x1001,
Creator ID=MSFT, Creator Revision=0x100000e
*/
DefinitionBlock ("acpi_dst.aml", "DSDT", 0x1, "INT430", "SYSFexxx", 0x1001)
{
Name(VERS, Package(0x03) {
"Project\x3a\x20DELL\x20Mojave",
"Date\x3a\x2001\x2f28\x2f1998",
"Ver\x3a\x201.00.04",
})
Event(EJTD)
Name(MISC, Buffer(0x09) {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 })
CreateByteField(MISC, 0x00, MIS0)
CreateByteField(MISC, 0x02, MIS2)
CreateByteField(MISC, 0x03, MIS3)
CreateByteField(MISC, 0x04, MIS4)
CreateByteField(MISC, 0x05, MIS5)
CreateByteField(MISC, 0x06, MIS6)
CreateByteField(MISC, 0x07, MIS7)
CreateByteField(MISC, 0x08, MIS8)
Mutex(SMIX, 1)
Method(SMI, 2) {
Acquire(SMIX, 0xffff)
Store(Arg1, \_SB.SMIA)
Store(Arg0, \_SB.SMIC)
Store(\_SB.SMIC, Local0)
While(LNot(LEqual(Local0, 0x00))) {
Store(\_SB.SMIC, Local0)
}
Store(\_SB.SMIA, Local1)
Release(SMIX)
Return(Local1)
}
Name(SXX0, Buffer(0x0100) { })
Name(SXX1, Buffer(0x08) { })
CreateWordField(SXX1, 0x00, SXX2)
CreateWordField(SXX1, 0x04, SXX3)
Method(SX10) {
Acquire(SMIX, 0xffff)
Store(0x00, SXX2)
}
Method(SX30, 1) {
Store(SXX2, Local0)
Increment(Local0)
If(LNot(LGreater(Local0, SizeOf(SXX0)))) {
CreateByteField(SXX0, SXX2, SX20)
Store(Arg0, SX20)
Store(Local0, SXX2)
}
}
Method(SX31, 1) {
Store(SXX2, Local0)
Add(Local0, 0x02, Local0)
If(LNot(LGreater(Local0, SizeOf(SXX0)))) {
CreateWordField(SXX0, SXX2, SX21)
Store(Arg0, SX21)
Store(Local0, SXX2)
}
}
Method(SX32, 1) {
Store(SXX2, Local0)
Add(Local0, 0x04, Local0)
If(LNot(LGreater(Local0, SizeOf(SXX0)))) {
CreateDWordField(SXX0, SXX2, SX22)
Store(Arg0, SX22)
Store(Local0, SXX2)
}
}
Method(SX33, 2) {
If(LLess(Arg1, SizeOf(Arg0))) {
CreateByteField(Arg0, Arg1, SX20)
SX30(SX20)
}
}
Method(SX34, 2) {
Store(0x00, Local0)
While(LLess(Local0, Arg1)) {
SX33(Arg0, Local0)
Increment(Local0)
}
}
Method(SXX6, 2) {
Store(Arg1, \_SB.SMIA)
Store(Arg0, \_SB.SMIC)
Store(\_SB.SMIC, Local0)
While(LNot(LEqual(Local0, 0x00))) {
Store(\_SB.SMIC, Local0)
}
Return(\_SB.SMIA)
}
Method(SXX5, 2) {
If(LLess(Arg1, SizeOf(Arg0))) {
CreateByteField(Arg0, Arg1, SX20)
SXX6(0x7c, SX20)
}
}
Method(SXX4) {
SXX6(0x7b, 0x00)
Store(0x00, Local0)
While(LLess(Local0, SXX2)) {
SXX5(SXX0, Local0)
Increment(Local0)
}
}
Method(SXX8, 2) {
If(LLess(Arg1, SizeOf(Arg0))) {
CreateByteField(Arg0, Arg1, SX20)
Store(SXX6(0x7d, 0x00), SX20)
}
}
Method(SXX7) {
Store(0x00, Local0)
While(LLess(Local0, SXX3)) {
Add(SXX2, Local0, Local1)
SXX8(SXX0, Local1)
Increment(Local0)
}
}
Method(SX11) {
SXX4()
Store(SXX6(0x79, 0x00), SXX3)
Add(SXX2, SXX3, Local0)
If(LLess(SizeOf(SXX0), Local0)) {
Store(SizeOf(SXX0), Local0)
Subtract(Local0, SXX2, Local0)
Store(Local0, SXX3)
}
SXX7()
}
Method(SX40) {
Store(SXX2, Local0)
Increment(Local0)
If(LNot(LGreater(Local0, SizeOf(SXX0)))) {
CreateByteField(SXX0, SXX2, SX20)
Store(Local0, SXX2)
Return(SX20)
}
Return(0x00)
}
Method(SX41) {
Store(SXX2, Local0)
Add(Local0, 0x02, Local0)
If(LNot(LGreater(Local0, SizeOf(SXX0)))) {
CreateWordField(SXX0, SXX2, SX21)
Store(Local0, SXX2)
Return(SX21)
}
Return(0x00)
}
Method(SX42) {
Store(SXX2, Local0)
Add(Local0, 0x04, Local0)
If(LNot(LGreater(Local0, SizeOf(SXX0)))) {
CreateDWordField(SXX0, SXX2, SX22)
Store(Local0, SXX2)
Return(SX22)
}
Return(0x00)
}
Method(SX43, 2) {
If(LLess(Arg1, SizeOf(Arg0))) {
CreateByteField(Arg0, Arg1, SX20)
Store(SX40(), SX20)
}
}
Method(SX44, 2) {
Store(0x00, Local0)
While(LLess(Local0, Arg1)) {
SX43(Arg0, Local0)
Increment(Local0)
}
}
Method(SX45) {
Store(SX40(), Local0)
Name(SX23, Buffer(Local0) { })
SX44(SX23, Local0)
Return(SX23)
}
Method(SX12) {
Release(SMIX)
}
Method(PNPQ, 1) {
SX10()
SX30(0x00)
SX30(0x02)
SX30(Arg0)
SX11()
Store(SX40(), Local0)
SX12()
Return(Local0)
}
Method(PNPD, 1) {
SX10()
SX30(0x00)
SX30(0x03)
SX30(Arg0)
SX11()
SX12()
}
Method(PNPG, 1) {
SX10()
SX30(0x00)
SX30(0x00)
SX30(Arg0)
SX11()
Name(PGET, Buffer(SXX3) { })
SX44(PGET, SXX3)
SX12()
Return(PGET)
}
Method(PNPS, 2) {
SX10()
SX30(0x00)
SX30(0x01)
SX30(Arg0)
SX34(Arg1, SizeOf(Arg1))
SX11()
SX12()
}
Method(PSW, 2) {
SX10()
SX30(0x06)
SX30(Arg0)
SX30(Arg1)
SX11()
SX12()
}
Method(DSS, 2) {
SX10()
SX30(0x08)
SX30(Arg0)
SX32(Arg1)
SX11()
SX12()
}
Method(GMEM) {
SX10()
SX30(0x07)
SX11()
Store(SX42(), Local0)
SX12()
Return(Local0)
}
Method(GORL) {
SX10()
SX30(0x09)
SX11()
Store(SX42(), Local0)
SX12()
Return(Local0)
}
Name(W98S, "Microsoft\x20Windows")
Name(NT5S, "Microsoft\x20Windows\x20NT")
Name(WINM, "Microsoft\x20WindowsME\x3a\x20Millennium\x20Edition")
Name(WXP, "Windows\x202001")
Method(GETC, 2) {
CreateByteField(Arg0, Arg1, TCHR)
Return(TCHR)
}
Method(STRE, 2) {
Name(STR1, Buffer(0x50) { })
Name(STR2, Buffer(0x50) { })
Store(Arg0, STR1)
Store(Arg1, STR2)
Store(Zero, Local0)
Store(One, Local1)
While(Local1) {
Store(GETC(STR1, Local0), Local1)
Store(GETC(STR2, Local0), Local2)
If(LNot(LEqual(Local1, Local2))) {
Return(Zero)
}
Increment(Local0)
}
Return(One)
}
Method(OSID) {
If(LEqual(MIS3, 0x00)) {
Store(0x01, MIS3)
If(CondRefOf(\_OSI, Local0)) {
If(\_OSI(WXP)) {
Store(0x10, MIS3)
}
}
Else {
If(STRE(\_OS, W98S)) {
Store(0x02, MIS3)
}
If(STRE(\_OS, NT5S)) {
Store(0x08, MIS3)
}
If(STRE(\_OS, WINM)) {
Store(0x04, MIS3)
}
}
}
Return(MIS3)
}
Method(SOST) {
SX10()
SX30(0x0a)
OSID()
SX30(MIS3)
SX11()
SX12()
}
Name(WAKE, 0x00)
Method(NEVT) {
Store(SMI(0x8c, 0x00), Local0)
If(And(Local0, 0x01, )) {
Notify(\_SB.PBTN, 0x80)
}
If(And(Local0, 0x02, )) {
EJTE()
}
If(And(Local0, 0x04, )) {
LIDE()
}
If(And(Local0, 0x08, )) {
PWRE()
}
If(And(Local0, 0x10, )) {
DCKE()
}
If(And(Local0, 0x20, )) {
BAYE()
}
If(And(Local0, 0x40, )) {
Notify(\_SB.SBTN, 0x80)
}
If(And(Local0, 0x80, )) {
SMIE()
}
}
Method(EJTE) {
SMI(0xa6, 0x01)
Notify(\_SB.PCI0.PCIE.GDCK, 0x01)
}
Method(LIDE) {
Store(SMI(0x43, 0x00), Local0)
If(LNot(LEqual(Local0, 0x00))) {
If(LEqual(OSID(), 0x10)) {
Notify(\_SB.PCI0, 0x00)
Sleep(0x03e8)
}
Else {
If(LEqual(OSID(), 0x08)) {
Notify(\_SB.PCI0.VID, 0x00)
Notify(\_SB.PCI0.VID2, 0x00)
Sleep(0x02ee)
}
}
Notify(\_SB.PCI0.VID, 0x80)
}
Notify(\_SB.LID, 0x80)
}
Method(PWRE) {
Store(SMI(0x98, 0x00), Local0)
XOr(Local0, MIS0, Local1)
And(Local0, Or(0x01, Or(0x02, 0x10, ), ), MIS0)
If(And(Local1, 0x01, )) {
Notify(\_SB.AC, 0x80)
}
And(MIS0, 0x02, Local2)
If(And(Local1, 0x02, )) {
If(Local2) {
Notify(\_SB.BAT0, 0x81)
}
Else {
Notify(\_SB.BAT0, 0x81)
}
}
If(And(Local1, 0x04, )) {
If(Local2) {
Notify(\_SB.BAT0, 0x80)
}
}
If(And(Local1, 0x08, )) {
If(Local2) {
Notify(\_SB.BAT0, 0x80)
}
}
}
Method(DCKE) {
Store(SMI(0x65, 0x22), Local0)
And(Local0, 0x08, MIS8)
Store(SMI(0x87, 0x00), Local0)
XOr(Local0, MIS7, Local1)
Store(Local0, MIS7)
Store(Local0, MIS2)
If(Local1) {
If(Local0) {
Notify(\_SB.PCI0.PCIE.GDCK, 0x00)
}
Else {
SMI(0x8d, 0x00)
If(MIS8) {
Signal(EJTD)
}
Else {
Notify(\_SB.PCI0.PCIE.GDCK, 0x01)
}
}
}
}
Method(BAYE) {
Store(SMI(0x86, 0x00), Local0)
If(And(Local0, 0x02, )) {
SMI(0x90, 0x01)
}
Else {
SMI(0x90, 0x00)
}
SMI(0xba, 0x00)
}
Method(SMIE) {
Store(SMI(0x96, 0x00), Local0)
If(And(Local0, 0x01, )) {
Notify(\_TZ.THM, 0x80)
}
If(And(Local0, 0x20, )) {
Notify(\_SB.PCI0.VID, 0x81)
}
If(And(Local0, 0x02, )) {
If(LEqual(OSID(), 0x10)) {
Notify(\_SB.PCI0, 0x00)
Sleep(0x03e8)
}
Else {
If(LEqual(OSID(), 0x08)) {
Notify(\_SB.PCI0.VID, 0x00)
Notify(\_SB.PCI0.VID2, 0x00)
Sleep(0x02ee)
}
}
Notify(\_SB.PCI0.VID, 0x80)
}
If(And(Local0, 0x04, )) {
Notify(\_SB.BAT0, 0x81)
}
If(And(Local0, 0x08, )) {
Notify(\_PR.CPU0, 0x80)
}
If(And(Local0, 0x40, )) {
Store(0x00, MIS5)
}
}
Method(\_PTS, 1) {
SMI(0x8a, Arg0)
}
Method(\_WAK, 1) {
SMI(0xa7, MIS2)
SMI(0x9a, Arg0)
If(LEqual(Arg0, 0x04)) {
Notify(\_SB.PBTN, 0x02)
Store(SMI(0x98, 0x00), MIS0)
Store(0x01, MIS4)
SOST()
}
Notify(\_SB.AC, 0x80)
Store(SMI(0x87, 0x00), Local0)
XOr(Local0, MIS2, Local1)
If(Local1) {
If(Local0) {
Notify(\_SB.PCI0.PCIE.GDCK, 0x00)
}
Else {
If(LEqual(OSID(), 0x02)) {
SMI(0x8d, 0x00)
Notify(\_SB.PCI0.PCIE.GDCK, 0x01)
}
}
}
Store(Local0, MIS2)
SMI(0xa6, 0x00)
}
Method(NWAK) {
Store(0x01, WAKE)
Store(SMI(0x89, 0x00), Local0)
Store(0x00, Local1)
If(LEqual(Local0, 0x00)) {
Store(0x01, Local1)
}
If(And(Local0, 0x01, )) {
Store(0x01, Local1)
}
If(And(Local0, 0x02, )) {
LIDE()
}
If(And(Local0, 0x10, )) {
Notify(\_SB.PCI0.PCIE.GDCK, 0x02)
}
If(And(Local0, 0x40, )) {
Notify(\_SB.PCI0.PCIE.GDCK, 0x01)
}
If(And(Local0, 0x20, )) {
If(LEqual(OSID(), 0x02)) {
Store(0x01, Local1)
}
}
Notify(\_SB.BAT0, 0x81)
If(Local1) {
Notify(\_SB.PBTN, 0x02)
}
Store(0x00, WAKE)
}
Scope(\_GPE) {
Method(_L1D) {
NEVT()
}
Method(_L1C) {
NWAK()
}
Method(_L0B) {
Store(0x00, Local0)
Notify(\_SB.PCI0, 0x02)
}
Method(_L18) {
Store(0x00, Local0)
}
Method(_L03) {
Notify(\_SB.PCI0.USB0, 0x02)
}
Method(_L04) {
Notify(\_SB.PCI0.USB1, 0x02)
}
Method(_L0C) {
Notify(\_SB.PCI0.USB2, 0x02)
}
Method(_L0D) {
Notify(\_SB.PCI0.USB3, 0x02)
}
Method(_L05) {
Notify(\_SB.PCI0.MODM, 0x02)
}
}
Name(CRS0, Buffer(0x0101) { })
CreateByteField(CRS0, 0x0100, CRS1)
Method(CRS3) {
Store(0x00, CRS1)
}
Method(CRS4, 1) {
CreateByteField(CRS0, CRS1, CRS2)
Store(Arg0, CRS2)
Increment(CRS1)
}
Method(CRS5, 1) {
CreateWordField(CRS0, CRS1, CRS2)
Store(Arg0, CRS2)
Increment(CRS1)
Increment(CRS1)
}
Method(CRS6, 1) {
CreateDWordField(CRS0, CRS1, CRS2)
Store(Arg0, CRS2)
Add(CRS1, 0x04, CRS1)
}
Method(CR_0, 3) {
CRS4(0x86)
CRS5(0x09)
CRS4(Arg0)
CRS6(Arg1)
CRS6(Arg2)
}
Method(CR_1, 4) {
CRS4(0x47)
CRS4(0x01)
CRS5(Arg0)
CRS5(Arg1)
CRS4(Arg2)
CRS4(Arg3)
}
Method(CR_2, 2) {
CRS4(0x88)
CRS5(0x0d)
CRS4(0x02)
CRS4(0x0c)
CRS4(0x00)
CRS5(0x00)
CRS5(Arg0)
Add(Arg0, Arg1, Local0)
Decrement(Local0)
CRS5(Local0)
CRS5(0x00)
CRS5(Arg1)
}
Method(CR_3, 2) {
CRS4(0x88)
CRS5(0x0d)
CRS4(0x01)
CRS4(0x0c)
CRS4(0x03)
CRS5(0x00)
CRS5(Arg0)
Add(Arg0, Arg1, Local0)
Decrement(Local0)
CRS5(Local0)
CRS5(0x00)
CRS5(Arg1)
}
Method(CR_4, 2) {
CRS4(0x87)
CRS5(0x17)
CRS4(0x00)
CRS4(0x0c)
CRS4(0x03)
CRS6(0x00)
CRS6(Arg0)
Add(Arg0, Arg1, Local0)
Decrement(Local0)
CRS6(Local0)
CRS6(0x00)
CRS6(Arg1)
}
Method(CR_5) {
CRS5(0x79)
}
Scope(\_PR) {
Processor(CPU0, 0, 0x8e0, 0x6) {
Name(PDC0, 0xf0000000)
Method(_PDC, 1) {
CreateDWordField(Arg0, 0x08, CAP0)
Store(CAP0, PDC0)
}
Method(_PCT) {
If(LEqual(And(PDC0, 0x01, ), 0x01)) {
Return(Package(0x02) {
Buffer(0x11) {0x82, 0xc, 0x0, 0x7f, 0x40, 0x0, 0x0, 0x99,
0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 },
Buffer(0x11) {0x82, 0xc, 0x0, 0x7f, 0x10, 0x0, 0x0, 0x98,
0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 },
})
}
Else {
Return(Package(0x02) {
Buffer(0x11) {0x82, 0xc, 0x0, 0x1, 0x10, 0x0, 0x0, 0xb2,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 },
Buffer(0x11) {0x82, 0xc, 0x0, 0x1, 0x8, 0x0, 0x0, 0xb3,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 },
})
}
}
Name(PSSX, Package(0x08) {
Package(0x06) {
0x0640,
0x6590,
0x0a,
0x0a,
0x00,
0x00,
},
Package(0x06) {
0x0640,
0x6590,
0x0a,
0x0a,
0x00,
0x00,
},
Package(0x06) {
0x05dc,
0x61a8,
0x0a,
0x0a,
0x00,
0x00,
},
Package(0x06) {
0x0578,
0x5dc0,
0x0a,
0x0a,
0x00,
0x00,
},
Package(0x06) {
0x0514,
0x59d8,
0x0a,
0x0a,
0x00,
0x00,
},
Package(0x06) {
0x04b0,
0x55f0,
0x0a,
0x0a,
0x00,
0x00,
},
Package(0x06) {
0x044c,
0x5208,
0x0a,
0x0a,
0x00,
0x00,
},
Package(0x06) {
0x03e8,
0x4e20,
0x0a,
0x0a,
0x00,
0x00,
},
})
Name(PSSN, 0x00)
Method(_PSS) {
SX10()
If(LEqual(And(PDC0, 0x01, ), 0x01)) {
SX30(0x0c)
}
Else {
SX30(0x0b)
}
SX11()
Store(SX40(), PSSN)
Subtract(0x08, 0x08, Local1)
While(LLess(Local1, 0x08)) {
Store(SX42(), Index(DerefOf(Index(PSSX, Local1, )), 0x00, ))
Store(SX42(), Index(DerefOf(Index(PSSX, Local1, )), 0x01, ))
Store(SX42(), Index(DerefOf(Index(PSSX, Local1, )), 0x02, ))
Store(SX42(), Index(DerefOf(Index(PSSX, Local1, )), 0x03, ))
Store(SX41(), Index(DerefOf(Index(PSSX, Local1, )), 0x04, ))
Store(SX41(), Index(DerefOf(Index(PSSX, Local1, )), 0x05, ))
Increment(Local1)
}
SX12()
Subtract(0x08, 0x08, Local1)
While(LLess(Local1, 0x08)) {
Increment(Local1)
}
Return(PSSX)
}
Method(_PPC) {
Subtract(0x08, PSSN, Local0)
Add(Local0, SMI(0xad, 0x00), Local0)
Return(Local0)
}
Name(DCST, Package(0x05) {
0x04,
Package(0x04) {
Buffer(0x11) {0x82, 0xc, 0x0, 0x7f, 0x8, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 },
0x01,
0x01,
0x03e8,
},
Package(0x04) {
Buffer(0x11) {0x82, 0xc, 0x0, 0x1, 0x8, 0x0, 0x0, 0x14, 0x8,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 },
0x02,
0x01,
0x01f4,
},
Package(0x04) {
Buffer(0x11) {0x82, 0xc, 0x0, 0x1, 0x8, 0x0, 0x0, 0x15, 0x8,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 },
0x03,
0x55,
0xfa,
},
Package(0x04) {
Buffer(0x11) {0x82, 0xc, 0x0, 0x1, 0x8, 0x0, 0x0, 0x16, 0x8,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 },
0x03,
0xb9,
0x64,
},
})
Name(NCST, Package(0x03) {
0x02,
Package(0x04) {
Buffer(0x11) {0x82, 0xc, 0x0, 0x7f, 0x8, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 },
0x01,
0x01,
0x03e8,
},
Package(0x04) {
Buffer(0x11) {0x82, 0xc, 0x0, 0x1, 0x8, 0x0, 0x0, 0x14, 0x8,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x79, 0x0 },
0x02,
0x01,
0x01f4,
},
})
Method(_CST) {
Store(SMI(0x5e, 0x00), Local0)
If(LEqual(Local0, 0x00)) {
Return(NCST)
}
Return(DCST)
}
}
}
Name(\_S0, Package(0x03) {
0x00,
0x00,
0x00,
})
Name(\_S1, Package(0x03) {
0x02,
0x00,
0x00,
})
Name(\_S3, Package(0x03) {
0x05,
0x00,
0x00,
})
Name(\_S4, Package(0x03) {
0x07,
0x00,
0x00,
})
Name(\_S5, Package(0x03) {
0x07,
0x00,
0x00,
})
Scope(\_TZ) {
ThermalZone(THM) {
Method(_CRT) {
Store(0x63, Local0)
Multiply(Local0, 0x0a, Local0)
Add(Local0, 0x0aac, Local0)
Return(Local0)
}
Method(_TMP) {
Store(GINF(0x04), Local0)
Return(Local0)
}
Method(GINF, 1) {
SX10()
SX30(Arg0)
SX11()
Store(SX41(), Local0)
SX12()
If(LLess(Local0, 0x0ba6)) {
Store(0x0ba6, Local0)
}
Return(Local0)
}
}
}
Scope(\_SB) {
OperationRegion(SMIR, SystemIO, 0xb2, 0x02)
Field(SMIR, ByteAcc, NoLock, Preserve) {
SMIC, 8,
SMID, 8
}
OperationRegion(SMR2, SystemIO, 0x86, 0x01)
Field(SMR2, ByteAcc, NoLock, Preserve) {
SMIA, 8
}
Device(AC) {
Name(_HID, "ACPI0003")
Name(_PCL, Package(0x02) {
\_SB,
BAT0,
})
Method(_PSR) {
Store(SMI(0x85, 0x00), Local0)
And(Local0, 0x01, Local0)
Return(Local0)
}
Method(_STA) {
Return(0x0f)
}
}
Name(BIFP, Package(0x0d) {
})
Method(BIF, 1) {
SX10()
SX30(0x01)
SX30(Arg0)
SX11()
Store(SX42(), Index(BIFP, 0x00, ))
Store(SX42(), Index(BIFP, 0x01, ))
Store(SX42(), Index(BIFP, 0x02, ))
Store(SX42(), Index(BIFP, 0x03, ))
Store(SX42(), Index(BIFP, 0x04, ))
Store(SX42(), Index(BIFP, 0x05, ))
Store(SX42(), Index(BIFP, 0x06, ))
Store(SX42(), Index(BIFP, 0x07, ))
Store(SX42(), Index(BIFP, 0x08, ))
Store(SX45(), Index(BIFP, 0x09, ))
Store(SX45(), Index(BIFP, 0x0a, ))
Store(SX45(), Index(BIFP, 0x0b, ))
Store(SX45(), Index(BIFP, 0x0c, ))
SX12()
Return(BIFP)
}
Device(BAT0) {
Name(_HID, 0x0a0cd041)
Name(_UID, 0x01)
Name(_PCL, Package(0x01) {
\_SB,
})
Method(_STA) {
And(MIS0, 0x02, Local0)
If(Local0) {
Return(0x1f)
}
Return(0x0f)
}
Method(_BIF) {
Return(BIF(0x01))
}
Method(_BST) {
SX10()
SX30(0x02)
SX30(0x01)
SX11()
Name(BST0, Package(0x04) {
})
Store(SX42(), Index(BST0, 0x00, ))
Store(SX42(), Index(BST0, 0x01, ))
Store(SX42(), Index(BST0, 0x02, ))
Store(SX42(), Index(BST0, 0x03, ))
SX12()
Return(BST0)
}
Method(_BTP, 1) {
SX10()
SX30(0x03)
SX30(0x01)
SX32(Arg0)
SX11()
SX12()
Sleep(0xfa)
}
}
Device(LID) {
Name(_HID, 0x0d0cd041)
Method(_LID) {
Store(SMI(0x84, 0x00), Local0)
Return(Local0)
}
Name(_PRW, Package(0x02) {
0x1c,
0x03,
})
Method(_PSW, 1) {
PSW(Arg0, 0x02)
}
}
Device(PBTN) {
Name(_HID, 0x0c0cd041)
Name(_PRW, Package(0x02) {
0x1c,
0x04,
})
Method(_PSW, 1) {
PSW(Arg0, 0x01)
}
}
Device(SBTN) {
Name(_HID, 0x0e0cd041)
}
Device(MB1) {
Name(_HID, 0x010cd041)
Name(_UID, 0x01)
Method(_CRS) {
CRS3()
CR_0(0x01, 0x00, 0x0009fc00)
CR_0(0x01, 0x0009fc00, 0x0400)
If(LOr(LEqual(OSID(), 0x08), LEqual(OSID(), 0x10))) {
Store(GORL(), Local0)
CR_0(0x00, 0x000c0000, Local0)
}
CR_0(0x00, 0x000e0000, 0x00020000)
Store(GMEM(), Local0)
Subtract(Local0, 0x00010000, Local1)
CR_0(0x01, 0x00100000, Local1)
Add(Local1, 0x00100000, Local1)
CR_0(0x01, Local1, 0x00010000)
CR_0(0x00, 0xfec10000, 0x00010000)
CR_0(0x00, 0xfeda0000, 0x00060000)
CR_0(0x00, 0xffb00000, 0x00100000)
CR_5()
Return(CRS0)
}
}
Device(PCI0) {
Name(_HID, 0x030ad041)
Name(_ADR, 0x00)
Name(_PRW, Package(0x02) {
0x0b,
0x03,
})
Method(_INI) {
Store(SMI(0x98, 0x00), MIS0)
And(MIS0, Or(0x01, Or(0x02, 0x10, ), ), MIS0)
Store(SMI(0x87, 0x00), MIS2)
Store(0x01, MIS4)
SOST()
}
Method(_CRS) {
CRS3()
CR_2(0x00, 0x0100)
CR_3(0x00, 0x0cf8)
CR_1(0x0cf8, 0x0cf8, 0x01, 0x08)
CR_3(0x0d00, 0xf300)
CR_4(0x000a0000, 0x00020000)
CR_4(0x000d0000, 0x00010000)
Add(0x00100000, GMEM(), Local0)
Subtract(0xfec10000, Local0, Local1)
If(Local1) {
CR_4(Local0, Local1)
}
Subtract(0xfeda0000, 0xfec20000, Local1)
CR_4(0xfec20000, Local1)
Subtract(0xffb00000, 0xfee00000, Local1)
CR_4(0xfee00000, Local1)
CR_5()
Return(CRS0)
}
Device(MB2) {
Name(_HID, 0x010cd041)
Name(_UID, 0x02)
Name(CRS, Buffer(0x3d) {0x47, 0x1, 0x92, 0x0, 0x92, 0x0, 0x2, 0x1,
0x47, 0x1, 0xb2, 0x0, 0xb2, 0x0, 0x2, 0x1, 0x47, 0x1, 0x20, 0x0, 0x20, 0x0,
0x10, 0x2, 0x47, 0x1, 0xa0, 0x0, 0xa0, 0x0, 0x10, 0x2, 0x22, 0x4, 0x0, 0x47,
0x1, 0xd0, 0x4, 0xd0, 0x4, 0x10, 0x2, 0x47, 0x1, 0x0, 0x8, 0x0, 0x8, 0x10, 0x6,
0x47, 0x1, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x79, 0x0 })
Method(_CRS) {
Return(CRS)
}
}
Device(MB3) {
Name(_HID, 0x010cd041)
Name(_UID, 0x03)
Name(CRS, Buffer(0x4a) {0x47, 0x1, 0x0, 0xf4, 0x0, 0xf4, 0x1,
0xff, 0x47, 0x1, 0x86, 0x0, 0x86, 0x0, 0x2, 0x1, 0x47, 0x1, 0xb3, 0x0, 0xb3,
0x0, 0x1, 0x1, 0x47, 0x1, 0x6, 0x8, 0x6, 0x8, 0x2, 0x2, 0x47, 0x1, 0x10, 0x8,
0x10, 0x8, 0x10, 0x50, 0x47, 0x1, 0x60, 0x8, 0x60, 0x8, 0x10, 0x20, 0x47, 0x1,
0x80, 0x8, 0x80, 0x8, 0x10, 0x40, 0x47, 0x1, 0xc0, 0x8, 0xc0, 0x8, 0x10, 0x20,
0x47, 0x1, 0xe0, 0x8, 0xe0, 0x8, 0x10, 0x20, 0x79, 0x0 })
Method(_CRS) {
Return(CRS)
}
}
Device(ISAB) {
Name(_ADR, 0x001f0000)
OperationRegion(PIR1, PCI_Config, 0x60, 0x04)
OperationRegion(PIR2, PCI_Config, 0x68, 0x04)
OperationRegion(FDIS, PCI_Config, 0xf2, 0x02)
Device(PS2M) {
Name(_HID, 0x130fd041)
Name(CRS, Buffer(0x05) {0x22, 0x0, 0x10, 0x79, 0x0 })
Method(_CRS) {
Return(CRS)
}
}
Device(KBC) {
Name(_HID, 0x0303d041)
Name(CRS, Buffer(0x15) {0x47, 0x1, 0x60, 0x0, 0x60, 0x0, 0x10,
0x1, 0x47, 0x1, 0x64, 0x0, 0x64, 0x0, 0x4, 0x1, 0x22, 0x2, 0x0, 0x79, 0x0 })
Method(_CRS) {
Return(CRS)
}
}
Device(RTC) {
Name(_HID, 0x000bd041)
Name(CRS, Buffer(0x15) {0x47, 0x1, 0x70, 0x0, 0x70, 0x0, 0x10,
0x2, 0x22, 0x0, 0x1, 0x47, 0x1, 0x72, 0x0, 0x72, 0x0, 0x2, 0x6, 0x79, 0x0 })
Method(_CRS) {
Return(CRS)
}
}
Device(TMR) {
Name(_HID, 0x0001d041)
Name(CRS, Buffer(0x15) {0x47, 0x1, 0x40, 0x0, 0x40, 0x0, 0x10,
0x4, 0x22, 0x1, 0x0, 0x47, 0x1, 0x50, 0x0, 0x50, 0x0, 0x10, 0x4, 0x79, 0x0 })
Method(_CRS) {
Return(CRS)
}
}
Device(SPKR) {
Name(_HID, 0x0008d041)
Name(CRS, Buffer(0x22) {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, 0x79, 0x0 })
Method(_CRS) {
Return(CRS)
}
}
Device(MB4) {
Name(_HID, 0x010cd041)
Name(_UID, 0x04)
Name(CRS, Buffer(0x1a) {0x47, 0x1, 0x2e, 0x0, 0x2e, 0x0, 0x2,
0x2, 0x47, 0x1, 0x4e, 0x0, 0x4e, 0x0, 0x2, 0x2, 0x47, 0x1, 0x0, 0x9, 0x0, 0x9,
0x10, 0x80, 0x79, 0x0 })
Method(_CRS) {
Return(CRS)
}
}
Device(PIC) {
Name(_HID, 0xd041)
Name(CRS, Buffer(0x72) {0x47, 0x1, 0x24, 0x0, 0x24, 0x0, 0x4,
0x2, 0x47, 0x1, 0x28, 0x0, 0x28, 0x0, 0x4, 0x2, 0x47, 0x1, 0x2c, 0x0, 0x2c,
0x0, 0x4, 0x2, 0x47, 0x1, 0x30, 0x0, 0x30, 0x0, 0x4, 0x2, 0x47, 0x1, 0x34, 0x0,
0x34, 0x0, 0x4, 0x2, 0x47, 0x1, 0x38, 0x0, 0x38, 0x0, 0x4, 0x2, 0x47, 0x1,
0x3c, 0x0, 0x3c, 0x0, 0x4, 0x2, 0x47, 0x1, 0xa4, 0x0, 0xa4, 0x0, 0x4, 0x2,
0x47, 0x1, 0xa8, 0x0, 0xa8, 0x0, 0x4, 0x2, 0x47, 0x1, 0xac, 0x0, 0xac, 0x0,
0x4, 0x2, 0x47, 0x1, 0xb0, 0x0, 0xb0, 0x0, 0x4, 0x2, 0x47, 0x1, 0xb4, 0x0,
0xb4, 0x0, 0x4, 0x2, 0x47, 0x1, 0xb8, 0x0, 0xb8, 0x0, 0x4, 0x2, 0x47, 0x1,
0xbc, 0x0, 0xbc, 0x0, 0x4, 0x2, 0x79, 0x0 })
Method(_CRS) {
Return(CRS)
}
}
Device(MAD) {
Name(_HID, 0x0002d041)
Name(CRS, Buffer(0x3d) {0x2a, 0x10, 0x4, 0x47, 0x1, 0x0, 0x0,
0x0, 0x0, 0x10, 0x10, 0x47, 0x1, 0x80, 0x0, 0x80, 0x0, 0x10, 0x6, 0x47, 0x1,
0x87, 0x0, 0x87, 0x0, 0x1, 0x9, 0x47, 0x1, 0xc0, 0x0, 0xc0, 0x0, 0x10, 0x20,
0x47, 0x1, 0x10, 0x0, 0x10, 0x0, 0x10, 0x10, 0x47, 0x1, 0x90, 0x0, 0x90, 0x0,
0x10, 0x2, 0x47, 0x1, 0x93, 0x0, 0x93, 0x0, 0x1, 0xd, 0x79, 0x0 })
Method(_CRS) {
Return(CRS)
}
}
Device(COPR) {
Name(_HID, 0x040cd041)
Name(CRS, Buffer(0x0d) {0x47, 0x1, 0xf0, 0x0, 0xf0, 0x0, 0x10,
0x10, 0x22, 0x0, 0x20, 0x79, 0x0 })
Method(_CRS) {
Return(CRS)
}
}
Device(UAR1) {
Name(_HID, 0x0105d041)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
Method(_STA) {
Store(PNPQ(0x02), Local1)
Return(Local1)
}
Method(_DIS) {
PNPD(0x02)
}
Method(_CRS) {
Return(PNPG(0x02))
}
Method(_PRS) {
Name(BUF0, Buffer(0x3b) {0x31, 0x5, 0x23, 0x58, 0x10,
0x11, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x8, 0x8, 0x31, 0x5, 0x23, 0x58, 0x10,
0x11, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x8, 0x8, 0x31, 0x5, 0x23, 0x58, 0x10,
0x11, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x8, 0x8, 0x31, 0x5, 0x23, 0x58, 0x10,
0x11, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2, 0x8, 0x8, 0x38, 0x79, 0x0 })
Return(BUF0)
}
Method(_SRS, 1) {
PNPS(0x02, Arg0)
}
}
Device(ECP) {
Name(_HID, 0x0104d041)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
Method(_STA) {
Store(PNPQ(0x01), Local1)
Return(Local1)
}
Method(_DIS) {
PNPD(0x01)
}
Method(_CRS) {
Return(PNPG(0x01))
}
Name(_PRS, Buffer(0xd2) {0x30, 0x2a, 0x0, 0x0, 0x22, 0xb8,
0x0, 0x47, 0x1, 0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78,
0x7, 0x8, 0x4, 0x30, 0x2a, 0xe, 0x0, 0x22, 0x80, 0x0, 0x47, 0x1, 0x78, 0x3,
0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x4, 0x30, 0x2a,
0x0, 0x0, 0x22, 0xb8, 0x0, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8, 0x8, 0x47,
0x1, 0x78, 0x6, 0x78, 0x6, 0x8, 0x4, 0x30, 0x2a, 0xe, 0x0, 0x22, 0xb8, 0x0,
0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6,
0x8, 0x4, 0x30, 0x2a, 0x0, 0x0, 0x22, 0xb8, 0x0, 0x47, 0x1, 0xbc, 0x3, 0xbc,
0x3, 0x4, 0x4, 0x47, 0x1, 0xbc, 0x7, 0xbc, 0x7, 0x4, 0x4, 0x30, 0x2a, 0xe, 0x0,
0x22, 0xb8, 0x0, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x4, 0x4, 0x47, 0x1, 0xbc,
0x7, 0xbc, 0x7, 0x4, 0x4, 0x30, 0x2a, 0x0, 0x0, 0x22, 0x0, 0x0, 0x47, 0x1,
0x78, 0x3, 0x78, 0x3, 0x8, 0x8, 0x47, 0x1, 0x78, 0x7, 0x78, 0x7, 0x8, 0x4,
0x30, 0x2a, 0x0, 0x0, 0x22, 0x0, 0x0, 0x47, 0x1, 0x78, 0x2, 0x78, 0x2, 0x8
!
, 0x8, 0x47, 0x1, 0x78, 0x6, 0x78, 0x6, 0x8, 0x4, 0x30, 0x2a, 0x0, 0x0, 0x22,
0x0, 0x0, 0x47, 0x1, 0xbc, 0x3, 0xbc, 0x3, 0x4, 0x4, 0x47, 0x1, 0xbc, 0x7,
0xbc, 0x7, 0x4, 0x4, 0x38, 0x79, 0x0 })
Method(_SRS, 1) {
PNPS(0x01, Arg0)
}
}
Device(IRDA) {
Name(_HID, 0x10f0a34d)
Method(_STA) {
Store(PNPQ(0x03), Local0)
Return(Local0)
}
Method(_DIS) {
PNPD(0x03)
}
Method(_CRS) {
Return(PNPG(0x03))
}
Name(_PRS, Buffer(0x0100) {0x30, 0x22, 0x10, 0x0, 0x47, 0x1,
0xe8, 0x3, 0xe8, 0x3, 0x8, 0x8, 0x47, 0x1, 0x70, 0x2, 0x0, 0x4, 0x8, 0x8, 0x2a,
0xe, 0x0, 0x30, 0x22, 0x10, 0x0, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x8, 0x8,
0x47, 0x1, 0x70, 0x2, 0x0, 0x4, 0x8, 0x8, 0x2a, 0x0, 0x0, 0x30, 0x22, 0x58,
0x10, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x8, 0x8, 0x47, 0x1, 0x70, 0x2, 0x0,
0x4, 0x8, 0x8, 0x2a, 0xe, 0x0, 0x30, 0x22, 0x58, 0x10, 0x47, 0x1, 0xf8, 0x3,
0xf8, 0x3, 0x8, 0x8, 0x47, 0x1, 0x70, 0x2, 0x0, 0x4, 0x8, 0x8, 0x2a, 0xe, 0x0,
0x30, 0x22, 0x58, 0x10, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x8, 0x8, 0x47, 0x1,
0x70, 0x2, 0x0, 0x4, 0x8, 0x8, 0x2a, 0xe, 0x0, 0x30, 0x22, 0x58, 0x10, 0x47,
0x1, 0xe8, 0x2, 0xe8, 0x2, 0x8, 0x8, 0x47, 0x1, 0x70, 0x2, 0x0, 0x4, 0x8, 0x8,
0x2a, 0xe, 0x0, 0x30, 0x22, 0x58, 0x10, 0x47, 0x1, 0xf8, 0x3, 0xf8, 0x3, 0x8,
0x8, 0x47, 0x1, 0x70, 0x2, 0x0, 0x4, 0x8, 0x8, 0x2a, 0x0, 0x0, 0x30, 0x22,
0x58, 0x10, 0x47, 0x1, 0xf8, 0x2, 0xf8, 0x2, 0x8, 0x8, 0x47,
!
0x1, 0x70, 0x2, 0x0, 0x4, 0x8, 0x8, 0x2a, 0x0, 0x0, 0x30, 0x22, 0x58, 0x10,
0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x8, 0x8, 0x47, 0x1, 0x70, 0x2, 0x0, 0x4, 0x8,
0x8, 0x2a, 0x0, 0x0, 0x30, 0x22, 0x58, 0x10, 0x47, 0x1, 0xe8, 0x2, 0xe8, 0x2,
0x8, 0x8, 0x47, 0x1, 0x70, 0x2, 0x0, 0x4, 0x8, 0x8, 0x2a, 0x0, 0x0, 0x30, 0x22,
0x58, 0x10, 0x47, 0x1, 0xe8, 0x3, 0xe8, 0x3, 0x8, 0x8, 0x47, 0x1, 0x0, 0x0,
0x0, 0x0, 0x8, 0x0, 0x2a, 0x0, 0x0, 0x38, 0x79, 0x0 })
Method(_SRS, 1) {
PNPS(0x03, Arg0)
}
}
}
Device(USB0) {
Name(_ADR, 0x001d0000)
Method(_S0D) {
Store(SMI(0x85, 0x00), Local0)
And(Local0, 0x01, Local0)
If(LEqual(Local0, 0x00)) {
Return(0x03)
}
Else {
Return(0x00)
}
}
Name(XPRW, Package(0x02) {
0x03,
0x01,
})
Method(_PRW) {
Return(XPRW)
}
Device(HUB0) {
Name(_ADR, 0x00)
Device(CH0) {
Name(_ADR, 0x01)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
Device(CH1) {
Name(_ADR, 0x02)
}
}
}
Device(USB1) {
Name(_ADR, 0x001d0001)
Method(_S0D) {
Store(SMI(0x85, 0x00), Local0)
And(Local0, 0x01, Local0)
If(LEqual(Local0, 0x00)) {
Return(0x03)
}
Else {
Return(0x00)
}
}
Name(XPRW, Package(0x02) {
0x04,
0x01,
})
Name(YPRW, Package(0x02) {
0x04,
0x00,
})
Method(_PRW) {
If(LEqual(OSID(), 0x04)) {
Return(YPRW)
}
Else {
Return(XPRW)
}
}
Device(HUB1) {
Name(_ADR, 0x00)
Device(CH10) {
Name(_ADR, 0x01)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
Device(CH11) {
Name(_ADR, 0x02)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
}
}
Device(USB2) {
Name(_ADR, 0x001d0002)
Method(_S0D) {
Store(SMI(0x85, 0x00), Local0)
And(Local0, 0x01, Local0)
If(LEqual(Local0, 0x00)) {
Return(0x03)
}
Else {
Return(0x00)
}
}
Name(XPRW, Package(0x02) {
0x0c,
0x01,
})
Method(_PRW) {
Return(XPRW)
}
Device(HUB2) {
Name(_ADR, 0x00)
Device(CH20) {
Name(_ADR, 0x01)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
Device(CH21) {
Name(_ADR, 0x02)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
}
}
Device(USB3) {
Name(_ADR, 0x001d0007)
Method(_S0D) {
Store(SMI(0x85, 0x00), Local0)
And(Local0, 0x01, Local0)
If(LEqual(Local0, 0x00)) {
Return(0x03)
}
Else {
Return(0x00)
}
}
Name(_S1D, 0x02)
Name(_S3D, 0x02)
Name(XPRW, Package(0x02) {
0x0d,
0x01,
})
Method(_PRW) {
Return(XPRW)
}
Device(HUB3) {
Name(_ADR, 0x00)
Device(CH30) {
Name(_ADR, 0x01)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
Device(CH31) {
Name(_ADR, 0x02)
}
Device(CH32) {
Name(_ADR, 0x03)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
Device(CH33) {
Name(_ADR, 0x04)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
Device(CH34) {
Name(_ADR, 0x05)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
Device(CH35) {
Name(_ADR, 0x06)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
Device(CH36) {
Name(_ADR, 0x07)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
Device(CH37) {
Name(_ADR, 0x08)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
}
}
Scope(\_SB) {
}
Name(PIC0, Package(0x09) {
Package(0x04) {
0x001fffff,
0x00,
\_SB.PCI0.LNKA,
0x00,
},
Package(0x04) {
0x001fffff,
0x01,
\_SB.PCI0.LNKB,
0x00,
},
Package(0x04) {
0x001fffff,
0x02,
\_SB.PCI0.LNKC,
0x00,
},
Package(0x04) {
0x001fffff,
0x03,
\_SB.PCI0.LNKD,
0x00,
},
Package(0x04) {
0x001dffff,
0x00,
\_SB.PCI0.LNKA,
0x00,
},
Package(0x04) {
0x001dffff,
0x01,
\_SB.PCI0.LNKD,
0x00,
},
Package(0x04) {
0x001dffff,
0x02,
\_SB.PCI0.LNKC,
0x00,
},
Package(0x04) {
0x001dffff,
0x03,
\_SB.PCI0.LNKH,
0x00,
},
Package(0x04) {
0x0002ffff,
0x00,
\_SB.PCI0.LNKA,
0x00,
},
})
Method(_PRT) {
Store(PIC0, Local0)
Return(Local0)
}
Field(\_SB.PCI0.ISAB.PIR1, ByteAcc, NoLock, Preserve) {
PIRA, 8,
PIRB, 8,
PIRC, 8,
PIRD, 8
}
Field(\_SB.PCI0.ISAB.PIR2, ByteAcc, NoLock, Preserve) {
PIRE, 8,
PIRF, 8,
PIRG, 8,
PIRH, 8
}
Device(LNKA) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x01)
Name(_PRS, Buffer(0x06) {0x23, 0x0, 0xe, 0x18, 0x79, 0x0 })
Method(_STA) {
Store(PIRA, Local0)
And(Local0, 0x80, Local0)
If(LEqual(Local0, 0x80)) {
Return(0x09)
}
Return(0x0b)
}
Method(_DIS) {
Store(PIRA, Local0)
Or(Local0, 0x80, Local0)
Store(Local0, PIRA)
}
Method(_CRS) {
Name(BUFA, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(BUFA, 0x01, IRA)
Store(PIRA, Local0)
And(Local0, 0x8f, Local0)
If(LLess(Local0, 0x80)) {
And(Local0, 0x0f, )
Store(0x01, Local1)
ShiftLeft(Local1, Local0, Local1)
Store(Local1, IRA)
}
Return(BUFA)
}
Method(_SRS, 1) {
CreateWordField(Arg0, 0x01, IRQA)
FindSetLeftBit(IRQA, Local0)
Decrement(Local0)
Store(Local0, PIRA)
}
}
Device(LNKB) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x02)
Name(_PRS, Buffer(0x06) {0x23, 0xa0, 0x0, 0x18, 0x79, 0x0 })
Method(_STA) {
Store(PIRB, Local0)
And(Local0, 0x80, Local0)
If(LEqual(Local0, 0x80)) {
Return(0x09)
}
Return(0x0b)
}
Method(_DIS) {
Store(PIRB, Local0)
Or(Local0, 0x80, Local0)
Store(Local0, PIRB)
}
Method(_CRS) {
Name(BUFB, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(BUFB, 0x01, IRB)
Store(PIRB, Local0)
And(Local0, 0x8f, Local0)
If(LLess(Local0, 0x80)) {
And(Local0, 0x0f, )
Store(0x01, Local1)
ShiftLeft(Local1, Local0, Local1)
Store(Local1, IRB)
}
Return(BUFB)
}
Method(_SRS, 1) {
CreateWordField(Arg0, 0x01, IRQB)
FindSetLeftBit(IRQB, Local0)
Decrement(Local0)
Store(Local0, PIRB)
}
}
Device(LNKC) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x03)
Name(_PRS, Buffer(0x06) {0x23, 0x0, 0xe, 0x18, 0x79, 0x0 })
Method(_STA) {
Store(PIRC, Local0)
And(Local0, 0x80, Local0)
If(LEqual(Local0, 0x80)) {
Return(0x09)
}
Return(0x0b)
}
Method(_DIS) {
Store(PIRC, Local0)
Or(Local0, 0x80, Local0)
Store(Local0, PIRC)
}
Method(_CRS) {
Name(BUFC, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(BUFC, 0x01, IRC)
Store(PIRC, Local0)
And(Local0, 0x8f, Local0)
If(LLess(Local0, 0x80)) {
And(Local0, 0x0f, )
Store(0x01, Local1)
ShiftLeft(Local1, Local0, Local1)
Store(Local1, IRC)
}
Return(BUFC)
}
Method(_SRS, 1) {
CreateWordField(Arg0, 0x01, IRQC)
FindSetLeftBit(IRQC, Local0)
Decrement(Local0)
Store(Local0, PIRC)
}
}
Device(LNKD) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x04)
Name(_PRS, Buffer(0x06) {0x23, 0xa0, 0xe, 0x18, 0x79, 0x0 })
Method(_STA) {
Store(PIRD, Local0)
And(Local0, 0x80, Local0)
If(LEqual(Local0, 0x80)) {
Return(0x09)
}
Return(0x0b)
}
Method(_DIS) {
Store(PIRD, Local0)
Or(Local0, 0x80, Local0)
Store(Local0, PIRD)
}
Method(_CRS) {
Name(BUFD, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(BUFD, 0x01, IRD)
Store(PIRD, Local0)
And(Local0, 0x8f, Local0)
If(LLess(Local0, 0x80)) {
And(Local0, 0x0f, )
Store(0x01, Local1)
ShiftLeft(Local1, Local0, Local1)
Store(Local1, IRD)
}
Return(BUFD)
}
Method(_SRS, 1) {
CreateWordField(Arg0, 0x01, IRQD)
FindSetLeftBit(IRQD, Local0)
Decrement(Local0)
Store(Local0, PIRD)
}
}
Device(LNKE) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x05)
Name(_PRS, Buffer(0x06) {0x23, 0xf8, 0xde, 0x18, 0x79, 0x0 })
Method(_STA) {
Store(PIRE, Local0)
And(Local0, 0x80, Local0)
If(LEqual(Local0, 0x80)) {
Return(0x09)
}
Return(0x0b)
}
Method(_DIS) {
Store(PIRE, Local0)
Or(Local0, 0x80, Local0)
Store(Local0, PIRE)
}
Method(_CRS) {
Name(BUFE, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(BUFE, 0x01, IRE)
Store(PIRE, Local0)
And(Local0, 0x8f, Local0)
If(LLess(Local0, 0x80)) {
And(Local0, 0x0f, )
Store(0x01, Local1)
ShiftLeft(Local1, Local0, Local1)
Store(Local1, IRE)
}
Return(BUFE)
}
Method(_SRS, 1) {
CreateWordField(Arg0, 0x01, IRQE)
FindSetLeftBit(IRQE, Local0)
Decrement(Local0)
Store(Local0, PIRE)
}
}
Device(LNKH) {
Name(_HID, 0x0f0cd041)
Name(_UID, 0x08)
Name(_PRS, Buffer(0x06) {0x23, 0xf8, 0xde, 0x18, 0x79, 0x0 })
Method(_STA) {
Store(PIRH, Local0)
And(Local0, 0x80, Local0)
If(LEqual(Local0, 0x80)) {
Return(0x09)
}
Return(0x0b)
}
Method(_DIS) {
Store(PIRH, Local0)
Or(Local0, 0x80, Local0)
Store(Local0, PIRH)
}
Method(_CRS) {
Name(BUFH, Buffer(0x06) {0x23, 0x0, 0x0, 0x18, 0x79, 0x0 })
CreateWordField(BUFH, 0x01, IRH)
Store(PIRH, Local0)
And(Local0, 0x8f, Local0)
If(LLess(Local0, 0x80)) {
And(Local0, 0x0f, )
Store(0x01, Local1)
ShiftLeft(Local1, Local0, Local1)
Store(Local1, IRH)
}
Return(BUFH)
}
Method(_SRS, 1) {
CreateWordField(Arg0, 0x01, IRQH)
FindSetLeftBit(IRQH, Local0)
Decrement(Local0)
Store(Local0, PIRH)
}
}
Device(IDE0) {
Name(_ADR, 0x001f0001)
Method(_STA) {
Return(0x0f)
}
Device(PRI) {
Name(_ADR, 0x00)
Method(_STA) {
Return(0x0f)
}
}
Device(SEC0) {
Name(_ADR, 0x01)
Method(_STA) {
Return(0x0f)
}
}
}
Device(AUD) {
Name(_ADR, 0x001f0005)
}
Device(MODM) {
Name(_ADR, 0x001f0006)
Name(_PRW, Package(0x02) {
0x05,
0x03,
})
}
Device(VID) {
Name(_ADR, 0x00020000)
Method(_DOS, 1) {
Store(Arg0, MIS4)
SMI(0x9e, MIS4)
}
Method(_DOD) {
Return(Package(0x04) {
0x00010100,
0x00010200,
0x00010400,
0x00010300,
})
}
Device(TV) {
Method(_ADR) {
Return(0x0200)
}
Method(_DCS) {
Store(SMI(0x8e, 0x04), Local0)
Return(Local0)
}
Method(_DGS) {
Store(SMI(0x99, 0x04), Local0)
Return(Local0)
}
Method(_DSS, 1) {
DSS(0x04, Arg0)
}
}
Device(CRT) {
Method(_ADR) {
Return(0x0100)
}
Method(_DCS) {
Store(SMI(0x8e, 0x02), Local0)
Return(Local0)
}
Method(_DGS) {
Store(SMI(0x99, 0x02), Local0)
Return(Local0)
}
Method(_DSS, 1) {
DSS(0x02, Arg0)
}
}
Device(CRT2) {
Method(_ADR) {
Store(SMI(0x6d, 0x00), Local0)
If(LEqual(Local0, 0x01)) {
Return(0x0120)
}
Else {
Return(0x0101)
}
}
Method(_DCS) {
Store(SMI(0x8e, 0x20), Local0)
Return(Local0)
}
Method(_DGS) {
Store(SMI(0x99, 0x20), Local0)
Return(Local0)
}
Method(_DSS, 1) {
DSS(0x20, Arg0)
}
}
Device(LCD) {
Method(_ADR) {
Return(0x0400)
}
Method(_DCS) {
Store(SMI(0x8e, 0x01), Local0)
Return(Local0)
}
Method(_DGS) {
Store(SMI(0x99, 0x01), Local0)
Return(Local0)
}
Method(_DSS, 1) {
DSS(0x01, Arg0)
}
}
Device(DVI) {
Method(_ADR) {
Return(0x0300)
}
Method(_DCS) {
Store(SMI(0x8e, 0x08), Local0)
Return(Local0)
}
Method(_DGS) {
Store(SMI(0x99, 0x08), Local0)
Return(Local0)
}
Method(_DSS, 1) {
DSS(0x08, Arg0)
}
}
}
Device(VID2) {
Name(_ADR, 0x00020001)
Method(_DOS, 1) {
}
Method(_DOD) {
Return(Package(0x00) {
})
}
}
Device(MB7) {
Name(_HID, 0x010cd041)
Name(_UID, 0x07)
Method(_STA) {
If(LEqual(OSID(), 0x08)) {
Return(0x0b)
}
If(LEqual(OSID(), 0x10)) {
Return(0x0b)
}
Return(0x00)
}
Name(_CRS, Buffer(0x03f2) {0x47, 0x1, 0xb0, 0x7, 0xb0, 0x7, 0x10,
0xc, 0x47, 0x1, 0xc0, 0x7, 0xc0, 0x7, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xb, 0xb0,
0xb, 0x10, 0xc, 0x47, 0x1, 0xc0, 0xb, 0xc0, 0xb, 0x10, 0x20, 0x47, 0x1, 0xb0,
0xf, 0xb0, 0xf, 0x10, 0xc, 0x47, 0x1, 0xc0, 0xf, 0xc0, 0xf, 0x10, 0x20, 0x47,
0x1, 0xb0, 0x13, 0xb0, 0x13, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x13, 0xc0, 0x13,
0x10, 0x20, 0x47, 0x1, 0xb0, 0x17, 0xb0, 0x17, 0x10, 0xc, 0x47, 0x1, 0xc0,
0x17, 0xc0, 0x17, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x1b, 0xb0, 0x1b, 0x10, 0xc,
0x47, 0x1, 0xc0, 0x1b, 0xc0, 0x1b, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x1f, 0xb0,
0x1f, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x1f, 0xc0, 0x1f, 0x10, 0x20, 0x47, 0x1,
0xb0, 0x23, 0xb0, 0x23, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x23, 0xc0, 0x23, 0x10,
0x20, 0x47, 0x1, 0xb0, 0x27, 0xb0, 0x27, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x27,
0xc0, 0x27, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x2b, 0xb0, 0x2b, 0x10, 0xc, 0x47,
0x1, 0xc0, 0x2b, 0xc0, 0x2b, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x2f, 0xb0, 0x2
!
f, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x2f, 0xc0, 0x2f, 0x10, 0x20, 0x47, 0x1, 0xb0,
0x33, 0xb0, 0x33, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x33, 0xc0, 0x33, 0x10, 0x20,
0x47, 0x1, 0xb0, 0x37, 0xb0, 0x37, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x37, 0xc0,
0x37, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x3b, 0xb0, 0x3b, 0x10, 0xc, 0x47, 0x1,
0xc0, 0x3b, 0xc0, 0x3b, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x3f, 0xb0, 0x3f, 0x10,
0xc, 0x47, 0x1, 0xc0, 0x3f, 0xc0, 0x3f, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x43,
0xb0, 0x43, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x43, 0xc0, 0x43, 0x10, 0x20, 0x47,
0x1, 0xb0, 0x47, 0xb0, 0x47, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x47, 0xc0, 0x47,
0x10, 0x20, 0x47, 0x1, 0xb0, 0x4b, 0xb0, 0x4b, 0x10, 0xc, 0x47, 0x1, 0xc0,
0x4b, 0xc0, 0x4b, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x4f, 0xb0, 0x4f, 0x10, 0xc,
0x47, 0x1, 0xc0, 0x4f, 0xc0, 0x4f, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x53, 0xb0,
0x53, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x53, 0xc0, 0x53, 0x10, 0x20, 0x47, 0x1,
0xb0, 0x57, 0xb0, 0x57, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x57, 0xc0, 0x57, 0x10, 0x2
!
0, 0x47, 0x1, 0xb0, 0x5b, 0xb0, 0x5b, 0x10, 0xc, 0x47, 0x1, 0x!
c0, 0x5b
, 0xc0, 0x5b, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x5f, 0xb0, 0x5f, 0x10, 0xc, 0x47,
0x1, 0xc0, 0x5f, 0xc0, 0x5f, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x63, 0xb0, 0x63,
0x10, 0xc, 0x47, 0x1, 0xc0, 0x63, 0xc0, 0x63, 0x10, 0x20, 0x47, 0x1, 0xb0,
0x67, 0xb0, 0x67, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x67, 0xc0, 0x67, 0x10, 0x20,
0x47, 0x1, 0xb0, 0x6b, 0xb0, 0x6b, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x6b, 0xc0,
0x6b, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x6f, 0xb0, 0x6f, 0x10, 0xc, 0x47, 0x1,
0xc0, 0x6f, 0xc0, 0x6f, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x73, 0xb0, 0x73, 0x10,
0xc, 0x47, 0x1, 0xc0, 0x73, 0xc0, 0x73, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x77,
0xb0, 0x77, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x77, 0xc0, 0x77, 0x10, 0x20, 0x47,
0x1, 0xb0, 0x7b, 0xb0, 0x7b, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x7b, 0xc0, 0x7b,
0x10, 0x20, 0x47, 0x1, 0xb0, 0x7f, 0xb0, 0x7f, 0x10, 0xc, 0x47, 0x1, 0xc0,
0x7f, 0xc0, 0x7f, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x83, 0xb0, 0x83, 0x10, 0xc,
0x47, 0x1, 0xc0, 0x83, 0xc0, 0x83, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x87, 0xb0, 0x87
!
, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x87, 0xc0, 0x87, 0x10, 0x20, 0x47, 0x1, 0xb0,
0x8b, 0xb0, 0x8b, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x8b, 0xc0, 0x8b, 0x10, 0x20,
0x47, 0x1, 0xb0, 0x8f, 0xb0, 0x8f, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x8f, 0xc0,
0x8f, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x93, 0xb0, 0x93, 0x10, 0xc, 0x47, 0x1,
0xc0, 0x93, 0xc0, 0x93, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x97, 0xb0, 0x97, 0x10,
0xc, 0x47, 0x1, 0xc0, 0x97, 0xc0, 0x97, 0x10, 0x20, 0x47, 0x1, 0xb0, 0x9b,
0xb0, 0x9b, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x9b, 0xc0, 0x9b, 0x10, 0x20, 0x47,
0x1, 0xb0, 0x9f, 0xb0, 0x9f, 0x10, 0xc, 0x47, 0x1, 0xc0, 0x9f, 0xc0, 0x9f,
0x10, 0x20, 0x47, 0x1, 0xb0, 0xa3, 0xb0, 0xa3, 0x10, 0xc, 0x47, 0x1, 0xc0,
0xa3, 0xc0, 0xa3, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xa7, 0xb0, 0xa7, 0x10, 0xc,
0x47, 0x1, 0xc0, 0xa7, 0xc0, 0xa7, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xab, 0xb0,
0xab, 0x10, 0xc, 0x47, 0x1, 0xc0, 0xab, 0xc0, 0xab, 0x10, 0x20, 0x47, 0x1,
0xb0, 0xaf, 0xb0, 0xaf, 0x10, 0xc, 0x47, 0x1, 0xc0, 0xaf, 0xc0, 0xaf, 0x10, 0x20
!
, 0x47, 0x1, 0xb0, 0xb3, 0xb0, 0xb3, 0x10, 0xc, 0x47, 0x1, 0xc!
0, 0xb3,
0xc0, 0xb3, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xb7, 0xb0, 0xb7, 0x10, 0xc, 0x47,
0x1, 0xc0, 0xb7, 0xc0, 0xb7, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xbb, 0xb0, 0xbb,
0x10, 0xc, 0x47, 0x1, 0xc0, 0xbb, 0xc0, 0xbb, 0x10, 0x20, 0x47, 0x1, 0xb0,
0xbf, 0xb0, 0xbf, 0x10, 0xc, 0x47, 0x1, 0xc0, 0xbf, 0xc0, 0xbf, 0x10, 0x20,
0x47, 0x1, 0xb0, 0xc3, 0xb0, 0xc3, 0x10, 0xc, 0x47, 0x1, 0xc0, 0xc3, 0xc0,
0xc3, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xc7, 0xb0, 0xc7, 0x10, 0xc, 0x47, 0x1,
0xc0, 0xc7, 0xc0, 0xc7, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xcb, 0xb0, 0xcb, 0x10,
0xc, 0x47, 0x1, 0xc0, 0xcb, 0xc0, 0xcb, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xcf,
0xb0, 0xcf, 0x10, 0xc, 0x47, 0x1, 0xc0, 0xcf, 0xc0, 0xcf, 0x10, 0x20, 0x47,
0x1, 0xb0, 0xd3, 0xb0, 0xd3, 0x10, 0xc, 0x47, 0x1, 0xc0, 0xd3, 0xc0, 0xd3,
0x10, 0x20, 0x47, 0x1, 0xb0, 0xd7, 0xb0, 0xd7, 0x10, 0xc, 0x47, 0x1, 0xc0,
0xd7, 0xc0, 0xd7, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xdb, 0xb0, 0xdb, 0x10, 0xc,
0x47, 0x1, 0xc0, 0xdb, 0xc0, 0xdb, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xdf, 0xb0,
0xdf,
!
0x10, 0xc, 0x47, 0x1, 0xc0, 0xdf, 0xc0, 0xdf, 0x10, 0x20, 0x47, 0x1, 0xb0,
0xe3, 0xb0, 0xe3, 0x10, 0xc, 0x47, 0x1, 0xc0, 0xe3, 0xc0, 0xe3, 0x10, 0x20,
0x47, 0x1, 0xb0, 0xe7, 0xb0, 0xe7, 0x10, 0xc, 0x47, 0x1, 0xc0, 0xe7, 0xc0,
0xe7, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xeb, 0xb0, 0xeb, 0x10, 0xc, 0x47, 0x1,
0xc0, 0xeb, 0xc0, 0xeb, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xef, 0xb0, 0xef, 0x10,
0xc, 0x47, 0x1, 0xc0, 0xef, 0xc0, 0xef, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xf3,
0xb0, 0xf3, 0x10, 0xc, 0x47, 0x1, 0xc0, 0xf3, 0xc0, 0xf3, 0x10, 0x20, 0x47,
0x1, 0xb0, 0xf7, 0xb0, 0xf7, 0x10, 0xc, 0x47, 0x1, 0xc0, 0xf7, 0xc0, 0xf7,
0x10, 0x20, 0x47, 0x1, 0xb0, 0xfb, 0xb0, 0xfb, 0x10, 0xc, 0x47, 0x1, 0xc0,
0xfb, 0xc0, 0xfb, 0x10, 0x20, 0x47, 0x1, 0xb0, 0xff, 0xb0, 0xff, 0x10, 0xc,
0x47, 0x1, 0xc0, 0xff, 0xc0, 0xff, 0x10, 0x20, 0x79, 0x0 })
}
Device(PCIE) {
Name(_ADR, 0x001e0000)
Name(_PRW, Package(0x02) {
0x0b,
0x04,
})
Name(PICE, Package(0x07) {
Package(0x04) {
0x0001ffff,
0x00,
\_SB.PCI0.LNKD,
0x00,
},
Package(0x04) {
0x0001ffff,
0x01,
\_SB.PCI0.LNKD,
0x00,
},
Package(0x04) {
0x0003ffff,
0x00,
\_SB.PCI0.LNKB,
0x00,
},
Package(0x04) {
0x0003ffff,
0x01,
\_SB.PCI0.LNKD,
0x00,
},
Package(0x04) {
0xffff,
0x00,
\_SB.PCI0.LNKC,
0x00,
},
Package(0x04) {
0x0008ffff,
0x00,
\_SB.PCI0.LNKB,
0x00,
},
Package(0x04) {
0x0008ffff,
0x01,
\_SB.PCI0.LNKB,
0x00,
},
})
Method(_PRT) {
Store(PICE, Local0)
Return(Local0)
}
Device(CRD0) {
Name(_ADR, 0x00010000)
Method(_INI) {
SMI(0x95, 0x04)
}
Name(_S1D, 0x00)
Name(_S3D, 0x03)
}
Device(CRD1) {
Name(_ADR, 0x00010001)
Method(_INI) {
SMI(0x9d, 0x04)
}
Name(_S1D, 0x00)
Name(_S3D, 0x03)
}
Device(GDCK) {
Name(_HID, 0x150cd041)
Method(_STA) {
If(And(MIS5, 0x01, )) {
Store(SMI(0x87, 0x00), Local2)
If(Local2) {
Notify(\_SB.PCI0.PCIE.GDCK, 0x00)
Return(0x00)
}
}
Store(SMI(0x87, 0x00), Local0)
If(Local0) {
Return(0x0f)
}
Return(0x00)
}
Method(_UID) {
SX10()
SX30(0x05)
SX30(OSID())
SX11()
Store(SX42(), Local0)
SX12()
Return(Local0)
}
Method(_BDN) {
Store(SMI(0x87, 0x00), Local0)
If(LEqual(Local0, 0x01)) {
Return(0x0c80ac10)
}
If(LEqual(Local0, 0x02)) {
Return(0x0d80ac10)
}
Return(0x00)
}
Method(_EJ0, 1) {
Store(SMI(0x87, 0x00), MIS7)
If(MIS7) {
SMI(0xa6, 0x02)
SMI(0x49, 0x01)
Wait(EJTD, 0xa000)
SMI(0x49, 0x00)
}
Return(0x00)
}
Method(_EJ3, 1) {
SMI(0xa6, 0x01)
Return(0x00)
}
Method(_EJ4, 1) {
SMI(0xa6, 0x01)
Return(0x00)
}
Method(_DCK, 1) {
If(Arg0) {
SMI(0x8d, 0x01)
Store(0x00, MIS5)
}
Else {
SMI(0x8d, 0x00)
Store(0x00, MIS2)
Store(0x01, MIS5)
}
Return(0x01)
}
}
Device(DCKS) {
Name(_ADR, 0x00080000)
Name(_EJD, "\\\x5fSB\x5f.PCI0.PCIE.GDCK")
}
}
}
}
}
/*
ASF!: Length=91, Revision=16, Checksum=127,
OEMID=DELL, OEM Table ID=CPi R, OEM Revision=0x27d5061c,
Creator ID=ASL, Creator Revision=0x61
*/
Home |
Main Index |
Thread Index |
Old Index