summaryrefslogtreecommitdiff
path: root/tools/binman/etype/fit.py
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2023-01-08 00:07:15 +0300
committerSimon Glass <sjg@chromium.org>2023-01-18 21:50:01 +0300
commit67a050170846b6cb751c7162c3a3bdb898261660 (patch)
treefb53c72df471a69475d377012f71158c31e8f731 /tools/binman/etype/fit.py
parent2f80c5ef134c2c339f6d4ad2f9a21aa0ffd465a8 (diff)
downloadu-boot-67a050170846b6cb751c7162c3a3bdb898261660.tar.xz
binman: Support optional external blobs
Some blobs are actually not necessary for the board to work correctly. Add a property to allow this to be indicated. Missing optional blobs do not cause a build failure. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'tools/binman/etype/fit.py')
-rw-r--r--tools/binman/etype/fit.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/tools/binman/etype/fit.py b/tools/binman/etype/fit.py
index fea3adcc68..f0e3fd1a09 100644
--- a/tools/binman/etype/fit.py
+++ b/tools/binman/etype/fit.py
@@ -392,8 +392,8 @@ class Entry_fit(Entry_section):
_add_entries(self._node, 0, self._node)
- # Keep a copy of all entries, including generator entries, since these
- # removed from self._entries later.
+ # Keep a copy of all entries, including generator entries, since those
+ # are removed from self._entries later.
self._priv_entries = dict(self._entries)
def BuildSectionData(self, required):
@@ -602,14 +602,15 @@ class Entry_fit(Entry_section):
# Entry_section.ObtainContents() either returns True or
# raises an exception.
data = None
- missing_list = []
+ missing_opt_list = []
entry.ObtainContents()
entry.Pack(0)
- entry.CheckMissing(missing_list)
+ entry.CheckMissing(missing_opt_list)
+ entry.CheckOptional(missing_opt_list)
# If any pieces are missing, skip this. The missing entries will
# show an error
- if not missing_list:
+ if not missing_opt_list:
segs = entry.read_elf_segments()
if segs:
segments, entry_addr = segs