1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * (C) Copyright 2016 Rockchip Electronics Co., Ltd
4  */
5 
6 #ifndef _ROCKCHIP_COMMON_H_
7 #define _ROCKCHIP_COMMON_H_
8 #include <linux/sizes.h>
9 
10 #define CONFIG_SYS_NS16550_MEM32
11 
12 /* ((CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR - 64) * 512) */
13 #define CONFIG_SPL_PAD_TO		8355840
14 
15 #ifndef CONFIG_SPL_BUILD
16 
17 /* First try to boot from SD (index 0), then eMMC (index 1) */
18 #if CONFIG_IS_ENABLED(CMD_MMC)
19 	#define BOOT_TARGET_MMC(func) \
20 		func(MMC, mmc, 0) \
21 		func(MMC, mmc, 1)
22 #else
23 	#define BOOT_TARGET_MMC(func)
24 #endif
25 
26 #if CONFIG_IS_ENABLED(CMD_NVME)
27 	#define BOOT_TARGET_NVME(func) func(NVME, nvme, 0)
28 #else
29 	#define BOOT_TARGET_NVME(func)
30 #endif
31 
32 #if CONFIG_IS_ENABLED(CMD_USB)
33 	#define BOOT_TARGET_USB(func) func(USB, usb, 0)
34 #else
35 	#define BOOT_TARGET_USB(func)
36 #endif
37 
38 #if CONFIG_IS_ENABLED(CMD_PXE)
39 	#define BOOT_TARGET_PXE(func) func(PXE, pxe, na)
40 #else
41 	#define BOOT_TARGET_PXE(func)
42 #endif
43 
44 #if CONFIG_IS_ENABLED(CMD_DHCP)
45 	#define BOOT_TARGET_DHCP(func) func(DHCP, dhcp, na)
46 #else
47 	#define BOOT_TARGET_DHCP(func)
48 #endif
49 
50 #if CONFIG_IS_ENABLED(CMD_SF)
51 	#define BOOT_TARGET_SF(func)	func(SF, sf, 0)
52 #else
53 	#define BOOT_TARGET_SF(func)
54 #endif
55 
56 #ifdef CONFIG_ROCKCHIP_RK3399
57 #define BOOT_TARGET_DEVICES(func) \
58 	BOOT_TARGET_MMC(func) \
59 	BOOT_TARGET_NVME(func) \
60 	BOOT_TARGET_USB(func) \
61 	BOOT_TARGET_PXE(func) \
62 	BOOT_TARGET_DHCP(func) \
63 	BOOT_TARGET_SF(func)
64 #else
65 #define BOOT_TARGET_DEVICES(func) \
66 	BOOT_TARGET_MMC(func) \
67 	BOOT_TARGET_USB(func) \
68 	BOOT_TARGET_PXE(func) \
69 	BOOT_TARGET_DHCP(func)
70 #endif
71 
72 #ifdef CONFIG_ARM64
73 #define ROOT_UUID "B921B045-1DF0-41C3-AF44-4C6F280D3FAE;\0"
74 #else
75 #define ROOT_UUID "69DAD710-2CE4-4E3C-B16C-21A1D49ABED3;\0"
76 #endif
77 #define PARTS_DEFAULT \
78 	"uuid_disk=${uuid_gpt_disk};" \
79 	"name=loader1,start=32K,size=4000K,uuid=${uuid_gpt_loader1};" \
80 	"name=loader2,start=8MB,size=4MB,uuid=${uuid_gpt_loader2};" \
81 	"name=trust,size=4M,uuid=${uuid_gpt_atf};" \
82 	"name=boot,size=112M,bootable,uuid=${uuid_gpt_boot};" \
83 	"name=rootfs,size=-,uuid="ROOT_UUID
84 
85 #endif
86 
87 #endif /* _ROCKCHIP_COMMON_H_ */
88