Merge git://git.denx.de/u-boot-sunxi
[oweals/u-boot.git] / arch / arm / mach-exynos / soc.c
1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * Copyright (c) 2010 Samsung Electronics.
4  * Minkyu Kang <mk7.kang@samsung.com>
5  */
6
7 #include <common.h>
8 #include <asm/io.h>
9 #include <asm/system.h>
10
11 #ifdef CONFIG_TARGET_ESPRESSO7420
12 /*
13  * Exynos7420 uses CPU0 of Cluster-1 as boot CPU. Due to this, branch_if_master
14  * fails to identify as the boot CPU as the master CPU. As temporary workaround,
15  * setup the slave CPU boot address as "_main".
16  */
17 extern void _main(void);
18 void *secondary_boot_addr = (void *)_main;
19 #endif /* CONFIG_TARGET_ESPRESSO7420 */
20
21 void reset_cpu(ulong addr)
22 {
23 #ifdef CONFIG_CPU_V7A
24         writel(0x1, samsung_get_base_swreset());
25 #endif
26 }
27
28 #ifndef CONFIG_SYS_DCACHE_OFF
29 void enable_caches(void)
30 {
31         /* Enable D-cache. I-cache is already enabled in start.S */
32         dcache_enable();
33 }
34 #endif