Searched refs:mtx1_wdt_device (Results 1 - 1 of 1) sorted by relevance

/linux-4.1.27/drivers/watchdog/
H A Dmtx-1_wdt.c69 } mtx1_wdt_device; variable in typeref:struct:__anon10690
73 spin_lock(&mtx1_wdt_device.lock); mtx1_wdt_trigger()
74 if (mtx1_wdt_device.running) mtx1_wdt_trigger()
78 mtx1_wdt_device.gstate = !mtx1_wdt_device.gstate; mtx1_wdt_trigger()
79 gpio_set_value(mtx1_wdt_device.gpio, mtx1_wdt_device.gstate); mtx1_wdt_trigger()
81 if (mtx1_wdt_device.queue && ticks) mtx1_wdt_trigger()
82 mod_timer(&mtx1_wdt_device.timer, jiffies + MTX1_WDT_INTERVAL); mtx1_wdt_trigger()
84 complete(&mtx1_wdt_device.stop); mtx1_wdt_trigger()
85 spin_unlock(&mtx1_wdt_device.lock); mtx1_wdt_trigger()
90 ticks = mtx1_wdt_device.default_ticks; mtx1_wdt_reset()
98 spin_lock_irqsave(&mtx1_wdt_device.lock, flags); mtx1_wdt_start()
99 if (!mtx1_wdt_device.queue) { mtx1_wdt_start()
100 mtx1_wdt_device.queue = 1; mtx1_wdt_start()
101 mtx1_wdt_device.gstate = 1; mtx1_wdt_start()
102 gpio_set_value(mtx1_wdt_device.gpio, 1); mtx1_wdt_start()
103 mod_timer(&mtx1_wdt_device.timer, jiffies + MTX1_WDT_INTERVAL); mtx1_wdt_start()
105 mtx1_wdt_device.running++; mtx1_wdt_start()
106 spin_unlock_irqrestore(&mtx1_wdt_device.lock, flags); mtx1_wdt_start()
113 spin_lock_irqsave(&mtx1_wdt_device.lock, flags); mtx1_wdt_stop()
114 if (mtx1_wdt_device.queue) { mtx1_wdt_stop()
115 mtx1_wdt_device.queue = 0; mtx1_wdt_stop()
116 mtx1_wdt_device.gstate = 0; mtx1_wdt_stop()
117 gpio_set_value(mtx1_wdt_device.gpio, 0); mtx1_wdt_stop()
119 ticks = mtx1_wdt_device.default_ticks; mtx1_wdt_stop()
120 spin_unlock_irqrestore(&mtx1_wdt_device.lock, flags); mtx1_wdt_stop()
128 if (test_and_set_bit(0, &mtx1_wdt_device.inuse)) mtx1_wdt_open()
136 clear_bit(0, &mtx1_wdt_device.inuse); mtx1_wdt_release()
210 mtx1_wdt_device.gpio = pdev->resource[0].start; mtx1_wdt_probe()
211 ret = devm_gpio_request_one(&pdev->dev, mtx1_wdt_device.gpio, mtx1_wdt_probe()
218 spin_lock_init(&mtx1_wdt_device.lock); mtx1_wdt_probe()
219 init_completion(&mtx1_wdt_device.stop); mtx1_wdt_probe()
220 mtx1_wdt_device.queue = 0; mtx1_wdt_probe()
221 clear_bit(0, &mtx1_wdt_device.inuse); mtx1_wdt_probe()
222 setup_timer(&mtx1_wdt_device.timer, mtx1_wdt_trigger, 0L); mtx1_wdt_probe()
223 mtx1_wdt_device.default_ticks = ticks; mtx1_wdt_probe()
238 if (mtx1_wdt_device.queue) { mtx1_wdt_remove()
239 mtx1_wdt_device.queue = 0; mtx1_wdt_remove()
240 wait_for_completion(&mtx1_wdt_device.stop); mtx1_wdt_remove()

Completed in 30 milliseconds