1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * Copyright (C) 2009 Samsung Electronics
4  * Minkyu Kang <mk7.kang@samsung.com>
5  */
6 #include <common.h>
7 #include <fdtdec.h>
8 #include <init.h>
9 #include <asm/global_data.h>
10 #include <asm/io.h>
11 #include <asm/arch/clk.h>
12 
13 DECLARE_GLOBAL_DATA_PTR;
14 
15 /* Default is s5pc100 */
16 unsigned int s5p_cpu_id = 0xC100;
17 /* Default is EVT1 */
18 unsigned int s5p_cpu_rev = 1;
19 
20 #ifdef CONFIG_ARCH_CPU_INIT
arch_cpu_init(void)21 int arch_cpu_init(void)
22 {
23 	s5p_set_cpu_id();
24 
25 	return 0;
26 }
27 #endif
28 
get_device_type(void)29 u32 get_device_type(void)
30 {
31 	return s5p_cpu_id;
32 }
33 
34 #ifdef CONFIG_DISPLAY_CPUINFO
print_cpuinfo(void)35 int print_cpuinfo(void)
36 {
37 	const char *cpu_model;
38 	int len;
39 
40 	/* For SoC with no real CPU ID in naming convention. */
41 	cpu_model = fdt_getprop(gd->fdt_blob, 0, "cpu-model", &len);
42 	if (cpu_model)
43 		printf("CPU:   %.*s @ ", len, cpu_model);
44 	else
45 		printf("CPU:   %s%X @ ", s5p_get_cpu_name(), s5p_cpu_id);
46 
47 	print_freq(get_arm_clk(), "\n");
48 
49 	return 0;
50 }
51 #endif
52