imx: move gpio init after to irq init
authorJason Wang <jason77.wang@gmail.com>
Tue, 13 Jul 2010 13:02:42 +0000 (21:02 +0800)
committerSascha Hauer <s.hauer@pengutronix.de>
Mon, 26 Jul 2010 13:05:35 +0000 (15:05 +0200)
The commit 9a763bf "get rid of mxc_gpio_init" changed gpio_init
and irq_init sequence. Usually we will call set_irq_chained_handler
in gpio_init functions, this should be called after the irq_init
called, otherwise the chained irq can't get propoer irq_chip and this
irq will remain masked even we called set_irq_chained_handler.

Signed-off-by: Jason Wang <jason77.wang@gmail.com>
Tested-by: Eric BĂ©nard <eric@eukrea.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
arch/arm/mach-imx/mm-imx1.c
arch/arm/mach-imx/mm-imx21.c
arch/arm/mach-imx/mm-imx27.c
arch/arm/mach-mx25/mm.c
arch/arm/mach-mx3/mm.c
arch/arm/mach-mx5/mm.c

index 117ebf6bc951f2bb5418443094f9882b25447e92..9be92b96dc8961d02efe8a019ac95a46d1647295 100644 (file)
@@ -45,6 +45,6 @@ int imx1_register_gpios(void);
 
 void __init mx1_init_irq(void)
 {
-       imx1_register_gpios();
        mxc_init_irq(MX1_IO_ADDRESS(MX1_AVIC_BASE_ADDR));
+       imx1_register_gpios();
 }
index 68aa5d2ecdb1da8fd2a5955cd07952e1a73b8f49..12faeeaa0a9706ce4ea2eb0c774abff437dc9901 100644 (file)
@@ -81,6 +81,6 @@ int imx21_register_gpios(void);
 
 void __init mx21_init_irq(void)
 {
-       imx21_register_gpios();
        mxc_init_irq(MX21_IO_ADDRESS(MX21_AVIC_BASE_ADDR));
+       imx21_register_gpios();
 }
index bcedce9c87dd14325cb7717b37a386edce8a1326..a24622957ff2dc3eeed0f1e949d4a12fc35a9e30 100644 (file)
@@ -81,6 +81,6 @@ int imx27_register_gpios(void);
 
 void __init mx27_init_irq(void)
 {
-       imx27_register_gpios();
        mxc_init_irq(MX27_IO_ADDRESS(MX27_AVIC_BASE_ADDR));
+       imx27_register_gpios();
 }
index 593e14545f5ae578a88be2ffbb32b3df540d48eb..bb677111fb0f11cca20f5ff143cf397412b92587 100644 (file)
@@ -69,7 +69,7 @@ int imx25_register_gpios(void);
 
 void __init mx25_init_irq(void)
 {
-       imx25_register_gpios();
        mxc_init_irq((void __iomem *)MX25_AVIC_BASE_ADDR_VIRT);
+       imx25_register_gpios();
 }
 
index a378fba49a8b0e13de406a6c86436e24aec55d05..20e48c0195c4f8533c7d43113f0ce3965c0ef143 100644 (file)
@@ -97,8 +97,8 @@ int imx3x_register_gpios(void);
 
 void __init mx31_init_irq(void)
 {
-       imx3x_register_gpios();
        mxc_init_irq(IO_ADDRESS(AVIC_BASE_ADDR));
+       imx3x_register_gpios();
 }
 
 void __init mx35_init_irq(void)
index 2f79722508cf5a2f64c3788e5e6e43a6533e7524..bc3f30db8d9a0f2df94debe9bf556000f58b0e91 100644 (file)
@@ -81,6 +81,6 @@ void __init mx51_init_irq(void)
        if (!tzic_virt)
                panic("unable to map TZIC interrupt controller\n");
 
-       imx51_register_gpios();
        tzic_init_irq(tzic_virt);
+       imx51_register_gpios();
 }
This page took 0.027828 seconds and 5 git commands to generate.