Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

76 lines
2.4 KiB

// Example #4 figure 0-1 thermal zone
DefinitionBlock (
examp4.aml, // Output Filename
DSDT, // Signature
0x10, // DSDT Revision
OEM, // OEMID
"examp 4", // TABLE ID
0x1000 // OEM Revision
)
{
Processor(
\_PR.CPU0, // name space name
1, // Unique number for this processor
0x103,
0x100
) { }
Scope(\_SB) {
Device(EC0) {
Name(_HID, String("PNPxxxx")) // id of acpi embedded ctrl
Name(_CRS, // descrip for port 62 & 66
Buffer{0x4B, 0x62, 0x00, 0x01, 0x4B, 0x66, 0x00, 0x01, 0x79, 0x00})
Name(_GPE, Num(0)) // GPE index for this EC
// define its region in the root
OperationRegion (\EC0, EmbeddedControl, 0, 0xFF) {
Field(\ECO, AccessAsAny, UseGlobalLock, Preserve) {
"", 16, // Skip two bytes
FAN, 1, // TRHM_FAN - fan on/off
MODE, 1, // THRM_MOD - Policy setting
"", 6, // Skip 6 bits
STAT, 5 // THRM_STATE & THRM_VAL
}
}
// Note embedded controller events occur in repsonse to a
// query value returned by the embedded controller.
Method (_Q34) { // embedded controller event for thermal
Notify (\_TZ.THM1, Zero)
}
}
}
Scope(\_TZ) {
PowerResource (PFAN, \_S0, 0) {
Method(_STA) { Return (\EC0.FAN) }
Method(_ON) { Store (One, \EC0.FAN) }
Method(_OFF) { Store (Zero, \EC0.FAN) }
}
// create FAN-Device object
Device (FAN) {
Name(_PR0, Package{PFAN})
}
ThermalZone (THM1) {
Method(_STA) {
Store (\EC0.STAT, Local1)
Return (
Package(2) {
ShiftRight (Local1, Num(2), Zero)
And (Local1, Num(3), Zero)
}
)
}
Method(_SET, 1) { Store (Arg1, \ECO.MODE) }
Name(_ACL, Package{FAN})
Name(_PRL, Package{\_PR.CPU0})
}
}
}