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
12int 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}
31EXPORT_SYMBOL(mxc_set_irq_fiq);
32