Add Thermald Conf FIle for AMD Surface Laptop 4 (#572)

Merge pull-request #572.

A new thermald configuration file for the AMD version of the Surface
Laptop 4. It includes the ability to turn the CPU's Turbo Boost on and
off as a cooling measure.
This commit is contained in:
astejko 2021-09-25 08:38:24 -04:00 committed by GitHub
parent 0edc9a1c3a
commit 598327240d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 92 additions and 0 deletions

View file

@ -0,0 +1,42 @@
# Example thermal-conf.xml File
A thermald configuration file tested on a Surface Laptop 4 (AMD) device. This file is adapted from the surface_laptop_1 configuration file in order to include control over CPU Turbo Boost.
## File Description
A new sensor (CPU_TEMP) is defined as the die temperature of the k10temp sensor, which can be found in the following directory:
```
/sys/class/hwmon/hwmon1/
```
The trip point is set to 65° C, and can be freely adjusted to maintain a desired temperature. The first cooling device that is activated is the Processor cooling device which can be found the thermal directory:
```
/sys/class/thermal/
```
The second cooling device is set to turn off CPU Turbo Boost when the trip point is reached.The status of boost can be queried with the following command:
```
cat /sys/devices/system/cpu/cpufreq/boost
```
## Installation
Deactivate thermald with the following command:
```
sudo systemctl stop thermald.service
```
Place thermal-conf.xml into the following directory:
```
\etc\thermald\
```
Restart thermald:
```
sudo systemctl start thermald.service
```
If it doesn't run, then you may need to remove the --adaptive flag in thermald.service

View file

@ -0,0 +1,50 @@
<?xml version="1.0" encoding="UTF-8"?>
<ThermalConfiguration>
<Platform>
<Name>Override</Name>
<ProductName>*</ProductName>
<Preference>QUIET</Preference>
<ThermalSensors>
<ThermalSensor>
<Type>CPU_TEMP</Type>
<Path>/sys/class/hwmon/hwmon1/temp2_input</Path>
<AsyncCapable>0</AsyncCapable>
</ThermalSensor>
</ThermalSensors>
<ThermalZones>
<ThermalZone>
<Type>cpu</Type>
<TripPoints>
<TripPoint>
<SensorType>CPU_TEMP</SensorType>
<Temperature>65000</Temperature>
<type>passive</type>
<ControlType>SEQUENTIAL</ControlType>
<CoolingDevice>
<index>1</index>
<type>Processor</type>
<influence>100</influence>
<SamplingPeriod>15</SamplingPeriod>
</CoolingDevice>
<CoolingDevice>
<index>2</index>
<type>turbo</type>
<influence>50</influence>
<SamplingPeriod>60</SamplingPeriod>
<TargetState>0</TargetState>
</CoolingDevice>
</TripPoint>
</TripPoints>
</ThermalZone>
</ThermalZones>
<CoolingDevices>
<CoolingDevice>
<Type>turbo</Type>
<Path>/sys/devices/system/cpu/cpufreq/boost</Path>
<MinState>1</MinState>
<MaxState>0</MaxState>
<DebouncePeriod>60000</DebouncePeriod>
</CoolingDevice>
</CoolingDevices>
</Platform>
</ThermalConfiguration>