History log of /optee_os/lib/ (Results 401 – 425 of 883)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
522a1fc325-May-2020 Etienne Carriere <etienne.carriere@linaro.org>

libutee: fix base64 to support strictly well sized buffer

Before this change base64 decoding helper function base64_dec() could
mandated caller to provide an output buffer that was at least 1 byte
l

libutee: fix base64 to support strictly well sized buffer

Before this change base64 decoding helper function base64_dec() could
mandated caller to provide an output buffer that was at least 1 byte
larger than the expected size, depending on the base64 encoded data.
This change fixes the issue as this is obviously not the expected
behavior.

Fixes: https://github.com/OP-TEE/optee_os/issues/3876
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Tested-by Jean-Pierre Miceli <jean-pierre.miceli@heig-vd.ch>

show more ...

614e8b8a26-May-2020 Etienne Carriere <etienne.carriere@linaro.org>

libutee: fix size query for property as binary block

Fix TEE_GetPropertyAsBinaryBlock() to allow caller to query property
size by providing a NULL output buffer reference.

Fixes: https://github.com

libutee: fix size query for property as binary block

Fix TEE_GetPropertyAsBinaryBlock() to allow caller to query property
size by providing a NULL output buffer reference.

Fixes: https://github.com/OP-TEE/optee_os/issues/3876
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

bef3311318-May-2020 Jerome Forissier <jerome@forissier.org>

libutils: confine_array_index: arm64: replace csdb by hint #20

Older compilers such as GCC 6.2 do not support the csdb mnemonic [1].
For better compatibility, replace it by its equivalent: hint #20.

libutils: confine_array_index: arm64: replace csdb by hint #20

Older compilers such as GCC 6.2 do not support the csdb mnemonic [1].
For better compatibility, replace it by its equivalent: hint #20.

CC out/arm/ldelf/ta_elf_rel.o
{standard input}: Assembler messages:
{standard input}:274: Error: unknown mnemonic `csdb' -- `csdb'
{standard input}:371: Error: unknown mnemonic `csdb' -- `csdb'
{standard input}:667: Error: unknown mnemonic `csdb' -- `csdb'
{standard input}:776: Error: unknown mnemonic `csdb' -- `csdb'
{standard input}:1010: Error: unknown mnemonic `csdb' -- `csdb'
{standard input}:1084: Error: unknown mnemonic `csdb' -- `csdb'
{standard input}:1413: Error: unknown mnemonic `csdb' -- `csdb'
{standard input}:1495: Error: unknown mnemonic `csdb' -- `csdb'
{standard input}:1671: Error: unknown mnemonic `csdb' -- `csdb'
make[1]: *** [mk/compile.mk:157: out/arm/ldelf/ta_elf_rel.o] Error 1

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

show more ...

bc5921cd05-May-2020 Maxim Uvarov <maxim.uvarov@linaro.org>

core: device pta: add flag to indicate dependency on tee-supplicant

Some TAs require tee-supplicant to be run. For example fTPM requires
storage services provided by tee-supplicant. When scanning an

core: device pta: add flag to indicate dependency on tee-supplicant

Some TAs require tee-supplicant to be run. For example fTPM requires
storage services provided by tee-supplicant. When scanning and
probe() devices on tee bus we can initialize early drivers which
do not require tee-supplicant and after mount fs and tee-supplicant
run do probe() drivers witch require tee-supplicant.

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

show more ...


/optee_os/.checkpatch.conf
/optee_os/.shippable.yml
/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/include/kernel/generic_boot.h
/optee_os/core/arch/arm/kernel/generic_boot.c
/optee_os/core/arch/arm/kernel/link_dummies_paged.c
/optee_os/core/arch/arm/plat-hisilicon/psci.c
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/link.mk
/optee_os/core/arch/arm/plat-imx/main.c
/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-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_clk.c
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_rcc.h
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_syscfg.c
/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/nsec-service/bsec_svc.c
/optee_os/core/arch/arm/plat-stm32mp1/nsec-service/bsec_svc.h
/optee_os/core/arch/arm/plat-stm32mp1/nsec-service/stm32mp1_smc.h
/optee_os/core/arch/arm/plat-stm32mp1/nsec-service/stm32mp1_svc_setup.c
/optee_os/core/arch/arm/plat-stm32mp1/nsec-service/sub.mk
/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/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/core.mk
/optee_os/core/drivers/crypto/caam/caam_desc.c
/optee_os/core/drivers/crypto/caam/hal/common/hal_ctrl.c
/optee_os/core/drivers/crypto/caam/hal/common/hal_rng.c
/optee_os/core/drivers/crypto/caam/hal/common/registers/version_regs.h
/optee_os/core/drivers/imx_wdog.c
/optee_os/core/drivers/stm32_bsec.c
/optee_os/core/drivers/stm32_etzpc.c
/optee_os/core/drivers/stm32_gpio.c
/optee_os/core/drivers/stm32_rng.c
/optee_os/core/drivers/tzc400.c
/optee_os/core/include/drivers/tzc400.h
/optee_os/core/kernel/console.c
/optee_os/core/kernel/interrupt.c
/optee_os/core/kernel/tpm.c
/optee_os/core/pta/device.c
/optee_os/core/tee/tee_rpmb_fs.c
libutee/include/pta_device.h
libutee/include/user_ta_header.h
/optee_os/mk/subdir.mk
/optee_os/scripts/checkpatch_inc.sh
/optee_os/ta/trusted_keys/entry.c
/optee_os/ta/trusted_keys/include/trusted_keys.h
/optee_os/ta/trusted_keys/sub.mk
/optee_os/ta/trusted_keys/user_ta.mk
/optee_os/ta/trusted_keys/user_ta_header_defines.h
f267456706-May-2020 Sumit Garg <sumit.garg@linaro.org>

libutee: crypto: AE: Explicitly initialize buffer_offs

