summaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* mkimage: fix generation of FIT imageAndreas Bießmann2016-05-031-6/+3
| | | | | | | | | | | Commit 7a439cadcf3192eb012a2432ca34670b676c74d2 broke generation of SPL loadable FIT images (CONFIG_SPL_LOAD_FIT). Fix it by removing the unnecessary storage of expected image type. This was a left over of the previous implementation. It is not longer necessary since the mkimage -b switch always has one parameter. Tested-by: Lokesh Vutla <lokeshvutla@ti.com> Signed-off-by: Andreas Bießmann <andreas@biessmann.org>
* fit_image: Fix a double close() on the error pathSimon Glass2016-05-021-1/+0
| | | | | | | There is an extra close() call which is not needed. Reported-by: Coverity (CID: 143065) Signed-off-by: Simon Glass <sjg@chromium.org>
* tools: env: fix config file loading in env libraryAnatolij Gustschin2016-05-021-0/+3
| | | | | | | | | | | | env library is broken as the config file pointer is only initialized in main(). When running in the env library parse_config() fails: Cannot parse config file '(null)': Bad address Ensure that config file pointer is always initialized. Signed-off-by: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de>
* Change my mailaddressAndreas Bießmann2016-05-022-2/+2
| | | | | | I'll switch my mails to my own server, so drop all gmail references. Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
* mkimage: fix argument parsing on BSD systemsAndreas Bießmann2016-05-021-21/+12
| | | | | | | | | | | The getopt(3) optstring '-' is a GNU extension which is not available on BSD systems like OS X. Remove this dependency by implementing argument parsing in another way. This will also change the lately introduced '-b' switch behaviour. Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* tools: env: bug: config structs must be defined in tools libraryAndreas Fenkart2016-03-272-4/+4
| | | | | | | | fw_senten/fw_printenv can be compiled as a tools library, excluding the fw_env_main object. Reported-by: Stefano Babic <sbabic@denx.de> Signed-off-by: Andreas Fenkart <andreas.fenkart@digitalstrom.com>
* tools: env: fw_parse_script: simplify removal of newline/carriage returnAndreas Fenkart2016-03-261-6/+4
| | | | | | fgets returns when the first '\n' is found Signed-off-by: Andreas Fenkart <andreas.fenkart@digitalstrom.com>
* tools: env: split fw_string_blank into skip_chars / skip_blanksAndreas Fenkart2016-03-261-9/+14
| | | | Signed-off-by: Andreas Fenkart <andreas.fenkart@digitalstrom.com>
* tools: env: fw_string_blank: return from loop when item foundAndreas Fenkart2016-03-261-5/+2
| | | | Signed-off-by: Andreas Fenkart <andreas.fenkart@digitalstrom.com>
* tools: env: replace WHITESPACE macro by isblankAndreas Fenkart2016-03-261-4/+3
| | | | Signed-off-by: Andreas Fenkart <andreas.fenkart@digitalstrom.com>
* tools: kwboot: Add xmodem timeout optionKevin Smith2016-03-241-2/+9
| | | | | | | | | | | | Add command-line specification of xmodem timeout. If the binary header needs to take a while to do something (e.g. DDR ECC scrubbing), the xmodem transfer can time out. Add a configurable xmodem block timeout to allow transfers with slow binary headers to succeed. Signed-off-by: Kevin Smith <kevin.smith@elecsyscorp.com> Cc: Stefan Roese <sr@denx.de> Signed-off-by: Stefan Roese <sr@denx.de>
* tools: kwboot: Clean up usage textKevin Smith2016-03-241-1/+1
| | | | | | | | | | | Usage text was getting unwieldy and somewhat incorrect. The usage summary implied that some options were mutually exclusive (e.g. -q or -s). Clean up the summary to just include the important ones, and include a generic "[OPTIONS]" instead. Signed-off-by: Kevin Smith <kevin.smith@elecsyscorp.com> Cc: Stefan Roese <sr@denx.de> Signed-off-by: Stefan Roese <sr@denx.de>
* mkimage: Don't close the file if it wasn't openedSimon Glass2016-03-221-2/+2
| | | | | | | | | The error path for fit_import_data() is incorrect if the second open() call fails. Reported-by: Coverity (CID: 138489) Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* mkimage: Ensure file is closed in fdt_property_file()Simon Glass2016-03-221-1/+2
| | | | | | | | The file that is opened is not closed in all cases. Fix it. Reported-by: Coverity (CID: 138490) Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* mkimage: Fix missing free() and close() in fit_build()Simon Glass2016-03-221-1/+4
| | | | | | | | | Make sure that both the error path and normal return free the buffer and close the file. Reported-by: Coverity (CID: 138491) Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* mkimage: Fix missing free() in fit_extract_data()Simon Glass2016-03-221-0/+2
| | | | | | | | The 'buf' variable is not freed. Fix it. Reported-by: Coverity (CID: 138492) Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* mkimage: Fix error path in fit_extract_data()Simon Glass2016-03-221-4/+7
| | | | | | | | | The 'fdt' variable is not unmapped in all error cases. Fix this. Reported-by: Coverity (CID: 138493) Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* mkimage: Add a missing free() to fit_import_data()Simon Glass2016-03-221-0/+1
| | | | | | | | | The space allocated to fdt is not freed on error. Fix it. Reported-by: Coverity (CID: 138494) Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* mkimage: Close the file when unable to get its sizeSimon Glass2016-03-221-0/+1
| | | | | | | | There is a missing close() on the error path. Add it. Reported-by: Coverity (CID: 138496) Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* mkimage: Correct file being closed twice in fit_extract_data()Simon Glass2016-03-221-2/+0
| | | | | | | | | | The code flows through to the end of the function, so we don't need another close() before this. Remove it. Reported-by: Coverity (CID: 138503) Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* mkimage: Correct file being closed twice in fit_import_data()Simon Glass2016-03-221-1/+1
| | | | | | | | | | The code flows through to the end of the function, so we don't need another close() before this. Remove it. Reported-by: Coverity (CID: 138504) Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* mkimage: Fix munmap() call when importing dataSimon Glass2016-03-221-1/+1
| | | | | | | | | The munmap() call unmaps the wrong memory buffer. Fix it. Reported-by: Coverity (CID: 138505) Reported-by: Coverity (CID: 138495) Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* Fix spelling of "comment".Vagrant Cascadian2016-03-221-1/+1
| | | | | Signed-off-by: Vagrant Cascadian <vagrant@debian.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* cmd: Fix license commandTom Rini2016-03-222-2/+10
| | | | | | | | | | | | The license command isn't usually built and has a few problems: - The rules to generate license.h haven't worked in a long time, re-write these based on the bmp_logo.h rules. - 'tok' is unused and the license text size has increased - bin2header.c wasn't grabbing unistd.h to know the prototype for read(). Cc: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Tom Rini <trini@konsulko.com>
* buildman: Clarify the use of -VSimon Glass2016-03-172-2/+3
| | | | | | | | | This option outputs to the log file, not to the terminal. Clarify that in the help, and add a mention of it in the README. Signed-off-by: Simon Glass <sjg@chromium.org> Reported-by: Stephen Warren <swarren@wwwdotorg.org> Reviewed-by: Stephen Warren <swarren@nvidia.com>
* buildman: Add a way to specific a full toolchain prefixSimon Glass2016-03-172-110/+226
| | | | | | | | | | | | | | | | At present buildman allows you to specify the directory containing the toolchain, but not the actual toolchain prefix. If there are multiple toolchains in a single directory, this can be inconvenient. Add a new 'toolchain-prefix' setting to the settings file, which allows the full prefix (or path to the C compiler) to be specified. Update the documentation to match. Suggested-by: Stephen Warren <swarren@wwwdotorg.org> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com> Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Stephen Warren <swarren@nvidia.com>
* buildman: Allow branch names which conflict with directoriesSimon Glass2016-03-172-0/+7
| | | | | | | | | | At present if you try to use buildman with the branch 'test' it will complain that it is unsure whether you mean the branch or the directory. This is a feature of the 'git log' command that buildman uses. Fix it by resolving the ambiguity. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
* Merge git://git.denx.de/u-boot-dmTom Rini2016-03-145-21/+51
|\
| * buildman: Allow the toolchain architecture to be specifiedSimon Glass2016-03-141-5/+12
| | | | | | | | | | | | | | | | At present the architecture is deduced from the toolchain filename. Allow it to be specified by the caller. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com
| * buildman: Allow the toolchain priority to be specifiedSimon Glass2016-03-141-8/+22
| | | | | | | | | | | | | | | | | | | | At present the priority of a toolchain is calculated from its filename based on hard-coded rules. Allow it to be specified by the caller. We will use this in a later patch. Also display the priority and provide a message when it is overriden by another toolchain of higher priority. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
| * buildman: Fix up a few code inconsistencies in toolchain.pySimon Glass2016-03-141-5/+6
| | | | | | | | | | | | | | | | | | Normally we use a single quote for strings unless there is a reason not to (such as an embedded single quote). Fix a few counter-examples in this file. Also add a missing function-argument comment. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
| * buildman: patman: Fix -H when installed as a symlinkSimon Glass2016-03-142-2/+4
| | | | | | | | | | | | | | | | | | | | It is convenient to install symlinks to buildman and patman in the search patch, such as /usr/local/bin. But when this is done, the -H option fails to work because it looks in the directory containing the symlink instead of its target. Fix this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
| * patman: Add a missing space in GetMetaDataForList()Simon Glass2016-03-141-1/+1
| | | | | | | | | | | | | | Fix this nit to keep the code consistent. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
| * fdtgrep: Improve error handling with invalid device treeSimon Glass2016-03-141-4/+10
| | | | | | | | | | | | | | | | | | | | This tool requires that the aliases node be the first node in the tree. But when it is not, it does not handle things gracefully. In fact it crashes. Fix this, and add a more helpful error message. Signed-off-by: Simon Glass <sjg@chromium.org> Reported-by: Masahiro Yamada <yamada.masahiro@socionext.com>
* | mkimage: Bring data into the FIT before processingSimon Glass2016-03-141-0/+97
| | | | | | | | | | | | | | | | Since we now support data outside the FIT image, bring it into the FIT image first before we do any processing. This avoids adding new functionality to the core FIT code for now. Signed-off-by: Simon Glass <sjg@chromium.org>
* | mkimage: Support placing data outside the FITSimon Glass2016-03-143-1/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One limitation of FIT is that all the data is 'inline' within it, using a 'data' property in each image node. This means that to find out what is in the FIT it is necessary to scan the entire file. Once loaded it can be scanned and then the images can be copied to the correct place in memory. In SPL it can take a significant amount of time to copy images around in memory. Also loading data that does not end up being used is wasteful. It would be useful if the FIT were small, acting as a directory, with the actual data stored elsewhere. This allows SPL to load the entire FIT, without the images, then load the images it wants later. Add a -E option to mkimage to request that it output an 'external' FIT. Signed-off-by: Simon Glass <sjg@chromium.org>
* | mkimage: Support adding device tree files to a FITSimon Glass2016-03-143-10/+133
| | | | | | | | | | | | | | | | | | | | | | To make the auto-FIT feature useful we need to be able to provide a list of device tree files on the command line for mkimage to add into the FIT. Add support for this feature. So far there is no support for hashing or verified boot using this method. For those cases, a .its file must still be provided. Signed-off-by: Simon Glass <sjg@chromium.org>
* | mkimage: Support automatic creating of a FIT without a .itsSimon Glass2016-03-143-5/+220
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present, when generating a FIT, mkimage requires a .its file containing the structure of the FIT and referring to the images to be included. Creating the .its file is a separate step that makes it harder to use FIT. This is not required for creating legacy images. Often the FIT is pretty standard, consisting of an OS image, some device tree files and a single configuration. We can handle this case automatically and avoid needing a .its file at all. To start with, support automatically generate the FIT using a new '-f auto' option. Initially this only supports adding a single image (e.g. a linux kernel) and a single configuration. Signed-off-by: Simon Glass <sjg@chromium.org>
* | tools: Add a function to obtain the size of a fileSimon Glass2016-03-142-0/+34
| | | | | | | | | | | | | | This will be used in mkimage when working out the required size of the FIT based on the files to be placed into it. Signed-off-by: Simon Glass <sjg@chromium.org>
* | mkimage: Allow a FIT to include an image of any typeSimon Glass2016-03-142-5/+29
| | | | | | | | | | | | | | | | | | | | At present FIT images are set up by providing a device tree source file which is a file with a .its extension. We want to support automatically creating this file based on the image supplied to mkimage. This means that even though the final file type is always IH_TYPE_FLATDT, the image inside may be something else. Signed-off-by: Simon Glass <sjg@chromium.org>
* | tools: Include fdt_sw.o in libfdt for mkimageSimon Glass2016-03-141-1/+1
| | | | | | | | | | | | | | At present this file is omitted. It is used to build up a binary device tree. We plan to do this in mkimage, so include this file in the build. Signed-off-by: Simon Glass <sjg@chromium.org>
* | mkimage: Make 'params' staticSimon Glass2016-03-141-1/+1
| | | | | | | | | | | | This is not used outside mkimage.c, so make this variable static. Signed-off-by: Simon Glass <sjg@chromium.org>
* | mkimage: Show an error message when usage() is calledSimon Glass2016-03-141-8/+9
| | | | | | | | | | | | | | Sometimes incorrect arguments are supplied but the reason is not obvious to the user. Add some helpful messages. Signed-off-by: Simon Glass <sjg@chromium.org>
* | mkimage: Move usage() up to the topSimon Glass2016-03-141-39/+42
| | | | | | | | | | | | | | To avoid a forward declaration, move the usage() function higher in the file. Signed-off-by: Simon Glass <sjg@chromium.org>
* | mkimage: Sort the option processing code by optionSimon Glass2016-03-141-25/+25
| | | | | | | | | | | | | | Adjust the code so that option alphabetical order matches the order in the switch() statement. This makes it easier to find options. Signed-off-by: Simon Glass <sjg@chromium.org>
* | mkimage: Convert to use getopt()Simon Glass2016-03-141-132/+101
| | | | | | | | | | | | | | | | | | The current way of parsing arguments is a bit clumsy. It seems better to use getopt() which is commonly used for this purpose. Convert the code to use getopt() and make a few minor adjustments as needed. Signed-off-by: Simon Glass <sjg@chromium.org>
* | mkimage: Move argument processing into its own functionSimon Glass2016-03-141-24/+32
|/ | | | | | | At present main() is very long. Split out the argument processing to make it easier to follow. Signed-off-by: Simon Glass <sjg@chromium.org>
* Merge git://git.denx.de/u-boot-dmTom Rini2016-02-251-1/+4
|\
| * patman: fix series-notes handling for buildmanAlbert ARIBAUD2016-02-241-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A patman series with a 'Series-notes' section causes buildman to crash with: self.series.notes += self.section TypeError: cannot concatenate 'str' and 'list' objects Fix by initializing series.notes as a one-element array rather than a scalar. Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net> Acked-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
* | tools: Update openrisc toolchain informationBin Meng2016-02-242-2/+9
| | | | | | | | | | | | | | | | | | Since commit 87da2690ab81b5f29f83dc85c55f933e6ef414bc "openrisc: updating build tools naming convention", openrisc kernel.org toolchain is out of date and cannot build U-Boot. Update buildman and moveconfig tools to refer to the new one. Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
OpenPOWER on IntegriCloud