aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mxs
diff options
context:
space:
mode:
authorShawn Guo <shawn.guo@linaro.org>2013-03-25 09:13:22 -0400
committerShawn Guo <shawn.guo@linaro.org>2013-04-01 04:30:03 -0400
commit8256aa7129f5d0d1692f6a18b83b66fef43405ed (patch)
tree1ae2981095251fb73d6bf2d0af394ec9d20ff137 /arch/arm/mach-mxs
parentc74512bf83f3568baf566265c5bd3b8a96ede353 (diff)
ARM: mxs: get icoll base address from device tree
Rather than using the static definition, it gets icoll base address with mapping from device tree. As the result, <mach/mxs.h> inclusion can be removed from the driver now. Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Diffstat (limited to 'arch/arm/mach-mxs')
-rw-r--r--arch/arm/mach-mxs/icoll.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/arm/mach-mxs/icoll.c b/arch/arm/mach-mxs/icoll.c
index e26eeba46598..1cf32af1e3f6 100644
--- a/arch/arm/mach-mxs/icoll.c
+++ b/arch/arm/mach-mxs/icoll.c
@@ -22,9 +22,9 @@
22#include <linux/irqdomain.h> 22#include <linux/irqdomain.h>
23#include <linux/io.h> 23#include <linux/io.h>
24#include <linux/of.h> 24#include <linux/of.h>
25#include <linux/of_address.h>
25#include <linux/of_irq.h> 26#include <linux/of_irq.h>
26#include <asm/exception.h> 27#include <asm/exception.h>
27#include <mach/mxs.h>
28#include <mach/common.h> 28#include <mach/common.h>
29 29
30#define HW_ICOLL_VECTOR 0x0000 30#define HW_ICOLL_VECTOR 0x0000
@@ -38,7 +38,7 @@
38 38
39#define ICOLL_NUM_IRQS 128 39#define ICOLL_NUM_IRQS 128
40 40
41static void __iomem *icoll_base = MXS_IO_ADDRESS(MXS_ICOLL_BASE_ADDR); 41static void __iomem *icoll_base;
42static struct irq_domain *icoll_domain; 42static struct irq_domain *icoll_domain;
43 43
44static void icoll_ack_irq(struct irq_data *d) 44static void icoll_ack_irq(struct irq_data *d)
@@ -103,6 +103,9 @@ static struct irq_domain_ops icoll_irq_domain_ops = {
103static void __init icoll_of_init(struct device_node *np, 103static void __init icoll_of_init(struct device_node *np,
104 struct device_node *interrupt_parent) 104 struct device_node *interrupt_parent)
105{ 105{
106 icoll_base = of_iomap(np, 0);
107 WARN_ON(!icoll_base);
108
106 /* 109 /*
107 * Interrupt Collector reset, which initializes the priority 110 * Interrupt Collector reset, which initializes the priority
108 * for each irq to level 0. 111 * for each irq to level 0.