| cef5035c | 09-Apr-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: disable BGET test
Disable BGET tests when pager is enabled since these can be very very lengthy when pager page pool is small relatively to the tested heap size.
Signed-off-by: Etien
plat-stm32mp1: disable BGET test
Disable BGET tests when pager is enabled since these can be very very lengthy when pager page pool is small relatively to the tested heap size.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| fe513722 | 22-Mar-2021 |
Jelle Sels <jelle.sels@arm.com> |
core: Add FFA_FEATURES handling for SPs
FFA_FEATURES is used to signal the supported FF-A features.
Signed-off-by: Jelle Sels <jelle.sels@arm.com> Acked-by: Etienne Carriere <etienne.carriere@linar
core: Add FFA_FEATURES handling for SPs
FFA_FEATURES is used to signal the supported FF-A features.
Signed-off-by: Jelle Sels <jelle.sels@arm.com> Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 0a8fa27d | 22-Mar-2021 |
Jelle Sels <jelle.sels@arm.com> |
core: Add FFA_VERSION handling for SPs
FFA_VERSION return the current support FF-A version
Signed-off-by: Jelle Sels <jelle.sels@arm.com> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> |
| 82c617c7 | 22-Mar-2021 |
Jelle Sels <jelle.sels@arm.com> |
core: Add FFA_ID_GET handling for SPs
FFA_ID_GET returns the id of the calling SP.
Signed-off-by: Jelle Sels <jelle.sels@arm.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> |
| 5aaab9c0 | 22-Apr-2021 |
Jerome Forissier <jerome@forissier.org> |
core: asm: use WEAK_FUNC rather than FUNC + .weak
Some functions are defined in assembler with the FUNC macro (which contains a .global directive) followed by a .weak directive to make them weak sym
core: asm: use WEAK_FUNC rather than FUNC + .weak
Some functions are defined in assembler with the FUNC macro (which contains a .global directive) followed by a .weak directive to make them weak symbols. While this works fine with GCC and Clang up to 11.0.0, Clang 12.0.0 emits a warning:
AS out/arm/core/arch/arm/kernel/misc_a32.o core/arch/arm/kernel/misc_a32.S:58:1: warning: get_core_pos_mpidr changed binding to STB_WEAK .weak get_core_pos_mpidr ^
Fix this by using the newly introduced WEAK_FUNC macro.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 203ee23d | 20-Apr-2021 |
Sahil Malhotra <sahil.malhotra@nxp.com> |
core: plat-ls: get HW unique key using OP-TEE CAAM driver
Previously HW Unique key on LS platforms came through ATF via SMC, since we have CAAM driver available in OP-TEE itself, will use that direc
core: plat-ls: get HW unique key using OP-TEE CAAM driver
Previously HW Unique key on LS platforms came through ATF via SMC, since we have CAAM driver available in OP-TEE itself, will use that directly from now on.
Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 96a61475 | 12-Apr-2021 |
Yann Dirson <yann@blade-group.com> |
rk3399: enable serial console by default
The definition is the same as for rk322x.
Signed-off-by: Yann Dirson <yann@blade-group.com> Acked-by: Jerome Forissier <jerome@forissier.org> |
| 409c619b | 09-Apr-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: stmm: Remove pager constraint on stmm_sp_ops
Fix a memory layout issue when CFG_WITH_STMM_SP=y and CFG_WITH_PAGER=y.
Before this change were all StMM operation function handlers their related
core: stmm: Remove pager constraint on stmm_sp_ops
Fix a memory layout issue when CFG_WITH_STMM_SP=y and CFG_WITH_PAGER=y.
Before this change were all StMM operation function handlers their related resources being linked into the pager unpaged sections despite they could be pageable. The reason is stmm_sp_ops is referenced in helper function is_stmm_ctx() which is referenced in unpaged helper function is_user_mode_ctx().
This change removes stmm_sp_ops reference pager constraint by using an indirect reference in is_stmm_ctx().
Declare stmm_dump_state() in pager unpaged section and preserve __rodata_unpaged attribute for stmm_sp_ops since ::dump_state operation is called from unpaged context by abort_print_current_ts().
Co-developed-by: Timothée Cercueil <timothee.cercueil@st.com> Signed-off-by: Timothée Cercueil <timothee.cercueil@st.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 7b701d1b | 09-Apr-2021 |
Volodymyr Babchuk <volodymyr_babchuk@epam.com> |
core/link.mk, plat-rcar: introduce SRECFLAGS variable
.srec files are used to flash OPTEE on Rcar Gen3 using serial mode. Serial mode downloader in Rcar does not recognize S2 records in .srec files
core/link.mk, plat-rcar: introduce SRECFLAGS variable
.srec files are used to flash OPTEE on Rcar Gen3 using serial mode. Serial mode downloader in Rcar does not recognize S2 records in .srec files that objcopy generates by default. It allows only S3 records. Also, it requires correct load address present in .srec files.
So, we need to provide additional flags to objcopy during tee.srec file generation. This change introduces makefile variable SRECFLAGS that can be used exactly for this task. Also it provides the correct flags for rcar platform.
Note: at the begging tee.srec file was generated directly from tee.elf and had correct load addresses. As the load address is wider than 24 bits, objcopy automatically used S3 records. But, later tee-raw.bin were introduced and I changed source for tee.srec, so now it is generated from tee-raw.bin. As tee-raw.bin have no load address information this leads to incorrect tee.srec file.
Strictly speaking, only --adjust-vma option is required. As current load address is wider than 24 bits, objcopy will switch to S3 records automatically. But I prefer to have --srec-forceS3 option anyways: for that unlikely chance that CFG_TZDRAM_START would be changed to something much lower.
Fixes: e66c2639b6b ("plat: rcar: generate .srec file using gen_tee_bin")
Reviewed-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
show more ...
|
| cf133f37 | 16-Oct-2020 |
Jelle Sels <jelle.sels@arm.com> |
core: arm: Add FF-A rxtx buffer for SPs
Rx/Rx buffers are used for SPs and the SPMC to exchange information. This change implements the following FF-A messages for SPs: FFA_RXTX_MAP_64 and FFA_RXTX_
core: arm: Add FF-A rxtx buffer for SPs
Rx/Rx buffers are used for SPs and the SPMC to exchange information. This change implements the following FF-A messages for SPs: FFA_RXTX_MAP_64 and FFA_RXTX_MAP_32 to have a SP map a rxtx buffer FFA_RXTX_UNMAP to unmap the rxtx buffer FFA_RX_RELEASE to release have the SP release the rx buffer
Signed-off-by: Jelle Sels <jelle.sels@arm.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 25c76675 | 29-Mar-2021 |
Marouene Boubakri <marouene.boubakri@nxp.com> |
core: tee: move entry_std.c to core/tee
entry_std.* are not architecture-specific codes, therefore move entry_std.c to core/tee and entry_std.h to core/include/tee.
Signed-off-by: Marouene Boubakri
core: tee: move entry_std.c to core/tee
entry_std.* are not architecture-specific codes, therefore move entry_std.c to core/tee and entry_std.h to core/include/tee.
Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| fb2b1fd8 | 31-Mar-2021 |
Ruchika Gupta <ruchika.gupta@linaro.org> |
core_mmu: Initialize MMU partition table after relocation
For virtualization support, we have multiple MMU partitions, one per virtual machine. These partitions should be mapped to the default parti
core_mmu: Initialize MMU partition table after relocation
For virtualization support, we have multiple MMU partitions, one per virtual machine. These partitions should be mapped to the default partition initially. With CFG_ASLR=y, the default_partition will be relocated to a different VA. Hence shift the initialization of the partition table after relocation.
Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com> Signed-off-by: Ruchika Gupta <ruchika.gupta@linaro.org>
show more ...
|
| 5c59f97d | 05-Apr-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: CFG_STM32MP1_SCMI_SIP=y embeds SCMI SiP SMC entry
Define configuration switch CFG_STM32MP1_SCMI_SIP=y/n to enable SiP SMC platform entries in SCMI server.
Signed-off-by: Etienne Carr
plat-stm32mp1: CFG_STM32MP1_SCMI_SIP=y embeds SCMI SiP SMC entry
Define configuration switch CFG_STM32MP1_SCMI_SIP=y/n to enable SiP SMC platform entries in SCMI server.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 185b4595 | 02-Apr-2021 |
Marouene Boubakri <marouene.boubakri@nxp.com> |
core: mm: move mobj.c to core/mm
mobj is abstract and it is used by many sources which are not architecture-specific such as core/kernel, core/pta and core/tee. Therefore, move mobj.c to core/mm and
core: mm: move mobj.c to core/mm
mobj is abstract and it is used by many sources which are not architecture-specific such as core/kernel, core/pta and core/tee. Therefore, move mobj.c to core/mm and its corresponding header file mobj.h to core/include/mm.
Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 5418501a | 02-Apr-2021 |
Marouene Boubakri <marouene.boubakri@nxp.com> |
core: kernel: move embedded_ts.c to core/kernel
The embedded_ts.c code is not architecture-specific, therefore, move it to core/kernel and move embedded_ts.h to core/include/kernel.
Signed-off-by:
core: kernel: move embedded_ts.c to core/kernel
The embedded_ts.c code is not architecture-specific, therefore, move it to core/kernel and move embedded_ts.h to core/include/kernel.
Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com> Acked-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| adb7766e | 31-Mar-2021 |
Moritz Lummerzheim <moritz.lummerzheim@campus.tu-berlin.de> |
core: fix compilation problem with trace level 0
- if CFG_TEE_CORE_LOG_LEVEL in build/common.mk set to zero, optee_os doesn't compile - error is: core/arch/arm/kernel/unwind_arm64.c:77:6: Error: r
core: fix compilation problem with trace level 0
- if CFG_TEE_CORE_LOG_LEVEL in build/common.mk set to zero, optee_os doesn't compile - error is: core/arch/arm/kernel/unwind_arm64.c:77:6: Error: redefinition of 'print_kernel_stack' 77 | void print_kernel_stack(void) | ^~~~~~~~~~~~~~~~~~ in file, included from core/arch/arm/kernel/unwind_arm64.c:35: core/include/kernel/unwind.h:15:20: Warning: previous definition of 'print_kernel_stack' was here 15 | static inline void print_kernel_stack(void) | ^~~~~~~~~~~~~~~~~~
To avoid this error we assure the function is not redefined.
Signed-off-by: Moritz Lummerzheim <moritz.lummerzheim@campus.tu-berlin.de> Reviewed-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 4385c40c | 01-Apr-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: arm: thread: use THREAD_ID_INVALID
Use macro THREAD_ID_INVALID instead of -1 in thread.c.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome@f
core: arm: thread: use THREAD_ID_INVALID
Use macro THREAD_ID_INVALID instead of -1 in thread.c.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| eea7974a | 29-Mar-2021 |
Marouene Boubakri <marouene.boubakri@nxp.com> |
core: kernel: move secstor_ta.c to core/tee
secstor_ta.c is not architecture-specific code, therefore move it to core/tee.
Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com> Reviewed-by:
core: kernel: move secstor_ta.c to core/tee
secstor_ta.c is not architecture-specific code, therefore move it to core/tee.
Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| c34c183a | 29-Mar-2021 |
Marouene Boubakri <marouene.boubakri@nxp.com> |
core: kernel: move ree_fs_ta.c to core/tee
ree_fs_ta.c is not architecture-specific code, therefore move it to core/tee.
Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com> Reviewed-by: Je
core: kernel: move ree_fs_ta.c to core/tee
ree_fs_ta.c is not architecture-specific code, therefore move it to core/tee.
Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 1bfc1082 | 29-Mar-2021 |
Marouene Boubakri <marouene.boubakri@nxp.com> |
core: kernel: move early_ta.c to core/tee
early_ta.c is not architecture-specific code, therefore move it to core/tee. Moves early_ta.h to core/include/kernel as well.
Signed-off-by: Marouene Bouba
core: kernel: move early_ta.c to core/tee
early_ta.c is not architecture-specific code, therefore move it to core/tee. Moves early_ta.h to core/include/kernel as well.
Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| a54f2bb7 | 29-Mar-2021 |
Marouene Boubakri <marouene.boubakri@nxp.com> |
core: kernel: move pseudo_ta.c to core/tee
pseudo_ta.c is not architecture-specific code, therefore move it to core/tee. pseudo_ta.h is already located under core/include/kernel
Signed-off-by: Maro
core: kernel: move pseudo_ta.c to core/tee
pseudo_ta.c is not architecture-specific code, therefore move it to core/tee. pseudo_ta.h is already located under core/include/kernel
Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| d3977ed1 | 29-Mar-2021 |
Marouene Boubakri <marouene.boubakri@nxp.com> |
core: kernel: move user_ta.c to core/tee
user_ta.c is not architecture-specific code, therefore move it to core/tee. user_ta.h is already located under core/include/kernel.
Signed-off-by: Marouene
core: kernel: move user_ta.c to core/tee
user_ta.c is not architecture-specific code, therefore move it to core/tee. user_ta.h is already located under core/include/kernel.
Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| d1447353 | 25-Mar-2021 |
Clement Faure <clement.faure@nxp.com> |
core: ls: enable CAAM ECC
Enabled CAAM ECC algorithm for all LS platforms.
Signed-off-by: Clement Faure <clement.faure@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> |
| 0624af71 | 25-Mar-2021 |
Clement Faure <clement.faure@nxp.com> |
core: imx: enable CAAM ECC
Enabled CAAM ECC algorithm for all i.MX platforms.
Signed-off-by: Clement Faure <clement.faure@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> |
| 5bf80bb4 | 26-Mar-2021 |
Sughosh Ganu <sughosh.ganu@linaro.org> |
core: mm: Use nexus memory allocation api's in carve_out_phys_mem()
During discovery of the non-secure memory, the memory attributes like address and size are stored as part of the core_mmu_phys_mem
core: mm: Use nexus memory allocation api's in carve_out_phys_mem()
During discovery of the non-secure memory, the memory attributes like address and size are stored as part of the core_mmu_phys_mem structure. Memory for this structure is allocated on the nexus heap area. Subsequently, when memory for this structure is reallocated, this is done using the plain realloc call. Use the nex_realloc api for the reallocation.
Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
show more ...
|