xref: /rk3399_rockchip-uboot/include/configs/rockchip-common.h (revision d2ba98843d566f51643b3c014c715427ec2866da)
17f35bbb9SJacob Chen /*
27f35bbb9SJacob Chen  * (C) Copyright 2016 Rockchip Electronics Co., Ltd
37f35bbb9SJacob Chen  *
47f35bbb9SJacob Chen  * SPDX-License-Identifier:     GPL-2.0+
57f35bbb9SJacob Chen  */
67f35bbb9SJacob Chen 
77f35bbb9SJacob Chen #ifndef _ROCKCHIP_COMMON_H_
87f35bbb9SJacob Chen #define _ROCKCHIP_COMMON_H_
97f35bbb9SJacob Chen #include <linux/sizes.h>
107f35bbb9SJacob Chen 
117f35bbb9SJacob Chen #ifndef CONFIG_SPL_BUILD
127f35bbb9SJacob Chen #include <config_distro_defaults.h>
137f35bbb9SJacob Chen 
14*d2ba9884SKlaus Goger /* First try to boot from SD (index 0), then eMMC (index 1) */
15*d2ba9884SKlaus Goger #if CONFIG_IS_ENABLED(CMD_MMC)
16*d2ba9884SKlaus Goger 	#define BOOT_TARGET_MMC(func) \
171e9d6c15SEddie Cai 		func(MMC, mmc, 0) \
18*d2ba9884SKlaus Goger 		func(MMC, mmc, 1)
191e9d6c15SEddie Cai #else
20*d2ba9884SKlaus Goger 	#define BOOT_TARGET_MMC(func)
211e9d6c15SEddie Cai #endif
227f35bbb9SJacob Chen 
23*d2ba9884SKlaus Goger #if CONFIG_IS_ENABLED(CMD_USB)
24*d2ba9884SKlaus Goger 	#define BOOT_TARGET_USB(func) func(USB, usb, 0)
25*d2ba9884SKlaus Goger #else
26*d2ba9884SKlaus Goger 	#define BOOT_TARGET_USB(func)
27*d2ba9884SKlaus Goger #endif
28*d2ba9884SKlaus Goger 
29*d2ba9884SKlaus Goger #if CONFIG_IS_ENABLED(CMD_PXE)
30*d2ba9884SKlaus Goger 	#define BOOT_TARGET_PXE(func) func(PXE, pxe, na)
31*d2ba9884SKlaus Goger #else
32*d2ba9884SKlaus Goger 	#define BOOT_TARGET_PXE(func)
33*d2ba9884SKlaus Goger #endif
34*d2ba9884SKlaus Goger 
35*d2ba9884SKlaus Goger #if CONFIG_IS_ENABLED(CMD_DHCP)
36*d2ba9884SKlaus Goger 	#define BOOT_TARGET_DHCP(func) func(DHCP, dhcp, na)
37*d2ba9884SKlaus Goger #else
38*d2ba9884SKlaus Goger 	#define BOOT_TARGET_DHCP(func)
39*d2ba9884SKlaus Goger #endif
40*d2ba9884SKlaus Goger 
41*d2ba9884SKlaus Goger #define BOOT_TARGET_DEVICES(func) \
42*d2ba9884SKlaus Goger 	BOOT_TARGET_MMC(func) \
43*d2ba9884SKlaus Goger 	BOOT_TARGET_USB(func) \
44*d2ba9884SKlaus Goger 	BOOT_TARGET_PXE(func) \
45*d2ba9884SKlaus Goger 	BOOT_TARGET_DHCP(func)
46*d2ba9884SKlaus Goger 
4742ec247eSKever Yang #ifdef CONFIG_ARM64
4842ec247eSKever Yang #define ROOT_UUID "B921B045-1DF0-41C3-AF44-4C6F280D3FAE;\0"
4942ec247eSKever Yang #else
5042ec247eSKever Yang #define ROOT_UUID "69DAD710-2CE4-4E3C-B16C-21A1D49ABED3;\0"
5142ec247eSKever Yang #endif
527f35bbb9SJacob Chen #define PARTS_DEFAULT \
537f35bbb9SJacob Chen 	"uuid_disk=${uuid_gpt_disk};" \
547f35bbb9SJacob Chen 	"name=loader1,start=32K,size=4000K,uuid=${uuid_gpt_loader1};" \
5532040464SKever Yang 	"name=loader2,start=8MB,size=4MB,uuid=${uuid_gpt_loader2};" \
5632040464SKever Yang 	"name=trust,size=4M,uuid=${uuid_gpt_atf};" \
576b388f0bSJacob Chen 	"name=boot,size=112M,bootable,uuid=${uuid_gpt_boot};" \
5842ec247eSKever Yang 	"name=rootfs,size=-,uuid="ROOT_UUID
597f35bbb9SJacob Chen 
60b5381a6cSKever Yang #define PARTS_RKIMG \
61b5381a6cSKever Yang 	"uuid_disk=${uuid_gpt_disk};" \
62b5381a6cSKever Yang 	"name=uboot,start=8MB,size=4MB,uuid=${uuid_gpt_loader2};" \
63b5381a6cSKever Yang 	"name=trust,size=4M,uuid=${uuid_gpt_atf};" \
64b5381a6cSKever Yang 	"name=misc,size=4MB,uuid=${uuid_gpt_misc};" \
65b5381a6cSKever Yang 	"name=resource,size=16MB,uuid=${uuid_gpt_resource};" \
66b5381a6cSKever Yang 	"name=kernel,size=32M,uuid=${uuid_gpt_kernel};" \
67b5381a6cSKever Yang 	"name=boot,size=32M,bootable,uuid=${uuid_gpt_boot};" \
68b5381a6cSKever Yang 	"name=recovery,size=32M,uuid=${uuid_gpt_recovery};" \
69b5381a6cSKever Yang 	"name=backup,size=112M,uuid=${uuid_gpt_backup};" \
70b5381a6cSKever Yang 	"name=cache,size=512M,uuid=${uuid_gpt_cache};" \
71b5381a6cSKever Yang 	"name=system,size=2048M,uuid=${uuid_gpt_system};" \
72b5381a6cSKever Yang 	"name=metadata,size=16M,uuid=${uuid_gpt_metadata};" \
73b5381a6cSKever Yang 	"name=vendor,size=32M,uuid=${uuid_gpt_vendor};" \
74b5381a6cSKever Yang 	"name=oem,size=32M,uuid=${uuid_gpt_oem};" \
75b5381a6cSKever Yang 	"name=frp,size=512K,uuid=${uuid_gpt_frp};" \
76b5381a6cSKever Yang 	"name=security,size=2M,uuid=${uuid_gpt_security};" \
77b5381a6cSKever Yang 	"name=userdata,size=-,uuid=${uuid_gpt_userdata};"
78b5381a6cSKever Yang 
795059d297SKever Yang #define RKIMG_BOOTCOMMAND \
805059d297SKever Yang 	"if mmc dev 0; then setenv devtype mmc; setenv devnum 0;" \
8126f074b8SKever Yang 	"else if rknand dev 0; then setenv devtype rknand; setenv devnum 0; fi;" \
825059d297SKever Yang 	"fi; boot_android ${devtype} ${devnum};" \
835059d297SKever Yang 	"bootrkp;"
845059d297SKever Yang 
857f35bbb9SJacob Chen #endif
867f35bbb9SJacob Chen 
8760cc9f53SKever Yang /*
8860cc9f53SKever Yang  * Rockchip SoCs use fixed ENV 32KB@(4MB-32KB)
893d1bf166SJacob Chen  */
9060cc9f53SKever Yang #define CONFIG_ENV_OFFSET	(SZ_4M - SZ_32K)
915c0bf219SKever Yang #define CONFIG_ENV_SIZE		SZ_32K
923d1bf166SJacob Chen 
93f8e46897SSimon Glass #define CONFIG_DISPLAY_BOARDINFO_LATE
94f8e46897SSimon Glass 
957f35bbb9SJacob Chen #endif /* _ROCKCHIP_COMMON_H_ */
96