aboutsummaryrefslogtreecommitdiff
path: root/src/soc/intel/baytrail/acpi/dptf/thermal.asl
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/intel/baytrail/acpi/dptf/thermal.asl')
-rw-r--r--src/soc/intel/baytrail/acpi/dptf/thermal.asl134
1 files changed, 134 insertions, 0 deletions
diff --git a/src/soc/intel/baytrail/acpi/dptf/thermal.asl b/src/soc/intel/baytrail/acpi/dptf/thermal.asl
index 2a77e6ae0b..33ec207b70 100644
--- a/src/soc/intel/baytrail/acpi/dptf/thermal.asl
+++ b/src/soc/intel/baytrail/acpi/dptf/thermal.asl
@@ -1,3 +1,20 @@
+/* Thermal Threshold Event Handler */
+Method (TEVT, 1, Serialized)
+{
+ Switch (ToInteger (Arg0))
+ {
+#ifdef DPTF_TSR0_SENSOR_ID
+ Case (DPTF_TSR0_SENSOR_ID) { Notify (^TSR0, 0x90) }
+#endif
+#ifdef DPTF_TSR1_SENSOR_ID
+ Case (DPTF_TSR1_SENSOR_ID) { Notify (^TSR1, 0x90) }
+#endif
+#ifdef DPTF_TSR2_SENSOR_ID
+ Case (DPTF_TSR2_SENSOR_ID) { Notify (^TSR2, 0x90) }
+#endif
+ }
+}
+
#ifdef DPTF_TSR0_SENSOR_ID
Device (TSR0)
{
@@ -6,6 +23,10 @@ Device (TSR0)
Name (PTYP, 0x03)
Name (TMPI, DPTF_TSR0_SENSOR_ID)
Name (_STR, Unicode (DPTF_TSR0_SENSOR_NAME))
+ Name (GTSH, 20) /* 2 degree hysteresis */
+ Name (NTTH, 5) /* 5 degree notification threshold */
+ Name (LTM0, 0) /* Last recorded temperature */
+ Name (CTYP, 0) /* Cooling policy */
Method (_STA)
{
@@ -21,6 +42,41 @@ Device (TSR0)
Return (\_SB.PCI0.LPCB.EC0.TSRD (TMPI))
}
+ Method (_PSV)
+ {
+ Return (^^CTOK (DPTF_TSR0_PASSIVE))
+ }
+
+ /* Set Cooling Policy
+ * Arg0 - Cooling policy mode, 1=active, 0=passive
+ * Arg1 - Acoustic Limit
+ * Arg2 - Power Limit
+ */
+ Method (_SCP, 3, Serialized)
+ {
+ If (LEqual (Arg0, 0)) {
+ Store (0, CTYP)
+ } Else {
+ Store (1, CTYP)
+ }
+
+ /* DPTF Thermal Trip Points Changed Event */
+ Notify (TSR0, 0x91)
+ }
+
+ /* Device Temperature Indication */
+ Method (_DTI, 1)
+ {
+ Store (Arg0, LTM0)
+ Notify (TSR0, 0x91)
+ }
+
+ /* Notification Temperature Threshold */
+ Method (_NTT)
+ {
+ Return (^^CTOK (NTTH))
+ }
+
Name (PATC, 2)
/* Set Aux Trip Point */
@@ -45,6 +101,10 @@ Device (TSR1)
Name (PTYP, 0x03)
Name (TMPI, DPTF_TSR1_SENSOR_ID)
Name (_STR, Unicode (DPTF_TSR1_SENSOR_NAME))
+ Name (GTSH, 20) /* 2 degree hysteresis */
+ Name (NTTH, 5) /* 5 degree notification threshold */
+ Name (LTM1, 0)
+ Name (CTYP, 0) /* Cooling policy */
Method (_STA)
{
@@ -60,6 +120,41 @@ Device (TSR1)
Return (\_SB.PCI0.LPCB.EC0.TSRD (TMPI))
}
+ Method (_PSV)
+ {
+ Return (^^CTOK (DPTF_TSR1_PASSIVE))
+ }
+
+ /* Set Cooling Policy
+ * Arg0 - Cooling policy mode, 1=active, 0=passive
+ * Arg1 - Acoustic Limit
+ * Arg2 - Power Limit
+ */
+ Method (_SCP, 3, Serialized)
+ {
+ If (LEqual (Arg0, 0)) {
+ Store (0, CTYP)
+ } Else {
+ Store (1, CTYP)
+ }
+
+ /* DPTF Thermal Trip Points Changed Event */
+ Notify (TSR1, 0x91)
+ }
+
+ /* Device Temperature Indication */
+ Method (_DTI, 1)
+ {
+ Store (Arg0, LTM1)
+ Notify (TSR1, 0x91)
+ }
+
+ /* Notification Temperature Threshold */
+ Method (_NTT)
+ {
+ Return (^^CTOK (NTTH))
+ }
+
Name (PATC, 2)
/* Set Aux Trip Point */
@@ -84,6 +179,10 @@ Device (TSR2)
Name (PTYP, 0x03)
Name (TMPI, DPTF_TSR2_SENSOR_ID)
Name (_STR, Unicode (DPTF_TSR2_SENSOR_NAME))
+ Name (GTSH, 20) /* 2 degree hysteresis */
+ Name (NTTH, 5) /* 5 degree notification threshold */
+ Name (LTM2, 0)
+ Name (CTYP, 0) /* Cooling policy */
Method (_STA)
{
@@ -99,6 +198,41 @@ Device (TSR2)
Return (\_SB.PCI0.LPCB.EC0.TSRD (TMPI))
}
+ Method (_PSV)
+ {
+ Return (^^CTOK (DPTF_TSR2_PASSIVE))
+ }
+
+ /* Set Cooling Policy
+ * Arg0 - Cooling policy mode, 1=active, 0=passive
+ * Arg1 - Acoustic Limit
+ * Arg2 - Power Limit
+ */
+ Method (_SCP, 3, Serialized)
+ {
+ If (LEqual (Arg0, 0)) {
+ Store (0, CTYP)
+ } Else {
+ Store (1, CTYP)
+ }
+
+ /* DPTF Thermal Trip Points Changed Event */
+ Notify (TSR2, 0x91)
+ }
+
+ /* Device Temperature Indication */
+ Method (_DTI, 1)
+ {
+ Store (Arg0, LTM2)
+ Notify (TSR2, 0x91)
+ }
+
+ /* Notification Temperature Threshold */
+ Method (_NTT)
+ {
+ Return (^^CTOK (NTTH))
+ }
+
Name (PATC, 2)
/* Set Aux Trip Point */