aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVladimir Zapolskiy <vz@mleia.com>2016-09-18 21:37:28 -0400
committerShawn Guo <shawnguo@kernel.org>2016-09-20 10:39:06 -0400
commit782a8ee8b90a5996308a673836e0f89e566a2edc (patch)
treebfdf08fdad98c47663793301db0440a343d38d19
parentc217147b9374e68dd5d127b293c63ed5676db172 (diff)
ARM: imx legacy: pcm043: move peripheral initialization to .init_late
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>
-rw-r--r--arch/arm/mach-imx/mach-pcm043.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/arch/arm/mach-imx/mach-pcm043.c b/arch/arm/mach-imx/mach-pcm043.c
index e447e59c0604..78e2bf8dcd96 100644
--- a/arch/arm/mach-imx/mach-pcm043.c
+++ b/arch/arm/mach-imx/mach-pcm043.c
@@ -363,7 +363,6 @@ static void __init pcm043_init(void)
363 363
364 imx35_add_imx_uart0(&uart_pdata); 364 imx35_add_imx_uart0(&uart_pdata);
365 imx35_add_mxc_nand(&pcm037_nand_board_info); 365 imx35_add_mxc_nand(&pcm037_nand_board_info);
366 imx35_add_imx_ssi(0, &pcm043_ssi_pdata);
367 366
368 imx35_add_imx_uart1(&uart_pdata); 367 imx35_add_imx_uart1(&uart_pdata);
369 368
@@ -387,6 +386,12 @@ static void __init pcm043_init(void)
387 imx35_add_fsl_usb2_udc(&otg_device_pdata); 386 imx35_add_fsl_usb2_udc(&otg_device_pdata);
388 387
389 imx35_add_flexcan1(); 388 imx35_add_flexcan1();
389}
390
391static void __init pcm043_late_init(void)
392{
393 imx35_add_imx_ssi(0, &pcm043_ssi_pdata);
394
390 imx35_add_sdhci_esdhc_imx(0, &sd1_pdata); 395 imx35_add_sdhci_esdhc_imx(0, &sd1_pdata);
391} 396}
392 397
@@ -402,6 +407,7 @@ MACHINE_START(PCM043, "Phytec Phycore pcm043")
402 .init_early = imx35_init_early, 407 .init_early = imx35_init_early,
403 .init_irq = mx35_init_irq, 408 .init_irq = mx35_init_irq,
404 .init_time = pcm043_timer_init, 409 .init_time = pcm043_timer_init,
405 .init_machine = pcm043_init, 410 .init_machine = pcm043_init,
411 .init_late = pcm043_late_init,
406 .restart = mxc_restart, 412 .restart = mxc_restart,
407MACHINE_END 413MACHINE_END