summaryrefslogtreecommitdiff
path: root/arch/arm/plat-samsung/init.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2015-02-27 20:31:51 +0100
committerArnd Bergmann <arnd@arndb.de>2015-12-01 21:50:24 +0100
commita0e157afd0c3ecb2e953eb41da04da2bf0e3d6c3 (patch)
tree7e6b92d70621cfd3771753012a0905da0c1051d7 /arch/arm/plat-samsung/init.c
parent0f20e456bd0542b7bf8cae8f553142405a8ab430 (diff)
ARM: s3c64xx: prepare initcalls for multiplatform
In a multiplatform kernel, each initcall is run regardless of the platform it is meant for, so it must not attempt to access SoC-specific registers. This adds 'if (soc_is_s3c64xx)' to all initcalls that are specific to the s3c64xx platform, to prevent them from breaking other platforms once we can build them into a combined kernel. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Diffstat (limited to 'arch/arm/plat-samsung/init.c')
-rw-r--r--arch/arm/plat-samsung/init.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/plat-samsung/init.c b/arch/arm/plat-samsung/init.c
index 11fbbc26e49f..3776f7e752f0 100644
--- a/arch/arm/plat-samsung/init.c
+++ b/arch/arm/plat-samsung/init.c
@@ -152,6 +152,11 @@ static int __init s3c_arch_init(void)
{
int ret;
+ /* init is only needed for ATAGS based platforms */
+ if (!IS_ENABLED(CONFIG_ATAGS) ||
+ (!soc_is_s3c24xx() && !soc_is_s3c64xx()))
+ return 0;
+
// do the correct init for cpu
if (cpu == NULL) {