History log of /optee_os/mk/ (Results 376 – 400 of 475)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
4ec2358e13-Jun-2017 Jerome Forissier <jerome.forissier@linaro.org>

core: enable debug mode by default

Assume the default build environment is meant for development, so set
CFG_TEE_CORE_DEBUG=y by default.

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.or

core: enable debug mode by default

Assume the default build environment is meant for development, so set
CFG_TEE_CORE_DEBUG=y by default.

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

show more ...


/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/include/arm32.h
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/include/kernel/generic_boot.h
/optee_os/core/arch/arm/include/kernel/linker.h
/optee_os/core/arch/arm/include/mm/core_memprot.h
/optee_os/core/arch/arm/include/mm/core_mmu.h
/optee_os/core/arch/arm/include/mm/mobj.h
/optee_os/core/arch/arm/kernel/abort.c
/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/kern.ld.S
/optee_os/core/arch/arm/kernel/link_dummy.ld
/optee_os/core/arch/arm/kernel/pseudo_ta.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/mobj.c
/optee_os/core/arch/arm/mm/tee_mm.c
/optee_os/core/arch/arm/plat-imx/imx_pl310.c
/optee_os/core/arch/arm/plat-imx/main.c
/optee_os/core/arch/arm/plat-imx/psci.c
/optee_os/core/arch/arm/plat-sunxi/entry.S
/optee_os/core/arch/arm/plat-sunxi/kern.ld.S
/optee_os/core/arch/arm/plat-sunxi/smp_boot.S
/optee_os/core/arch/arm/pta/benchmark.c
/optee_os/core/arch/arm/pta/sub.mk
/optee_os/core/arch/arm/tee/entry_std.c
/optee_os/core/arch/arm/tee/init.c
/optee_os/core/drivers/sub.mk
/optee_os/core/drivers/tzc380.c
/optee_os/core/include/bench.h
/optee_os/core/include/drivers/tzc380.h
/optee_os/core/include/kernel/asan.h
/optee_os/core/include/kernel/dt.h
/optee_os/core/include/mm/tee_mm.h
/optee_os/core/include/optee_msg.h
/optee_os/core/kernel/asan.c
/optee_os/core/kernel/dt.c
/optee_os/core/kernel/tee_ta_manager.c
/optee_os/core/tee/tee_cryp_utl.c
/optee_os/documentation/secure_storage.md
/optee_os/lib/libutee/include/pta_benchmark.h
/optee_os/lib/libutee/tee_api_operations.c
config.mk
878b409723-May-2017 Jens Wiklander <jens.wiklander@linaro.org>

Remove CFG_SMALL_PAGE_USER_TA=n

Removes CFG_SMALL_PAGE_USER_TA and keep the code that was activated by
CFG_SMALL_PAGE_USER_TA=y. This means that CFG_SMALL_PAGE_USER_TA=n which
resulted in TA being m

Remove CFG_SMALL_PAGE_USER_TA=n

Removes CFG_SMALL_PAGE_USER_TA and keep the code that was activated by
CFG_SMALL_PAGE_USER_TA=y. This means that CFG_SMALL_PAGE_USER_TA=n which
resulted in TA being mapped using 1 MiB or 2 MiB granularity is removed.

Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (QEMU)
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...


/optee_os/.travis.yml
/optee_os/core/arch/arm/cpu/cortex-a15.mk
/optee_os/core/arch/arm/cpu/cortex-a7.mk
/optee_os/core/arch/arm/cpu/cortex-a9.mk
/optee_os/core/arch/arm/cpu/cortex-armv8-0.mk
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/include/kernel/generic_boot.h
/optee_os/core/arch/arm/include/kernel/pm_stubs.h
/optee_os/core/arch/arm/include/kernel/thread.h
/optee_os/core/arch/arm/include/mm/core_mmu.h
/optee_os/core/arch/arm/include/mm/pgt_cache.h
/optee_os/core/arch/arm/kernel/abort.c
/optee_os/core/arch/arm/kernel/elf_load.c
/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/kern.ld.S
/optee_os/core/arch/arm/kernel/link.mk
/optee_os/core/arch/arm/kernel/link_dummy.ld
/optee_os/core/arch/arm/kernel/sub.mk
/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_private.h
/optee_os/core/arch/arm/kernel/user_ta.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/core_mmu_lpae.c
/optee_os/core/arch/arm/mm/core_mmu_v7.c
/optee_os/core/arch/arm/mm/sub.mk
/optee_os/core/arch/arm/mm/tee_mm.c
/optee_os/core/arch/arm/mm/tee_mmu.c
/optee_os/core/arch/arm/mm/tee_pager.c
/optee_os/core/arch/arm/plat-d02/conf.mk
/optee_os/core/arch/arm/plat-d02/main.c
/optee_os/core/arch/arm/plat-hikey/conf.mk
/optee_os/core/arch/arm/plat-hikey/main.c
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/imx6-regs.h
/optee_os/core/arch/arm/plat-imx/imx6.c
/optee_os/core/arch/arm/plat-imx/imx6ul-regs.h
/optee_os/core/arch/arm/plat-imx/imx_pl310.c
/optee_os/core/arch/arm/plat-imx/main.c
/optee_os/core/arch/arm/plat-imx/platform_config.h
/optee_os/core/arch/arm/plat-imx/psci.c
/optee_os/core/arch/arm/plat-imx/sub.mk
/optee_os/core/arch/arm/plat-ls/conf.mk
/optee_os/core/arch/arm/plat-ls/main.c
/optee_os/core/arch/arm/plat-mediatek/conf.mk
/optee_os/core/arch/arm/plat-mediatek/main.c
/optee_os/core/arch/arm/plat-rcar/conf.mk
/optee_os/core/arch/arm/plat-rcar/main.c
/optee_os/core/arch/arm/plat-rpi3/conf.mk
/optee_os/core/arch/arm/plat-rpi3/main.c
/optee_os/core/arch/arm/plat-sprd/conf.mk
/optee_os/core/arch/arm/plat-sprd/console.c
/optee_os/core/arch/arm/plat-stm/conf.mk
/optee_os/core/arch/arm/plat-stm/main.c
/optee_os/core/arch/arm/plat-stm/rng_support.c
/optee_os/core/arch/arm/plat-sunxi/conf.mk
/optee_os/core/arch/arm/plat-sunxi/entry.S
/optee_os/core/arch/arm/plat-sunxi/main.c
/optee_os/core/arch/arm/plat-sunxi/smp_boot.S
/optee_os/core/arch/arm/plat-ti/conf.mk
/optee_os/core/arch/arm/plat-ti/main.c
/optee_os/core/arch/arm/plat-ti/ti_pl310.c
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/arm/plat-vexpress/sub.mk
/optee_os/core/arch/arm/plat-zynq7k/conf.mk
/optee_os/core/arch/arm/plat-zynq7k/main.c
/optee_os/core/arch/arm/plat-zynqmp/conf.mk
/optee_os/core/arch/arm/plat-zynqmp/main.c
/optee_os/core/arch/arm/pta/core_self_tests.c
/optee_os/core/arch/arm/sm/sm_a32.S
/optee_os/core/core.mk
/optee_os/core/include/keep.h
/optee_os/core/kernel/console.c
/optee_os/core/kernel/tee_ta_manager.c
/optee_os/core/tee/tee_svc.c
/optee_os/core/tee/tee_svc_storage.c
/optee_os/documentation/porting_guidelines.md
/optee_os/lib/libutils/ext/include/compiler.h
/optee_os/lib/libutils/ext/include/util.h
/optee_os/lib/libutils/isoc/include/assert.h
/optee_os/lib/libutils/isoc/include/setjmp.h
/optee_os/lib/libutils/isoc/newlib/memchr.c
/optee_os/lib/libutils/isoc/newlib/strchr.c
/optee_os/lib/libutils/isoc/newlib/strcmp.c
/optee_os/lib/libutils/isoc/newlib/strlen.c
/optee_os/lib/libutils/isoc/newlib/strncmp.c
config.mk
/optee_os/scripts/gen_ld_sects.py
/optee_os/scripts/symbolize.py
31a2964211-May-2017 Jerome Forissier <jerome.forissier@linaro.org>

