scripts: devicetree: Handle mixed case node names

This patch fixes an issue with mixed case node names.  Node names
containing upper case letters were causing key match errors during
post processing.  This patch maintains the case of the node names.

Change-Id: I153a186fa09dcf958c9de55b578dbc63e615a076
Signed-off-by: Andy Gross <andy.gross@linaro.org>
This commit is contained in:
Andy Gross 2017-04-12 13:05:29 -05:00 committed by Kumar Gala
commit 1c06065941

View file

@ -62,9 +62,9 @@ def parse_node_name(line):
label = None
if addr is None:
return label, name.strip(), None
return label, name.strip(), None, None
return label, name.strip(), int(addr, 16)
return label, name.strip(), addr, int(addr,16)
def parse_values_internal(value, start, end, separator):
out = []
@ -142,15 +142,18 @@ def parse_property(property, fd):
def build_node_name(name, addr):
if addr is None:
return name
return '%s@%x' % (name, addr)
elif isinstance(addr, int):
return '%s@%x' % (name, addr)
return '%s@%s' % (name, addr.strip())
def parse_node(line, fd):
label, name, addr = parse_node_name(line)
label, name, addr, numeric_addr = parse_node_name(line)
node = {
'label': label,
'type': type,
'addr': addr,
'addr': numeric_addr,
'children': {},
'props': {},
'name': build_node_name(name, addr)