2016-12-30 |
fiptool: Add support for operating on binary blobs using the UUID
...
Previously, fiptool only understood a fixed set of images as
specified in tbbr_config.c. It preserved unknown images during
the update, unpack and remove operations but it was not possible to
explicitly refer to one of those unknown images.
Add a new --blob option to create/update/unpack/remove images that
are not known at compile time. This is accomplished by specifying
the UUID and filename pair as shown below:
$ ./fiptool create --blob uuid=01234567-89ab-cdef-0123-456789abcdef,file=foo.bin fip.bin
$ ./fiptool info fip.bin
01234567-89ab-cdef-0123-456789abcdef: offset=0x60, size=0x1AA68
Fixes ARM-software/tf-issues#420
Change-Id: Iaac2504b9a4252289c09e73d29645cbe240f3a82
Signed-off-by: dp-arm <dimitris.papastamos@arm.com>
dp-arm
committed
on 30 Dec 2016
|
fiptool: Prepare ground for expanding the set of images at runtime
...
To allow operating on images with unknown UUIDs, fiptool needs to
be able to track an arbitrary amount of images and not be limited
to the set of images described by the builtin table.
Convert the table to a list to accommodate this scenario.
Change-Id: I0e6d738eece7795d74fc72d165a3098f223d4414
Signed-off-by: dp-arm <dimitris.papastamos@arm.com>
dp-arm
committed
on 30 Dec 2016
|
2016-12-05 |
fiptool: Provide malloc/strdup wrappers to simplify error checking
...
Change-Id: Ie3e43e9f7d31df40a5997047b9bddec0a06fd47f
Signed-off-by: dp-arm <dimitris.papastamos@arm.com>
dp-arm
committed
on 5 Dec 2016
|
fiptool: Use getopt for the top level command parsing
...
Change-Id: I18a4327e41fc090dcea9a647f7673182ca0ed1d9
Signed-off-by: dp-arm <dimitris.papastamos@arm.com>
dp-arm
committed
on 5 Dec 2016
|
fiptool: Initialize opt_index to 0 for getopt(3)
...
Change-Id: I62c1a636eb0d9f73fa3a6356e32b5a44f268d421
Signed-off-by: dp-arm <dimitris.papastamos@arm.com>
dp-arm
committed
on 5 Dec 2016
|
fiptool: Constify various function params
...
Additionally, remove the -o option for the create command
as it is not supported.
Change-Id: I27993a6fc5e3b0b9710e2ec5322e4296bc87d0df
Signed-off-by: dp-arm <dimitris.papastamos@arm.com>
dp-arm
committed
on 5 Dec 2016
|
2016-10-28 |
Merge pull request #744 from masahir0y/fiptool
...
fiptool: fix Segmentation fault when only --verbose option is given
davidcunado-arm
authored
on 28 Oct 2016
GitHub
committed
on 28 Oct 2016
|
2016-10-26 |
fiptool: fix Segmentation fault when only --verbose option is given
...
Fix the following bug:
$ tools/fiptool/fiptool -v
Segmentation fault (core dumped)
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Masahiro Yamada
committed
on 26 Oct 2016
|
2016-10-18 |
fiptool: Link `toc_entry` and `image` structures via UUID
...
The `toc_entry` and `image` data structures had a cyclic
relationship. This patch removes the explicit dependencies and introduces
functions to link them via the UUID.
This change highlights the intent of the code better and makes it more
flexible for future enhancements.
Change-Id: I0c3dd7bfda2a631a3827c8ba4831849c500affe9
Signed-off-by: dp-arm <dimitris.papastamos@arm.com>
dp-arm
committed
on 18 Oct 2016
|
2016-09-19 |
Merge pull request #710 from dp-arm/dp/fiptool-usage
...
fiptool: Invoke command specific usage function
danh-arm
authored
on 19 Sep 2016
GitHub
committed
on 19 Sep 2016
|
2016-09-15 |
fiptool: Invoke command specific usage function
...
Instead of always calling the top level usage function when an
error is detected, call the command-specific usage function.
For example running `fiptool create` will produce the same output
as `fiptool help create`. This is more convenient for the user
when they make a mistake.
Change-Id: I60178ab89d47adf93cdfe6d8b5d5f778a5ea3bca
dp-arm
committed
on 15 Sep 2016
|
2016-09-12 |
fiptool: Add support for printing the sha256 digest with info command
...
This feature allows one to quickly verify that the expected
image is contained in the FIP without extracting the image and
running sha256sum(1) on it.
The sha256 digest is only shown when the verbose flag is used.
This change requires libssl-dev to be installed in order to build
Trusted Firmware. Previously, libssl-dev was optionally needed only
to support Trusted Board Boot configurations.
Fixes ARM-Software/tf-issues#124
Change-Id: Ifb1408d17f483d482bb270a589ee74add25ec5a6
dp-arm
committed
on 12 Sep 2016
|
2016-08-25 |
fiptool: Fix typo in create and update usage functions
...
It should be 'fiptool' instead of 'fiptfool'.
Change-Id: I84ce1b6aaae5b8b33e5781bfe4f9e9cf462edb03
dp-arm
committed
on 25 Aug 2016
|
2016-08-15 |
fiptool: Suppress verbose messages during normal build
...
The output is shown only when built with V=1.
Change-Id: I17fef10df6f127f07956a78b478ff3cadba4bd61
dp-arm
committed
on 15 Aug 2016
|
2016-08-09 |
Merge pull request #661 from dp-arm/master
...
Replace fip_create with fiptool
danh-arm
authored
on 9 Aug 2016
GitHub
committed
on 9 Aug 2016
|
2016-07-29 |
Replace fip_create with fiptool
...
fiptool provides a more consistent and intuitive interface compared to
the fip_create program. It serves as a better base to build on more
features in the future.
fiptool supports various subcommands. Below are the currently
supported subcommands:
1) info - List the images contained in a FIP file.
2) create - Create a new FIP file with the given images.
3) update - Update an existing FIP with the given images.
4) unpack - Extract a selected set or all the images from a FIP file.
5) remove - Remove images from a FIP file. This is a new command that
was not present in fip_create.
To create a new FIP file, replace "fip_create" with "fiptool create".
To update a FIP file, replace "fip_create" with "fiptool update".
To dump the contents of a FIP file, replace "fip_create --dump" with
"fiptool info".
A compatibility script that emulates the basic functionality of
fip_create is provided. Existing scripts might or might not work with
the compatibility script. Users are strongly encouraged to migrate to
fiptool.
Fixes ARM-Software/tf-issues#87
Fixes ARM-Software/tf-issues#108
Fixes ARM-Software/tf-issues#361
Change-Id: I7ee4da7ac60179cc83cf46af890fd8bc61a53330
dp-arm
committed
on 29 Jul 2016
|
2016-07-05 |
Fix `cert_create` tool for Segmentation fault
...
With the introduction of commit `96103d5a`, the Certificate
Generation tool is not able to generate FWU certificate and
while doing so it does segmentation fault.
This happens because it is now required to pass non-volatile
counter values to the `cert_create` tool from the command line
for creating the trusted firmware certificates.
But in case of creating FWU certificate these counter values are not
being passed to the tool and as a consequence the `cert_create` tool
try to use the NULL argument and errors out with Segmentation fault.
This patch fixes this issue by providing a check before using the
command line argument passed in the case of `EXT_TYPE_NVCOUNTER`
certificate extension.
Change-Id: Ie17d0c1502b52aaa8500f3659c2da2448ab0347a
Yatharth Kochar
committed
on 5 Jul 2016
|
2016-06-03 |
Move stdlib header files to include/lib/stdlib
...
* Move stdlib header files from include/stdlib to include/lib/stdlib for
consistency with other library headers.
* Fix checkpatch paths to continue excluding stdlib files.
* Create stdlib.mk to define the stdlib source files and include directories.
* Include stdlib.mk from the top level Makefile.
* Update stdlib header path in the fip_create Makefile.
* Update porting-guide.md with the new paths.
Change-Id: Ia92c2dc572e9efb54a783e306b5ceb2ce24d27fa
Dan Handley
committed
on 3 Jun 2016
|
2016-04-27 |
fip_create: Fix exit status for missing output filename
...
Change-Id: I0d298eea9eaf47121c87637c7395e5d9868aa272
Brendan Jackman
committed
on 27 Apr 2016
|
2016-04-07 |
Merge pull request #582 from jcastillo-arm/jc/fip_extract
...
fip_create: add support for image unpacking
danh-arm
committed
on 7 Apr 2016
|
Merge pull request #578 from EvanLloyd/ejll/woa_make2
...
Make improvements for host environment portability
danh-arm
committed
on 7 Apr 2016
|
2016-04-06 |
fip_create: add support for image unpacking
...
This patch adds support for image unpacking to the FIP packaging
tool. Command line option '-u,--unpack' may be used to unpack the
contents of an existing FIP file into the working directory. The
tool uses default hardcoded filenames for the unpacked images. If
the files already exist, they can be overwritten by specifying the
option '-f,--force'.
Change-Id: I360b11d9c5403e8c0a7a9cac32c1d90ebb228063
Juan Castillo
committed
on 6 Apr 2016
|
2016-04-01 |
Make:Allow for extension in tool names.
...
In some build environments executable programs have a specific file
extension. The value of BIN_EXT is appended to the relevant tool file
names to allow for this.
The value of BIN_EXT is set, where appropriate, by the build environment
specific make helper (to .exe for Windows build environments).
.gitignore is updated to hide the new (.exe) files.
Change-Id: Icc32f64b750e425265075ad4e0dea18129640b86
Evan Lloyd
committed
on 1 Apr 2016
|
Make:Use "simply expanded" make variables.
...
Replace some "recursively expanded" make variables with "simply
expanded" variables (i.e. replace = with :=). This has no functional
impact but is more consistent and theoretically more efficient.
Change-Id: Iaf33d7c8ad48464ae0d39923515d1e7f230c95c1
Evan Lloyd
committed
on 1 Apr 2016
|
Build:Replace soft links with file copy.
...
Some build environments do not support symbolic links. This patch
removes the symlinks previously used to build fip_create and instead
copies the relevant header files.
The original motivation for using symlinks was to avoid Trusted Firmware
library headers conflicting with headers in the compiler standard
include path. Copying the header files instead has the same effect.
Like other build artefacts, the copied files are listed in .gitignore.
The distclean targets have also been updated to remove the copies.
Change-Id: Ie8b67bcb133f7f1d660ae93b857950aa15e42b1e
Evan Lloyd
committed
on 1 Apr 2016
|
Make:Use environment variables for OS detection.
...
Add make helper files to select the appropriate settings for the build
environment. Selection is made in make_helpers/build_env.mk, which
selects other files to include using generic build environment settings.
The Trusted Firmware Makefile and supporting tool Makefiles are updated
to include build_env.mk instead of unix.mk.
NOTE: This change does not fully enable builds in other build
environments. It facilitates this without compromising the
existing build environments.
Change-Id: Ic4064ffe6ce158bbd16d7cc9f27dd4655a3580f6
Evan Lloyd
committed
on 1 Apr 2016
|
Make:Make shell commands more portable
...
Macros are inserted to replace direct invocations of commands that are
problematic on some build environments. (e.g. Some environments expect
\ in paths instead of /.)
The changes take into account mismatched command mappings across
environments.
The new helper file unix.mk retains existing makefile behaviour on unix
like build environments by providing the following macro definitions:
SHELL_COPY cp -f
SHELL_COPY_TREE cp -rf
SHELL_DELETE rm -f
SHELL_DELETE_ALL rm -rf
MAKE_PREREQ_DIR mkdir -p (As make target)
SHELL_REMOVE_DIR rm -rf
Change-Id: I1b5ca5e1208e78230b15284c4af00c1c006cffcb
Evan Lloyd
committed
on 1 Apr 2016
|
Make:Add realclean to .PHONY list
...
Update the cert_create Makefile to list realclean as .PHONY
(like clean)
Change-Id: I9dc8a61a11574a044372e0952b5b12b74e133747
Evan Lloyd
committed
on 1 Apr 2016
|
Make:Remove calls to shell from makefiles.
...
As an initial stage of making Trusted Firmware build environment more
portable, we remove most uses of the $(shell ) function and replace them
with more portable make function based solutions.
Note that the setting of BUILD_STRING still uses $(shell ) since it's
not possible to reimplement this as a make function. Avoiding invocation
of this on incompatible host platforms will be implemented separately.
Change-Id: I768e2f9a265c78814a4adf2edee4cc46cda0f5b8
Evan Lloyd
committed
on 1 Apr 2016
|
2016-03-30 |
cert_create: add non-volatile counter support
...
This patch adds non-volatile counter support to the Certificate
Generation tool. The TBBR Chain of Trust definition in the tool
has been extended to include the counters as certificate extensions.
The counter values can be specified in the command line.
The following default counter values are specified in the build
system:
* Trusted FW Non-Volatile counter = 0
* Non-Trusted FW Non-Volatile counter = 0
These values can be overridden by the platform at build time.
Change-Id: I7ea10ee78d72748d181df4ee78a7169b3ef2720c
Juan Castillo
committed
on 30 Mar 2016
|