Explicitly initialize operation param buffer_offs in TEE_AEInit() instead
of relying on TEE_AllocateOperation() as it may cause issues while us

libutee: crypto: AE: Explicitly initialize buffer_offs

Explicitly initialize operation param buffer_offs in TEE_AEInit() instead
of relying on TEE_AllocateOperation() as it may cause issues while using
operation handle allocated once and used in subsequent authenticated
encryption operations.

It is quite similar to how TEE_CipherInit() and init_hash_operation()
initializes buffer_offs.

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

show more ...


/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/stm32mp15xc.dtsi
/optee_os/core/arch/arm/dts/stm32mp15xx-dkx.dtsi
/optee_os/core/arch/arm/dts/stm32mp15xxaa-pinctrl.dtsi
/optee_os/core/arch/arm/dts/stm32mp15xxab-pinctrl.dtsi
/optee_os/core/arch/arm/dts/stm32mp15xxac-pinctrl.dtsi
/optee_os/core/arch/arm/dts/stm32mp15xxad-pinctrl.dtsi
/optee_os/core/arch/arm/include/sm/sm.h
/optee_os/core/arch/arm/include/sm/std_smc.h
/optee_os/core/arch/arm/kernel/generic_boot.c
/optee_os/core/arch/arm/kernel/generic_entry_a32.S
/optee_os/core/arch/arm/kernel/generic_entry_a64.S
/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_a32.S
/optee_os/core/arch/arm/kernel/thread_optee_smc_a64.S
/optee_os/core/arch/arm/mm/core_mmu_v7.c
/optee_os/core/arch/arm/mm/mobj.c
/optee_os/core/arch/arm/mm/mobj_dyn_shm.c
/optee_os/core/arch/arm/mm/tee_pager.c
/optee_os/core/arch/arm/plat-imx/crypto_conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_clk.c
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pmic.c
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pmic.h
/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/pm/psci.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-vexpress/main.c
/optee_os/core/arch/arm/sm/sm.c
/optee_os/core/arch/arm/sm/sm_a32.S
/optee_os/core/crypto/crypto.c
/optee_os/core/drivers/bcm_gpio.c
/optee_os/core/drivers/cdns_uart.c
/optee_os/core/drivers/crypto/caam/blob/caam_blob.c
/optee_os/core/drivers/crypto/caam/blob/sub.mk
/optee_os/core/drivers/crypto/caam/caam_ctrl.c
/optee_os/core/drivers/crypto/caam/hal/common/hal_ctrl.c
/optee_os/core/drivers/crypto/caam/hash/caam_hash.c
/optee_os/core/drivers/crypto/caam/hash/caam_hash_mac.c
/optee_os/core/drivers/crypto/caam/hash/local.h
/optee_os/core/drivers/crypto/caam/hash/sub.mk
/optee_os/core/drivers/crypto/caam/include/caam_blob.h
/optee_os/core/drivers/crypto/caam/include/caam_desc_helper.h
/optee_os/core/drivers/crypto/caam/include/caam_hal_ctrl.h
/optee_os/core/drivers/crypto/caam/include/caam_hash.h
/optee_os/core/drivers/crypto/caam/include/caam_trace.h
/optee_os/core/drivers/crypto/caam/sub.mk
/optee_os/core/drivers/crypto/crypto_api/include/drvcrypt.h
/optee_os/core/drivers/crypto/crypto_api/include/drvcrypt_mac.h
/optee_os/core/drivers/crypto/crypto_api/mac/mac.c
/optee_os/core/drivers/crypto/crypto_api/mac/sub.mk
/optee_os/core/drivers/crypto/crypto_api/sub.mk
/optee_os/core/drivers/gic.c
/optee_os/core/drivers/hi16xx_uart.c
/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/mvebu_uart.c
/optee_os/core/drivers/ns16550.c
/optee_os/core/drivers/pl011.c
/optee_os/core/drivers/pl022_spi.c
/optee_os/core/drivers/pl061_gpio.c
/optee_os/core/drivers/scif.c
/optee_os/core/drivers/serial8250_uart.c
/optee_os/core/drivers/sp805_wdt.c
/optee_os/core/drivers/sprd_uart.c
/optee_os/core/drivers/stih_asc.c
/optee_os/core/drivers/stm32_etzpc.c
/optee_os/core/drivers/stm32_i2c.c
/optee_os/core/drivers/stm32_uart.c
/optee_os/core/drivers/stpmic1.c
/optee_os/core/include/crypto/crypto_impl.h
/optee_os/core/include/drivers/stm32_i2c.h
/optee_os/core/include/dt-bindings/pinctrl/stm32-pinfunc.h
/optee_os/core/include/initcall.h
/optee_os/core/include/keep.h
/optee_os/core/include/kernel/pm.h
/optee_os/core/include/scattered_array.h
/optee_os/core/kernel/asan.c
/optee_os/core/mm/fobj.c
/optee_os/core/pta/tests/interrupt.c
libutee/tee_api_operations.c
/optee_os/scripts/gen_ldelf_hex.py
/optee_os/ta/pkcs11/include/pkcs11_ta.h
/optee_os/ta/pkcs11/src/entry.c
/optee_os/ta/pkcs11/src/pkcs11_token.c
/optee_os/ta/pkcs11/src/pkcs11_token.h
/optee_os/ta/pkcs11/src/serializer.c
/optee_os/ta/pkcs11/src/serializer.h
/optee_os/ta/pkcs11/src/token_capabilities.h
ed3fa83129-Apr-2020 Jerome Forissier <jerome@forissier.org>

libmbedtls: mbedtls_mpi_shrink(): fix possible unwanted truncation

If mbedtls_mpi_shrink() is passed a value for nblimbs that is smaller
than the minimum number of limbs required to store the big nu

libmbedtls: mbedtls_mpi_shrink(): fix possible unwanted truncation

