blob: ba7061a287c3b7cd1de595788070eb480e141495 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Jacob Chen63dc9712016-10-08 13:47:41 +08002/*
3 * (C) Copyright 2016 Rockchip Electronics Co., Ltd
Jacob Chen63dc9712016-10-08 13:47:41 +08004 */
5
6#ifndef _ROCKCHIP_COMMON_H_
7#define _ROCKCHIP_COMMON_H_
8#include <linux/sizes.h>
9
Jonathan Gray9fcff3a2018-05-08 20:43:01 +100010#define CONFIG_SYS_NS16550_MEM32
11
Jagan Tekib22da752020-01-10 00:16:21 +053012/* ((CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR - 64) * 512) */
13#define CONFIG_SPL_PAD_TO 8355840
14
Jacob Chen63dc9712016-10-08 13:47:41 +080015#ifndef CONFIG_SPL_BUILD
Jacob Chen63dc9712016-10-08 13:47:41 +080016
Alex Bee1efba292021-06-17 11:01:12 +020017/* First try to boot from SD (index 1), then eMMC (index 0) */
Klaus Gogerf165eb22017-10-06 19:24:08 +020018#if CONFIG_IS_ENABLED(CMD_MMC)
19 #define BOOT_TARGET_MMC(func) \
Alex Bee1efba292021-06-17 11:01:12 +020020 func(MMC, mmc, 1) \
21 func(MMC, mmc, 0)
Eddie Caid91ad1b2017-04-01 14:49:54 +080022#else
Klaus Gogerf165eb22017-10-06 19:24:08 +020023 #define BOOT_TARGET_MMC(func)
Eddie Caid91ad1b2017-04-01 14:49:54 +080024#endif
Jacob Chen63dc9712016-10-08 13:47:41 +080025
Mark Kettenisd51157a2020-05-24 23:10:34 +020026#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
Klaus Gogerf165eb22017-10-06 19:24:08 +020032#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
Jagan Teki050fd9c2020-04-10 23:56:31 +053050#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
Klaus Gogerf165eb22017-10-06 19:24:08 +020057#define BOOT_TARGET_DEVICES(func) \
58 BOOT_TARGET_MMC(func) \
Mark Kettenisd51157a2020-05-24 23:10:34 +020059 BOOT_TARGET_NVME(func) \
Klaus Gogerf165eb22017-10-06 19:24:08 +020060 BOOT_TARGET_USB(func) \
61 BOOT_TARGET_PXE(func) \
Jagan Teki050fd9c2020-04-10 23:56:31 +053062 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) \
Klaus Gogerf165eb22017-10-06 19:24:08 +020069 BOOT_TARGET_DHCP(func)
Jagan Teki050fd9c2020-04-10 23:56:31 +053070#endif
Klaus Gogerf165eb22017-10-06 19:24:08 +020071
Kever Yang065386f2017-07-25 12:00:05 +080072#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
Jacob Chen63dc9712016-10-08 13:47:41 +080077#define PARTS_DEFAULT \
78 "uuid_disk=${uuid_gpt_disk};" \
79 "name=loader1,start=32K,size=4000K,uuid=${uuid_gpt_loader1};" \
Kever Yang12fb1202017-10-31 16:52:23 +080080 "name=loader2,start=8MB,size=4MB,uuid=${uuid_gpt_loader2};" \
81 "name=trust,size=4M,uuid=${uuid_gpt_atf};" \
Jacob Chenc0662e52016-11-15 16:55:27 +080082 "name=boot,size=112M,bootable,uuid=${uuid_gpt_boot};" \
Kever Yang065386f2017-07-25 12:00:05 +080083 "name=rootfs,size=-,uuid="ROOT_UUID
Jacob Chen63dc9712016-10-08 13:47:41 +080084
85#endif
86
Jacob Chen63dc9712016-10-08 13:47:41 +080087#endif /* _ROCKCHIP_COMMON_H_ */