core: dump call stack of user TAs on abort

Update the abort handling code in the TEE core to support unwinding
the user mode stack in addition to the kernel stack. unwind_arm32.c is
modified slightl

core: dump call stack of user TAs on abort

Update the abort handling code in the TEE core to support unwinding
the user mode stack in addition to the kernel stack. unwind_arm32.c is
modified slightly so that it can be built for AArch64. This allows a
64-bit TEE core to dump both 32- and 64-bit TAs.

Paged TAs (CFG_PAGED_USER_TA=y) cannot currently be unwound, because
the code is not ready to handle the page faults that might occur as
the unwinding tables are accessed.

CFG_CORE_UNWIND is renamed to CFG_UNWIND since it enables both the
kernel and user TA stack dumps. It is still set automatically when
CFG_TEE_CORE_DEBUG=y.

32-bit user TAs have to be compiled with `-funwind-tables`, otherwise
the call stack can't be unwound and the abort reports will not show a
call stack .The TA dev kit takes care of adding this flag automatically
when CFG_UNWIND=y.

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

show more ...


/optee_os/Notice.md
/optee_os/README.md
/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/include/kernel/abort.h
/optee_os/core/arch/arm/include/kernel/generic_boot.h
/optee_os/core/arch/arm/include/kernel/thread.h
/optee_os/core/arch/arm/include/kernel/unwind.h
/optee_os/core/arch/arm/include/kernel/user_ta.h
/optee_os/core/arch/arm/include/mm/core_memprot.h
/optee_os/core/arch/arm/include/mm/core_mmu.h
/optee_os/core/arch/arm/kernel/abort.c
/optee_os/core/arch/arm/kernel/elf_common.h
/optee_os/core/arch/arm/kernel/elf_load.c
/optee_os/core/arch/arm/kernel/elf_load.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/kern.ld.S
/optee_os/core/arch/arm/kernel/sub.mk
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_a64.S
/optee_os/core/arch/arm/kernel/unwind_arm32.c
/optee_os/core/arch/arm/kernel/unwind_arm64.c
/optee_os/core/arch/arm/kernel/user_ta.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/core_mmu_lpae.c
/optee_os/core/arch/arm/mm/core_mmu_v7.c
/optee_os/core/arch/arm/mm/mobj.c
/optee_os/core/arch/arm/plat-hikey/conf.mk
/optee_os/core/arch/arm/plat-hikey/platform_config.h
/optee_os/core/arch/arm/plat-sunxi/kern.ld.S
/optee_os/core/arch/arm/plat-ti/platform_config.h
/optee_os/core/arch/arm/tee/entry_std.c
/optee_os/core/include/keep.h
/optee_os/core/include/optee_msg.h
/optee_os/core/include/tee/fs_dirfile.h
/optee_os/core/tee/fs_dirfile.c
/optee_os/core/tee/tee_ree_fs.c
/optee_os/lib/libutee/arch/arm/user_ta_entry.c
/optee_os/lib/libutils/ext/arch/arm/aeabi_unwind.c
/optee_os/lib/libutils/ext/arch/arm/sub.mk
/optee_os/lib/libutils/ext/include/trace.h
/optee_os/lib/libutils/ext/include/util.h
config.mk
/optee_os/scripts/checkpatch_inc.sh
/optee_os/typedefs.checkpatch
ee664c1905-May-2017 Jerome Forissier <jerome.forissier@linaro.org>

core: add interface to load user TAs

Some use cases may require custom load and verification methods for
user-mode Trusted Applications. Introduce struct user_ta_store_ops with
open(), get_size(), r

core: add interface to load user TAs

Some use cases may require custom load and verification methods for
user-mode Trusted Applications. Introduce struct user_ta_store_ops with
open(), get_size(), read() and close() functions to abstract these
tasks from the ELF loader code. Do the communication with
tee-supplicant as well as the hashing and signature verification of the
TA binary in core/arch/arm/kernel/ree_fs_ta.c, which may be disabled
and replaced by a different implementation if need be.

CC: Zeng Tao <prime.zeng@hisilicon.com>
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey, QEMU)
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

455856d419-Apr-2017 Jens Wiklander <jens.wiklander@linaro.org>

Remove SQL-FS

With recent developments in REE-FS SQL-FS has become redundant. This
patch removes SQL-FS.

Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
Acked-by: Jerome Forissier <jerome.forissi

Remove SQL-FS

With recent developments in REE-FS SQL-FS has become redundant. This
patch removes SQL-FS.

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

show more ...


/optee_os/.travis.yml
/optee_os/MAINTAINERS.md
/optee_os/README.md
/optee_os/core/arch/arm/include/arm32.h
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/include/kernel/thread.h
/optee_os/core/arch/arm/include/mm/core_mmu.h
/optee_os/core/arch/arm/kernel/generic_boot.c
/optee_os/core/arch/arm/kernel/otp_stubs.c
/optee_os/core/arch/arm/kernel/sub.mk
/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/user_ta.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/core_mmu_lpae.c
/optee_os/core/arch/arm/mm/core_mmu_v7.c
/optee_os/core/arch/arm/plat-imx/a9_plat_init.S
/optee_os/core/arch/arm/plat-mediatek/main.c
/optee_os/core/arch/arm/plat-mediatek/platform_config.h
/optee_os/core/arch/arm/plat-rpi3/main.c
/optee_os/core/arch/arm/plat-rpi3/platform_config.h
/optee_os/core/arch/arm/plat-sprd/main.c
/optee_os/core/arch/arm/plat-sprd/platform_config.h
/optee_os/core/arch/arm/plat-stm/main.c
/optee_os/core/arch/arm/plat-stm/platform_config.h
/optee_os/core/arch/arm/plat-sunxi/platform.c
/optee_os/core/arch/arm/plat-sunxi/platform_config.h
/optee_os/core/arch/arm/plat-ti/api_monitor_index_a15.h
/optee_os/core/arch/arm/plat-ti/api_monitor_index_a9.h
/optee_os/core/arch/arm/plat-ti/conf.mk
/optee_os/core/arch/arm/plat-ti/main.c
/optee_os/core/arch/arm/plat-ti/platform_config.h
/optee_os/core/arch/arm/plat-ti/sm_platform_handler_a15.c
/optee_os/core/arch/arm/plat-ti/sm_platform_handler_a9.c
/optee_os/core/arch/arm/plat-ti/sub.mk
/optee_os/core/arch/arm/plat-ti/ti_pl310.c
/optee_os/core/arch/arm/plat-zynqmp/main.c
/optee_os/core/arch/arm/plat-zynqmp/platform_config.h
/optee_os/core/arch/arm/pta/core_fs_htree_tests.c
/optee_os/core/drivers/gic.c
/optee_os/core/include/kernel/tee_common_otp.h
/optee_os/core/include/optee_msg_supplicant.h
/optee_os/core/include/tee/fs_dirfile.h
/optee_os/core/include/tee/fs_htree.h
/optee_os/core/include/tee/tee_fs.h
/optee_os/core/include/tee/tee_fs_key_manager.h
/optee_os/core/include/tee/tee_fs_rpc.h
/optee_os/core/include/tee/tee_svc_storage.h
/optee_os/core/lib/libtomcrypt/sub.mk
/optee_os/core/tee/fs_dirfile.c
/optee_os/core/tee/fs_htree.c
/optee_os/core/tee/sub.mk
/optee_os/core/tee/tee_fs_key_manager.c
/optee_os/core/tee/tee_fs_rpc.c
/optee_os/core/tee/tee_ree_fs.c
/optee_os/core/tee/tee_rpmb_fs.c
/optee_os/core/tee/tee_svc_cryp.c
/optee_os/core/tee/tee_svc_storage.c
/optee_os/documentation/interrupt_handling.md
/optee_os/documentation/secure_storage.md
/optee_os/lib/libutee/include/tee_api_defines_extensions.h
config.mk
/optee_os/scripts/checkpatch_inc.sh
13301e1206-Apr-2017 Jens Wiklander <jens.wiklander@linaro.org>

mk/subdir.mk: clear gen-srcs when initializing

When initializing in mk/subdir.mk to process another sub.mk clear
gen-srcs also to avoid leftovers from previous sub.mk.

Reviewed-by: Etienne Carriere

mk/subdir.mk: clear gen-srcs when initializing

When initializing in mk/subdir.mk to process another sub.mk clear
gen-srcs also to avoid leftovers from previous sub.mk.

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

show more ...

702609a717-Mar-2017 Jerome Forissier <jerome.forissier@linaro.org>

Update CHANGELOG.md for 2.4.0

Signed-off-by: Joakim Bech <joakim.bech@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Tested-by: Peng Fan <peng.fan@nxp.com> (imx6ulevk)
Tested-by

Update CHANGELOG.md for 2.4.0

Signed-off-by: Joakim Bech <joakim.bech@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Tested-by: Peng Fan <peng.fan@nxp.com> (imx6ulevk)
Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (Juno)
Tested-by: Etienne Carriere <etienne.carriere@linaro.org> (b2260, GP)
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey)
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (D02)
Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (QEMU v7)
Tested-by: Joakim Bech <joakim.bech@linaro.org> (MTK8173)
Tested-by: Joakim Bech <joakim.bech@linaro.org> (QEMU v8)
Tested-by: Sumit Garg <sumit.garg@nxp.com> (ls1021atwr - Single core)
Tested-by: Sören Brinkmann <soren.brinkmann@xilinx.com> (zynqmp)
Tested-by: Volodymyr Babchuk <vlad.babchuk@gmail.com> (RCAR H3)
Tested-by: Igor Opaniuk <igor.opaniuk@linaro.org> (RPi3)
Tested-by: Andrew F. Davis <afd@ti.com> (TI-DRA7xx)

show more ...

b96f67db25-Mar-2017 Victor Chong <victor.chong@linaro.org>

mk/aosp_optee.mk: Allow extra flags for aosp builds

Signed-off-by: Victor Chong <victor.chong@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
[jf: rebase on top of master]
Signed

mk/aosp_optee.mk: Allow extra flags for aosp builds

Signed-off-by: Victor Chong <victor.chong@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
[jf: rebase on top of master]
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...


/optee_os/.travis.yml
/optee_os/core/arch/arm/include/kernel/pseudo_ta.h
/optee_os/core/arch/arm/include/mm/core_memprot.h
/optee_os/core/arch/arm/kernel/elf_common.h
/optee_os/core/arch/arm/kernel/elf_load.c
/optee_os/core/arch/arm/kernel/pseudo_ta.c
/optee_os/core/arch/arm/kernel/trace_ext.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/core_mmu_lpae.c
/optee_os/core/arch/arm/plat-d02/main.c
/optee_os/core/arch/arm/plat-hikey/main.c
/optee_os/core/arch/arm/plat-imx/a9_plat_init.S
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/main.c
/optee_os/core/arch/arm/plat-imx/platform_config.h
/optee_os/core/arch/arm/plat-imx/sub.mk
/optee_os/core/arch/arm/plat-ls/main.c
/optee_os/core/arch/arm/plat-mediatek/main.c
/optee_os/core/arch/arm/plat-rcar/main.c
/optee_os/core/arch/arm/plat-rpi3/main.c
/optee_os/core/arch/arm/plat-sprd/console.c
/optee_os/core/arch/arm/plat-stm/platform_config.h
/optee_os/core/arch/arm/plat-sunxi/main.c
/optee_os/core/arch/arm/plat-sunxi/sub.mk
/optee_os/core/arch/arm/plat-ti/main.c
/optee_os/core/arch/arm/plat-ti/sub.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/arm/plat-vexpress/platform_config.h
/optee_os/core/arch/arm/plat-zynq7k/main.c
/optee_os/core/arch/arm/plat-zynqmp/main.c
/optee_os/core/arch/arm/pta/pta_invoke_tests.c
/optee_os/core/arch/arm/pta/sub.mk
/optee_os/core/arch/arm/tee/entry_std.c
/optee_os/core/drivers/cdns_uart.c
/optee_os/core/drivers/hi16xx_uart.c
/optee_os/core/drivers/imx_uart.c
/optee_os/core/drivers/ns16550.c
/optee_os/core/drivers/pl011.c
/optee_os/core/drivers/scif.c
/optee_os/core/drivers/serial8250_uart.c
/optee_os/core/drivers/sprd_uart.c
/optee_os/core/drivers/sunxi_uart.c
/optee_os/core/include/console.h
/optee_os/core/include/drivers/cdns_uart.h
/optee_os/core/include/drivers/hi16xx_uart.h
/optee_os/core/include/drivers/imx_uart.h
/optee_os/core/include/drivers/ns16550.h
/optee_os/core/include/drivers/pl011.h
/optee_os/core/include/drivers/scif.h
/optee_os/core/include/drivers/serial.h
/optee_os/core/include/drivers/serial8250_uart.h
/optee_os/core/include/drivers/sprd_uart.h
/optee_os/core/include/drivers/sunxi_uart.h
/optee_os/core/include/tee/tee_fs.h
/optee_os/core/include/tee/tee_fs_rpc.h
/optee_os/core/include/tee/tee_obj.h
/optee_os/core/include/tee/tee_pobj.h
/optee_os/core/include/tee/tee_svc_storage.h
/optee_os/core/kernel/console.c
/optee_os/core/kernel/sub.mk
/optee_os/core/tee/tee_fs_rpc.c
/optee_os/core/tee/tee_obj.c
/optee_os/core/tee/tee_pobj.c
/optee_os/core/tee/tee_ree_fs.c
/optee_os/core/tee/tee_rpmb_fs.c
/optee_os/core/tee/tee_sql_fs.c
/optee_os/core/tee/tee_svc_storage.c
/optee_os/documentation/secure_storage.md
/optee_os/documentation/secure_storage_sql.md
/optee_os/lib/libutee/include/pta_invoke_tests.h
aosp_optee.mk
80a4e51d17-Mar-2017 Etienne Carriere <etienne.carriere@linaro.org>

