aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/dts/sunxi-u-boot.dtsi
blob: 06da009fa28b6a6f368b065ec9d28ef80d143b89 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
#include <config.h>

#ifdef CONFIG_MACH_SUN50I_H6
#define BL31_ADDR 0x104000
#define  SCP_ADDR 0x114000
#elif defined(CONFIG_MACH_SUN50I_H616)
#define BL31_ADDR 0x40000000
#else
#define BL31_ADDR  0x44000
#define  SCP_ADDR  0x50000
#endif

/ {
	aliases {
		mmc0 = &mmc0;
		mmc1 = &mmc2;
	};

	binman: binman {
		multiple-images;
	};
};

&binman {
	u-boot-sunxi-with-spl {
		filename = "u-boot-sunxi-with-spl.bin";
		pad-byte = <0xff>;

		blob {
			filename = "spl/sunxi-spl.bin";
		};

#ifdef CONFIG_ARM64
		fit {
			description = "Configuration to load ATF before U-Boot";
			#address-cells = <1>;
			fit,fdt-list = "of-list";

			images {
				uboot {
					description = "U-Boot (64-bit)";
					type = "standalone";
					os = "u-boot";
					arch = "arm64";
					compression = "none";
					load = <CONFIG_SYS_TEXT_BASE>;

					u-boot-nodtb {
					};
				};

				atf {
					description = "ARM Trusted Firmware";
					type = "firmware";
					os = "arm-trusted-firmware";
					arch = "arm64";
					compression = "none";
					load = <BL31_ADDR>;
					entry = <BL31_ADDR>;

					atf-bl31 {
						filename = "bl31.bin";
						missing-msg = "atf-bl31-sunxi";
					};
				};

#ifndef CONFIG_MACH_SUN50I_H616
				scp {
					description = "SCP firmware";
					type = "firmware";
					arch = "or1k";
					compression = "none";
					load = <SCP_ADDR>;

					scp {
						filename = "scp.bin";
						missing-msg = "scp-sunxi";
					};
				};
#endif

				@fdt-SEQ {
					description = "NAME";
					type = "flat_dt";
					compression = "none";
				};
			};

			configurations {
				default = "@config-DEFAULT-SEQ";

				@config-SEQ {
					description = "NAME";
					firmware = "atf";
#ifdef CONFIG_MACH_SUN50I_H616
					loadables = "uboot";
#else
					loadables = "scp", "uboot";
#endif
					fdt = "fdt-SEQ";
				};
			};
		};
#else
		u-boot-img {
			offset = <CONFIG_SPL_PAD_TO>;
		};
#endif
	};
};