Lines Matching refs:irq
29 static int arizona_map_irq(struct arizona *arizona, int irq) in arizona_map_irq() argument
33 ret = regmap_irq_get_virq(arizona->aod_irq_chip, irq); in arizona_map_irq()
35 ret = regmap_irq_get_virq(arizona->irq_chip, irq); in arizona_map_irq()
40 int arizona_request_irq(struct arizona *arizona, int irq, char *name, in arizona_request_irq() argument
43 irq = arizona_map_irq(arizona, irq); in arizona_request_irq()
44 if (irq < 0) in arizona_request_irq()
45 return irq; in arizona_request_irq()
47 return request_threaded_irq(irq, NULL, handler, IRQF_ONESHOT, in arizona_request_irq()
52 void arizona_free_irq(struct arizona *arizona, int irq, void *data) in arizona_free_irq() argument
54 irq = arizona_map_irq(arizona, irq); in arizona_free_irq()
55 if (irq < 0) in arizona_free_irq()
58 free_irq(irq, data); in arizona_free_irq()
62 int arizona_set_irq_wake(struct arizona *arizona, int irq, int on) in arizona_set_irq_wake() argument
64 irq = arizona_map_irq(arizona, irq); in arizona_set_irq_wake()
65 if (irq < 0) in arizona_set_irq_wake()
66 return irq; in arizona_set_irq_wake()
68 return irq_set_irq_wake(irq, on); in arizona_set_irq_wake()
72 static irqreturn_t arizona_boot_done(int irq, void *data) in arizona_boot_done() argument
81 static irqreturn_t arizona_ctrlif_err(int irq, void *data) in arizona_ctrlif_err() argument
94 static irqreturn_t arizona_irq_thread(int irq, void *data) in arizona_irq_thread() argument
159 return irq_set_irq_wake(arizona->irq, on); in arizona_irq_set_wake()
198 const struct regmap_irq_chip *aod, *irq; in arizona_irq_init() local
207 irq = &wm5102_irq; in arizona_irq_init()
219 irq = &wm5110_irq; in arizona_irq_init()
222 irq = &wm5110_revd_irq; in arizona_irq_init()
232 irq = &wm8997_irq; in arizona_irq_init()
247 irq_data = irq_get_irq_data(arizona->irq); in arizona_irq_init()
250 arizona->irq); in arizona_irq_init()
303 IRQF_ONESHOT, 0, irq, in arizona_irq_init()
316 arizona->irq, ret); in arizona_irq_init()
329 arizona->irq, ret); in arizona_irq_init()
336 if (gpio_to_irq(arizona->pdata.irq_gpio) != arizona->irq) { in arizona_irq_init()
338 arizona->irq, arizona->pdata.irq_gpio, in arizona_irq_init()
340 arizona->irq = gpio_to_irq(arizona->pdata.irq_gpio); in arizona_irq_init()
354 ret = request_threaded_irq(arizona->irq, NULL, arizona_irq_thread, in arizona_irq_init()
359 arizona->irq, ret); in arizona_irq_init()
392 free_irq(arizona->irq, arizona); in arizona_irq_exit()