core: allow SDP buffers as memory reference parameters

Before this change, at OP-TEE entry (from non secure), memory
reference parameters needed to match the 'shm_mobj': the nonsecure
shared memory.

core: allow SDP buffers as memory reference parameters

Before this change, at OP-TEE entry (from non secure), memory
reference parameters needed to match the 'shm_mobj': the nonsecure
shared memory.

This change allows memory reference parameters to match the
registered SDP memories and be used when invoking TA that
claimed the SDP support through TA_FLAG_SECURE_DATA_PATH.

As SDP memory is not default mapped in OP-TEE core, nonsecure cannot
invoke a pseudo/static TA with a SDP memref parameter. only a user TA
can invoke a pseudo/static TA with a SDP memref parameter.

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

show more ...


/optee_os/core/arch/arm/include/kernel/mutex.h
/optee_os/core/arch/arm/include/kernel/wait_queue.h
/optee_os/core/arch/arm/include/mm/core_memprot.h
/optee_os/core/arch/arm/include/mm/core_mmu.h
/optee_os/core/arch/arm/include/mm/mobj.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/kern.ld.S
/optee_os/core/arch/arm/kernel/mutex.c
/optee_os/core/arch/arm/kernel/pseudo_ta.c
/optee_os/core/arch/arm/kernel/tee_time_arm_cntpct.c
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/user_ta.c
/optee_os/core/arch/arm/kernel/wait_queue.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/mobj.c
/optee_os/core/arch/arm/mm/tee_pager.c
/optee_os/core/arch/arm/plat-ls/plat_init.S
/optee_os/core/arch/arm/plat-rpi3/conf.mk
/optee_os/core/arch/arm/plat-stm/tz_a9init.S
/optee_os/core/arch/arm/plat-sunxi/platform.c
/optee_os/core/arch/arm/plat-ti/main.c
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/arch/arm/plat-zynq7k/plat_init.S
/optee_os/core/arch/arm/plat-zynqmp/conf.mk
/optee_os/core/arch/arm/pta/sub.mk
/optee_os/core/arch/arm/sm/psci.c
/optee_os/core/arch/arm/tee/arch_svc.c
/optee_os/core/arch/arm/tee/cache.c
/optee_os/core/arch/arm/tee/entry_fast.c
/optee_os/core/arch/arm/tee/entry_std.c
/optee_os/core/arch/arm/tee/pta_socket.c
/optee_os/core/arch/arm/tee/sub.mk
/optee_os/core/arch/arm/tee/svc_cache.c
/optee_os/core/include/io.h
/optee_os/core/include/tee/cache.h
/optee_os/core/include/tee/fs_htree.h
/optee_os/core/include/tee/svc_cache.h
/optee_os/core/include/tee/tee_cryp_utl.h
/optee_os/core/include/tee/tee_fs_key_manager.h
/optee_os/core/kernel/tee_ta_manager.c
/optee_os/core/lib/libtomcrypt/src/tee_ltc_provider.c
/optee_os/core/tee/fs_htree.c
/optee_os/core/tee/sub.mk
/optee_os/core/tee/tee_cryp_utl.c
/optee_os/core/tee/tee_fs_key_manager.c
/optee_os/core/tee/tee_obj.c
/optee_os/core/tee/tee_ree_fs.c
/optee_os/core/tee/tee_rpmb_fs.c
/optee_os/core/tee/tee_sql_fs.c
/optee_os/core/tee/tee_svc_storage.c
/optee_os/documentation/images/secure_storage/block_data_encryption.odg
/optee_os/documentation/images/secure_storage/block_data_encryption.png
/optee_os/documentation/images/secure_storage/meta_data_encryption.odg
/optee_os/documentation/images/secure_storage/meta_data_encryption.png
/optee_os/documentation/secure_storage.md
/optee_os/documentation/secure_storage_sql.md
/optee_os/lib/libutee/include/user_ta_header.h
/optee_os/lib/libutee/tee_user_mem.c
config.mk
/optee_os/ta/ta.mk
6f3ede2423-Feb-2017 Jerome Forissier <jerome.forissier@linaro.org>

Remove unused CFG_REE_FS_BLOCK_CACHE

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

Remove unused CFG_REE_FS_BLOCK_CACHE

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

show more ...


/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/include/kernel/spinlock.h
/optee_os/core/arch/arm/include/kernel/thread.h
/optee_os/core/arch/arm/include/kernel/thread_defs.h
/optee_os/core/arch/arm/include/kernel/time_source.h
/optee_os/core/arch/arm/include/mm/core_memprot.h
/optee_os/core/arch/arm/include/sm/optee_smc.h
/optee_os/core/arch/arm/include/sm/sm.h
/optee_os/core/arch/arm/kernel/generic_boot.c
/optee_os/core/arch/arm/kernel/spin_lock_debug.c
/optee_os/core/arch/arm/kernel/tee_time_arm_cntpct.c
/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/mm/core_mmu.c
/optee_os/core/arch/arm/mm/mobj.c
/optee_os/core/arch/arm/plat-d02/main.c
/optee_os/core/arch/arm/plat-hikey/hikey_peripherals.h
/optee_os/core/arch/arm/plat-hikey/main.c
/optee_os/core/arch/arm/plat-hikey/spi_test.c
/optee_os/core/arch/arm/plat-imx/main.c
/optee_os/core/arch/arm/plat-ls/main.c
/optee_os/core/arch/arm/plat-mediatek/main.c
/optee_os/core/arch/arm/plat-rcar/main.c
/optee_os/core/arch/arm/plat-rpi3/main.c
/optee_os/core/arch/arm/plat-sprd/main.c
/optee_os/core/arch/arm/plat-stm/main.c
/optee_os/core/arch/arm/plat-sunxi/main.c
/optee_os/core/arch/arm/plat-ti/api_monitor_index.h
/optee_os/core/arch/arm/plat-ti/conf.mk
/optee_os/core/arch/arm/plat-ti/main.c
/optee_os/core/arch/arm/plat-ti/platform_config.h
/optee_os/core/arch/arm/plat-ti/sm_platform_handler.c
/optee_os/core/arch/arm/plat-ti/sub.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/arm/plat-zynq7k/main.c
/optee_os/core/arch/arm/plat-zynqmp/main.c
/optee_os/core/arch/arm/pta/interrupt_tests.c
/optee_os/core/arch/arm/sm/sm.c
/optee_os/core/arch/arm/tee/arch_svc.c
/optee_os/core/arch/arm/tee/entry_std.c
/optee_os/core/drivers/pl022_spi.c
/optee_os/core/include/drivers/pl022_spi.h
/optee_os/core/include/kernel/tee_time.h
/optee_os/core/include/spi.h
/optee_os/core/include/tee/tee_cryp_utl.h
/optee_os/core/lib/libtomcrypt/src/tee_ltc_provider.c
/optee_os/core/tee/tee_cryp_utl.c
/optee_os/core/tee/tee_time_generic.c
/optee_os/documentation/interrupt_handling.md
/optee_os/documentation/optee_design.md
/optee_os/lib/libutils/isoc/bget_malloc.c
config.mk
/optee_os/scripts/checkpatch.sh
/optee_os/scripts/checkpatch_inc.sh
cb0b595413-Dec-2016 Jens Wiklander <jens.wiklander@linaro.org>

core: add pseudo TA for socket

Adds a pseudo TA sockets using tee-supplicant.

Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Tested-by: Etienne Carriere <etienne.carriere@linaro.org> (

core: add pseudo TA for socket

Adds a pseudo TA sockets using tee-supplicant.

Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Tested-by: Etienne Carriere <etienne.carriere@linaro.org> (b2260 pager=y/n)
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey)
Tested-by: Etienne Carriere <etienne.carriere@linaro.org> (b2260)
Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (QEMU)
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...


/optee_os/README.md
/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/include/kernel/pseudo_ta.h
/optee_os/core/arch/arm/include/kernel/thread.h
/optee_os/core/arch/arm/kernel/generic_entry_a64.S
/optee_os/core/arch/arm/kernel/link.mk
/optee_os/core/arch/arm/kernel/pseudo_ta.c
/optee_os/core/arch/arm/kernel/sub.mk
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/user_ta.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/core_mmu_lpae.c
/optee_os/core/arch/arm/mm/mobj.c
/optee_os/core/arch/arm/mm/pgt_cache.c
/optee_os/core/arch/arm/mm/tee_mmu.c
/optee_os/core/arch/arm/mm/tee_pager.c
/optee_os/core/arch/arm/plat-ti/conf.mk
/optee_os/core/arch/arm/plat-ti/platform_config.h
/optee_os/core/arch/arm/pta/core_self_tests.c
/optee_os/core/arch/arm/pta/core_self_tests.h
/optee_os/core/arch/arm/pta/gprof.c
/optee_os/core/arch/arm/pta/interrupt_tests.c
/optee_os/core/arch/arm/pta/pta_self_tests.c
/optee_os/core/arch/arm/pta/se_api_self_tests.c
/optee_os/core/arch/arm/pta/stats.c
/optee_os/core/arch/arm/pta/sub.mk
/optee_os/core/arch/arm/pta/tee_fs_key_manager_tests.c
/optee_os/core/arch/arm/tee/pta_socket.c
/optee_os/core/arch/arm/tee/sub.mk
/optee_os/core/drivers/dra7_rng.c
/optee_os/core/drivers/sub.mk
/optee_os/core/include/kernel/tee_ta_manager.h
/optee_os/core/include/optee_msg_supplicant.h
/optee_os/core/kernel/tee_ta_manager.c
/optee_os/core/tee/tee_svc.c
/optee_os/documentation/build_system.md
/optee_os/documentation/crypto.md
/optee_os/documentation/interrupt_handling.md
/optee_os/documentation/optee_design.md
/optee_os/documentation/se_api_design.md
/optee_os/lib/libutee/include/__tee_ipsocket.h
/optee_os/lib/libutee/include/__tee_isocket_defines.h
/optee_os/lib/libutee/include/__tee_tcpsocket_defines.h
/optee_os/lib/libutee/include/__tee_tcpsocket_defines_extensions.h
/optee_os/lib/libutee/include/__tee_udpsocket_defines.h
/optee_os/lib/libutee/include/pta_socket.h
/optee_os/lib/libutee/include/tee_isocket.h
/optee_os/lib/libutee/include/tee_tcpsocket.h
/optee_os/lib/libutee/include/tee_udpsocket.h
/optee_os/lib/libutee/sub.mk
/optee_os/lib/libutee/tee_api_property.c
/optee_os/lib/libutee/tee_socket_private.h
/optee_os/lib/libutee/tee_socket_pta.c
/optee_os/lib/libutee/tee_tcpudp_socket.c
/optee_os/lib/libutils/ext/include/util.h
config.mk
30a4433607-Feb-2017 Jerome Forissier <jerome.forissier@linaro.org>

make clean: don't fail on non-empty directory

"make clean" may report errors when trying to clean with different
configuration values than the ones used during the build. For instance:

$ make -s CF

make clean: don't fail on non-empty directory

"make clean" may report errors when trying to clean with different
configuration values than the ones used during the build. For instance:

$ make -s CFG_RPMB_FS=y
$ make clean
CLEAN out/arm-plat-vexpress
rmdir: failed to remove 'out/arm-plat-vexpress/core/tee': Directory not empty
rmdir: failed to remove 'out/arm-plat-vexpress/core': Directory not empty
rmdir: failed to remove 'out/arm-plat-vexpress': Directory not empty
Makefile:88: recipe for target 'clean' failed
make: *** [clean] Error 1

The clean command should not fail, since the build tree was properly
cleaned for the requested configuration. Fix this by using
'rmdir --ignore-fail-on-non-empty'.

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

show more ...

883c4be313-Oct-2016 Jerome Forissier <jerome.forissier@linaro.org>

Add support for user TA profiling with gprof (-pg)

Adds the infrastructure to collect profiling information from Trusted
Applications running in user mode and instrumented with -pg.
Enable with: CFG

Add support for user TA profiling with gprof (-pg)

Adds the infrastructure to collect profiling information from Trusted
Applications running in user mode and instrumented with -pg.
Enable with: CFG_TA_GPROF_SUPPORT=y.

Profiling support in itself adds no significant performance overhead.
Instrumented applications however may run 1.3x - 2x slower, and have a
larger .bss section (+1.36 times .text size for 32-bit TAs, +1.77 times
.text size for 64-bit ones).

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (D02 64-bit)
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (QEMU 32-bit)
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

f3bb231213-Oct-2016 Jerome Forissier <jerome.forissier@linaro.org>

Add options to build user libraries with profiling enabled (-pg)

Set CFG_TA_GPROF=y to build libutee and the user-mode versions of
libutils and libmpa with the -pg flag (gprof profiling).
This featu

Add options to build user libraries with profiling enabled (-pg)

Set CFG_TA_GPROF=y to build libutee and the user-mode versions of
libutils and libmpa with the -pg flag (gprof profiling).
This feature depends on TA profiling support in OP-TEE core which will
be introduced in a later commit.

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

show more ...

ed1993b723-Jan-2017 Jerome Forissier <jerome.forissier@linaro.org>

storage: RPMB: don't try to program the RPMB key by default

Prevent leakage of the RPMB security key by never programming it,
unless a special build option is set (CFG_RPMB_WRITE_KEY=y).

Signed-off

storage: RPMB: don't try to program the RPMB key by default

Prevent leakage of the RPMB security key by never programming it,
unless a special build option is set (CFG_RPMB_WRITE_KEY=y).

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

show more ...


/optee_os/CHANGELOG.md
/optee_os/core/arch/arm/include/kernel/generic_boot.h
/optee_os/core/arch/arm/include/kernel/user_ta.h
/optee_os/core/arch/arm/include/mm/core_memprot.h
/optee_os/core/arch/arm/include/mm/core_mmu.h
/optee_os/core/arch/arm/include/mm/mobj.h
/optee_os/core/arch/arm/include/mm/pgt_cache.h
/optee_os/core/arch/arm/include/mm/tee_pager.h
/optee_os/core/arch/arm/include/sm/psci.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/link.mk
/optee_os/core/arch/arm/kernel/static_ta.c
/optee_os/core/arch/arm/kernel/sub.mk
/optee_os/core/arch/arm/kernel/user_ta.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/mobj.c
/optee_os/core/arch/arm/mm/pgt_cache.c
/optee_os/core/arch/arm/mm/sub.mk
/optee_os/core/arch/arm/mm/tee_mmu.c
/optee_os/core/arch/arm/mm/tee_pager.c
/optee_os/core/arch/arm/plat-imx/main.c
/optee_os/core/arch/arm/plat-imx/platform_config.h
/optee_os/core/arch/arm/plat-imx/psci.c
/optee_os/core/arch/arm/plat-imx/sub.mk
/optee_os/core/arch/arm/plat-zynq7k/platform_config.h
/optee_os/core/arch/arm/sm/psci.c
/optee_os/core/arch/arm/sm/sm.c
/optee_os/core/arch/arm/sm/std_smc.c
/optee_os/core/arch/arm/sm/sub.mk
/optee_os/core/arch/arm/tee/entry_std.c
/optee_os/core/include/kernel/tee_dispatch.h
/optee_os/core/include/kernel/tee_ta_manager.h
/optee_os/core/include/mm/tee_mmu.h
/optee_os/core/include/mm/tee_mmu_types.h
/optee_os/core/kernel/tee_dispatch.c
/optee_os/core/kernel/tee_ta_manager.c
/optee_os/core/tee/tee_rpmb_fs.c
/optee_os/core/tee/tee_svc.c
/optee_os/documentation/optee_design.md
/optee_os/lib/libutee/tee_api_operations.c
config.mk
/optee_os/ta/ta.mk
fb67617216-Jan-2017 Joakim Bech <joakim.bech@linaro.org>

mk: step up OP-TEE revision to 2.3.0

Signed-off-by: Joakim Bech <joakim.bech@linaro.org>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>

6331a05010-Jan-2017 Jerome Forissier <jerome.forissier@linaro.org>

mk/cleandirs.mk: don't fail if $(O) is not set

When mk/cleandirs.mk is included by the makefile of a TA, it can happen
that $(O) is empty. Handle this case properly so that "make clean" will
run wit

mk/cleandirs.mk: don't fail if $(O) is not set

When mk/cleandirs.mk is included by the makefile of a TA, it can happen
that $(O) is empty. Handle this case properly so that "make clean" will
run without error.

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

show more ...

9ac870c906-Jan-2017 Jerome Forissier <jerome.forissier@linaro.org>

Make sure "make clean" removes everything "make" has created under $(O)

"make clean" would leave behind some files and many directories. Fix
this by correctly tracking the files and directories crea

Make sure "make clean" removes everything "make" has created under $(O)

"make clean" would leave behind some files and many directories. Fix
this by correctly tracking the files and directories created under $(O)
during the build process:
- Fix incorrect file names in $(cleanfiles) and add a few missing
ones.
- Introduce a makefile macro: $(cleandirs-for-rmdir), defined in a new
file: mk/cleandirs.mk. It returns the list of directories that should
be removed, given a list of files.
The clean target removes the files, then all the directories in depth-
first order. $(O) is also removed, if found to be empty.

Note that a more straightforward approach was discussed in [1]: use
"rm -rf $(O)/some_dir" and get rid of the whole file and directory
tracking via $(cleanfiles) and $(cleandirs). Although it was agreed it
would be safe, doing so would necessarily break the backward
compatibility for build scripts relying on "make O=<some path>", due to
the additional level ($(O)/some_dir).

Finally, mk/cleandirs.mk is exported to the TA dev kit and the clean
rule for the TAs is updated.

[1] https://github.com/OP-TEE/optee_os/pull/1270

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

show more ...


/optee_os/.travis.yml
/optee_os/MAINTAINERS.md
/optee_os/Makefile
/optee_os/README.md
/optee_os/core/arch/arm/include/arm32.h
/optee_os/core/arch/arm/include/arm32_macros.S
/optee_os/core/arch/arm/include/arm32_macros_cortex_a9.S
/optee_os/core/arch/arm/include/kernel/generic_boot.h
/optee_os/core/arch/arm/include/kernel/spinlock.h
/optee_os/core/arch/arm/include/kernel/thread.h
/optee_os/core/arch/arm/include/kernel/tz_ssvce_def.h
/optee_os/core/arch/arm/include/mm/core_mmu.h
/optee_os/core/arch/arm/include/mm/tee_pager.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/link.mk
/optee_os/core/arch/arm/kernel/mutex.c
/optee_os/core/arch/arm/kernel/proc_a32.S
/optee_os/core/arch/arm/kernel/spin_lock_a32.S
/optee_os/core/arch/arm/kernel/spin_lock_a64.S
/optee_os/core/arch/arm/kernel/spin_lock_debug.c
/optee_os/core/arch/arm/kernel/sub.mk
/optee_os/core/arch/arm/kernel/tee_l2cc_mutex.c
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_private.h
/optee_os/core/arch/arm/kernel/tz_ssvce_pl310_a32.S
/optee_os/core/arch/arm/kernel/user_ta.c
/optee_os/core/arch/arm/kernel/wait_queue.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/core_mmu_lpae.c
/optee_os/core/arch/arm/mm/core_mmu_v7.c
/optee_os/core/arch/arm/mm/pgt_cache.c
/optee_os/core/arch/arm/mm/tee_mmu.c
/optee_os/core/arch/arm/mm/tee_pager.c
/optee_os/core/arch/arm/plat-hikey/conf.mk
/optee_os/core/arch/arm/plat-hikey/hikey_peripherals.h
/optee_os/core/arch/arm/plat-hikey/main.c
/optee_os/core/arch/arm/plat-hikey/spi_test.c
/optee_os/core/arch/arm/plat-hikey/sub.mk
/optee_os/core/arch/arm/plat-imx/a9_plat_init.S
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/imx6ul.c
/optee_os/core/arch/arm/plat-imx/main.c
/optee_os/core/arch/arm/plat-imx/platform_config.h
/optee_os/core/arch/arm/plat-imx/sub.mk
/optee_os/core/arch/arm/plat-ls/conf.mk
/optee_os/core/arch/arm/plat-ls/main.c
/optee_os/core/arch/arm/plat-ls/plat_init.S
/optee_os/core/arch/arm/plat-ls/platform_config.h
/optee_os/core/arch/arm/plat-ls/sub.mk
/optee_os/core/arch/arm/plat-stm/tz_a9init.S
/optee_os/core/arch/arm/plat-sunxi/main.c
/optee_os/core/arch/arm/plat-ti/console.c
/optee_os/core/arch/arm/plat-ti/main.c
/optee_os/core/arch/arm/plat-ti/platform_config.h
/optee_os/core/arch/arm/plat-ti/sub.mk
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/arm/plat-vexpress/platform_config.h
/optee_os/core/arch/arm/plat-zynq7k/conf.mk
/optee_os/core/arch/arm/plat-zynq7k/kern.ld.S
/optee_os/core/arch/arm/plat-zynq7k/link.mk
/optee_os/core/arch/arm/plat-zynq7k/main.c
/optee_os/core/arch/arm/plat-zynq7k/plat_init.S
/optee_os/core/arch/arm/plat-zynq7k/platform_config.h
/optee_os/core/arch/arm/plat-zynq7k/platform_smc.h
/optee_os/core/arch/arm/plat-zynq7k/sub.mk
/optee_os/core/arch/arm/sta/interrupt_tests.c
/optee_os/core/arch/arm/sta/sub.mk
/optee_os/core/arch/arm/tee/entry_fast.c
/optee_os/core/arch/arm/tee/entry_std.c
/optee_os/core/drivers/gic.c
/optee_os/core/drivers/pl022_spi.c
/optee_os/core/drivers/ps2mouse.c
/optee_os/core/include/drivers/serial8250_uart.h
/optee_os/core/include/keep.h
/optee_os/core/include/kernel/interrupt.h
/optee_os/core/include/optee_msg.h
/optee_os/core/include/tee/tee_fs_key_manager.h
/optee_os/core/include/tee/uuid.h
/optee_os/core/kernel/interrupt.c
/optee_os/core/lib/libtomcrypt/src/ciphers/sub.mk
/optee_os/core/lib/libtomcrypt/src/mpa_desc.c
/optee_os/core/sub.mk
/optee_os/core/tee/sub.mk
/optee_os/core/tee/tee_pobj.c
/optee_os/core/tee/tee_ree_fs.c
/optee_os/core/tee/tee_sql_fs.c
/optee_os/core/tee/tee_svc_storage.c
/optee_os/core/tee/uuid.c
/optee_os/documentation/images/secure_storage/block_data_encryption.odg
/optee_os/documentation/images/secure_storage/block_data_encryption.png
/optee_os/documentation/images/secure_storage/meta_data_encryption.odg
/optee_os/documentation/images/secure_storage/meta_data_encryption.png
/optee_os/documentation/optee_design.md
/optee_os/documentation/secure_storage.md
/optee_os/documentation/secure_storage_rpmb.md
/optee_os/lib/libutee/tui/sub.mk
/optee_os/lib/libutils/ext/snprintk.c
/optee_os/lib/libutils/isoc/bget_malloc.c
/optee_os/lib/libutils/isoc/include/malloc.h
/optee_os/lib/libutils/isoc/include/stdint.h
/optee_os/lib/libutils/isoc/malloc_lock.c
/optee_os/lib/libzlib/sub.mk
cleandirs.mk
/optee_os/scripts/checkpatch_inc.sh
/optee_os/ta/mk/ta_dev_kit.mk
/optee_os/ta/ta.mk
ab046bb518-Nov-2016 Etienne Carriere <etienne.carriere@linaro.org>

core/armv7: cleanup bootargs

In non-A-TF boot modes, OP-TEE core expects some boot arguments:
- nonsecure entry point, default expected from core register LR.
- pagestore address, when pager is enab

core/armv7: cleanup bootargs

In non-A-TF boot modes, OP-TEE core expects some boot arguments:
- nonsecure entry point, default expected from core register LR.
- pagestore address, when pager is enable, from core register R0.
- devicetree address, when DT is enable, from core register R2.

Some non-A-TF booted platform rely on u-boot has bootloader, and
expect u-boot to boot both linux and op-tee. armv7/linux expects the
following boot arguments:
- machine ID, expected from core register R1.
- devicetree address from core register R2.

Before this patch, some platform used CFG_TEE_GDB_BOOT together with
CFG_BUILT_IN_ARGS to both provide op-tee core boot arguments, and
relay linux argument from op-tee entry to linux kernel entry
(nonsecure entry).

This change proposes to rationalize a bit. Both linux and optee expect
device tree from register R2. op-tee could relay machine ID (R1).

This change removes CFG_TEE_GDB_BOOT and CFG_BUILT_IN_ARGS that are now
deprecated.

This change still supports CFG_PAGEABLE_ADDR, CFG_DT_ADDR and
CFG_NS_ENTRY_ADDR to statically define the pagestore, device tree
and nonsecure entry. These can be defined independently.

Since this change, if CFG_WITH_ARM_TRUSTED_FW is not enable, the
standard boot arguments (registers R1 and R2 at optee entry) are
propagated to the non secure entry.

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

show more ...


/optee_os/.travis.yml
/optee_os/README.md
/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/include/arm32_macros.S
/optee_os/core/arch/arm/include/kernel/generic_boot.h
/optee_os/core/arch/arm/include/kernel/static_ta.h
/optee_os/core/arch/arm/include/kernel/thread.h
/optee_os/core/arch/arm/include/mm/core_mmu.h
/optee_os/core/arch/arm/include/sm/sm.h
/optee_os/core/arch/arm/kernel/asm-defines.c
/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/static_ta.c
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_a32.S
/optee_os/core/arch/arm/kernel/user_ta.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/tee_mm.c
/optee_os/core/arch/arm/mm/tee_mmu.c
/optee_os/core/arch/arm/mm/tee_pager.c
/optee_os/core/arch/arm/plat-imx/a9_plat_init.S
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/imx_pl310.c
/optee_os/core/arch/arm/plat-imx/main.c
/optee_os/core/arch/arm/plat-imx/platform_config.h
/optee_os/core/arch/arm/plat-imx/sub.mk
/optee_os/core/arch/arm/plat-stm/conf.mk
/optee_os/core/arch/arm/plat-stm/platform_config.h
/optee_os/core/arch/arm/plat-sunxi/platform.c
/optee_os/core/arch/arm/plat-ti/main.c
/optee_os/core/arch/arm/sm/sm.c
/optee_os/core/arch/arm/sm/sm_a32.S
/optee_os/core/arch/arm/sm/sm_private.h
/optee_os/core/arch/arm/sta/se_api_self_tests.c
/optee_os/core/arch/arm/sta/sta_self_tests.c
/optee_os/core/arch/arm/sta/stats.c
/optee_os/core/arch/arm/sta/tee_fs_key_manager_tests.c
/optee_os/core/arch/arm/tee/entry_std.c
/optee_os/core/arch/arm/tee/svc_cache.c
/optee_os/core/include/kernel/tee_dispatch.h
/optee_os/core/include/kernel/tee_ta_manager.h
/optee_os/core/include/mm/tee_mm.h
/optee_os/core/include/tee/tee_fs.h
/optee_os/core/include/tee/tee_fs_key_manager.h
/optee_os/core/include/tee/tee_fs_rpc.h
/optee_os/core/kernel/tee_dispatch.c
/optee_os/core/lib/libtomcrypt/src/tee_ltc_provider.c
/optee_os/core/tee/tee_fs_rpc.c
/optee_os/core/tee/tee_ree_fs.c
/optee_os/core/tee/tee_rpmb_fs.c
/optee_os/core/tee/tee_sql_fs.c
/optee_os/core/tee/tee_svc.c
/optee_os/core/tee/tee_svc_cryp.c
/optee_os/core/tee/tee_svc_storage.c
/optee_os/documentation/images/secure_storage/tee_file_structure.odg
/optee_os/documentation/images/secure_storage/tee_file_structure.png
/optee_os/documentation/secure_storage.md
/optee_os/lib/libutee/include/tee_api.h
/optee_os/lib/libutee/include/tee_api_defines_extensions.h
/optee_os/lib/libutee/include/tee_internal_api_extensions.h
/optee_os/lib/libutee/include/tee_ta_api.h
/optee_os/lib/libutee/include/user_ta_header.h
/optee_os/lib/libutee/tee_api.c
/optee_os/lib/libutee/tee_api_objects.c
/optee_os/lib/libutee/tee_api_operations.c
config.mk
/optee_os/scripts/checkpatch.sh
/optee_os/scripts/checkpatch_inc.sh
bef37b8b31-Oct-2016 Jerome Forissier <jerome.forissier@linaro.org>

mk/checkconf.mk: allow spaces and double quotes in CFG_ config variables

Fixes issues with the check-conf-h and check-conf-mk functions, which
would error out or generate incorrect output on strings

mk/checkconf.mk: allow spaces and double quotes in CFG_ config variables

Fixes issues with the check-conf-h and check-conf-mk functions, which
would error out or generate incorrect output on strings containing spaces
and/or double quotes.

The single quote character is used in the shell commands that builds
the list of values, instead of the double quote, so that there is no
conflict with double quotes appearing in the variables themselves. As a
consequence, single quotes cannot appear anywhere in the output string.
So remove the comments that contained quotes, and which were not that
useful anyway.

Test case:

$ grep CFG_TEST core/arch/arm/plat-vexpress/conf.mk
CFG_TEST1 ?= "test string"
CFG_TEST2 ?= test string
CFG_TEST3 ?= "test"
CFG_TEST4 ?= test
$ make -s
$ grep CFG_TEST out/arm-plat-vexpress/conf.mk
CFG_TEST1="test string"
CFG_TEST2=test string
CFG_TEST3="test"
CFG_TEST4=test
$ grep CFG_TEST out/arm-plat-vexpress/include/generated/conf.h
#define CFG_TEST1 "test string"
#define CFG_TEST2 test string
#define CFG_TEST3 "test"
#define CFG_TEST4 test

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
Tested-by: Zeng Tao <prime.zeng@hisilicon.com>

show more ...


/optee_os/.travis.yml
/optee_os/MAINTAINERS.md
/optee_os/README.md
/optee_os/core/arch/arm/include/arm32.h
/optee_os/core/arch/arm/include/kernel/generic_boot.h
/optee_os/core/arch/arm/include/kernel/thread.h
/optee_os/core/arch/arm/include/kernel/tz_ssvce_def.h
/optee_os/core/arch/arm/include/kernel/user_ta.h
/optee_os/core/arch/arm/include/mm/core_memprot.h
/optee_os/core/arch/arm/include/mm/core_mmu.h
/optee_os/core/arch/arm/include/mm/tee_pager.h
/optee_os/core/arch/arm/kernel/generic_boot.c
/optee_os/core/arch/arm/kernel/static_ta.c
/optee_os/core/arch/arm/kernel/tee_ta_manager.c
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/user_ta.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/core_mmu_lpae.c
/optee_os/core/arch/arm/mm/core_mmu_v7.c
/optee_os/core/arch/arm/mm/tee_mm.c
/optee_os/core/arch/arm/mm/tee_mmu.c
/optee_os/core/arch/arm/mm/tee_pager.c
/optee_os/core/arch/arm/plat-stm/conf.mk
/optee_os/core/arch/arm/plat-stm/main.c
/optee_os/core/arch/arm/plat-stm/platform_config.h
/optee_os/core/arch/arm/plat-stm/rng_support.c
/optee_os/core/arch/arm/plat-stm/tz_a9init.S
/optee_os/core/arch/arm/tee/entry_std.c
/optee_os/core/arch/arm/tee/svc_cache.c
/optee_os/core/drivers/gic.c
/optee_os/core/include/mm/tee_mm.h
/optee_os/core/include/mm/tee_mmu.h
/optee_os/core/include/optee_msg_fs.h
/optee_os/core/include/tee/tee_fs.h
/optee_os/core/include/tee/tee_fs_rpc.h
/optee_os/core/include/tee/tee_obj.h
/optee_os/core/kernel/tee_dispatch.c
/optee_os/core/tee/tee_fs_rpc.c
/optee_os/core/tee/tee_obj.c
/optee_os/core/tee/tee_ree_fs.c
/optee_os/core/tee/tee_rpmb_fs.c
/optee_os/core/tee/tee_sql_fs.c
/optee_os/core/tee/tee_svc.c
/optee_os/core/tee/tee_svc_cryp.c
/optee_os/core/tee/tee_svc_storage.c
/optee_os/documentation/build_system.md
/optee_os/documentation/file_structure.md
/optee_os/documentation/rpi3.md
/optee_os/lib/libutee/include/tee_api_defines.h
/optee_os/lib/libutils/ext/include/types_ext.h
/optee_os/lib/libutils/ext/include/util.h
checkconf.mk
/optee_os/ta/mk/ta_dev_kit.mk
8dceff9b21-Sep-2016 Jens Wiklander <jens.wiklander@linaro.org>

core: remove CFG_ENC_FS

Removes CFG_ENC_FS, encryption is always enabled in the file systems from
now on.

Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey 32/64 GP)
Tested-by: Etien

core: remove CFG_ENC_FS

Removes CFG_ENC_FS, encryption is always enabled in the file systems from
now on.

Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey 32/64 GP)
Tested-by: Etienne Carriere <etienne.carriere@linaro.org> (qemu_v8/b2260, reefs/sqlfs, gp testsuite)
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (QEMU)
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

606f378c13-Oct-2016 Jerome Forissier <jerome.forissier@linaro.org>

build: include submodule in name of per-library variables

Because a library may be built several times for different submodules
(for example, libutils.a is built differently for kernel and user
mode

build: include submodule in name of per-library variables

Because a library may be built several times for different submodules
(for example, libutils.a is built differently for kernel and user
mode), the names of the variables that hold library-specific flags
have to uniquely identify the instance of the library that's being
built.

Example use case: to build libutils with flag FOO for the core and
flag BAR for the user mode, add this to lib/libutils/sub.mk:

ifeq ($(sm),core)
cppflags-lib-y += -DFOO
else
cppflags-lib-y += -DBAR
endif

Without this fix, the above would fail because all the flags would
be added to all the builds of libutils.

Fixes: 3d34e125a253 ("Add support for $(cflags-lib-y)")
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

a884c93512-Sep-2016 Jens Wiklander <jens.wiklander@linaro.org>

core: add support for paging of user TAs

Enables support for paging of user TAs if CFG_PAGED_USER_TA is y

Acked-by: David Brown <david.brown@linaro.org>
Tested-by: Jerome Forissier <jerome.forissie

core: add support for paging of user TAs

Enables support for paging of user TAs if CFG_PAGED_USER_TA is y

Acked-by: David Brown <david.brown@linaro.org>
Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey)
Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (QEMU 7)
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

f5f914aa27-Sep-2016 Jens Wiklander <jens.wiklander@linaro.org>

core: Add default CFG_CORE_HEAP_SIZE

Adds a CFG_CORE_HEAP_SIZE replacing the defined HEAP_SIZE in each
platform_config.h. Default value is defined in mk/config.mk as 64 kB.
This is larger than most

core: Add default CFG_CORE_HEAP_SIZE

Adds a CFG_CORE_HEAP_SIZE replacing the defined HEAP_SIZE in each
platform_config.h. Default value is defined in mk/config.mk as 64 kB.
This is larger than most of the previous values at 24 kB or just above.

Platforms with a previous heap size defined larger than 64 kB overrides
the mk/config.mk setting with a $(platform-dir)/conf.mk setting using the
previous value.

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

show more ...

6d96f20819-Aug-2016 yanyan-wrs <yan.yan@windriver.com>

Add the i.MX6 Quad SABRE board support (PLATFORM=imx)

Signed-off-by: Yan Yan <yan.yan@windriver.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.for

Add the i.MX6 Quad SABRE board support (PLATFORM=imx)

Signed-off-by: Yan Yan <yan.yan@windriver.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Peng Fan <peng.fan@nxp.com>

show more ...

1...<<111213141516171819