在各种嵌入式设备soc中基本都提供了看门狗,在很长一段时间里我对看门狗的理解就是“关掉它,不然它会找麻烦”。但是当某种需求存在的时候,它又是必不可少的,比如你的产品是一个类似路由器的服务设备,可能在阳台的某刻角落一丢就是好几年,虽然孤独听起来让人伤感,可是如果在孤独中死去,那就会给客户带来更大的烦恼。所以我们应该去了解它
讲解中使用的环境主要基于linux系统,设备是arm s3c6410
首先对模块进行初始化
module_init(modinit);
module_exit(modexit);
从平台中通过文件名"s3c2410-wdt"找出设备,回调wdt_probe
当然你的确定arch/arm/mach-s3c64xx/mach-s3c6410的static struct platform_device *smdk6410_devices[] __initdata中找到&s3c_device_wdt,,如果没有,看看arch/arm/plat-samsung/中有没有dev-wdt.c文件搞到里面的platform_device对象,添加到__initdata中。