xref: /openbmc/u-boot/include/configs/odroid_xu3.h (revision 17394f9a)
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (C) 2013 Samsung Electronics
4  * Hyungwon Hwang <human.hwang@samsung.com>
5  */
6 
7 #ifndef __CONFIG_ODROID_XU3_H
8 #define __CONFIG_ODROID_XU3_H
9 
10 #include <configs/exynos5420-common.h>
11 #include <configs/exynos5-common.h>
12 
13 #define CONFIG_BOARD_COMMON
14 
15 #define CONFIG_SYS_SDRAM_BASE		0x40000000
16 
17 /* select serial console configuration */
18 
19 #define TZPC_BASE_OFFSET		0x10000
20 
21 #define SDRAM_BANK_SIZE			(256UL << 20UL)	/* 256 MB */
22 /* Reserve the last 22 MiB for the secure firmware */
23 #define CONFIG_SYS_MEM_TOP_HIDE		(22UL << 20UL)
24 #define CONFIG_TZSW_RESERVED_DRAM_SIZE	CONFIG_SYS_MEM_TOP_HIDE
25 
26 #undef CONFIG_ENV_SIZE
27 #undef CONFIG_ENV_OFFSET
28 #define CONFIG_ENV_SIZE			(SZ_1K * 16)
29 #define CONFIG_ENV_OFFSET		(SZ_1K * 3136) /* ~3 MiB offset */
30 
31 #define CONFIG_SYS_INIT_SP_ADDR		(CONFIG_SYS_LOAD_ADDR - 0x1000000)
32 
33 #define CONFIG_DEFAULT_CONSOLE		"console=ttySAC2,115200n8\0"
34 
35 /* USB */
36 #define CONFIG_USB_EHCI_EXYNOS
37 
38 /* DFU */
39 #define CONFIG_SYS_DFU_DATA_BUF_SIZE	SZ_32M
40 #define DFU_DEFAULT_POLL_TIMEOUT	300
41 #define DFU_MANIFEST_POLL_TIMEOUT	25000
42 
43 /* THOR */
44 #define CONFIG_G_DNL_THOR_VENDOR_NUM	CONFIG_USB_GADGET_VENDOR_NUM
45 #define CONFIG_G_DNL_THOR_PRODUCT_NUM	0x685D
46 
47 /* UMS */
48 #define CONFIG_G_DNL_UMS_VENDOR_NUM	0x0525
49 #define CONFIG_G_DNL_UMS_PRODUCT_NUM	0xA4A5
50 
51 /* FIXME: MUST BE REMOVED AFTER TMU IS TURNED ON */
52 #undef CONFIG_EXYNOS_TMU
53 
54 #define CONFIG_DFU_ALT_SYSTEM               \
55 	"uImage fat 0 1;"                   \
56 	"zImage fat 0 1;"                   \
57 	"Image.itb fat 0 1;"                \
58 	"uInitrd fat 0 1;"                  \
59 	"boot.scr fat 0 1;"                 \
60 	"boot.cmd fat 0 1;"                 \
61 	"exynos5422-odroidxu3.dtb fat 0 1;" \
62 	"exynos5422-odroidxu3-lite.dtb fat 0 1;" \
63 	"exynos5422-odroidxu4.dtb fat 0 1;" \
64 	"exynos5422-odroidhc1.dtb fat 0 1;" \
65 	"boot part 0 1;"                    \
66 	"root part 0 2\0"
67 
68 #define CONFIG_DFU_ALT_BOOT_EMMC           \
69 	"u-boot raw 0x3e 0x800 mmcpart 1;" \
70 	"bl1 raw 0x0 0x1e mmcpart 1;"      \
71 	"bl2 raw 0x1e 0x1d mmcpart 1;"     \
72 	"tzsw raw 0x83e 0x200 mmcpart 1;"  \
73 	"params.bin raw 0x1880 0x20\0"
74 
75 #define CONFIG_DFU_ALT_BOOT_SD   \
76 	"u-boot raw 0x3f 0x800;" \
77 	"bl1 raw 0x1 0x1e;"      \
78 	"bl2 raw 0x1f 0x1d;"     \
79 	"tzsw raw 0x83f 0x200;"  \
80 	"params.bin raw 0x1880 0x20\0"
81 
82 /* Enable: board/samsung/common/misc.c to use set_dfu_alt_info() */
83 #define CONFIG_MISC_COMMON
84 #define CONFIG_SET_DFU_ALT_INFO
85 #define CONFIG_SET_DFU_ALT_BUF_LEN	(SZ_1K)
86 
87 /* Set soc_rev, soc_id, board_rev, board_name, fdtfile */
88 #define CONFIG_ODROID_REV_AIN		9
89 #define CONFIG_REVISION_TAG
90 
91 /*
92  * Need to override existing one (smdk5420) with odroid so set_board_info will
93  * use proper prefix when creating full board_name (SYS_BOARD + type)
94  */
95 #undef CONFIG_SYS_BOARD
96 #define CONFIG_SYS_BOARD		"odroid"
97 
98 /* Define new extra env settings, including DFU settings */
99 #undef CONFIG_EXTRA_ENV_SETTINGS
100 #define CONFIG_EXTRA_ENV_SETTINGS \
101 	EXYNOS_DEVICE_SETTINGS \
102 	EXYNOS_FDTFILE_SETTING \
103 	MEM_LAYOUT_ENV_SETTINGS \
104 	BOOTENV \
105 	"rootfstype=ext4\0" \
106 	"console=" CONFIG_DEFAULT_CONSOLE \
107 	"fdtfile=exynos5422-odroidxu3.dtb\0" \
108 	"board_name=odroidxu3\0" \
109 	"mmcbootdev=0\0" \
110 	"mmcrootdev=0\0" \
111 	"mmcbootpart=1\0" \
112 	"mmcrootpart=2\0" \
113 	"dfu_alt_system="CONFIG_DFU_ALT_SYSTEM \
114 	"dfu_alt_info=Autoset by THOR/DFU command run.\0"
115 
116 #endif	/* __CONFIG_H */
117