blob: a0c8abb703395aa2a2e5366a377a037b68a62075 [file] [log] [blame]
Simon Glass61b994a2016-11-25 20:16:01 -07001#include <config.h>
2
Samuel Holland827c4202020-10-21 21:12:12 -05003#ifdef CONFIG_MACH_SUN50I_H6
4#define BL31_ADDR 0x104000
Samuel Hollande72a6be2020-10-21 21:12:16 -05005#define SCP_ADDR 0x114000
Jernej Skrabec8ec293e2021-01-11 21:11:46 +01006#elif defined(CONFIG_MACH_SUN50I_H616)
Andre Przywarac629ba82021-03-25 16:20:13 +00007#define BL31_ADDR 0x40000000
Samuel Holland827c4202020-10-21 21:12:12 -05008#else
9#define BL31_ADDR 0x44000
Samuel Hollande72a6be2020-10-21 21:12:16 -050010#define SCP_ADDR 0x50000
Samuel Holland827c4202020-10-21 21:12:12 -050011#endif
12
Simon Glass61b994a2016-11-25 20:16:01 -070013/ {
Jagan Teki708b5da2019-01-21 16:01:15 +053014 aliases {
Andre Przywara67854342021-04-16 11:52:27 +010015 mmc0 = &mmc0;
Andre Przywarae32dad22021-11-30 23:18:54 +000016#if CONFIG_MMC_SUNXI_SLOT_EXTRA == 2
Jagan Teki708b5da2019-01-21 16:01:15 +053017 mmc1 = &mmc2;
Icenowy Zheng03510bf2021-07-22 14:30:04 +080018#endif
Jagan Teki708b5da2019-01-21 16:01:15 +053019 };
20
Simon Glasscfa3db62020-09-01 05:14:01 -060021 binman: binman {
22 multiple-images;
23 };
24};
25
Andre Przywara95168d72022-09-06 15:59:57 +010026/* Let U-Boot be the firmware layer that controls the watchdog. */
27#ifdef CONFIG_MACH_SUN8I_R528
28&wdt {
29 status = "okay";
30};
31#endif
32
Simon Glasscfa3db62020-09-01 05:14:01 -060033&binman {
34 u-boot-sunxi-with-spl {
Simon Glass61b994a2016-11-25 20:16:01 -070035 filename = "u-boot-sunxi-with-spl.bin";
36 pad-byte = <0xff>;
Samuel Hollandeafbdbb2020-10-21 21:12:10 -050037
Simon Glass61b994a2016-11-25 20:16:01 -070038 blob {
Samuel Holland9a4aa312023-01-21 17:25:17 -060039 /*
40 * This value matches SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR
41 * and SYS_SPI_U_BOOT_OFFS if those are defined.
42 */
43 min-size = <0x8000>;
Simon Glass61b994a2016-11-25 20:16:01 -070044 filename = "spl/sunxi-spl.bin";
45 };
Samuel Hollandeafbdbb2020-10-21 21:12:10 -050046
Simon Glasscfa3db62020-09-01 05:14:01 -060047#ifdef CONFIG_ARM64
48 fit {
49 description = "Configuration to load ATF before U-Boot";
50 #address-cells = <1>;
51 fit,fdt-list = "of-list";
52
53 images {
54 uboot {
55 description = "U-Boot (64-bit)";
56 type = "standalone";
Samuel Holland68158d52020-10-21 21:12:14 -050057 os = "u-boot";
Simon Glasscfa3db62020-09-01 05:14:01 -060058 arch = "arm64";
59 compression = "none";
Simon Glass98463902022-10-20 18:22:39 -060060 load = <CONFIG_TEXT_BASE>;
Simon Glasscfa3db62020-09-01 05:14:01 -060061
62 u-boot-nodtb {
63 };
64 };
Samuel Hollandeafbdbb2020-10-21 21:12:10 -050065
Simon Glasscfa3db62020-09-01 05:14:01 -060066 atf {
67 description = "ARM Trusted Firmware";
68 type = "firmware";
Samuel Holland68158d52020-10-21 21:12:14 -050069 os = "arm-trusted-firmware";
Simon Glasscfa3db62020-09-01 05:14:01 -060070 arch = "arm64";
71 compression = "none";
Samuel Holland827c4202020-10-21 21:12:12 -050072 load = <BL31_ADDR>;
73 entry = <BL31_ADDR>;
Samuel Hollandeafbdbb2020-10-21 21:12:10 -050074
Simon Glasscfa3db62020-09-01 05:14:01 -060075 atf-bl31 {
Samuel Holland6b7c7ed2020-10-21 21:12:11 -050076 filename = "bl31.bin";
Simon Glass68de0672020-09-06 10:39:10 -060077 missing-msg = "atf-bl31-sunxi";
Simon Glasscfa3db62020-09-01 05:14:01 -060078 };
79 };
80
Icenowy Zheng001ec432021-07-22 14:30:03 +080081#ifdef SCP_ADDR
Samuel Hollande72a6be2020-10-21 21:12:16 -050082 scp {
83 description = "SCP firmware";
84 type = "firmware";
85 arch = "or1k";
86 compression = "none";
87 load = <SCP_ADDR>;
88
89 scp {
90 filename = "scp.bin";
91 missing-msg = "scp-sunxi";
92 };
93 };
Jernej Skrabec8ec293e2021-01-11 21:11:46 +010094#endif
Samuel Hollande72a6be2020-10-21 21:12:16 -050095
Simon Glasscfa3db62020-09-01 05:14:01 -060096 @fdt-SEQ {
97 description = "NAME";
98 type = "flat_dt";
99 compression = "none";
100 };
101 };
102
103 configurations {
Samuel Hollanded4bc132021-02-08 00:03:16 -0600104 default = "@config-DEFAULT-SEQ";
Samuel Hollandeafbdbb2020-10-21 21:12:10 -0500105
Simon Glasscfa3db62020-09-01 05:14:01 -0600106 @config-SEQ {
107 description = "NAME";
Samuel Holland68158d52020-10-21 21:12:14 -0500108 firmware = "atf";
Icenowy Zheng001ec432021-07-22 14:30:03 +0800109#ifndef SCP_ADDR
Jernej Skrabec8ec293e2021-01-11 21:11:46 +0100110 loadables = "uboot";
111#else
Samuel Hollande72a6be2020-10-21 21:12:16 -0500112 loadables = "scp", "uboot";
Jernej Skrabec8ec293e2021-01-11 21:11:46 +0100113#endif
Simon Glasscfa3db62020-09-01 05:14:01 -0600114 fdt = "fdt-SEQ";
115 };
116 };
117 };
118#else
Simon Glass61b994a2016-11-25 20:16:01 -0700119 u-boot-img {
Simon Glass61b994a2016-11-25 20:16:01 -0700120 };
Simon Glasscfa3db62020-09-01 05:14:01 -0600121#endif
Simon Glass61b994a2016-11-25 20:16:01 -0700122 };
123};