1 | // SPDX-License-Identifier: GPL-2.0-or-later |
---|---|
2 | /* |
3 | * Copyright (C) BitBox Ltd 2010 |
4 | */ |
5 | |
6 | #include <linux/module.h> |
7 | #include <linux/irq.h> |
8 | #include <linux/platform_data/asoc-imx-ssi.h> |
9 | |
10 | #include "irq-common.h" |
11 | |
12 | int mxc_set_irq_fiq(unsigned int irq, unsigned int type) |
13 | { |
14 | struct irq_chip_generic *gc; |
15 | struct mxc_extra_irq *exirq; |
16 | int ret; |
17 | |
18 | ret = -ENOSYS; |
19 | |
20 | gc = irq_get_chip_data(irq); |
21 | if (gc && gc->private) { |
22 | exirq = gc->private; |
23 | if (exirq->set_irq_fiq) { |
24 | struct irq_data *d = irq_get_irq_data(irq); |
25 | ret = exirq->set_irq_fiq(irqd_to_hwirq(d), type); |
26 | } |
27 | } |
28 | |
29 | return ret; |
30 | } |
31 | EXPORT_SYMBOL(mxc_set_irq_fiq); |
32 |