Tool/software: Linux
Hi,
we are using SDK 3.01.06 to test our soc-am5728 at low temperature.
Here is what we meet.
We tested six boards at minus 40 degrees Celsius at the same time,Two of the boards are working normally. The test temperature data are as follows.
root@am57xx-evm:~# ./omapconf show temp
OMAPCONF (rev v1.73-19-gbe8626b)
HW Platform:
Generic DRA74X (Flattened Device Tree)
DRA75X ES2.0 GP Device (STANDARD performance (1.5GHz))
TPS659038 ES2.2
SW Build Details:
Build:
Version: _____ _____ _ _
Kernel:
Version: 4.4.19
Author: cy@ubuntu
Toolchain: gcc version 6.2.1 20161016 (Linaro GCC 6.2-2016.11)
Type: #3 SMP PREEMPT
Date: Wed Mar 13 16:56:27 CST 2019
|--------------------------------------------|
| Sensor | Temperature (C) | Temperature (F) |
|--------------------------------------------|
| MPU | -11 | 13 |
| GPU | -12 | 11 |
| CORE | -11 | 13 |
| IVA | -27 | -16 |
| DSPEVE | -14 | 7 |
|--------------------------------------------|
root@am57xx-evm:~#
The four boards are not working properly. The temperature detection information is as follows.
root@am57xx-evm:~# ./omapconf show temp
OMAPCONF (rev v1.73-19-gbe8626b)
HW Platform:
Generic DRA74X (Flattened Device Tree)
DRA75X ES2.0 GP Device (STANDARD performance (1.5GHz))
TPS659038 ES2.2
SW Build Details:
Build:
Version: _____ _____ _ _
Kernel:
Version: 4.4.19
Author: cy@ubuntu
Toolchain: gcc version 6.2.1 20161016 (Linaro GCC 6.2-2016.11)
Type: #4 SMP PREEMPT
Date: Mon Mar 18 15:45:48 CST 2019
|--------------------------------------------|
| Sensor | Temperature (C) | Temperature (F) |
|--------------------------------------------|
| MPU | -17 | 2 |
| GPU | -18 | 0 |
| CORE | -17 | 2 |
| IVA | NA | NA |
| DSPEVE | -17 | 2 |
|--------------------------------------------|
root@am57xx-evm:~#
And with the printing of error information at the serial port
[2019/3/12 12:48:21] root@am57xx-evm:~# [ 15.813074] thermal thermal_zone4: failed to read out thermal zone (-5)
[2019/3/12 12:48:22] [ 16.313071] thermal thermal_zone4: failed to read out thermal zone (-5)
[2019/3/12 12:48:22] [ 16.813070] thermal thermal_zone4: failed to read out thermal zone (-5)
[2019/3/12 12:48:23] [ 17.313072] thermal thermal_zone4: failed to read out thermal zone (-5)
[2019/3/12 12:48:23] [ 17.813071] thermal thermal_zone4: failed to read out thermal zone (-5)
[2019/3/12 12:48:24] [ 18.313069] thermal thermal_zone4: failed to read out thermal zone (-5)
[2019/3/12 12:48:24] [ 18.813069] thermal thermal_zone4: failed to read out thermal zone (-5)
[2019/3/12 12:48:25] [ 19.313071] thermal thermal_zone4: failed to read out thermal zone (-5)
After debug, it was found that the ADC code value read by the four sets of abnormal boards was about 490, which exceeded the range of Table 18-10. ADC Values Versus Temperature 540 - 945, resulting in error reporting information.
The temperature sensor is still detecting linear temperature changes. When I run a high-power program, the temperature inside the chip rises and the ADC code is valid, the error message disappears. When the program stops running, the error message reappears.
Here is my questions:
1. Whether the operating range of five temperature registers in 5728 chip is -40℃ to 125℃ ?
2. Why is the temperature measured by different chips at the same ambient temperature more than 10 degrees Celsius?
3. Is there any code on the software side that can affect this aspect? Or is the problem affected by hardware design and material quality?
Please give me some debugging ideas or suggestions.
Thanks.