History log of /optee_os/ (Results 6176 – 6200 of 8578)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
98bd5fe308-Nov-2018 Jens Wiklander <jens.wiklander@linaro.org>

libmbedtls: add mbedtls_mpi_init_mempool()

782fddd10ccb ("libmbedtls: add mbedtls_mpi_init_mempool()") from
branch import/mbedtls-2.6.1

Adds mbedtls_mpi_init_mempool() which initializes a mbedtls_m

libmbedtls: add mbedtls_mpi_init_mempool()

782fddd10ccb ("libmbedtls: add mbedtls_mpi_init_mempool()") from
branch import/mbedtls-2.6.1

Adds mbedtls_mpi_init_mempool() which initializes a mbedtls_mpi struct
to use the mempool mbedtls_mpi_mempool if configured for memory
allocation. All local memory allocation is changed to use
mbedtls_mpi_init_mempool() instead of mbedtls_mpi_init(). This will give
a stack like alloc/free pattern for which the mempool is optimized.

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

show more ...

62f2118107-Nov-2018 Jens Wiklander <jens.wiklander@linaro.org>

libmbedtls: make mbedtls_mpi_mont*() available

338738340a8c ("libmbedtls: make mbedtls_mpi_mont*() available") from
branch import/mbedtls-2.6.1

Makes mbedtls_mpi_montg_init(), mbedtls_mpi_montmul()

libmbedtls: make mbedtls_mpi_mont*() available

338738340a8c ("libmbedtls: make mbedtls_mpi_mont*() available") from
branch import/mbedtls-2.6.1

Makes mbedtls_mpi_montg_init(), mbedtls_mpi_montmul() and
mbedtls_mpi_montred() available for external use.

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

show more ...

4de8442424-May-2018 Edison Ai <edison.ai@arm.com>

libmbedtls: configure mbedTLS for different modes

Split mbedTLS into 3 partitions: CRYPTO, X509 and TLS. CRYPTO is for
kernel and user mode. X509 and TLS are mainly for user mode.

Reviewed-by: Jero

libmbedtls: configure mbedTLS for different modes

Split mbedTLS into 3 partitions: CRYPTO, X509 and TLS. CRYPTO is for
kernel and user mode. X509 and TLS are mainly for user mode.

Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Signed-off-by: Edison Ai <edison.ai@arm.com>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

b69b86b608-Nov-2018 Jens Wiklander <jens.wiklander@linaro.org>

mempool: report max memory usage

Adds CFG_MEMPOOL_REPORT_LAST_OFFSET which if set to y causes mempool to
report each time the maximum amount of memory has increased. This helps
to determine required

mempool: report max memory usage

Adds CFG_MEMPOOL_REPORT_LAST_OFFSET which if set to y causes mempool to
report each time the maximum amount of memory has increased. This helps
to determine required size of a mempool.

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

show more ...

d4f909c008-Nov-2018 Jens Wiklander <jens.wiklander@linaro.org>

mempool: optimize reference counting

Optimizes reference counting in mempool by using refcount_inc() and
refcount_dec() in order to be able to avoid using the mutex in the quick
case.

Reviewed-by:

mempool: optimize reference counting

Optimizes reference counting in mempool by using refcount_inc() and
refcount_dec() in order to be able to avoid using the mutex in the quick
case.

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

show more ...

b54b9a9809-Nov-2018 Jens Wiklander <jens.wiklander@linaro.org>

mempool: add out of memory message

Adds a helpful message when a memory allocation with mempool_alloc()
fails. If this occurs it's because the memory pool size isn't tuned
properly with regards to t

mempool: add out of memory message

Adds a helpful message when a memory allocation with mempool_alloc()
fails. If this occurs it's because the memory pool size isn't tuned
properly with regards to the user of the pool.

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

show more ...

3f58e4ec05-Nov-2018 Ovidiu Mihalachi <ovidiu_mihalachi@mentor.com>

trace levels: Redefine TRACE_MIN level to 0

The global `trace_level` session-wise indicator which is set by
`trace_set_level()` [1], could get a wrong value in case of an
input `level` set to 0, mea

trace levels: Redefine TRACE_MIN level to 0

The global `trace_level` session-wise indicator which is set by
`trace_set_level()` [1], could get a wrong value in case of an
input `level` set to 0, meaning that all logs need to be disabled
by user define `CFG_TEE_TA_LOG_LEVEL=0` when building TA applications.

This inconsistency is caused by a rather wrong value of `TRACE_MIN`
low boundary value set to 1. According to [1] `trace level` will be
set to `TRACE_MAX` (4) in case input level is smaller than `TRACE_MIN`
and larger than `TRACE_MAX`.
In the scenario when the needed log level is 0, `trace level` would be
set to `TRACE_MAX` and will cause a lot of flow log level information
dumped by trace functions/macros that are using `trace_printf()`
primitive.

This patch sets the `TRACE_MIN` to 0 in order to assure a proper trace
level setting and completely disable all logs in case
`CFG_TEE_TA_LOG_LEVEL=0`.

[1]
void trace_set_level(int level)
{
if (((int)level >= TRACE_MIN) && (level <= TRACE_MAX))
trace_level = level;
else
trace_level = TRACE_MAX;
}

Acked-by: Christoph Gellner <cgellner@de.adit-jv.com>
Signed-off-by: Ovidiu Mihalachi <ovidiu_mihalachi@mentor.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

7445d9ac13-Nov-2018 Jerome Forissier <jerome.forissier@linaro.org>

Move __early_ta from <compiler.h> to <kernel/early_ta.h>

The __early_ta macro is used only in C files generated by
scripts/ta_bin_to_c.py. There is no reason to have it defined in a widely
used head

Move __early_ta from <compiler.h> to <kernel/early_ta.h>

The __early_ta macro is used only in C files generated by
scripts/ta_bin_to_c.py. There is no reason to have it defined in a widely
used header like <compiler.h>.

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

show more ...

fd11877212-Nov-2018 Jerome Forissier <jerome.forissier@linaro.org>

core: force read-only flag on .rodata.* sections

This commit fixes a warning with GCC 8.2 that did not occur with GCC 6.2:

$ make out/arm-plat-vexpress/core/arch/arm/kernel/user_ta.o
CHK ou

core: force read-only flag on .rodata.* sections

This commit fixes a warning with GCC 8.2 that did not occur with GCC 6.2:

$ make out/arm-plat-vexpress/core/arch/arm/kernel/user_ta.o
CHK out/arm-plat-vexpress/conf.mk
CHK out/arm-plat-vexpress/include/generated/conf.h
CHK out/arm-plat-vexpress/core/include/generated/asm-defines.h
CC out/arm-plat-vexpress/core/arch/arm/kernel/user_ta.o
{standard input}: Assembler messages:
{standard input}:4087: Warning: setting incorrect section attributes for .rodata.__unpaged

The message is printed as the assembler processes this code fragment,
generated by the C compiler:

.section .rodata.__unpaged,"aw"

The older compiler (GCC 6.2) would generate instead:

.section .rodata.__unpaged,"a",%progbits

The problem with .rodata.__unpaged,"aw" is that the "w" (writeable) flag
is not consistent with the section name (.rodata.*), which by convention
is supposed to be read-only.

- The section name (".rodata.__unpaged") is given by our macro:
__rodata_unpaged.
- The "w" flag is added by GCC, not sure why exactly. One reason [1] is
when a relocatable binary is being generated and the structure contains
relocatable data. But, we are not explicitly asking for a relocatable
binary, so this might as well be a bug or counter-intuitive feature of
the compiler.

Anyway, to avoid the warning, we need to fix the section flags. The
section type (%progbits) is optional, it is deduced from the section name
by default. %progbits indicates that the section contains data (i.e., is
not empty).

Link: [1] https://gcc.gnu.org/ml/gcc/2004-05/msg01016.html
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (QEMU)
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey960)
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

01d6a9da08-Nov-2018 Bryan O'Donoghue <bryan.odonoghue@linaro.org>

libfdt: Move to version v1.4.6-9

This import adds FDT overlay plus brings in the latest bugfixes upstream.

As noted in the below url, there is a performance problem with 1.4.7 so we
target version

libfdt: Move to version v1.4.6-9

This import adds FDT overlay plus brings in the latest bugfixes upstream.

As noted in the below url, there is a performance problem with 1.4.7 so we
target version 1.4.6-9 instead.

