| 6bc1a30c | 22-Feb-2018 |
Stephen Warren <swarren@nvidia.com> |
Make all build results depend on all makefiles
This makes incremental builds work when the only change is to a definition in a makefile. This version of the patch has been fixed to avoid depending o
Make all build results depend on all makefiles
This makes incremental builds work when the only change is to a definition in a makefile. This version of the patch has been fixed to avoid depending on the dependency makefiles that are generated at build time.
Fixes arm-software/tf-issues#551
Signed-off-by: Stephen Warren <swarren@nvidia.com>
show more ...
|
| bc1a03c7 | 27-Feb-2018 |
Dan Handley <dan.handley@arm.com> |
Improve MULTI_CONSOLE_API deprecation warnings
For platforms that have not migrated to MULTI_CONSOLE_API == 1, there are a lot of confusing deprecated declaration warnings relating to use of console
Improve MULTI_CONSOLE_API deprecation warnings
For platforms that have not migrated to MULTI_CONSOLE_API == 1, there are a lot of confusing deprecated declaration warnings relating to use of console_init() and console_uninit(). Some of these relate to use by the generic code, not the platform code. These functions are not really deprecated but *removed* when MULTI_CONSOLE_API == 1.
This patch consolidates these warnings into a single preprocessor warning. The __deprecated attribute is removed from the console_init() and console_uninit() declarations.
For preprocessor warnings like this to not cause fatal build errors, this patch adds -Wno-error=cpp to the build flags when ERROR_DEPRECATED == 0. This option (and -Wno-error=deprecated-declarations) is now added to CPPFLAGS instead of TF_CFLAGS to ensure the build flags are used in the assembler as well as the compiler.
This patch also disentangles the MULTI_CONSOLE_API and ERROR_DEPRECATED build flags by defaulting MULTI_CONSOLE_API to 0 instead of ERROR_DEPRECATED. This allows platforms that have not migrated to MULTI_CONSOLE_API to use ERROR_DEPRECATED == 1 to emit a more meaningful build error.
Finally, this patch bans use of MULTI_CONSOLE_API == 1 and AARCH32, since the AArch32 console implementation does not support MULTI_CONSOLE_API == 1.
Change-Id: If762165ddcb90c28aa7a4951aba70cb15c2b709c Signed-off-by: Dan Handley <dan.handley@arm.com>
show more ...
|
| a574bfbc | 28-Feb-2018 |
Dimitris Papastamos <dimitris.papastamos@arm.com> |
Revert "Make all build results depend on all makefiles"
Seems to have unintended side-effects on the build system such as rebuilding certain parts of TF even though nothing has changed.
This revert
Revert "Make all build results depend on all makefiles"
Seems to have unintended side-effects on the build system such as rebuilding certain parts of TF even though nothing has changed.
This reverts commit c6f651f9a3322857c8e1f8250274a0984c024283.
Change-Id: I1472e6c630cb6371ec629b7d97a5748d9a6fd096 Signed-off-by: Dimitris Papastamos <dimitris.papastamos@arm.com>
show more ...
|
| 38c14d88 | 14-Dec-2017 |
Soby Mathew <soby.mathew@arm.com> |
Makefile: Add `all` target to MAKE_DTBS
This patch makes some minor changes to `MAKE_DTBS` make macro and adds `dtbs` target to the `all` make target.
Change-Id: I1c5b4a603ada31d2dac2ed73da9ff707b4
Makefile: Add `all` target to MAKE_DTBS
This patch makes some minor changes to `MAKE_DTBS` make macro and adds `dtbs` target to the `all` make target.
Change-Id: I1c5b4a603ada31d2dac2ed73da9ff707b410dd11 Signed-off-by: Soby Mathew <soby.mathew@arm.com>
show more ...
|
| c6f651f9 | 22-Feb-2018 |
Stephen Warren <swarren@nvidia.com> |
Make all build results depend on all makefiles
This makes incremental builds work when the only change is to a definition in a makefile.
Fixes arm-software/tf-issues#551
Signed-off-by: Stephen War
Make all build results depend on all makefiles
This makes incremental builds work when the only change is to a definition in a makefile.
Fixes arm-software/tf-issues#551
Signed-off-by: Stephen Warren <swarren@nvidia.com>
show more ...
|
| 14db8908 | 26-Jan-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: add GZIP compression filter
One typical usage of the pre-tool image filter is data compression, and GZIP is one of the most commonly used compression methods. I guess this is generic enough t
Build: add GZIP compression filter
One typical usage of the pre-tool image filter is data compression, and GZIP is one of the most commonly used compression methods. I guess this is generic enough to be put in the common script instead of platform.mk.
If you want to use this, you can add something like follows to your platform.mk:
BL32_PRE_TOOL_FILTER := GZIP BL33_PRE_TOOL_FILTER := GZIP
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 2da522bb | 01-Feb-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: support pre-tool image processing
There are cases where we want to process images before they are passed to cert_create / fiptool.
My main motivation is data compression. By compressing ima
Build: support pre-tool image processing
There are cases where we want to process images before they are passed to cert_create / fiptool.
My main motivation is data compression. By compressing images, we can save data storage, and possibly speed up loading images. The image verification will also get faster because certificates are generated based on compressed images.
Other image transformation filters (for ex. encryption), and their combinations would be possible. So, our build system should support transformation filters in a generic manner.
The choice of applied filters is up to platforms (so specified in platform.mk)
To define a new filter, <FILTER_NAME>_RULE and <FILTER_NAME>_SUFFIX are needed.
For example, the GZIP compression filter can be implemented as follows:
------------------------>8------------------------ define GZIP_RULE $(1): $(2) @echo " GZIP $$@" $(Q)gzip -n -f -9 $$< --stdout > $$@ endef
GZIP_SUFFIX := .gz ------------------------>8------------------------
The _RULE defines how to create the target $(1) from the source $(2). The _SUFFIX defines the extension appended to the processed image path. The suffix is not so important because the file name information is not propagated to FIP, but adding a sensible suffix will be good to classify the data file.
Platforms can specify which filter is applied to which BL image, like this:
------------------------>8------------------------ BL32_PRE_TOOL_FILTER := GZIP BL33_PRE_TOOL_FILTER := GZIP ------------------------>8------------------------
<IMAGE_NAME>_PRE_TOOL_FILTER specifies per-image filter. With this, different images can be transformed differently. For the case above, only BL32 and BL33 are GZIP-compressed. Nothing is done for other images.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 33950dd8 | 26-Jan-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: change the first parameter of TOOL_ADD_IMG to lowercase
In the next commit, I need the image name in lowercase because output files are generally named in lowercase.
Unfortunately, TOOL_ADD_
Build: change the first parameter of TOOL_ADD_IMG to lowercase
In the next commit, I need the image name in lowercase because output files are generally named in lowercase.
Unfortunately, TOOL_ADD_IMG takes the first argument in uppercase since we generally use uppercase Make variables.
make_helpers/build_macros.mk provides 'uppercase' macro to convert a string into uppercase, but 'lowercase' does not exist. We can implement it if we like, but it would be more straightforward to change the argument of TOOL_ADD_IMG.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 36af3455 | 26-Jan-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: make tools depend on $(BIN) instead of PHONY target
The PHONY target "bl*" generate $(BIN) and $(DUMP), but host tools (fiptool, cert_create) only need $(BIN).
Signed-off-by: Masahiro Yamada
Build: make tools depend on $(BIN) instead of PHONY target
The PHONY target "bl*" generate $(BIN) and $(DUMP), but host tools (fiptool, cert_create) only need $(BIN).
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 91704d9d | 26-Jan-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: remove third argument of CERT_ADD_CMD_OPT
The third argument was given "true" by images, but it was moved to TOOL_ADD_PAYLOAD. No more caller of CERT_ADD_CMD_OPT uses this. So, the third arg
Build: remove third argument of CERT_ADD_CMD_OPT
The third argument was given "true" by images, but it was moved to TOOL_ADD_PAYLOAD. No more caller of CERT_ADD_CMD_OPT uses this. So, the third argument is always empty. Remove it.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| c939d13a | 26-Jan-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: rename FIP_ADD_IMG to TOOL_ADD_IMG
Now FIP_ADD_IMG takes care of both fiptool and cert_create symmetrically. Rename it so that it matches the behavior.
Signed-off-by: Masahiro Yamada <yamad
Build: rename FIP_ADD_IMG to TOOL_ADD_IMG
Now FIP_ADD_IMG takes care of both fiptool and cert_create symmetrically. Rename it so that it matches the behavior.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 10cea934 | 26-Jan-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: rename FIP_ADD_PAYLOAD to TOOL_ADD_PAYLOAD
Now FIP_ADD_PAYLOAD takes care of both fiptool and cert_create symmetrically. Rename it so that it matches the behavior.
Signed-off-by: Masahiro Y
Build: rename FIP_ADD_PAYLOAD to TOOL_ADD_PAYLOAD
Now FIP_ADD_PAYLOAD takes care of both fiptool and cert_create symmetrically. Rename it so that it matches the behavior.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| f30ee0b9 | 26-Jan-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: move cert_create arguments and dependency to FIP_ADD_PAYLOAD
The fiptool and cert_create use the same command options for images. It is pretty easy to handle both in the same, symmetrical way
Build: move cert_create arguments and dependency to FIP_ADD_PAYLOAD
The fiptool and cert_create use the same command options for images. It is pretty easy to handle both in the same, symmetrical way.
Move CRT_ARGS and CRT_DEPS to FIP_ADD_PAYLOAD. This refactoring makes sense because FIP_ADD_PAYLOAD is called from MAKE_BL (when building images from source), and from FIP_ADD_IMG (when including external images). (FIP_ADD_PAYLOAD will be renamed later on since it now caters to both fiptool and cert_create).
We can delete CERT_ADD_CMD_OPT for images in tbbr.mk. It still needs to call CERT_ADD_CMD_OPT directly for certificates.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 945b316f | 26-Jan-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: rip off unneeded $(eval ...) from buid macros
The callers of these macros are supposed to use $(eval $(call, ...)). The $(eval ...) on the callee side is unneeded.
Signed-off-by: Masahiro Ya
Build: rip off unneeded $(eval ...) from buid macros
The callers of these macros are supposed to use $(eval $(call, ...)). The $(eval ...) on the callee side is unneeded.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 1dc0714f | 26-Jan-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: merge build macros between FIP_ and FWU_FIP_
The build system supports generating two FIP images, fip and fwu_fip. Accordingly, we have similar build macros.
FIP_ADD_PAYLOAD <--> FWU_F
Build: merge build macros between FIP_ and FWU_FIP_
The build system supports generating two FIP images, fip and fwu_fip. Accordingly, we have similar build macros.
FIP_ADD_PAYLOAD <--> FWU_FIP_ADD_PAYLOAD CERT_ADD_CMD_OPT <--> FWU_CERT_ADD_CMD_OPT FIP_ADD_IMG <--> FWU_FIP_ADD_IMG
The duplicated code increases the maintenance burden. Also, the build rule of BL2U looks clumsy - we want to call MAKE_BL to compile it from source files, but we want to put it in fwu_fip. We can not do it in a single macro call since the current MAKE_BL does not support fwu_fip.
To refactor those in a clean way is to support one more argument to specify the FIP prefix. If it is empty, the images are targeted to fip, whereas if the argument is "FWU_", targeted to fwu_fip.
The build macros prefixed with FWU_ go away.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 34ec8494 | 26-Jan-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: squash MAKE_TOOL_ARGS into MAKE_BL
Now, MAKE_TOOL_ARGS is only called from MAKE_BL. Squash it.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> |
| 802d2dd2 | 26-Jan-2018 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: check if specified external image exists
check_* targets check if the required option are given, but do not check the validity of the argument. If the specified file does not exist, let the
Build: check if specified external image exists
check_* targets check if the required option are given, but do not check the validity of the argument. If the specified file does not exist, let the build fail immediately instead of passing the invalid file path to tools.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 040f1e69 | 24-Jan-2018 |
davidcunado-arm <david.cunado@arm.com> |
Merge pull request #1193 from jwerner-chromium/JW_coreboot
New console API and coreboot support [v4] |
| 3429c77a | 09-Jun-2017 |
Julius Werner <jwerner@chromium.org> |
Add platform-independent coreboot support library
This patch adds the foundation for a platform-independent coreboot support library that can be shared by all platforms that boot BL31 from coreboot
Add platform-independent coreboot support library
This patch adds the foundation for a platform-independent coreboot support library that can be shared by all platforms that boot BL31 from coreboot (acting as BL2). It adds code to parse the "coreboot table", a data structure that coreboot uses to communicate different kinds of information to later-stage firmware and certain OS drivers.
As a first small use case for this information, allow platforms to access the serial console configuration used by coreboot, removing the need to hardcode base address and divisors and allowing Trusted Firmware to benefit from coreboot's user configuration (e.g. which UART to pick and which baud rate to use).
Change-Id: I2bfb39cd2609ce6640b844ab68df6c9ae3f28e9e Signed-off-by: Julius Werner <jwerner@chromium.org>
show more ...
|
| 0d3a27e7 | 19-Jan-2018 |
davidcunado-arm <david.cunado@arm.com> |
Merge pull request #1200 from robertovargas-arm/bl2-el3
Add BL2_AT_EL3 build option |
| c9b31ae8 | 02-Jan-2018 |
Roberto Vargas <roberto.vargas@arm.com> |
bl2-el3: Don't include BL2 in fip for BL2 at EL3
It is better to not include BL2 in FIP when using `BL2 at EL3` as platforms using this config would not have the capability to parse the FIP format i
bl2-el3: Don't include BL2 in fip for BL2 at EL3
It is better to not include BL2 in FIP when using `BL2 at EL3` as platforms using this config would not have the capability to parse the FIP format in Boot ROM and BL2 needs to be loaded independently. This patch does the required changes for the same.
Change-Id: Iad285c247b3440e2d827fef97c3dd81f5c09cabc Signed-off-by: Roberto Vargas <roberto.vargas@arm.com>
show more ...
|
| b1d27b48 | 30-Oct-2017 |
Roberto Vargas <roberto.vargas@arm.com> |
bl2-el3: Add BL2_EL3 image
This patch enables BL2 to execute at the highest exception level without any dependancy on TF BL1. This enables platforms which already have a non-TF Boot ROM to directly
bl2-el3: Add BL2_EL3 image
This patch enables BL2 to execute at the highest exception level without any dependancy on TF BL1. This enables platforms which already have a non-TF Boot ROM to directly load and execute BL2 and subsequent BL stages without need for BL1. This is not currently possible because BL2 executes at S-EL1 and cannot jump straight to EL3.
Change-Id: Ief1efca4598560b1b8c8e61fbe26d1f44e929d69 Signed-off-by: Roberto Vargas <roberto.vargas@arm.com>
show more ...
|
| 87ebd20d | 24-Dec-2017 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: specify check_* targets as .PHONY
check_* targets just check necessary command line argument, not build any images. They should be specified as .PHONY.
Signed-off-by: Masahiro Yamada <yamad
Build: specify check_* targets as .PHONY
check_* targets just check necessary command line argument, not build any images. They should be specified as .PHONY.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 1e0c0784 | 23-Dec-2017 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
Build: update comment lines for macros
Commit 8f0617ef9e46 ("Apply TBBR naming convention to the fip_create options") changed fiptool command options. We often forget to update documentation.
Sign
Build: update comment lines for macros
Commit 8f0617ef9e46 ("Apply TBBR naming convention to the fip_create options") changed fiptool command options. We often forget to update documentation.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 842c00eb | 14-Dec-2017 |
davidcunado-arm <david.cunado@arm.com> |
Merge pull request #1104 from nmenon/dtb_build-v2
Makefile: Add ability to build dtb (v2) |