Lines Matching defs:wdt_data

102 static int kempld_wdt_set_stage_action(struct kempld_wdt_data *wdt_data,
106 struct kempld_device_data *pld = wdt_data->pld;
128 static int kempld_wdt_set_stage_timeout(struct kempld_wdt_data *wdt_data,
132 struct kempld_device_data *pld = wdt_data->pld;
169 static unsigned int kempld_wdt_get_timeout(struct kempld_wdt_data *wdt_data,
172 struct kempld_device_data *pld = wdt_data->pld;
200 struct kempld_wdt_data *wdt_data = watchdog_get_drvdata(wdd);
205 timeout_stage = &wdt_data->stage[STAGE_TIMEOUT];
206 pretimeout_stage = &wdt_data->stage[STAGE_PRETIMEOUT];
208 if (pretimeout_stage->mask && wdt_data->pretimeout > 0)
209 timeout = wdt_data->pretimeout;
211 ret = kempld_wdt_set_stage_action(wdt_data, timeout_stage,
215 ret = kempld_wdt_set_stage_timeout(wdt_data, timeout_stage,
227 struct kempld_wdt_data *wdt_data = watchdog_get_drvdata(wdd);
232 pretimeout_stage = &wdt_data->stage[STAGE_PRETIMEOUT];
243 ret = kempld_wdt_set_stage_action(wdt_data, pretimeout_stage,
247 ret = kempld_wdt_set_stage_timeout(wdt_data, pretimeout_stage,
252 wdt_data->pretimeout = pretimeout;
256 static void kempld_wdt_update_timeouts(struct kempld_wdt_data *wdt_data)
258 struct kempld_device_data *pld = wdt_data->pld;
263 pretimeout_stage = &wdt_data->stage[STAGE_PRETIMEOUT];
264 timeout_stage = &wdt_data->stage[STAGE_TIMEOUT];
267 pretimeout = kempld_wdt_get_timeout(wdt_data, pretimeout_stage);
268 timeout = kempld_wdt_get_timeout(wdt_data, timeout_stage);
272 wdt_data->pretimeout = timeout;
274 wdt_data->pretimeout = 0;
276 wdt_data->wdd.timeout = pretimeout + timeout;
281 struct kempld_wdt_data *wdt_data = watchdog_get_drvdata(wdd);
282 struct kempld_device_data *pld = wdt_data->pld;
306 struct kempld_wdt_data *wdt_data = watchdog_get_drvdata(wdd);
307 struct kempld_device_data *pld = wdt_data->pld;
326 struct kempld_wdt_data *wdt_data = watchdog_get_drvdata(wdd);
327 struct kempld_device_data *pld = wdt_data->pld;
339 struct kempld_wdt_data *wdt_data = watchdog_get_drvdata(wdd);
355 ret = put_user(wdt_data->pretimeout, (int __user *)arg);
364 struct kempld_wdt_data *wdt_data = watchdog_get_drvdata(wdd);
365 struct kempld_device_data *pld = wdt_data->pld;
372 pretimeout_stage = &wdt_data->stage[STAGE_PRETIMEOUT];
373 timeout_stage = &wdt_data->stage[STAGE_TIMEOUT];
437 struct kempld_wdt_data *wdt_data;
443 wdt_data = devm_kzalloc(dev, sizeof(*wdt_data), GFP_KERNEL);
444 if (!wdt_data)
447 wdt_data->pld = pld;
448 wdd = &wdt_data->wdd;
467 watchdog_set_drvdata(wdd, wdt_data);
480 kempld_wdt_update_timeouts(wdt_data);
484 platform_set_drvdata(pdev, wdt_data);
500 struct kempld_wdt_data *wdt_data = platform_get_drvdata(pdev);
501 struct kempld_device_data *pld = wdt_data->pld;
502 struct watchdog_device *wdd = &wdt_data->wdd;
505 wdt_data->pm_status_store = kempld_read8(pld, KEMPLD_WDT_CFG);
508 kempld_wdt_update_timeouts(wdt_data);
510 if (wdt_data->pm_status_store & KEMPLD_WDT_CFG_ENABLE)
519 struct kempld_wdt_data *wdt_data = platform_get_drvdata(pdev);
520 struct watchdog_device *wdd = &wdt_data->wdd;
526 if (wdt_data->pm_status_store & KEMPLD_WDT_CFG_ENABLE)