History log of /optee_os/ (Results 5976 – 6000 of 8382)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
15a991ab14-Nov-2018 Jerome Forissier <jerome.forissier@linaro.org>

gen_hashed_bin.py: fix issues reported by pycodestyle and re-indent

Fixes issues reported by: pycodestyle gen_hashed_bin.py and re-indent
(4 spaces).
Patch obtained by running: autopep8 -i -a -a gen

gen_hashed_bin.py: fix issues reported by pycodestyle and re-indent

Fixes issues reported by: pycodestyle gen_hashed_bin.py and re-indent
(4 spaces).
Patch obtained by running: autopep8 -i -a -a gen_hashed_bin.py.
In addition, remove a few print lines that were commented out.

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

show more ...

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

core: mbedtls: configure bignum word size

Configures mbedtls bignum word size (mbedtls_mpi_uint and mbedtls_mpi_sint)
as 32-bit or 64-bit depending on arm architecture.

Reviewed-by: Jerome Forissie

core: mbedtls: configure bignum word size

Configures mbedtls bignum word size (mbedtls_mpi_uint and mbedtls_mpi_sint)
as 32-bit or 64-bit depending on arm architecture.

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

show more ...

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

LTC: drop LTC_NO_ASM and configure

Drops LTC_NO_ASM and configures endian and word size accordingly, that
is, little endian and 32-bit or 64-bit depending on arm architecture.

Defines ulong32 and u

LTC: drop LTC_NO_ASM and configure

Drops LTC_NO_ASM and configures endian and word size accordingly, that
is, little endian and 32-bit or 64-bit depending on arm architecture.

Defines ulong32 and ulong64 based on uint32_t and uint64_t to make
sure that the types are always defined correctly.

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

show more ...

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

core: switch to mbedtls for bignum

Adds a mpi_desc.c wrapper to LTC in order to enable usage of bignum
(mpi) routines from mbedtls.

CFG_MBEDTLS_MPI=y (default y) builds the bignum routines for mbed

core: switch to mbedtls for bignum

Adds a mpi_desc.c wrapper to LTC in order to enable usage of bignum
(mpi) routines from mbedtls.

CFG_MBEDTLS_MPI=y (default y) builds the bignum routines for mbedtls and
also enables their usage in LTC and by that replaces libmpa for
privileged mode usage.

User mode TAs still use libmpa.

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

show more ...

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 ...

1...<<231232233234235236237238239240>>...336