u-boot-brain/tools/binman/etype/u_boot_elf.py
Simon Glass 16287933a8 binman: Move to absolute imports
At present binman sets the python path on startup so that it can access
the libraries it needs. If we convert to use absolute imports this is not
necessary.

Move binman to use absolute imports. This enables removable of the path
adjusting in Entry also.

Signed-off-by: Simon Glass <sjg@chromium.org>
2020-04-26 14:25:21 -06:00

39 lines
1.1 KiB
Python

# SPDX-License-Identifier: GPL-2.0+
# Copyright (c) 2018 Google, Inc
# Written by Simon Glass <sjg@chromium.org>
#
# Entry-type module for U-Boot ELF image
#
from binman.entry import Entry
from binman.etype.blob import Entry_blob
from dtoc import fdt_util
import tools
class Entry_u_boot_elf(Entry_blob):
"""U-Boot ELF image
Properties / Entry arguments:
- filename: Filename of u-boot (default 'u-boot')
This is the U-Boot ELF image. It does not include a device tree but can be
relocated to any address for execution.
"""
def __init__(self, section, etype, node):
Entry_blob.__init__(self, section, etype, node)
self._strip = fdt_util.GetBool(self._node, 'strip')
def ReadBlobContents(self):
if self._strip:
uniq = self.GetUniqueName()
out_fname = tools.GetOutputFilename('%s.stripped' % uniq)
tools.WriteFile(out_fname, tools.ReadFile(self._pathname))
tools.Run('strip', out_fname)
self._pathname = out_fname
Entry_blob.ReadBlobContents(self)
return True
def GetDefaultFilename(self):
return 'u-boot'