器件型号: TDA4VEN-Q1
您好、
以 1 秒的间隔将 dog 馈送到节点/dev/watchdog。
当看门狗在 85°C 的温度下打开时、它将在超过时间限制后重新启动。超时重新启动固定为 30 秒;此外、完全没有错误消息、系统直接重新启动。
但是、当温度降至 70 摄氏度时、它不会在超过时间限制时重新启动。
此致、
Cesar
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
器件型号: TDA4VEN-Q1
您好、
以 1 秒的间隔将 dog 馈送到节点/dev/watchdog。
当看门狗在 85°C 的温度下打开时、它将在超过时间限制后重新启动。超时重新启动固定为 30 秒;此外、完全没有错误消息、系统直接重新启动。
但是、当温度降至 70 摄氏度时、它不会在超过时间限制时重新启动。
此致、
Cesar
尊敬的 Keerthy:
温度不超过 120 度, CPU 温度只有 90 度;
只有启用看门狗程序后才会重新启动、运行memtest 等其他应用程序是正常的、运行数小时后仍能正常工作。
1.喂狗程序:
WDT_FD = OPEN(“WDT“/dev/watchdog、O_RDWR);
INT DATA = 1;
CNT = 1;
while (1){
写入 (WDT_FD、&DATA、1);
printf(“cnt =%d\n“、cnt);
CNT++;
睡眠 (1);
}
2.系统在以 85 度的循环方式给狗喂食后自动重启,持续 32 次;
每次重新启动都是为狗馈送的 32 次时间、大约为 30 秒超时。
日志如下所示:
root@j722s-evm:~#./watchdog
CNT = 1
CNT = 2
CNT = 3
CNT = 4
CNT = 5
CNT = 6
CNT = 7
CNT = 8
CNT = 9
CNT = 10
CNT = 11
CNT = 12
CNT = 13
CNT = 14
CNT = 15
CNT = 16
CNT = 17
CNT = 18
CNT = 19
CNT = 20
CNT = 21
CNT = 22
CNT = 23
CNT = 24
CNT = 25
CNT = 26
CNT = 27
CNT = 28
CNT = 29
CNT = 30
CNT = 31
CNT = 32
U-Boot SPL 2025.01-ti (2 月 10 日 2026 - 17:40:32 +0800)
SYSFW ABI:4.0(固件版本 0x000b “11.0.9--v11.00.09+(花哨 RAT)“)
SPL 初始栈使用量:17048 字节
尝试从 MMC1 引导
身份验证已通过
身份验证已通过
身份验证已通过
身份验证已通过
身份验证已通过
在 ARM64 内核上启动 ATF……
注意:BL31:v2.12.0(发行版):11.00.09-Dirty
注意:BL31:建造时间:12:35:58, 2025 年 3 月 24 日
U-Boot SPL 2025.01-ti (2 月 10 日 2026 - 17:40:26 +0800)
SYSFW ABI:4.0(固件版本 0x000b “11.0.9--v11.00.09+(花哨 RAT)“)
尝试从 MMC1 引导
身份验证已通过
身份验证已通过
此致、
Cesar
这遵循一种模式、保持复位状态并重新启动约 30 秒。
[/报价]
我不明白这一点。 您能详细说明吗?
- Keerthy
尊敬的 Keerthy:
CPU 的温度目前仅在 90 度左右、但如果运行看门狗程序、它将导致 30 秒的周期性重新启动和复位。 但是、在没有看门狗程序(例如 memtest)的情况下运行应用时、系统会在相同环境中正常运行、并且不会重新启动。
您能否解释一下定期复位的可能原因? 例如、如果 DDR 出现故障、是否存在这种可能性? 您能否提供几种可能的方案和测试方法?
此致、
Cesar
您好、
#1 与 DRAM 温度轮询有关、该轮询当前未针对 TDA4VEN 启用(无法通过 DDR 工具配置)。
#2、请参阅此处的响应: TDA4VEN-Q1:如何禁用 DDR 的定期列车功能
此致、
Kevin
尊敬的 Keerthy:
我正在测试所有场景,请帮助分析。
测试看门狗超时持续时间:约 60s

