summaryrefslogtreecommitdiff
path: root/arch/arm
diff options
context:
space:
mode:
authorLee Jones <lee.jones@linaro.org>2012-04-20 00:36:31 +0400
committerLinus Walleij <linus.walleij@linaro.org>2012-04-24 11:36:07 +0400
commita60b57eddaa8af6c02cf7bbeb58ebf82881f08ac (patch)
tree896840b87a4b6e225d0e62bdeb22173cba822731 /arch/arm
parent513c27f84e283341889ee17737e1e7e9f99ebeb5 (diff)
downloadlinux-a60b57eddaa8af6c02cf7bbeb58ebf82881f08ac.tar.xz
drivers/gpio: gpio-nomadik: Add support for irqdomains
Add irq domain support to the gpio-nomadik GPIO driver. This enables its users to support dynamic IRQ assignment, which is requried by Device Tree. Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-ux500/cpu.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/arm/mach-ux500/cpu.c b/arch/arm/mach-ux500/cpu.c
index d11f3892a27d..f6522f9f129c 100644
--- a/arch/arm/mach-ux500/cpu.c
+++ b/arch/arm/mach-ux500/cpu.c
@@ -30,6 +30,18 @@
void __iomem *_PRCMU_BASE;
+/*
+ * FIXME: Should we set up the GPIO domain here?
+ *
+ * The problem is that we cannot put the interrupt resources into the platform
+ * device until the irqdomain has been added. Right now, we set the GIC interrupt
+ * domain from init_irq(), then load the gpio driver from
+ * core_initcall(nmk_gpio_init) and add the platform devices from
+ * arch_initcall(customize_machine).
+ *
+ * This feels fragile because it depends on the gpio device getting probed
+ * _before_ any device uses the gpio interrupts.
+*/
static const struct of_device_id ux500_dt_irq_match[] = {
{ .compatible = "arm,cortex-a9-gic", .data = gic_of_init, },
{},