]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
ARM: imx legacy: pcm043: move peripheral initialization to .init_late
authorVladimir Zapolskiy <vz@mleia.com>
Mon, 19 Sep 2016 01:37:28 +0000 (04:37 +0300)
committerShawn Guo <shawnguo@kernel.org>
Tue, 20 Sep 2016 14:39:06 +0000 (22:39 +0800)
The change moves some of peripheral registrations and initializations
(all peripherals dependent on GPIOs) from .init_machine to .init_late
level, this allows to safely shift the shared GPIO controller driver
initialization level after init level of i.MX IOMUXC driver.

Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm/mach-imx/mach-pcm043.c

index e447e59c0604072ab02d5dd6c1834c8bb699b87d..78e2bf8dcd965a236c3f82b7a53b738c13ad92a1 100644 (file)
@@ -363,7 +363,6 @@ static void __init pcm043_init(void)
 
        imx35_add_imx_uart0(&uart_pdata);
        imx35_add_mxc_nand(&pcm037_nand_board_info);
-       imx35_add_imx_ssi(0, &pcm043_ssi_pdata);
 
        imx35_add_imx_uart1(&uart_pdata);
 
@@ -387,6 +386,12 @@ static void __init pcm043_init(void)
                imx35_add_fsl_usb2_udc(&otg_device_pdata);
 
        imx35_add_flexcan1();
+}
+
+static void __init pcm043_late_init(void)
+{
+       imx35_add_imx_ssi(0, &pcm043_ssi_pdata);
+
        imx35_add_sdhci_esdhc_imx(0, &sd1_pdata);
 }
 
@@ -402,6 +407,7 @@ MACHINE_START(PCM043, "Phytec Phycore pcm043")
        .init_early = imx35_init_early,
        .init_irq = mx35_init_irq,
        .init_time = pcm043_timer_init,
-       .init_machine = pcm043_init,
+       .init_machine   = pcm043_init,
+       .init_late      = pcm043_late_init,
        .restart        = mxc_restart,
 MACHINE_END