[U-Boot] [PATCH 03/12] binman: Rename ELF parameters to 'section'

Simon Glass sjg at chromium.org
Wed May 16 01:52:49 UTC 2018


We now pass a Section object to these functions rather than an Image.
Rename the parameters to avoid confusion.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

 tools/binman/elf.py              | 10 +++++-----
 tools/binman/elf_test.py         | 28 ++++++++++++++--------------
 tools/binman/etype/entry.py      |  4 ++--
 tools/binman/etype/u_boot_spl.py |  4 ++--
 4 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/tools/binman/elf.py b/tools/binman/elf.py
index 50085a3893a..0ae3b611bae 100644
--- a/tools/binman/elf.py
+++ b/tools/binman/elf.py
@@ -75,7 +75,7 @@ def GetSymbolAddress(fname, sym_name):
         return None
     return sym.address
 
-def LookupAndWriteSymbols(elf_fname, entry, image):
+def LookupAndWriteSymbols(elf_fname, entry, section):
     """Replace all symbols in an entry with their correct values
 
     The entry contents is updated so that values for referenced symbols will be
@@ -87,7 +87,7 @@ def LookupAndWriteSymbols(elf_fname, entry, image):
         elf_fname: Filename of ELF image containing the symbol information for
             entry
         entry: Entry to process
-        image: Image which can be used to lookup symbol values
+        section: Section which can be used to lookup symbol values
     """
     fname = tools.GetInputFilename(elf_fname)
     syms = GetSymbols(fname, ['image', 'binman'])
@@ -98,8 +98,8 @@ def LookupAndWriteSymbols(elf_fname, entry, image):
         return
     for name, sym in syms.iteritems():
         if name.startswith('_binman'):
-            msg = ("Image '%s': Symbol '%s'\n   in entry '%s'" %
-                   (image.GetPath(), name, entry.GetPath()))
+            msg = ("Section '%s': Symbol '%s'\n   in entry '%s'" %
+                   (section.GetPath(), name, entry.GetPath()))
             offset = sym.address - base.address
             if offset < 0 or offset + sym.size > entry.contents_size:
                 raise ValueError('%s has offset %x (size %x) but the contents '
@@ -114,7 +114,7 @@ def LookupAndWriteSymbols(elf_fname, entry, image):
                                  (msg, sym.size))
 
             # Look up the symbol in our entry tables.
-            value = image.LookupSymbol(name, sym.weak, msg)
+            value = section.LookupSymbol(name, sym.weak, msg)
             if value is not None:
                 value += base.address
             else:
diff --git a/tools/binman/elf_test.py b/tools/binman/elf_test.py
index 4abde121bd1..fb6e451cf0e 100644
--- a/tools/binman/elf_test.py
+++ b/tools/binman/elf_test.py
@@ -40,12 +40,12 @@ class FakeEntry:
     def GetPath(self):
         return 'entry_path'
 
-class FakeImage:
+class FakeSection:
     def __init__(self, sym_value=1):
         self.sym_value = sym_value
 
     def GetPath(self):
-        return 'image_path'
+        return 'section_path'
 
     def LookupSymbol(self, name, weak, msg):
         return self.sym_value
@@ -67,51 +67,51 @@ class TestElf(unittest.TestCase):
 
     def testMissingFile(self):
         entry = FakeEntry(10)
-        image = FakeImage()
+        section = FakeSection()
         with self.assertRaises(ValueError) as e:
-            syms = elf.LookupAndWriteSymbols('missing-file', entry, image)
+            syms = elf.LookupAndWriteSymbols('missing-file', entry, section)
         self.assertIn("Filename 'missing-file' not found in input path",
                       str(e.exception))
 
     def testOutsideFile(self):
         entry = FakeEntry(10)
-        image = FakeImage()
+        section = FakeSection()
         elf_fname = os.path.join(binman_dir, 'test', 'u_boot_binman_syms')
         with self.assertRaises(ValueError) as e:
-            syms = elf.LookupAndWriteSymbols(elf_fname, entry, image)
+            syms = elf.LookupAndWriteSymbols(elf_fname, entry, section)
         self.assertIn('entry_path has offset 4 (size 8) but the contents size '
                       'is a', str(e.exception))
 
     def testMissingImageStart(self):
         entry = FakeEntry(10)
-        image = FakeImage()
+        section = FakeSection()
         elf_fname = os.path.join(binman_dir, 'test', 'u_boot_binman_syms_bad')
-        self.assertEqual(elf.LookupAndWriteSymbols(elf_fname, entry, image),
+        self.assertEqual(elf.LookupAndWriteSymbols(elf_fname, entry, section),
                          None)
 
     def testBadSymbolSize(self):
         entry = FakeEntry(10)
-        image = FakeImage()
+        section = FakeSection()
         elf_fname = os.path.join(binman_dir, 'test', 'u_boot_binman_syms_size')
         with self.assertRaises(ValueError) as e:
-            syms = elf.LookupAndWriteSymbols(elf_fname, entry, image)
+            syms = elf.LookupAndWriteSymbols(elf_fname, entry, section)
         self.assertIn('has size 1: only 4 and 8 are supported',
                       str(e.exception))
 
     def testNoValue(self):
         entry = FakeEntry(20)
-        image = FakeImage(sym_value=None)
+        section = FakeSection(sym_value=None)
         elf_fname = os.path.join(binman_dir, 'test', 'u_boot_binman_syms')
-        syms = elf.LookupAndWriteSymbols(elf_fname, entry, image)
+        syms = elf.LookupAndWriteSymbols(elf_fname, entry, section)
         self.assertEqual(chr(255) * 16 + 'a' * 4, entry.data)
 
     def testDebug(self):
         elf.debug = True
         entry = FakeEntry(20)
-        image = FakeImage()
+        section = FakeSection()
         elf_fname = os.path.join(binman_dir, 'test', 'u_boot_binman_syms')
         with capture_sys_output() as (stdout, stderr):
-            syms = elf.LookupAndWriteSymbols(elf_fname, entry, image)
+            syms = elf.LookupAndWriteSymbols(elf_fname, entry, section)
         elf.debug = False
         self.assertTrue(len(stdout.getvalue()) > 0)
 
diff --git a/tools/binman/etype/entry.py b/tools/binman/etype/entry.py
index 23e436a2e9d..39da7f86022 100644
--- a/tools/binman/etype/entry.py
+++ b/tools/binman/etype/entry.py
@@ -203,10 +203,10 @@ class Entry(object):
     def ProcessContents(self):
         pass
 
-    def WriteSymbols(self, image):
+    def WriteSymbols(self, section):
         """Write symbol values into binary files for access at run time
 
         Args:
-          image: Image containing the entry
+          section: Section containing the entry
         """
         pass
diff --git a/tools/binman/etype/u_boot_spl.py b/tools/binman/etype/u_boot_spl.py
index 6a1c1234678..bfcdc499c23 100644
--- a/tools/binman/etype/u_boot_spl.py
+++ b/tools/binman/etype/u_boot_spl.py
@@ -18,5 +18,5 @@ class Entry_u_boot_spl(Entry_blob):
     def GetDefaultFilename(self):
         return 'spl/u-boot-spl.bin'
 
-    def WriteSymbols(self, image):
-        elf.LookupAndWriteSymbols(self.elf_fname, self, image)
+    def WriteSymbols(self, section):
+        elf.LookupAndWriteSymbols(self.elf_fname, self, section)
-- 
2.17.0.441.gb46fe60e1d-goog



More information about the U-Boot mailing list