]> git.ipfire.org Git - people/ms/u-boot.git/blob - arch/arc/lib/cpu.c
arc: significant cache rework
[people/ms/u-boot.git] / arch / arc / lib / cpu.c
1 /*
2 * Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved.
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6
7 #include <common.h>
8 #include <asm/arcregs.h>
9 #include <asm/cache.h>
10
11 DECLARE_GLOBAL_DATA_PTR;
12
13 int arch_cpu_init(void)
14 {
15 timer_init();
16
17 /* In simulation (ISS) "CHIPID" and "ARCNUM" are all "ff" */
18 if ((read_aux_reg(ARC_AUX_IDENTITY) & 0xffffff00) == 0xffffff00)
19 gd->arch.running_on_hw = 0;
20 else
21 gd->arch.running_on_hw = 1;
22
23 gd->cpu_clk = CONFIG_SYS_CLK_FREQ;
24 gd->ram_size = CONFIG_SYS_SDRAM_SIZE;
25
26 cache_init();
27
28 return 0;
29 }
30
31 int arch_early_init_r(void)
32 {
33 gd->bd->bi_memstart = CONFIG_SYS_SDRAM_BASE;
34 gd->bd->bi_memsize = CONFIG_SYS_SDRAM_SIZE;
35 return 0;
36 }