summaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-samsung/init.c
diff options
context:
space:
mode:
authorTomasz Figa <tomasz.figa@gmail.com>2013-08-26 02:37:34 +0900
committerKukjin Kim <kgene.kim@samsung.com>2013-09-17 06:48:27 +0900
commitc836c90e276ec1b1b4193bb6f0b5e6b11cc69f83 (patch)
tree7aba4732b5b76ba35c3bd8e96044154135e5f891 /arch/arm/plat-samsung/init.c
parent81e9c1794f24376b0515756e300476d9fec77c0b (diff)
downloadlinux-c836c90e276ec1b1b4193bb6f0b5e6b11cc69f83.tar.bz2
ARM: S3C64XX: Bypass legacy initialization when booting with DT
This patch allows bypassing most of legacy initialization when booting an S3C64xx-based board using device tree, by adding conditional checks for DT presence to initcalls which are no longer necessary when booting with DT.. Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/plat-samsung/init.c')
-rw-r--r--arch/arm/plat-samsung/init.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/arch/arm/plat-samsung/init.c b/arch/arm/plat-samsung/init.c
index 50a3ea0037db..aa9511b6914a 100644
--- a/arch/arm/plat-samsung/init.c
+++ b/arch/arm/plat-samsung/init.c
@@ -11,12 +11,18 @@
* published by the Free Software Foundation.
*/
+/*
+ * NOTE: Code in this file is not used on S3C64xx when booting with
+ * Device Tree support.
+ */
+
#include <linux/init.h>
#include <linux/module.h>
#include <linux/interrupt.h>
#include <linux/ioport.h>
#include <linux/serial_core.h>
#include <linux/platform_device.h>
+#include <linux/of.h>
#include <mach/hardware.h>
@@ -148,8 +154,12 @@ static int __init s3c_arch_init(void)
// do the correct init for cpu
- if (cpu == NULL)
+ if (cpu == NULL) {
+ /* Not needed when booting with device tree. */
+ if (of_have_populated_dt())
+ return 0;
panic("s3c_arch_init: NULL cpu\n");
+ }
ret = (cpu->init)();
if (ret != 0)