<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/tools/binman/etype/collection.py, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/u-boot.git/atom/tools/binman/etype/collection.py?h=main</id>
<link rel='self' href='http://cgit.235523.xyz/u-boot.git/atom/tools/binman/etype/collection.py?h=main'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<updated>2026-05-05T16:37:09Z</updated>
<entry>
<title>binman: collection: Set build_done on referenced entries</title>
<updated>2026-05-05T16:37:09Z</updated>
<author>
<name>yan wang</name>
<email>yan.wang@softathome.com</email>
</author>
<published>2026-04-17T08:30:49Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=9ff82a771c44a8cf38bd52b556f685ddbc6f1a55'/>
<id>urn:sha1:9ff82a771c44a8cf38bd52b556f685ddbc6f1a55</id>
<content type='text'>
The collection etype uses phandles in the 'content' property to
reference other entries. Mark each referenced entry with build_done
to avoid rebuilding the same entry data multiple times.

This is important for cases where rebuilding may change the data
content, e.g. due to timestamps or random IVs in encryption.

Refactor GetContentsByPhandle() to return both the entry object and
its data.

Signed-off-by: yan wang &lt;yan.wang@softathome.com&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>binman: Allow collection to use entries from other sections</title>
<updated>2022-08-21T00:07:32Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2022-08-13T17:40:50Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=d626e825f5d45ca543999340428a5a809024b0db'/>
<id>urn:sha1:d626e825f5d45ca543999340428a5a809024b0db</id>
<content type='text'>
At present the collections etype only works with entries in the same
section. This can be limiting, since in some cases the data may be inside
a subsection, e.g. if there are alignment constraints.

Add a function to find the entries in an etype and have it search
recursively. Make use of this for mkimage also.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>binman: Use bytearray instead of string</title>
<updated>2021-07-21T16:27:35Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2021-07-06T16:36:39Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=43332d881baa2d66a18e80ec636e0e0da5623c46'/>
<id>urn:sha1:43332d881baa2d66a18e80ec636e0e0da5623c46</id>
<content type='text'>
This is faster if data is being concatenated. Update the section and
collection etypes.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>binman: Support obtaining section contents immediately</title>
<updated>2021-03-27T03:26:48Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2021-03-21T05:24:32Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=631f752de5b8dccbf9a0d4824213e9e6e0d96167'/>
<id>urn:sha1:631f752de5b8dccbf9a0d4824213e9e6e0d96167</id>
<content type='text'>
Generally the content of sections is not built until the final assembly
of the image. This is partly to avoid wasting time, since the entries
within sections may change multiple times as binman works through its
various stages. This works quite well since sections exist in a strict
hierarchy, so they can be processed in a depth-first manner.

However the 'collection' entry type does not have this luxury. If it
contains a section within its 'content' list, then it must produce the
section contents, if available. That section is typically a sibling
node, i.e. not part oc the collection's hierarchy.

Add a new 'required' argument to section.GetData() to support this. When
required is True, any referenced sections are immediately built. If this
is not possible (because one of the subentries does not have its data yet)
then an error is produced.

The test for this uses a 'collection' entry type, referencing a section as
its first member. This forces a call to _BuildSectionData() with required
set to False, at first, then True later, when the image is assembled.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>binman: Add support for a collection of entries</title>
<updated>2021-03-27T03:26:48Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2021-03-21T05:24:31Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=189f291914cb867f8782d7224a1073d6e17fc800'/>
<id>urn:sha1:189f291914cb867f8782d7224a1073d6e17fc800</id>
<content type='text'>
The vblock entry type includes code to collect the data from a number of
other entries (not necessarily subentries) and concatenating it. This is
a useful feature for other entry types.

Make it a base class, so that vblock can use it, along with other entry
types.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
</feed>
