You can read out the temperature by reading “temp” in each of the 6 folders. They all get unique values and all seem legitimate except for /sys/devices/virtual/thermal/thermal_zone5/temp which seems to have a hard 70.0C.
Where are these zones located? Are they all inside the SOC? What are the different entities they are measuring temperature for? Where is that defined? Thanks.
Unfortunately, as far as I know the whole thermal_zone assignment isn’t documented very well in plain English. Meaning you typically have to dig into the source code of the Linux Kernel to have an idea of how this all works. The code that dictates this is spread out among the device tree and the thermal driver for i.MX. For a broad idea of how this works check out section 2.7 of the i.MX reference manual: https://www.nxp.com/docs/en/reference-manual/i.MX_Reference_Manual_Linux.pdf
Though to answer your question here’s what I found when I looked into the code:
zone 0 represents the temperature of the 4 A53 CPU cores
zone 1 represents the temperature of the 2 A72 CPU cores
zone 2 represents the temperature from one of the GPUs
zone 3 represents the temperature from the other GPU
zone 4 represents the temperature for the PMIC (Power management integrated circuit)
Finally I couldn’t find anything assigned to zone 5 so I assume nothing is assigned there, therefore it just defaults to 70.