History log of /optee_os/core/ (Results 951 – 975 of 6495)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
735a1eff28-Mar-2024 Tony Han <tony.han@microchip.com>

drivers: pm: sam: add code for save/restore sama7g5 MCK1..4 settings

Add 2 macros for save and restore sama7g5 MCK1..4 settings.
Save MCK1..4 settings before entering the low-power modes and restore

drivers: pm: sam: add code for save/restore sama7g5 MCK1..4 settings

Add 2 macros for save and restore sama7g5 MCK1..4 settings.
Save MCK1..4 settings before entering the low-power modes and restore
the settings after exiting the low-power modes.
During the low-power mode MCK1..4 use CSS=MAINCK and DIV=1.

Signed-off-by: Tony Han <tony.han@microchip.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

b22418eb26-Mar-2024 Tony Han <tony.han@microchip.com>

drivers: pm: sam: add support for checking sama7g5 MCK1..4 ready

sama5d2 has only MCK0 clock.
sama7g5 has MCK0,1,..., MCK4 clocks.

Signed-off-by: Tony Han <tony.han@microchip.com>
Acked-by: Jens Wi

drivers: pm: sam: add support for checking sama7g5 MCK1..4 ready

sama5d2 has only MCK0 clock.
sama7g5 has MCK0,1,..., MCK4 clocks.

Signed-off-by: Tony Han <tony.han@microchip.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

61ecdd1d29-Mar-2024 Tony Han <tony.han@microchip.com>

drivers: pm: sam: update PLLA enable/disable macros for sama7g5

Update macro "at91_plla_disable" and "at91_plla_enable" for sama7g5 PLLA.

Signed-off-by: Tony Han <tony.han@microchip.com>
Acked-by:

drivers: pm: sam: update PLLA enable/disable macros for sama7g5

Update macro "at91_plla_disable" and "at91_plla_enable" for sama7g5 PLLA.

Signed-off-by: Tony Han <tony.han@microchip.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

07befeff28-Feb-2024 Wen Bin <a1231512a@163.com>

plat-hikey: make DRAM0_SIZE and DRAM0_SIZE_NSEC configurable

DRAM0_SIZE is now defined as CFG_TZDRAM_START, allowing
for dynamic configuration.

DRAM0_SIZE_NSEC is modified to calculate the size rel

plat-hikey: make DRAM0_SIZE and DRAM0_SIZE_NSEC configurable

DRAM0_SIZE is now defined as CFG_TZDRAM_START, allowing
for dynamic configuration.

DRAM0_SIZE_NSEC is modified to calculate the size relative
to DRAM0_BASE.

Signed-off-by: Wen Bin <a1231512a@163.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

f6be0e1330-May-2024 Jacob Kroon <jacobkr@axis.com>

core: ltc: Fix building with mbedtls

Fix building OP-TEE with:

make PLATFORM=vexpress \
PLATFORM_FLAVOR=juno \
CFG_CRYPTOLIB_NAME=mbedtls \
CFG_CRYPTOLIB_DIR=lib/libmbedtls
...
core/

core: ltc: Fix building with mbedtls

Fix building OP-TEE with:

make PLATFORM=vexpress \
PLATFORM_FLAVOR=juno \
CFG_CRYPTOLIB_NAME=mbedtls \
CFG_CRYPTOLIB_DIR=lib/libmbedtls
...
core/lib/libtomcrypt/aes_accel.c: In function ‘aes_ctr_encrypt_nblocks’:
core/lib/libtomcrypt/aes_accel.c:182:21: error: ‘CTR_COUNTER_LITTLE_ENDIAN’ undeclared (first use in this function)
182 | if (mode == CTR_COUNTER_LITTLE_ENDIAN) {

Signed-off-by: Jacob Kroon <jacobkr@axis.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

48a1cce402-May-2024 Gatien Chevallier <gatien.chevallier@foss.st.com>

core: firewall: add firewall framework

Add a generic firewall controller framework. The goal of this framework
is to offer access control and configuration APIs, that are implemented
in the firewall

core: firewall: add firewall framework

Add a generic firewall controller framework. The goal of this framework
is to offer access control and configuration APIs, that are implemented
in the firewall controllers drivers, to the firewall consumers. This
framework requires an embedded device tree.

A firewall controller is an access controller [1]. It should register
itself as a provider to the framework. Firewall controllers have the
possibility to populate their bus according to defined firewall accesses
defined in the "access-controllers" property in each of the device's
node.

Any device that consumes one or more firewall should refer it/them in
their "access-controllers" property. Arguments can be passed along with
the phandle of the firewall controller(s).

Link: https://patchwork.kernel.org/project/linux-media/patch/20240105130404.301172-2-gatien.chevallier@foss.st.com/ [1]
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

6b82794f28-Mar-2024 Tony Han <tony.han@microchip.com>

drivers: clk: sam: add definition for sama7g5 PMC_CPU_CKR register

The offset of "PMC CPU Clock Register" for sama7g5 is different from
the one for sama5d2.

Signed-off-by: Tony Han <tony.han@microc

drivers: clk: sam: add definition for sama7g5 PMC_CPU_CKR register

The offset of "PMC CPU Clock Register" for sama7g5 is different from
the one for sama5d2.

Signed-off-by: Tony Han <tony.han@microchip.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

6d792c5811-Apr-2024 Tony Han <tony.han@microchip.com>

drivers: pm: sam: update the count of PCK clock for sama7g5

Add definition "AT91_PMC_PCK_COUNT", in sama7g5 there're 8 PCK clocks
and for sama5d2 there're 4 PCK clocks.

Signed-off-by: Tony Han <ton

drivers: pm: sam: update the count of PCK clock for sama7g5

Add definition "AT91_PMC_PCK_COUNT", in sama7g5 there're 8 PCK clocks
and for sama5d2 there're 4 PCK clocks.

Signed-off-by: Tony Han <tony.han@microchip.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

9a97457207-Apr-2024 Tony Han <tony.han@microchip.com>

drivers: pm: sam: configure the wakeup sources for sama7g5

Rename the names of functions for adding the configuration of sama7g5
wakeup sources.
Add and configure the wakeup sources for sama7g5.

Si

drivers: pm: sam: configure the wakeup sources for sama7g5

Rename the names of functions for adding the configuration of sama7g5
wakeup sources.
Add and configure the wakeup sources for sama7g5.

Signed-off-by: Tony Han <tony.han@microchip.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

22b10ee011-Apr-2024 Tony Han <tony.han@microchip.com>

drivers: pm: sam: change memory area type to coherent for mapping SRAM

Mapping with memory area type MEM_AREA_TEE_RAM would enable cacheable
attribute, it might cause abort in same cases. Here chang

drivers: pm: sam: change memory area type to coherent for mapping SRAM

Mapping with memory area type MEM_AREA_TEE_RAM would enable cacheable
attribute, it might cause abort in same cases. Here change the memory
area type to MEM_AREA_TEE_COHERENT to map SRAM with non-cacheable
attribute to avoid the aborts in the low-power process.

Signed-off-by: Tony Han <tony.han@microchip.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

67aac8e629-Mar-2024 Tony Han <tony.han@microchip.com>

drivers: pm: sam: enable running code for low-power out of SRAM

Configure regions with write permission with not forced to
XN (Execute-never) attribute when implementation includes
the Virtualizatio

drivers: pm: sam: enable running code for low-power out of SRAM

Configure regions with write permission with not forced to
XN (Execute-never) attribute when implementation includes
the Virtualization Extensions.

Signed-off-by: Tony Han <tony.han@microchip.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

9ed8348b25-May-2024 Charles Herz <herzc@umich.edu>

core: plat-mediatek: fix enforcement of SWRNG configuration on MT7988

Small fix: $(call force,CFG_WITH_SOFTWARE_PRNG,Y) should be lowercase
'y' so that the conditional check in core/crypto/sub.mk in

core: plat-mediatek: fix enforcement of SWRNG configuration on MT7988

Small fix: $(call force,CFG_WITH_SOFTWARE_PRNG,Y) should be lowercase
'y' so that the conditional check in core/crypto/sub.mk includes
the correct source file rng_fortuna.c instead of rng_hw.c, which is
unimplemented for this platform and causes build failure.

Fixes: 58dbe3dff530 ("plat-mediatek: add support for MT7988 SoC")
Signed-off-by: Charles Herz <herzc@umich.edu>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

2e6b9fc506-May-2024 Etienne Carriere <etienne.carriere@foss.st.com>

core: interrupts: fix inline comment typo on DT property name

Fix DT property named "interrupts-extended", mistakenly named
"extended-interrupts" in interrupt API function inline description
comment

core: interrupts: fix inline comment typo on DT property name

Fix DT property named "interrupts-extended", mistakenly named
"extended-interrupts" in interrupt API function inline description
comments.

Fixes: 33a0c8350ac1 ("core: interrupt: registering interrupt providers")
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

7921973c05-May-2024 Etienne Carriere <etienne.carriere@foss.st.com>

core: kernel: use explicit unsigned int type in condvar

Replace unsigned with unsigned int as type of struct condvar::spin_lock.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
Revie

core: kernel: use explicit unsigned int type in condvar

Replace unsigned with unsigned int as type of struct condvar::spin_lock.

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

show more ...

ade2f1cb12-Mar-2024 Etienne Carriere <etienne.carriere@foss.st.com>

core: kernel: fix include order in spinlock.h

Fix order of #include directives in spinlock.h.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
Reviewed-by: Jerome Forissier <jerome.fo

core: kernel: fix include order in spinlock.h

Fix order of #include directives in spinlock.h.

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

show more ...

b6a44cc521-May-2024 leisen <leisen1@huawei.com>

drivers: crypto: hisilicon: Update header files location

The header files in core/drivers/crypto/hisilicon/includes
are only used by the source files in core/drivers/crypto/hisilicon,
so move the he

drivers: crypto: hisilicon: Update header files location

The header files in core/drivers/crypto/hisilicon/includes
are only used by the source files in core/drivers/crypto/hisilicon,
so move the header file from core/drivers/crypto/hisilicon/include
to core/drivers/crypto/hisilicon/.

Signed-off-by: leisen <leisen1@huawei.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

94c8a33907-May-2024 leisen <leisen1@huawei.com>

drivers: crypto: hisilicon:Add HASH and HMAC algorithm

Add HASH and HMAC algorithm by SEC, and support SHA1,
SHA224, SHA256, SHA384, SHA512, MD5, SM3, and HMAC
algorithms based on these algorithms.

drivers: crypto: hisilicon:Add HASH and HMAC algorithm

Add HASH and HMAC algorithm by SEC, and support SHA1,
SHA224, SHA256, SHA384, SHA512, MD5, SM3, and HMAC
algorithms based on these algorithms.

Signed-off-by: leisen <leisen1@huawei.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

899362a010-Apr-2024 Etienne Carriere <etienne.carriere@foss.st.com>

drivers: crypto: remove assertions on device handlers

Remove assertions added by the commit referred below. They are useless
since the handlers are registered only if the related device (stm32_cryp

drivers: crypto: remove assertions on device handlers

Remove assertions added by the commit referred below. They are useless
since the handlers are registered only if the related device (stm32_cryp
or stm32_saes) has its driver successfully probed. These assertion also
prevent enabling both CFG_STM32_SAES and CFG_STM32_CRYP for a platform
which is a valid configuration for when we rely on the DT to state
which of both is enabled.

Fixes: 03de2c7bb316 ("drivers: crypto: stm32_saes: fallback to software on 192bit AES keys")
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
Reviewed-by: Thomas Bourgoin <thomas.bourgoin@foss.st.com>

show more ...

ae9b419722-May-2024 Gatien Chevallier <gatien.chevallier@foss.st.com>

core: pager: fix arguments passed to calloc in alloc_merged_pgt_array()

An error was reported when compiling with GCC14 on this calloc:

core/arch/arm/mm/tee_pager.c: In function 'alloc_merged_pgt_a

core: pager: fix arguments passed to calloc in alloc_merged_pgt_array()

An error was reported when compiling with GCC14 on this calloc:

core/arch/arm/mm/tee_pager.c: In function 'alloc_merged_pgt_array':
core/arch/arm/mm/tee_pager.c:934:35: warning: 'calloc' sizes specified
with 'sizeof' in the earlier argument and not in the later argument
[-Wcalloc-transposed-args]
934 | pgt_array = calloc(sizeof(struct pgt *), pgt_count);
| ^~~~~~

Looking at the code, it seems that pgt_count and sizeof(struct pgt *)
are inverted.

Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
Fixes: 60e367146042 ("core: pager fix alloc_merged_pgt_array()")
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

6b5d112021-May-2024 Jens Wiklander <jens.wiklander@linaro.org>

core: fix possible overflow in shdr_alloc_and_copy()

Prior to this patch, if SHDR_GET_SIZE() overflows it will return 0 and
further down in the function lead to an out-of-bounds access. So fix
this

core: fix possible overflow in shdr_alloc_and_copy()

Prior to this patch, if SHDR_GET_SIZE() overflows it will return 0 and
further down in the function lead to an out-of-bounds access. So fix
this with an explicit test before using shdr_size in
shdr_alloc_and_copy().

Fixes: 064663e8bd27 ("core: crypto: add struct shdr helper functions")
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...

78444d3326-Apr-2024 Alvin Chang <alvinga@andestech.com>

core: riscv: Fix store 32-bit thread_core_local flags

The thread_core_local flags is a 32-bit variable. Thus, we must
explicitly use "sw" instruction, which means store 32-bit value into
specific me

core: riscv: Fix store 32-bit thread_core_local flags

The thread_core_local flags is a 32-bit variable. Thus, we must
explicitly use "sw" instruction, which means store 32-bit value into
specific memory address, to operate the thread_core_local flags.

Signed-off-by: Alvin Chang <alvinga@andestech.com>
Reviewed-by: Yu Chien Peter Lin <peterlin@andestech.com>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...

d4a8769017-May-2024 Sungbae Yoo <sungbaey@nvidia.com>

drivers: Add FFA_CONSOLE based console driver for log

This console driver uses FFA_CONSOLE ABI to write the trace logs.

If CFG_FFA_CONSOLE is enabled, OP-TEE will try to initialize the console
driv

drivers: Add FFA_CONSOLE based console driver for log

This console driver uses FFA_CONSOLE ABI to write the trace logs.

If CFG_FFA_CONSOLE is enabled, OP-TEE will try to initialize the console
driver that uses FFA interface to print trace logs.

Signed-off-by: Sungbae Yoo <sungbaey@nvidia.com>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...

ba2dff7710-Apr-2024 Etienne Carriere <etienne.carriere@foss.st.com>

drivers: regulator: split regulator_supported_voltages() assertions

Split assertions in regulator_supported_voltages() to ease debugging,
providing a better indication of which condition is not fulf

drivers: regulator: split regulator_supported_voltages() assertions

Split assertions in regulator_supported_voltages() to ease debugging,
providing a better indication of which condition is not fulfilled.

Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
Acked-by: Patrick Delaunay <patrick.delaunay@foss.st.com>

show more ...

dd019e4410-Apr-2024 Etienne Carriere <etienne.carriere@foss.st.com>

drivers: regulator: fix error case in regulator_supported_voltages()

Fix case when .supported_voltages() handler is supported. If successful
it shall assert voltage description data. If it returns
T

drivers: regulator: fix error case in regulator_supported_voltages()

Fix case when .supported_voltages() handler is supported. If successful
it shall assert voltage description data. If it returns
TEE_ERROR_NOT_SUPPORTED, it shall use the pre-filled fallback description.

Fixes: af5b9881111c ("drivers: regulator: supported voltage consider levels bounds")
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
Acked-by: Patrick Delaunay <patrick.delaunay@foss.st.com>

show more ...

2a65ecaf06-May-2024 Jens Wiklander <jens.wiklander@linaro.org>

Squashed commit upgrading to libtomcrypt-1.18.2-develop-20240412

Squash merging branch import/libtomcrypt-1.18.2-develop-20240412

165e1fe7816a ("core: ltc: update for libtomcrypt changes")
ff29487

Squashed commit upgrading to libtomcrypt-1.18.2-develop-20240412

Squash merging branch import/libtomcrypt-1.18.2-develop-20240412

165e1fe7816a ("core: ltc: update for libtomcrypt changes")
ff294871020d ("core: ltc: rsa_verify_hash: fix panic on hash mismatch")
43363afc3d5e ("core: ltc: add fault mitigation in crypto_acipher_rsassa_verify()")
d3040d8bc691 ("libtomcrypt: Remove prng_state* NULL pointer check from ed25519_make_key()")
a1e9686a20cf ("libtomcrypt: ctr_encrypt(): adjust for OP-TEE CE accelerated routines")
eba1524a3989 ("libtomcrypt: define LTC_MPI at the same time as LTC_DER")
e8f42d80d27f ("core: libtomcrypt: Remove prng_state* NULL pointer check from x25519_make_key()")
edb8618bfe6c ("core: ltc: add SM2 curve parameters")
1713825bebd1 ("core: ltc: make key in accel_ecb_encrypt() and accel_ecb_decrypt() const")
53d2509130ce ("core: ltc: fix 'switch case misses default'")
5c7e0de468d1 ("core: ltc: add custom DH key generation function dh_make_key()")
cba20f6a156e ("core: ltc: tomcrypt_custom.h: OP-TEE thread support")
7f247add8fd9 ("libtomcrypt: implement zeromem() with memzero_explicit()")
96ac368c5e68 ("LTC: add GHASH acceleration")
79bd5cb8391c ("ltc: make cipher_descriptor a pointer to descriptors")
a9f0d677e922 ("ltc: make hash_descriptor a pointer to descriptors")
82feb7ac9709 ("ltc: make prng_descriptor a pointer to descriptors")
ae75124e3113 ("libtomcrypt: tomcrypt_private.h: add HASH_PROCESS_NBLOCKS")
a4281f43ea65 ("ECC: optimize the pool of temporary variables")
b32f84118399 ("Import LibTomCrypt v1.18.2 branch "develop" (Apr 12, 2024)")
035c58eeb602 ("Remove LibTomCrypt")

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

show more ...


lib/libtomcrypt/aes.c
lib/libtomcrypt/aes_accel.c
lib/libtomcrypt/rsa.c
lib/libtomcrypt/src/ciphers/aes/aes.c
lib/libtomcrypt/src/ciphers/aes/aes_desc.c
lib/libtomcrypt/src/ciphers/aes/aesni.c
lib/libtomcrypt/src/encauth/ccm/ccm_memory.c
lib/libtomcrypt/src/encauth/ccm/ccm_test.c
lib/libtomcrypt/src/encauth/gcm/gcm_memory.c
lib/libtomcrypt/src/hashes/tiger.c
lib/libtomcrypt/src/headers/tomcrypt.h
lib/libtomcrypt/src/headers/tomcrypt_cfg.h
lib/libtomcrypt/src/headers/tomcrypt_cipher.h
lib/libtomcrypt/src/headers/tomcrypt_custom.h
lib/libtomcrypt/src/headers/tomcrypt_hash.h
lib/libtomcrypt/src/headers/tomcrypt_mac.h
lib/libtomcrypt/src/headers/tomcrypt_macros.h
lib/libtomcrypt/src/headers/tomcrypt_pk.h
lib/libtomcrypt/src/headers/tomcrypt_pkcs.h
lib/libtomcrypt/src/headers/tomcrypt_private.h
lib/libtomcrypt/src/math/fp/ltc_ecc_fp_mulmod.c
lib/libtomcrypt/src/misc/crypt/crypt.c
lib/libtomcrypt/src/misc/crypt/crypt_register_all_ciphers.c
lib/libtomcrypt/src/misc/crypt/crypt_register_all_hashes.c
lib/libtomcrypt/src/misc/pkcs5/pkcs_5_test.c
lib/libtomcrypt/src/misc/ssh/ssh_encode_sequence_multi.c
lib/libtomcrypt/src/pk/asn1/der/choice/der_decode_choice.c
lib/libtomcrypt/src/pk/asn1/der/custom_type/der_encode_custom_type.c
lib/libtomcrypt/src/pk/asn1/der/sequence/der_encode_sequence_ex.c
lib/libtomcrypt/src/pk/asn1/der/utf8/der_decode_utf8_string.c
lib/libtomcrypt/src/pk/dsa/dsa_import.c
lib/libtomcrypt/src/pk/ecc/ecc_get_key.c
lib/libtomcrypt/src/pk/ecc/ecc_import_pkcs8.c
lib/libtomcrypt/src/pk/pkcs1/pkcs_1_oaep_decode.c
lib/libtomcrypt/src/pk/pkcs1/pkcs_1_oaep_encode.c
lib/libtomcrypt/src/pk/pkcs1/pkcs_1_v1_5_encode.c
lib/libtomcrypt/src/pk/rsa/rsa_decrypt_key.c
lib/libtomcrypt/src/pk/rsa/rsa_encrypt_key.c
lib/libtomcrypt/src/pk/rsa/rsa_verify_hash.c
lib/libtomcrypt/src/prngs/fortuna.c
lib/libtomcrypt/src/prngs/rng_get_bytes.c
lib/libtomcrypt/sub.mk

1...<<31323334353637383940>>...260