i.MX 93 BSP Manual PD24.1.1 Documentation Rev.: imx8mp-pd22.1.2-51-ga548be7d
7.19.2 Kernel
The Linux kernel has integrated thermal management that is capable of monitoring SoC temperatures, reduc-
ing the CPU frequency, driving fans, advising other drivers to reduce the power consumption of devices, and
– worst-case – shutting down the system gracefully (https://www.kernel.org/doc/Documentation/thermal/
sysfs-api.txt).
This section describes how the thermal management kernel API is used for the i.MX 93 SoC platform. The
i.MX 9 has internal temperature sensors for the SoC.
• The current temperature can be read in millicelsius with:
target:~$ cat /sys/class/thermal/thermal_zone0/temp
• You will get, for example:
49000
There are two trip points registered by the imx_thermal kernel driver. These dier depending on the CPU
variant. A distinction is made between Commercial, Industrial and Extended Industrial.
Commercial Industrial Extended Industrial
passive (warning) 85°C 95°C 115°C
critical (shutdown) 90°C 100°C 120°C
(see kernel sysfs folder /sys/class/thermal/thermal_zone0/)
The kernel thermal management uses these trip points to trigger events and change the cooling behavior.
The following thermal policies (also named thermal governors) are available in the kernel: Step Wise and
Power Allocator. The default policy used in the BSP is step_wise.
Tip
If the value of the SoC temperature in the sysfs le temp reaches trip_point_1, the board immediately
shuts down to avoid any heat damage. If this doesn’t meet you expectations, an external supervisor circuit
that starts the module again with X_ONOFF signal when the temperature drops below a selected trip
point can be implemented
Note
The actual values of the thermal trip points may dier since we mount CPUs with dierent temperature
grades.
7.20 Watchdog
The PHYTEC i.MX 93 modules include a hardware watchdog that is able to reset the board when the system
hangs. The watchdog is started on default in U-Boot with a timeout of 60s. So even during early kernel
start, the watchdog is already up and running. The Linux kernel driver takes control over the watchdog and
makes sure that it is fed. This section explains how to congure the watchdog in Linux using systemd to
check for system hangs and during reboot.
Accessing Peripherals 74