History log of /optee_os/lib/libutils/ (Results 76 – 100 of 364)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
45507d1018-Nov-2022 Khoa Hoang <admin@khoahoang.com>

Add support for compiler stack protector

This change add support for CFG_CORE_STACK_PROTECTOR{,_STRONG,_ALL}
and CFG_TA_STACK_PROTECTOR{,_STRONG,_ALL}. This flag enable the
compiler stack overflow p

Add support for compiler stack protector

This change add support for CFG_CORE_STACK_PROTECTOR{,_STRONG,_ALL}
and CFG_TA_STACK_PROTECTOR{,_STRONG,_ALL}. This flag enable the
compiler stack overflow protection feature -fstack-protector* and
also generate random stack canary value on kernel boot and TA entry.

Weak function plat_get_random_stack_canary() can be override by
platform to provide random stack canary value for the core kernel.

Signed-off-by: Khoa Hoang <admin@khoahoang.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

f197f05530-Nov-2022 liushiwei <liushiwei@eswincomputing.com>

libutils: confine_array_index: add support for RISC-V

Add a naive C implementation for RISC-V.

Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: liushiwei <liushiwei@eswincomputin

libutils: confine_array_index: add support for RISC-V

Add a naive C implementation for RISC-V.

Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: liushiwei <liushiwei@eswincomputing.com>
Reviewed-by: chenchaokai <chenchaokai@eswincomputing.com>

show more ...


/optee_os/core/arch/arm/dts/fsl-lx2160a.dtsi
/optee_os/core/arch/arm/dts/stm32mp151.dtsi
/optee_os/core/arch/arm/dts/stm32mp157a-dk1.dts
/optee_os/core/arch/arm/dts/stm32mp157c-dk2.dts
/optee_os/core/arch/arm/dts/stm32mp157c-ed1.dts
/optee_os/core/arch/arm/dts/stm32mp157c-ev1.dts
/optee_os/core/arch/arm/dts/stm32mp15xx-dkx.dtsi
/optee_os/core/arch/arm/include/kernel/cache_helpers_arch.h
/optee_os/core/arch/arm/include/kernel/misc_arch.h
/optee_os/core/arch/arm/kernel/sub.mk
/optee_os/core/arch/arm/plat-stm32mp1/shared_resources.c
/optee_os/core/arch/riscv/include/kernel/cache_helpers_arch.h
/optee_os/core/arch/riscv/include/kernel/misc_arch.h
/optee_os/core/arch/riscv/include/kernel/tee_l2cc_mutex.h
/optee_os/core/arch/riscv/include/kernel/thread_arch.h
/optee_os/core/arch/riscv/include/mm/core_mmu_arch.h
/optee_os/core/arch/riscv/include/riscv.h
/optee_os/core/arch/riscv/include/riscv_macros.S
/optee_os/core/arch/riscv/include/sbi.h
/optee_os/core/arch/riscv/kernel/idle.c
/optee_os/core/arch/riscv/kernel/sbi.c
/optee_os/core/arch/riscv/kernel/sbi_console.c
/optee_os/core/arch/riscv/kernel/spinlock.S
/optee_os/core/arch/riscv/kernel/sub.mk
/optee_os/core/arch/riscv/kernel/tee_time.c
/optee_os/core/arch/riscv/mm/sub.mk
/optee_os/core/arch/riscv/mm/tlb_helpers_rv.S
/optee_os/core/arch/riscv/plat-spike/conf.mk
/optee_os/core/arch/riscv/plat-spike/drivers/sub.mk
/optee_os/core/arch/riscv/plat-spike/main.c
/optee_os/core/arch/riscv/riscv.mk
/optee_os/core/crypto/signed_hdr.c
/optee_os/core/drivers/crypto/crypto_api/acipher/rsa.c
/optee_os/core/include/kernel/cache_helpers.h
/optee_os/core/include/kernel/misc.h
/optee_os/core/include/tee/tee_svc_cryp.h
/optee_os/core/include/tee/tee_svc_storage.h
/optee_os/core/kernel/ree_fs_ta.c
/optee_os/core/kernel/sub.mk
/optee_os/core/kernel/trace_ext.c
/optee_os/core/lib/libtomcrypt/rsa.c
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_pss_decode.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_verify_hash.c
/optee_os/core/sub.mk
/optee_os/core/tee/tee_svc_cryp.c
/optee_os/core/tee/tee_svc_storage.c
/optee_os/core/tests/ftmn_boot_tests.c
/optee_os/core/tests/sub.mk
/optee_os/lib/libmbedtls/core/rsa.c
/optee_os/lib/libmbedtls/mbedtls/library/rsa.c
/optee_os/lib/libutee/include/tee_api.h
/optee_os/lib/libutee/include/tee_internal_api.h
/optee_os/lib/libutee/include/tee_ta_api.h
/optee_os/lib/libutee/include/utee_syscalls.h
/optee_os/lib/libutee/include/utee_types.h
/optee_os/lib/libutee/tee_api_objects.c
/optee_os/lib/libutee/tee_api_operations.c
ext/include/confine_array_index.h
7e75ca5401-Apr-2022 Jens Wiklander <jens.wiklander@linaro.org>

Basic fault mitigation routines

Adds basic fault mitigation routines designed to help protecting from
fault injection attacks on the hardware. This is by no means bullet
proof, but it should at leas

Basic fault mitigation routines

Adds basic fault mitigation routines designed to help protecting from
fault injection attacks on the hardware. This is by no means bullet
proof, but it should at least improve the situation.

These routines focus on verifying that a function has been called and
that the returned value matches the result from the function. This is
done by having a handshake between the caller and the callee where also
the return value is transmitted in a separate channel.

Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

7eaed3a323-Nov-2022 Etienne Carriere <etienne.carriere@linaro.org>

libutils: prefix system header guard with 2 underscore chars

Adds prefix "__" to standard header files implemented in libutils. This
is applicable as these header guards macro are system macros. Thi

libutils: prefix system header guard with 2 underscore chars

Adds prefix "__" to standard header files implemented in libutils. This
is applicable as these header guards macro are system macros. This
change prevents conflicts with external component as faced with
SCP-firmware [1] that implements wrapper headers with #include_next for
assert.h and stdlib.h using ASSERT_H [2] and STDLIB_H [3] as header
guards as in libutils.

Prior this change did stdint.h both define STDINT_H and _STDINT_H but
guards only upon STDINT_H. This change removes STDINT_H.

Link: [1] https://github.com/ARM-software/SCP-firmware.git
Link: [2] https://github.com/ARM-software/SCP-firmware/blob/v2.11.0/framework/include/assert.h#L8-L9
Link: [3] https://github.com/ARM-software/SCP-firmware/blob/v2.11.0/framework/include/stdlib.h#L8-L9
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

bc8fe8c222-Nov-2022 Etienne Carriere <etienne.carriere@linaro.org>

libutils: implement aligned_alloc()

Implements aligned_alloc() in bget_malloc.c based on memalign(). The
implementation also covers when ENABLE_MDBG is enabled, that is when
CFG_TEE_CORE_MALLOC_DEBU

libutils: implement aligned_alloc()

Implements aligned_alloc() in bget_malloc.c based on memalign(). The
implementation also covers when ENABLE_MDBG is enabled, that is when
CFG_TEE_CORE_MALLOC_DEBUG is enabled.

Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...


/optee_os/MAINTAINERS
/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/include/arm32.h
/optee_os/core/arch/arm/include/ffa.h
/optee_os/core/arch/arm/include/kernel/secure_partition.h
/optee_os/core/arch/arm/include/kernel/thread_private_arch.h
/optee_os/core/arch/arm/kernel/boot.c
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/kernel/spmc_sp_handler.c
/optee_os/core/arch/arm/kernel/stmm_sp.c
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_a32.S
/optee_os/core/arch/arm/mm/pgt_cache.c
/optee_os/core/arch/arm/plat-d06/conf.mk
/optee_os/core/arch/arm/plat-d06/core_pos_a64.S
/optee_os/core/arch/arm/plat-d06/main.c
/optee_os/core/arch/arm/plat-d06/platform_config.h
/optee_os/core/arch/arm/plat-d06/sub.mk
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-ls/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-versal/conf.mk
/optee_os/core/arch/arm/plat-zynq7k/conf.mk
/optee_os/core/arch/arm/plat-zynqmp/conf.mk
/optee_os/core/arch/arm/plat-zynqmp/platform_config.h
/optee_os/core/arch/arm/sm/sm.c
/optee_os/core/crypto/signed_hdr.c
/optee_os/core/drivers/atmel_piobu.c
/optee_os/core/drivers/atmel_rstc.c
/optee_os/core/drivers/atmel_rtc.c
/optee_os/core/drivers/atmel_saic.c
/optee_os/core/drivers/atmel_shdwc.c
/optee_os/core/drivers/atmel_tcb.c
/optee_os/core/drivers/atmel_trng.c
/optee_os/core/drivers/atmel_wdt.c
/optee_os/core/drivers/clk/clk_dt.c
/optee_os/core/drivers/clk/sam/sama5d2_clk.c
/optee_os/core/drivers/crypto/caam/crypto.mk
/optee_os/core/drivers/crypto/crypto_api/acipher/rsa.c
/optee_os/core/drivers/crypto/crypto_api/acipher/rsassa.c
/optee_os/core/drivers/crypto/crypto_api/include/drvcrypt_acipher.h
/optee_os/core/drivers/crypto/se050/adaptors/apis/sss.c
/optee_os/core/drivers/crypto/se050/adaptors/utils/scp_config.c
/optee_os/core/drivers/crypto/se050/crypto.mk
/optee_os/core/drivers/crypto/se050/session.c
/optee_os/core/drivers/crypto/sub.mk
/optee_os/core/drivers/crypto/versal/authenc.c
/optee_os/core/drivers/crypto/versal/include/ipi.h
/optee_os/core/drivers/crypto/versal/ipi.c
/optee_os/core/drivers/crypto/versal/sub.mk
/optee_os/core/drivers/imx_i2c.c
/optee_os/core/drivers/imx_lpuart.c
/optee_os/core/drivers/imx_rngb.c
/optee_os/core/drivers/imx_uart.c
/optee_os/core/drivers/imx_wdog.c
/optee_os/core/drivers/ls_dspi.c
/optee_os/core/drivers/ls_gpio.c
/optee_os/core/drivers/ls_i2c.c
/optee_os/core/drivers/ls_sec_mon.c
/optee_os/core/drivers/pl011.c
/optee_os/core/drivers/pm/sam/at91_pm.c
/optee_os/core/drivers/serial8250_uart.c
/optee_os/core/drivers/stm32mp15_huk.c
/optee_os/core/drivers/sub.mk
/optee_os/core/drivers/versal_nvm.c
/optee_os/core/drivers/versal_trng.c
/optee_os/core/drivers/xiphera_trng.c
/optee_os/core/include/crypto/crypto_impl.h
/optee_os/core/include/drivers/stm32_gpio.h
/optee_os/core/include/drivers/versal_nvm.h
/optee_os/core/include/kernel/boot.h
/optee_os/core/include/kernel/dt.h
/optee_os/core/include/kernel/tee_ta_manager.h
/optee_os/core/include/kernel/ts_manager.h
/optee_os/core/include/signed_hdr.h
/optee_os/core/kernel/dt.c
/optee_os/core/kernel/dt_driver.c
/optee_os/core/kernel/ree_fs_ta.c
/optee_os/core/kernel/tee_ta_manager.c
/optee_os/core/kernel/user_ta.c
/optee_os/core/lib/libtomcrypt/rsa.c
/optee_os/core/mm/vm.c
/optee_os/core/pta/bcm/sotp.c
/optee_os/core/pta/secstor_ta_mgmt.c
/optee_os/core/pta/stats.c
/optee_os/core/tee/tee_svc.c
/optee_os/lib/libmbedtls/core/rsa.c
/optee_os/lib/libmbedtls/include/mbedtls_config_uta.h
/optee_os/lib/libmbedtls/mbedtls/library/cipher_wrap.c
/optee_os/lib/libutee/arch/arm/user_ta_entry.c
/optee_os/lib/libutee/include/utee_types.h
isoc/bget_malloc.c
isoc/include/malloc.h
/optee_os/mk/config.mk
/optee_os/scripts/sign_encrypt.py
/optee_os/ta/arch/arm/link.mk
/optee_os/ta/arch/arm/link_shlib.mk
4afd9f0301-Sep-2022 Jorge Ramirez-Ortiz <jorge@foundries.io>

libutils: compiler.h: introduce __alias(x)

Improve readability with an __alias definition.
Supports the __weak __alias("g") use case

Signed-off-by: Jorge Ramirez-Ortiz <jorge@foundries.io>
Reviewed

libutils: compiler.h: introduce __alias(x)

Improve readability with an __alias definition.
Supports the __weak __alias("g") use case

Signed-off-by: Jorge Ramirez-Ortiz <jorge@foundries.io>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

0d4767a917-Oct-2022 Zengxx <zengxiaoxu@huawei.com>

libutils: brel: bugfix memset scope larger than expected

In the case of wipe = true and previous buffer is free, memset
the current buffer, rather then current buffer with previous free
buffer.

Sig

libutils: brel: bugfix memset scope larger than expected

In the case of wipe = true and previous buffer is free, memset
the current buffer, rather then current buffer with previous free
buffer.

Signed-off-by: Zengxx <zengxiaoxu@huawei.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Reviewed-by: Guangwei Zhou <zhouguangwei5@huawei.com>

show more ...

d3ed98ee20-Oct-2022 Clement Faure <clement.faure@nxp.com>

libutils: util.h: fix the ROUNDUP_OVERFLOW() macro

Some parenthesis are missing in the ROUNDUP_OVERFLOW expression.
The macro can only return false.

