diff options
| author | Kukjin Kim <kgene.kim@samsung.com> | 2013-07-15 23:18:19 -0400 |
|---|---|---|
| committer | Kukjin Kim <kgene.kim@samsung.com> | 2013-07-15 23:30:40 -0400 |
| commit | 0f5615117b812ce171469bd7e5d00037aaab4845 (patch) | |
| tree | 2a70ad173f851d8e9e56eb97b1a897ddd0d767ec | |
| parent | ad81f0545ef01ea651886dddac4bef6cec930092 (diff) | |
irqchip: exynos: cleanup non-DT stuff in exynos-combiner
For EXYNOS SoCs, only can support for DT so removes non-DT stuff
in exynos-combiner.
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
| -rw-r--r-- | drivers/irqchip/exynos-combiner.c | 44 |
1 files changed, 1 insertions, 43 deletions
diff --git a/drivers/irqchip/exynos-combiner.c b/drivers/irqchip/exynos-combiner.c index 4c6826513901..868ed40cb6bf 100644 --- a/drivers/irqchip/exynos-combiner.c +++ b/drivers/irqchip/exynos-combiner.c | |||
| @@ -19,10 +19,6 @@ | |||
| 19 | #include <linux/of_irq.h> | 19 | #include <linux/of_irq.h> |
| 20 | #include <asm/mach/irq.h> | 20 | #include <asm/mach/irq.h> |
| 21 | 21 | ||
| 22 | #ifdef CONFIG_EXYNOS_ATAGS | ||
| 23 | #include <plat/cpu.h> | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #include "irqchip.h" | 22 | #include "irqchip.h" |
| 27 | 23 | ||
| 28 | #define COMBINER_ENABLE_SET 0x0 | 24 | #define COMBINER_ENABLE_SET 0x0 |
| @@ -138,7 +134,6 @@ static void __init combiner_init_one(struct combiner_chip_data *combiner_data, | |||
| 138 | __raw_writel(combiner_data->irq_mask, base + COMBINER_ENABLE_CLEAR); | 134 | __raw_writel(combiner_data->irq_mask, base + COMBINER_ENABLE_CLEAR); |
| 139 | } | 135 | } |
| 140 | 136 | ||
| 141 | #ifdef CONFIG_OF | ||
| 142 | static int combiner_irq_domain_xlate(struct irq_domain *d, | 137 | static int combiner_irq_domain_xlate(struct irq_domain *d, |
| 143 | struct device_node *controller, | 138 | struct device_node *controller, |
| 144 | const u32 *intspec, unsigned int intsize, | 139 | const u32 *intspec, unsigned int intsize, |
| @@ -156,16 +151,6 @@ static int combiner_irq_domain_xlate(struct irq_domain *d, | |||
| 156 | 151 | ||
| 157 | return 0; | 152 | return 0; |
| 158 | } | 153 | } |
| 159 | #else | ||
| 160 | static int combiner_irq_domain_xlate(struct irq_domain *d, | ||
| 161 | struct device_node *controller, | ||
| 162 | const u32 *intspec, unsigned int intsize, | ||
| 163 | unsigned long *out_hwirq, | ||
| 164 | unsigned int *out_type) | ||
| 165 | { | ||
| 166 | return -EINVAL; | ||
| 167 | } | ||
| 168 | #endif | ||
| 169 | 154 | ||
| 170 | static int combiner_irq_domain_map(struct irq_domain *d, unsigned int irq, | 155 | static int combiner_irq_domain_map(struct irq_domain *d, unsigned int irq, |
| 171 | irq_hw_number_t hw) | 156 | irq_hw_number_t hw) |
| @@ -184,26 +169,6 @@ static struct irq_domain_ops combiner_irq_domain_ops = { | |||
| 184 | .map = combiner_irq_domain_map, | 169 | .map = combiner_irq_domain_map, |
| 185 | }; | 170 | }; |
| 186 | 171 | ||
| 187 | static unsigned int combiner_lookup_irq(int group) | ||
| 188 | { | ||
| 189 | #ifdef CONFIG_EXYNOS_ATAGS | ||
| 190 | if (group < EXYNOS4210_MAX_COMBINER_NR || soc_is_exynos5250()) | ||
| 191 | return IRQ_SPI(group); | ||
| 192 | |||
| 193 | switch (group) { | ||
| 194 | case 16: | ||
| 195 | return IRQ_SPI(107); | ||
| 196 | case 17: | ||
| 197 | return IRQ_SPI(108); | ||
| 198 | case 18: | ||
| 199 | return IRQ_SPI(48); | ||
| 200 | case 19: | ||
| 201 | return IRQ_SPI(42); | ||
| 202 | } | ||
| 203 | #endif | ||
| 204 | return 0; | ||
| 205 | } | ||
| 206 | |||
| 207 | static void __init combiner_init(void __iomem *combiner_base, | 172 | static void __init combiner_init(void __iomem *combiner_base, |
| 208 | struct device_node *np, | 173 | struct device_node *np, |
| 209 | unsigned int max_nr, | 174 | unsigned int max_nr, |
| @@ -229,12 +194,7 @@ static void __init combiner_init(void __iomem *combiner_base, | |||
| 229 | } | 194 | } |
| 230 | 195 | ||
| 231 | for (i = 0; i < max_nr; i++) { | 196 | for (i = 0; i < max_nr; i++) { |
| 232 | #ifdef CONFIG_OF | 197 | irq = irq_of_parse_and_map(np, i); |
| 233 | if (np) | ||
| 234 | irq = irq_of_parse_and_map(np, i); | ||
| 235 | else | ||
| 236 | #endif | ||
| 237 | irq = combiner_lookup_irq(i); | ||
| 238 | 198 | ||
| 239 | combiner_init_one(&combiner_data[i], i, | 199 | combiner_init_one(&combiner_data[i], i, |
| 240 | combiner_base + (i >> 2) * 0x10, irq); | 200 | combiner_base + (i >> 2) * 0x10, irq); |
| @@ -242,7 +202,6 @@ static void __init combiner_init(void __iomem *combiner_base, | |||
| 242 | } | 202 | } |
| 243 | } | 203 | } |
| 244 | 204 | ||
| 245 | #ifdef CONFIG_OF | ||
| 246 | static int __init combiner_of_init(struct device_node *np, | 205 | static int __init combiner_of_init(struct device_node *np, |
| 247 | struct device_node *parent) | 206 | struct device_node *parent) |
| 248 | { | 207 | { |
| @@ -275,4 +234,3 @@ static int __init combiner_of_init(struct device_node *np, | |||
| 275 | } | 234 | } |
| 276 | IRQCHIP_DECLARE(exynos4210_combiner, "samsung,exynos4210-combiner", | 235 | IRQCHIP_DECLARE(exynos4210_combiner, "samsung,exynos4210-combiner", |
| 277 | combiner_of_init); | 236 | combiner_of_init); |
| 278 | #endif | ||
