$(TDCONFDIR)/etc/thermald/thermal-conf.xml
The configuration file format confirms to XML specifications. A
set of tags defined to define platform, sensors, zones, cooling devices and
trip points.
- <ThermalConfiguration>
- <Platform>
- <Name>Example Platform Name</Name>
- <!--UUID is optional, if present this will be matched. Both product
name and UUID can contain wild card "*", which matches any
platform.-->
- <UUID>Example UUID</UUID>
- configuration
file format confirms to XML specifications. A set of tags defined to define
platform, sensors, zones, cooling
-
devices and trip points.
<ThermalConfiguration>
<Platform>
<ProductName>Example Product
Name</ProductName>
- <Preference>QUIET|PERFORMANCE</Preference>
- <!-Quiet mode will only use passive cooling device.
"PERFORMANCE" will only select active devices .-->
- <ThermalSensors>
- <ThermalSensor>
- <!-- New Sensor with a type and path -->
- <Type>example_sensor_1</Type>
- <Path>/some_path</Path>
- <AsyncCapable>0</AsyncCapable>
- </ThermalSensor>
- <ThermalSensor>
- <!-- Already present in thermal sysfs, enable this or add/change
config For example, here we are indicating that sensor can do async events
to avoid polling
- -->
- <Type>example_thermal_sysfs_sensor</Type>
- <!-- If async capable, then we don't need to poll -->
- <AsyncCapable>1</AsyncCapable>
- </ThermalSensor>
- </ThermalSensors>
- <ThermalZones>
- <ThermalZone>
- <Type>Example Zone type</Type>
- <TripPoints>
- <TripPoint>
- <SensorType>example_sensor_1</SensorType>
- <!-- Temperature at which to take action -->
- <Temperature> 75000 </Temperature>
- <!-- max/passive/active If a MAX type is specified, then daemon
will use PID control to aggressively throttle to avoid reaching this
temp.-->
- <type>max</type>
- <!-- SEQUENTIAL | PARALLEL. When a trip point temp is violated,
then number of cooling devices can be activated. If control type is
SEQUENTIAL then, it will exhaust first cooling device before trying next.
-->
- <ControlType>SEQUENTIAL</ControlType>
- <CoolingDevice>
- <index>1</index>
- <type>example_cooling_device</type>
- <!-- Influence will be used order cooling devices. First cooling
device will be used, which has highest influence. -->
- <influence> 100 </influence>
- <!-- Delay in using this cdev, this takes some time too actually
cool a zone -->
- <SamplingPeriod> 12 </SamplingPeriod>
- </CoolingDevice>
- </TripPoint>
- </TripPoints>
- </ThermalZone>
- </ThermalZones>
- <CoolingDevices>
- <CoolingDevice>
- <!-- Cooling device can be specified by a type and optionally a
sysfs path. If the type is already present in thermal sysfs, there is no
need of a path. Compensation can use min/max and step size to increasing
cool the system. Debounce period can be used to force a waiting period for
action. -->
- <Type>example_cooling_device</Type>
- <MinState>0</MinState>
- <IncDecStep>10</IncDecStep>
- <ReadBack> 0 </ReadBack>
- <MaxState>50</MaxState>
- <DebouncePeriod>5000</DebouncePeriod>
- <!-- If there are no PID parameters, compensation increase step wise
and exponentially (if single step is not able to change trend).
Alternatively a PID parameters can be specified then next step will use PID
calculation using provided PID constants. -->
- <PidControl>
- <kp>0.001</kp>
- <kd>0.0001</kd>
- <ki>0.0001</ki>
- </PidControl>
- </CoolingDevice>
- </CoolingDevices>
- </Platform>
- </ThermalConfiguration>