本文檔介紹 iTOP-4412 看門狗測試?yán)蹋琲TOP-4412 開發(fā)板的看門狗驅(qū)動需要修改和配
置使用,然后才能使用測試?yán)獭?br />
版本 V1.1:1、格式修改;2、例程修改完善,其中增加喂狗代碼。
1 內(nèi)核修改
iTOP-4412 開發(fā)板內(nèi)核源碼中的看門狗沒有配置時鐘,另外驅(qū)動源碼需要修改。
1.1 內(nèi)核源碼增加看門狗時鐘
在內(nèi)核源碼中,使用命令“vim arch/arm/mach-exynos/clock-exynos4.c”打開時鐘配
置文件。在數(shù)組中“static struct clk exynos4_init_clocks[]”中添加如下圖所示代碼。
上圖中增加的代碼如下所示:
{
.name = "watchdog",
.parent = &exynos4_clk_pclk_acp,
.enable = exynos4_clk_ip_perir_ctrl,
.ctrlbit = (1 << 14),
} 1.2 驅(qū)動程序
在內(nèi)核源碼中,看門狗驅(qū)動源碼是“drivers/watchdog/s3c2410_wdt.c”文件。
使用壓縮包中的“s3c2410_wdt.c”將內(nèi)核源碼中的文件“s3c2410_wdt.c”替換。
如果編譯過內(nèi)核源碼,可以將 s3c2410_wdt.o 文件刪除,再重新編譯內(nèi)核源碼,至此內(nèi)
核修改全部完成。
2 測試
測試?yán)涛募䴙椤皌opeet_watchdogtest.c”。
在虛擬機(jī) Ubuntu 下,編譯測試?yán)獭皌opeet_watchdogtest.c”,使用命令“arm-
none-linux-gnueabi-gcc -o topeet_watchdogtest topeet_watchdogtest.c -static”編
譯, 如下圖所示,編譯得到測試程序 topeet_watchdogtest。
將編譯得出的測試程序“topeet_watchdogtest”拷貝到開發(fā)板。 測試程序第一個參數(shù)
為看門狗設(shè)備節(jié)點(diǎn),第二個參數(shù)為看門狗重啟時間。
例如:./topeet_watchdogtest /dev/watchdog 5
程序執(zhí)行之后,如下圖所示,程序會先啟動看門狗,然后喂狗,最后停止喂狗,開發(fā)板重
啟。
|