aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulien Grall <julien.grall@linaro.org>2013-05-08 00:04:07 +0100
committerIan Campbell <ian.campbell@citrix.com>2013-05-13 11:59:58 +0100
commita55acb35cbef4ea50f91fb05915e3934754ad4de (patch)
treeab9d07cd1f0855418d1b241cbd46d8c8c9287f9d
parent6f5d777f4c44e2ce73691ddfde3d5531c443690a (diff)
downloadxen-a55acb35cbef4ea50f91fb05915e3934754ad4de.tar.gz
xen-a55acb35cbef4ea50f91fb05915e3934754ad4de.tar.bz2
xen-a55acb35cbef4ea50f91fb05915e3934754ad4de.zip
xen/arm: Introduce request_dt_irq
This function will replace request_irq in a later patch. It takes a dt_irq as first argument instead of an unsigned int. Signed-off-by: Julien Grall <julien.grall@linaro.org> Acked-by: Ian Campbell <ian.campbell@citrix.com>
-rw-r--r--xen/arch/arm/irq.c7
-rw-r--r--xen/include/asm-arm/irq.h4
2 files changed, 11 insertions, 0 deletions
diff --git a/xen/arch/arm/irq.c b/xen/arch/arm/irq.c
index b2e486f891..e83ad22745 100644
--- a/xen/arch/arm/irq.c
+++ b/xen/arch/arm/irq.c
@@ -93,6 +93,13 @@ void __cpuinit init_secondary_IRQ(void)
BUG_ON(init_local_irq_data() < 0);
}
+int __init request_dt_irq(const struct dt_irq *irq,
+ void (*handler)(int, void *, struct cpu_user_regs *),
+ unsigned long irqflags, const char *devname, void *dev_id)
+{
+ return request_irq(irq->irq, handler, irqflags, devname, dev_id);
+}
+
int __init request_irq(unsigned int irq,
void (*handler)(int, void *, struct cpu_user_regs *),
unsigned long irqflags, const char * devname, void *dev_id)
diff --git a/xen/include/asm-arm/irq.h b/xen/include/asm-arm/irq.h
index de3aa221e8..80ff68dfc6 100644
--- a/xen/include/asm-arm/irq.h
+++ b/xen/include/asm-arm/irq.h
@@ -40,6 +40,10 @@ 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 request_dt_irq(const struct dt_irq *irq,
+ void (*handler)(int, void *, struct cpu_user_regs *),
+ unsigned long irqflags, const char *devname,
+ void *dev_id);
int __init setup_dt_irq(const struct dt_irq *irq, struct irqaction *new);
#endif /* _ASM_HW_IRQ_H */