📄 dsdt.asl
字号:
DefinitionBlock (
"DSDT.AML",
"DSDT",
0x01,
"VIA692", //R05 OEMID
"AWRDACPI",
0x1000
)
{ // Start of ASL File
Scope(\_PR) {
Processor(\_PR.CPU0,
1, //processor number
0x4010, //System IO address of Pblk Registers//R18
0x06 //length in bytes of PBlk //R18
) {}
}
Name(\_S0,Package(2){Zero,Zero})// R11Value to be set in SLP_TYP register (S0)working state
Name(\_S1,Package(2){4,4}) // R11Value to be set in SLP_TYP register for S1 state
Name(\_S5,Package(2){2,2})// Value R11to be set in SLP_TYP register for Soft Off
OperationRegion(\DEBG, SystemIO, 0x80, 0x1)
Field(\DEBG, ByteAcc, NoLock, Preserve) {
DBG1, 8,
}
OperationRegion(EXTM, SystemMemory, 0x000ff830, 0x10)
Field(EXTM, WordAcc, NoLock, Preserve) {
ROM1, 16, //length=16bit
RMS1, 16, //length=16bit
ROM2, 16, //length=16bit
RMS2, 16, //length=16bit
ROM3, 16, //length=16bit
RMS3, 16, //length=16bit
AMEM, 32, //length=32bit
}
OperationRegion(VGAM, SystemMemory, 0x000C0002, 0x1)
Field(VGAM, ByteAcc, NoLock, Preserve) {
VGA1, 8,
}
OperationRegion (ELCR, SystemIO, 0x4D0, 0x02)
Field (ELCR, ByteAcc, Nolock, Preserve) {
ELC1, 8,
ELC2, 8
}
OperationRegion(\Stus, SystemIO, 0x4030, 0x1) //R17A Global Status
Field(\Stus, ByteAcc, NoLock, Preserve) //
{ //
G_St, 8, //
}
OperationRegion(\WIRQ, SystemIO, 0x402a, 0x1) //R17A IRQ Resume Reg
Field(\WIRQ, ByteAcc, NoLock, Preserve) //
{ //
IRQR, 8, //
}
OperationRegion(\SMIC, SystemIO, 0x402f, 0x1) //
Field(\SMIC, ByteAcc, NoLock, Preserve) //
{ //
SCP_, 8, //
}
OperationRegion(GPOB,SystemIO,0x404C,0x4)
Field(GPOB,ByteAcc,NoLock,Preserve) {
GP00,1,
GP01,1,
GP02,1,
GP03,1,
GP04,1,
GP05,1,
GP06,1,
GP07,1,
GP08,1,
GP09,1,
GP10,1,
GP11,1,
GP12,1,
GP13,1,
GP14,1,
GP15,1,
GP16,1,
GP17,1,
GP18,1,
GP19,1,
GP20,1,
GP21,1,
GP22,1,
GP23,1,
GP24,1,
GP25,1,
GP26,1,
GP27,1,
GP28,1,
GP29,1,
GP30,1,
GPxx,1, // Reserve
}
include ("CT_Func.asl")
Method(\_PTS,1)
{
Or (Arg0, 0xF0, Local0)
Store (Local0, DBG1)
IF (LNotEqual(Arg0, 0x05)) //R21A
{ //R21A
Store (One,GP00)
Store (One,GP14)
} //R21A
Or (Arg0, 0x50, Local1)
Store (Local1, SCP_)
IF (LEqual(Arg0, 0x01))
{
Store(G_St, LOCAL1) //Read Global Status
While(LNotEqual(Local1, 0x00))
{
Store (Local1, G_St) //Clear Global Status
Store (G_St, LOCAL1) //Read Global Status
}
Or(IRQR,0x80,IRQR) //Enable IRQ Resume Reg
}
IF (LEqual(Arg0, 0x05)) { //R29
} //R29
}
Method(\_WAK,1){
Store (0xFF, DBG1)
Notify(\_SB.PWRB,0x2) //R20
Store (Zero,GP00)
Store (Zero,GP14)
Notify(\_SB.PWRB,0x2) //R24
}
Scope(\_SI)
{ // Start of _SI
Method(_MSG, 1) {
Store (Local0, Local0)
} // End of Method
Method(_SST, 1) {
IF (LEqual(Arg0, 0x03)) {
}
IF (LEqual(Arg0, 0x01)) {
}
IF (LEqual(Arg0, Zero)) {
}
Store (Local0, Local0) //R09
} // End of Method
} // End of _SI
Scope(\_GPE) {
} // Scope(\_GPE)
Scope(\_SB) {
Device(PWRB) {
Name (_HID, EISAID("PNP0C0C")) // Hardware Device ID PWRBTN
Method(_STA, 0) {
Return(0x0B) // non-present, enabled, functioning
}
Name(_PRW, Package(2){0x05,5}) //R50 PME wakeup
}
include ("memory.asl") //R32
Device(PCI0) {
Name (_HID, EISAID("PNP0A03")) // Hardware Device ID
Name (_ADR, 0x000000)
Method(_STA, 0) {
Return(0x0F) // present, enabled, functioning
}
Method(_CRS,0) { //R37
Name(BUF0,ResourceTemplate() { //R37
WORDBusNumber( // Bus 0
ResourceConsumer,
MinNotFixed,
MaxNotFixed,
PosDecode,
0x0000,
0x0000,
0x00FF,
0x0000,
0x0100
)
IO( // IO Resource for PCI Bus
Decode16,
0x0CF8,
0x0CF8,
1,
8
)
WORDIO( // IO from 0x0000 - 0x0cf7
ResourceProducer,
MinFixed,
MaxFixed,
PosDecode,
EntireRange,
0x0000, //R30
0x0000,
0x0CF7,
0x0000,
0x0CF8
)
WORDIO( // IO from 0x0d00 - 0xffff
ResourceProducer,
MinFixed,
MaxFixed,
PosDecode,
EntireRange,
0x0000, //R30
0x0D00,
0x3FFF,
0x0000,
0x3300
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -