Lines Matching refs:dsp_wdt
32 static struct dsp_wdt_setting dsp_wdt;
46 value = __raw_readl(dsp_wdt.reg_base + OMAP3_WDT3_ISR_OFFSET);
47 __raw_writel(value, dsp_wdt.reg_base + OMAP3_WDT3_ISR_OFFSET);
49 tasklet_schedule(&dsp_wdt.wdt3_tasklet);
57 dsp_wdt.sm_wdt = NULL;
58 dsp_wdt.reg_base = OMAP2_L4_IO_ADDRESS(OMAP34XX_WDT3_BASE);
59 tasklet_init(&dsp_wdt.wdt3_tasklet, dsp_wdt_dpc, 0);
61 dsp_wdt.fclk = clk_get(NULL, "wdt3_fck");
63 if (dsp_wdt.fclk) {
64 dsp_wdt.iclk = clk_get(NULL, "wdt3_ick");
65 if (!dsp_wdt.iclk) {
66 clk_put(dsp_wdt.fclk);
67 dsp_wdt.fclk = NULL;
75 "dsp_wdt", &dsp_wdt);
86 dsp_wdt.sm_wdt = data;
87 dsp_wdt.sm_wdt->wdt_overflow = CONFIG_TIDSPBRIDGE_WDT_TIMEOUT;
93 free_irq(INT_34XX_WDT3_IRQ, &dsp_wdt);
94 tasklet_kill(&dsp_wdt.wdt3_tasklet);
96 if (dsp_wdt.fclk)
97 clk_put(dsp_wdt.fclk);
98 if (dsp_wdt.iclk)
99 clk_put(dsp_wdt.iclk);
101 dsp_wdt.fclk = NULL;
102 dsp_wdt.iclk = NULL;
103 dsp_wdt.sm_wdt = NULL;
104 dsp_wdt.reg_base = NULL;
112 if (wdt_enable == enable || !dsp_wdt.fclk || !dsp_wdt.iclk)
118 clk_enable(dsp_wdt.fclk);
119 clk_enable(dsp_wdt.iclk);
120 dsp_wdt.sm_wdt->wdt_setclocks = 1;
121 tmp = __raw_readl(dsp_wdt.reg_base + OMAP3_WDT3_ISR_OFFSET);
122 __raw_writel(tmp, dsp_wdt.reg_base + OMAP3_WDT3_ISR_OFFSET);
126 dsp_wdt.sm_wdt->wdt_setclocks = 0;
127 clk_disable(dsp_wdt.iclk);
128 clk_disable(dsp_wdt.fclk);