mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 23:24:38 +00:00
binman: Record the parent section of each section
At present sections have no record of their parent so it is not possible to traverse up the tree to the root and figure out the position of a section within the image. Change the constructor to record this information. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
f025363543
commit
08723a7abb
3 changed files with 9 additions and 4 deletions
|
@ -24,6 +24,7 @@ class Section(object):
|
|||
|
||||
Attributes:
|
||||
_node: Node object that contains the section definition in device tree
|
||||
_parent_section: Parent Section object which created this Section
|
||||
_size: Section size in bytes, or None if not known yet
|
||||
_align_size: Section size alignment, or None
|
||||
_pad_before: Number of bytes before the first entry starts. This
|
||||
|
@ -46,14 +47,16 @@ class Section(object):
|
|||
section
|
||||
_entries: OrderedDict() of entries
|
||||
"""
|
||||
def __init__(self, name, node, test=False):
|
||||
def __init__(self, name, parent_section, node, image, test=False):
|
||||
global entry
|
||||
global Entry
|
||||
import entry
|
||||
from entry import Entry
|
||||
|
||||
self._parent_section = parent_section
|
||||
self._name = name
|
||||
self._node = node
|
||||
self._image = image
|
||||
self._offset = 0
|
||||
self._size = None
|
||||
self._align_size = None
|
||||
|
|
|
@ -32,7 +32,8 @@ class Entry_section(Entry):
|
|||
"""
|
||||
def __init__(self, section, etype, node):
|
||||
Entry.__init__(self, section, etype, node)
|
||||
self._section = bsection.Section(node.name, node)
|
||||
self._section = bsection.Section(node.name, section, node,
|
||||
section._image)
|
||||
|
||||
def GetFdtSet(self):
|
||||
return self._section.GetFdtSet()
|
||||
|
|
|
@ -42,7 +42,8 @@ class Image:
|
|||
self._size = None
|
||||
self._filename = '%s.bin' % self._name
|
||||
if test:
|
||||
self._section = bsection.Section('main-section', self._node, True)
|
||||
self._section = bsection.Section('main-section', None, self._node,
|
||||
self, True)
|
||||
else:
|
||||
self._ReadNode()
|
||||
|
||||
|
@ -52,7 +53,7 @@ class Image:
|
|||
filename = fdt_util.GetString(self._node, 'filename')
|
||||
if filename:
|
||||
self._filename = filename
|
||||
self._section = bsection.Section('main-section', self._node)
|
||||
self._section = bsection.Section('main-section', None, self._node, self)
|
||||
|
||||
def GetFdtSet(self):
|
||||
"""Get the set of device tree files used by this image"""
|
||||
|
|
Loading…
Reference in a new issue