mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-23 07:31:32 +00:00
After some thought, I believe there is an unfortunate naming flaw in binman. Entries have a position and size, but now that we support hierarchical sections it is unclear whether a position should be an absolute position within the image, or a relative position within its parent section. At present 'position' actually means the relative position. This indicates a need for an 'image position' for code that wants to find the location of an entry without having to do calculations back through parents to discover this image position. A better name for the current 'position' or 'pos' is 'offset'. It is not always an absolute position, but it is always an offset from its parent offset. It is unfortunate to rename this concept now, 18 months after binman was introduced. However I believe it is the right thing to do. The impact is mostly limited to binman itself and a few changes to in-tree users to binman: tegra sunxi x86 The change makes old binman definitions (e.g. downstream or out-of-tree) incompatible if they use the 'pos = <...>' property. Later work will adjust binman to generate an error when it is used. Signed-off-by: Simon Glass <sjg@chromium.org>
56 lines
2.4 KiB
Python
56 lines
2.4 KiB
Python
# SPDX-License-Identifier: GPL-2.0+
|
|
# Copyright (c) 2016 Google, Inc
|
|
# Written by Simon Glass <sjg@chromium.org>
|
|
#
|
|
# Command-line parser for binman
|
|
#
|
|
|
|
from optparse import OptionParser
|
|
|
|
def ParseArgs(argv):
|
|
"""Parse the binman command-line arguments
|
|
|
|
Args:
|
|
argv: List of string arguments
|
|
Returns:
|
|
Tuple (options, args) with the command-line options and arugments.
|
|
options provides access to the options (e.g. option.debug)
|
|
args is a list of string arguments
|
|
"""
|
|
parser = OptionParser()
|
|
parser.add_option('-b', '--board', type='string',
|
|
help='Board name to build')
|
|
parser.add_option('-B', '--build-dir', type='string', default='b',
|
|
help='Directory containing the build output')
|
|
parser.add_option('-d', '--dt', type='string',
|
|
help='Configuration file (.dtb) to use')
|
|
parser.add_option('-D', '--debug', action='store_true',
|
|
help='Enabling debugging (provides a full traceback on error)')
|
|
parser.add_option('-I', '--indir', action='append',
|
|
help='Add a path to a directory to use for input files')
|
|
parser.add_option('-H', '--full-help', action='store_true',
|
|
default=False, help='Display the README file')
|
|
parser.add_option('-m', '--map', action='store_true',
|
|
default=False, help='Output a map file for each image')
|
|
parser.add_option('-O', '--outdir', type='string',
|
|
action='store', help='Path to directory to use for intermediate and '
|
|
'output files')
|
|
parser.add_option('-p', '--preserve', action='store_true',\
|
|
help='Preserve temporary output directory even if option -O is not '
|
|
'given')
|
|
parser.add_option('-t', '--test', action='store_true',
|
|
default=False, help='run tests')
|
|
parser.add_option('-T', '--test-coverage', action='store_true',
|
|
default=False, help='run tests and check for 100% coverage')
|
|
parser.add_option('-u', '--update-fdt', action='store_true',
|
|
default=False, help='Update the binman node with offset/size info')
|
|
parser.add_option('-v', '--verbosity', default=1,
|
|
type='int', help='Control verbosity: 0=silent, 1=progress, 3=full, '
|
|
'4=debug')
|
|
|
|
parser.usage += """
|
|
|
|
Create images for a board from a set of binaries. It is controlled by a
|
|
description in the board device tree."""
|
|
|
|
return parser.parse_args(argv)
|