If mbedtls_mpi_shrink() is passed a value for nblimbs that is smaller
than the minimum number of limbs required to store the big number, the
current implementation will unexpectedly truncate the number to the
requested size. It should use the minimal size instead in order not to
corrupt the bigum value.

This issue was introduced in [1] probably as a result of a bad copy
and paste from mbedtls_mpi_grow().

Fixes: [1] commit 98bd5fe350be ("libmbedtls: add mbedtls_mpi_init_mempool()")
Reported-by: Zhenke Ma <zhenke.ma@armchina.com>
Signed-off-by: Jerome Forissier <jerome@forissier.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

7540cb7527-Apr-2020 Etienne Carriere <etienne.carriere@linaro.org>

libutils: confine_array_index: fix clang build trace for Thumb2

Avoid trace 'deprecated instruction in IT block [-Werror,-Winline-asm]'
when building with CLang. The message states performance issue

libutils: confine_array_index: fix clang build trace for Thumb2

Avoid trace 'deprecated instruction in IT block [-Werror,-Winline-asm]'
when building with CLang. The message states performance issue which
is true but prefer the performance cost over the security flaw hence
warning trace is removed without embedded code changed.

Fixes: 2b6dd0df52b4 ("confine_array_index.h: add A32 and T32 versions of confine_array_index()")
Suggested-by: Jerome Forissier <jerome@forissier.org>
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
Acked-by: Jerome Forissier <jerome@forissier.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

c7c0772025-Apr-2020 Etienne Carriere <etienne.carriere@linaro.org>

libutils: confine_array_index: fix 32bit modes implementation

Fix implementation of confine_array_index() for 32bit Arm and Thumb2
modes as previous implementation did not set the return value
expli

libutils: confine_array_index: fix 32bit modes implementation

Fix implementation of confine_array_index() for 32bit Arm and Thumb2
modes as previous implementation did not set the return value
explicitly and relied on luck with the layout of the machine code
to return the correct value.

Fixes: https://github.com/OP-TEE/optee_os/issues/3799
Fixes: 2b6dd0df52b4 ("confine_array_index.h: add A32 and T32 versions of confine_array_index()")
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
Tested-by: Etienne Carriere <etienne.carriere@linaro.org> (qemu,qemu_v8)
Acked-by: Rouven Czerwinski <r.czerwinski@pengutronix.de>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Acked-by: Jerome Forissier <jerome@forissier.org>

show more ...

11fa71b920-Apr-2020 Jerome Forissier <jerome@forissier.org>

Squashed commit upgrading to mbedtls-2.22.0

Squash merging branch import/mbedtls-2.22.0

