GNU Linux-libre 4.14.290-gnu1
[releases.git] / include / linux / irqchip / metag-ext.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Copyright (C) 2012 Imagination Technologies
4  */
5
6 #ifndef _LINUX_IRQCHIP_METAG_EXT_H_
7 #define _LINUX_IRQCHIP_METAG_EXT_H_
8
9 struct irq_data;
10 struct platform_device;
11
12 /* called from core irq code at init */
13 int init_external_IRQ(void);
14
15 /*
16  * called from SoC init_irq() callback to dynamically indicate the lack of
17  * HWMASKEXT registers.
18  */
19 void meta_intc_no_mask(void);
20
21 /*
22  * These allow SoCs to specialise the interrupt controller from their init_irq
23  * callbacks.
24  */
25
26 extern struct irq_chip meta_intc_edge_chip;
27 extern struct irq_chip meta_intc_level_chip;
28
29 /* this should be called in the mask callback */
30 void meta_intc_mask_irq_simple(struct irq_data *data);
31 /* this should be called in the unmask callback */
32 void meta_intc_unmask_irq_simple(struct irq_data *data);
33
34 #endif /* _LINUX_IRQCHIP_METAG_EXT_H_ */