关键流程设计
3 Mar 2025
Read time: 1 minute(s)
初始化流程
WDT 驱动的初始化过程见 aic_wdt_probe() 函数,除了普通 platform 设备的处理过程 (申请 regs 资源、clk、reset)外,需要调用
WDT 子系统的接口 devm_watchdog_register_device() 来注册 WDT
设备。
int devm_watchdog_register_device(struct device *dev, struct watchdog_device *);
其中参数 struct watchdog_device 中关键信息有:名称、属性、最大/最小/默认 timeout、ops
等,aic_wdt_ops
定义如下:
static const struct watchdog_ops aic_wdt_ops = { .owner = THIS_MODULE, .start = aic_wdt_start, .stop = aic_wdt_stop, .ping = aic_wdt_ping, .set_timeout = aic_wdt_set_timeout, .set_pretimeout = aic_wdt_set_pretimeout, .restart = aic_wdt_restart, };