@@ -521,6 +521,11 @@ static int __setup_irq(struct irq_desc *desc, unsigned int irq,
return 0;
}
+int __init setup_dt_irq(const struct dt_irq *irq, struct irqaction *new)
+{
+ return setup_irq(irq->irq, new);
+}
+
int __init setup_irq(unsigned int irq, struct irqaction *new)
{
int rc;
@@ -2,6 +2,7 @@
#define _ASM_HW_IRQ_H
#include <xen/config.h>
+#include <xen/device_tree.h>
#define NR_VECTORS 256 /* XXX */
@@ -25,6 +26,7 @@ struct irq_cfg {
#define nr_static_irqs NR_IRQS
struct irq_desc;
+struct irqaction;
struct irq_desc *__irq_to_desc(int irq);
@@ -37,6 +39,8 @@ void do_IRQ(struct cpu_user_regs *regs, unsigned int irq, int is_fiq);
void init_IRQ(void);
void init_secondary_IRQ(void);
+int __init setup_dt_irq(const struct dt_irq *irq, struct irqaction *new);
+
#endif /* _ASM_HW_IRQ_H */
/*
* Local variables:
This function will replace setup_irq in later patch. It takes a dt_irq as first argument instead of an unsigned int. Signed-off-by: Julien Grall <julien.grall@linaro.org> --- xen/arch/arm/gic.c | 5 +++++ xen/include/asm-arm/irq.h | 4 ++++ 2 files changed, 9 insertions(+)