tools: Fix pylint 3.3.4 errors
authorSimon Glass <sjg@chromium.org>
Wed, 19 Feb 2025 15:11:16 +0000 (08:11 -0700)
committerTom Rini <trini@konsulko.com>
Fri, 21 Feb 2025 14:24:37 +0000 (08:24 -0600)
This newer pylint produces errors about variables possibly being used
before being set. Adjust the code to pass these checks.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by: Tom Rini <trini@konsulko.com>
tools/binman/etype/fdtmap.py
tools/binman/etype/image_header.py
tools/binman/etype/pre_load.py
tools/binman/etype/ti_board_config.py
tools/binman/etype/x509_cert.py
tools/binman/ftest.py
tools/binman/state.py
tools/buildman/builder.py
tools/microcode-tool.py

index f1f6217..2259404 100644 (file)
@@ -106,6 +106,9 @@ class Entry_fdtmap(Entry):
         Returns:
             FDT map binary data
         """
+        fsw = libfdt.FdtSw()
+        fsw.finish_reservemap()
+
         def _AddNode(node):
             """Add a node to the FDT map"""
             for pname, prop in node.props.items():
@@ -134,8 +137,6 @@ class Entry_fdtmap(Entry):
 
             # Build a new tree with all nodes and properties starting from that
             # node
-            fsw = libfdt.FdtSw()
-            fsw.finish_reservemap()
             with fsw.add_node(''):
                 fsw.property_string('image-node', node.name)
                 _AddNode(node)
index 2401188..2114df8 100644 (file)
@@ -62,6 +62,7 @@ class Entry_image_header(Entry):
 
     def _GetHeader(self):
         image_pos = self.GetSiblingImagePos('fdtmap')
+        offset = None
         if image_pos == False:
             self.Raise("'image_header' section must have an 'fdtmap' sibling")
         elif image_pos is None:
index 2e4c723..00f1a89 100644 (file)
@@ -112,6 +112,8 @@ class Entry_pre_load(Entry_collection):
         # Compute the signature
         if padding_name is None:
             padding_name = "pkcs-1.5"
+        padding = None
+        padding_args = None
         if padding_name == "pss":
             salt_len = key.size_in_bytes() - hash_image.digest_size - 2
             padding = pss
index cc7075e..7c6773a 100644 (file)
@@ -126,6 +126,7 @@ class Entry_ti_board_config(Entry_section):
             size = 2
         else:
             size = 4
+        br = None
         if type(val) == int:
             br = val.to_bytes(size, byteorder='little')
         return br
index 29630d1..25e6808 100644 (file)
@@ -84,6 +84,7 @@ class Entry_x509_cert(Entry_collection):
         input_fname = tools.get_output_filename('input.%s' % uniq)
         config_fname = tools.get_output_filename('config.%s' % uniq)
         tools.write_file(input_fname, input_data)
+        stdout = None
         if type == 'generic':
             stdout = self.openssl.x509_cert(
                 cert_fname=output_fname,
index a553ca9..d2802f6 100644 (file)
@@ -6381,6 +6381,7 @@ fdt         fdtmap                Extract the devicetree blob from the fdtmap
                     ename, prop = entry_m.group(1), entry_m.group(3)
                 entry, entry_name, prop_name = image.LookupEntry(entries,
                                                                  name, msg)
+                expect_val = None
                 if prop_name == 'offset':
                     expect_val = entry.offset
                 elif prop_name == 'image_pos':
index 45bae40..6772d36 100644 (file)
@@ -406,10 +406,13 @@ def CheckSetHashValue(node, get_data_func):
     hash_node = node.FindNode('hash')
     if hash_node:
         algo = hash_node.props.get('algo').value
+        data = None
         if algo == 'sha256':
             m = hashlib.sha256()
             m.update(get_data_func())
             data = m.digest()
+        if data is None:
+            raise ValueError(f"Node '{node.path}': Unknown hash algorithm '{algo}'")
         for n in GetUpdateNodes(hash_node):
             n.SetData('value', data)
 
index 2568e4e..23b1016 100644 (file)
@@ -1095,14 +1095,13 @@ class Builder:
                 diff = result[name]
                 if name.startswith('_'):
                     continue
-                if diff != 0:
-                    color = self.col.RED if diff > 0 else self.col.GREEN
+                colour = self.col.RED if diff > 0 else self.col.GREEN
                 msg = ' %s %+d' % (name, diff)
                 if not printed_target:
                     tprint('%10s  %-15s:' % ('', result['_target']),
                           newline=False)
                     printed_target = True
-                tprint(msg, colour=color, newline=False)
+                tprint(msg, colour=colour, newline=False)
             if printed_target:
                 tprint()
                 if show_bloat:
@@ -1353,6 +1352,7 @@ class Builder:
             for line in lines:
                 if not line:
                     continue
+                col = None
                 if line[0] == '+':
                     col = self.col.GREEN
                 elif line[0] == '-':
index 24c02c4..b726794 100755 (executable)
@@ -279,6 +279,9 @@ def MicrocodeTool():
 
     if (not not options.mcfile) != (not not options.mcfile):
         parser.error("You must specify either header files or a microcode file, not both")
+    date = None
+    microcodes = None
+    license_text = None
     if options.headerfile:
         date, license_text, microcodes = ParseHeaderFiles(options.headerfile)
     elif options.mcfile: