/'
' 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
===
header
---
manifest
---
binary
]
artifact spkg_2 [
spkg_2.bin
===
header
---
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