| /Linux-v5.15/drivers/watchdog/ |
| D | watchdog_core.c | 64 static void watchdog_deferred_registration_add(struct watchdog_device *wdd) in watchdog_deferred_registration_add() argument 66 list_add_tail(&wdd->deferred, in watchdog_deferred_registration_add() 70 static void watchdog_deferred_registration_del(struct watchdog_device *wdd) in watchdog_deferred_registration_del() argument 78 if (wdd_tmp == wdd) { in watchdog_deferred_registration_del() 85 static void watchdog_check_min_max_timeout(struct watchdog_device *wdd) in watchdog_check_min_max_timeout() argument 91 if (!wdd->max_hw_heartbeat_ms && wdd->min_timeout > wdd->max_timeout) { in watchdog_check_min_max_timeout() 93 wdd->min_timeout = 0; in watchdog_check_min_max_timeout() 94 wdd->max_timeout = 0; in watchdog_check_min_max_timeout() 115 int watchdog_init_timeout(struct watchdog_device *wdd, in watchdog_init_timeout() argument 118 const char *dev_str = wdd->parent ? dev_name(wdd->parent) : in watchdog_init_timeout() [all …]
|
| D | watchdog_dev.c | 73 static inline bool watchdog_need_worker(struct watchdog_device *wdd) in watchdog_need_worker() argument 76 unsigned int hm = wdd->max_hw_heartbeat_ms; in watchdog_need_worker() 77 unsigned int t = wdd->timeout * 1000; in watchdog_need_worker() 92 return (hm && watchdog_active(wdd) && t > hm) || in watchdog_need_worker() 93 (t && !watchdog_active(wdd) && watchdog_hw_running(wdd)); in watchdog_need_worker() 96 static ktime_t watchdog_next_keepalive(struct watchdog_device *wdd) in watchdog_next_keepalive() argument 98 struct watchdog_core_data *wd_data = wdd->wd_data; in watchdog_next_keepalive() 99 unsigned int timeout_ms = wdd->timeout * 1000; in watchdog_next_keepalive() 105 if (watchdog_active(wdd)) in watchdog_next_keepalive() 111 hw_heartbeat_ms = min_not_zero(timeout_ms, wdd->max_hw_heartbeat_ms); in watchdog_next_keepalive() [all …]
|
| D | npcm_wdt.c | 44 struct watchdog_device wdd; member 48 static inline struct npcm_wdt *to_npcm_wdt(struct watchdog_device *wdd) in to_npcm_wdt() argument 50 return container_of(wdd, struct npcm_wdt, wdd); in to_npcm_wdt() 53 static int npcm_wdt_ping(struct watchdog_device *wdd) in npcm_wdt_ping() argument 55 struct npcm_wdt *wdt = to_npcm_wdt(wdd); in npcm_wdt_ping() 64 static int npcm_wdt_start(struct watchdog_device *wdd) in npcm_wdt_start() argument 66 struct npcm_wdt *wdt = to_npcm_wdt(wdd); in npcm_wdt_start() 69 if (wdd->timeout < 2) in npcm_wdt_start() 71 else if (wdd->timeout < 3) in npcm_wdt_start() 73 else if (wdd->timeout < 6) in npcm_wdt_start() [all …]
|
| D | rave-sp-wdt.c | 54 struct watchdog_device wdd; member 60 static struct rave_sp_wdt *to_rave_sp_wdt(struct watchdog_device *wdd) in to_rave_sp_wdt() argument 62 return container_of(wdd, struct rave_sp_wdt, wdd); in to_rave_sp_wdt() 65 static int rave_sp_wdt_exec(struct watchdog_device *wdd, void *data, in rave_sp_wdt_exec() argument 68 return rave_sp_exec(to_rave_sp_wdt(wdd)->sp, in rave_sp_wdt_exec() 72 static int rave_sp_wdt_legacy_configure(struct watchdog_device *wdd, bool on) in rave_sp_wdt_legacy_configure() argument 79 [4] = on ? wdd->timeout : 0, in rave_sp_wdt_legacy_configure() 82 return rave_sp_wdt_exec(wdd, cmd, sizeof(cmd)); in rave_sp_wdt_legacy_configure() 85 static int rave_sp_wdt_rdu_configure(struct watchdog_device *wdd, bool on) in rave_sp_wdt_rdu_configure() argument 91 [3] = (u8)wdd->timeout, in rave_sp_wdt_rdu_configure() [all …]
|
| D | arm_smc_wdt.c | 34 static int smcwd_call(struct watchdog_device *wdd, enum smcwd_call call, in smcwd_call() argument 42 arm_smccc_smc((u32)(uintptr_t)watchdog_get_drvdata(wdd), call, arg, 0, in smcwd_call() 54 static int smcwd_ping(struct watchdog_device *wdd) in smcwd_ping() argument 56 return smcwd_call(wdd, SMCWD_PET, 0, NULL); in smcwd_ping() 59 static unsigned int smcwd_get_timeleft(struct watchdog_device *wdd) in smcwd_get_timeleft() argument 63 smcwd_call(wdd, SMCWD_GET_TIMELEFT, 0, &res); in smcwd_get_timeleft() 69 static int smcwd_set_timeout(struct watchdog_device *wdd, unsigned int timeout) in smcwd_set_timeout() argument 73 res = smcwd_call(wdd, SMCWD_SET_TIMEOUT, timeout, NULL); in smcwd_set_timeout() 75 wdd->timeout = timeout; in smcwd_set_timeout() 79 static int smcwd_stop(struct watchdog_device *wdd) in smcwd_stop() argument [all …]
|
| D | bcm47xx_wdt.c | 43 static inline struct bcm47xx_wdt *bcm47xx_wdt_get(struct watchdog_device *wdd) in bcm47xx_wdt_get() argument 45 return container_of(wdd, struct bcm47xx_wdt, wdd); in bcm47xx_wdt_get() 48 static int bcm47xx_wdt_hard_keepalive(struct watchdog_device *wdd) in bcm47xx_wdt_hard_keepalive() argument 50 struct bcm47xx_wdt *wdt = bcm47xx_wdt_get(wdd); in bcm47xx_wdt_hard_keepalive() 52 wdt->timer_set_ms(wdt, wdd->timeout * 1000); in bcm47xx_wdt_hard_keepalive() 57 static int bcm47xx_wdt_hard_start(struct watchdog_device *wdd) in bcm47xx_wdt_hard_start() argument 62 static int bcm47xx_wdt_hard_stop(struct watchdog_device *wdd) in bcm47xx_wdt_hard_stop() argument 64 struct bcm47xx_wdt *wdt = bcm47xx_wdt_get(wdd); in bcm47xx_wdt_hard_stop() 71 static int bcm47xx_wdt_hard_set_timeout(struct watchdog_device *wdd, in bcm47xx_wdt_hard_set_timeout() argument 74 struct bcm47xx_wdt *wdt = bcm47xx_wdt_get(wdd); in bcm47xx_wdt_hard_set_timeout() [all …]
|
| D | da9063_wdt.c | 93 static int da9063_wdt_start(struct watchdog_device *wdd) in da9063_wdt_start() argument 95 struct da9063 *da9063 = watchdog_get_drvdata(wdd); in da9063_wdt_start() 98 ret = da9063_wdt_update_timeout(da9063, wdd->timeout); in da9063_wdt_start() 106 static int da9063_wdt_stop(struct watchdog_device *wdd) in da9063_wdt_stop() argument 108 struct da9063 *da9063 = watchdog_get_drvdata(wdd); in da9063_wdt_stop() 119 static int da9063_wdt_ping(struct watchdog_device *wdd) in da9063_wdt_ping() argument 121 struct da9063 *da9063 = watchdog_get_drvdata(wdd); in da9063_wdt_ping() 133 static int da9063_wdt_set_timeout(struct watchdog_device *wdd, in da9063_wdt_set_timeout() argument 136 struct da9063 *da9063 = watchdog_get_drvdata(wdd); in da9063_wdt_set_timeout() 149 if (watchdog_active(wdd)) in da9063_wdt_set_timeout() [all …]
|
| D | tegra_wdt.c | 60 struct watchdog_device wdd; member 78 static int tegra_wdt_start(struct watchdog_device *wdd) in tegra_wdt_start() argument 80 struct tegra_wdt *wdt = watchdog_get_drvdata(wdd); in tegra_wdt_start() 101 (wdd->timeout << WDT_CFG_PERIOD_SHIFT) | in tegra_wdt_start() 110 static int tegra_wdt_stop(struct watchdog_device *wdd) in tegra_wdt_stop() argument 112 struct tegra_wdt *wdt = watchdog_get_drvdata(wdd); in tegra_wdt_stop() 121 static int tegra_wdt_ping(struct watchdog_device *wdd) in tegra_wdt_ping() argument 123 struct tegra_wdt *wdt = watchdog_get_drvdata(wdd); in tegra_wdt_ping() 130 static int tegra_wdt_set_timeout(struct watchdog_device *wdd, in tegra_wdt_set_timeout() argument 133 wdd->timeout = timeout; in tegra_wdt_set_timeout() [all …]
|
| D | qcom-wdt.c | 48 struct watchdog_device wdd; member 60 struct qcom_wdt *to_qcom_wdt(struct watchdog_device *wdd) in to_qcom_wdt() argument 62 return container_of(wdd, struct qcom_wdt, wdd); in to_qcom_wdt() 67 struct watchdog_device *wdd = arg; in qcom_wdt_isr() local 69 watchdog_notify_pretimeout(wdd); in qcom_wdt_isr() 74 static int qcom_wdt_start(struct watchdog_device *wdd) in qcom_wdt_start() argument 76 struct qcom_wdt *wdt = to_qcom_wdt(wdd); in qcom_wdt_start() 77 unsigned int bark = wdd->timeout - wdd->pretimeout; in qcom_wdt_start() 82 writel(wdd->timeout * wdt->rate, wdt_addr(wdt, WDT_BITE_TIME)); in qcom_wdt_start() 87 static int qcom_wdt_stop(struct watchdog_device *wdd) in qcom_wdt_stop() argument [all …]
|
| D | sl28cpld_wdt.c | 41 struct watchdog_device wdd; member 47 static int sl28cpld_wdt_ping(struct watchdog_device *wdd) in sl28cpld_wdt_ping() argument 49 struct sl28cpld_wdt *wdt = watchdog_get_drvdata(wdd); in sl28cpld_wdt_ping() 55 static int sl28cpld_wdt_start(struct watchdog_device *wdd) in sl28cpld_wdt_start() argument 57 struct sl28cpld_wdt *wdt = watchdog_get_drvdata(wdd); in sl28cpld_wdt_start() 70 static int sl28cpld_wdt_stop(struct watchdog_device *wdd) in sl28cpld_wdt_stop() argument 72 struct sl28cpld_wdt *wdt = watchdog_get_drvdata(wdd); in sl28cpld_wdt_stop() 78 static unsigned int sl28cpld_wdt_get_timeleft(struct watchdog_device *wdd) in sl28cpld_wdt_get_timeleft() argument 80 struct sl28cpld_wdt *wdt = watchdog_get_drvdata(wdd); in sl28cpld_wdt_get_timeleft() 91 static int sl28cpld_wdt_set_timeout(struct watchdog_device *wdd, in sl28cpld_wdt_set_timeout() argument [all …]
|
| D | ts72xx_wdt.c | 47 struct watchdog_device wdd; member 51 static int ts72xx_wdt_start(struct watchdog_device *wdd) in ts72xx_wdt_start() argument 53 struct ts72xx_wdt_priv *priv = watchdog_get_drvdata(wdd); in ts72xx_wdt_start() 61 static int ts72xx_wdt_stop(struct watchdog_device *wdd) in ts72xx_wdt_stop() argument 63 struct ts72xx_wdt_priv *priv = watchdog_get_drvdata(wdd); in ts72xx_wdt_stop() 71 static int ts72xx_wdt_ping(struct watchdog_device *wdd) in ts72xx_wdt_ping() argument 73 struct ts72xx_wdt_priv *priv = watchdog_get_drvdata(wdd); in ts72xx_wdt_ping() 80 static int ts72xx_wdt_settimeout(struct watchdog_device *wdd, unsigned int to) in ts72xx_wdt_settimeout() argument 82 struct ts72xx_wdt_priv *priv = watchdog_get_drvdata(wdd); in ts72xx_wdt_settimeout() 97 wdd->timeout = to; in ts72xx_wdt_settimeout() [all …]
|
| D | sbsa_gwdt.c | 88 struct watchdog_device wdd; member 147 static int sbsa_gwdt_set_timeout(struct watchdog_device *wdd, in sbsa_gwdt_set_timeout() argument 150 struct sbsa_gwdt *gwdt = watchdog_get_drvdata(wdd); in sbsa_gwdt_set_timeout() 152 wdd->timeout = timeout; in sbsa_gwdt_set_timeout() 167 static unsigned int sbsa_gwdt_get_timeleft(struct watchdog_device *wdd) in sbsa_gwdt_get_timeleft() argument 169 struct sbsa_gwdt *gwdt = watchdog_get_drvdata(wdd); in sbsa_gwdt_get_timeleft() 189 static int sbsa_gwdt_keepalive(struct watchdog_device *wdd) in sbsa_gwdt_keepalive() argument 191 struct sbsa_gwdt *gwdt = watchdog_get_drvdata(wdd); in sbsa_gwdt_keepalive() 202 static void sbsa_gwdt_get_version(struct watchdog_device *wdd) in sbsa_gwdt_get_version() argument 204 struct sbsa_gwdt *gwdt = watchdog_get_drvdata(wdd); in sbsa_gwdt_get_version() [all …]
|
| D | ts4800_wdt.c | 31 struct watchdog_device wdd; member 64 static int ts4800_wdt_start(struct watchdog_device *wdd) in ts4800_wdt_start() argument 66 struct ts4800_wdt *wdt = watchdog_get_drvdata(wdd); in ts4800_wdt_start() 72 static int ts4800_wdt_stop(struct watchdog_device *wdd) in ts4800_wdt_stop() argument 74 struct ts4800_wdt *wdt = watchdog_get_drvdata(wdd); in ts4800_wdt_stop() 80 static int ts4800_wdt_set_timeout(struct watchdog_device *wdd, in ts4800_wdt_set_timeout() argument 83 struct ts4800_wdt *wdt = watchdog_get_drvdata(wdd); in ts4800_wdt_set_timeout() 91 wdd->timeout = ts4800_wdt_map[i].timeout; in ts4800_wdt_set_timeout() 114 struct watchdog_device *wdd; in ts4800_wdt_probe() local 146 wdd = &wdt->wdd; in ts4800_wdt_probe() [all …]
|
| D | rti_wdt.c | 66 struct watchdog_device wdd; member 69 static int rti_wdt_start(struct watchdog_device *wdd) in rti_wdt_start() argument 72 struct rti_wdt_device *wdt = watchdog_get_drvdata(wdd); in rti_wdt_start() 75 timer_margin = (u64)wdd->timeout * wdt->freq; in rti_wdt_start() 88 wdd->min_hw_heartbeat_ms = 500 * wdd->timeout; in rti_wdt_start() 103 static int rti_wdt_ping(struct watchdog_device *wdd) in rti_wdt_ping() argument 105 struct rti_wdt_device *wdt = watchdog_get_drvdata(wdd); in rti_wdt_ping() 115 static int rti_wdt_setup_hw_hb(struct watchdog_device *wdd, u32 wsize) in rti_wdt_setup_hw_hb() argument 126 wdd->min_hw_heartbeat_ms = 500 * heartbeat; in rti_wdt_setup_hw_hb() 131 wdd->min_hw_heartbeat_ms = 750 * heartbeat; in rti_wdt_setup_hw_hb() [all …]
|
| D | ep93xx_wdt.c | 45 struct watchdog_device wdd; member 48 static int ep93xx_wdt_start(struct watchdog_device *wdd) in ep93xx_wdt_start() argument 50 struct ep93xx_wdt_priv *priv = watchdog_get_drvdata(wdd); in ep93xx_wdt_start() 57 static int ep93xx_wdt_stop(struct watchdog_device *wdd) in ep93xx_wdt_stop() argument 59 struct ep93xx_wdt_priv *priv = watchdog_get_drvdata(wdd); in ep93xx_wdt_stop() 66 static int ep93xx_wdt_ping(struct watchdog_device *wdd) in ep93xx_wdt_ping() argument 68 struct ep93xx_wdt_priv *priv = watchdog_get_drvdata(wdd); in ep93xx_wdt_ping() 94 struct watchdog_device *wdd; in ep93xx_wdt_probe() local 108 wdd = &priv->wdd; in ep93xx_wdt_probe() 109 wdd->bootstatus = (val & 0x01) ? WDIOF_CARDRESET : 0; in ep93xx_wdt_probe() [all …]
|
| D | sp805_wdt.c | 67 struct watchdog_device wdd; member 82 static bool wdt_is_running(struct watchdog_device *wdd) in wdt_is_running() argument 84 struct sp805_wdt *wdt = watchdog_get_drvdata(wdd); in wdt_is_running() 91 static int wdt_setload(struct watchdog_device *wdd, unsigned int timeout) in wdt_setload() argument 93 struct sp805_wdt *wdt = watchdog_get_drvdata(wdd); in wdt_setload() 112 wdd->timeout = div_u64((load + 1) * 2 + (rate / 2), rate); in wdt_setload() 119 static unsigned int wdt_timeleft(struct watchdog_device *wdd) in wdt_timeleft() argument 121 struct sp805_wdt *wdt = watchdog_get_drvdata(wdd); in wdt_timeleft() 136 wdt_restart(struct watchdog_device *wdd, unsigned long mode, void *cmd) in wdt_restart() argument 138 struct sp805_wdt *wdt = watchdog_get_drvdata(wdd); in wdt_restart() [all …]
|
| D | asm9260_wdt.c | 56 struct watchdog_device wdd; member 67 static int asm9260_wdt_feed(struct watchdog_device *wdd) in asm9260_wdt_feed() argument 69 struct asm9260_wdt_priv *priv = watchdog_get_drvdata(wdd); in asm9260_wdt_feed() 77 static unsigned int asm9260_wdt_gettimeleft(struct watchdog_device *wdd) in asm9260_wdt_gettimeleft() argument 79 struct asm9260_wdt_priv *priv = watchdog_get_drvdata(wdd); in asm9260_wdt_gettimeleft() 87 static int asm9260_wdt_updatetimeout(struct watchdog_device *wdd) in asm9260_wdt_updatetimeout() argument 89 struct asm9260_wdt_priv *priv = watchdog_get_drvdata(wdd); in asm9260_wdt_updatetimeout() 92 counter = wdd->timeout * priv->wdt_freq; in asm9260_wdt_updatetimeout() 99 static int asm9260_wdt_enable(struct watchdog_device *wdd) in asm9260_wdt_enable() argument 101 struct asm9260_wdt_priv *priv = watchdog_get_drvdata(wdd); in asm9260_wdt_enable() [all …]
|
| D | tqmx86_wdt.c | 28 struct watchdog_device wdd; member 35 static int tqmx86_wdt_start(struct watchdog_device *wdd) in tqmx86_wdt_start() argument 37 struct tqmx86_wdt *priv = watchdog_get_drvdata(wdd); in tqmx86_wdt_start() 44 static int tqmx86_wdt_set_timeout(struct watchdog_device *wdd, unsigned int t) in tqmx86_wdt_set_timeout() argument 46 struct tqmx86_wdt *priv = watchdog_get_drvdata(wdd); in tqmx86_wdt_set_timeout() 54 wdd->timeout = t; in tqmx86_wdt_set_timeout() 90 watchdog_set_drvdata(&priv->wdd, priv); in tqmx86_wdt_probe() 92 priv->wdd.parent = dev; in tqmx86_wdt_probe() 93 priv->wdd.info = &tqmx86_wdt_info; in tqmx86_wdt_probe() 94 priv->wdd.ops = &tqmx86_wdt_ops; in tqmx86_wdt_probe() [all …]
|
| D | ixp4xx_wdt.c | 24 struct watchdog_device wdd; member 46 struct ixp4xx_wdt *to_ixp4xx_wdt(struct watchdog_device *wdd) in to_ixp4xx_wdt() argument 48 return container_of(wdd, struct ixp4xx_wdt, wdd); in to_ixp4xx_wdt() 51 static int ixp4xx_wdt_start(struct watchdog_device *wdd) in ixp4xx_wdt_start() argument 53 struct ixp4xx_wdt *iwdt = to_ixp4xx_wdt(wdd); in ixp4xx_wdt_start() 57 __raw_writel(wdd->timeout * iwdt->rate, in ixp4xx_wdt_start() 66 static int ixp4xx_wdt_stop(struct watchdog_device *wdd) in ixp4xx_wdt_stop() argument 68 struct ixp4xx_wdt *iwdt = to_ixp4xx_wdt(wdd); in ixp4xx_wdt_stop() 77 static int ixp4xx_wdt_set_timeout(struct watchdog_device *wdd, in ixp4xx_wdt_set_timeout() argument 80 wdd->timeout = timeout; in ixp4xx_wdt_set_timeout() [all …]
|
| D | stm32_iwdg.c | 69 struct watchdog_device wdd; member 87 static int stm32_iwdg_start(struct watchdog_device *wdd) in stm32_iwdg_start() argument 89 struct stm32_iwdg *wdt = watchdog_get_drvdata(wdd); in stm32_iwdg_start() 93 dev_dbg(wdd->parent, "%s\n", __func__); in stm32_iwdg_start() 95 tout = clamp_t(unsigned int, wdd->timeout, in stm32_iwdg_start() 96 wdd->min_timeout, wdd->max_hw_heartbeat_ms / 1000); in stm32_iwdg_start() 118 dev_err(wdd->parent, "Fail to set prescaler, reload regs\n"); in stm32_iwdg_start() 128 static int stm32_iwdg_ping(struct watchdog_device *wdd) in stm32_iwdg_ping() argument 130 struct stm32_iwdg *wdt = watchdog_get_drvdata(wdd); in stm32_iwdg_ping() 132 dev_dbg(wdd->parent, "%s\n", __func__); in stm32_iwdg_ping() [all …]
|
| D | ftwdt010_wdt.c | 38 struct watchdog_device wdd; member 45 struct ftwdt010_wdt *to_ftwdt010_wdt(struct watchdog_device *wdd) in to_ftwdt010_wdt() argument 47 return container_of(wdd, struct ftwdt010_wdt, wdd); in to_ftwdt010_wdt() 50 static int ftwdt010_wdt_start(struct watchdog_device *wdd) in ftwdt010_wdt_start() argument 52 struct ftwdt010_wdt *gwdt = to_ftwdt010_wdt(wdd); in ftwdt010_wdt_start() 55 writel(wdd->timeout * WDT_CLOCK, gwdt->base + FTWDT010_WDLOAD); in ftwdt010_wdt_start() 68 static int ftwdt010_wdt_stop(struct watchdog_device *wdd) in ftwdt010_wdt_stop() argument 70 struct ftwdt010_wdt *gwdt = to_ftwdt010_wdt(wdd); in ftwdt010_wdt_stop() 77 static int ftwdt010_wdt_ping(struct watchdog_device *wdd) in ftwdt010_wdt_ping() argument 79 struct ftwdt010_wdt *gwdt = to_ftwdt010_wdt(wdd); in ftwdt010_wdt_ping() [all …]
|
| D | nic7018_wdt.c | 48 struct watchdog_device wdd; member 86 static int nic7018_set_timeout(struct watchdog_device *wdd, in nic7018_set_timeout() argument 89 struct nic7018_wdt *wdt = watchdog_get_drvdata(wdd); in nic7018_set_timeout() 98 wdd->timeout = nic7018_timeout(config->period, counter); in nic7018_set_timeout() 104 static int nic7018_start(struct watchdog_device *wdd) in nic7018_start() argument 106 struct nic7018_wdt *wdt = watchdog_get_drvdata(wdd); in nic7018_start() 109 nic7018_set_timeout(wdd, wdd->timeout); in nic7018_start() 122 static int nic7018_stop(struct watchdog_device *wdd) in nic7018_stop() argument 124 struct nic7018_wdt *wdt = watchdog_get_drvdata(wdd); in nic7018_stop() 133 static int nic7018_ping(struct watchdog_device *wdd) in nic7018_ping() argument [all …]
|
| D | watchdog_pretimeout.c | 25 struct watchdog_device *wdd; member 66 int watchdog_pretimeout_governor_get(struct watchdog_device *wdd, char *buf) in watchdog_pretimeout_governor_get() argument 71 if (wdd->gov) in watchdog_pretimeout_governor_get() 72 count = sysfs_emit(buf, "%s\n", wdd->gov->name); in watchdog_pretimeout_governor_get() 78 int watchdog_pretimeout_governor_set(struct watchdog_device *wdd, in watchdog_pretimeout_governor_set() argument 92 wdd->gov = priv->gov; in watchdog_pretimeout_governor_set() 100 void watchdog_notify_pretimeout(struct watchdog_device *wdd) in watchdog_notify_pretimeout() argument 105 if (!wdd->gov) { in watchdog_notify_pretimeout() 110 wdd->gov->pretimeout(wdd); in watchdog_notify_pretimeout() 141 if (!p->wdd->gov) in watchdog_register_governor() [all …]
|
| D | sprd_wdt.c | 61 struct watchdog_device wdd; member 67 static inline struct sprd_wdt *to_sprd_wdt(struct watchdog_device *wdd) in to_sprd_wdt() argument 69 return container_of(wdd, struct sprd_wdt, wdd); in to_sprd_wdt() 89 watchdog_notify_pretimeout(&wdt->wdd); in sprd_wdt_isr() 178 static int sprd_wdt_start(struct watchdog_device *wdd) in sprd_wdt_start() argument 180 struct sprd_wdt *wdt = to_sprd_wdt(wdd); in sprd_wdt_start() 184 ret = sprd_wdt_load_value(wdt, wdd->timeout, wdd->pretimeout); in sprd_wdt_start() 193 set_bit(WDOG_HW_RUNNING, &wdd->status); in sprd_wdt_start() 198 static int sprd_wdt_stop(struct watchdog_device *wdd) in sprd_wdt_stop() argument 200 struct sprd_wdt *wdt = to_sprd_wdt(wdd); in sprd_wdt_stop() [all …]
|
| /Linux-v5.15/include/linux/ |
| D | watchdog.h | 128 static inline bool watchdog_active(struct watchdog_device *wdd) in watchdog_active() argument 130 return test_bit(WDOG_ACTIVE, &wdd->status); in watchdog_active() 137 static inline bool watchdog_hw_running(struct watchdog_device *wdd) in watchdog_hw_running() argument 139 return test_bit(WDOG_HW_RUNNING, &wdd->status); in watchdog_hw_running() 143 static inline void watchdog_set_nowayout(struct watchdog_device *wdd, bool nowayout) in watchdog_set_nowayout() argument 146 set_bit(WDOG_NO_WAY_OUT, &wdd->status); in watchdog_set_nowayout() 150 static inline void watchdog_stop_on_reboot(struct watchdog_device *wdd) in watchdog_stop_on_reboot() argument 152 set_bit(WDOG_STOP_ON_REBOOT, &wdd->status); in watchdog_stop_on_reboot() 156 static inline void watchdog_stop_on_unregister(struct watchdog_device *wdd) in watchdog_stop_on_unregister() argument 158 set_bit(WDOG_STOP_ON_UNREGISTER, &wdd->status); in watchdog_stop_on_unregister() [all …]
|