binman: Skip processing "hash" subnodes of FIT subsections
authorAlper Nebi Yasak <alpernebiyasak@gmail.com>
Wed, 9 Feb 2022 19:02:35 +0000 (22:02 +0300)
committerSimon Glass <sjg@chromium.org>
Tue, 22 Feb 2022 17:05:44 +0000 (10:05 -0700)
commitee813c86f99006bf37826d195e7212cf98803de6
tree3c564e2bba9b9d8092dd847b0362dfd298cb6397
parent17a0dc6abfdbf392f6a27074f2633608038c4221
binman: Skip processing "hash" subnodes of FIT subsections

Binman's FIT entry type can have image subentries with "hash" subnodes
intended to be processed by mkimage, but not binman. However, the Entry
class and any subclass that reuses its implementation tries to process
these unconditionally. This can lead to an error when boards specify
hash algorithms that binman doesn't support, but mkimage supports.

Let entries skip processing these "hash" subnodes based on an instance
variable, and set this instance variable for FIT subsections. Also
re-enable processing of calculated and missing properties of FIT entries
which was disabled to mitigate this issue.

Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
tools/binman/entry.py
tools/binman/etype/fit.py
tools/binman/ftest.py
tools/binman/test/221_fit_subentry_hash.dts [new file with mode: 0644]