]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - cpu/arm_cortexa8/s5pc1xx/cpu_info.c
s5pc1xx: support Samsung s5pc1xx SoC
[karo-tx-uboot.git] / cpu / arm_cortexa8 / s5pc1xx / cpu_info.c
1 /*
2  * Copyright (C) 2009 Samsung Electronics
3  * Minkyu Kang <mk7.kang@samsung.com>
4  *
5  * See file CREDITS for list of people who contributed to this
6  * project.
7  *
8  * This program is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU General Public License as
10  * published by the Free Software Foundation; either version 2 of
11  * the License, or (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program; if not, write to the Free Software
20  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21  * MA 02111-1307 USA
22  */
23 #include <common.h>
24 #include <asm/io.h>
25 #include <asm/arch/clk.h>
26
27 /* Default is s5pc100 */
28 unsigned int s5pc1xx_cpu_id = 0xC100;
29
30 #ifdef CONFIG_ARCH_CPU_INIT
31 int arch_cpu_init(void)
32 {
33         s5pc1xx_cpu_id = readl(S5PC1XX_PRO_ID);
34         s5pc1xx_cpu_id = 0xC000 | ((s5pc1xx_cpu_id & 0x00FFF000) >> 12);
35
36         s5pc1xx_clock_init();
37
38         return 0;
39 }
40 #endif
41
42 u32 get_device_type(void)
43 {
44         return s5pc1xx_cpu_id;
45 }
46
47 #ifdef CONFIG_DISPLAY_CPUINFO
48 int print_cpuinfo(void)
49 {
50         char buf[32];
51
52         printf("CPU:\tS5P%X@%sMHz\n",
53                         s5pc1xx_cpu_id, strmhz(buf, get_arm_clk()));
54
55         return 0;
56 }
57 #endif