fip-secure-partitions.puml 1.43 KB
Newer Older
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
/'
 ' Copyright (c) 2020, ARM Limited and Contributors. All rights reserved.
 '
 ' SPDX-License-Identifier: BSD-3-Clause
 '/

@startuml

folder SP_vendor_1 {
 artifact sp_binary_1
 artifact sp_manifest_1 [
 sp_manifest_1
 ===
 UUID = xxx
 load_address = 0xaaa
 ...
 ]
}

folder SP_vendor_2 {
 artifact sp_binary_2
 artifact sp_manifest_2 [
 sp_manifest_2
 ===
 UUID = yyy
 load_address = 0xbbb
 ]
}

artifact config.json [
 SP_LAYOUT.json
 ===
 path to sp_binary_1
 path to sp_manifest_1
 ---
 path to sp_binary_2
 path to sp_manifest_2
 ---
 ...
]

control sp_mk_generator

artifact fconf_node [
 fconf_sp.dts
 ===
 spkg_1 UUID
 spkg_1 load_address
 ---
 spkg_2 UUID
 spkg_2 load_address
]

artifact sp_gen [
 sp_gen.mk
 ===
 FDT_SOURCE = ...
 SPTOOL_ARGS = ...
 FIP_ARG = ...
]

control dtc
control sptool

artifact FW_CONFIG

artifact spkg_1 [
 spkg_1.bin
 ===
 <i>header</i>
 ---
 manifest
 ---
 binary
]

artifact spkg_2 [
 spkg_2.bin
 ===
 <i>header</i>
 ---
 manifest
 ---
 binary
]

control fiptool

artifact fip [
 fip.bin
 ===
 FW_CONFIG.dtb
 ---
 ...
 ---
 SPKG1
 ---
 SPKG2
 ---
 ...
]

config.json .up.> SP_vendor_1
config.json .up.> SP_vendor_2
config.json --> sp_mk_generator
sp_mk_generator --> fconf_node
sp_mk_generator --> sp_gen

sp_gen --> sptool
sptool --> spkg_1
sptool --> spkg_2

fconf_node -down-> dtc
dtc --> FW_CONFIG

sp_gen --> fiptool
FW_CONFIG --> fiptool
spkg_1 -down-> fiptool
spkg_2 -down-> fiptool
fiptool -down-> fip

@enduml