summaryrefslogtreecommitdiff
path: root/tools/binman/state.py
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2018-09-14 04:57:28 -0600
committerSimon Glass <sjg@chromium.org>2018-09-29 11:49:35 -0600
commit0a98b28b06800da48f006069fe14e47dd399d2ff (patch)
tree1646d2600d0b6e8ba7459695db082bc7f345d9b6 /tools/binman/state.py
parentb4e1a38c294f56708d1a82717c850da359401d7e (diff)
binman: Support adding files
In some cases it is useful to add a group of files to the image and be able to access them at run-time. Of course it is possible to generate the binman config file with a set of blobs each with a filename. But for convenience, add an entry type which can do this. Add required support (for adding nodes and string properties) into the state module. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'tools/binman/state.py')
-rw-r--r--tools/binman/state.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/tools/binman/state.py b/tools/binman/state.py
index 09ead442a60..2f8c0863a8f 100644
--- a/tools/binman/state.py
+++ b/tools/binman/state.py
@@ -189,6 +189,33 @@ def AddZeroProp(node, prop):
for n in GetUpdateNodes(node):
n.AddZeroProp(prop)
+def AddSubnode(node, name):
+ """Add a new subnode to a node in affected device trees
+
+ Args:
+ node: Node to add to
+ name: name of node to add
+
+ Returns:
+ New subnode that was created in main tree
+ """
+ first = None
+ for n in GetUpdateNodes(node):
+ subnode = n.AddSubnode(name)
+ if not first:
+ first = subnode
+ return first
+
+def AddString(node, prop, value):
+ """Add a new string property to affected device trees
+
+ Args:
+ prop_name: Name of property
+ value: String value (which will be \0-terminated in the DT)
+ """
+ for n in GetUpdateNodes(node):
+ n.AddString(prop, value)
+
def SetInt(node, prop, value):
"""Update an integer property in affected device trees with an integer value