Lines Matching +full:interrupt +full:- +full:counter

1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Copyright (C) 2014 Oleksij Rempel <linux@rempel-privat.de>
8 #include <linux/interrupt.h>
19 #define DRIVER_NAME "asm9260-timer"
23 * 0x0 - plain read write mode
24 * 0x4 - set mode, OR logic.
25 * 0x8 - clr mode, XOR logic.
26 * 0xc - togle mode.
31 #define HW_IR 0x0000 /* RW. Interrupt */
40 * Timer Counter and the Prescale Counter are synchronously reset on the
48 * 1 - Timer Counter and Prescale Counter are enabled for counting
49 * 0 - counters are disabled */
56 /* 00 - count up
57 * 01 - count down
58 * 10 - ?? 2^n/2 */
70 #define HW_TC0 0x0030 /* RO. Timer counter 0 */
71 /* HW_TC*. Timer counter owerflow (0xffff.ffff to 0x0000.0000) do not generate
72 * interrupt. This registers can be used to detect overflow */
79 #define HW_PC 0x0080 /* RO. Prescaler counter */
81 /* enable interrupt on match */
93 #define HW_CTCR 0x0180 /* Counter control */
171 evt->event_handler(evt); in asm9260_timer_interrupt()
179 * ---------------------------------------------------------------------------
181 * ---------------------------------------------------------------------------
190 priv.base = of_io_request_and_map(np, 0, np->name); in asm9260_timer_init()
216 /* set all timers for count-up */ in asm9260_timer_init()
222 /* enable interrupt for TC0 and clean setting for all other lines */ in asm9260_timer_init()
229 /* Seems like we can't use counter without match register even if in asm9260_timer_init()
241 TIMER_OF_DECLARE(asm9260_timer, "alphascale,asm9260-timer",