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.

[参考译文] AM62L:看门狗无法正常工作

Guru**** 2330840 points
Other Parts Discussed in Thread: AM62L
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1513502/am62l-watchdog-not-working

器件型号:AM62L

工具/软件:

您好、

参考资料:  3.2.2.19.看门狗—适用于 AM62L 的 Linux SDK 文档

使用命令 echo c >/proc/sysrq-trigger 触发崩溃后、系统不会重新引导。

root@am62lxx-EVM:~# lsmod | grep RTI
RTI_WDT 12288 0
Root@am62lxx-EVM:~# rmmod RTI_WDT
Root@am62lxx-EVM:~# modprobe RTI_WDT heartbeat=30

root@am62lxx-EVM:~# echo c >/proc/sysrq-trigger
[201.279618] sysrq:触发崩溃
[ 2011.283045]内核紧急-未同步: SysRq 触发崩溃
[201.288783] CPU: 1 UID: 0 PID: 504 Comm: sh tainted: G O 6.12.13-ti-g1a2d611ee02d #1.
[201.297900]已污染:[O]=OOT_MODULE
[ 201.301376]硬件名称:Texas Instruments AM62L3 EVM (DT)
[201.307020]呼叫跟踪:
[201.309456] dump_backtrace+0x90/0xe8
[ 201313123] SHOW_STACK+0x18/0x24
[201316432] dump_stack_lvl+0x34/0x8c
[ 201.320088] dump_stack+0x18/0x24
[201.32394] panic+0x390/0x3a4
[ 201.326444] sysrq_reset_seq_param_set+0x0/0x98
[ 201.330971]__handle_sysrq+0xe4/0x1cc
[ 201.334715] write_sysrq_trigger+0xc0/0xd0
[ 201.338803] proc_reg_write+0x9C/0xf0
[ 201.342458] vfs_write+0xd4/0x378
[ 201.345768] ksys_write+0x74/0x10c
[ 201.349161]__arm64_sys_write+0x1c/0x28
[ 201.353075] invoke_syscall+0x48/0x10c
[201.356817] el0_Svc_common.constprop.0+0xc0/0xe0
[ 2011.361511] do_el0_svc+0x1c/0x28
[201.364819] el0_Svc+0x28/0x98
[ 201.367867] el0t_64_SYNC_HANDLER+0x120/0x12c
[ 201.372214] el0t_64_SYNC+0x190/0x194
[201.375870] SMP:停止辅助 CPU
[ 201.379790]内核偏移:已禁用
[201.383265] CPU 特性:0x00,00000080,00200000,4200420b</s>080,002 00,000,420
[201.388651]内存限制:无
[201.391700]--[结束内核恐慌-未同步:SysRq 触发崩溃]---

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    我正在努力获取 AM62L 电路板以进行验证。 如果看门狗正在工作、则不需要使电路板崩溃。 您应该能够直接启动看门狗计数器并等待30秒或1分钟。

    此致、

    Nick

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Mazel、

    我可以复制您观察到的看门狗未在重新启动电路板的情况。 您能否为我准确验证您使用的 AM62L 电路板版本? (以防万一)请随时附上 EVM 的图片。

    此致、

    Nick

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    感谢您的测试、我没有 EVM 的版本信息、但图片如下:

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Mazel、

    感谢您发送编修。

    听起来添加 AM62L 看门狗支持的代码并未及时添加到 SDK 11.0版本的 ti-linux-kernel-6.12.y 中。

    我将在5月的最后一周休假、但我要求团队成员在这里发布看门狗补丁以便您进行测试。 如果您没有收到我们的任何消息、请在6月3日至4日 ping 通该线程、以确保在我返回后看到您的消息。

    此致、

    Nick

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    能否在 Linux 驱动程序中尝试以下操作:

    diff -git a/drivers/watchdog/RTI_WDT.c b/drivers/watchdog/RTI_WDT.c
    索引4895a69015a8..04b5072c4bc5 100644
    ---- A/DRIVERS/WATCHDOG/RTI_WDT.c
    ++ b/drivers/watchdog/RTI_WDT.c
    @@-35,7 +35,7 @@
     #define RTIWWDRXCTRL  0xa4
     #define RTIWWDSIZECTRL 0xa8
     
    -#define RTIWWDRX_NMI  0xA
    +#define RTIWWDRX_NMI  0x5
     
     #define RTIWWDSIZE_50p        0x50
     #define RTIWWDSIZE_25P        0x500

    请注意、这将中断 am62lx 以外的其他平台的 watchog 重置。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    修改后、执行此操作将触发重新启动。 ​

    Root@am62lxx-EVM:~# rmmod RTI_WDT
    Root@am62lxx-EVM:~# modprobe RTI_WDT heartbeat=10
    root@am62lxx-EVM:~# echo s >/dev/watchdog0