summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2022-03-06 06:19:04 +0300
committerSimon Glass <sjg@chromium.org>2022-03-19 04:24:25 +0300
commit3817ad4c1c2d62be15f657e6647afcc93faf1d55 (patch)
treee1974107ac21c861fb494b537e46670abcdabe8c /tools
parent9a0a2e9569f0d4e89cbaace40227e18c9c37fbf4 (diff)
downloadu-boot-3817ad4c1c2d62be15f657e6647afcc93faf1d55.tar.xz
binman: Make fake blobs zero-sized by default
On x86 devices having even a small amount of data can cause an overlap between regions. For example, bayleybay complains when the intel-vga region overlaps with u-boot-ucode: ImagePos Offset Size Name <none> 00000000 00800000 main-section <none> ff800000 00000080 intel-descriptor <none> ff800400 00000080 intel-me <none> fff00000 00098f24 u-boot-with-ucode-ptr <none> fff98f24 00001aa0 u-boot-dtb-with-ucode <none> fff9a9d0 0002a000 u-boot-ucode <none> fffb0000 00000080 intel-vga ... It is safer to use an empty file in most cases. Add an option to set the size for those uses that need it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/binman/entry.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/tools/binman/entry.py b/tools/binman/entry.py
index 9d499f07aa..21d3457788 100644
--- a/tools/binman/entry.py
+++ b/tools/binman/entry.py
@@ -990,13 +990,14 @@ features to produce new behaviours.
if self.missing:
missing_list.append(self)
- def check_fake_fname(self, fname):
+ def check_fake_fname(self, fname, size=0):
"""If the file is missing and the entry allows fake blobs, fake it
Sets self.faked to True if faked
Args:
fname (str): Filename to check
+ size (int): Size of fake file to create
Returns:
tuple:
@@ -1006,7 +1007,7 @@ features to produce new behaviours.
if self.allow_fake and not pathlib.Path(fname).is_file():
outfname = tools.get_output_filename(os.path.basename(fname))
with open(outfname, "wb") as out:
- out.truncate(1024)
+ out.truncate(size)
self.faked = True
tout.info(f"Entry '{self._node.path}': Faked file '{outfname}'")
return outfname, True