https://github.com/ARM-software/arm-trusted-firmware/pull/1657

Upstream commit aadd0b65c987 ("checks: centralize printing of property
names in failure messages")

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Suggested-by: Jens Wiklander <jens.wiklander@linaro.org>
Suggested-by: Etienne Carriere <etienne.carriere@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

b38854bd09-Nov-2018 Bryan O'Donoghue <bryan.odonoghue@linaro.org>

libutils: Import strtoul from newlib

This patch imports strtoul from newlib which the latest version of libfdt
depends on.

Some modification of the original source is required to do this,
specifica

libutils: Import strtoul from newlib

This patch imports strtoul from newlib which the latest version of libfdt
depends on.

Some modification of the original source is required to do this,
specifically:

This is an import of the newlib 1.19.0 version of strtoul dropping

- Headers and prototypes for re-entrancy

- Any reliance on errno

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

9fdd6c3c10-Nov-2018 Bryan O'Donoghue <bryan.odonoghue@linaro.org>

libutils: isoc: implement isalpha(), isspace() and isupper()

This patch implements isalpha(), isspace() and isupper() which are
dependencies for a subsequent patch which brings in strtoul from newli

libutils: isoc: implement isalpha(), isspace() and isupper()

This patch implements isalpha(), isspace() and isupper() which are
dependencies for a subsequent patch which brings in strtoul from newlib.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

da1d55f309-Nov-2018 Bryan O'Donoghue <bryan.odonoghue@linaro.org>

libutils: Import strrchr from newlib

libfdt 1.4.7 depends on strrchr, this patch imports the same from newlib.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Reviewed-by: Etienne Carr

libutils: Import strrchr from newlib

libfdt 1.4.7 depends on strrchr, this patch imports the same from newlib.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

1de462e104-Oct-2018 Sumit Garg <sumit.garg@linaro.org>

drivers: GICv3: Handle group 1 secure interrupts

As per GICv3 architecture specification (Section 4.6 Interrupt grouping),
secure EL1 (Trusted OS) handles secure group 1 physical interrupts and
EL3

drivers: GICv3: Handle group 1 secure interrupts

As per GICv3 architecture specification (Section 4.6 Interrupt grouping),
secure EL1 (Trusted OS) handles secure group 1 physical interrupts and
EL3 handles group 0 physical interrupts which are considered as FIQs
(foreign interrupt) for Trusted OS.

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

show more ...

74a41cfa27-Sep-2018 Sumit Garg <sumit.garg@linaro.org>

synquacer: Set default number of threads to 8

Synquacer is 24 core system but 24 threads seems to be overkill in
terms of memory usage. So kept it to 8 threads for now.

Acked-by: Jerome Forissier <

synquacer: Set default number of threads to 8

Synquacer is 24 core system but 24 threads seems to be overkill in
terms of memory usage. So kept it to 8 threads for now.

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

show more ...

eb32eb0b05-Nov-2018 Jens Wiklander <jens.wiklander@linaro.org>

tee_time_arm_cntpct.c: remove mpa.h dependency

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

97d78f5b26-Oct-2018 Jens Wiklander <jens.wiklander@linaro.org>

core: move initialization of common mobjs

Moves initialization of mobj_sec_ddr and mobj_tee_ram to mobj.c.

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

core: move initialization of common mobjs

Moves initialization of mobj_sec_ddr and mobj_tee_ram to mobj.c.

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

show more ...

a2faa2f205-Nov-2018 Jens Wiklander <jens.wiklander@linaro.org>

ltc: move all bignum functions to mpa_desc.c

Moves all crypto_bignum*() functions from tee_ltc_provider.c to
mpa_desc.c in order to contain libmpa dependencies.

Reviewed-by: Jerome Forissier <jerom

ltc: move all bignum functions to mpa_desc.c

Moves all crypto_bignum*() functions from tee_ltc_provider.c to
mpa_desc.c in order to contain libmpa dependencies.

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

show more ...

6aa9924805-Nov-2018 Jens Wiklander <jens.wiklander@linaro.org>

ltc: rename tomcrypt_mpa.h to tomcrypt_mp.h

Renames tomcrypt_mpa.h to tomcrypt_mp.h in order to make it
implementation neutral.

Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Signed-of

ltc: rename tomcrypt_mpa.h to tomcrypt_mp.h

Renames tomcrypt_mpa.h to tomcrypt_mp.h in order to make it
implementation neutral.

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

show more ...

0263e4fc05-Nov-2018 Jens Wiklander <jens.wiklander@linaro.org>

ltc: move external_mem_pool to mpa_desc.c

Moves all initialization of external_mem_pool to mpa_desc.c and also
makes external_mem_pool static as there's no external references.

Reviewed-by: Jerome

ltc: move external_mem_pool to mpa_desc.c

Moves all initialization of external_mem_pool to mpa_desc.c and also
makes external_mem_pool static as there's no external references.

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

show more ...

8aff6c0308-Nov-2018 Jens Wiklander <jens.wiklander@linaro.org>

core: remove thread_{add,rem}_mutex()

With the recently merged lockdep patches thread_add_mutex() and
thread_rem_mutex() are obsolete. Remove them to save memory and
overhead.

Acked-by: Jerome Fori

core: remove thread_{add,rem}_mutex()

With the recently merged lockdep patches thread_add_mutex() and
thread_rem_mutex() are obsolete. Remove them to save memory and
overhead.

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

show more ...

b2c322ae29-Oct-2018 Yongqin Liu <yongqin.liu@linaro.org>

mk/aosp_optee.mk: use prebuilt make command

The host side make command is disallowed by the Android build system on
AOSP master [1]. Using it anyway causes the following build error:

"make" is no

mk/aosp_optee.mk: use prebuilt make command

The host side make command is disallowed by the Android build system on
AOSP master [1]. Using it anyway causes the following build error:

"make" is not allowed to be used.

See [2] for more information.

Link: [1] https://android-review.googlesource.com/c/platform/build/soong/+/796565
Link: [2] https://android.googlesource.com/platform/build/+/master/Changes.md#PATH_Tools

Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Signed-off-by: Yongqin Liu <yongqin.liu@linaro.org>

show more ...

2f773f5d16-Oct-2018 Yongqin Liu <yongqin.liu@linaro.org>

mk/aosp_optee.mk: workaround for PHONY target limitation with AOSP master

There are some limitations on PHONY target introduced into the AOSP master [1],
and the change here is to remove the use of

mk/aosp_optee.mk: workaround for PHONY target limitation with AOSP master

There are some limitations on PHONY target introduced into the AOSP master [1],
and the change here is to remove the use of PHONY target for BUILD_OPTEE_OS
definition, and to define OPTEE_BIN with relative path in aosp workspace
instead of absolute path.

Link [1]: https://android.googlesource.com/platform/build/+/HEAD/Changes.md#phony_targets

Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Signed-off-by: Yongqin Liu <yongqin.liu@linaro.org>

show more ...

968facb106-Nov-2018 Jens Wiklander <jens.wiklander@linaro.org>

core: fix compile error with CFG_CORE_WORKAROUND_SPECTRE_BP_SEC=n

Fixes compile error:
CC ../out-os-qemu/core/arch/arm/mm/tee_mm.o
core/arch/arm/kernel/thread.c:984:16: error: ‘select_vector’

core: fix compile error with CFG_CORE_WORKAROUND_SPECTRE_BP_SEC=n

Fixes compile error:
CC ../out-os-qemu/core/arch/arm/mm/tee_mm.o
core/arch/arm/kernel/thread.c:984:16: error: ‘select_vector’ defined but not used [-Werror=unused-function]
static vaddr_t select_vector(vaddr_t a)
^~~~~~~~~~~~~
cc1: all warnings being treated as errors

when compiled with CFG_CORE_WORKAROUND_SPECTRE_BP_SEC=n

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

show more ...

2683339f06-Nov-2018 Jerome Forissier <jerome.forissier@linaro.org>

unwind: remove useless #if defined(CFG_UNWIND)

unwind_arm32.c and unwind_arm64.c are only compiled when CFG_UNWIND=y so
there is no need to check that flag again.

Signed-off-by: Jerome Forissier <j

unwind: remove useless #if defined(CFG_UNWIND)

unwind_arm32.c and unwind_arm64.c are only compiled when CFG_UNWIND=y so
there is no need to check that flag again.

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

show more ...

1...<<241242243244245246247248249250>>...344