summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2022-08-18 02:16:46 -0600
committerSimon Glass <sjg@chromium.org>2022-08-26 16:33:48 -0600
commit86e54468ec67bee213b855bfce34aba346c1d20e (patch)
treeec33a927c5f9724c041bd9410b3d0463a80972f8 /tools
parent071286021a862bf35fb92777cfa5b4f722d95394 (diff)
binman: Document how to handle dependent images
Binman does not support this properly at present. Add documentation about it including a work-around. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'tools')
-rw-r--r--tools/binman/binman.rst50
1 files changed, 50 insertions, 0 deletions
diff --git a/tools/binman/binman.rst b/tools/binman/binman.rst
index 338b5500e8..4ee6f41f35 100644
--- a/tools/binman/binman.rst
+++ b/tools/binman/binman.rst
@@ -858,6 +858,55 @@ allow-repack:
image description to be stored in the FDT and fdtmap.
+Image dependencies
+------------------
+
+Binman does not currently support images that depend on each other. For example,
+if one image creates `fred.bin` and then the next uses this `fred.bin` to
+produce a final `image.bin`, then the behaviour is undefined. It may work, or it
+may produce an error about `fred.bin` being missing, or it may use a version of
+`fred.bin` from a previous run.
+
+Often this can be handled by incorporating the dependency into the second
+image. For example, instead of::
+
+ binman {
+ multiple-images;
+
+ fred {
+ u-boot {
+ };
+ fill {
+ size = <0x100>;
+ };
+ };
+
+ image {
+ blob {
+ filename = "fred.bin";
+ };
+ u-boot-spl {
+ };
+ };
+
+you can do this::
+
+ binman {
+ image {
+ fred {
+ type = "section";
+ u-boot {
+ };
+ fill {
+ size = <0x100>;
+ };
+ };
+ u-boot-spl {
+ };
+ };
+
+
+
Hashing Entries
---------------
@@ -1688,6 +1737,7 @@ Some ideas:
- Figure out how to make Fdt support changing the node order, so that
Node.AddSubnode() can support adding a node before another, existing node.
Perhaps it should completely regenerate the flat tree?
+- Support images which depend on each other
--
Simon Glass <sjg@chromium.org>