ARM: EXYNOS: Add support for EXYNOS5410 SoC
authorTarek Dakhran <t.dakhran@samsung.com>
Mon, 26 May 2014 21:54:12 +0000 (06:54 +0900)
committerKukjin Kim <kgene.kim@samsung.com>
Fri, 30 May 2014 17:43:49 +0000 (02:43 +0900)
EXYNOS5410 is SoC in Samsung's Exynos5 SoC series.
Add initial support for this SoC.

Signed-off-by: Tarek Dakhran <t.dakhran@samsung.com>
Signed-off-by: Vyacheslav Tyrtov <v.tyrtov@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
arch/arm/mach-exynos/Kconfig
arch/arm/mach-exynos/common.h

index ec3403c46cbe514b5d62cd77759d23c31b2ab3a4..d24974666866a4c111a8faa9c0165dc748512af7 100644 (file)
@@ -111,6 +111,11 @@ config SOC_EXYNOS5260
        default y
        depends on ARCH_EXYNOS5
 
+config SOC_EXYNOS5410
+       bool "SAMSUNG EXYNOS5410"
+       default y
+       depends on ARCH_EXYNOS5
+
 config SOC_EXYNOS5420
        bool "SAMSUNG EXYNOS5420"
        default y
index 26218e76bb2f34e5a2cf4a932fe4190a9d9a6f6c..099b22f9fd9ffa1d4e98a15cb5df48bcb97550c0 100644 (file)
@@ -24,6 +24,7 @@
 #define EXYNOS4_CPU_MASK       0xFFFE0000
 
 #define EXYNOS5250_SOC_ID      0x43520000
+#define EXYNOS5410_SOC_ID      0xE5410000
 #define EXYNOS5420_SOC_ID      0xE5420000
 #define EXYNOS5440_SOC_ID      0xE5440000
 #define EXYNOS5800_SOC_ID      0xE5422000
@@ -42,6 +43,7 @@ IS_SAMSUNG_CPU(exynos4210, EXYNOS4210_CPU_ID, EXYNOS4_CPU_MASK)
 IS_SAMSUNG_CPU(exynos4212, EXYNOS4212_CPU_ID, EXYNOS4_CPU_MASK)
 IS_SAMSUNG_CPU(exynos4412, EXYNOS4412_CPU_ID, EXYNOS4_CPU_MASK)
 IS_SAMSUNG_CPU(exynos5250, EXYNOS5250_SOC_ID, EXYNOS5_SOC_MASK)
+IS_SAMSUNG_CPU(exynos5410, EXYNOS5410_SOC_ID, EXYNOS5_SOC_MASK)
 IS_SAMSUNG_CPU(exynos5420, EXYNOS5420_SOC_ID, EXYNOS5_SOC_MASK)
 IS_SAMSUNG_CPU(exynos5440, EXYNOS5440_SOC_ID, EXYNOS5_SOC_MASK)
 IS_SAMSUNG_CPU(exynos5800, EXYNOS5800_SOC_ID, EXYNOS5_SOC_MASK)
@@ -80,6 +82,12 @@ IS_SAMSUNG_CPU(exynos5800, EXYNOS5800_SOC_ID, EXYNOS5_SOC_MASK)
 # define soc_is_exynos5250()   0
 #endif
 
+#if defined(CONFIG_SOC_EXYNOS5410)
+# define soc_is_exynos5410()   is_samsung_exynos5410()
+#else
+# define soc_is_exynos5410()   0
+#endif
+
 #if defined(CONFIG_SOC_EXYNOS5420)
 # define soc_is_exynos5420()   is_samsung_exynos5420()
 #else
@@ -100,8 +108,8 @@ IS_SAMSUNG_CPU(exynos5800, EXYNOS5800_SOC_ID, EXYNOS5_SOC_MASK)
 
 #define soc_is_exynos4() (soc_is_exynos4210() || soc_is_exynos4212() || \
                          soc_is_exynos4412())
-#define soc_is_exynos5() (soc_is_exynos5250() || soc_is_exynos5420() || \
-                         soc_is_exynos5800())
+#define soc_is_exynos5() (soc_is_exynos5250() || soc_is_exynos5410() || \
+                         soc_is_exynos5420() || soc_is_exynos5800())
 
 void mct_init(void __iomem *base, int irq_g0, int irq_l0, int irq_l1);