@@ -21,8 +21,8 @@ import struct
import sys
from binman import elf
-import command
-import tools
+from patman import command
+from patman import tools
# Set to True to enable printing output while working
DEBUG = False
@@ -19,8 +19,8 @@ import unittest
from binman import cbfs_util
from binman.cbfs_util import CbfsWriter
from binman import elf
-import test_util
-import tools
+from patman import test_util
+from patman import tools
U_BOOT_DATA = b'1234'
U_BOOT_DTB_DATA = b'udtb'
@@ -8,12 +8,12 @@
from collections import OrderedDict
import os
import sys
-import tools
+from patman import tools
from binman import cbfs_util
from binman import elf
-import command
-import tout
+from patman import command
+from patman import tout
# List of images we plan to create
# Make this global so that it can be referenced from tests
@@ -13,9 +13,9 @@ import shutil
import struct
import tempfile
-import command
-import tools
-import tout
+from patman import command
+from patman import tools
+from patman import tout
ELF_TOOLS = True
try:
@@ -11,10 +11,10 @@ import tempfile
import unittest
from binman import elf
-import command
-import test_util
-import tools
-import tout
+from patman import command
+from patman import test_util
+from patman import tools
+from patman import tout
binman_dir = os.path.dirname(os.path.realpath(sys.argv[0]))
@@ -10,9 +10,9 @@ import os
import sys
from dtoc import fdt_util
-import tools
+from patman import tools
from patman.tools import ToHex, ToHexSize
-import tout
+from patman import tout
modules = {}
@@ -12,7 +12,7 @@ import unittest
from binman import entry
from dtoc import fdt
from dtoc import fdt_util
-import tools
+from patman import tools
class TestEntry(unittest.TestCase):
def setUp(self):
@@ -9,7 +9,7 @@ from collections import OrderedDict
from binman.entry import Entry, EntryArg
from dtoc import fdt_util
-import tools
+from patman import tools
class Entry__testing(Entry):
@@ -7,8 +7,8 @@
from binman.entry import Entry
from dtoc import fdt_util
-import tools
-import tout
+from patman import tools
+from patman import tout
class Entry_blob(Entry):
"""Entry containing an arbitrary binary blob
@@ -9,8 +9,8 @@ image.
"""
from binman.entry import Entry
-import tools
-import tout
+from patman import tools
+from patman import tout
FDTMAP_MAGIC = b'_FDTMAP_'
FDTMAP_HDR_LEN = 16
@@ -11,7 +11,7 @@ import os
from binman.etype.section import Entry_section
from dtoc import fdt_util
-import tools
+from patman import tools
class Entry_files(Entry_section):
@@ -5,7 +5,7 @@
from binman.entry import Entry
from dtoc import fdt_util
-import tools
+from patman import tools
class Entry_fill(Entry):
"""An entry which is filled to a particular byte value
@@ -7,9 +7,9 @@
from binman.entry import Entry
from binman import fmap_util
-import tools
+from patman import tools
from patman.tools import ToHexSize
-import tout
+from patman import tout
class Entry_fmap(Entry):
@@ -8,11 +8,11 @@
from collections import OrderedDict
-import command
+from patman import command
from binman.entry import Entry, EntryArg
from dtoc import fdt_util
-import tools
+from patman import tools
# Build GBB flags.
# (src/platform/vboot_reference/firmware/include/gbb_header.h)
@@ -10,7 +10,7 @@ from collections import OrderedDict
from binman.entry import Entry
from binman.etype.blob import Entry_blob
from dtoc import fdt_util
-import tools
+from patman import tools
class Entry_intel_ifwi(Entry_blob):
"""Entry containing an Intel Integrated Firmware Image (IFWI) file
@@ -14,8 +14,8 @@ import sys
from binman.entry import Entry
from dtoc import fdt_util
-import tools
-import tout
+from patman import tools
+from patman import tout
class Entry_section(Entry):
@@ -7,7 +7,7 @@ from collections import OrderedDict
from binman.entry import Entry, EntryArg
from dtoc import fdt_util
-import tools
+from patman import tools
class Entry_text(Entry):
@@ -7,7 +7,7 @@
from binman.entry import Entry
from binman.etype.blob_dtb import Entry_blob_dtb
-import tools
+from patman import tools
class Entry_u_boot_dtb_with_ucode(Entry_blob_dtb):
"""A U-Boot device tree file, with the microcode removed
@@ -9,7 +9,7 @@ from binman.entry import Entry
from binman.etype.blob import Entry_blob
from dtoc import fdt_util
-import tools
+from patman import tools
class Entry_u_boot_elf(Entry_blob):
"""U-Boot ELF image
@@ -9,9 +9,9 @@
from binman import elf
from binman.entry import Entry
-import command
+from patman import command
from binman.etype.blob import Entry_blob
-import tools
+from patman import tools
class Entry_u_boot_spl_bss_pad(Entry_blob):
"""U-Boot SPL binary padded with a BSS region
@@ -7,11 +7,11 @@
import struct
-import command
+from patman import command
from binman.entry import Entry
from binman.etype.blob import Entry_blob
from binman.etype.u_boot_with_ucode_ptr import Entry_u_boot_with_ucode_ptr
-import tools
+from patman import tools
class Entry_u_boot_tpl_with_ucode_ptr(Entry_u_boot_with_ucode_ptr):
"""U-Boot TPL with embedded microcode pointer
@@ -7,7 +7,7 @@
from binman.entry import Entry
from binman.etype.blob import Entry_blob
-import tools
+from patman import tools
class Entry_u_boot_ucode(Entry_blob):
"""U-Boot microcode block
@@ -11,8 +11,8 @@ from binman import elf
from binman.entry import Entry
from binman.etype.blob import Entry_blob
from dtoc import fdt_util
-import tools
-import command
+from patman import tools
+from patman import command
class Entry_u_boot_with_ucode_ptr(Entry_blob):
"""U-Boot with embedded microcode pointer
@@ -12,7 +12,7 @@ import os
from binman.entry import Entry, EntryArg
from dtoc import fdt_util
-import tools
+from patman import tools
class Entry_vblock(Entry):
"""An entry which contains a Chromium OS verified boot block
@@ -12,7 +12,7 @@ import unittest
from dtoc import fdt
from dtoc import fdt_util
from dtoc.fdt import FdtScan
-import tools
+from patman import tools
class TestFdt(unittest.TestCase):
@classmethod
@@ -10,7 +10,7 @@ import collections
import struct
import sys
-import tools
+from patman import tools
# constants imported from lib/fmap.h
FMAP_SIGNATURE = b'__FMAP__'
@@ -29,10 +29,10 @@ from dtoc import fdt_util
from binman.etype import fdtmap
from binman.etype import image_header
from image import Image
-import command
-import test_util
-import tools
-import tout
+from patman import command
+from patman import test_util
+from patman import tools
+from patman import tout
# Contents of test files, corresponding to different entry types
U_BOOT_DATA = b'1234'
@@ -18,8 +18,8 @@ from binman.etype import image_header
from binman.etype import section
from dtoc import fdt
from dtoc import fdt_util
-import tools
-import tout
+from patman import tools
+from patman import tout
class Image(section.Entry_section):
"""A Image, representing an output from binman
@@ -36,7 +36,7 @@ sys.path.append(get_python_lib())
from binman import cmdline
from binman import control
-import test_util
+from patman import test_util
def RunTests(debug, verbosity, processes, test_preserve_dirs, args, toolpath):
"""Run the functional tests and any embedded doctests
@@ -10,8 +10,8 @@ import re
from dtoc import fdt
import os
-import tools
-import tout
+from patman import tools
+from patman import tout
# Records the device-tree files known to binman, keyed by entry type (e.g.
# 'u-boot-spl-dtb'). These are the output FDT files, which can be updated by
@@ -19,10 +19,10 @@ import time
from buildman import builderthread
from buildman import toolchain
-import command
-import gitutil
-import terminal
-from terminal import Print
+from patman import command
+from patman import gitutil
+from patman import terminal
+from patman.terminal import Print
"""
Theory of Operation
@@ -9,8 +9,8 @@ import shutil
import sys
import threading
-import command
-import gitutil
+from patman import command
+from patman import gitutil
RETURN_CODE_RETRY = -1
@@ -12,11 +12,11 @@ from buildman import board
from buildman import bsettings
from buildman import toolchain
from buildman.builder import Builder
-import command
-import gitutil
-import patchstream
-import terminal
-from terminal import Print
+from patman import command
+from patman import gitutil
+from patman import patchstream
+from patman import terminal
+from patman.terminal import Print
def GetPlural(count):
"""Returns a plural 's' if count is not 1"""
@@ -13,11 +13,10 @@ from buildman import bsettings
from buildman import cmdline
from buildman import control
from buildman import toolchain
-import command
-import gitutil
-import terminal
-import toolchain
-import tools
+from patman import command
+from patman import gitutil
+from patman import terminal
+from patman import tools
settings_data = '''
# Buildman settings file
@@ -25,9 +25,9 @@ from buildman import builder
from buildman import cmdline
from buildman import control
from buildman import toolchain
-import patchstream
-import gitutil
-import terminal
+from patman import patchstream
+from patman import gitutil
+from patman import terminal
def RunTests(skip_net_tests):
import func_test
@@ -18,11 +18,11 @@ from buildman import bsettings
from buildman import builder
from buildman import control
from buildman import toolchain
-import commit
-import command
-import terminal
-import test_util
-import tools
+from patman import commit
+from patman import command
+from patman import terminal
+from patman import test_util
+from patman import tools
use_network = True
@@ -11,9 +11,9 @@ import tempfile
import urllib.request, urllib.error, urllib.parse
from buildman import bsettings
-import command
-import terminal
-import tools
+from patman import command
+from patman import terminal
+from patman import tools
(PRIORITY_FULL_PREFIX, PRIORITY_PREFIX_GCC, PRIORITY_PREFIX_GCC_PATH,
PRIORITY_CALC) = list(range(4))
@@ -15,9 +15,9 @@ import collections
import copy
import sys
-import fdt
-import fdt_util
-import tools
+from dtoc import fdt
+from dtoc import fdt_util
+from patman import tools
# When we see these properties we ignore them - i.e. do not create a structure member
PROP_IGNORE_LIST = [
@@ -8,10 +8,10 @@
import struct
import sys
-import fdt_util
+from dtoc import fdt_util
import libfdt
from libfdt import QUIET_NOTFOUND
-import tools
+from patman import tools
# This deals with a device tree, presenting it as an assortment of Node and
# Prop objects, representing nodes and properties, respectively. This file
@@ -13,8 +13,8 @@ import struct
import sys
import tempfile
-import command
-import tools
+from patman import command
+from patman import tools
def fdt32_to_cpu(val):
"""Convert a device tree cell to an integer
@@ -33,14 +33,15 @@ import unittest
# Bring in the patman libraries
our_path = os.path.dirname(os.path.realpath(__file__))
sys.path.append(os.path.join(our_path, '../patman'))
+sys.path.append(os.path.join(our_path, '..'))
# Bring in the libfdt module
sys.path.insert(0, 'scripts/dtc/pylibfdt')
sys.path.insert(0, os.path.join(our_path,
'../../build-sandbox_spl/scripts/dtc/pylibfdt'))
-import dtb_platdata
-import test_util
+from dtoc import dtb_platdata
+from patman import test_util
def run_tests(args):
"""Run all the test we have for dtoc
@@ -14,15 +14,15 @@ import os
import struct
import unittest
-import dtb_platdata
+from dtoc import dtb_platdata
from dtb_platdata import conv_name_to_c
from dtb_platdata import get_compat_name
from dtb_platdata import get_value
from dtb_platdata import tab_to
-import fdt
-import fdt_util
-import test_util
-import tools
+from dtoc import fdt
+from dtoc import fdt_util
+from patman import test_util
+from patman import tools
our_path = os.path.dirname(os.path.realpath(__file__))
@@ -17,14 +17,14 @@ our_path = os.path.dirname(os.path.realpath(__file__))
for dirname in ['../patman', '..']:
sys.path.insert(0, os.path.join(our_path, dirname))
-import command
-import fdt
+from dtoc import fdt
+from dtoc import fdt_util
+from dtoc.fdt_util import fdt32_to_cpu
from fdt import TYPE_BYTE, TYPE_INT, TYPE_STRING, TYPE_BOOL, BytesToValue
-import fdt_util
-from fdt_util import fdt32_to_cpu
import libfdt
-import test_util
-import tools
+from patman import command
+from patman import test_util
+from patman import tools
def _GetPropertyValue(dtb, node, prop_name):
"""Low-level function to get the property value based on its offset
@@ -3,12 +3,14 @@
#
import collections
-import command
-import gitutil
import os
import re
import sys
-import terminal
+
+from patman import command
+from patman import gitutil
+from patman import terminal
+from patman import tools
def FindCheckPatch():
top_level = gitutil.GetTopLevel()
@@ -3,8 +3,9 @@
#
import os
-import cros_subprocess
-import tools
+
+from patman import cros_subprocess
+from patman import tools
"""Shell command ease-ups for Python."""
@@ -14,10 +14,10 @@ import unittest
from io import StringIO
-import gitutil
-import patchstream
-import settings
-import tools
+from patman import gitutil
+from patman import patchstream
+from patman import settings
+from patman import tools
@contextlib.contextmanager
@@ -2,10 +2,11 @@
# Copyright (c) 2012 The Chromium OS Authors.
#
-import command
-import gitutil
import os
+from patman import command
+from patman import gitutil
+
def FindGetMaintainer():
"""Look for the get_maintainer.pl script.
@@ -2,17 +2,17 @@
# Copyright (c) 2011 The Chromium OS Authors.
#
-import command
import re
import os
-import series
import subprocess
import sys
-import terminal
-import checkpatch
-import settings
-import tools
+from patman import checkpatch
+from patman import command
+from patman import series
+from patman import settings
+from patman import terminal
+from patman import tools
# True to use --no-decorate - we check this in Setup()
use_no_decorate = True
@@ -18,14 +18,14 @@ if __name__ == "__main__":
sys.path.append(os.path.join(our_path, '..'))
# Our modules
-import checkpatch
-import command
-import gitutil
-import patchstream
-import project
-import settings
-import terminal
-import test
+from patman import checkpatch
+from patman import command
+from patman import gitutil
+from patman import patchstream
+from patman import project
+from patman import settings
+from patman import terminal
+from patman import test
parser = OptionParser()
@@ -86,7 +86,7 @@ if __name__ != "__main__":
# Run our meagre tests
elif options.test:
import doctest
- import func_test
+ from patman import func_test
sys.argv = [sys.argv[0]]
result = unittest.TestResult()
@@ -9,10 +9,10 @@ import re
import shutil
import tempfile
-import command
-import commit
-import gitutil
-from series import Series
+from patman import command
+from patman import commit
+from patman import gitutil
+from patman.series import Series
# Tags that we detect and remove
re_remove = re.compile('^BUG=|^TEST=|^BRANCH=|^Review URL:'
@@ -4,7 +4,7 @@
import os.path
-import gitutil
+from patman import gitutil
def DetectProject():
"""Autodetect the name of the current project.
@@ -5,11 +5,11 @@
import itertools
import os
-import get_maintainer
-import gitutil
-import settings
-import terminal
-import tools
+from patman import get_maintainer
+from patman import gitutil
+from patman import settings
+from patman import terminal
+from patman import tools
# Series-xxx tags that we understand
valid_series = ['to', 'cc', 'version', 'changes', 'prefix', 'notes', 'name',
@@ -10,9 +10,9 @@ except:
import os
import re
-import command
-import gitutil
-import tools
+from patman import command
+from patman import gitutil
+from patman import tools
"""Default settings per-project.
@@ -8,11 +8,11 @@ import os
import tempfile
import unittest
-import checkpatch
-import gitutil
-import patchstream
-import series
-import commit
+from patman import checkpatch
+from patman import gitutil
+from patman import patchstream
+from patman import series
+from patman import commit
class TestPatch(unittest.TestCase):
@@ -10,7 +10,8 @@ import os
import sys
import unittest
-import command
+from patman import command
+from patman import test_util
from io import StringIO
@@ -3,7 +3,6 @@
# Copyright (c) 2016 Google, Inc
#
-import command
import glob
import os
import shutil
@@ -11,7 +10,8 @@ import struct
import sys
import tempfile
-import tout
+from patman import command
+from patman import tout
# Output directly (generally this is temporary)
outdir = None
@@ -6,7 +6,7 @@
import sys
-import terminal
+from patman import terminal
# Output verbosity levels that we support
ERROR, WARNING, NOTICE, INFO, DETAIL, DEBUG = range(6)
@@ -32,7 +32,7 @@ import sys
our_path = os.path.dirname(os.path.realpath(__file__))
sys.path.append(os.path.join(our_path, '../tools/patman'))
-import command
+from patman import command
def rm_kconfig_include(path):
"""Remove a path from Kconfig files
At present patman 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 patman to use absolute imports. This requires changes in tools which use the patman libraries (which is most of them). Signed-off-by: Simon Glass <sjg at chromium.org> --- Changes in v2: - Expand to convert all Python tools in U-Boot tools/binman/cbfs_util.py | 4 ++-- tools/binman/cbfs_util_test.py | 4 ++-- tools/binman/control.py | 6 +++--- tools/binman/elf.py | 6 +++--- tools/binman/elf_test.py | 8 ++++---- tools/binman/entry.py | 4 ++-- tools/binman/entry_test.py | 2 +- tools/binman/etype/_testing.py | 2 +- tools/binman/etype/blob.py | 4 ++-- tools/binman/etype/fdtmap.py | 4 ++-- tools/binman/etype/files.py | 2 +- tools/binman/etype/fill.py | 2 +- tools/binman/etype/fmap.py | 4 ++-- tools/binman/etype/gbb.py | 4 ++-- tools/binman/etype/intel_ifwi.py | 2 +- tools/binman/etype/section.py | 4 ++-- tools/binman/etype/text.py | 2 +- tools/binman/etype/u_boot_dtb_with_ucode.py | 2 +- tools/binman/etype/u_boot_elf.py | 2 +- tools/binman/etype/u_boot_spl_bss_pad.py | 4 ++-- .../binman/etype/u_boot_tpl_with_ucode_ptr.py | 4 ++-- tools/binman/etype/u_boot_ucode.py | 2 +- tools/binman/etype/u_boot_with_ucode_ptr.py | 4 ++-- tools/binman/etype/vblock.py | 2 +- tools/binman/fdt_test.py | 2 +- tools/binman/fmap_util.py | 2 +- tools/binman/ftest.py | 8 ++++---- tools/binman/image.py | 4 ++-- tools/binman/main.py | 2 +- tools/binman/state.py | 4 ++-- tools/buildman/builder.py | 8 ++++---- tools/buildman/builderthread.py | 4 ++-- tools/buildman/control.py | 10 +++++----- tools/buildman/func_test.py | 9 ++++----- tools/buildman/main.py | 6 +++--- tools/buildman/test.py | 10 +++++----- tools/buildman/toolchain.py | 6 +++--- tools/dtoc/dtb_platdata.py | 6 +++--- tools/dtoc/fdt.py | 4 ++-- tools/dtoc/fdt_util.py | 4 ++-- tools/dtoc/main.py | 5 +++-- tools/dtoc/test_dtoc.py | 10 +++++----- tools/dtoc/test_fdt.py | 12 ++++++------ tools/patman/checkpatch.py | 8 +++++--- tools/patman/command.py | 5 +++-- tools/patman/func_test.py | 8 ++++---- tools/patman/get_maintainer.py | 5 +++-- tools/patman/gitutil.py | 12 ++++++------ tools/patman/main.py | 18 +++++++++--------- tools/patman/patchstream.py | 8 ++++---- tools/patman/project.py | 2 +- tools/patman/series.py | 10 +++++----- tools/patman/settings.py | 6 +++--- tools/patman/test.py | 10 +++++----- tools/patman/test_util.py | 3 ++- tools/patman/tools.py | 4 ++-- tools/patman/tout.py | 2 +- tools/rmboard.py | 2 +- 58 files changed, 154 insertions(+), 149 deletions(-)