本文档介绍 iTOP-4412 看门狗测试例程,iTOP-4412 开发板的看门狗驱动需要修改和配
置使用,然后才能使用测试例程。
版本 V1.1:1、格式修改;2、例程修改完善,其中增加喂狗代码。
1 内核修改
iTOP-4412 开发板内核源码中的看门狗没有配置时钟,另外驱动源码需要修改。
1.1 内核源码增加看门狗时钟
在内核源码中,使用命令“vim arch/arm/mach-exynos/clock-exynos4.c”打开时钟配
置文件。在数组中“static struct clk exynos4_init_clocks[]”中添加如下图所示代码。
上图中增加的代码如下所示:
{
.name = "watchdog",
.parent = &exynos4_clk_pclk_acp,
.enable = exynos4_clk_ip_perir_ctrl,
.ctrlbit = (1 << 14),
} 1.2 驱动程序
在内核源码中,看门狗驱动源码是“drivers/watchdog/s3c2410_wdt.c”文件。
使用压缩包中的“s3c2410_wdt.c”将内核源码中的文件“s3c2410_wdt.c”替换。
如果编译过内核源码,可以将 s3c2410_wdt.o 文件删除,再重新编译内核源码,至此内
核修改全部完成。
2 测试
测试例程文件为“topeet_watchdogtest.c”。
在虚拟机 Ubuntu 下,编译测试例程“topeet_watchdogtest.c”,使用命令“arm-
none-linux-gnueabi-gcc -o topeet_watchdogtest topeet_watchdogtest.c -static”编
译, 如下图所示,编译得到测试程序 topeet_watchdogtest。
将编译得出的测试程序“topeet_watchdogtest”拷贝到开发板。 测试程序第一个参数
为看门狗设备节点,第二个参数为看门狗重启时间。
例如:./topeet_watchdogtest /dev/watchdog 5
程序执行之后,如下图所示,程序会先启动看门狗,然后喂狗,最后停止喂狗,开发板重
启。
|