Rk3568-硬件看门狗

本文介绍了在Rk3568芯片上配置和测试硬件看门狗的详细过程,包括看门狗芯片的选择,设备树的修改,驱动程序的添加与加载,以及加载驱动后系统中新增看门狗节点的观察,最后通过测量喂狗引脚验证其功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

看门狗芯片

GPIO3_B6连接看门狗喂狗引脚

修改设备树

+       watchdog {
+               compatible = "linux,wdt-gpio";
+               gpios = <&gpio3 RK_PB6 GPIO_ACTIVE_HIGH>;
+               hw_algo = "toggle";
+               hw_margin_ms = <1000>;
+               always-running = "true";        
+       };

添加驱动程序

+CONFIG_GPIO_WATCHDOG=m

加载驱动模块

insmod gpio_wdt.ko

加载驱动前后会生成新的看门狗节点

ls /dev/watchdog*
/dev/watchdog /dev/watchdog0 /dev/watchdog1

测量看门狗喂狗引脚

可以测量到方波信息,内核通过GPIO3_B6一直给看门狗芯片喂狗,周期为1秒。
### RK3308 硬件看门狗配置方法及启动教程 在RK3308芯片上启用硬件看门狗功能的过程类似于其他Rockchip系列芯片(如RK3399)。以下是具体的方法和教程: #### 1. 设备树配置 为了使能硬件看门狗,需要在设备树文件中定义相应的节点。通常情况下,这些节点会描述寄存器地址、中断号以及其他必要的参数。 ```dts watchdog@ff7c0000 { compatible = "rockchip,rk3308-wdt"; reg = <0xff7c0000 0x100>; interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; status = "okay"; }; ``` 上述代码片段展示了如何在设备树中声明一个名为`watchdog`的节点[^1]。其中的关键字段解释如下: - `compatible`: 表明该设备兼容的具体驱动名称。 - `reg`: 定义了看门狗控制器所在的物理基址及其大小。 - `interrupts`: 配置与看门狗相关的中断信息。 - `status`: 设置为`"okay"`表示此设备可用。 完成设备树修改后,重新编译并烧录新的DTB文件到目标板卡即可生效。 #### 2. Linux内核支持 确保所使用的Linux版本已经包含了针对RK3308平台的支持以及通用型或者特定型号的硬件看门狗驱动模块。如果官方源码库未提供对应实现,则可能需要自行移植或定制化开发相应部分。 对于大多数现代发行版而言,默认应该已集成好基础框架;只需确认选项被正确选中即可。编辑`.config`文件时查找类似下面这样的条目,并将其设置成`y`(内置) 或者 `m`(作为可加载模组): ``` CONFIG_WATCHDOG=y CONFIG_ROCKCHIP_WDT=m ``` 之后执行标准流程来构建整个kernel image 和 modules collection. #### 3. U-Boot阶段初始化 (可选) 某些应用场景下希望即使操作系统尚未完全引导起来之前也能激活保护机制,在这种情形下就需要调整U-boot环境变量或者是直接改动其内部逻辑从而提前介入控制流。参见另一篇文档说明了怎样操作cmd_bootm.c 来达到目的 [^2]. 注意这里提到的是理论上的可能性,实际项目里是否有必要这样做取决于具体需求分析结果。 最后提醒一点,无论采用哪种方式都要记得测试验证最终效果以保证预期行为的一致性!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Paper_Love

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值