blob: b518560bb94cdc583c6a50bc6e643ef74fa9ac41 (
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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
|
// SPDX-License-Identifier: GPL-2.0+
/*
* Copyright (C) 2021, Bin Meng <bmeng.cn@gmail.com>
*/
#include <config.h>
/ {
binman: binman {
multiple-images;
};
};
&binman {
itb {
#ifndef CONFIG_SPL_LOAD_FIT_OPENSBI_OS_BOOT
filename = "u-boot.itb";
#else
filename = "linux.itb";
#endif
fit {
description = "Configuration to load OpenSBI before U-Boot";
#address-cells = <2>;
fit,fdt-list = "of-list";
images {
#ifndef CONFIG_SPL_LOAD_FIT_OPENSBI_OS_BOOT
uboot {
description = "U-Boot";
type = "standalone";
os = "U-Boot";
arch = "riscv";
compression = "none";
load = /bits/ 64 <CONFIG_TEXT_BASE>;
uboot_blob: u-boot-nodtb {
};
};
#else
linux {
description = "Linux";
type = "standalone";
os = "Linux";
arch = "riscv";
compression = "none";
load = /bits/ 64 <CONFIG_TEXT_BASE>;
linux_blob: blob-ext {
filename = "Image";
};
};
#endif
#ifdef CONFIG_OPTEE
tee {
description = "OP-TEE";
type = "tee";
arch = "riscv";
compression = "none";
os = "tee";
load = /bits/ 64 <CONFIG_SPL_OPTEE_LOAD_ADDR>;
tee_blob: tee-os {
filename = "tee.bin";
};
};
#endif
opensbi {
description = "OpenSBI fw_dynamic Firmware";
type = "firmware";
os = "opensbi";
arch = "riscv";
compression = "none";
load = /bits/ 64 <CONFIG_SPL_OPENSBI_LOAD_ADDR>;
entry = /bits/ 64 <CONFIG_SPL_OPENSBI_LOAD_ADDR>;
opensbi_blob: opensbi {
filename = "fw_dynamic.bin";
missing-msg = "opensbi";
};
};
#if !defined(CONFIG_OF_BOARD) || defined(CONFIG_MULTI_DTB_FIT)
@fdt-SEQ {
fit,operation = "gen-fdt-nodes";
description = "NAME";
type = "flat_dt";
compression = "none";
};
#endif
};
configurations {
#ifndef CONFIG_MULTI_DTB_FIT
default = "conf-1";
#endif
#if !defined(CONFIG_OF_BOARD) || defined(CONFIG_MULTI_DTB_FIT)
@conf-SEQ {
#else
conf-1 {
#endif
description = "NAME";
firmware = "opensbi";
#ifdef CONFIG_OPTEE
#ifdef CONFIG_SPL_LOAD_FIT_OPENSBI_OS_BOOT
loadables = "linux", "tee";
#else
loadables = "uboot", "tee";
#endif
#else /* !CONFIG_OPTEEE */
#ifdef CONFIG_SPL_LOAD_FIT_OPENSBI_OS_BOOT
loadables = "linux";
#else
loadables = "uboot";
#endif
#endif /* CONFIG_OPTEE */
#if !defined(CONFIG_OF_BOARD) || defined(CONFIG_MULTI_DTB_FIT)
fdt = "fdt-SEQ";
#endif
};
};
};
};
};
|