blob: e4923964169f1a7180a56cf86eb528063a59ca64 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +05302/*
3 * Copyright (C) 2013 Samsung Electronics
4 *
5 * Configuration settings for the SAMSUNG EXYNOS5 board.
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +05306 */
7
Simon Glassbe165002014-10-07 22:01:44 -06008#ifndef __CONFIG_EXYNOS5_COMMON_H
9#define __CONFIG_EXYNOS5_COMMON_H
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053010
Simon Glass14e27ab2014-10-07 22:01:45 -060011#define CONFIG_EXYNOS5 /* Exynos5 Family */
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053012
Simon Glass14e27ab2014-10-07 22:01:45 -060013#include "exynos-common.h"
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053014
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053015#define CONFIG_EXYNOS_SPL
16
Inha Songbfc3b292015-03-13 17:48:35 +090017#ifdef FTRACE
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053018#define CONFIG_TRACE
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053019#define CONFIG_TRACE_BUFFER_SIZE (16 << 20)
20#define CONFIG_TRACE_EARLY_SIZE (8 << 20)
21#define CONFIG_TRACE_EARLY
22#define CONFIG_TRACE_EARLY_ADDR 0x50000000
Inha Songbfc3b292015-03-13 17:48:35 +090023#endif
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053024
25/* Enable ACE acceleration for SHA1 and SHA256 */
26#define CONFIG_EXYNOS_ACE_SHA
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053027
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053028/* Power Down Modes */
29#define S5P_CHECK_SLEEP 0x00000BAD
30#define S5P_CHECK_DIDLE 0xBAD00000
31#define S5P_CHECK_LPA 0xABAD0000
32
33/* Offset for inform registers */
34#define INFORM0_OFFSET 0x800
35#define INFORM1_OFFSET 0x804
36#define INFORM2_OFFSET 0x808
37#define INFORM3_OFFSET 0x80c
38
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053039/* select serial console configuration */
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053040#define EXYNOS5_DEFAULT_UART_OFFSET 0x010000
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053041
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053042/* Thermal Management Unit */
43#define CONFIG_EXYNOS_TMU
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053044
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053045/* MMC SPL */
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053046#define COPY_BL2_FNPTR_ADDR 0x02020030
47
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053048#define CONFIG_RD_LVL
49
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053050#define PHYS_SDRAM_1 CONFIG_SYS_SDRAM_BASE
51#define PHYS_SDRAM_1_SIZE SDRAM_BANK_SIZE
52#define PHYS_SDRAM_2 (CONFIG_SYS_SDRAM_BASE + SDRAM_BANK_SIZE)
53#define PHYS_SDRAM_2_SIZE SDRAM_BANK_SIZE
54#define PHYS_SDRAM_3 (CONFIG_SYS_SDRAM_BASE + (2 * SDRAM_BANK_SIZE))
55#define PHYS_SDRAM_3_SIZE SDRAM_BANK_SIZE
56#define PHYS_SDRAM_4 (CONFIG_SYS_SDRAM_BASE + (3 * SDRAM_BANK_SIZE))
57#define PHYS_SDRAM_4_SIZE SDRAM_BANK_SIZE
58#define PHYS_SDRAM_5 (CONFIG_SYS_SDRAM_BASE + (4 * SDRAM_BANK_SIZE))
59#define PHYS_SDRAM_5_SIZE SDRAM_BANK_SIZE
60#define PHYS_SDRAM_6 (CONFIG_SYS_SDRAM_BASE + (5 * SDRAM_BANK_SIZE))
61#define PHYS_SDRAM_6_SIZE SDRAM_BANK_SIZE
62#define PHYS_SDRAM_7 (CONFIG_SYS_SDRAM_BASE + (6 * SDRAM_BANK_SIZE))
63#define PHYS_SDRAM_7_SIZE SDRAM_BANK_SIZE
64#define PHYS_SDRAM_8 (CONFIG_SYS_SDRAM_BASE + (7 * SDRAM_BANK_SIZE))
65#define PHYS_SDRAM_8_SIZE SDRAM_BANK_SIZE
66
67#define CONFIG_SYS_MONITOR_BASE 0x00000000
68
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053069#define CONFIG_SECURE_BL1_ONLY
70
71/* Secure FW size configuration */
72#ifdef CONFIG_SECURE_BL1_ONLY
73#define CONFIG_SEC_FW_SIZE (8 << 10) /* 8KB */
74#else
75#define CONFIG_SEC_FW_SIZE 0
76#endif
77
78/* Configuration of BL1, BL2, ENV Blocks on mmc */
79#define CONFIG_RES_BLOCK_SIZE (512)
80#define CONFIG_BL1_SIZE (16 << 10) /*16 K reserved for BL1*/
81#define CONFIG_BL2_SIZE (512UL << 10UL) /* 512 KB */
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053082
83#define CONFIG_BL1_OFFSET (CONFIG_RES_BLOCK_SIZE + CONFIG_SEC_FW_SIZE)
84#define CONFIG_BL2_OFFSET (CONFIG_BL1_OFFSET + CONFIG_BL1_SIZE)
Akshay Saraswatbeb6ce12014-06-18 17:53:59 +053085
Bin Meng75574052016-02-05 19:30:11 -080086/* U-Boot copy size from boot Media to DRAM.*/
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053087#define BL2_START_OFFSET (CONFIG_BL2_OFFSET/512)
88#define BL2_SIZE_BLOC_COUNT (CONFIG_BL2_SIZE/512)
89
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053090#define EXYNOS_COPY_SPI_FNPTR_ADDR 0x02020058
91#define SPI_FLASH_UBOOT_POS (CONFIG_SEC_FW_SIZE + CONFIG_BL1_SIZE)
92
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053093/* SPI */
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053094
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053095/* Ethernet Controllor Driver */
96#ifdef CONFIG_CMD_NET
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +053097#define CONFIG_ENV_SROM_BANK 1
98#endif /*CONFIG_CMD_NET*/
99
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +0530100/* Enable Time Command */
Rajeshwari Birje194fa0a2013-12-26 09:44:26 +0530101
Sjoerd Simons1a5d7212014-12-29 22:17:10 +0100102/* USB */
Sjoerd Simons1a5d7212014-12-29 22:17:10 +0100103
Akshay Saraswat5cae4122014-06-18 17:54:01 +0530104/* USB boot mode */
105#define CONFIG_USB_BOOTING
106#define EXYNOS_COPY_USB_FNPTR_ADDR 0x02020070
107#define EXYNOS_USB_SECONDARY_BOOT 0xfeed0002
108#define EXYNOS_IRAM_SECONDARY_BASE 0x02020018
109
Ian Campbell3ecaa402014-11-09 10:44:32 +0000110#define BOOT_TARGET_DEVICES(func) \
Guillaume GARDET3d9bbb02019-07-24 09:10:13 +0200111 func(MMC, mmc, 2) \
Ian Campbell3ecaa402014-11-09 10:44:32 +0000112 func(MMC, mmc, 1) \
113 func(MMC, mmc, 0) \
114 func(PXE, pxe, na) \
115 func(DHCP, dhcp, na)
116
117#include <config_distro_bootcmd.h>
118
119#ifndef MEM_LAYOUT_ENV_SETTINGS
120/* 2GB RAM, bootm size of 256M, load scripts after that */
121#define MEM_LAYOUT_ENV_SETTINGS \
122 "bootm_size=0x10000000\0" \
123 "kernel_addr_r=0x42000000\0" \
124 "fdt_addr_r=0x43000000\0" \
125 "ramdisk_addr_r=0x43300000\0" \
126 "scriptaddr=0x50000000\0" \
127 "pxefile_addr_r=0x51000000\0"
128#endif
129
130#ifndef EXYNOS_DEVICE_SETTINGS
131#define EXYNOS_DEVICE_SETTINGS \
132 "stdin=serial\0" \
133 "stdout=serial\0" \
134 "stderr=serial\0"
135#endif
136
137#ifndef EXYNOS_FDTFILE_SETTING
138#define EXYNOS_FDTFILE_SETTING
139#endif
140
141#define CONFIG_EXTRA_ENV_SETTINGS \
142 EXYNOS_DEVICE_SETTINGS \
143 EXYNOS_FDTFILE_SETTING \
144 MEM_LAYOUT_ENV_SETTINGS \
145 BOOTENV
146
Simon Glassbe165002014-10-07 22:01:44 -0600147#endif /* __CONFIG_EXYNOS5_COMMON_H */