binman: Use bytearray instead of string
This is faster if data is being concatenated. Update the section and
collection etypes.
Signed-off-by: Simon Glass <sjg@chromium.org>
diff --git a/tools/binman/etype/collection.py b/tools/binman/etype/collection.py
index 1625575..442b40b 100644
--- a/tools/binman/etype/collection.py
+++ b/tools/binman/etype/collection.py
@@ -40,7 +40,7 @@
"""
# Join up all the data
self.Info('Getting contents, required=%s' % required)
- data = b''
+ data = bytearray()
for entry_phandle in self.content:
entry_data = self.section.GetContentsByPhandle(entry_phandle, self,
required)
diff --git a/tools/binman/etype/section.py b/tools/binman/etype/section.py
index 92d3f3a..e2949fc 100644
--- a/tools/binman/etype/section.py
+++ b/tools/binman/etype/section.py
@@ -166,7 +166,7 @@
pad_byte = (entry._pad_byte if isinstance(entry, Entry_section)
else self._pad_byte)
- data = b''
+ data = bytearray()
# Handle padding before the entry
if entry.pad_before:
data += tools.GetBytes(self._pad_byte, entry.pad_before)
@@ -200,7 +200,7 @@
Returns:
Contents of the section (bytes)
"""
- section_data = b''
+ section_data = bytearray()
for entry in self._entries.values():
entry_data = entry.GetData(required)