| 883402f5 | 28-Apr-2024 |
Yu Chien Peter Lin <peterlin@andestech.com> |
core: riscv: use configuration options for RISC-V extensions
RISC-V is a modular ISA, add config options to allow platforms to customize their binaries with specific "-march" and "-mabi".
Also, ena
core: riscv: use configuration options for RISC-V extensions
RISC-V is a modular ISA, add config options to allow platforms to customize their binaries with specific "-march" and "-mabi".
Also, enable RVC and FPU extension for QEMU virt machine.
Note that the RISC-V FPU for OP-TEE will be introduced later. Enable FPU to temporarily bypass incompatible soft/hard-fp linker errors.
Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com> Reviewed-by: Alvin Chang <alvinga@andestech.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| a3d76f1f | 19-Aug-2024 |
Jerome Forissier <jerome.forissier@linaro.org> |
ci: add build with Mbed TLS and crypto extensions
Build for QEMUv8 with Mbed TLS as the core crypto library and cryptographic extensions enabled. This would have caught the issue fixed in commit 021
ci: add build with Mbed TLS and crypto extensions
Build for QEMUv8 with Mbed TLS as the core crypto library and cryptographic extensions enabled. This would have caught the issue fixed in commit 021fee0affe5 ("core: mbedtls: Fix build").
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 2bb485c3 | 14-Aug-2024 |
Jerome Forissier <jerome.forissier@linaro.org> |
kernel/link.mk: fix missing build number in version string on first build
Fix an issue with the build number in the version string. While at it, factor out the duplicated code into mk/macros.mk.
Be
kernel/link.mk: fix missing build number in version string on first build
Fix an issue with the build number in the version string. While at it, factor out the duplicated code into mk/macros.mk.
Before:
$ rm -rf out/ $ make out/arm-plat-vexpress/core/version.o UPD out/arm-plat-vexpress/core/.buildcount GEN out/arm-plat-vexpress/core/version.o cat: out/arm-plat-vexpress/core/.buildcount: No such file or directory
In addition to the error message, note the missing build number after the hash sign:
$ strings out/arm-plat-vexpress/core/version.o | grep UTC 4.3.0-48-g9c97e7d52 (gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)) # Wed Aug 14 16:17:07 UTC 2024 arm
After:
$ rm -rf out/ $ make out/arm-plat-vexpress/core/version.o UPD out/arm-plat-vexpress/core/.buildcount GEN out/arm-plat-vexpress/core/version.o $ strings out/arm-plat-vexpress/core/version.o | grep UTC 4.3.0-48-g9c97e7d52-dev (gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)) #1 Wed Aug 14 16:17:24 UTC 2024 arm
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| f0bb1a5a | 14-Aug-2024 |
Jerome Forissier <jerome.forissier@linaro.org> |
mk/compile.mk: separate rule to produce preprocessed dts files
When compiling a .dts into a .dtb, there is a pre-preprocessing phase where the C preprocessor is run on the .dts to produce a .pre.dts
mk/compile.mk: separate rule to produce preprocessed dts files
When compiling a .dts into a .dtb, there is a pre-preprocessing phase where the C preprocessor is run on the .dts to produce a .pre.dts, then the device tree compiler is called to generate the .dtb. The two phases are currently bundled into a single makefile recipe, which is not ideal.
Extract the preprocessing commands into a separate recipe to address this concern. This allows to do for example:
make PLATFORM=stm32mp1-157A_DK1 \ out/arm-plat-stm32mp1/core/arch/arm/dts/stm32mp157a-dk1.pre.dts
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 3597beef | 14-Aug-2024 |
Jerome Forissier <jerome.forissier@linaro.org> |
mk/compile.mk: remove duplicate dtc flags
When a .dts is compiled into a .dtb, the flags: '-I dts -O dtb -Wno-unit_address_vs_reg' are present several times on the command line. It is visible when b
mk/compile.mk: remove duplicate dtc flags
When a .dts is compiled into a .dtb, the flags: '-I dts -O dtb -Wno-unit_address_vs_reg' are present several times on the command line. It is visible when building with "make ... V=1".
Fix this by not appending to DTC_FLAGS but instead use DTC_FLAGS as is from the environment and add the specific flags once to the compile command.
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 7f1e2acc | 14-Aug-2024 |
Jerome Forissier <jerome.forissier@linaro.org> |
mk/compile.mk: print dtc command when V=1
The command that compiles a device tree source file (.dts) into a binary (.dtb) should be displayed when verbose mode is enabled (V=1), but it is not the ca
mk/compile.mk: print dtc command when V=1
The command that compiles a device tree source file (.dts) into a binary (.dtb) should be displayed when verbose mode is enabled (V=1), but it is not the case. Fix that by replacing the @ with $(q).
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 021fee0a | 19-Aug-2024 |
Jacob Kroon <jacobkr@axis.com> |
core: mbedtls: Fix build
The macro 'MBEDTLS_INTERNAL_VALIDATE_RET()' was removed in upstream commit https://github.com/Mbed-TLS/mbedtls/commit/cc0fd47531ffeffb3185db77a17ee113
The macro was a no-op
core: mbedtls: Fix build
The macro 'MBEDTLS_INTERNAL_VALIDATE_RET()' was removed in upstream commit https://github.com/Mbed-TLS/mbedtls/commit/cc0fd47531ffeffb3185db77a17ee113
The macro was a no-op, so just remove the checks.
This fixes building OP-TEE with:
make PLATFORM=vexpress \ PLATFORM_FLAVOR=juno \ CFG_CRYPTOLIB_NAME=mbedtls \ CFG_CRYPTOLIB_DIR=lib/libmbedtls ... lib/libmbedtls/core/hash.c: In function 'mbedtls_internal_sha1_process': lib/libmbedtls/core/hash.c:205:9: error: implicit declaration of function 'MBEDTLS_INTERNAL_VALIDATE_RET'
Signed-off-by: Jacob Kroon <jacobkr@axis.com> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 9a1482c7 | 09-Jul-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: arm: boot_clear_memtag(): use core_mmu_for_each_map()
Use core_mmu_for_each_map() in boot_clear_memtag() to iterate over each memory region and clear memory tags for each matching region.
Pre
core: arm: boot_clear_memtag(): use core_mmu_for_each_map()
Use core_mmu_for_each_map() in boot_clear_memtag() to iterate over each memory region and clear memory tags for each matching region.
Preparing for future changes where more than one memory region may use the same memory type.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 10b19e73 | 09-Jul-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: mm: add core_mmu_for_each_map()
Add core_mmu_for_each_map() to iterate over all memory regions, struct tee_mmap_region.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by:
core: mm: add core_mmu_for_each_map()
Add core_mmu_for_each_map() to iterate over all memory regions, struct tee_mmap_region.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 1eef6015 | 16-Aug-2024 |
Alvin Chang <alvinga@andestech.com> |
core: riscv: Zeroize unused parameters before thread_return_to_udomain()
Zeroize unused parameters before calling thread_return_to_udomain() to avoid leaking information to the untrusted domain unin
core: riscv: Zeroize unused parameters before thread_return_to_udomain()
Zeroize unused parameters before calling thread_return_to_udomain() to avoid leaking information to the untrusted domain unintentionally.
Signed-off-by: Alvin Chang <alvinga@andestech.com> Reviewed-by: Yu Chien Peter Lin <peterlin@andestech.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| c1b98cec | 16-Aug-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: arm64: increase size of abort stack to 4096
To avoid stack overruns with CFG_WITH_PAGER=y and CFG_CORE_DEBUG_CHECK_STACKS=y increase the abort stack from 3072 to 4096.
Signed-off-by: Jens Wik
core: arm64: increase size of abort stack to 4096
To avoid stack overruns with CFG_WITH_PAGER=y and CFG_CORE_DEBUG_CHECK_STACKS=y increase the abort stack from 3072 to 4096.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 0c05871e | 29-Jul-2024 |
leisen <leisen1@huawei.com> |
drivers: crypto: hisilicon: add authenc algorithm
Add authenc algorithm for hisilicon SEC driver
Signed-off-by: leisen <leisen1@huawei.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> |
| e53d1206 | 16-Jul-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: add_phys_mem(): fix mergeable physical memory
The test in add_phys_mem() to see if two physical memory ranges can be merged only checks for overlapping memory ranges, but consecutive ranges ar
core: add_phys_mem(): fix mergeable physical memory
The test in add_phys_mem() to see if two physical memory ranges can be merged only checks for overlapping memory ranges, but consecutive ranges are not detected even if they can be merged. Fix this by also checking if the byte after the lowest range matches the beginning of the next range.
The resulting merged entry might be mergeable with the previous or next entry, so add checks for that and merge if possible.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| b8ef8d0b | 08-May-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: mm: introduce struct memory_map
Introduce struct memory_map to keep track of the array of struct tee_mmap_region, covering number of used entries and number of allocated entries.
core_mmap_is
core: mm: introduce struct memory_map
Introduce struct memory_map to keep track of the array of struct tee_mmap_region, covering number of used entries and number of allocated entries.
core_mmap_is_end_of_table() and MEM_AREA_END are now unused so remove them.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 136db985 | 05-May-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
libutils: add array helpers
Add helper function() to insert and remove an element from an array. The helper functions shifts the elements in the array as needed to make room or fill a room of an ele
libutils: add array helpers
Add helper function() to insert and remove an element from an array. The helper functions shifts the elements in the array as needed to make room or fill a room of an element at a certain position.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 7a639aed | 26-Jul-2024 |
Thomas Perrot <thomas.perrot@bootlin.com> |
drivers: pm: sam: specify suspend/resume hint based on suspend level
The regulators that are used with the sama5d2 platforms can enter different levels of low power mode. In order to be able to act
drivers: pm: sam: specify suspend/resume hint based on suspend level
The regulators that are used with the sama5d2 platforms can enter different levels of low power mode. In order to be able to act accordingly, pass this information through suspend/resume hint.
Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 42c3d31b | 26-Jul-2024 |
Thomas Perrot <thomas.perrot@bootlin.com> |
kernel: pm: add suspend type hint
When entering suspend type, the suspend level is platform dependent and can be set to various values depending on these platform. In order to allow platforms settin
kernel: pm: add suspend type hint
When entering suspend type, the suspend level is platform dependent and can be set to various values depending on these platform. In order to allow platforms setting it in a generic way when entering suspend, reserve some bits in the suspend/resume hint to pass this information. Driver can then used it in a platform independent way to execute specific code depending on it.
Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 8dde314b | 02-Jul-2024 |
Balint Dobszay <balint.dobszay@arm.com> |
core: ffa: handle VM availability messages for SPs
The VM availability messages sent by the hypervisor to an SP should be forwarded to the SP, if the SP has subscribed for these based on the SP mani
core: ffa: handle VM availability messages for SPs
The VM availability messages sent by the hypervisor to an SP should be forwarded to the SP, if the SP has subscribed for these based on the SP manifest.
Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Balint Dobszay <balint.dobszay@arm.com>
show more ...
|
| cc04f76f | 23-Jul-2024 |
Balint Dobszay <balint.dobszay@arm.com> |
core: ffa: read S-EL0 SP properties from manifest
So far the properties of S-EL0 SPs have been hardcoded when queried by FFA_PARTITION_INFO_GET. This was supposed to be a temporary workaround, so re
core: ffa: read S-EL0 SP properties from manifest
So far the properties of S-EL0 SPs have been hardcoded when queried by FFA_PARTITION_INFO_GET. This was supposed to be a temporary workaround, so replace this with reading the properties from the SP's manifest which is the proper solution.
Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Balint Dobszay <balint.dobszay@arm.com>
show more ...
|
| 9cb4152f | 26-Jul-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: arm: kern.ld.S: align .ARM.ex* sections
Make sure that the .ARM.exidx and .ARM.extab sections are 8 byte aligned to work with CFG_CORE_SANITIZE_KADDRESS=y.
Signed-off-by: Jens Wiklander <jens
core: arm: kern.ld.S: align .ARM.ex* sections
Make sure that the .ARM.exidx and .ARM.extab sections are 8 byte aligned to work with CFG_CORE_SANITIZE_KADDRESS=y.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 3e6106ff | 26-Jul-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: don't instrument asan functions
Don't instrument the functions used by CFG_CORE_SANITIZE_KADDRESS=y since it may cause recursive calls together with CFG_CORE_DEBUG_CHECK_STACKS=y.
Signed-off-
core: don't instrument asan functions
Don't instrument the functions used by CFG_CORE_SANITIZE_KADDRESS=y since it may cause recursive calls together with CFG_CORE_DEBUG_CHECK_STACKS=y.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| eadb6be0 | 17-Jul-2024 |
Yu Chien Peter Lin <peterlin@andestech.com> |
core: riscv: core_mmu_arch: fix PPN field extraction from PTE
The upper bits of page table entry may contain other fields introduced since Priv. ISA spec. v1.11 (20211203), such as PBMT and N bits,
core: riscv: core_mmu_arch: fix PPN field extraction from PTE
The upper bits of page table entry may contain other fields introduced since Priv. ISA spec. v1.11 (20211203), such as PBMT and N bits, thus PPN field should be masked out with PTE_PPN.
Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com> Reviewed-by: Alvin Chang <alvinga@andestech.com> Tested-by: Alvin Chang <alvinga@andestech.com> Reviewed-by: Marouene Boubakri <marouene.boubakri@nxp.com>
show more ...
|
| 8448708b | 08-Aug-2024 |
Zexi Yu <yuzexi@hisilicon.com> |
driver: crypto: hisilicon: replace free() and memzero() by free_wipe()
replace free() and memzero() by free_wipe()
Signed-off-by: Zexi Yu <yuzexi@hisilicon.com> Acked-by: Jerome Forissier <jerome.f
driver: crypto: hisilicon: replace free() and memzero() by free_wipe()
replace free() and memzero() by free_wipe()
Signed-off-by: Zexi Yu <yuzexi@hisilicon.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 5cab250e | 08-Aug-2024 |
Zexi Yu <yuzexi@hisilicon.com> |
driver: crypto: hisilicon: delete msg->result which is not used
delete msg->result which is not used
Signed-off-by: Zexi Yu <yuzexi@hisilicon.com> Acked-by: Jerome Forissier <jerome.forissier@linar
driver: crypto: hisilicon: delete msg->result which is not used
delete msg->result which is not used
Signed-off-by: Zexi Yu <yuzexi@hisilicon.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| b5203cb1 | 17-Jul-2024 |
yuzexi <yuzexi@hisilicon.com> |
driver: crypto: hisilicon: add ECC sign and verify
add ECC sign and verify
Signed-off-by: yuzexi <yuzexi@hisilicon.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org> |