Commit 940bc58d authored by Chanwoo Choi's avatar Chanwoo Choi Committed by Kukjin Kim

ARM: EXYNOS: Add Exynos3250 SoC ID

This patch add Exynos3250's SoC ID. Exynos 3250 is SoC that
is based on the 32-bit RISC processor for Smartphone.
Exynos3250 uses Cortex-A7 dual cores and has a target speed
of 1.0GHz.
Signed-off-by: default avatarChanwoo Choi <cw00.choi@samsung.com>
Acked-by: default avatarKyungmin Park <kyungmin.park@samsung.com>
Reviewed-by: default avatarTomasz Figa <t.figa@samsung.com>
Signed-off-by: default avatarKukjin Kim <kgene.kim@samsung.com>
parent 86c6f148
...@@ -11,6 +11,17 @@ if ARCH_EXYNOS ...@@ -11,6 +11,17 @@ if ARCH_EXYNOS
menu "SAMSUNG EXYNOS SoCs Support" menu "SAMSUNG EXYNOS SoCs Support"
config ARCH_EXYNOS3
bool "SAMSUNG EXYNOS3"
select ARM_AMBA
select CLKSRC_OF
select HAVE_ARM_SCU if SMP
select HAVE_SMP
select PINCTRL
select PM_GENERIC_DOMAINS if PM_RUNTIME
help
Samsung EXYNOS3 SoCs based systems
config ARCH_EXYNOS4 config ARCH_EXYNOS4
bool "SAMSUNG EXYNOS4" bool "SAMSUNG EXYNOS4"
default y default y
...@@ -41,6 +52,17 @@ config ARCH_EXYNOS5 ...@@ -41,6 +52,17 @@ config ARCH_EXYNOS5
comment "EXYNOS SoCs" comment "EXYNOS SoCs"
config SOC_EXYNOS3250
bool "SAMSUNG EXYNOS3250"
default y
depends on ARCH_EXYNOS3
select ARCH_HAS_BANDGAP
select ARM_CPU_SUSPEND if PM
select PINCTRL_EXYNOS
select SAMSUNG_DMADEV
help
Enable EXYNOS3250 CPU support
config CPU_EXYNOS4210 config CPU_EXYNOS4210
bool "SAMSUNG EXYNOS4210" bool "SAMSUNG EXYNOS4210"
default y default y
......
...@@ -15,6 +15,9 @@ ...@@ -15,6 +15,9 @@
#include <linux/reboot.h> #include <linux/reboot.h>
#include <linux/of.h> #include <linux/of.h>
#define EXYNOS3250_SOC_ID 0xE3472000
#define EXYNOS3_SOC_MASK 0xFFFFF000
#define EXYNOS4210_CPU_ID 0x43210000 #define EXYNOS4210_CPU_ID 0x43210000
#define EXYNOS4212_CPU_ID 0x43220000 #define EXYNOS4212_CPU_ID 0x43220000
#define EXYNOS4412_CPU_ID 0xE4412200 #define EXYNOS4412_CPU_ID 0xE4412200
...@@ -34,6 +37,7 @@ static inline int is_samsung_##name(void) \ ...@@ -34,6 +37,7 @@ static inline int is_samsung_##name(void) \
return ((samsung_cpu_id & mask) == (id & mask)); \ return ((samsung_cpu_id & mask) == (id & mask)); \
} }
IS_SAMSUNG_CPU(exynos3250, EXYNOS3250_SOC_ID, EXYNOS3_SOC_MASK)
IS_SAMSUNG_CPU(exynos4210, EXYNOS4210_CPU_ID, EXYNOS4_CPU_MASK) IS_SAMSUNG_CPU(exynos4210, EXYNOS4210_CPU_ID, EXYNOS4_CPU_MASK)
IS_SAMSUNG_CPU(exynos4212, EXYNOS4212_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(exynos4412, EXYNOS4412_CPU_ID, EXYNOS4_CPU_MASK)
...@@ -42,6 +46,12 @@ IS_SAMSUNG_CPU(exynos5420, EXYNOS5420_SOC_ID, EXYNOS5_SOC_MASK) ...@@ -42,6 +46,12 @@ IS_SAMSUNG_CPU(exynos5420, EXYNOS5420_SOC_ID, EXYNOS5_SOC_MASK)
IS_SAMSUNG_CPU(exynos5440, EXYNOS5440_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) IS_SAMSUNG_CPU(exynos5800, EXYNOS5800_SOC_ID, EXYNOS5_SOC_MASK)
#if defined(CONFIG_SOC_EXYNOS3250)
# define soc_is_exynos3250() is_samsung_exynos3250()
#else
# define soc_is_exynos3250() 0
#endif
#if defined(CONFIG_CPU_EXYNOS4210) #if defined(CONFIG_CPU_EXYNOS4210)
# define soc_is_exynos4210() is_samsung_exynos4210() # define soc_is_exynos4210() is_samsung_exynos4210()
#else #else
......
...@@ -357,6 +357,8 @@ static void __init exynos_dt_machine_init(void) ...@@ -357,6 +357,8 @@ static void __init exynos_dt_machine_init(void)
} }
static char const *exynos_dt_compat[] __initconst = { static char const *exynos_dt_compat[] __initconst = {
"samsung,exynos3",
"samsung,exynos3250",
"samsung,exynos4", "samsung,exynos4",
"samsung,exynos4210", "samsung,exynos4210",
"samsung,exynos4212", "samsung,exynos4212",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment