History log of /optee_os/core/ (Results 6051 – 6075 of 6456)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
e268fc0801-Dec-2015 Pascal Brand <pascal.brand@st.com>

Fix obj address in syscall_storage_obj_create()

This fixes "xtest 7584"

Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey)

Fix obj address in syscall_storage_obj_create()

This fixes "xtest 7584"

Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey)
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Tested-by: Pascal Brand <pascal.brand@linaro.org> (QEMU)
Signed-off-by: Pascal Brand <pascal.brand@st.com>

show more ...

bc62d27810-Nov-2015 Jens Wiklander <jens.wiklander@linaro.org>

bugfix: rename define LP64 to __LP64__

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Pascal Brand <pascal.brand@linaro.org>

2f04385c12-Nov-2015 Jens Wiklander <jens.wiklander@linaro.org>

Unify TA entry functions

Unifies TA entry function into one entry function.

* Updates TA entry
* Update ta_head
* Fixes style issues in user_ta_entry.c

Note that this change is not backwards compa

Unify TA entry functions

Unifies TA entry function into one entry function.

* Updates TA entry
* Update ta_head
* Fixes style issues in user_ta_entry.c

Note that this change is not backwards compatible, TAs needs to be
recompiled.

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (QEMU)
Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
Reviewed-by: Pascal Brand <pascal.brand@linaro.org>

show more ...

e86f126605-Nov-2015 Jens Wiklander <jens.wiklander@linaro.org>

Make TEE Core TA interaction 64-bit compatible

* Updates TA entry
* Update ta_head
* Updates the syscall interface
* Adds functions to make a short pointer (32-bit uref) from a kernel pointer
and

Make TEE Core TA interaction 64-bit compatible

* Updates TA entry
* Update ta_head
* Updates the syscall interface
* Adds functions to make a short pointer (32-bit uref) from a kernel pointer
and vice versa

Note that this change is not backwards compatible, TAs needs to be
recompiled.

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
Reviewed-by: Pascal Brand <pascal.brand@linaro.org>

show more ...

53fe16f323-Nov-2015 Jerome Forissier <jerome.forissier@linaro.org>

Avoid duplication of $(call force,CFG_WITH_VFP,y)

When cryptographic extensions are used, and whatever the platform,
we have to ensure that VFP preservation is enabled too. Therefore it
makes sense

Avoid duplication of $(call force,CFG_WITH_VFP,y)

When cryptographic extensions are used, and whatever the platform,
we have to ensure that VFP preservation is enabled too. Therefore it
makes sense to centralize the tests in core/lib/libtomcrypt/sub.mk
instead of having them in the platform-specific configuration files.

Incidentally, this adds a few missing statements to HiKey and Mediatek.

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

show more ...

80ddeac706-Nov-2015 Jerome Forissier <jerome.forissier@linaro.org>

Add ALIGNMENT_IS_OK to libutils/ext/include/util.h, delete unused code

TEE_ALIGNMENT_IS_OK() is renamed ALIGNMENT_IS_OK() and moved to
lib/libutils/ext/include/util.h, which avoids duplication (was

Add ALIGNMENT_IS_OK to libutils/ext/include/util.h, delete unused code

TEE_ALIGNMENT_IS_OK() is renamed ALIGNMENT_IS_OK() and moved to
lib/libutils/ext/include/util.h, which avoids duplication (was
previously in core/include/kernel/tee_common_unpg.h and
lib/libutee/include/utee_defines.h). Call sites are adjusted
accordingly.

It is assumed that the compiler keyword __alignof__ is available, so
CFG_TC_NO_ALIGNOF is of no use. We also remove unused definitions:
TEE_ALIGNMENT_*B_IS_OK().

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

show more ...

655b6ecf27-Oct-2015 Jens Wiklander <jens.wiklander@linaro.org>

core: vexpress-juno: enable v8 crypto acceleration

Enables all supported ARMv8 crypto acceleration for the Juno platform.

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Tested-by: Jens W

core: vexpress-juno: enable v8 crypto acceleration

Enables all supported ARMv8 crypto acceleration for the Juno platform.

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

show more ...

3b6248ef23-Nov-2015 Jens Wiklander <jens.wiklander@linaro.org>

arm64: isb after write to cpacr_el1

Add an isb after each write to cpacr_el1 to make sure the register
update has taken effect before next instruction.

Signed-off-by: Jens Wiklander <jens.wiklander

arm64: isb after write to cpacr_el1

Add an isb after each write to cpacr_el1 to make sure the register
update has taken effect before next instruction.

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

show more ...

9d54e33c19-Nov-2015 Ashutosh Singh <ashutosh.singh@arm.com>

Ensure sctl programming before resuming system

The entry code programms the sctl register to enable
alignment check and disable I/D cache. Need to put an instruction
barrier to ensure sctl programmi

Ensure sctl programming before resuming system

The entry code programms the sctl register to enable
alignment check and disable I/D cache. Need to put an instruction
barrier to ensure sctl programming has taken place before
resuming the system.

Signed-off-by: Ashutosh Singh <ashutosh.singh@arm.com>
Tested-by: Ashutosh Singh <ashutosh.singh@arm.com>
Reviewed-by: James King <james.king@arm.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Joakim Bech <joakim.bech@linaro.org>

show more ...

0e1b200005-Nov-2015 Jens Wiklander <jens.wiklander@linaro.org>

arm: mutex: Add file and line to debuginfo

Adds file and line in the sleep and wake log line if CFG_MUTEX_DEBUG=y.

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Tested-by: Jens Wiklande

arm: mutex: Add file and line to debuginfo

Adds file and line in the sleep and wake log line if CFG_MUTEX_DEBUG=y.

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

show more ...

ee083b0327-Oct-2015 Jens Wiklander <jens.wiklander@linaro.org>

core: arm: remove big lock

Removes big lock leaving TEE Core open to concurrent execution depending
on internal locks around all critical sections.

Signed-off-by: Jens Wiklander <jens.wiklander@lin

core: arm: remove big lock

Removes big lock leaving TEE Core open to concurrent execution depending
on internal locks around all critical sections.

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

show more ...

4508233530-Oct-2015 Jens Wiklander <jens.wiklander@linaro.org>

libutils: make malloc thread-safe

Makes malloc family of functions thread-safe by using an internal mutex
when compiled to be used in TEE Core.

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.

libutils: make malloc thread-safe

Makes malloc family of functions thread-safe by using an internal mutex
when compiled to be used in TEE Core.

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

show more ...

b666b6f228-Oct-2015 Jens Wiklander <jens.wiklander@linaro.org>

core: arm: thread-safe sessions

Make session handling thread-safe with tee_ta_get_session(),
tee_ta_put_session() and tee_ta_unlink_session().

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.o

core: arm: thread-safe sessions

Make session handling thread-safe with tee_ta_get_session(),
tee_ta_put_session() and tee_ta_unlink_session().

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

show more ...

0d1e115c28-Oct-2015 Jens Wiklander <jens.wiklander@linaro.org>

core: ltc: enable thread-safety

Enables thread-safety by replacing empty macros for mutex handling with
a real implementation.

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

core: ltc: enable thread-safety

Enables thread-safety by replacing empty macros for mutex handling with
a real implementation.

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

show more ...

1051957d27-Oct-2015 Jens Wiklander <jens.wiklander@linaro.org>

core: ltc: add lock for memory pool

Adds a recursive lock for the memory pool, allowing only one thread at a
time to use the memory pool. This makes a predictable or consistent
worst case for memory

core: ltc: add lock for memory pool

Adds a recursive lock for the memory pool, allowing only one thread at a
time to use the memory pool. This makes a predictable or consistent
worst case for memory pool utilization. It also allows for a controlled
way of releasing memory from the pool to the pager when the pool is
unused.

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

show more ...

2cdaaacb17-Nov-2015 Jerome Forissier <jerome.forissier@linaro.org>

core: TEE_GetSystemTime() updates

- Set gpd.tee.systemTime.protectionLevel to 1000 when the time source
is the physical count register (CNTPCT), that is, when
CFG_SECURE_TIME_SOURCE_CNTPCT=y. The pr

core: TEE_GetSystemTime() updates

- Set gpd.tee.systemTime.protectionLevel to 1000 when the time source
is the physical count register (CNTPCT), that is, when
CFG_SECURE_TIME_SOURCE_CNTPCT=y. The protection level value is moved
into the time_source struct for better modularity.
- When the time source is REE (CFG_SECURE_TIME_SOURCE_REE=y), make sure
that successive calls return increasing values as required by the GP
TEE Core Internal API v1.1.

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

show more ...

89af93a305-Nov-2015 Jens Wiklander <jens.wiklander@linaro.org>

plat-vexpress: bugfix reading char from uart

If debug prints aren't enabled plat-vexpress doesn't read characters
from the uart resulting in an endless loop.

This patch always reads the character r

plat-vexpress: bugfix reading char from uart

If debug prints aren't enabled plat-vexpress doesn't read characters
from the uart resulting in an endless loop.

This patch always reads the character regardless of debug prints.

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

show more ...

30a673e330-Oct-2015 Peter Maydell <peter.maydell@linaro.org>

drivers/core/gic.c: Set priority mask to allow NS interrupts

The non-secure world's view of interrupt priorities only allows
it to set priorities between 0x80 and 0xff. This means that the
secure wo

drivers/core/gic.c: Set priority mask to allow NS interrupts

The non-secure world's view of interrupt priorities only allows
it to set priorities between 0x80 and 0xff. This means that the
secure world has to set the GICC_PMR (priority mask register) to
a value that allows NS interrupts, otherwise the non-secure
world will never see interrupts and has no way to set the
priorities so that it will ever see them.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

e06e6e7430-Oct-2015 Peter Maydell <peter.maydell@linaro.org>

drivers/core/gic.c: Fix indentation in gic_cpu_init()

The indentation in gic_cpu_init() is using spaces rather than
tabs. Since it's a very short function and we're about to add
some code to it, fix

drivers/core/gic.c: Fix indentation in gic_cpu_init()

The indentation in gic_cpu_init() is using spaces rather than
tabs. Since it's a very short function and we're about to add
some code to it, fix the indentation first.

Fix a comment typo while we're here.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

565da46604-Nov-2015 Jens Wiklander <jens.wiklander@linaro.org>

pager: bug fix boot time moving of hashes

Fixes problem with moving hashes of paged pages during boot. Before MMU is
initialize we invalidate all memory used by TEE Core. In the pager case we
had __

pager: bug fix boot time moving of hashes

Fixes problem with moving hashes of paged pages during boot. Before MMU is
initialize we invalidate all memory used by TEE Core. In the pager case we
had __init_end as end marker but that's not good now that we store the
hashes temporarily at that address. The new end is now __tmp_hashes_end.

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

show more ...

21106ea216-Jul-2015 Jens Wiklander <jens.wiklander@linaro.org>

core: enable paging with concurrent execution

* Updates the pager to handle concurrent execution.
* The pager now supports no execute and readonly pages too.

All physical pages used for paging is a

core: enable paging with concurrent execution

* Updates the pager to handle concurrent execution.
* The pager now supports no execute and readonly pages too.

All physical pages used for paging is also mapped in an aliased area
which is used when preparing a physical page to be mapped at another
virtual address.

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (QEMU, FVP)
Reviewed-by: Joakim Bech <joakim.bech@linaro.org>

show more ...

0f5465bf20-Jul-2015 Jens Wiklander <jens.wiklander@linaro.org>

core: support concurrent use of VFP

Supports concurrent use of VFP by moving the VFP state into struct
thread_ctx. As a consequence VFP can only be used when a thread is
assigned to the CPU. This me

core: support concurrent use of VFP

Supports concurrent use of VFP by moving the VFP state into struct
thread_ctx. As a consequence VFP can only be used when a thread is
assigned to the CPU. This means that the pager can only verify pages
when a thread is active.

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

show more ...

7cacd3b730-Oct-2015 Jens Wiklander <jens.wiklander@linaro.org>

core: wait_queue: sync obj address in debug print

Include address of sync object in wait queue debug prints to easier
locate a contended sync object.

Signed-off-by: Jens Wiklander <jens.wiklander@l

core: wait_queue: sync obj address in debug print

Include address of sync object in wait queue debug prints to easier
locate a contended sync object.

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

show more ...

6ceede1a29-Oct-2015 Jens Wiklander <jens.wiklander@linaro.org>

core: arm: fix initcall alignment in link script

Increases initcall alignment to 8 to work on arm64.

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

core: arm: fix initcall alignment in link script

Increases initcall alignment to 8 to work on arm64.

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

show more ...

80c558ef29-Oct-2015 Jens Wiklander <jens.wiklander@linaro.org>

core: arm: initialize boot thread early

Initialize a boot thread early during boot to allow mutexes and other
objects depending on an active thread can be used during early boot
without any special

core: arm: initialize boot thread early

Initialize a boot thread early during boot to allow mutexes and other
objects depending on an active thread can be used during early boot
without any special quirks.

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

show more ...

1...<<241242243244245246247248249250>>...259