/**@brief WDT interrupt handler. */ static void nxp_wdt_irq_handler(void) { if (WDOG_GetStatusFlags(wdog_base) && kWDOG_RunningFlag) { WDOG_ClearStatusFlags(wdog_base, kWDOG_TimeoutFlag); nxp_hal_wdt_default_handler(); } }
static void mcux_wdog_isr(void *arg) { struct device *dev = (struct device *)arg; const struct mcux_wdog_config *config = dev->config->config_info; struct mcux_wdog_data *data = dev->driver_data; WDOG_Type *base = config->base; u32_t flags; flags = WDOG_GetStatusFlags(base); WDOG_ClearStatusFlags(base, flags); if (data->callback) { data->callback(dev, 0); } }