| 7e5772bd | 26-Jun-2018 |
Antonio Nino Diaz <antonio.ninodiaz@arm.com> |
SPM: Read entrypoint from resource descriptor
Read entrypoint of the Secure Partition from the resource description struct.
Change-Id: Ie693c7b4d4fecafd85b6934d9d8c4232efb1dc55 Signed-off-by: Anton
SPM: Read entrypoint from resource descriptor
Read entrypoint of the Secure Partition from the resource description struct.
Change-Id: Ie693c7b4d4fecafd85b6934d9d8c4232efb1dc55 Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
show more ...
|
| 680389a6 | 27-Nov-2018 |
Antonio Nino Diaz <antonio.ninodiaz@arm.com> |
SPM: Load image and RD from SP package
Load SP and RD from package instead of relying on RD being already loaded in memory and the SP being loaded as a BL32 image.
Change-Id: I18d4fbf4597656c6a7e87
SPM: Load image and RD from SP package
Load SP and RD from package instead of relying on RD being already loaded in memory and the SP being loaded as a BL32 image.
Change-Id: I18d4fbf4597656c6a7e878e1d7c01a8a324f3f8a Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
show more ...
|
| 26010da1 | 27-Nov-2018 |
Antonio Nino Diaz <antonio.ninodiaz@arm.com> |
SPM: sptool: Introduce tool to package SP and RD
This tool packages Secure Partitions and Resource Descriptor blobs into a simple file that can be loaded by SPM.
Change-Id: If3800064f30bdc3d7fc6a15
SPM: sptool: Introduce tool to package SP and RD
This tool packages Secure Partitions and Resource Descriptor blobs into a simple file that can be loaded by SPM.
Change-Id: If3800064f30bdc3d7fc6a15ffbb3007ef632bcaa Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
show more ...
|
| 19122fca | 11-Dec-2018 |
Soby Mathew <soby.mathew@arm.com> |
Merge pull request #1714 from chandnich/sgiclark-helios
SGI-Clark.Helios platform support patches |
| 6336b07a | 10-Dec-2018 |
Yann Gautier <yann.gautier@st.com> |
Makefile: add a possibility to disable -Werror
Setting E=0 in the make command line disables -Werror in CPPFLAGS.
Signed-off-by: Yann Gautier <yann.gautier@st.com> |
| 1b18c6c4 | 10-Dec-2018 |
Yann Gautier <yann.gautier@st.com> |
correct some missing-prototype warnings
This avoids the following warnings: no previous prototype for 'bl2_arch_setup' [-Wmissing-prototypes] no previous prototype for 'plat_log_get_prefix' [-Wmissi
correct some missing-prototype warnings
This avoids the following warnings: no previous prototype for 'bl2_arch_setup' [-Wmissing-prototypes] no previous prototype for 'plat_log_get_prefix' [-Wmissing-prototypes]
Also correct a compilation issue if BL2_IN_XIP_MEM is enabled: uintptr_t is not defined.
Signed-off-by: Lionel Debieve <lionel.debieve@st.com> Signed-off-by: Yann Gautier <yann.gautier@st.com>
show more ...
|
| b7c6529c | 03-Dec-2018 |
Yann Gautier <yann.gautier@st.com> |
io_block: define MAX_IO_BLOCK_DEVICES as unsigned
This is used as a table index, and already compared with an unsigned int: block_dev_count.
Signed-off-by: Yann Gautier <yann.gautier@st.com> |
| e7c645b5 | 10-Dec-2018 |
Yann Gautier <yann.gautier@st.com> |
Add the possibility to compile TF-A with more warnings
The list of warning is taken from kernel and also divided in 3. The option to activate that is W=x, with x=1, 2 or 3.
Signed-off-by: Yann Gaut
Add the possibility to compile TF-A with more warnings
The list of warning is taken from kernel and also divided in 3. The option to activate that is W=x, with x=1, 2 or 3.
Signed-off-by: Yann Gautier <yann.gautier@st.com>
show more ...
|
| 09d413a1 | 30-Oct-2018 |
Antonio Nino Diaz <antonio.ninodiaz@arm.com> |
SPM: Remove SP memory mappings definitions
This information is retrieved from the resource description now.
Change-Id: Iaae23945eb2c45305cdc6442853e42f4e04fe094 Co-authored-by: Sandrine Bailleux <s
SPM: Remove SP memory mappings definitions
This information is retrieved from the resource description now.
Change-Id: Iaae23945eb2c45305cdc6442853e42f4e04fe094 Co-authored-by: Sandrine Bailleux <sandrine.bailleux@arm.com> Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
show more ...
|
| 08aa122b | 30-Oct-2018 |
Antonio Nino Diaz <antonio.ninodiaz@arm.com> |
SPM: Deprecate boot info struct
This information is defined by the Secure Partition in the resource description.
Change-Id: Ia7db90c5de8360a596106880d3f6a632a88d3ea8 Signed-off-by: Antonio Nino Dia
SPM: Deprecate boot info struct
This information is defined by the Secure Partition in the resource description.
Change-Id: Ia7db90c5de8360a596106880d3f6a632a88d3ea8 Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
show more ...
|
| e458302b | 30-Oct-2018 |
Antonio Nino Diaz <antonio.ninodiaz@arm.com> |
SPM: Introduce functions to load DTB files
Introduce helpers to create resource description struct, as well as code to load the information from DTB files.
Change-Id: I0f5bb94eb8b01c6cb53fe807a9db0
SPM: Introduce functions to load DTB files
Introduce helpers to create resource description struct, as well as code to load the information from DTB files.
Change-Id: I0f5bb94eb8b01c6cb53fe807a9db0c05a70d7a43 Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
show more ...
|
| 03aac658 | 27-Nov-2018 |
Antonio Nino Diaz <antonio.ninodiaz@arm.com> |
SPM: Define resource description data structures
The structures and associated definitions are in different files so that the definitions can be used inside DTS files while the structs are private t
SPM: Define resource description data structures
The structures and associated definitions are in different files so that the definitions can be used inside DTS files while the structs are private to SPM. They follow the SPRT specification.
Change-Id: Id6a629040a086c482b9d9fa1883b8aa6bbee619f Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
show more ...
|
| 2d7b9e5e | 30-Oct-2018 |
Antonio Nino Diaz <antonio.ninodiaz@arm.com> |
SPM: Deprecate the current implementation
The current SPM is a prototype that only supports one secure partition in EL0. The objective of SPM is to have multiple partitions. The current MM interface
SPM: Deprecate the current implementation
The current SPM is a prototype that only supports one secure partition in EL0. The objective of SPM is to have multiple partitions. The current MM interface isn't adequate for this, so it is needed to modify heavily the code to add proper support for it.
However, there are platforms which are already using this (like SGI) and removing the code would break it. For this reason, the current SPM code has been duplicated in order to temporarily preserve compatibility. All new improvements/changes to SPM will be done in the non-deprecated copy, that may change without notice.
The new build option SPM_DEPRECATED has been introduced to select the SPM implementation. It defaults to 1, that selects the deprecated SPM.
Change-Id: Ic9f80b53b450e97b4d3f47e4ef4a138ee8d87443 Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
show more ...
|
| 73f45ba4 | 18-Oct-2018 |
Antonio Nino Diaz <antonio.ninodiaz@arm.com> |
fvp: Increase stack size when SPM is enabled
Change-Id: Iec265dc85d44f35048d1fbcfbe55960d45570027 Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com> |
| 48e1d350 | 15-Nov-2018 |
Jeenu Viswambharan <jeenu.viswambharan@arm.com> |
AArch64: Use SSBS for CVE_2018_3639 mitigation
The Armv8.5 extensions introduces PSTATE.SSBS (Speculation Store Bypass Safe) bit to mitigate against Variant 4 vulnerabilities. Although an Armv8.5 fe
AArch64: Use SSBS for CVE_2018_3639 mitigation
The Armv8.5 extensions introduces PSTATE.SSBS (Speculation Store Bypass Safe) bit to mitigate against Variant 4 vulnerabilities. Although an Armv8.5 feature, this can be implemented by CPUs implementing earlier version of the architecture.
With this patch, when both PSTATE.SSBS is implemented and DYNAMIC_WORKAROUND_CVE_2018_3639 is active, querying for SMCCC_ARCH_WORKAROUND_2 via. SMCCC_ARCH_FEATURES call would return 1 to indicate that mitigation on the PE is either permanently enabled or not required.
When SSBS is implemented, SCTLR_EL3.DSSBS is initialized to 0 at reset of every BL stage. This means that EL3 always executes with mitigation applied.
For Cortex A76, if the PE implements SSBS, the existing mitigation (by using a different vector table, and tweaking CPU ACTLR2) is not used.
Change-Id: Ib0386c5714184144d4747951751c2fc6ba4242b6 Signed-off-by: Jeenu Viswambharan <jeenu.viswambharan@arm.com>
show more ...
|
| 74203d26 | 10-Dec-2018 |
Antonio Niño Díaz <antonio.ninodiaz@arm.com> |
Merge pull request #1704 from marex/arm/master/memsize-passing-v1
Arm/master/memsize passing v1 |
| 85456a92 | 10-Dec-2018 |
Soby Mathew <soby.mathew@arm.com> |
Merge pull request #1700 from jwerner-chromium/JW_crashfix
MULTI_CONSOLE_API fixes and cleanups |
| 5c31518c | 10-Dec-2018 |
Ding Tao <miyatsu@qq.com> |
docs: marvell: Fix typo in file build.txt
Replace "Uboot" with "Ubuntu".
Signed-off-by: Ding Tao <miyatsu@qq.com> |
| 65d8582b | 28-Nov-2018 |
Julius Werner <jwerner@chromium.org> |
maintainers: Add Julius Werner for coreboot and console API
I wrote most of this code and have a vested interest in keeping it healthy, so adding myself as a maintainer.
Change-Id: I0edeebbc8336b69
maintainers: Add Julius Werner for coreboot and console API
I wrote most of this code and have a vested interest in keeping it healthy, so adding myself as a maintainer.
Change-Id: I0edeebbc8336b6976dfaf393b3cfc7bc94089ac6 Signed-off-by: Julius Werner <jwerner@chromium.org>
show more ...
|
| 91b48c9f | 28-Nov-2018 |
Julius Werner <jwerner@chromium.org> |
drivers/console: Reimplement MUTLI_CONSOLE_API framework in C
Now that we have switched to using the stack in MULTI_CONSOLE_API framework functions and have factored all code involved in crash repor
drivers/console: Reimplement MUTLI_CONSOLE_API framework in C
Now that we have switched to using the stack in MULTI_CONSOLE_API framework functions and have factored all code involved in crash reporting out into a separate file, there's really no reason to keep the main framework code in assembly anymore. This patch rewrites it in C which allows us to have a single implementation across aarch32/64 and should be much easier to maintain going forward.
Change-Id: I6c85a01e89a79e8b233f3f8bee812f0dbd026221 Signed-off-by: Julius Werner <jwerner@chromium.org>
show more ...
|
| 985ee0b7 | 28-Nov-2018 |
Julius Werner <jwerner@chromium.org> |
drivers/console: Link console framework code by default
This patch makes the build system link the console framework code by default, like it already does with other common libraries (e.g. cache hel
drivers/console: Link console framework code by default
This patch makes the build system link the console framework code by default, like it already does with other common libraries (e.g. cache helpers). This should not make a difference in practice since TF is linked with --gc-sections, so the linker will garbage collect all functions and data that are not referenced by any other code. Thus, if a platform doesn't want to include console code for size reasons and doesn't make any references to console functions, the code will not be included in the final binary.
To avoid compatibility issues with older platform ports, only make this change for the MULTI_CONSOLE_API.
Change-Id: I153a9dbe680d57aadb860d1c829759ba701130d3 Signed-off-by: Julius Werner <jwerner@chromium.org>
show more ...
|
| 0f8aee4e | 04-Dec-2018 |
Julius Werner <jwerner@chromium.org> |
console: Fix console_unregister() signature
console_unregister() has always returned a pointer to the console that was removed on success, not just an integer. Fix the C prototype to match the assem
console: Fix console_unregister() signature
console_unregister() has always returned a pointer to the console that was removed on success, not just an integer. Fix the C prototype to match the assembly implementation.
Change-Id: Iafc43de0767a5c87c9ae5c3aba53761dd28d51e6 Signed-off-by: Julius Werner <jwerner@chromium.org>
show more ...
|
| 63c52d00 | 19-Nov-2018 |
Julius Werner <jwerner@chromium.org> |
plat/common/crash_console_helpers.S: Fix MULTI_CONSOLE_API support
Crash reporting via the default consoles registered by MULTI_CONSOLE_API has been broken since commit d35cc34 (Console: Use callee-
plat/common/crash_console_helpers.S: Fix MULTI_CONSOLE_API support
Crash reporting via the default consoles registered by MULTI_CONSOLE_API has been broken since commit d35cc34 (Console: Use callee-saved registers), which was introduced to allow console drivers written in C. It's not really possible with the current crash reporting framework to support console drivers in C, however we should make sure that the existing assembly drivers that do support crash reporting continue to work through the MULTI_CONSOLE_API.
This patch fixes the problem by creating custom console_putc() and console_flush() implementations for the crash reporting case that do not use the stack. Platforms that want to use this feature will have to link plat/common/aarch64/crash_console_helpers.S explicitly.
Also update the documentation to better reflect the new reality (of this being an option rather than the expected default for most platforms).
Change-Id: Id0c761e5e2fddaf25c277bc7b8ab603946ca73cb Signed-off-by: Julius Werner <jwerner@chromium.org>
show more ...
|
| b2f7c9dd | 20-Nov-2018 |
Julius Werner <jwerner@chromium.org> |
plat/common: Remove duplication of plat_crash_console functions/stubs
Commit e74afb652 (Deprecate weak crash console functions) deprecated the default inclusion of weak definitions for plat_crash_co
plat/common: Remove duplication of plat_crash_console functions/stubs
Commit e74afb652 (Deprecate weak crash console functions) deprecated the default inclusion of weak definitions for plat_crash_console functions in plat/common/aarch64/platform_helpers.S. The code was later copied out to plat/common/aarch64/crash_console_helpers.S so platforms can link it explicitly if they want to. However, since deprecation does not mean removal, the same code is also still duplicated in platform_helpers.S.
The duplicated code contains both empty stubs for the !MULTI_CONSOLE_API case, and a real implementation that used to work but was broken by commit d35cc34 (Console: Use callee-saved registers) for MULTI_CONSOLE_API. It's not great to have both of these duplicated in two files, so this patch splits them up: in platform_helpers.S we'll only keep the empty stubs (guarded by !ERROR_DEPRECATED), which should not regress functionality since the MULTI_CONSOLE_API implementation was already broken anyway. In crash_console_helpers.S, we'll only keep the MULTI_CONSOLE_API version, which is enough both as an implementation in itself and as a sample for how to reimplement these functions in a platform-specific file.
Change-Id: I83d95a90ab6aac597dc2ea2f2797ac2c8ed075d4 Signed-off-by: Julius Werner <jwerner@chromium.org>
show more ...
|
| f7ed4ab0 | 06-Dec-2018 |
Soby Mathew <soby.mathew@arm.com> |
Merge pull request #1713 from chandnich/nt-fw-config
plat/arm/sgi: Use NT_FW_CONFIG instead of HW_CONFIG |