.. | .. |
---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-or-later |
---|
1 | 2 | /* |
---|
2 | 3 | * System timer for CSR SiRFprimaII |
---|
3 | 4 | * |
---|
4 | 5 | * Copyright (c) 2011 Cambridge Silicon Radio Limited, a CSR plc group company. |
---|
5 | | - * |
---|
6 | | - * Licensed under GPLv2 or later. |
---|
7 | 6 | */ |
---|
8 | 7 | |
---|
9 | 8 | #include <linux/kernel.h> |
---|
.. | .. |
---|
166 | 165 | .resume = sirfsoc_clocksource_resume, |
---|
167 | 166 | }; |
---|
168 | 167 | |
---|
169 | | -static struct irqaction sirfsoc_timer_irq = { |
---|
170 | | - .name = "sirfsoc_timer0", |
---|
171 | | - .flags = IRQF_TIMER, |
---|
172 | | - .irq = 0, |
---|
173 | | - .handler = sirfsoc_timer_interrupt, |
---|
174 | | - .dev_id = &sirfsoc_clockevent, |
---|
175 | | -}; |
---|
176 | | - |
---|
177 | 168 | /* Overwrite weak default sched_clock with more precise one */ |
---|
178 | 169 | static u64 notrace sirfsoc_read_sched_clock(void) |
---|
179 | 170 | { |
---|
.. | .. |
---|
191 | 182 | static int __init sirfsoc_prima2_timer_init(struct device_node *np) |
---|
192 | 183 | { |
---|
193 | 184 | unsigned long rate; |
---|
| 185 | + unsigned int irq; |
---|
194 | 186 | struct clk *clk; |
---|
195 | 187 | int ret; |
---|
196 | 188 | |
---|
.. | .. |
---|
219 | 211 | return -ENXIO; |
---|
220 | 212 | } |
---|
221 | 213 | |
---|
222 | | - sirfsoc_timer_irq.irq = irq_of_parse_and_map(np, 0); |
---|
| 214 | + irq = irq_of_parse_and_map(np, 0); |
---|
223 | 215 | |
---|
224 | 216 | writel_relaxed(rate / PRIMA2_CLOCK_FREQ / 2 - 1, |
---|
225 | 217 | sirfsoc_timer_base + SIRFSOC_TIMER_DIV); |
---|
.. | .. |
---|
235 | 227 | |
---|
236 | 228 | sched_clock_register(sirfsoc_read_sched_clock, 64, PRIMA2_CLOCK_FREQ); |
---|
237 | 229 | |
---|
238 | | - ret = setup_irq(sirfsoc_timer_irq.irq, &sirfsoc_timer_irq); |
---|
| 230 | + ret = request_irq(irq, sirfsoc_timer_interrupt, IRQF_TIMER, |
---|
| 231 | + "sirfsoc_timer0", &sirfsoc_clockevent); |
---|
239 | 232 | if (ret) { |
---|
240 | 233 | pr_err("Failed to setup irq\n"); |
---|
241 | 234 | return ret; |
---|