0001
0002
0003
0004
0005
0006 #include <linux/module.h>
0007 #include <linux/irq.h>
0008 #include <linux/platform_data/asoc-imx-ssi.h>
0009
0010 #include "irq-common.h"
0011
0012 int mxc_set_irq_fiq(unsigned int irq, unsigned int type)
0013 {
0014 struct irq_chip_generic *gc;
0015 struct mxc_extra_irq *exirq;
0016 int ret;
0017
0018 ret = -ENOSYS;
0019
0020 gc = irq_get_chip_data(irq);
0021 if (gc && gc->private) {
0022 exirq = gc->private;
0023 if (exirq->set_irq_fiq) {
0024 struct irq_data *d = irq_get_irq_data(irq);
0025 ret = exirq->set_irq_fiq(irqd_to_hwirq(d), type);
0026 }
0027 }
0028
0029 return ret;
0030 }
0031 EXPORT_SYMBOL(mxc_set_irq_fiq);