5cab03377186 ("mk/clang.mk: define libgcc$(sm)")
3607a5386a72 ("core: mbedtls: enable MBEDTLS_ECDH_LEGACY_CON

Squashed commit upgrading to mbedtls-2.22.0

Squash merging branch import/mbedtls-2.22.0

5cab03377186 ("mk/clang.mk: define libgcc$(sm)")
3607a5386a72 ("core: mbedtls: enable MBEDTLS_ECDH_LEGACY_CONTEXT")
896c8845bbda ("mbedtls: remove file md_wrap.c from build")
400b2af54fa0 ("libmbedtls: mbedtls_mpi_exp_mod(): optimize mempool usage")
777827c7af3d ("libmbedtls: mbedtls_mpi_exp_mod(): reduce stack usage")
549e4600678e ("libmbedtls: preserve mempool usage on reinit")
02d636083fe2 ("libmbedtls: mbedtls_mpi_exp_mod() initialize W")
d2ac2b3c92bf ("libmbedtls: fix no CRT issue")
f550879d5be2 ("libmbedtls: add interfaces in mbedtls for context memory operation")
219173d807ce ("libmedtls: mpi_miller_rabin: increase count limit")
7930b0b6b5e4 ("libmbedtls: add mbedtls_mpi_init_mempool()")
78af9fdc120f ("libmbedtls: make mbedtls_mpi_mont*() available")
8f7357271cc2 ("libmbedtls: refine mbedtls license header")
c5993878881f ("mbedtls: configure mbedtls to reach for config")
6f9c587783af ("mbedtls: remove default include/mbedtls/config.h")
3d3bd3b12752 ("Import mbedtls-2.22.0")

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

show more ...


libmbedtls/include/mbedtls_config_kernel.h
libmbedtls/mbedtls/CONTRIBUTING.md
libmbedtls/mbedtls/ChangeLog
libmbedtls/mbedtls/LICENSE
libmbedtls/mbedtls/README.md
libmbedtls/mbedtls/dco.txt
libmbedtls/mbedtls/include/mbedtls/aes.h
libmbedtls/mbedtls/include/mbedtls/aesni.h
libmbedtls/mbedtls/include/mbedtls/arc4.h
libmbedtls/mbedtls/include/mbedtls/aria.h
libmbedtls/mbedtls/include/mbedtls/asn1.h
libmbedtls/mbedtls/include/mbedtls/asn1write.h
libmbedtls/mbedtls/include/mbedtls/base64.h
libmbedtls/mbedtls/include/mbedtls/bignum.h
libmbedtls/mbedtls/include/mbedtls/blowfish.h
libmbedtls/mbedtls/include/mbedtls/bn_mul.h
libmbedtls/mbedtls/include/mbedtls/camellia.h
libmbedtls/mbedtls/include/mbedtls/ccm.h
libmbedtls/mbedtls/include/mbedtls/certs.h
libmbedtls/mbedtls/include/mbedtls/chacha20.h
libmbedtls/mbedtls/include/mbedtls/chachapoly.h
libmbedtls/mbedtls/include/mbedtls/check_config.h
libmbedtls/mbedtls/include/mbedtls/cipher.h
libmbedtls/mbedtls/include/mbedtls/cipher_internal.h
libmbedtls/mbedtls/include/mbedtls/cmac.h
libmbedtls/mbedtls/include/mbedtls/compat-1.3.h
libmbedtls/mbedtls/include/mbedtls/ctr_drbg.h
libmbedtls/mbedtls/include/mbedtls/debug.h
libmbedtls/mbedtls/include/mbedtls/des.h
libmbedtls/mbedtls/include/mbedtls/dhm.h
libmbedtls/mbedtls/include/mbedtls/ecdh.h
libmbedtls/mbedtls/include/mbedtls/ecdsa.h
libmbedtls/mbedtls/include/mbedtls/ecjpake.h
libmbedtls/mbedtls/include/mbedtls/ecp.h
libmbedtls/mbedtls/include/mbedtls/ecp_internal.h
libmbedtls/mbedtls/include/mbedtls/entropy.h
libmbedtls/mbedtls/include/mbedtls/entropy_poll.h
libmbedtls/mbedtls/include/mbedtls/error.h
libmbedtls/mbedtls/include/mbedtls/gcm.h
libmbedtls/mbedtls/include/mbedtls/havege.h
libmbedtls/mbedtls/include/mbedtls/hkdf.h
libmbedtls/mbedtls/include/mbedtls/hmac_drbg.h
libmbedtls/mbedtls/include/mbedtls/md.h
libmbedtls/mbedtls/include/mbedtls/md2.h
libmbedtls/mbedtls/include/mbedtls/md4.h
libmbedtls/mbedtls/include/mbedtls/md5.h
libmbedtls/mbedtls/include/mbedtls/md_internal.h
libmbedtls/mbedtls/include/mbedtls/memory_buffer_alloc.h
libmbedtls/mbedtls/include/mbedtls/net.h
libmbedtls/mbedtls/include/mbedtls/net_sockets.h
libmbedtls/mbedtls/include/mbedtls/nist_kw.h
libmbedtls/mbedtls/include/mbedtls/oid.h
libmbedtls/mbedtls/include/mbedtls/padlock.h
libmbedtls/mbedtls/include/mbedtls/pem.h
libmbedtls/mbedtls/include/mbedtls/pk.h
libmbedtls/mbedtls/include/mbedtls/pk_internal.h
libmbedtls/mbedtls/include/mbedtls/pkcs11.h
libmbedtls/mbedtls/include/mbedtls/pkcs12.h
libmbedtls/mbedtls/include/mbedtls/pkcs5.h
libmbedtls/mbedtls/include/mbedtls/platform.h
libmbedtls/mbedtls/include/mbedtls/platform_time.h
libmbedtls/mbedtls/include/mbedtls/platform_util.h
libmbedtls/mbedtls/include/mbedtls/poly1305.h
libmbedtls/mbedtls/include/mbedtls/psa_util.h
libmbedtls/mbedtls/include/mbedtls/ripemd160.h
libmbedtls/mbedtls/include/mbedtls/rsa.h
libmbedtls/mbedtls/include/mbedtls/rsa_internal.h
libmbedtls/mbedtls/include/mbedtls/sha1.h
libmbedtls/mbedtls/include/mbedtls/sha256.h
libmbedtls/mbedtls/include/mbedtls/sha512.h
libmbedtls/mbedtls/include/mbedtls/ssl.h
libmbedtls/mbedtls/include/mbedtls/ssl_cache.h
libmbedtls/mbedtls/include/mbedtls/ssl_ciphersuites.h
libmbedtls/mbedtls/include/mbedtls/ssl_cookie.h
libmbedtls/mbedtls/include/mbedtls/ssl_internal.h
libmbedtls/mbedtls/include/mbedtls/ssl_ticket.h
libmbedtls/mbedtls/include/mbedtls/threading.h
libmbedtls/mbedtls/include/mbedtls/timing.h
libmbedtls/mbedtls/include/mbedtls/version.h
libmbedtls/mbedtls/include/mbedtls/x509.h
libmbedtls/mbedtls/include/mbedtls/x509_crl.h
libmbedtls/mbedtls/include/mbedtls/x509_crt.h
libmbedtls/mbedtls/include/mbedtls/x509_csr.h
libmbedtls/mbedtls/include/mbedtls/xtea.h
libmbedtls/mbedtls/library/aes.c
libmbedtls/mbedtls/library/asn1parse.c
libmbedtls/mbedtls/library/asn1write.c
libmbedtls/mbedtls/library/bignum.c
libmbedtls/mbedtls/library/ccm.c
libmbedtls/mbedtls/library/certs.c
libmbedtls/mbedtls/library/chacha20.c
libmbedtls/mbedtls/library/chachapoly.c
libmbedtls/mbedtls/library/cipher.c
libmbedtls/mbedtls/library/cipher_wrap.c
libmbedtls/mbedtls/library/cmac.c
libmbedtls/mbedtls/library/ctr_drbg.c
libmbedtls/mbedtls/library/debug.c
libmbedtls/mbedtls/library/des.c
libmbedtls/mbedtls/library/dhm.c
libmbedtls/mbedtls/library/ecdh.c
libmbedtls/mbedtls/library/ecdsa.c
libmbedtls/mbedtls/library/ecjpake.c
libmbedtls/mbedtls/library/ecp.c
libmbedtls/mbedtls/library/ecp_curves.c
libmbedtls/mbedtls/library/entropy.c
libmbedtls/mbedtls/library/entropy_poll.c
libmbedtls/mbedtls/library/error.c
libmbedtls/mbedtls/library/gcm.c
libmbedtls/mbedtls/library/havege.c
libmbedtls/mbedtls/library/hkdf.c
libmbedtls/mbedtls/library/hmac_drbg.c
libmbedtls/mbedtls/library/md.c
libmbedtls/mbedtls/library/md2.c
libmbedtls/mbedtls/library/md4.c
libmbedtls/mbedtls/library/md5.c
libmbedtls/mbedtls/library/net_sockets.c
libmbedtls/mbedtls/library/nist_kw.c
libmbedtls/mbedtls/library/oid.c
libmbedtls/mbedtls/library/pem.c
libmbedtls/mbedtls/library/pk.c
libmbedtls/mbedtls/library/pk_wrap.c
libmbedtls/mbedtls/library/pkcs12.c
libmbedtls/mbedtls/library/pkcs5.c
libmbedtls/mbedtls/library/pkparse.c
libmbedtls/mbedtls/library/pkwrite.c
libmbedtls/mbedtls/library/platform.c
libmbedtls/mbedtls/library/poly1305.c
libmbedtls/mbedtls/library/ripemd160.c
libmbedtls/mbedtls/library/rsa.c
libmbedtls/mbedtls/library/sha1.c
libmbedtls/mbedtls/library/sha256.c
libmbedtls/mbedtls/library/sha512.c
libmbedtls/mbedtls/library/ssl_cache.c
libmbedtls/mbedtls/library/ssl_ciphersuites.c
libmbedtls/mbedtls/library/ssl_cli.c
libmbedtls/mbedtls/library/ssl_cookie.c
libmbedtls/mbedtls/library/ssl_msg.c
libmbedtls/mbedtls/library/ssl_srv.c
libmbedtls/mbedtls/library/ssl_ticket.c
libmbedtls/mbedtls/library/ssl_tls.c
libmbedtls/mbedtls/library/version_features.c
libmbedtls/mbedtls/library/x509.c
libmbedtls/mbedtls/library/x509_create.c
libmbedtls/mbedtls/library/x509_crl.c
libmbedtls/mbedtls/library/x509_crt.c
libmbedtls/mbedtls/library/x509_csr.c
libmbedtls/mbedtls/library/x509write_crt.c
libmbedtls/mbedtls/library/x509write_csr.c
libmbedtls/sub.mk
/optee_os/mk/clang.mk
21282bae16-Apr-2020 Jerome Forissier <jerome@forissier.org>

core: crypto: ECC: make sure key_size is consistent with attributes

TEE_GenerateKey() takes a key_size argument and various attributes. If
the size derived from the attributes is not key_size, we sh

core: crypto: ECC: make sure key_size is consistent with attributes

TEE_GenerateKey() takes a key_size argument and various attributes. If
the size derived from the attributes is not key_size, we should return
TEE_ERROR_BAD_PARAMETERS as per the GP TEE Internal Core API
specification v1.2.1: "If an incorrect or inconsistent attribute is
detected. The checks that are performed depend on the implementation.".

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

show more ...

9f4dcefb16-Apr-2020 Jerome Forissier <jerome@forissier.org>

core: crypto: DH: make sure key_size is consistent with attributes

TEE_GenerateKey() takes a key_size argument and various attributes. For
Diffie-Hellman, if the size of the prime number (TEE_ATTR_D

core: crypto: DH: make sure key_size is consistent with attributes

TEE_GenerateKey() takes a key_size argument and various attributes. For
Diffie-Hellman, if the size of the prime number (TEE_ATTR_DH_PRIME) is
not key_size, we should return TEE_ERROR_BAD_PARAMETERS as per the GP
TEE Internal Core API specification v1.2.1: "If an incorrect or
inconsistent attribute is detected. The checks that are performed
depend on the implementation.".

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

show more ...


/optee_os/.github/issue_template.md
/optee_os/.github/pull_request_template.md
/optee_os/MAINTAINERS
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/nsec-service/stm32mp1_smc.h
/optee_os/core/arch/arm/plat-stm32mp1/nsec-service/stm32mp1_svc_setup.c
/optee_os/core/arch/arm/plat-stm32mp1/scmi_server.c
/optee_os/core/arch/arm/plat-stm32mp1/sub.mk
/optee_os/core/arch/arm/plat-uniphier/conf.mk
/optee_os/core/arch/arm/plat-uniphier/kern.ld.S
/optee_os/core/arch/arm/plat-uniphier/link.mk
/optee_os/core/arch/arm/plat-uniphier/main.c
/optee_os/core/arch/arm/plat-uniphier/platform_config.h
/optee_os/core/arch/arm/plat-uniphier/sub.mk
/optee_os/core/crypto/crypto.c
/optee_os/core/drivers/crypto/caam/caam_desc.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/include/caam_common.h
/optee_os/core/drivers/crypto/caam/include/caam_desc_helper.h
/optee_os/core/drivers/crypto/caam/include/caam_jr.h
/optee_os/core/include/crypto/crypto.h
/optee_os/core/include/dt-bindings/clock/stm32mp1-clks.h
/optee_os/core/include/dt-bindings/reset/stm32mp1-resets.h
/optee_os/core/lib/libtomcrypt/dh.c
/optee_os/core/lib/libtomcrypt/dsa.c
/optee_os/core/tee/tee_svc_cryp.c
libmbedtls/core/dh.c
/optee_os/ta/pkcs11/include/pkcs11_ta.h
/optee_os/ta/pkcs11/src/entry.c
/optee_os/ta/pkcs11/src/persistent_token.c
/optee_os/ta/pkcs11/src/pkcs11_helpers.c
/optee_os/ta/pkcs11/src/pkcs11_helpers.h
/optee_os/ta/pkcs11/src/pkcs11_token.c
/optee_os/ta/pkcs11/src/pkcs11_token.h
b213d8bd08-Apr-2020 Etienne Carriere <etienne.carriere@linaro.org>

pta: invoke_test.pta: add test on null memref parameter

Add command PTA_INVOKE_TESTS_CMD_MEMREF_NULL to test invocation
of a PTA with a memref parameter with a NULL buffer reference.
The PTA should

pta: invoke_test.pta: add test on null memref parameter

Add command PTA_INVOKE_TESTS_CMD_MEMREF_NULL to test invocation
of a PTA with a memref parameter with a NULL buffer reference.
The PTA should successfully be invoked with a valid memref
parameter yet referring to a NULL buffer pointer.

Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
Acked-by: Cedric Neveux <cedric.neveux@nxp.com>

show more ...

5b25c76a07-Apr-2020 Jerome Forissier <jerome@forissier.org>

Squashed commit upgrading to mbedtls-2.16.5

Squash merging branch import/mbedtls-2.16.5

058aefb2bfa4 ("core: mbedtls: use SHA-256 crypto accelerated routines")
bcef9baed8f1 ("core: mbedtls: use SHA

Squashed commit upgrading to mbedtls-2.16.5

Squash merging branch import/mbedtls-2.16.5

058aefb2bfa4 ("core: mbedtls: use SHA-256 crypto accelerated routines")
bcef9baed8f1 ("core: mbedtls: use SHA-1 crypto accelerated routines")
c9359f31db12 ("core: mbedtls: use AES crypto accelerated routines")
0e6c1e2642c7 ("core: merge tee_*_get_digest_size() into a single function")
0cb3c28a2f4d ("libmbedtls: mbedtls_mpi_exp_mod(): optimize mempool usage")
5abf0e6ab72e ("libmbedtls: mbedtls_mpi_exp_mod(): reduce stack usage")
2ccc08ac7fef ("libmbedtls: preserve mempool usage on reinit")
cd2a24648569 ("libmbedtls: mbedtls_mpi_exp_mod() initialize W")
7727182ecb56 ("libmbedtls: fix no CRT issue")
120737075dcf ("libmbedtls: add interfaces in mbedtls for context memory operation")
1126250b3af8 ("libmbedtls: add missing source file chachapoly.c")
23972e9f1c98 ("libmedtls: mpi_miller_rabin: increase count limit")
1fcbc05b3cd2 ("libmbedtls: add mbedtls_mpi_init_mempool()")
66e03f068078 ("libmbedtls: make mbedtls_mpi_mont*() available")
d07e0ce56236 ("libmbedtls: refine mbedtls license header")
491ee2cd0ff4 ("mbedtls: configure mbedtls to reach for config")
9b6cee685d9a ("mbedtls: remove default include/mbedtls/config.h")
84f7467a0a91 ("Import mbedtls-2.16.5")

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

show more ...


/optee_os/core/arch/arm/crypto/aes-gcm-ce.c
/optee_os/core/arch/arm/crypto/aes_armv8a_ce.h
/optee_os/core/arch/arm/crypto/aes_modes_armv8a_ce_a32.S
/optee_os/core/arch/arm/crypto/aes_modes_armv8a_ce_a64.S
/optee_os/core/arch/arm/crypto/ghash-ce-core_a32.S
/optee_os/core/arch/arm/crypto/ghash-ce-core_a64.S
/optee_os/core/arch/arm/include/crypto/ghash-ce-core.h
/optee_os/core/crypto/aes-gcm-ghash-tbl.c
/optee_os/core/crypto/aes-gcm-sw.c
/optee_os/core/crypto/aes-gcm.c
/optee_os/core/crypto/sub.mk
/optee_os/core/include/crypto/internal_aes-gcm.h
/optee_os/core/kernel/lockdep.c
/optee_os/core/tee/tee_svc.c
libmbedtls/mbedtls/CONTRIBUTING.md
libmbedtls/mbedtls/ChangeLog
libmbedtls/mbedtls/README.md
libmbedtls/mbedtls/include/mbedtls/aes.h
libmbedtls/mbedtls/include/mbedtls/aesni.h
libmbedtls/mbedtls/include/mbedtls/arc4.h
libmbedtls/mbedtls/include/mbedtls/asn1write.h
libmbedtls/mbedtls/include/mbedtls/base64.h
libmbedtls/mbedtls/include/mbedtls/bignum.h
libmbedtls/mbedtls/include/mbedtls/bn_mul.h
libmbedtls/mbedtls/include/mbedtls/camellia.h
libmbedtls/mbedtls/include/mbedtls/ccm.h
libmbedtls/mbedtls/include/mbedtls/certs.h
libmbedtls/mbedtls/include/mbedtls/check_config.h
libmbedtls/mbedtls/include/mbedtls/cipher.h
libmbedtls/mbedtls/include/mbedtls/cmac.h
libmbedtls/mbedtls/include/mbedtls/compat-1.3.h
libmbedtls/mbedtls/include/mbedtls/ctr_drbg.h
libmbedtls/mbedtls/include/mbedtls/des.h
libmbedtls/mbedtls/include/mbedtls/dhm.h
libmbedtls/mbedtls/include/mbedtls/ecdh.h
libmbedtls/mbedtls/include/mbedtls/ecdsa.h
libmbedtls/mbedtls/include/mbedtls/ecjpake.h
libmbedtls/mbedtls/include/mbedtls/ecp.h
libmbedtls/mbedtls/include/mbedtls/ecp_internal.h
libmbedtls/mbedtls/include/mbedtls/error.h
libmbedtls/mbedtls/include/mbedtls/gcm.h
libmbedtls/mbedtls/include/mbedtls/havege.h
libmbedtls/mbedtls/include/mbedtls/hkdf.h
libmbedtls/mbedtls/include/mbedtls/hmac_drbg.h
libmbedtls/mbedtls/include/mbedtls/md2.h
libmbedtls/mbedtls/include/mbedtls/md4.h
libmbedtls/mbedtls/include/mbedtls/md5.h
libmbedtls/mbedtls/include/mbedtls/net.h
libmbedtls/mbedtls/include/mbedtls/nist_kw.h
libmbedtls/mbedtls/include/mbedtls/padlock.h
libmbedtls/mbedtls/include/mbedtls/pem.h
libmbedtls/mbedtls/include/mbedtls/pk.h
libmbedtls/mbedtls/include/mbedtls/pkcs12.h
libmbedtls/mbedtls/include/mbedtls/pkcs5.h
libmbedtls/mbedtls/include/mbedtls/platform_util.h
libmbedtls/mbedtls/include/mbedtls/poly1305.h
libmbedtls/mbedtls/include/mbedtls/ripemd160.h
libmbedtls/mbedtls/include/mbedtls/rsa.h
libmbedtls/mbedtls/include/mbedtls/sha1.h
libmbedtls/mbedtls/include/mbedtls/sha256.h
libmbedtls/mbedtls/include/mbedtls/sha512.h
libmbedtls/mbedtls/include/mbedtls/ssl.h
libmbedtls/mbedtls/include/mbedtls/ssl_cache.h
libmbedtls/mbedtls/include/mbedtls/ssl_ciphersuites.h
libmbedtls/mbedtls/include/mbedtls/ssl_cookie.h
libmbedtls/mbedtls/include/mbedtls/ssl_internal.h
libmbedtls/mbedtls/include/mbedtls/ssl_ticket.h
libmbedtls/mbedtls/include/mbedtls/version.h
libmbedtls/mbedtls/include/mbedtls/x509.h
libmbedtls/mbedtls/include/mbedtls/x509_crl.h
libmbedtls/mbedtls/include/mbedtls/x509_crt.h
libmbedtls/mbedtls/include/mbedtls/x509_csr.h
libmbedtls/mbedtls/include/mbedtls/xtea.h
libmbedtls/mbedtls/library/aes.c
libmbedtls/mbedtls/library/asn1write.c
libmbedtls/mbedtls/library/bignum.c
libmbedtls/mbedtls/library/ccm.c
libmbedtls/mbedtls/library/certs.c
libmbedtls/mbedtls/library/chacha20.c
libmbedtls/mbedtls/library/cipher.c
libmbedtls/mbedtls/library/ctr_drbg.c
libmbedtls/mbedtls/library/debug.c
libmbedtls/mbedtls/library/des.c
libmbedtls/mbedtls/library/dhm.c
libmbedtls/mbedtls/library/ecdh.c
libmbedtls/mbedtls/library/ecdsa.c
libmbedtls/mbedtls/library/ecjpake.c
libmbedtls/mbedtls/library/ecp.c
libmbedtls/mbedtls/library/ecp_curves.c
libmbedtls/mbedtls/library/error.c
libmbedtls/mbedtls/library/havege.c
libmbedtls/mbedtls/library/hmac_drbg.c
libmbedtls/mbedtls/library/md4.c
libmbedtls/mbedtls/library/md5.c
libmbedtls/mbedtls/library/net_sockets.c
libmbedtls/mbedtls/library/oid.c
libmbedtls/mbedtls/library/pkparse.c
libmbedtls/mbedtls/library/pkwrite.c
libmbedtls/mbedtls/library/platform_util.c
libmbedtls/mbedtls/library/poly1305.c
libmbedtls/mbedtls/library/ripemd160.c
libmbedtls/mbedtls/library/rsa.c
libmbedtls/mbedtls/library/sha1.c
libmbedtls/mbedtls/library/sha256.c
libmbedtls/mbedtls/library/sha512.c
libmbedtls/mbedtls/library/ssl_ciphersuites.c
libmbedtls/mbedtls/library/ssl_srv.c
libmbedtls/mbedtls/library/ssl_tls.c
libmbedtls/mbedtls/library/timing.c
libmbedtls/mbedtls/library/version_features.c
libmbedtls/mbedtls/library/x509.c
libmbedtls/mbedtls/library/x509_crl.c
libmbedtls/mbedtls/library/x509_crt.c
libmbedtls/mbedtls/library/x509_csr.c
libmbedtls/mbedtls/library/x509write_crt.c
libmbedtls/mbedtls/library/x509write_csr.c
libmbedtls/sub.mk
/optee_os/mk/config.mk
5b2aaa1130-Mar-2020 Jens Wiklander <jens.wiklander@linaro.org>

libutee: optimize memcpy() for speed

Overrides the -Os flag with -O2 in order to compile a speed optimized
version of memcpy().

Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-b

libutee: optimize memcpy() for speed

Overrides the -Os flag with -O2 in order to compile a speed optimized
version of memcpy().

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

show more ...

2fc5dc9530-Mar-2020 Jens Wiklander <jens.wiklander@linaro.org>

core: mbedtls: use SHA-256 crypto accelerated routines

Uses the recently provided accelerated SHA-256 routine.

Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-by: Jens Wiklander

core: mbedtls: use SHA-256 crypto accelerated routines

Uses the recently provided accelerated SHA-256 routine.

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

show more ...

734545da30-Mar-2020 Jens Wiklander <jens.wiklander@linaro.org>

core: mbedtls: use SHA-1 crypto accelerated routines

Uses the recently provided accelerated SHA-1 routine.

Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-by: Jens Wiklander <je

core: mbedtls: use SHA-1 crypto accelerated routines

Uses the recently provided accelerated SHA-1 routine.

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

show more ...

10b9079130-Mar-2020 Jens Wiklander <jens.wiklander@linaro.org>

core: mbedtls: use AES crypto accelerated routines

Uses the recently provided accelerated AES crypto routines in mbedtls.

Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-by: Jen

core: mbedtls: use AES crypto accelerated routines

Uses the recently provided accelerated AES crypto routines in mbedtls.

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

show more ...

8589833830-Mar-2020 Jens Wiklander <jens.wiklander@linaro.org>

pta: invoke_test.pta: add aes performance test

Adds test PTA function to run performance test with xtest --aes-perf.

Reviewed-by: Jerome Forissier <jerome@forissier.org>
Signed-off-by: Jens Wikland

pta: invoke_test.pta: add aes performance test

Adds test PTA function to run performance test with xtest --aes-perf.

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

show more ...

7acaf5ad01-Apr-2020 Albert Schwarzkopf <a.schwarzkopf@phytec.de>

libutee: Remove ae_tag_len from __TEE_OperationHandle

Remove ae_tag_len from __TEE_OperationHandle structure, since
that information is available in the TEE_OperationInfo.digestLength
field.

Signed

libutee: Remove ae_tag_len from __TEE_OperationHandle

Remove ae_tag_len from __TEE_OperationHandle structure, since
that information is available in the TEE_OperationInfo.digestLength
field.

Signed-off-by: Albert Schwarzkopf <a.schwarzkopf@phytec.de>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

7c76743402-Apr-2020 Albert Schwarzkopf <a.schwarzkopf@phytec.de>

core: merge tee_*_get_digest_size() into a single function

Rename tee_hash_get_digest_size() to tee_alg_get_digest_size().

Change tee_alg_get_digest_size() to use new libutee macro
TEE_ALG_GET_DIGE

core: merge tee_*_get_digest_size() into a single function

Rename tee_hash_get_digest_size() to tee_alg_get_digest_size().

Change tee_alg_get_digest_size() to use new libutee macro
TEE_ALG_GET_DIGEST_SIZE.

Remove tee_mac_get_digest_size() as its functionality
is handled by tee_alg_get_digest_size() now.

Signed-off-by: Albert Schwarzkopf <a.schwarzkopf@phytec.de>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

2e5e646002-Apr-2020 Albert Schwarzkopf <a.schwarzkopf@phytec.de>

libutee: Set digestLength value in TEE_OperationInfo structure

Set digestLength as specified in TEE Internal Core API,
section 6.2.3.

Introduce a new macro TEE_ALG_GET_DIGEST_SIZE() to utee_defines

libutee: Set digestLength value in TEE_OperationInfo structure

Set digestLength as specified in TEE Internal Core API,
section 6.2.3.

Introduce a new macro TEE_ALG_GET_DIGEST_SIZE() to utee_defines.h,
combining the implementation of tee_hash_get_digest_size() and
tee_mac_get_digest_size()

Fixes: https://github.com/OP-TEE/optee_os/issues/3471

Signed-off-by: Albert Schwarzkopf <a.schwarzkopf@phytec.de>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

a31e830301-Apr-2020 Jerome Forissier <jerome@forissier.org>

Remove '.section .text.<name>' and use function macros instead

Assembler functions are normally defined using the FUNC/LOCAL_FUNC
macros from <asm.S>. The macros takes care of several things, includ

Remove '.section .text.<name>' and use function macros instead

Assembler functions are normally defined using the FUNC/LOCAL_FUNC
macros from <asm.S>. The macros takes care of several things, including
putting the function in a specific section for later garbage collection
by the linker (--gc-sections).

A few files do not follow this convention, let's fix them. Two
functions in ghash-ce-core_a64.S (pmull_gcm_load_round_keys() and
pmull_gcm_aes_sub()) totally lack a .section directive, which I think
is a mistake. Fix them at the same time.

No functional change is expected.

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

show more ...

78f462f623-Mar-2020 Sumit Garg <sumit.garg@linaro.org>

core: add TEE_LOGIN_REE_KERNEL login method

Add private login method for REE kernel clients to invoke TAs. It allows
a TA to distinguish among normal world clients whether its a REE kernel
client or

core: add TEE_LOGIN_REE_KERNEL login method

Add private login method for REE kernel clients to invoke TAs. It allows
a TA to distinguish among normal world clients whether its a REE kernel
client or a REE user-space client.

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

show more ...

a73ebd4719-Mar-2020 Jens Wiklander <jens.wiklander@linaro.org>

util.h: add ROUNDUP_DIV(x, y) macro

Adds the ROUNDUP_DIV(x, y) macro which Rounds up to the nearest multiple
of y and then divides by y. Safe against overflow, y has to be a
multiple of 2 just as in

util.h: add ROUNDUP_DIV(x, y) macro

Adds the ROUNDUP_DIV(x, y) macro which Rounds up to the nearest multiple
of y and then divides by y. Safe against overflow, y has to be a
multiple of 2 just as in the other two ROUNDUP*() macros.

This macro is intended to be used to convert from "number of bytes" to
"number of pages" or similar units. Example:
num_pages = ROUNDUP_DIV(num_bytes, SMALL_PAGE_SIZE);

Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
Reviewed-by: Jerome Forissier <jerome@forissier.org>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

70ed8fd506-Mar-2020 Jerome Forissier <jerome@forissier.org>

libutee: arm64: update register accessor macros to support Clang

When building a 64-bit TA that includes <arm64_user_sysreg.h>, Clang
complains about ASM operand width:

lib/libutee/include/arm64_u

libutee: arm64: update register accessor macros to support Clang

When building a 64-bit TA that includes <arm64_user_sysreg.h>, Clang
complains about ASM operand width:

lib/libutee/include/arm64_user_sysreg.h:31:1: error: value size does not match register size specified by the constraint and modifier [-Werror,-Wasm-operand-widths]
DEFINE_REG_READ_FUNC_(cntfrq, uint32_t, cntfrq_el0)
^
lib/libutee/include/arm64_user_sysreg.h:20:42: note: expanded from macro 'DEFINE_REG_READ_FUNC_'
asm volatile("mrs %0, " #asmreg : "=r" (val)); \
^
lib/libutee/include/arm64_user_sysreg.h:31:1: note: use constraint modifier "w"
lib/libutee/include/arm64_user_sysreg.h:20:20: note: expanded from macro 'DEFINE_REG_READ_FUNC_'
asm volatile("mrs %0, " #asmreg : "=r" (val)); \
^
Let's apply the same fix as in commit 16e2153c57f0 ("core: arm64:
update register accessor macros to support Clang").

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

show more ...

1...<<11121314151617181920>>...36