Skip to content

Commit

Permalink
ARM: EXYNOS: Enable conversion of GIC dt irq specifier to linux virq
Browse files Browse the repository at this point in the history
Enable conversion of device tree interrupt specifier to linux
virq domain for GIC controller.

Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
  • Loading branch information
Thomas Abraham authored and Kukjin Kim committed Dec 23, 2011
1 parent 1fb3726 commit f983575
Showing 1 changed file with 16 additions and 1 deletion.
17 changes: 16 additions & 1 deletion arch/arm/mach-exynos/cpu.c
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@

#include <linux/sched.h>
#include <linux/sysdev.h>
#include <linux/of.h>
#include <linux/of_irq.h>

#include <asm/mach/map.h>
#include <asm/mach/irq.h>
Expand Down Expand Up @@ -218,13 +220,26 @@ static void exynos4_gic_irq_fix_base(struct irq_data *d)
(gic_bank_offset * smp_processor_id());
}

#ifdef CONFIG_OF
static const struct of_device_id exynos4_dt_irq_match[] = {
{ .compatible = "arm,cortex-a9-gic", .data = gic_of_init, },
{},
};
#endif

void __init exynos4_init_irq(void)
{
int irq;

gic_bank_offset = soc_is_exynos4412() ? 0x4000 : 0x8000;

gic_init(0, IRQ_PPI(0), S5P_VA_GIC_DIST, S5P_VA_GIC_CPU);
if (!of_have_populated_dt())
gic_init(0, IRQ_PPI(0), S5P_VA_GIC_DIST, S5P_VA_GIC_CPU);
#ifdef CONFIG_OF
else
of_irq_init(exynos4_dt_irq_match);
#endif

gic_arch_extn.irq_eoi = exynos4_gic_irq_fix_base;
gic_arch_extn.irq_unmask = exynos4_gic_irq_fix_base;
gic_arch_extn.irq_mask = exynos4_gic_irq_fix_base;
Expand Down

0 comments on commit f983575

Please sign in to comment.