]> git.karo-electronics.de Git - linux-beck.git/blobdiff - arch/arm/mach-imx/mach-imx6q.c
Merge tag 'imx6q-cpudile-3.9' of git://git.linaro.org/people/shawnguo/linux-2.6 into...
[linux-beck.git] / arch / arm / mach-imx / mach-imx6q.c
index 77a3b4bfff2093fc1602556b7ffa85b7a0328024..1786b2d1257eb0f77b92564f93f07f17b8fbdf65 100644 (file)
@@ -17,6 +17,7 @@
 #include <linux/init.h>
 #include <linux/io.h>
 #include <linux/irq.h>
+#include <linux/irqchip.h>
 #include <linux/of.h>
 #include <linux/of_address.h>
 #include <linux/of_irq.h>
@@ -27,7 +28,6 @@
 #include <linux/mfd/syscon.h>
 #include <asm/smp_twd.h>
 #include <asm/hardware/cache-l2x0.h>
-#include <asm/hardware/gic.h>
 #include <asm/mach/arch.h>
 #include <asm/mach/map.h>
 #include <asm/mach/time.h>
@@ -216,17 +216,12 @@ static void __init imx6q_map_io(void)
        imx_scu_map_io();
 }
 
-static const struct of_device_id imx6q_irq_match[] __initconst = {
-       { .compatible = "arm,cortex-a9-gic", .data = gic_of_init, },
-       { /* sentinel */ }
-};
-
 static void __init imx6q_init_irq(void)
 {
        l2x0_of_init(0, ~0UL);
        imx_src_init();
        imx_gpc_init();
-       of_irq_init(imx6q_irq_match);
+       irqchip_init();
 }
 
 static void __init imx6q_timer_init(void)
@@ -236,10 +231,6 @@ static void __init imx6q_timer_init(void)
        imx_print_silicon_rev("i.MX6Q", imx6q_revision());
 }
 
-static struct sys_timer imx6q_timer = {
-       .init = imx6q_timer_init,
-};
-
 static const char *imx6q_dt_compat[] __initdata = {
        "fsl,imx6q",
        NULL,
@@ -249,8 +240,7 @@ DT_MACHINE_START(IMX6Q, "Freescale i.MX6 Quad (Device Tree)")
        .smp            = smp_ops(imx_smp_ops),
        .map_io         = imx6q_map_io,
        .init_irq       = imx6q_init_irq,
-       .handle_irq     = imx6q_handle_irq,
-       .timer          = &imx6q_timer,
+       .init_time      = imx6q_timer_init,
        .init_machine   = imx6q_init_machine,
        .init_late      = imx6q_init_late,
        .dt_compat      = imx6q_dt_compat,