Commit 940bc58de51454f4f6c4be754ad62bd0cb8bc396

Authored by Chanwoo Choi
Committed by Kukjin Kim
1 parent 86c6f1488d

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: Chanwoo Choi <cw00.choi@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>

Showing 3 changed files with 34 additions and 0 deletions Side-by-side Diff

arch/arm/mach-exynos/Kconfig
... ... @@ -11,6 +11,17 @@
11 11  
12 12 menu "SAMSUNG EXYNOS SoCs Support"
13 13  
  14 +config ARCH_EXYNOS3
  15 + bool "SAMSUNG EXYNOS3"
  16 + select ARM_AMBA
  17 + select CLKSRC_OF
  18 + select HAVE_ARM_SCU if SMP
  19 + select HAVE_SMP
  20 + select PINCTRL
  21 + select PM_GENERIC_DOMAINS if PM_RUNTIME
  22 + help
  23 + Samsung EXYNOS3 SoCs based systems
  24 +
14 25 config ARCH_EXYNOS4
15 26 bool "SAMSUNG EXYNOS4"
16 27 default y
... ... @@ -40,6 +51,17 @@
40 51 Samsung EXYNOS5 (Cortex-A15) SoC based systems
41 52  
42 53 comment "EXYNOS SoCs"
  54 +
  55 +config SOC_EXYNOS3250
  56 + bool "SAMSUNG EXYNOS3250"
  57 + default y
  58 + depends on ARCH_EXYNOS3
  59 + select ARCH_HAS_BANDGAP
  60 + select ARM_CPU_SUSPEND if PM
  61 + select PINCTRL_EXYNOS
  62 + select SAMSUNG_DMADEV
  63 + help
  64 + Enable EXYNOS3250 CPU support
43 65  
44 66 config CPU_EXYNOS4210
45 67 bool "SAMSUNG EXYNOS4210"
arch/arm/mach-exynos/common.h
... ... @@ -15,6 +15,9 @@
15 15 #include <linux/reboot.h>
16 16 #include <linux/of.h>
17 17  
  18 +#define EXYNOS3250_SOC_ID 0xE3472000
  19 +#define EXYNOS3_SOC_MASK 0xFFFFF000
  20 +
18 21 #define EXYNOS4210_CPU_ID 0x43210000
19 22 #define EXYNOS4212_CPU_ID 0x43220000
20 23 #define EXYNOS4412_CPU_ID 0xE4412200
... ... @@ -34,6 +37,7 @@
34 37 return ((samsung_cpu_id & mask) == (id & mask)); \
35 38 }
36 39  
  40 +IS_SAMSUNG_CPU(exynos3250, EXYNOS3250_SOC_ID, EXYNOS3_SOC_MASK)
37 41 IS_SAMSUNG_CPU(exynos4210, EXYNOS4210_CPU_ID, EXYNOS4_CPU_MASK)
38 42 IS_SAMSUNG_CPU(exynos4212, EXYNOS4212_CPU_ID, EXYNOS4_CPU_MASK)
39 43 IS_SAMSUNG_CPU(exynos4412, EXYNOS4412_CPU_ID, EXYNOS4_CPU_MASK)
... ... @@ -41,6 +45,12 @@
41 45 IS_SAMSUNG_CPU(exynos5420, EXYNOS5420_SOC_ID, EXYNOS5_SOC_MASK)
42 46 IS_SAMSUNG_CPU(exynos5440, EXYNOS5440_SOC_ID, EXYNOS5_SOC_MASK)
43 47 IS_SAMSUNG_CPU(exynos5800, EXYNOS5800_SOC_ID, EXYNOS5_SOC_MASK)
  48 +
  49 +#if defined(CONFIG_SOC_EXYNOS3250)
  50 +# define soc_is_exynos3250() is_samsung_exynos3250()
  51 +#else
  52 +# define soc_is_exynos3250() 0
  53 +#endif
44 54  
45 55 #if defined(CONFIG_CPU_EXYNOS4210)
46 56 # define soc_is_exynos4210() is_samsung_exynos4210()
arch/arm/mach-exynos/exynos.c
... ... @@ -357,6 +357,8 @@
357 357 }
358 358  
359 359 static char const *exynos_dt_compat[] __initconst = {
  360 + "samsung,exynos3",
  361 + "samsung,exynos3250",
360 362 "samsung,exynos4",
361 363 "samsung,exynos4210",
362 364 "samsung,exynos4212",