./watchdog1 feeding one time! [ 1286.437742] watchdog: watchdog0: nowayout prevents watchdog being stopped! [ 1286.446300] watchdog: watchdog0: watchdog did not stop! not feed cnt: 1s; not feed cnt: 2s; not feed cnt: 3s; not feed cnt: 4s; not feed cnt: 5s; not feed cnt: 6s; not feed cnt: 7s; not feed cnt: 8s; not feed cnt: 9s; not feed cnt: 10s; not feed cnt: 11s; not feed cnt: 12s; not feed cnt: 13s; not feed cnt: 14s; not feed cnt: 15s; not feed cnt: 16s; not feed cnt: 17s; not feed cnt: 18s; not feed cnt: 19s; not feed cnt: 20s; not feed cnt: 21s; not feed cnt: 22s; not feed cnt: 23s; not feed cnt: 24s; not feed cnt: 25s; not feed cnt: 26s; not feed cnt: 27s; not feed cnt: 28s; not feed cnt: 29s; not feed cnt: 30s; not feed cnt: 31s; not feed cnt: 32s; not feed cnt: 33s; not feed cnt: 34s; not feed cnt: 35s; not feed cnt: 36s; not feed cnt: 37s; not feed cnt: 38s; not feed cnt: 39s; not feed cnt: 40s; not feed cnt: 41s; not feed cnt: 42s; not feed cnt: 43s; not feed cnt: 44s; not feed cnt: 45s; not feed cnt: 46s; not feed cnt: 47s; not feed cnt: 48s; not feed cnt: 49s; not feed cnt: 50s; not feed cnt: 51s; not feed cnt: 52s; not feed cnt: 53s; not feed cnt: 54s; not feed cnt: 55s; not feed cnt: 56s; not feed cnt: 57s; not feed cnt: 58s; not feed cnt: 59s; not feed cnt: 60s; not feed cnt: 61s; not feed cnt: 62s; not feed cnt: 63s; U-Boot SPL 2025.01-ti (Oct 14 2025 - 20:39:26 +0800) SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.9--v11.00.09+ (Fancy Rat)') SPL initial stack usage: 17048 bytes Trying to boot from MMC1 Authentication passed Authentication passed Authentication passed Authentication passed Authentication passed Starting ATF on ARM64 core...
2.定期喂狗;

(直到第 252 次温度)54° 相对较低时才重新启动
root@j722s-evm:~# cat /sys/class/thermal/thermal_zone0/temp
54563.
root@j722s-evm:~# ./watchdog2 feed cnt: 1s; feed cnt: 2s; feed cnt: 3s; feed cnt: 4s; feed cnt: 5s; feed cnt: 6s; feed cnt: 7s; feed cnt: 8s; feed cnt: 9s; feed cnt: 10s; feed cnt: 11s; feed cnt: 12s; feed cnt: 13s; feed cnt: 14s; feed cnt: 15s; feed cnt: 16s; feed cnt: 17s; feed cnt: 18s; feed cnt: 19s; feed cnt: 20s; feed cnt: 21s; feed cnt: 22s; feed cnt: 23s; feed cnt: 24s; feed cnt: 25s; feed cnt: 26s; feed cnt: 27s; feed cnt: 28s; feed cnt: 29s; feed cnt: 30s; feed cnt: 31s; feed cnt: 32s; feed cnt: 33s; feed cnt: 34s; feed cnt: 35s; feed cnt: 36s; feed cnt: 37s; feed cnt: 38s; feed cnt: 39s; feed cnt: 40s; feed cnt: 41s; feed cnt: 42s; feed cnt: 43s; feed cnt: 44s; feed cnt: 45s; feed cnt: 46s; feed cnt: 47s; feed cnt: 48s; feed cnt: 49s; feed cnt: 50s; feed cnt: 51s; feed cnt: 52s; feed cnt: 53s; feed cnt: 54s; feed cnt: 55s; feed cnt: 56s; feed cnt: 57s; feed cnt: 58s; feed cnt: 59s; feed cnt: 60s; feed cnt: 61s; feed cnt: 62s; feed cnt: 63s; feed cnt: 64s; feed cnt: 65s; feed cnt: 66s; feed cnt: 67s; feed cnt: 68s; feed cnt: 69s; feed cnt: 70s; feed cnt: 71s; feed cnt: 72s; feed cnt: 73s; feed cnt: 74s; feed cnt: 75s; feed cnt: 76s; feed cnt: 77s; feed cnt: 78s; feed cnt: 79s; feed cnt: 80s; feed cnt: 81s; feed cnt: 82s; feed cnt: 83s; feed cnt: 84s; feed cnt: 85s; feed cnt: 86s; feed cnt: 87s; feed cnt: 88s; feed cnt: 89s; feed cnt: 90s; feed cnt: 91s; feed cnt: 92s; feed cnt: 93s; feed cnt: 94s; feed cnt: 95s; feed cnt: 96s; feed cnt: 97s; feed cnt: 98s; feed cnt: 99s; feed cnt: 100s; feed cnt: 101s; feed cnt: 102s; feed cnt: 103s; feed cnt: 104s; feed cnt: 105s; feed cnt: 106s; feed cnt: 107s; feed cnt: 108s; feed cnt: 109s; feed cnt: 110s; feed cnt: 111s; feed cnt: 112s; feed cnt: 113s; feed cnt: 114s; feed cnt: 115s; feed cnt: 116s; feed cnt: 117s; feed cnt: 118s; feed cnt: 119s; feed cnt: 120s; feed cnt: 121s; feed cnt: 122s; feed cnt: 123s; feed cnt: 124s; feed cnt: 125s; feed cnt: 126s; feed cnt: 127s; feed cnt: 128s; feed cnt: 129s; feed cnt: 130s; feed cnt: 131s; feed cnt: 132s; feed cnt: 133s; ...
当)(70°)较高时、应以 32 秒重新启动
CAT /sys/class/thermal/thermal_zone0/temp
70932
root@j722s-evm:~# ./watchdog2 feed cnt: 1s; feed cnt: 2s; feed cnt: 3s; feed cnt: 4s; feed cnt: 5s; feed cnt: 6s; feed cnt: 7s; feed cnt: 8s; feed cnt: 9s; feed cnt: 10s; feed cnt: 11s; feed cnt: 12s; feed cnt: 13s; feed cnt: 14s; feed cnt: 15s; feed cnt: 16s; feed cnt: 17s; feed cnt: 18s; feed cnt: 19s; feed cnt: 20s; feed cnt: 21s; feed cnt: 22s; feed cnt: 23s; feed cnt: 24s; feed cnt: 25s; feed cnt: 26s; feed cnt: 27s; feed cnt: 28s; feed cnt: 29s; feed cnt: 30s; feed cnt: 31s; feed cnt: 32s; U-Boot SPL 2025.01-ti (Oct 14 2025 - 20:39:26 +0800) SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.9--v11.00.09+ (Fancy Rat)') SPL initial stack usage: 17048 bytes Trying to boot from MMC1 Authentication passed Authentication passed Authentication passed Authentication passed Authentication passed Starting ATF on ARM64 core... NOTICE: BL31: v2.12.0(release):11.00.09-dirty NOTICE: BL31: Built : 12:35:58, Mar 24 2025 U-Boot SPL 2025.01-ti (Oct 14 2025 - 20:39:15 +0800) SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.9--v11.00.09+ (Fancy Rat)') Trying to boot from MMC1 Authentication passed Authentication passed
3.给狗喂食后、每次关闭 FD 并将循环切换至 50 秒
此外、环境温度升高、系统运行多次而无需重新启动
1)C 代码:
int main (int argc、char *argv[])
{
INT WDT_FD、I;
INT DATA = 1;
int cnt = 0;
while (1){
WDT_FD = OPEN(“WDT“/dev/watchdog、O_RDWR);
写入 (WDT_FD、&DATA、1);
printf(“feed cnt:%ds;\n“,cnt);
CNT+=50;
关闭 (WDT_FD);
睡眠 (50);
}
返回 0;
}
2)当前 CPU 温度:μ A
root@j722s-evm:~# cat /sys/class/thermal/thermal_zone0/temp
88523
3)日志:
root@j722s-evm:~# ./watchdog3 feed cnt: 0s; [ 754.128715] watchdog: watchdog0: nowayout prevents watchdog being stopped! [ 754.136894] watchdog: watchdog0: watchdog did not stop! [ 804.142360] watchdog: watchdog0: nowayout prevents watchdog being stopped! feed cnt: 50s; [ 804.149295] watchdog: watchdog0: watchdog did not stop! [ 854.156118] watchdog: watchdog0: nowayout prevents watchdog being stopped! feed cnt: 100s; [ 854.163048] watchdog: watchdog0: watchdog did not stop! [ 904.169874] watchdog: watchdog0: nowayout prevents watchdog being stopped! feed cnt: 90s; [ 904.176809] watchdog: watchdog0: watchdog did not stop! feed cnt: 150s;[ 954.183657] watchdog: watchdog0: nowayout prevents watchdog being stopped! [ 954.191825] watchdog: watchdog0: watchdog did not stop! [ 1004.197398] watchdog: watchdog0: nowayout prevents watchdog being stopped! feed cnt: 200s; [ 1004.204328] watchdog: watchdog0: watchdog did not stop!
请您分析为什么第二种情况重新开始
此致、
Cesar
尊敬的 Keerthy:
在 85°C 温度下尝试上述方法、 32 秒后仍然会重新启动。
feed cnt: 30s; feed cnt: 31s; feed cnt: 32s; U-Boot SPL 2025.01-ti (Oct 14 2025 - 20:39:26 +0800) SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.9--v11.00.09+ (Fancy Rat)') SPL initial stack usage: 17048 bytes Trying to boot from MMC1 Authentication passed Authentication passed Authentication passed
请检查我上次提交的内容并分析其根本原因。
此致、
Cesar