| 39cb90b0 | 21-Oct-2020 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: sm_a32.S: add missing .cantunwind
Adds missing .cantunwind directives to the two alternative exception vectors sm_vect_table_a15 and sm_vect_table_bpiall.
Reviewed-by: Jerome Forissier <jerom
core: sm_a32.S: add missing .cantunwind
Adds missing .cantunwind directives to the two alternative exception vectors sm_vect_table_a15 and sm_vect_table_bpiall.
Reviewed-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| fae8192b | 19-Oct-2020 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: correct alignment for exception vectors
The FUNC and LOCAL_FUNC macros changes section so specifying alignment before the function will be lost. This may break for instance usage of sm_vect_ta
core: correct alignment for exception vectors
The FUNC and LOCAL_FUNC macros changes section so specifying alignment before the function will be lost. This may break for instance usage of sm_vect_table, depending on configuration. Fix this by passing required alignment as a parameter to the macro.
Fixes: a31e8303cf2e ("Remove '.section .text.<name>' and use function macros instead") Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 762a5553 | 19-Oct-2020 |
Jens Wiklander <jens.wiklander@linaro.org> |
Add alignment parameter to FUNC() and LOCAL_FUNC() macros
Adds a default alignment parameter to FUNC() and LOCAL_FUNC() assembly macros. This is needed since the function macro also sets the sectio
Add alignment parameter to FUNC() and LOCAL_FUNC() macros
Adds a default alignment parameter to FUNC() and LOCAL_FUNC() assembly macros. This is needed since the function macro also sets the section of the function making any alignment directives before the function macro useless.
Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 5d50cc95 | 21-Oct-2020 |
Jerome Forissier <jerome@forissier.org> |
ci: travis: download checkpatch.pl from linux-next
The Travis CI script obtains checkpatch.pl from a mirror of the master branch of the Linux repository. Unfortunately, kernel v5.9 has a buggy check
ci: travis: download checkpatch.pl from linux-next
The Travis CI script obtains checkpatch.pl from a mirror of the master branch of the Linux repository. Unfortunately, kernel v5.9 has a buggy checkpatch.pl [1]:
Global symbol "$gitroot" requires explicit package name [...]
The fix [2] is available in linux-next already but due to the Linux release schedule it won't make it to the master branch until the end of the v5.10-rc1 merge window, which is expected two weeks after the v5.9 release.
Downloading checkpatch.pl from linux-next seems to be a better idea in general. Of course it might break more often due to the unstable nature of linux-next, but on the other hand fixes appear much more quickly than in master. A faster update time is even more beneficial in case new features are added (such as the --kconfig-prefix option I submitted some time ago [3]) because new patches have to wait up to several weeks if they miss the merge window.
Therefore, change the checkpatch URL from linux master to linux-next to fix the above error immediately and hopefully be more convenient in the future.
Link: [1] https://travis-ci.org/github/OP-TEE/optee_os/builds/737636665#L264 Link: [2] https://lkml.org/lkml/2020/10/18/167 Link: [3] https://lkml.org/lkml/2020/8/18/212 Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 54fbfa98 | 14-Oct-2020 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: deprecate register_dynamic_shm()
register_dynamic_shm() and register_ddr() does almost the same thing but they cannot be used both in the same platform build. To straighten out this confusion
core: deprecate register_dynamic_shm()
register_dynamic_shm() and register_ddr() does almost the same thing but they cannot be used both in the same platform build. To straighten out this confusion we're switching to use only register_ddr() which is a bit more flexible than register_dynamic_shm() since the former automatically creates holes in the memory map where there otherwise would be a fatal conflict.
register_dynamic_shm() is deprecated and for backwards compatibility reimplemented as a special variant of register_ddr().
MEM_AREA_RAM_NSEC is kept only as a way of establish a static map of non-secure memory. For example CFG_BCM_ELOG_BASE for plat-bcm.
Acked-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 8f51d0a4 | 16-Oct-2020 |
Stefan Schmidt <snst@meek.de> |
core: rpmb: check return value of encrypt_block()
Added error handling if call of function encrypt_block() fails in tee_rpmb_req_pack().
Signed-off-by: Stefan Schmidt <snst@meek.de> Reviewed-by: Je
core: rpmb: check return value of encrypt_block()
Added error handling if call of function encrypt_block() fails in tee_rpmb_req_pack().
Signed-off-by: Stefan Schmidt <snst@meek.de> Reviewed-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| f50962e3 | 16-Oct-2020 |
Volodymyr Babchuk <volodymyr_babchuk@epam.com> |
ta_dev_kit.mk: make sure that libutils is linked second time
libgcc depends on __getauxval symbol from libuils. As, generally libutils is linked before libgcc, we will get "unresolved symbol" error.
ta_dev_kit.mk: make sure that libutils is linked second time
libgcc depends on __getauxval symbol from libuils. As, generally libutils is linked before libgcc, we will get "unresolved symbol" error. To resolve this dependency we need to link libutils second time - after libgcc.
Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 73196b58 | 13-Oct-2020 |
Volodymyr Babchuk <volodymyr_babchuk@epam.com> |
link.mk: implement support for libnames-after-libgcc variable
Newer versions of libgcc depend on external __getauxval() symbol, which is now provided by libutils. But libgcc is linked after libutils
link.mk: implement support for libnames-after-libgcc variable
Newer versions of libgcc depend on external __getauxval() symbol, which is now provided by libutils. But libgcc is linked after libutils, so linker can't resolve that symbol. We can't include libgcc into linking group with libtutils, because libgcc provides symbols that conflict with libutil's ones, like __aeabi_idiv with friends for instance.
So, to resolve libgcc dependency on libutils we need to link with libutils second time. To make things more generic, we will introduce $(libnames-after-libgcc) variable for libraries that should be linked after libgcc.
Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 36e784f6 | 13-Oct-2020 |
Volodymyr Babchuk <volodymyr_babchuk@epam.com> |
libutils: provide empty __getauxval() implementation
Never version of libgcc are built with LSE implementation in mind. To determine if LSE is available on platform it calls __getauxval(), so in som
libutils: provide empty __getauxval() implementation
Never version of libgcc are built with LSE implementation in mind. To determine if LSE is available on platform it calls __getauxval(), so in some cases we can get undefined reference to __getauxval() error.
Prominent case is libgcc_eh.a library, which is used by C++ TAs. Exception handler depends on atomic operations, so it tries to call init_have_lse_atomics() first. This function in turn calls __getauxval(), which causes linking error.
In the future we can make __getauxval() to return actual platform capabilities.
Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| ed30b6c7 | 15-Oct-2020 |
Jens Wiklander <jens.wiklander@linaro.org> |
early_ta: use scattered array helpers
Simplifies the core linker script by replacing the hard coded .rodata.early_ta section with use of SCATTERED_ARRAY_DEFINE_PG_ITEM() instead.
Reviewed-by: Jerom
early_ta: use scattered array helpers
Simplifies the core linker script by replacing the hard coded .rodata.early_ta section with use of SCATTERED_ARRAY_DEFINE_PG_ITEM() instead.
Reviewed-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| c4def2a8 | 30-Sep-2020 |
Jerome Forissier <jerome@forissier.org> |
Update CHANGELOG for 3.11.0
Update CHANGELOG for 3.11.0 and collect Tested-by tags.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (Jun
Update CHANGELOG for 3.11.0
Update CHANGELOG for 3.11.0 and collect Tested-by tags.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (Juno) Tested-by: Jerome Forissier <jerome@forissier.org> (QEMU) Tested-by: Jerome Forissier <jerome@forissier.org> (QEMUv8) Tested-by: Jerome Forissier <jerome@forissier.org> (HiKey960) Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (Hikey GP v1.1) Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (FVP) Tested-by: Igor Opaniuk <igor.opaniuk@gmail.com> (Poplar) Tested-by: Ricardo Salveti <ricardo@foundries.io> (ZynqMP) Tested-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com> (Rcar H3) Tested-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com> (Rcar H3/virtualization) Tested-by: Rouven Czerwinski <r.czerwinski@pengutronix.de> (ccimx6ulsbcpro) Tested-by: Rouven Czerwinski <r.czerwinski@pengutronix.de> (STM32MP157DK2) Tested-by: Clement Faure <clement.faure@nxp.com> (mx6dlsabreauto) Tested-by: Clement Faure <clement.faure@nxp.com> (mx6dlsabresd) Tested-by: Clement Faure <clement.faure@nxp.com> (mx6qpsabreauto) Tested-by: Clement Faure <clement.faure@nxp.com> (mx6ulevk) Tested-by: Clement Faure <clement.faure@nxp.com> (mx6ullevk) Tested-by: Clement Faure <clement.faure@nxp.com> (mx6ulzevk) Tested-by: Clement Faure <clement.faure@nxp.com> (mx6sllevk) Tested-by: Clement Faure <clement.faure@nxp.com> (mx7dsabresd) Tested-by: Clement Faure <clement.faure@nxp.com> (mx7ulpevk) Tested-by: Clement Faure <clement.faure@nxp.com> (mx8mmevk) Tested-by: Clement Faure <clement.faure@nxp.com> (mx8mnevk) Tested-by: Clement Faure <clement.faure@nxp.com> (mx8mqevk) Tested-by: Clement Faure <clement.faure@nxp.com> (mx8qmmek) Tested-by: Clement Faure <clement.faure@nxp.com> (mx8qxpmek) Tested-by: Etienne Carriere <etienne.carriere@linaro.org> (stm32mp1)
show more ...
|
| c43d7569 | 13-Oct-2020 |
Ricardo Salveti <ricardo@foundries.io> |
plat: zynqmp: use generic_ram_layout for defining dram layout
Switch to the generic generic_ram_layout header file for defining the default dram layout. This allow allows the user to easily customiz
plat: zynqmp: use generic_ram_layout for defining dram layout
Switch to the generic generic_ram_layout header file for defining the default dram layout. This allow allows the user to easily customize the default dram base and size via CFG_TZDRAM_START/CFG_TZDRAM_SIZE.
Default values are still the same as previously set by platform_config.
Signed-off-by: Ricardo Salveti <ricardo@foundries.io> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| ae85b831 | 13-Oct-2020 |
Volodymyr Babchuk <volodymyr_babchuk@epam.com> |
scripts: support both pycryptodome and pycryptodomex
Current actual Python library for cryptography is being distributed in two flavors: pycroptodome and pycroptodomex. They are basically the same l
scripts: support both pycryptodome and pycryptodomex
Current actual Python library for cryptography is being distributed in two flavors: pycroptodome and pycroptodomex. They are basically the same library, but with different import names:
- pycryptodome provides 'Crypto' module and indented to directly replace old pycrypto library
- pycryptodomex provides 'Cryptodome' module and is intended for old distributions, where pycrypto is still present
Most of the modern Linux distributions provide both of the libraries, so there is no difference which one is to use. But some of them (like Yocto/Poky) provide only one.
This patches makes scripts agnostic to a crypto library flavor being used by trying to import Cryptodome first and then Crypto if first import fails.
Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com> Reviewed-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 0ab3b1fe | 13-Oct-2020 |
Ricardo Salveti <ricardo@foundries.io> |
MAINTAINERS: maintain plat-zynqmp
Update MAINTAINERS with myself as reviewer for Xilinx Zynq UltraScale+ MPSOC (plat-zynqmp).
Signed-off-by: Ricardo Salveti <ricardo@foundries.io> Acked-by: Jerome
MAINTAINERS: maintain plat-zynqmp
Update MAINTAINERS with myself as reviewer for Xilinx Zynq UltraScale+ MPSOC (plat-zynqmp).
Signed-off-by: Ricardo Salveti <ricardo@foundries.io> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| ae2b65fc | 08-Oct-2020 |
Ricardo Salveti <ricardo@foundries.io> |
plat: zynqmp: force disable core ALSR
Disable core ASLR for two reasons: 1. There is no source for ALSR seed, as ATF does not provide a DTB to OP-TEE. Hardware RNG is also not currently supported
plat: zynqmp: force disable core ALSR
Disable core ASLR for two reasons: 1. There is no source for ALSR seed, as ATF does not provide a DTB to OP-TEE. Hardware RNG is also not currently supported. 2. OP-TEE does not boot with enabled CFG_CORE_ASLR.
Further investigation is needed to see why enabled ASLR causes OP-TEE to not boot properly.
Signed-off-by: Ricardo Salveti <ricardo@foundries.io> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 3b11b1d2 | 12-Oct-2020 |
Jerome Forissier <jerome@forissier.org> |
core: rpmb: fix off-by-one in block index check
The max block index check in tee_rpmb_req_pack() is incorrect and would fail when trying to access the last block of the partition.
Signed-off-by: Je
core: rpmb: fix off-by-one in block index check
The max block index check in tee_rpmb_req_pack() is incorrect and would fail when trying to access the last block of the partition.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 60c96f68 | 12-Oct-2020 |
Etienne Carriere <etienne.carriere@linaro.org> |
drivers: scmi-msg: refine local header files
Change scmi-msg drivers to define/declare protocol resources in protocol specific local file instead of from local common.h file.
Signed-off-by: Etienne
drivers: scmi-msg: refine local header files
Change scmi-msg drivers to define/declare protocol resources in protocol specific local file instead of from local common.h file.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| ba134bd0 | 12-Oct-2020 |
Etienne Carriere <etienne.carriere@linaro.org> |
drivers: scmi-msg: fix indentation
Fix minor indentation issue in voltage_domain.h.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome@forissier.org> |
| c007fb39 | 09-Oct-2020 |
Etienne Carriere <etienne.carriere@linaro.org> |
drivers: scmi-msg: Set SCMI version to 3
Update SCMI version to 3 as supported voltage domain protocol is introduced in the version 3 of the specification.
Fixes: 006d89b8f49f ("drivers: scmi-msg:
drivers: scmi-msg: Set SCMI version to 3
Update SCMI version to 3 as supported voltage domain protocol is introduced in the version 3 of the specification.
Fixes: 006d89b8f49f ("drivers: scmi-msg: add SCMI Voltage Domain protocol") Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 334810f9 | 08-Oct-2020 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: scmi: expose PWR regulators
Expose SoC PWR regulators as SCMI voltage domains to the non-secure world. They are exposed to SCMI agent scmi0 that exposes SoC resources used by non-secu
plat-stm32mp1: scmi: expose PWR regulators
Expose SoC PWR regulators as SCMI voltage domains to the non-secure world. They are exposed to SCMI agent scmi0 that exposes SoC resources used by non-secure world but controlled by secure world since RCC TZ hardening configuration.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| c22983c9 | 08-Oct-2020 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: scmi: prepare platform SCMI voltage regulators
Define generic resources for stm32mp1 platform to support voltage regulators exposed to SCMI agents through the voltage domain protocol.
plat-stm32mp1: scmi: prepare platform SCMI voltage regulators
Define generic resources for stm32mp1 platform to support voltage regulators exposed to SCMI agents through the voltage domain protocol.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| b787ecb7 | 08-Oct-2020 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: introduce PWR regulators
Introduce a voltage regulator driver for the voltage controllers driven through PWR interface of stm32mp1 SoCs.
Signed-off-by: Etienne Carriere <etienne.carr
plat-stm32mp1: introduce PWR regulators
Introduce a voltage regulator driver for the voltage controllers driven through PWR interface of stm32mp1 SoCs.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| f56662f7 | 12-Oct-2020 |
Jerome Forissier <jerome@forissier.org> |
MAINTAINERS: plat-ti, plat-k3: remove Andrew's address
Andrew's email address is bouncing, remove it.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Joakim Bech <joakim.bech@linar
MAINTAINERS: plat-ti, plat-k3: remove Andrew's address
Andrew's email address is bouncing, remove it.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Joakim Bech <joakim.bech@linaro.org>
show more ...
|
| 6a68b221 | 12-Oct-2020 |
Sughosh Ganu <sughosh.ganu@linaro.org> |
core: ffa: Fix the FF-A version returned to Secure Partition
The current Firmware Framework(FF-A) specification defines the major version of 0x1 and minor version of 0x0. Return these values when re
core: ffa: Fix the FF-A version returned to Secure Partition
The current Firmware Framework(FF-A) specification defines the major version of 0x1 and minor version of 0x0. Return these values when requested through the FFA_VERSION call instead of returning the FFA_VERSION function id
Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 009a14d6 | 09-Oct-2020 |
Jerome Forissier <jerome@forissier.org> |
Update revision for release tag 3.11.0-rc1
Signed-off-by: Jerome Forissier <jerome@forissier.org> |