Fixes: 2e48af989133 ("util.h: add the macro ROUN

libutils: util.h: fix the ROUNDUP_OVERFLOW() macro

Some parenthesis are missing in the ROUNDUP_OVERFLOW expression.
The macro can only return false.

Fixes: 2e48af989133 ("util.h: add the macro ROUNDUP_OVERFLOW()")
Signed-off-by: Clement Faure <clement.faure@nxp.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...


/optee_os/.github/workflows/ci-cancel.yml
/optee_os/.github/workflows/ci.yml
/optee_os/CHANGELOG.md
/optee_os/MAINTAINERS
/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/include/kernel/secure_partition.h
/optee_os/core/arch/arm/include/kernel/thread_arch.h
/optee_os/core/arch/arm/kernel/abort.c
/optee_os/core/arch/arm/kernel/asm-defines.c
/optee_os/core/arch/arm/kernel/boot.c
/optee_os/core/arch/arm/kernel/entry_a64.S
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/kernel/stmm_sp.c
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_a64.S
/optee_os/core/arch/arm/kernel/thread_optee_smc.c
/optee_os/core/arch/arm/kernel/thread_optee_smc_a64.S
/optee_os/core/arch/arm/kernel/thread_spmc_a64.S
/optee_os/core/arch/arm/kernel/unwind_arm64.c
/optee_os/core/arch/arm/kernel/virtualization.c
/optee_os/core/arch/arm/mm/mobj_ffa.c
/optee_os/core/arch/arm/mm/pgt_cache.c
/optee_os/core/arch/arm/mm/tee_pager.c
/optee_os/core/arch/arm/plat-k3/conf.mk
/optee_os/core/arch/arm/plat-k3/drivers/sa2ul.c
/optee_os/core/arch/arm/plat-k3/platform_config.h
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/main.c
/optee_os/core/arch/arm/plat-stm32mp1/platform_config.h
/optee_os/core/arch/arm/plat-stm32mp1/shared_resources.c
/optee_os/core/arch/arm/plat-versal/conf.mk
/optee_os/core/arch/arm/plat-versal/link.mk
/optee_os/core/arch/arm/plat-versal/platform_config.h
/optee_os/core/arch/riscv/include/encoding.h
/optee_os/core/arch/riscv/include/riscv.h
/optee_os/core/arch/riscv/include/sub.mk
/optee_os/core/arch/riscv/plat-spike/conf.mk
/optee_os/core/crypto.mk
/optee_os/core/crypto/crypto.c
/optee_os/core/drivers/clk/clk-stm32mp15.c
/optee_os/core/drivers/crypto/se050/core/storage.c
/optee_os/core/drivers/crypto/se050/crypto.mk
/optee_os/core/drivers/crypto/se050/glue/i2c_stm32.c
/optee_os/core/drivers/crypto/se050/sub.mk
/optee_os/core/drivers/ls_sec_mon.c
/optee_os/core/drivers/stm32_i2c.c
/optee_os/core/drivers/stm32mp15_huk.c
/optee_os/core/drivers/sub.mk
/optee_os/core/drivers/versal_mbox.c
/optee_os/core/drivers/versal_pm.c
/optee_os/core/include/crypto/crypto.h
/optee_os/core/include/drivers/ls_sec_mon.h
/optee_os/core/include/drivers/stm32mp1_rcc.h
/optee_os/core/include/drivers/versal_mbox.h
/optee_os/core/include/drivers/versal_pm.h
/optee_os/core/include/kernel/thread.h
/optee_os/core/include/kernel/thread_private.h
/optee_os/core/include/kernel/user_mode_ctx_struct.h
/optee_os/core/include/mm/pgt_cache.h
/optee_os/core/include/mm/tee_pager.h
/optee_os/core/include/mm/vm.h
/optee_os/core/kernel/tee_ta_manager.c
/optee_os/core/kernel/thread.c
/optee_os/core/kernel/user_ta.c
/optee_os/core/lib/libtomcrypt/ccm.c
/optee_os/core/lib/libtomcrypt/dsa.c
/optee_os/core/lib/libtomcrypt/ed25519.c
/optee_os/core/lib/libtomcrypt/hash.c
/optee_os/core/lib/libtomcrypt/sm2-pke.c
/optee_os/core/lib/libtomcrypt/src/ciphers/aes/aes.c
/optee_os/core/lib/libtomcrypt/src/ciphers/aes/aes_tab.c
/optee_os/core/lib/libtomcrypt/src/ciphers/anubis.c
/optee_os/core/lib/libtomcrypt/src/ciphers/blowfish.c
/optee_os/core/lib/libtomcrypt/src/ciphers/camellia.c
/optee_os/core/lib/libtomcrypt/src/ciphers/cast5.c
/optee_os/core/lib/libtomcrypt/src/ciphers/des.c
/optee_os/core/lib/libtomcrypt/src/ciphers/idea.c
/optee_os/core/lib/libtomcrypt/src/ciphers/kasumi.c
/optee_os/core/lib/libtomcrypt/src/ciphers/khazad.c
/optee_os/core/lib/libtomcrypt/src/ciphers/kseed.c
/optee_os/core/lib/libtomcrypt/src/ciphers/multi2.c
/optee_os/core/lib/libtomcrypt/src/ciphers/noekeon.c
/optee_os/core/lib/libtomcrypt/src/ciphers/rc2.c
/optee_os/core/lib/libtomcrypt/src/ciphers/rc5.c
/optee_os/core/lib/libtomcrypt/src/ciphers/rc6.c
/optee_os/core/lib/libtomcrypt/src/ciphers/safer/safer.c
/optee_os/core/lib/libtomcrypt/src/ciphers/safer/safer_tab.c
/optee_os/core/lib/libtomcrypt/src/ciphers/safer/saferp.c
/optee_os/core/lib/libtomcrypt/src/ciphers/serpent.c
/optee_os/core/lib/libtomcrypt/src/ciphers/skipjack.c
/optee_os/core/lib/libtomcrypt/src/ciphers/tea.c
/optee_os/core/lib/libtomcrypt/src/ciphers/twofish/twofish.c
/optee_os/core/lib/libtomcrypt/src/ciphers/twofish/twofish_tab.c
/optee_os/core/lib/libtomcrypt/src/ciphers/xtea.c
/optee_os/core/lib/libtomcrypt/src/encauth/ccm/ccm_add_aad.c
/optee_os/core/lib/libtomcrypt/src/encauth/ccm/ccm_add_nonce.c
/optee_os/core/lib/libtomcrypt/src/encauth/ccm/ccm_done.c
/optee_os/core/lib/libtomcrypt/src/encauth/ccm/ccm_init.c
/optee_os/core/lib/libtomcrypt/src/encauth/ccm/ccm_memory.c
/optee_os/core/lib/libtomcrypt/src/encauth/ccm/ccm_process.c
/optee_os/core/lib/libtomcrypt/src/encauth/ccm/ccm_reset.c
/optee_os/core/lib/libtomcrypt/src/encauth/ccm/ccm_test.c
/optee_os/core/lib/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_add_aad.c
/optee_os/core/lib/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_decrypt.c
/optee_os/core/lib/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_done.c
/optee_os/core/lib/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_encrypt.c
/optee_os/core/lib/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_init.c
/optee_os/core/lib/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_memory.c
/optee_os/core/lib/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_setiv.c
/optee_os/core/lib/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_setiv_rfc7905.c
/optee_os/core/lib/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_test.c
/optee_os/core/lib/libtomcrypt/src/encauth/eax/eax_addheader.c
/optee_os/core/lib/libtomcrypt/src/encauth/eax/eax_decrypt.c
/optee_os/core/lib/libtomcrypt/src/encauth/eax/eax_decrypt_verify_memory.c
/optee_os/core/lib/libtomcrypt/src/encauth/eax/eax_done.c
/optee_os/core/lib/libtomcrypt/src/encauth/eax/eax_encrypt.c
/optee_os/core/lib/libtomcrypt/src/encauth/eax/eax_encrypt_authenticate_memory.c
/optee_os/core/lib/libtomcrypt/src/encauth/eax/eax_init.c
/optee_os/core/lib/libtomcrypt/src/encauth/eax/eax_test.c
/optee_os/core/lib/libtomcrypt/src/encauth/gcm/gcm_add_aad.c
/optee_os/core/lib/libtomcrypt/src/encauth/gcm/gcm_add_iv.c
/optee_os/core/lib/libtomcrypt/src/encauth/gcm/gcm_done.c
/optee_os/core/lib/libtomcrypt/src/encauth/gcm/gcm_gf_mult.c
/optee_os/core/lib/libtomcrypt/src/encauth/gcm/gcm_init.c
/optee_os/core/lib/libtomcrypt/src/encauth/gcm/gcm_memory.c
/optee_os/core/lib/libtomcrypt/src/encauth/gcm/gcm_mult_h.c
/optee_os/core/lib/libtomcrypt/src/encauth/gcm/gcm_process.c
/optee_os/core/lib/libtomcrypt/src/encauth/gcm/gcm_reset.c
/optee_os/core/lib/libtomcrypt/src/encauth/gcm/gcm_test.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb/ocb_decrypt.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb/ocb_decrypt_verify_memory.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb/ocb_done_decrypt.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb/ocb_done_encrypt.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb/ocb_encrypt.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb/ocb_encrypt_authenticate_memory.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb/ocb_init.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb/ocb_ntz.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb/ocb_shift_xor.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb/ocb_test.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb/s_ocb_done.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb3/ocb3_add_aad.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb3/ocb3_decrypt.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb3/ocb3_decrypt_last.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb3/ocb3_decrypt_verify_memory.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb3/ocb3_done.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb3/ocb3_encrypt.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb3/ocb3_encrypt_authenticate_memory.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb3/ocb3_encrypt_last.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb3/ocb3_init.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb3/ocb3_int_ntz.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb3/ocb3_int_xor_blocks.c
/optee_os/core/lib/libtomcrypt/src/encauth/ocb3/ocb3_test.c
/optee_os/core/lib/libtomcrypt/src/hashes/blake2b.c
/optee_os/core/lib/libtomcrypt/src/hashes/blake2s.c
/optee_os/core/lib/libtomcrypt/src/hashes/chc/chc.c
/optee_os/core/lib/libtomcrypt/src/hashes/helper/hash_file.c
/optee_os/core/lib/libtomcrypt/src/hashes/helper/hash_filehandle.c
/optee_os/core/lib/libtomcrypt/src/hashes/helper/hash_memory.c
/optee_os/core/lib/libtomcrypt/src/hashes/helper/hash_memory_multi.c
/optee_os/core/lib/libtomcrypt/src/hashes/md2.c
/optee_os/core/lib/libtomcrypt/src/hashes/md4.c
/optee_os/core/lib/libtomcrypt/src/hashes/md5.c
/optee_os/core/lib/libtomcrypt/src/hashes/rmd128.c
/optee_os/core/lib/libtomcrypt/src/hashes/rmd160.c
/optee_os/core/lib/libtomcrypt/src/hashes/rmd256.c
/optee_os/core/lib/libtomcrypt/src/hashes/rmd320.c
/optee_os/core/lib/libtomcrypt/src/hashes/sha1.c
/optee_os/core/lib/libtomcrypt/src/hashes/sha2/sha224.c
/optee_os/core/lib/libtomcrypt/src/hashes/sha2/sha256.c
/optee_os/core/lib/libtomcrypt/src/hashes/sha2/sha384.c
/optee_os/core/lib/libtomcrypt/src/hashes/sha2/sha512.c
/optee_os/core/lib/libtomcrypt/src/hashes/sha2/sha512_224.c
/optee_os/core/lib/libtomcrypt/src/hashes/sha2/sha512_256.c
/optee_os/core/lib/libtomcrypt/src/hashes/sha3.c
/optee_os/core/lib/libtomcrypt/src/hashes/sha3_test.c
/optee_os/core/lib/libtomcrypt/src/hashes/tiger.c
/optee_os/core/lib/libtomcrypt/src/hashes/whirl/whirl.c
/optee_os/core/lib/libtomcrypt/src/hashes/whirl/whirltab.c
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_argchk.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_cfg.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_cipher.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_custom.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_hash.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_mac.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_macros.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_math.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_misc.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_pk.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_pkcs.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_private.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_prng.h
/optee_os/core/lib/libtomcrypt/src/mac/blake2/blake2bmac.c
/optee_os/core/lib/libtomcrypt/src/mac/blake2/blake2bmac_file.c
/optee_os/core/lib/libtomcrypt/src/mac/blake2/blake2bmac_memory.c
/optee_os/core/lib/libtomcrypt/src/mac/blake2/blake2bmac_memory_multi.c
/optee_os/core/lib/libtomcrypt/src/mac/blake2/blake2bmac_test.c
/optee_os/core/lib/libtomcrypt/src/mac/blake2/blake2smac.c
/optee_os/core/lib/libtomcrypt/src/mac/blake2/blake2smac_file.c
/optee_os/core/lib/libtomcrypt/src/mac/blake2/blake2smac_memory.c
/optee_os/core/lib/libtomcrypt/src/mac/blake2/blake2smac_memory_multi.c
/optee_os/core/lib/libtomcrypt/src/mac/blake2/blake2smac_test.c
/optee_os/core/lib/libtomcrypt/src/mac/f9/f9_done.c
/optee_os/core/lib/libtomcrypt/src/mac/f9/f9_file.c
/optee_os/core/lib/libtomcrypt/src/mac/f9/f9_init.c
/optee_os/core/lib/libtomcrypt/src/mac/f9/f9_memory.c
/optee_os/core/lib/libtomcrypt/src/mac/f9/f9_memory_multi.c
/optee_os/core/lib/libtomcrypt/src/mac/f9/f9_process.c
/optee_os/core/lib/libtomcrypt/src/mac/f9/f9_test.c
/optee_os/core/lib/libtomcrypt/src/mac/hmac/hmac_done.c
/optee_os/core/lib/libtomcrypt/src/mac/hmac/hmac_file.c
/optee_os/core/lib/libtomcrypt/src/mac/hmac/hmac_init.c
/optee_os/core/lib/libtomcrypt/src/mac/hmac/hmac_memory.c
/optee_os/core/lib/libtomcrypt/src/mac/hmac/hmac_memory_multi.c
/optee_os/core/lib/libtomcrypt/src/mac/hmac/hmac_process.c
/optee_os/core/lib/libtomcrypt/src/mac/hmac/hmac_test.c
/optee_os/core/lib/libtomcrypt/src/mac/omac/omac_done.c
/optee_os/core/lib/libtomcrypt/src/mac/omac/omac_file.c
/optee_os/core/lib/libtomcrypt/src/mac/omac/omac_init.c
/optee_os/core/lib/libtomcrypt/src/mac/omac/omac_memory.c
/optee_os/core/lib/libtomcrypt/src/mac/omac/omac_memory_multi.c
/optee_os/core/lib/libtomcrypt/src/mac/omac/omac_process.c
/optee_os/core/lib/libtomcrypt/src/mac/omac/omac_test.c
/optee_os/core/lib/libtomcrypt/src/mac/pelican/pelican.c
/optee_os/core/lib/libtomcrypt/src/mac/pelican/pelican_memory.c
/optee_os/core/lib/libtomcrypt/src/mac/pelican/pelican_test.c
/optee_os/core/lib/libtomcrypt/src/mac/pmac/pmac_done.c
/optee_os/core/lib/libtomcrypt/src/mac/pmac/pmac_file.c
/optee_os/core/lib/libtomcrypt/src/mac/pmac/pmac_init.c
/optee_os/core/lib/libtomcrypt/src/mac/pmac/pmac_memory.c
/optee_os/core/lib/libtomcrypt/src/mac/pmac/pmac_memory_multi.c
/optee_os/core/lib/libtomcrypt/src/mac/pmac/pmac_ntz.c
/optee_os/core/lib/libtomcrypt/src/mac/pmac/pmac_process.c
/optee_os/core/lib/libtomcrypt/src/mac/pmac/pmac_shift_xor.c
/optee_os/core/lib/libtomcrypt/src/mac/pmac/pmac_test.c
/optee_os/core/lib/libtomcrypt/src/mac/poly1305/poly1305.c
/optee_os/core/lib/libtomcrypt/src/mac/poly1305/poly1305_file.c
/optee_os/core/lib/libtomcrypt/src/mac/poly1305/poly1305_memory.c
/optee_os/core/lib/libtomcrypt/src/mac/poly1305/poly1305_memory_multi.c
/optee_os/core/lib/libtomcrypt/src/mac/poly1305/poly1305_test.c
/optee_os/core/lib/libtomcrypt/src/mac/xcbc/xcbc_done.c
/optee_os/core/lib/libtomcrypt/src/mac/xcbc/xcbc_file.c
/optee_os/core/lib/libtomcrypt/src/mac/xcbc/xcbc_init.c
/optee_os/core/lib/libtomcrypt/src/mac/xcbc/xcbc_memory.c
/optee_os/core/lib/libtomcrypt/src/mac/xcbc/xcbc_memory_multi.c
/optee_os/core/lib/libtomcrypt/src/mac/xcbc/xcbc_process.c
/optee_os/core/lib/libtomcrypt/src/mac/xcbc/xcbc_test.c
/optee_os/core/lib/libtomcrypt/src/math/fp/ltc_ecc_fp_mulmod.c
/optee_os/core/lib/libtomcrypt/src/math/gmp_desc.c
/optee_os/core/lib/libtomcrypt/src/math/ltm_desc.c
/optee_os/core/lib/libtomcrypt/src/math/multi.c
/optee_os/core/lib/libtomcrypt/src/math/radix_to_bin.c
/optee_os/core/lib/libtomcrypt/src/math/rand_bn.c
/optee_os/core/lib/libtomcrypt/src/math/rand_prime.c
/optee_os/core/lib/libtomcrypt/src/math/tfm_desc.c
/optee_os/core/lib/libtomcrypt/src/misc/adler32.c
/optee_os/core/lib/libtomcrypt/src/misc/base16/base16_decode.c
/optee_os/core/lib/libtomcrypt/src/misc/base16/base16_encode.c
/optee_os/core/lib/libtomcrypt/src/misc/base32/base32_decode.c
/optee_os/core/lib/libtomcrypt/src/misc/base32/base32_encode.c
/optee_os/core/lib/libtomcrypt/src/misc/base64/base64_decode.c
/optee_os/core/lib/libtomcrypt/src/misc/base64/base64_encode.c
/optee_os/core/lib/libtomcrypt/src/misc/bcrypt/bcrypt.c
/optee_os/core/lib/libtomcrypt/src/misc/burn_stack.c
/optee_os/core/lib/libtomcrypt/src/misc/compare_testvector.c
/optee_os/core/lib/libtomcrypt/src/misc/copy_or_zeromem.c
/optee_os/core/lib/libtomcrypt/src/misc/crc32.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_argchk.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_cipher_descriptor.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_cipher_is_valid.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_constants.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_find_cipher.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_find_cipher_any.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_find_cipher_id.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_find_hash.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_find_hash_any.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_find_hash_id.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_find_hash_oid.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_find_prng.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_fsa.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_hash_descriptor.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_hash_is_valid.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_inits.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_ltc_mp_descriptor.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_prng_descriptor.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_prng_is_valid.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_prng_rng_descriptor.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_register_all_ciphers.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_register_all_hashes.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_register_all_prngs.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_register_cipher.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_register_hash.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_register_prng.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_sizes.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_unregister_cipher.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_unregister_hash.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_unregister_prng.c
/optee_os/core/lib/libtomcrypt/src/misc/error_to_string.c
/optee_os/core/lib/libtomcrypt/src/misc/hkdf/hkdf.c
/optee_os/core/lib/libtomcrypt/src/misc/hkdf/hkdf_test.c
/optee_os/core/lib/libtomcrypt/src/misc/mem_neq.c
/optee_os/core/lib/libtomcrypt/src/misc/padding/padding_depad.c
/optee_os/core/lib/libtomcrypt/src/misc/padding/padding_pad.c
/optee_os/core/lib/libtomcrypt/src/misc/pbes/pbes.c
/optee_os/core/lib/libtomcrypt/src/misc/pbes/pbes1.c
/optee_os/core/lib/libtomcrypt/src/misc/pbes/pbes2.c
/optee_os/core/lib/libtomcrypt/src/misc/pbes/sub.mk
/optee_os/core/lib/libtomcrypt/src/misc/pkcs12/pkcs12_kdf.c
/optee_os/core/lib/libtomcrypt/src/misc/pkcs12/pkcs12_utf8_to_utf16.c
/optee_os/core/lib/libtomcrypt/src/misc/pkcs12/sub.mk
/optee_os/core/lib/libtomcrypt/src/misc/pkcs5/pkcs_5_1.c
/optee_os/core/lib/libtomcrypt/src/misc/pkcs5/pkcs_5_2.c
/optee_os/core/lib/libtomcrypt/src/misc/pkcs5/pkcs_5_test.c
/optee_os/core/lib/libtomcrypt/src/misc/ssh/ssh_decode_sequence_multi.c
/optee_os/core/lib/libtomcrypt/src/misc/ssh/ssh_encode_sequence_multi.c
/optee_os/core/lib/libtomcrypt/src/misc/sub.mk
/optee_os/core/lib/libtomcrypt/src/misc/zeromem.c
/optee_os/core/lib/libtomcrypt/src/modes/cbc/cbc_decrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/cbc/cbc_done.c
/optee_os/core/lib/libtomcrypt/src/modes/cbc/cbc_encrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/cbc/cbc_getiv.c
/optee_os/core/lib/libtomcrypt/src/modes/cbc/cbc_setiv.c
/optee_os/core/lib/libtomcrypt/src/modes/cbc/cbc_start.c
/optee_os/core/lib/libtomcrypt/src/modes/cfb/cfb_decrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/cfb/cfb_done.c
/optee_os/core/lib/libtomcrypt/src/modes/cfb/cfb_encrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/cfb/cfb_getiv.c
/optee_os/core/lib/libtomcrypt/src/modes/cfb/cfb_setiv.c
/optee_os/core/lib/libtomcrypt/src/modes/cfb/cfb_start.c
/optee_os/core/lib/libtomcrypt/src/modes/ctr/ctr_decrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/ctr/ctr_done.c
/optee_os/core/lib/libtomcrypt/src/modes/ctr/ctr_encrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/ctr/ctr_getiv.c
/optee_os/core/lib/libtomcrypt/src/modes/ctr/ctr_setiv.c
/optee_os/core/lib/libtomcrypt/src/modes/ctr/ctr_start.c
/optee_os/core/lib/libtomcrypt/src/modes/ctr/ctr_test.c
/optee_os/core/lib/libtomcrypt/src/modes/ecb/ecb_decrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/ecb/ecb_done.c
/optee_os/core/lib/libtomcrypt/src/modes/ecb/ecb_encrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/ecb/ecb_start.c
/optee_os/core/lib/libtomcrypt/src/modes/f8/f8_decrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/f8/f8_done.c
/optee_os/core/lib/libtomcrypt/src/modes/f8/f8_encrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/f8/f8_getiv.c
/optee_os/core/lib/libtomcrypt/src/modes/f8/f8_setiv.c
/optee_os/core/lib/libtomcrypt/src/modes/f8/f8_start.c
/optee_os/core/lib/libtomcrypt/src/modes/f8/f8_test_mode.c
/optee_os/core/lib/libtomcrypt/src/modes/lrw/lrw_decrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/lrw/lrw_done.c
/optee_os/core/lib/libtomcrypt/src/modes/lrw/lrw_encrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/lrw/lrw_getiv.c
/optee_os/core/lib/libtomcrypt/src/modes/lrw/lrw_process.c
/optee_os/core/lib/libtomcrypt/src/modes/lrw/lrw_setiv.c
/optee_os/core/lib/libtomcrypt/src/modes/lrw/lrw_start.c
/optee_os/core/lib/libtomcrypt/src/modes/lrw/lrw_test.c
/optee_os/core/lib/libtomcrypt/src/modes/ofb/ofb_decrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/ofb/ofb_done.c
/optee_os/core/lib/libtomcrypt/src/modes/ofb/ofb_encrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/ofb/ofb_getiv.c
/optee_os/core/lib/libtomcrypt/src/modes/ofb/ofb_setiv.c
/optee_os/core/lib/libtomcrypt/src/modes/ofb/ofb_start.c
/optee_os/core/lib/libtomcrypt/src/modes/xts/xts_decrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/xts/xts_done.c
/optee_os/core/lib/libtomcrypt/src/modes/xts/xts_encrypt.c
/optee_os/core/lib/libtomcrypt/src/modes/xts/xts_init.c
/optee_os/core/lib/libtomcrypt/src/modes/xts/xts_mult_x.c
/optee_os/core/lib/libtomcrypt/src/modes/xts/xts_test.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/bit/der_decode_bit_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/bit/der_decode_raw_bit_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/bit/der_encode_bit_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/bit/der_encode_raw_bit_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/bit/der_length_bit_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/boolean/der_decode_boolean.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/boolean/der_encode_boolean.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/boolean/der_length_boolean.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/choice/der_decode_choice.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/custom_type/der_decode_custom_type.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/custom_type/der_encode_custom_type.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/custom_type/der_length_custom_type.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/general/der_asn1_maps.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/general/der_decode_asn1_identifier.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/general/der_decode_asn1_length.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/general/der_encode_asn1_identifier.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/general/der_encode_asn1_length.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/general/der_length_asn1_identifier.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/general/der_length_asn1_length.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/generalizedtime/der_decode_generalizedtime.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/generalizedtime/der_encode_generalizedtime.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/generalizedtime/der_length_generalizedtime.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/ia5/der_decode_ia5_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/ia5/der_encode_ia5_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/ia5/der_length_ia5_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/integer/der_decode_integer.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/integer/der_encode_integer.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/integer/der_length_integer.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/object_identifier/der_decode_object_identifier.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/object_identifier/der_encode_object_identifier.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/object_identifier/der_length_object_identifier.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/octet/der_decode_octet_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/octet/der_encode_octet_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/octet/der_length_octet_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/printable_string/der_decode_printable_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/printable_string/der_encode_printable_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/printable_string/der_length_printable_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/sequence/der_decode_sequence_ex.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/sequence/der_decode_sequence_flexi.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/sequence/der_decode_sequence_multi.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/sequence/der_encode_sequence_ex.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/sequence/der_encode_sequence_multi.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/sequence/der_length_sequence.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/sequence/der_sequence_free.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/sequence/der_sequence_shrink.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/set/der_encode_set.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/set/der_encode_setof.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/short_integer/der_decode_short_integer.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/short_integer/der_encode_short_integer.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/short_integer/der_length_short_integer.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/teletex_string/der_decode_teletex_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/teletex_string/der_length_teletex_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/utctime/der_decode_utctime.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/utctime/der_encode_utctime.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/utctime/der_length_utctime.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/utf8/der_decode_utf8_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/utf8/der_encode_utf8_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/utf8/der_length_utf8_string.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/oid/pk_get_oid.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/oid/pk_oid_cmp.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/oid/pk_oid_str.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/pkcs8/pkcs8_decode_flexi.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/x509/x509_decode_public_key_from_certificate.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/x509/x509_decode_subject_public_key_info.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/x509/x509_encode_subject_public_key_info.c
/optee_os/core/lib/libtomcrypt/src/pk/dh/dh.c
/optee_os/core/lib/libtomcrypt/src/pk/dh/dh_check_pubkey.c
/optee_os/core/lib/libtomcrypt/src/pk/dh/dh_export.c
/optee_os/core/lib/libtomcrypt/src/pk/dh/dh_export_key.c
/optee_os/core/lib/libtomcrypt/src/pk/dh/dh_free.c
/optee_os/core/lib/libtomcrypt/src/pk/dh/dh_generate_key.c
/optee_os/core/lib/libtomcrypt/src/pk/dh/dh_import.c
/optee_os/core/lib/libtomcrypt/src/pk/dh/dh_set.c
/optee_os/core/lib/libtomcrypt/src/pk/dh/dh_set_pg_dhparam.c
/optee_os/core/lib/libtomcrypt/src/pk/dh/dh_shared_secret.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_decrypt_key.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_encrypt_key.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_export.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_free.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_generate_key.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_generate_pqg.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_import.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_make_key.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_set.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_set_pqg_dsaparam.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_shared_secret.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_sign_hash.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_verify_hash.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_verify_key.c
/optee_os/core/lib/libtomcrypt/src/pk/ec25519/ec25519_crypto_ctx.c
/optee_os/core/lib/libtomcrypt/src/pk/ec25519/ec25519_export.c
/optee_os/core/lib/libtomcrypt/src/pk/ec25519/ec25519_import_pkcs8.c
/optee_os/core/lib/libtomcrypt/src/pk/ec25519/sub.mk
/optee_os/core/lib/libtomcrypt/src/pk/ec25519/tweetnacl.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_ansi_x963_export.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_ansi_x963_import.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_decrypt_key.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_encrypt_key.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_export.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_export_openssl.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_find_curve.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_free.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_get_key.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_get_oid_str.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_get_size.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_import.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_import_openssl.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_import_pkcs8.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_import_x509.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_make_key.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_recover_key.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_set_curve.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_set_curve_internal.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_set_key.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_shared_secret.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_sign_hash.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_sizes.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_ssh_ecdsa_encode_name.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_verify_hash.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ltc_ecc_export_point.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ltc_ecc_import_point.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ltc_ecc_is_point.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ltc_ecc_is_point_at_infinity.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ltc_ecc_map.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ltc_ecc_mul2add.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ltc_ecc_mulmod.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ltc_ecc_mulmod_timing.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ltc_ecc_points.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ltc_ecc_projective_add_point.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ltc_ecc_projective_dbl_point.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ltc_ecc_verify_key.c
/optee_os/core/lib/libtomcrypt/src/pk/ed25519/ed25519_export.c
/optee_os/core/lib/libtomcrypt/src/pk/ed25519/ed25519_import.c
/optee_os/core/lib/libtomcrypt/src/pk/ed25519/ed25519_import_pkcs8.c
/optee_os/core/lib/libtomcrypt/src/pk/ed25519/ed25519_import_raw.c
/optee_os/core/lib/libtomcrypt/src/pk/ed25519/ed25519_import_x509.c
/optee_os/core/lib/libtomcrypt/src/pk/ed25519/ed25519_make_key.c
/optee_os/core/lib/libtomcrypt/src/pk/ed25519/ed25519_sign.c
/optee_os/core/lib/libtomcrypt/src/pk/ed25519/ed25519_verify.c
/optee_os/core/lib/libtomcrypt/src/pk/ed25519/sub.mk
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_i2osp.c
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_mgf1.c
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_oaep_decode.c
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_oaep_encode.c
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_os2ip.c
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_pss_decode.c
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_pss_encode.c
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_v1_5_decode.c
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_v1_5_encode.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_decrypt_key.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_encrypt_key.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_export.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_exptmod.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_get_size.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_import.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_import_pkcs8.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_import_x509.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_key.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_make_key.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_set.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_sign_hash.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_sign_saltlen_get.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_verify_hash.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/sub.mk
/optee_os/core/lib/libtomcrypt/src/pk/sub.mk
/optee_os/core/lib/libtomcrypt/src/pk/x25519/sub.mk
/optee_os/core/lib/libtomcrypt/src/pk/x25519/x25519_export.c
/optee_os/core/lib/libtomcrypt/src/pk/x25519/x25519_import.c
/optee_os/core/lib/libtomcrypt/src/pk/x25519/x25519_import_pkcs8.c
/optee_os/core/lib/libtomcrypt/src/pk/x25519/x25519_import_raw.c
/optee_os/core/lib/libtomcrypt/src/pk/x25519/x25519_import_x509.c
/optee_os/core/lib/libtomcrypt/src/pk/x25519/x25519_make_key.c
/optee_os/core/lib/libtomcrypt/src/pk/x25519/x25519_shared_secret.c
/optee_os/core/lib/libtomcrypt/src/prngs/chacha20.c
/optee_os/core/lib/libtomcrypt/src/prngs/fortuna.c
/optee_os/core/lib/libtomcrypt/src/prngs/rc4.c
/optee_os/core/lib/libtomcrypt/src/prngs/rng_get_bytes.c
/optee_os/core/lib/libtomcrypt/src/prngs/rng_make_prng.c
/optee_os/core/lib/libtomcrypt/src/prngs/sober128.c
/optee_os/core/lib/libtomcrypt/src/prngs/sprng.c
/optee_os/core/lib/libtomcrypt/src/prngs/yarrow.c
/optee_os/core/lib/libtomcrypt/src/stream/chacha/chacha_crypt.c
/optee_os/core/lib/libtomcrypt/src/stream/chacha/chacha_done.c
/optee_os/core/lib/libtomcrypt/src/stream/chacha/chacha_ivctr32.c
/optee_os/core/lib/libtomcrypt/src/stream/chacha/chacha_ivctr64.c
/optee_os/core/lib/libtomcrypt/src/stream/chacha/chacha_keystream.c
/optee_os/core/lib/libtomcrypt/src/stream/chacha/chacha_memory.c
/optee_os/core/lib/libtomcrypt/src/stream/chacha/chacha_setup.c
/optee_os/core/lib/libtomcrypt/src/stream/chacha/chacha_test.c
/optee_os/core/lib/libtomcrypt/src/stream/rabbit/rabbit.c
/optee_os/core/lib/libtomcrypt/src/stream/rabbit/rabbit_memory.c
/optee_os/core/lib/libtomcrypt/src/stream/rc4/rc4_stream.c
/optee_os/core/lib/libtomcrypt/src/stream/rc4/rc4_stream_memory.c
/optee_os/core/lib/libtomcrypt/src/stream/rc4/rc4_test.c
/optee_os/core/lib/libtomcrypt/src/stream/salsa20/salsa20_crypt.c
/optee_os/core/lib/libtomcrypt/src/stream/salsa20/salsa20_done.c
/optee_os/core/lib/libtomcrypt/src/stream/salsa20/salsa20_ivctr64.c
/optee_os/core/lib/libtomcrypt/src/stream/salsa20/salsa20_keystream.c
/optee_os/core/lib/libtomcrypt/src/stream/salsa20/salsa20_memory.c
/optee_os/core/lib/libtomcrypt/src/stream/salsa20/salsa20_setup.c
/optee_os/core/lib/libtomcrypt/src/stream/salsa20/salsa20_test.c
/optee_os/core/lib/libtomcrypt/src/stream/salsa20/xsalsa20_memory.c
/optee_os/core/lib/libtomcrypt/src/stream/salsa20/xsalsa20_setup.c
/optee_os/core/lib/libtomcrypt/src/stream/salsa20/xsalsa20_test.c
/optee_os/core/lib/libtomcrypt/src/stream/sober128/sober128_stream.c
/optee_os/core/lib/libtomcrypt/src/stream/sober128/sober128_stream_memory.c
/optee_os/core/lib/libtomcrypt/src/stream/sober128/sober128_test.c
/optee_os/core/lib/libtomcrypt/src/stream/sober128/sober128tab.c
/optee_os/core/lib/libtomcrypt/src/stream/sosemanuk/sosemanuk.c
/optee_os/core/lib/libtomcrypt/src/stream/sosemanuk/sosemanuk_memory.c
/optee_os/core/lib/libtomcrypt/src/stream/sosemanuk/sosemanuk_test.c
/optee_os/core/lib/libtomcrypt/sub.mk
/optee_os/core/lib/libtomcrypt/x25519.c
/optee_os/core/lib/zlib/gzguts.h
/optee_os/core/lib/zlib/inffast.c
/optee_os/core/lib/zlib/inflate.c
/optee_os/core/lib/zlib/inflate.h
/optee_os/core/lib/zlib/inftrees.c
/optee_os/core/lib/zlib/zlib.h
/optee_os/core/lib/zlib/zutil.c
/optee_os/core/lib/zlib/zutil.h
/optee_os/core/mm/core_mmu.c
/optee_os/core/mm/vm.c
/optee_os/core/tee/entry_std.c
/optee_os/core/tee/tee_rpmb_fs.c
/optee_os/core/tee/tee_svc_cryp.c
/optee_os/core/tee/tee_svc_storage.c
/optee_os/lib/libutee/include/tee_api_defines.h
/optee_os/lib/libutee/include/utee_defines.h
/optee_os/lib/libutee/tee_api_operations.c
ext/include/util.h
/optee_os/mk/config.mk
/optee_os/scripts/checkpatch_inc.sh
/optee_os/ta/pkcs11/include/pkcs11_ta.h
/optee_os/ta/pkcs11/src/pkcs11_attributes.c
/optee_os/ta/pkcs11/src/pkcs11_helpers.c
/optee_os/ta/pkcs11/src/processing.c
/optee_os/ta/pkcs11/src/processing.h
/optee_os/ta/pkcs11/src/processing_asymm.c
/optee_os/ta/pkcs11/src/processing_ec.c
/optee_os/ta/pkcs11/src/token_capabilities.c
/optee_os/ta/ta.mk
49cfa41e08-Sep-2022 Gavin <zheting0815@gmail.com>

libutils:assert.h:add compiler check for static_assert

static_assert is belong to reserved word since C++11.
We only need this definition when not using C++ or
the C++ version less than C++11.

Sign

libutils:assert.h:add compiler check for static_assert

static_assert is belong to reserved word since C++11.
We only need this definition when not using C++ or
the C++ version less than C++11.

Signed-off-by: Gavin Liu <Gavin.Liu@mediatek.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...


/optee_os/.github/workflows/ci.yml
/optee_os/core/arch/arm/dts/stm32mp157a-dhcor-avenger96.dts
/optee_os/core/arch/arm/dts/stm32mp157c-dhcom-pdk2.dts
/optee_os/core/arch/arm/dts/stm32mp15xx-dhcom-pdk2.dtsi
/optee_os/core/arch/arm/dts/stm32mp15xx-dhcom-som.dtsi
/optee_os/core/arch/arm/dts/stm32mp15xx-dhcor-avenger96.dtsi
/optee_os/core/arch/arm/dts/stm32mp15xx-dhcor-io1v8.dtsi
/optee_os/core/arch/arm/dts/stm32mp15xx-dhcor-som.dtsi
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/registers/imx8m.h
/optee_os/core/arch/arm/plat-ls/conf.mk
/optee_os/core/arch/arm/plat-ls/crypto_conf.mk
/optee_os/core/arch/arm/plat-ls/platform_config.h
/optee_os/core/arch/arm/plat-rcar/core_pos_a64.S
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/main.c
/optee_os/core/arch/arm/plat-stm32mp1/pm/psci.c
/optee_os/core/arch/arm/plat-stm32mp1/scmi_server.c
/optee_os/core/arch/arm/plat-versal/conf.mk
/optee_os/core/arch/arm/plat-zynqmp/conf.mk
/optee_os/core/drivers/crypto/caam/acipher/caam_ecc.c
/optee_os/core/drivers/crypto/crypto_api/acipher/ecc.c
/optee_os/core/drivers/crypto/crypto_api/acipher/rsassa.c
/optee_os/core/drivers/imx/dcp/dcp_huk.c
/optee_os/core/drivers/imx/mu/imx_mu.c
/optee_os/core/drivers/imx/mu/imx_mu_8q.c
/optee_os/core/drivers/imx/mu/imx_mu_8ulp.c
/optee_os/core/drivers/imx/mu/imx_mu_platform.h
/optee_os/core/drivers/imx/mu/sub.mk
/optee_os/core/drivers/imx/sub.mk
/optee_os/core/drivers/imx_i2c.c
/optee_os/core/drivers/imx_sc_api.c
/optee_os/core/drivers/scmi-msg/voltage_domain.c
/optee_os/core/drivers/sub.mk
/optee_os/core/drivers/versal_gpio.c
/optee_os/core/drivers/zynqmp_huk.c
/optee_os/core/drivers/zynqmp_pm.c
/optee_os/core/include/drivers/imx_mu.h
/optee_os/core/include/drivers/scmi-msg.h
/optee_os/core/include/drivers/versal_gpio.h
/optee_os/core/include/drivers/zynqmp_efuse.h
/optee_os/core/include/drivers/zynqmp_huk.h
/optee_os/core/include/drivers/zynqmp_pm.h
/optee_os/core/include/dt-bindings/reset/stm32mp1-resets.h
/optee_os/core/include/dt-bindings/reset/stm32mp13-resets.h
isoc/include/assert.h
d992553623-Aug-2022 Jerome Forissier <jerome.forissier@linaro.org>

arm32: libutils, libutee, ta: add .note.GNU-stack section to .S files

When building for arm32 with GNU binutils 2.39, the linker outputs
warnings when linking Trusted Applications:

arm-unknown-lin

arm32: libutils, libutee, ta: add .note.GNU-stack section to .S files

When building for arm32 with GNU binutils 2.39, the linker outputs
warnings when linking Trusted Applications:

arm-unknown-linux-uclibcgnueabihf-ld.bfd: warning: utee_syscalls_a32.o: missing .note.GNU-stack section implies executable stack
arm-unknown-linux-uclibcgnueabihf-ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker

We could silence the warning by adding the '--no-warn-execstack' option
to the TA link flags, like we did in the parent commit for the TEE core
and ldelf. Indeed, ldelf always allocates a non-executable piece of
memory for the TA to use as a stack.

However it seems preferable to comply with the common ELF practices in
this case. A better fix is therefore to add the missing .note.GNU-stack
sections in the assembler files.

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

8dc184e518-Jul-2022 Marouene Boubakri <marouene.boubakri@nxp.com>

libutils: util.h: add get_field_u{32,64}() and set_field_u{32,64}()

This commit defines macros for getting and setting bit fields.

Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com>
Revie

libutils: util.h: add get_field_u{32,64}() and set_field_u{32,64}()

This commit defines macros for getting and setting bit fields.

Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...


/optee_os/.github/workflows/ci-cancel.yml
/optee_os/.github/workflows/ci.yml
/optee_os/CHANGELOG.md
/optee_os/MAINTAINERS
/optee_os/core/arch/arm/dts/hikey.dts
/optee_os/core/arch/arm/dts/sama5d2.dtsi
/optee_os/core/arch/arm/dts/stm32mp13-pinctrl.dtsi
/optee_os/core/arch/arm/dts/stm32mp131.dtsi
/optee_os/core/arch/arm/dts/stm32mp133.dtsi
/optee_os/core/arch/arm/dts/stm32mp135.dtsi
/optee_os/core/arch/arm/dts/stm32mp135f-dk.dts
/optee_os/core/arch/arm/dts/stm32mp13xc.dtsi
/optee_os/core/arch/arm/dts/stm32mp13xf.dtsi
/optee_os/core/arch/arm/dts/stm32mp15-pinctrl.dtsi
/optee_os/core/arch/arm/dts/stm32mp151.dtsi
/optee_os/core/arch/arm/dts/stm32mp153.dtsi
/optee_os/core/arch/arm/dts/stm32mp157.dtsi
/optee_os/core/arch/arm/dts/stm32mp157a-dk1.dts
/optee_os/core/arch/arm/dts/stm32mp157c-dk2.dts
/optee_os/core/arch/arm/dts/stm32mp157c-ed1.dts
/optee_os/core/arch/arm/dts/stm32mp157c-ev1.dts
/optee_os/core/arch/arm/dts/stm32mp15xx-dkx.dtsi
/optee_os/core/arch/arm/kernel/boot.c
/optee_os/core/arch/arm/kernel/link.mk
/optee_os/core/arch/arm/kernel/spmc_sp_handler.c
/optee_os/core/arch/arm/kernel/thread_optee_smc.c
/optee_os/core/arch/arm/kernel/thread_spmc.c
/optee_os/core/arch/arm/mm/pgt_cache.c
/optee_os/core/arch/arm/plat-bcm/main.c
/optee_os/core/arch/arm/plat-corstone1000/conf.mk
/optee_os/core/arch/arm/plat-corstone1000/main.c
/optee_os/core/arch/arm/plat-corstone1000/platform_config.h
/optee_os/core/arch/arm/plat-corstone1000/sub.mk
/optee_os/core/arch/arm/plat-hikey/conf.mk
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/crypto_conf.mk
/optee_os/core/arch/arm/plat-imx/imx-common.c
/optee_os/core/arch/arm/plat-imx/imx-regs.h
/optee_os/core/arch/arm/plat-imx/imx.h
/optee_os/core/arch/arm/plat-imx/registers/imx6-dcp.h
/optee_os/core/arch/arm/plat-imx/registers/imx6.h
/optee_os/core/arch/arm/plat-imx/registers/imx7.h
/optee_os/core/arch/arm/plat-imx/registers/imx7ulp.h
/optee_os/core/arch/arm/plat-imx/registers/imx8m.h
/optee_os/core/arch/arm/plat-imx/registers/imx8q.h
/optee_os/core/arch/arm/plat-imx/registers/imx8ulp.h
/optee_os/core/arch/arm/plat-imx/registers/imx93.h
/optee_os/core/arch/arm/plat-k3/conf.mk
/optee_os/core/arch/arm/plat-k3/drivers/sa2ul_rng.c
/optee_os/core/arch/arm/plat-k3/platform_config.h
/optee_os/core/arch/arm/plat-ls/conf.mk
/optee_os/core/arch/arm/plat-ls/crypto_conf.mk
/optee_os/core/arch/arm/plat-ls/platform_config.h
/optee_os/core/arch/arm/plat-rcar/conf.mk
/optee_os/core/arch/arm/plat-rcar/hw_rng.c
/optee_os/core/arch/arm/plat-rcar/main.c
/optee_os/core/arch/arm/plat-sam/main.c
/optee_os/core/arch/arm/plat-sam/nsec-service/sm_platform_handler.c
/optee_os/core/arch/arm/plat-sam/nsec-service/smc_ids.h
/optee_os/core/arch/arm/plat-sam/sam_sfr.c
/optee_os/core/arch/arm/plat-sam/sam_sfr.h
/optee_os/core/arch/arm/plat-sam/sub.mk
/optee_os/core/arch/arm/plat-stm/rng_support.c
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_etzpc.h
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_syscfg.c
/optee_os/core/arch/arm/plat-stm32mp1/main.c
/optee_os/core/arch/arm/plat-stm32mp1/plat_tzc400.c
/optee_os/core/arch/arm/plat-stm32mp1/platform_config.h
/optee_os/core/arch/arm/plat-stm32mp1/pm/psci.c
/optee_os/core/arch/arm/plat-stm32mp1/scmi_server.c
/optee_os/core/arch/arm/plat-stm32mp1/shared_resources.c
/optee_os/core/arch/arm/plat-stm32mp1/stm32_util.h
/optee_os/core/arch/arm/plat-stm32mp1/sub.mk
/optee_os/core/arch/arm/plat-synquacer/main.c
/optee_os/core/arch/arm/plat-synquacer/rng_pta.c
/optee_os/core/arch/arm/plat-synquacer/synquacer_rng_pta.h
/optee_os/core/arch/arm/plat-totalcompute/conf.mk
/optee_os/core/arch/arm/plat-totalcompute/platform_config.h
/optee_os/core/arch/arm/plat-zynqmp/main.c
/optee_os/core/crypto/rng_hw.c
/optee_os/core/drivers/atmel_trng.c
/optee_os/core/drivers/bcm_sotp.c
/optee_os/core/drivers/clk/clk-stm32-core.c
/optee_os/core/drivers/clk/clk-stm32mp13.c
/optee_os/core/drivers/clk/clk-stm32mp15.c
/optee_os/core/drivers/crypto/caam/caam_rng.c
/optee_os/core/drivers/crypto/caam/hal/common/hal_cfg.c
/optee_os/core/drivers/crypto/caam/hal/common/registers/rng_regs.h
/optee_os/core/drivers/crypto/se050/core/rng.c
/optee_os/core/drivers/crypto/se050/crypto.mk
/optee_os/core/drivers/crypto/se050/glue/i2c.c
/optee_os/core/drivers/dra7_rng.c
/optee_os/core/drivers/hi16xx_rng.c
/optee_os/core/drivers/imx/dcp/dcp.c
/optee_os/core/drivers/imx/dcp/dcp_huk.c
/optee_os/core/drivers/imx_i2c.c
/optee_os/core/drivers/imx_ocotp.c
/optee_os/core/drivers/imx_rngb.c
/optee_os/core/drivers/imx_snvs.c
/optee_os/core/drivers/smccc_trng.c
/optee_os/core/drivers/stm32_i2c.c
/optee_os/core/drivers/stm32_rng.c
/optee_os/core/drivers/stm32_shared_io.c
/optee_os/core/drivers/sub.mk
/optee_os/core/drivers/xiphera_trng.c
/optee_os/core/include/drivers/bcm_sotp.h
/optee_os/core/include/drivers/imx/dcp.h
/optee_os/core/include/drivers/stm32_rng.h
/optee_os/core/include/drivers/stm32_shared_io.h
/optee_os/core/include/drivers/stm32mp_dt_bindings.h
/optee_os/core/include/dt-bindings/clock/stm32mp1-clks.h
/optee_os/core/include/dt-bindings/gpio/gpio.h
/optee_os/core/include/dt-bindings/regulator/st,stm32mp13-regulator.h
/optee_os/core/include/dt-bindings/regulator/st,stm32mp15-regulator.h
/optee_os/core/include/dt-bindings/reset/stm32mp1-resets.h
/optee_os/core/include/mm/pgt_cache.h
/optee_os/core/include/mm/tee_mmu_types.h
/optee_os/core/include/rng_support.h
/optee_os/core/kernel/dt_driver.c
/optee_os/core/mm/core_mmu.c
/optee_os/core/mm/vm.c
/optee_os/core/pta/attestation.c
/optee_os/core/pta/bcm/sotp.c
/optee_os/core/pta/hwrng.c
/optee_os/core/tee/tee_ree_fs.c
/optee_os/core/tee/tee_rpmb_fs.c
/optee_os/core/tee/tee_svc.c
/optee_os/core/tee/tee_svc_cryp.c
/optee_os/ldelf/ta_elf.c
/optee_os/ldelf/ta_elf.h
/optee_os/ldelf/ta_elf_rel.c
/optee_os/lib/libmbedtls/core/ecc.c
/optee_os/lib/libmbedtls/core/rsa.c
/optee_os/lib/libmbedtls/mbedtls/BUGS.md
/optee_os/lib/libmbedtls/mbedtls/CONTRIBUTING.md
/optee_os/lib/libmbedtls/mbedtls/ChangeLog
/optee_os/lib/libmbedtls/mbedtls/README.md
/optee_os/lib/libmbedtls/mbedtls/SECURITY.md
/optee_os/lib/libmbedtls/mbedtls/SUPPORT.md
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/aes.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/arc4.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/aria.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/asn1.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/base64.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/bignum.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/blowfish.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/bn_mul.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/camellia.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ccm.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/chacha20.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/chachapoly.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/check_config.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/cipher.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/cmac.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/constant_time.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ctr_drbg.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/debug.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/des.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/dhm.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ecjpake.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ecp.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/entropy.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/error.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/gcm.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/hkdf.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/hmac_drbg.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/md.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/md2.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/md4.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/md5.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/memory_buffer_alloc.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/net_sockets.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/oid.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/padlock.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/pem.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/pk.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/pkcs12.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/pkcs5.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/platform.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/platform_time.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/platform_util.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/poly1305.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/psa_util.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ripemd160.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/rsa.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/sha1.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/sha256.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/sha512.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ssl.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ssl_cache.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ssl_cookie.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ssl_internal.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ssl_ticket.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/threading.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/version.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/x509.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/x509_crl.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/x509_crt.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/x509_csr.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/xtea.h
/optee_os/lib/libmbedtls/mbedtls/library/aes.c
/optee_os/lib/libmbedtls/mbedtls/library/aria.c
/optee_os/lib/libmbedtls/mbedtls/library/asn1write.c
/optee_os/lib/libmbedtls/mbedtls/library/base64.c
/optee_os/lib/libmbedtls/mbedtls/library/bignum.c
/optee_os/lib/libmbedtls/mbedtls/library/blowfish.c
/optee_os/lib/libmbedtls/mbedtls/library/camellia.c
/optee_os/lib/libmbedtls/mbedtls/library/ccm.c
/optee_os/lib/libmbedtls/mbedtls/library/chacha20.c
/optee_os/lib/libmbedtls/mbedtls/library/chachapoly.c
/optee_os/lib/libmbedtls/mbedtls/library/cipher.c
/optee_os/lib/libmbedtls/mbedtls/library/common.h
/optee_os/lib/libmbedtls/mbedtls/library/constant_time.c
/optee_os/lib/libmbedtls/mbedtls/library/constant_time_internal.h
/optee_os/lib/libmbedtls/mbedtls/library/constant_time_invasive.h
/optee_os/lib/libmbedtls/mbedtls/library/ctr_drbg.c
/optee_os/lib/libmbedtls/mbedtls/library/des.c
/optee_os/lib/libmbedtls/mbedtls/library/dhm.c
/optee_os/lib/libmbedtls/mbedtls/library/ecdh.c
/optee_os/lib/libmbedtls/mbedtls/library/ecjpake.c
/optee_os/lib/libmbedtls/mbedtls/library/ecp.c
/optee_os/lib/libmbedtls/mbedtls/library/ecp_curves.c
/optee_os/lib/libmbedtls/mbedtls/library/gcm.c
/optee_os/lib/libmbedtls/mbedtls/library/md4.c
/optee_os/lib/libmbedtls/mbedtls/library/md5.c
/optee_os/lib/libmbedtls/mbedtls/library/memory_buffer_alloc.c
/optee_os/lib/libmbedtls/mbedtls/library/net_sockets.c
/optee_os/lib/libmbedtls/mbedtls/library/nist_kw.c
/optee_os/lib/libmbedtls/mbedtls/library/pkcs12.c
/optee_os/lib/libmbedtls/mbedtls/library/pkparse.c
/optee_os/lib/libmbedtls/mbedtls/library/poly1305.c
/optee_os/lib/libmbedtls/mbedtls/library/ripemd160.c
/optee_os/lib/libmbedtls/mbedtls/library/rsa.c
/optee_os/lib/libmbedtls/mbedtls/library/sha1.c
/optee_os/lib/libmbedtls/mbedtls/library/sha256.c
/optee_os/lib/libmbedtls/mbedtls/library/sha512.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_ciphersuites.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_cli.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_cookie.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_msg.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_srv.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_ticket.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_tls.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_tls13_keys.c
/optee_os/lib/libmbedtls/mbedtls/library/threading.c
/optee_os/lib/libmbedtls/mbedtls/library/timing.c
/optee_os/lib/libmbedtls/mbedtls/library/version_features.c
/optee_os/lib/libmbedtls/mbedtls/library/x509.c
/optee_os/lib/libmbedtls/mbedtls/library/x509_crl.c
/optee_os/lib/libmbedtls/mbedtls/library/x509_crt.c
/optee_os/lib/libmbedtls/mbedtls/library/x509write_crt.c
/optee_os/lib/libmbedtls/mbedtls/library/xtea.c
/optee_os/lib/libmbedtls/sub.mk
/optee_os/lib/libutee/include/pta_rng.h
/optee_os/lib/libutee/include/rng_pta_client.h
ext/include/util.h
/optee_os/mk/clang.mk
/optee_os/mk/config.mk
/optee_os/ta/mk/build-user-ta.mk
/optee_os/ta/pkcs11/src/pkcs11_token.c
e906cbe728-Mar-2022 Jorge Ramirez-Ortiz <jorge@foundries.io>

libutils: Import strtok_r() from newlib

Import strtok_r() from newlib.

Signed-off-by: Jorge Ramirez-Ortiz <jorge@foundries.io>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Acked-by: Jer

libutils: Import strtok_r() from newlib

Import strtok_r() from newlib.

Signed-off-by: Jorge Ramirez-Ortiz <jorge@foundries.io>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...

ad0ae80027-Dec-2021 Marouene Boubakri <marouene.boubakri@nxp.com>

riscv: create makefiles and directories tree for riscv

This commits creates the very first makefiles, directories and
subdirectories for RISC-V port. It also creates a new platform flavor
named plat

riscv: create makefiles and directories tree for riscv

This commits creates the very first makefiles, directories and
subdirectories for RISC-V port. It also creates a new platform flavor
named plat-spike. Spike is a reference functional RISC-V ISA simulator
which provides full system emulation and it is developed alongside the
RISC-V toolchain.

Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...


/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/include/kernel/thread_arch.h
/optee_os/core/arch/arm/kernel/entry_a32.S
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/plat-amlogic/conf.mk
/optee_os/core/arch/arm/plat-d02/conf.mk
/optee_os/core/arch/arm/plat-hikey/conf.mk
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/drivers/sub.mk
/optee_os/core/arch/arm/plat-imx/link.mk
/optee_os/core/arch/arm/plat-imx/registers/imx6.h
/optee_os/core/arch/arm/plat-imx/registers/imx7.h
/optee_os/core/arch/arm/plat-imx/registers/imx8m.h
/optee_os/core/arch/arm/plat-k3/conf.mk
/optee_os/core/arch/arm/plat-k3/drivers/sa2ul.c
/optee_os/core/arch/arm/plat-k3/drivers/sa2ul.h
/optee_os/core/arch/arm/plat-k3/drivers/sa2ul_rng.c
/optee_os/core/arch/arm/plat-k3/drivers/sec_proxy.c
/optee_os/core/arch/arm/plat-k3/drivers/sec_proxy.h
/optee_os/core/arch/arm/plat-k3/drivers/sub.mk
/optee_os/core/arch/arm/plat-k3/drivers/ti_sci.c
/optee_os/core/arch/arm/plat-k3/drivers/ti_sci.h
/optee_os/core/arch/arm/plat-k3/drivers/ti_sci_protocol.h
/optee_os/core/arch/arm/plat-k3/main.c
/optee_os/core/arch/arm/plat-k3/platform_config.h
/optee_os/core/arch/arm/plat-k3/sub.mk
/optee_os/core/arch/arm/plat-ls/conf.mk
/optee_os/core/arch/arm/plat-ls/crypto_conf.mk
/optee_os/core/arch/arm/plat-marvell/conf.mk
/optee_os/core/arch/arm/plat-mediatek/conf.mk
/optee_os/core/arch/arm/plat-poplar/conf.mk
/optee_os/core/arch/arm/plat-rockchip/conf.mk
/optee_os/core/arch/arm/plat-rpi3/conf.mk
/optee_os/core/arch/arm/plat-rzg/conf.mk
/optee_os/core/arch/arm/plat-sam/conf.mk
/optee_os/core/arch/arm/plat-sprd/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_syscfg.c
/optee_os/core/arch/arm/plat-stm32mp1/pm/psci.c
/optee_os/core/arch/arm/plat-stm32mp1/scmi_server.c
/optee_os/core/arch/arm/plat-stm32mp1/stm32_util.h
/optee_os/core/arch/arm/plat-sunxi/conf.mk
/optee_os/core/arch/arm/plat-synquacer/conf.mk
/optee_os/core/arch/arm/plat-ti/a9_plat_init.S
/optee_os/core/arch/arm/plat-ti/api_monitor_index_a15.h
/optee_os/core/arch/arm/plat-ti/api_monitor_index_a9.h
/optee_os/core/arch/arm/plat-ti/conf.mk
/optee_os/core/arch/arm/plat-ti/platform_config.h
/optee_os/core/arch/arm/plat-ti/sm_platform_handler_a15.c
/optee_os/core/arch/arm/plat-ti/sm_platform_handler_a9.c
/optee_os/core/arch/arm/plat-ti/ti_pl310.c
/optee_os/core/arch/arm/plat-totalcompute/conf.mk
/optee_os/core/arch/arm/plat-uniphier/conf.mk
/optee_os/core/arch/arm/plat-versal/conf.mk
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/arch/arm/plat-zynqmp/conf.mk
/optee_os/core/arch/arm/plat-zynqmp/platform_config.h
/optee_os/core/arch/riscv/kernel/link.mk
/optee_os/core/arch/riscv/kernel/sub.mk
/optee_os/core/arch/riscv/plat-spike/conf.mk
/optee_os/core/arch/riscv/plat-spike/sub.mk
/optee_os/core/arch/riscv/riscv.mk
/optee_os/core/crypto.mk
/optee_os/core/crypto/crypto.c
/optee_os/core/drivers/atmel_piobu.c
/optee_os/core/drivers/atmel_rtc.c
/optee_os/core/drivers/atmel_tcb.c
/optee_os/core/drivers/clk/clk-stm32mp15.c
/optee_os/core/drivers/crypto/caam/caam_ctrl.c
/optee_os/core/drivers/crypto/caam/utils/utils_sgt.c
/optee_os/core/drivers/crypto/se050/adaptors/utils/scp_config.c
/optee_os/core/drivers/imx_snvs.c
/optee_os/core/drivers/pm/sam/pm_suspend.S
/optee_os/core/drivers/scmi-msg/base.c
/optee_os/core/drivers/scmi-msg/clock.c
/optee_os/core/drivers/scmi-msg/common.h
/optee_os/core/drivers/scmi-msg/entry.c
/optee_os/core/drivers/scmi-msg/shm_msg.c
/optee_os/core/drivers/scmi-msg/smt.c
/optee_os/core/drivers/scmi-msg/sub.mk
/optee_os/core/drivers/scmi-msg/voltage_domain.c
/optee_os/core/drivers/smccc_trng.c
/optee_os/core/drivers/sub.mk
/optee_os/core/drivers/tpm2/sub.mk
/optee_os/core/drivers/tpm2/tpm2_chip.c
/optee_os/core/drivers/tpm2/tpm2_cmd.c
/optee_os/core/drivers/tpm2/tpm2_tcg.c
/optee_os/core/drivers/xiphera_trng.c
/optee_os/core/include/crypto/crypto.h
/optee_os/core/include/drivers/atmel_rtc.h
/optee_os/core/include/drivers/gic.h
/optee_os/core/include/drivers/imx_snvs.h
/optee_os/core/include/drivers/scmi-msg.h
/optee_os/core/include/drivers/tpm2_chip.h
/optee_os/core/include/dt-bindings/gpio/atmel,piobu.h
/optee_os/core/include/io.h
/optee_os/core/include/kernel/tcg.h
/optee_os/core/include/mm/vm.h
/optee_os/core/include/tpm2.h
/optee_os/core/kernel/dt_driver.c
/optee_os/core/kernel/sub.mk
/optee_os/core/kernel/tcg.c
/optee_os/core/lib/libtomcrypt/acipher_helpers.h
/optee_os/core/lib/libtomcrypt/src/pk/ec25519/sub.mk
/optee_os/core/lib/libtomcrypt/src/pk/sub.mk
/optee_os/core/lib/libtomcrypt/src/pk/x25519/sub.mk
/optee_os/core/lib/libtomcrypt/src/pk/x25519/x25519_make_key.c
/optee_os/core/lib/libtomcrypt/src/sub.mk
/optee_os/core/lib/libtomcrypt/sub.mk
/optee_os/core/lib/libtomcrypt/tomcrypt.c
/optee_os/core/lib/libtomcrypt/x25519.c
/optee_os/core/mm/vm.c
/optee_os/core/pta/scmi.c
/optee_os/core/tee/tee_svc_cryp.c
/optee_os/ldelf/ta_elf_rel.c
/optee_os/lib/libutee/include/pta_scmi_client.h
/optee_os/lib/libutee/include/tee_api_defines.h
/optee_os/lib/libutee/include/tee_api_defines_extensions.h
/optee_os/lib/libutee/include/utee_defines.h
/optee_os/lib/libutee/tee_api_operations.c
ext/arch/riscv/sub.mk
isoc/arch/riscv/sub.mk
/optee_os/mk/config.mk
/optee_os/mk/subdir.mk
/optee_os/scripts/bin_to_c.py
/optee_os/scripts/symbolize.py
f21d4ead04-May-2022 Jens Wiklander <jens.wiklander@linaro.org>

libutils: fix MTE error in realloc()

With memory tagging realloc() should only untag the old buffer if the
allocation of a new buffer is successful.

The implementation of realloc() prior to this pa

libutils: fix MTE error in realloc()

With memory tagging realloc() should only untag the old buffer if the
allocation of a new buffer is successful.

The implementation of realloc() prior to this patch is based on bgetr().
This is not so convenient with MTE enabled since the old buffer must be
untagged before calling bgetr(). If realloc() fails the memory tags must
be restored, but this was not done.

Restoring the tags is made somewhat more complicated by the fact that
the size reported by bget_buf_size() may actually be larger than the
size of the tagged buffer. Memalign() is sometimes forced to allocate
buffers larger than requested in order to honor the requested alignment.

So instead of using bgetr(), realloc() is implemented using bget(),
memcpy(), memset() and brel() as needed. This is the same thing that
bgetr() did, except that the old buffer is not untagged until a new
buffer has been successfully allocated.

Fixes: 08a5c4f9ae42 ("libutils: add MTE support in malloc() and friends")
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (vexpress-qemu_armv8a gp_20056)
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

08a5c4f912-Apr-2022 Jens Wiklander <jens.wiklander@linaro.org>

libutils: add MTE support in malloc() and friends

Adds support for memory tagging using the hardware assisted Armv8.5-A
Memory Tagging Extension in malloc() and friends.

When allocating memory the

libutils: add MTE support in malloc() and friends

Adds support for memory tagging using the hardware assisted Armv8.5-A
Memory Tagging Extension in malloc() and friends.

When allocating memory the acquired memory range in tagged a special
pointer with the tag coded in the top bits of the pointer. Accessing
this memory without the coded tag will result in a Tag Check Exception.

MTE is enabled for both OP-TEE core and TAs at the same time with
CFG_MEMTAG=y.

When the memory is freed it's untagged again. All accesses to heap
memory using old/stale pointers will be caught. This is an efficient
method to catch use-after-free and buffer overruns on the heap. The
buffer overruns are limited in granularity to blocks of 16 bytes.
However, the heap itself is also managed in blocks of 16 bytes so
smaller buffer overruns will not damage the heap.

Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

a0e8ffe904-Apr-2022 Jens Wiklander <jens.wiklander@linaro.org>

core: add support for MTE

Adds support for the Armv8.5-A Memory Tagging Extension with
CFG_MEMTAG=y.

A memtag.h API is introduced to handle this extension. If CFG_MEMTAG=n
the API doesn't add any o

core: add support for MTE

Adds support for the Armv8.5-A Memory Tagging Extension with
CFG_MEMTAG=y.

A memtag.h API is introduced to handle this extension. If CFG_MEMTAG=n
the API doesn't add any overhead and the behaviour is unchanged. With
CFG_MEMTAG=y a check is performed to see if the platform can support MTE
and the API is dynamically configured accordingly. This means that it's
safe to have CFG_MEMTAG=y even for platforms not supporting MTE. There
will be some minimal overhead then, but likely not noticeable.

An entry is also added in the TEE_PROPSET_TEE_IMPLEMENTATION for a u32
property "org.trustedfirmware.optee.cpu.feat_memtag_implemented". The
property is set to a non-zero value only if CFG_CORE_MEMTAG is
configured and the underlying CPU supports FEAT_MTE.

This commit still only uses the default tag with the value 0 resulting
in unchanged pointers when accessing memory. However, all plumbing is in
place allowing for instance tagging of the heap in a later commit.

Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

466162e212-Apr-2022 Jens Wiklander <jens.wiklander@linaro.org>

libutils: refactor heap tagging

Refactors the heap tagging with CFG_CORE_SANITIZE_KADDRESS to use two new
hooks maybe_tag_buf() and maybe_untag_buf().

maybe_tag_buf() is called from raw_malloc_retu

libutils: refactor heap tagging

Refactors the heap tagging with CFG_CORE_SANITIZE_KADDRESS to use two new
hooks maybe_tag_buf() and maybe_untag_buf().

maybe_tag_buf() is called from raw_malloc_return_hook() which is called
after bget(). maybe_untag_buf() is called before brel() is called.

This removes some of the local modifications to bget.c.

Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

f0ef3bea26-Apr-2022 Sumit Garg <sumit.garg@linaro.org>

ftrace: Refactor ftrace buffer dump implementation

Current implementation does a lot of tricky bits with ftrace buffer
pointer. It also leads to false positive -Warray-bounds warnings with
GCC 11.2

ftrace: Refactor ftrace buffer dump implementation

Current implementation does a lot of tricky bits with ftrace buffer
pointer. It also leads to false positive -Warray-bounds warnings with
GCC 11.2 toolchain as well. So refactor it to use array indexes instead.
Also, move hardcoded ftrace line sizes to macros instead for better
understanding.

Signed-off-by: Sumit Garg <sumit.garg@linaro.org>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (vexpress-qemu_armv8a)

show more ...


/optee_os/.azure-pipelines.yml
/optee_os/CHANGELOG.md
/optee_os/MAINTAINERS
/optee_os/Makefile
/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/dts/dt_driver_test.dtsi
/optee_os/core/arch/arm/dts/embedded_dtb_test.dts
/optee_os/core/arch/arm/dts/stm32mp151.dtsi
/optee_os/core/arch/arm/dts/stm32mp157c-ed1.dts
/optee_os/core/arch/arm/dts/stm32mp15xx-dkx.dtsi
/optee_os/core/arch/arm/include/arm.h
/optee_os/core/arch/arm/include/kernel/secure_partition.h
/optee_os/core/arch/arm/include/kernel/thread_arch.h
/optee_os/core/arch/arm/include/kernel/thread_private_arch.h
/optee_os/core/arch/arm/kernel/asm-defines.c
/optee_os/core/arch/arm/kernel/kern.ld.S
/optee_os/core/arch/arm/kernel/link.mk
/optee_os/core/arch/arm/kernel/link_dummy.ld
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/kernel/spmc_sp_handler.c
/optee_os/core/arch/arm/kernel/stmm_sp.c
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_a32.S
/optee_os/core/arch/arm/kernel/thread_a64.S
/optee_os/core/arch/arm/mm/core_mmu_lpae.c
/optee_os/core/arch/arm/mm/core_mmu_v7.c
/optee_os/core/arch/arm/mm/mobj_dyn_shm.c
/optee_os/core/arch/arm/mm/mobj_ffa.c
/optee_os/core/arch/arm/mm/sp_mem.c
/optee_os/core/arch/arm/plat-aspeed/platform_ast2600.c
/optee_os/core/arch/arm/plat-imx/crypto_conf.mk
/optee_os/core/arch/arm/plat-imx/drivers/tzc380.c
/optee_os/core/arch/arm/plat-imx/link.mk
/optee_os/core/arch/arm/plat-imx/registers/imx6.h
/optee_os/core/arch/arm/plat-imx/registers/imx7.h
/optee_os/core/arch/arm/plat-imx/registers/imx8m-crm.h
/optee_os/core/arch/arm/plat-imx/registers/imx8m.h
/optee_os/core/arch/arm/plat-imx/registers/imx8q.h
/optee_os/core/arch/arm/plat-k3/main.c
/optee_os/core/arch/arm/plat-marvell/main.c
/optee_os/core/arch/arm/plat-mediatek/main.c
/optee_os/core/arch/arm/plat-rockchip/platform_config.h
/optee_os/core/arch/arm/plat-sprd/main.c
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pmic.c
/optee_os/core/arch/arm/plat-stm32mp1/main.c
/optee_os/core/arch/arm/plat-stm32mp1/platform_config.h
/optee_os/core/arch/arm/plat-stm32mp1/scmi_server.c
/optee_os/core/arch/arm/plat-stm32mp1/stm32_util.h
/optee_os/core/arch/arm/plat-synquacer/main.c
/optee_os/core/arch/arm/plat-totalcompute/main.c
/optee_os/core/arch/arm/plat-uniphier/main.c
/optee_os/core/arch/arm/plat-versal/conf.mk
/optee_os/core/arch/arm/plat-versal/main.c
/optee_os/core/arch/arm/plat-versal/platform_config.h
/optee_os/core/arch/arm/plat-versal/sub.mk
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/arm/plat-vexpress/platform_config.h
/optee_os/core/arch/arm/plat-zynqmp/main.c
/optee_os/core/drivers/clk/clk-stm32-core.c
/optee_os/core/drivers/clk/clk-stm32-core.h
/optee_os/core/drivers/clk/clk-stm32mp13.c
/optee_os/core/drivers/clk/clk-stm32mp15.c
/optee_os/core/drivers/clk/clk_dt.c
/optee_os/core/drivers/clk/sub.mk
/optee_os/core/drivers/crypto/aspeed/hace_ast2600.c
/optee_os/core/drivers/crypto/aspeed/hace_ast2600.h
/optee_os/core/drivers/crypto/caam/caam_ctrl.c
/optee_os/core/drivers/crypto/caam/caam_jr.c
/optee_os/core/drivers/crypto/caam/hal/common/hal_jr.c
/optee_os/core/drivers/crypto/caam/utils/utils_dmaobj.c
/optee_os/core/drivers/crypto/caam/utils/utils_mem.c
/optee_os/core/drivers/crypto/crypto_api/cipher/cipher.c
/optee_os/core/drivers/crypto/crypto_api/math/modulus.c
/optee_os/core/drivers/crypto/stm32/stm32_cryp.c
/optee_os/core/drivers/crypto/stm32/stm32_cryp.h
/optee_os/core/drivers/imx_i2c.c
/optee_os/core/drivers/stm32_iwdg.c
/optee_os/core/drivers/stm32_tamp.c
/optee_os/core/drivers/stpmic1.c
/optee_os/core/drivers/sub.mk
/optee_os/core/drivers/tpm2/sub.mk
/optee_os/core/drivers/tpm2/tpm2_chip.c
/optee_os/core/drivers/tpm2/tpm2_cmd.c
/optee_os/core/drivers/tpm2/tpm2_mmio.c
/optee_os/core/drivers/tpm2/tpm2_ptp_fifo.c
/optee_os/core/drivers/tzc380.c
/optee_os/core/include/drivers/stm32_iwdg.h
/optee_os/core/include/drivers/stm32_tamp.h
/optee_os/core/include/drivers/stm32mp13_rcc.h
/optee_os/core/include/drivers/stm32mp_dt_bindings.h
/optee_os/core/include/drivers/stpmic1.h
/optee_os/core/include/drivers/stpmic1_regulator.h
/optee_os/core/include/drivers/tpm2_chip.h
/optee_os/core/include/drivers/tpm2_cmd.h
/optee_os/core/include/drivers/tpm2_mmio.h
/optee_os/core/include/drivers/tpm2_ptp_fifo.h
/optee_os/core/include/dt-bindings/clock/stm32mp13-clks.h
/optee_os/core/include/dt-bindings/clock/stm32mp13-clksrc.h
/optee_os/core/include/dt-bindings/regulator/st,stm32mp15-regulator.h
/optee_os/core/include/dt-bindings/reset/stm32mp13-resets.h
/optee_os/core/include/io.h
/optee_os/core/include/kernel/dt.h
/optee_os/core/include/kernel/dt_driver.h
/optee_os/core/include/kernel/linker.h
/optee_os/core/include/kernel/tpm.h
/optee_os/core/include/mm/core_mmu.h
/optee_os/core/include/mm/sp_mem.h
/optee_os/core/include/tpm2.h
/optee_os/core/kernel/dt.c
/optee_os/core/kernel/dt_driver.c
/optee_os/core/kernel/dt_driver_test.c
/optee_os/core/kernel/sub.mk
/optee_os/core/kernel/tee_ta_manager.c
/optee_os/core/kernel/tpm.c
/optee_os/core/kernel/user_ta.c
/optee_os/core/lib/libtomcrypt/ecc.c
/optee_os/core/mm/core_mmu.c
/optee_os/core/mm/fobj.c
/optee_os/core/mm/mobj.c
/optee_os/core/pta/attestation.c
/optee_os/core/pta/sub.mk
/optee_os/core/pta/tests/invoke.c
/optee_os/core/pta/tests/misc.c
/optee_os/core/pta/tests/misc.h
/optee_os/core/sub.mk
/optee_os/core/tee/tee_rpmb_fs.c
/optee_os/core/tee/tee_svc_cryp.c
/optee_os/lib/libmbedtls/core/ecc.c
/optee_os/lib/libutee/include/pta_attestation.h
/optee_os/lib/libutee/include/pta_invoke_tests.h
ext/ftrace/ftrace.c
/optee_os/mk/aosp_optee.mk
/optee_os/mk/clang.mk
/optee_os/mk/config.mk
/optee_os/scripts/get_maintainer.py
/optee_os/scripts/print_tee_hash.py
/optee_os/scripts/ts_bin_to_c.py
/optee_os/ta/pkcs11/src/pkcs11_attributes.c
/optee_os/ta/pkcs11/src/processing_symm.c
/optee_os/ta/pkcs11/src/token_capabilities.c
/optee_os/ta/ta.mk
487f8cd201-Feb-2022 Jerome Forissier <jerome@forissier.org>

core: compiler.h: introduce __relrodata_unpaged(x)

Introduce macro __relrodata_unpaged(x) to mark data that need to be
unpaged and are essentially read-only but may contain relocations when
ASLR is

core: compiler.h: introduce __relrodata_unpaged(x)

Introduce macro __relrodata_unpaged(x) to mark data that need to be
unpaged and are essentially read-only but may contain relocations when
ASLR is enabled, hence "relocatable read-only". When ASLR is turned off,
the macro is identical to __rodata_unpaged(x). When ASLR is on however,
the data is emitted in section .data.rel.ro.__unpaged.x which is later
gathered by the linker file into the output section .data.rel.ro which
is mapped read only at runtime (after relocations are processed) and
is also unpaged (when pager is enabled).

Signed-off-by: Jerome Forissier <jerome@forissier.org>
Acked-by: Sumit Garg <sumit.garg@linaro.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...


/optee_os/core/arch/arm/dts/sama5d2.dtsi
/optee_os/core/arch/arm/include/kernel/thread_arch.h
/optee_os/core/arch/arm/include/optee_ffa.h
/optee_os/core/arch/arm/include/sm/optee_smc.h
/optee_os/core/arch/arm/kernel/asm-defines.c
/optee_os/core/arch/arm/kernel/entry_a32.S
/optee_os/core/arch/arm/kernel/entry_a64.S
/optee_os/core/arch/arm/kernel/kern.ld.S
/optee_os/core/arch/arm/kernel/link_dummy.ld
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_a64.S
/optee_os/core/arch/arm/kernel/thread_optee_smc.c
/optee_os/core/arch/arm/kernel/thread_optee_smc_a64.S
/optee_os/core/arch/arm/kernel/thread_spmc.c
/optee_os/core/arch/arm/mm/core_mmu_lpae.c
/optee_os/core/arch/arm/mm/core_mmu_v7.c
/optee_os/core/arch/arm/mm/mobj_dyn_shm.c
/optee_os/core/arch/arm/mm/mobj_ffa.c
/optee_os/core/arch/arm/mm/sp_mem.c
/optee_os/core/arch/arm/mm/tee_pager.c
/optee_os/core/arch/arm/plat-aspeed/platform_ast2600.c
/optee_os/core/arch/arm/plat-aspeed/platform_config.h
/optee_os/core/arch/arm/plat-imx/drivers/imx_csu.c
/optee_os/core/arch/arm/plat-imx/imx-common.c
/optee_os/core/arch/arm/plat-imx/main.c
/optee_os/core/arch/arm/plat-imx/pm/pm-imx7.c
/optee_os/core/arch/arm/plat-ls/conf.mk
/optee_os/core/arch/arm/plat-ls/main.c
/optee_os/core/arch/arm/plat-ls/platform_config.h
/optee_os/core/arch/arm/plat-rcar/conf.mk
/optee_os/core/arch/arm/plat-rcar/main.c
/optee_os/core/arch/arm/plat-rcar/platform_config.h
/optee_os/core/arch/arm/plat-rcar/romapi_call.S
/optee_os/core/arch/arm/plat-rcar/sub.mk
/optee_os/core/arch/arm/plat-rockchip/main.c
/optee_os/core/arch/arm/plat-rzn1/main.c
/optee_os/core/arch/arm/plat-sam/conf.mk
/optee_os/core/arch/arm/plat-stm/main.c
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/drivers/sub.mk
/optee_os/core/arch/arm/plat-stm32mp1/main.c
/optee_os/core/arch/arm/plat-stm32mp1/scmi_server.c
/optee_os/core/arch/arm/plat-stm32mp1/stm32_util.h
/optee_os/core/arch/arm/plat-sunxi/main.c
/optee_os/core/arch/arm/plat-ti/a9_plat_init.S
/optee_os/core/arch/arm/plat-ti/main.c
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/arm/plat-zynq7k/main.c
/optee_os/core/arch/arm/tee/entry_fast.c
/optee_os/core/drivers/atmel_rtc.c
/optee_os/core/drivers/crypto/aspeed/crypto_ast2600.c
/optee_os/core/drivers/crypto/aspeed/hace_ast2600.c
/optee_os/core/drivers/crypto/aspeed/hace_ast2600.h
/optee_os/core/drivers/crypto/aspeed/sub.mk
/optee_os/core/drivers/crypto/crypto_api/acipher/rsassa.c
/optee_os/core/drivers/crypto/se050/session.c
/optee_os/core/drivers/crypto/stm32/stm32_cryp.c
/optee_os/core/drivers/crypto/stm32/stm32_cryp.h
/optee_os/core/drivers/crypto/sub.mk
/optee_os/core/drivers/gic.c
/optee_os/core/drivers/rstctrl/stm32_rstctrl.c
/optee_os/core/drivers/rstctrl/sub.mk
/optee_os/core/drivers/rtc/rtc.c
/optee_os/core/drivers/rtc/sub.mk
/optee_os/core/drivers/stm32_gpio.c
/optee_os/core/drivers/sub.mk
/optee_os/core/include/drivers/gic.h
/optee_os/core/include/drivers/rtc.h
/optee_os/core/include/drivers/stm32mp1_rcc.h
/optee_os/core/include/kernel/boot.h
/optee_os/core/include/kernel/linker.h
/optee_os/core/include/kernel/thread_private.h
/optee_os/core/include/mm/core_mmu.h
/optee_os/core/include/mm/mobj.h
/optee_os/core/include/mm/tee_mmu_types.h
/optee_os/core/include/scattered_array.h
/optee_os/core/include/tee/entry_std.h
/optee_os/core/kernel/notif.c
/optee_os/core/kernel/thread.c
/optee_os/core/mm/core_mmu.c
/optee_os/core/mm/mobj.c
/optee_os/core/mm/vm.c
/optee_os/core/pta/rtc.c
/optee_os/core/pta/sub.mk
/optee_os/core/tee/entry_std.c
/optee_os/core/tee/fs_dirfile.c
/optee_os/core/tee/tee_svc_storage.c
/optee_os/lib/libutee/include/pta_rtc.h
/optee_os/lib/libutee/tee_api_objects.c
ext/include/compiler.h
/optee_os/mk/config.mk
/optee_os/scripts/gen_tee_bin.py
/optee_os/ta/pkcs11/include/pkcs11_ta.h
/optee_os/ta/pkcs11/src/pkcs11_attributes.c
/optee_os/ta/pkcs11/src/processing.c
/optee_os/ta/pkcs11/src/processing.h
/optee_os/ta/pkcs11/src/processing_asymm.c
/optee_os/ta/pkcs11/src/processing_ec.c
/optee_os/ta/pkcs11/src/token_capabilities.c
4516e38d14-Feb-2022 Jens Wiklander <jens.wiklander@linaro.org>

assert.h: add static_assert

Adds the static_assert macro from C11.

Acked-by: Marouene Boubakri <marouene.boubakri@nxp.com>
Reviewed-by: Jerome Forissier <jerome@forissier.org>
Signed-off-by: Jens W

assert.h: add static_assert

Adds the static_assert macro from C11.

Acked-by: Marouene Boubakri <marouene.boubakri@nxp.com>
Reviewed-by: Jerome Forissier <jerome@forissier.org>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

7124d49728-Dec-2021 Marouene Boubakri <marouene.boubakri@nxp.com>

lib: libutils: compiler.h: set trailing comment according to target

In GNU assembler the comment character is target specific. GNU AS for
risc-v complains about '/' not recognized as character, ther

lib: libutils: compiler.h: set trailing comment according to target

In GNU assembler the comment character is target specific. GNU AS for
risc-v complains about '/' not recognized as character, therefore,
replace it with '#' to avoid errors.

Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...


/optee_os/.azure-pipelines.yml
/optee_os/Makefile
/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/dts/at91-sama5d27_som1_ek.dts
/optee_os/core/arch/arm/dts/at91-sama5d2_xplained.dts
/optee_os/core/arch/arm/dts/sama5d2.dtsi
/optee_os/core/arch/arm/include/arm32.h
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/include/kernel/boot.h
/optee_os/core/arch/arm/include/kernel/misc.h
/optee_os/core/arch/arm/include/kernel/thread_arch.h
/optee_os/core/arch/arm/include/kernel/thread_private_arch.h
/optee_os/core/arch/arm/include/kernel/thread_spmc.h
/optee_os/core/arch/arm/include/mm/core_mmu_arch.h
/optee_os/core/arch/arm/kernel/abort.c
/optee_os/core/arch/arm/kernel/asm-defines.c
/optee_os/core/arch/arm/kernel/boot.c
/optee_os/core/arch/arm/kernel/delay.c
/optee_os/core/arch/arm/kernel/entry_a32.S
/optee_os/core/arch/arm/kernel/entry_a64.S
/optee_os/core/arch/arm/kernel/link_dummies_paged.c
/optee_os/core/arch/arm/kernel/misc_a32.S
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/kernel/spmc_sp_handler.c
/optee_os/core/arch/arm/kernel/stmm_sp.c
/optee_os/core/arch/arm/kernel/sub.mk
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_a32.S
/optee_os/core/arch/arm/kernel/thread_a64.S
/optee_os/core/arch/arm/kernel/thread_optee_smc.c
/optee_os/core/arch/arm/kernel/thread_optee_smc_a32.S
/optee_os/core/arch/arm/kernel/thread_optee_smc_a64.S
/optee_os/core/arch/arm/kernel/thread_spmc.c
/optee_os/core/arch/arm/kernel/thread_spmc_a32.S
/optee_os/core/arch/arm/kernel/thread_spmc_a64.S
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/core_mmu_lpae.c
/optee_os/core/arch/arm/mm/core_mmu_v7.c
/optee_os/core/arch/arm/mm/mobj_ffa.c
/optee_os/core/arch/arm/plat-sam/conf.mk
/optee_os/core/arch/arm/plat-sam/freq.c
/optee_os/core/arch/arm/plat-sam/nsec-service/sm_platform_handler.c
/optee_os/core/arch/arm/plat-sam/nsec-service/smc_ids.h
/optee_os/core/arch/arm/plat-sam/nsec-service/sub.mk
/optee_os/core/arch/arm/plat-sam/sub.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/arm/sm/sm.c
/optee_os/core/drivers/atmel_wdt.c
/optee_os/core/drivers/crypto/caam/include/caam_desc_defines.h
/optee_os/core/drivers/crypto/caam/include/caam_desc_helper.h
/optee_os/core/drivers/pm/sam/at91_pm.c
/optee_os/core/drivers/sub.mk
/optee_os/core/drivers/wdt/sub.mk
/optee_os/core/drivers/wdt/watchdog.c
/optee_os/core/drivers/wdt/watchdog_sm.c
/optee_os/core/include/drivers/pm/sam/atmel_pm.h
/optee_os/core/include/drivers/wdt.h
/optee_os/core/include/kernel/abort.h
/optee_os/core/include/kernel/asan.h
/optee_os/core/include/kernel/spinlock.h
/optee_os/core/include/kernel/thread.h
/optee_os/core/include/kernel/thread_private.h
/optee_os/core/include/mm/core_mmu.h
/optee_os/core/include/mm/mobj.h
/optee_os/core/include/mm/pgt_cache.h
/optee_os/core/include/mm/tee_pager.h
/optee_os/core/kernel/spin_lock_debug.c
/optee_os/core/kernel/sub.mk
/optee_os/core/kernel/thread.c
/optee_os/core/mm/core_mmu.c
/optee_os/core/mm/sub.mk
/optee_os/core/mm/vm.c
ext/include/compiler.h
/optee_os/mk/config.mk
ed227bc621-Dec-2021 Marouene Boubakri <marouene.boubakri@nxp.com>

lib: libutils: isoc: remove unused thread.h from bget_malloc.c

This commit removes thread.h from lib/libutils/isoc/bget_malloc.c since
it is not used, but also to eliminate the dependency between ge

lib: libutils: isoc: remove unused thread.h from bget_malloc.c

This commit removes thread.h from lib/libutils/isoc/bget_malloc.c since
it is not used, but also to eliminate the dependency between generic
libraries code and architecture-specific core functions.

Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Acked-by: Jerome Forissier <jerome@forissier.org>

show more ...


/optee_os/.azure-pipelines.yml
/optee_os/CHANGELOG.md
/optee_os/MAINTAINERS
/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/dts/sama5d2.dtsi
/optee_os/core/arch/arm/include/arm.h
/optee_os/core/arch/arm/include/arm32_macros.S
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/include/arm64_macros.S
/optee_os/core/arch/arm/include/ffa.h
/optee_os/core/arch/arm/include/kernel/boot.h
/optee_os/core/arch/arm/include/kernel/secure_partition.h
/optee_os/core/arch/arm/include/kernel/spmc_sp_handler.h
/optee_os/core/arch/arm/include/kernel/thread.h
/optee_os/core/arch/arm/kernel/asm-defines.c
/optee_os/core/arch/arm/kernel/boot.c
/optee_os/core/arch/arm/kernel/entry_a32.S
/optee_os/core/arch/arm/kernel/entry_a64.S
/optee_os/core/arch/arm/kernel/kern.ld.S
/optee_os/core/arch/arm/kernel/link.mk
/optee_os/core/arch/arm/kernel/link_dummy.ld
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/kernel/spmc_sp_handler.c
/optee_os/core/arch/arm/kernel/stmm_sp.c
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_a64.S
/optee_os/core/arch/arm/kernel/thread_optee_smc.c
/optee_os/core/arch/arm/kernel/thread_optee_smc_a32.S
/optee_os/core/arch/arm/kernel/thread_optee_smc_a64.S
/optee_os/core/arch/arm/kernel/thread_private.h
/optee_os/core/arch/arm/kernel/thread_spmc.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/mobj_dyn_shm.c
/optee_os/core/arch/arm/mm/mobj_ffa.c
/optee_os/core/arch/arm/mm/sp_mem.c
/optee_os/core/arch/arm/mm/sub.mk
/optee_os/core/arch/arm/plat-aspeed/conf.mk
/optee_os/core/arch/arm/plat-aspeed/core_pos_a32.S
/optee_os/core/arch/arm/plat-aspeed/platform_ast2600.c
/optee_os/core/arch/arm/plat-aspeed/platform_config.h
/optee_os/core/arch/arm/plat-aspeed/sub.mk
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/crypto_conf.mk
/optee_os/core/arch/arm/plat-imx/imx-common.c
/optee_os/core/arch/arm/plat-imx/imx-regs.h
/optee_os/core/arch/arm/plat-imx/imx.h
/optee_os/core/arch/arm/plat-imx/registers/imx7ulp.h
/optee_os/core/arch/arm/plat-imx/registers/imx8ulp-crm.h
/optee_os/core/arch/arm/plat-imx/registers/imx8ulp.h
/optee_os/core/arch/arm/plat-ls/crypto_conf.mk
/optee_os/core/arch/arm/plat-ls/platform_config.h
/optee_os/core/arch/arm/plat-sam/conf.mk
/optee_os/core/arch/arm/plat-sam/main.c
/optee_os/core/arch/arm/plat-sam/matrix.c
/optee_os/core/arch/arm/plat-sam/pm/psci.c
/optee_os/core/arch/arm/plat-sam/pm/sub.mk
/optee_os/core/arch/arm/plat-sam/sam_sfr.h
/optee_os/core/arch/arm/plat-sam/sub.mk
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pmic.c
/optee_os/core/arch/arm/plat-stm32mp1/drivers/sub.mk
/optee_os/core/arch/arm/plat-stm32mp1/link_dummies_paged.c
/optee_os/core/arch/arm/plat-stm32mp1/main.c
/optee_os/core/arch/arm/plat-stm32mp1/scmi_server.c
/optee_os/core/arch/arm/plat-stm32mp1/shared_resources.c
/optee_os/core/arch/arm/plat-stm32mp1/stm32_util.h
/optee_os/core/arch/arm/plat-stm32mp1/sub.mk
/optee_os/core/arch/arm/plat-totalcompute/sub.mk
/optee_os/core/arch/arm/plat-vexpress/sub.mk
/optee_os/core/arch/arm/plat-zynqmp/conf.mk
/optee_os/core/arch/arm/plat-zynqmp/main.c
/optee_os/core/arch/arm/plat-zynqmp/platform_config.h
/optee_os/core/arch/arm/sm/pm_a32.S
/optee_os/core/drivers/atmel_rstc.c
/optee_os/core/drivers/atmel_saic.c
/optee_os/core/drivers/atmel_shdwc.c
/optee_os/core/drivers/atmel_trng.c
/optee_os/core/drivers/clk/clk-stm32mp15.c
/optee_os/core/drivers/clk/sam/at91_clk.h
/optee_os/core/drivers/clk/sam/at91_generated.c
/optee_os/core/drivers/clk/sam/at91_peripheral.c
/optee_os/core/drivers/clk/sam/at91_pmc.c
/optee_os/core/drivers/clk/sam/at91_programmable.c
/optee_os/core/drivers/clk/sam/sama5d2_clk.c
/optee_os/core/drivers/clk/sub.mk
/optee_os/core/drivers/crypto/caam/caam_rng.c
/optee_os/core/drivers/crypto/caam/hal/common/hal_cfg.c
/optee_os/core/drivers/crypto/caam/hal/common/hal_jr.c
/optee_os/core/drivers/crypto/caam/hal/common/hal_rng.c
/optee_os/core/drivers/crypto/caam/hal/imx_8q/hal_cfg.c
/optee_os/core/drivers/crypto/caam/hal/imx_8q/hal_clk.c
/optee_os/core/drivers/crypto/caam/hal/imx_8q/hal_ctrl.c
/optee_os/core/drivers/crypto/caam/hal/imx_8q/hal_jr.c
/optee_os/core/drivers/crypto/caam/hal/imx_8q/hal_rng.c
/optee_os/core/drivers/crypto/caam/hal/imx_8q/registers/ctrl_regs.h
/optee_os/core/drivers/crypto/caam/hal/imx_8q/sub.mk
/optee_os/core/drivers/crypto/caam/hal/imx_8ulp/hal_clk.c
/optee_os/core/drivers/crypto/caam/hal/imx_8ulp/hal_ctrl.c
/optee_os/core/drivers/crypto/caam/hal/imx_8ulp/hal_jr.c
/optee_os/core/drivers/crypto/caam/hal/imx_8ulp/registers/ctrl_regs.h
/optee_os/core/drivers/crypto/caam/hal/imx_8ulp/sub.mk
/optee_os/core/drivers/crypto/caam/hal/sub.mk
/optee_os/core/drivers/crypto/caam/include/caam_common.h
/optee_os/core/drivers/crypto/caam/include/caam_hal_rng.h
/optee_os/core/drivers/crypto/caam/include/caam_status.h
/optee_os/core/drivers/crypto/caam/utils/utils_mem.c
/optee_os/core/drivers/crypto/crypto_api/acipher/rsa.c
/optee_os/core/drivers/crypto/se050/adaptors/sub.mk
/optee_os/core/drivers/crypto/se050/core/ecc.c
/optee_os/core/drivers/crypto/se050/core/rsa.c
/optee_os/core/drivers/crypto/se050/core/sub.mk
/optee_os/core/drivers/crypto/se050/crypto.mk
/optee_os/core/drivers/crypto/se050/glue/i2c.c
/optee_os/core/drivers/crypto/se050/glue/i2c_imx.c
/optee_os/core/drivers/crypto/se050/glue/include/i2c_native.h
/optee_os/core/drivers/crypto/se050/sub.mk
/optee_os/core/drivers/imx_lpuart.c
/optee_os/core/drivers/imx_uart.c
/optee_os/core/drivers/imx_wdog.c
/optee_os/core/drivers/pl011.c
/optee_os/core/drivers/pm/sam/at91_pm.c
/optee_os/core/drivers/pm/sam/at91_pm.h
/optee_os/core/drivers/pm/sam/pm-defines.c
/optee_os/core/drivers/pm/sam/pm_resume.S
/optee_os/core/drivers/pm/sam/pm_suspend.S
/optee_os/core/drivers/pm/sam/sub.mk
/optee_os/core/drivers/pm/sub.mk
/optee_os/core/drivers/rstctrl/rstctrl.c
/optee_os/core/drivers/rstctrl/sub.mk
/optee_os/core/drivers/serial8250_uart.c
/optee_os/core/drivers/stm32_gpio.c
/optee_os/core/drivers/stm32_i2c.c
/optee_os/core/drivers/stm32_rng.c
/optee_os/core/drivers/stm32_uart.c
/optee_os/core/drivers/sub.mk
/optee_os/core/include/drivers/atmel_saic.h
/optee_os/core/include/drivers/clk_dt.h
/optee_os/core/include/drivers/pm/sam/atmel_pm.h
/optee_os/core/include/drivers/rstctrl.h
/optee_os/core/include/drivers/stm32_i2c.h
/optee_os/core/include/drivers/stm32_uart.h
/optee_os/core/include/drivers/stm32mp1_rcc.h
/optee_os/core/include/io.h
/optee_os/core/include/kernel/dt.h
/optee_os/core/include/kernel/dt_driver.h
/optee_os/core/include/kernel/linker.h
/optee_os/core/include/kernel/pm.h
/optee_os/core/include/kernel/user_mode_ctx_struct.h
/optee_os/core/include/mm/mobj.h
/optee_os/core/include/mm/sp_mem.h
/optee_os/core/include/mm/vm.h
/optee_os/core/kernel/dt.c
/optee_os/core/kernel/dt_driver.c
/optee_os/core/kernel/msg_param.c
/optee_os/core/kernel/pseudo_ta.c
/optee_os/core/kernel/ree_fs_ta.c
/optee_os/core/kernel/user_ta.c
/optee_os/core/mm/mobj.c
/optee_os/core/mm/vm.c
/optee_os/core/pta/benchmark.c
/optee_os/core/pta/gprof.c
/optee_os/core/tee/tadb.c
/optee_os/core/tee/tee_ree_fs.c
/optee_os/core/tee/tee_rpmb_fs.c
/optee_os/core/tee/tee_supp_plugin_rpc.c
/optee_os/core/tee/tee_svc.c
/optee_os/core/tee/tee_svc_cryp.c
/optee_os/ldelf/pauth.c
/optee_os/ldelf/pauth.h
/optee_os/ldelf/sub.mk
/optee_os/lib/libunw/include/unw/unwind.h
/optee_os/lib/libunw/unwind_arm64.c
/optee_os/lib/libutee/tee_api_operations.c
isoc/bget_malloc.c
/optee_os/mk/config.mk
/optee_os/mk/subdir.mk
/optee_os/scripts/sign_encrypt.py
/optee_os/scripts/sign_helper_kms.py
/optee_os/ta/pkcs11/src/object.c
/optee_os/ta/ta.mk
a51d45b517-Dec-2021 Jens Wiklander <jens.wiklander@linaro.org>

libutils: mempool based raw malloc functions

Instead of the old stack like internal memory allocator, use the raw
malloc functions instead for more efficient memory usage.

CFG_WITH_STATS is enabled

libutils: mempool based raw malloc functions

Instead of the old stack like internal memory allocator, use the raw
malloc functions instead for more efficient memory usage.

CFG_WITH_STATS is enabled automatically if
CFG_MEMPOOL_REPORT_LAST_OFFSET is enabled to secure a new dependency in
the code.

Acked-by: Sahil Malhotra <sahil.malhotra@nxp.com>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

680bc37c17-Dec-2021 Jens Wiklander <jens.wiklander@linaro.org>

libutils: export raw malloc functions

Exports raw_{memalign,malloc,free,calloc,realloc}() and also adds
raw_malloc_get_ctx_size(), raw_malloc_init_ctx(),
raw_malloc_add_pool() and raw_malloc_get_sta

libutils: export raw malloc functions

Exports raw_{memalign,malloc,free,calloc,realloc}() and also adds
raw_malloc_get_ctx_size(), raw_malloc_init_ctx(),
raw_malloc_add_pool() and raw_malloc_get_stats().

This allows using the malloc functions to allocate with a independent
memory pool.

Acked-by: Sahil Malhotra <sahil.malhotra@nxp.com>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

b224894f21-Dec-2021 Sumit Garg <sumit.garg@linaro.org>

libutils: provide __sprintf_chk implementation

While building optee_test CXX test-cases natively on aarch64, OP-TEE
build relies on toolchain provided by buildroot. The buildroot toolchain
is built

libutils: provide __sprintf_chk implementation

While building optee_test CXX test-cases natively on aarch64, OP-TEE
build relies on toolchain provided by buildroot. The buildroot toolchain
is built with flag: -fstack-protector-strong which requires
__sprintf_chk symbol provided by standard glibc. For OP-TEE we use a
customized libc which leads to below error:

...
CC out/init.o
CC out/os_test.o
CC out/ta_entry.o
CXX out/cxx_tests.o
CC out/user_ta_header.o
CPP out/ta.lds
LD out/5b9e0e40-2636-11e1-ad9e-0002a5d5c51b.elf
/home/sumit/optee_br/build/../toolchains/aarch64/bin/aarch64-linux-ld.bfd: /home/sumit/optee_br/toolchains/aarch64/bin/../lib/gcc/aarch64-buildroot-linux-gnu/10.3.0/../../../../aarch64-buildroot-linux-gnu/lib/../lib64/libstdc++.a(cp-demangle.o): in function d_append_num': cp-demangle.c:(.text+0x830): undefined reference to __sprintf_chk'
...

Fix this issue by providing __sprintf_chk implementation.

Signed-off-by: Sumit Garg <sumit.garg@linaro.org>
Acked-by: Jerome Forissier <jerome@forissier.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

12345678910>>...15