summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Jerome Forissier [Thu, 5 Jul 2018 11:07:52 +0000 (13:07 +0200)]
core: define syscall_t as void (*)(void)
syscall_t is currently typedef'ed as TEE_Result (*)(void). It is used to
represent a pointer to any system call, in the syscall table for instance.
As such, the exact type behind syscall_t cannot reflect all the syscalls
since they have different prototypes. The current declaration with a
TEE_Result return type was probably chosen because it was a common
characteristic of all syscalls to return a TEE_Result.
However, this type causes compilation warnings with GCC 8.1:
core/arch/arm/tee/arch_svc.c:43:36: warning: cast between incompatible function types from ‘void (*)(long unsigned int)’ to ‘TEE_Result (*)(void)’ {aka ‘unsigned int (*)(void)’} [-Wcast-function-type]
#define SYSCALL_ENTRY(_fn) { .fn = (syscall_t)_fn }
^
core/arch/arm/tee/arch_svc.c:50:2: note: in expansion of macro ‘SYSCALL_ENTRY’
SYSCALL_ENTRY(syscall_sys_return),
^~~~~~~~~~~~~
The solution is to use 'void (*)(void)' instead, as explained in the GCC
documentation:
-Wcast-function-type
Warn when a function pointer is cast to an incompatible function
pointer. [...] The function type void (*) (void) is special and matches
everything, which can be used to suppress this warning. [...]
Link: [1] https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
(cherry picked from commit
f6d17e33e7b95c90a2521cfd37cd5cb511909fc4)
Jerome Forissier [Wed, 27 Sep 2017 00:46:17 +0000 (17:46 -0700)]
libutee: remove Trusted UI code
Removes all the TUI-related code from libutee (lib/libutee/tui), as
well as its dependencies: lib/libpng and lib/libzlib. Two reasons for
this:
1. This is far from being a complete and testable TUI implementation.
In other words, it is dead code, more or less.
2. lib/libzlib (version 1.2.8) contains several CVE vulnerabilities.
Even if the code is not used, it may trigger some code analysis tools
and is a problem for some projects.
Reported-by: Jianhui Li <airbak.li@hisilicon.com>
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
(Backported from commit
be5c06caa42db2c7c59eca9311f5485c15a99029)
Jens Wiklander [Fri, 14 Jul 2017 12:34:08 +0000 (14:34 +0200)]
core: gcc 7 ready
Remove the armv7 compiler option -mno-apcs-float as it's not supported
by gcc 7. -apcs-float has be default disabled since at least gcc 4.8.
Reviewed-by: Igor Opaniuk <igor.opaniuk@linaro.org>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
(cherry picked from commit
23381c107ef501ea6d5a52357e0105df054a3177)
Jens Wiklander [Thu, 25 May 2017 05:48:20 +0000 (07:48 +0200)]
core: avoid incremental linking with -gc
The AArch64 linkers seems to have occasional problems with incremental
linking (-i) in combination with garbage collect of sections (-gc). The
way we're organizing the layout of the binary used for paging depends on
-gc to build the different dependency trees for unpaged and
initialization code.
The problem in the linker is tracked in
https://bugs.linaro.org/show_bug.cgi?id=3006 and
https://sourceware.org/bugzilla/show_bug.cgi?id=21524
The problem typically manifests itself by:
aarch64-toolchain/gcc-linaro-6.3.1-2017.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-ld: BFD (Linaro_Binutils-2017.02) 2.27.0.
20161019 assertion fail /home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-linux-gnu/snapshots/binutils-gdb.git~linaro_binutils-2_27-branch/bfd/elflink.c:8380
core/arch/arm/kernel/link.mk:90: recipe for target 'out/arm-plat-vexpress/core/init.o' failed
make: *** [out/arm-plat-vexpress/core/init.o] Error 1
With this patch we replace the incremental linking with a full link
using a special link script. With a full link we can't have undefined
symbols so some dummy symbols are provided by the link script when some
object files are skipped when reducing the dependency tree. To
completely get rid of those dummy symbols the script that gathers the
sections is replaced by a python script that skips listed sections (if
provided).
In terms of features in the resulting binary, nothing is changed in this
commit.
Reviewed-by: Volodymyr Babchuk <vlad.babchuk@gmail.com>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
(Backported from commit
5976a0a5b9bf7aaebe65320eb5e1709f7bd1f04e,
chmod 644 gen_ld_sects.py for obs build, invoke with python)
Konrad Lipinski [Wed, 29 May 2019 16:42:52 +0000 (18:42 +0200)]
Migrate to openssl 1.1
Change-Id: Id690a8dd55bd4b85e1a31848241fd82cf8272ff7
Dariusz Michaluk [Mon, 17 Jun 2019 16:27:55 +0000 (18:27 +0200)]
Fix optee-os-ta dependency to openssl and python
optee-os-ta provides sign.py script which require openssl and python
Change-Id: I8761fe37210224df1a6965f53b3595a45eff5de7
r.tyminski [Fri, 23 Feb 2018 12:55:33 +0000 (13:55 +0100)]
Disable building repository with ASan extra packs.
Change-Id: Ia3b8b6a9503667b6a0549526a8c7ea2ec1246ae3
r.tyminski [Thu, 23 Nov 2017 14:58:51 +0000 (15:58 +0100)]
Include all necessary licenses.
Including BSD-2-Clause and BSD-3-Clause for OpTEE OS.
Including BSD-2-Clause, BSD-3-Clause and PNG license for OpTEE userspace.
Change-Id: I5a3c4cdadb1273d5cf4a03b04ccdb0551c396364
r.tyminski [Tue, 28 Nov 2017 12:54:23 +0000 (13:54 +0100)]
Build artik710 and rpi3 in one spec file.
Change spec file to be more generic.
Change-Id: Iefbf5668b25242a811f5e553cc79304ab95830b5
Dongsun Lee [Mon, 27 Nov 2017 06:51:35 +0000 (15:51 +0900)]
remove optee-os-artik710.spec file to fix multiple spec file issue in OBS
Change-Id: Ic1cb2d10dd03711fa7ebdbfa4d97bc1b2a8d71ba
Signed-off-by: Dongsun Lee <ds73.lee@samsung.com>
r.tyminski [Thu, 23 Nov 2017 07:27:00 +0000 (08:27 +0100)]
Merge remote-tracking branch 'origin/tizen_4.0' into 'origin/tizen'
Change-Id: Ic78fa653d759783441b75aff4d332b383d711163
r.tyminski [Wed, 15 Nov 2017 14:30:36 +0000 (15:30 +0100)]
Setting low log level by default.
If there is need to see debug logs, please recompile with build_type=DEBUG.
Change-Id: Ia3419dcec3acfe6b8e50a501438bdef414de2870
(cherry picked from commit
493442391fcebb623711f41789b2346902aa6ce9)
r.tyminski [Wed, 15 Nov 2017 14:30:36 +0000 (15:30 +0100)]
Setting low log level by default.
If there is need to see debug logs, please recompile with build_type=DEBUG.
Change-Id: Ia3419dcec3acfe6b8e50a501438bdef414de2870
egukim [Fri, 13 Oct 2017 12:28:29 +0000 (21:28 +0900)]
artik710: Add packaging for s5p6818
Added TA build for artick710
Change-Id: I9e8ef12090b6630c2c422f6444c14cdf60b9b6e9
Signed-off-by: egukim <egukim@dignsys.com>
egukim [Tue, 24 Oct 2017 02:49:47 +0000 (11:49 +0900)]
artik710: porting for optee 2.4
This patch rewrote the s5p6818 uart driver for the optee2.4 framework. And revised build config for optee 2.4 build
Cryptographic extensions disable as rpi3
Change-Id: Ie31101761bb1b278804824c60e1081666054c021
Signed-off-by: egukim <egukim@dignsys.com>
egukim [Fri, 13 Oct 2017 12:19:31 +0000 (21:19 +0900)]
artik710: initial drop to support s5p6818
this patch is ported in from optee 1.1 implement by nexell
Change-Id: I3072b4f1fa5ea6d03a6718d5bb5ed095065b8d65
Signed-off-by: egukim <egukim@dignsys.com>
r.tyminski [Wed, 11 Oct 2017 09:55:30 +0000 (11:55 +0200)]
Merge optee-os-ta-devel-rpi3.spec with optee-os-rpi3.spec
Change-Id: I45b717f1fe40e3eadb71cef8e54304abc2f21684
r.tyminski [Wed, 11 Oct 2017 09:42:26 +0000 (11:42 +0200)]
Compile 32-bit userspace only with 32-bit kernel.
Change-Id: Idec66a78bfad5e79cfadd505618e6d1d3967faf7
r.tyminski [Thu, 14 Sep 2017 14:04:38 +0000 (16:04 +0200)]
Compile with GBS only for ARM architectures.
Change-Id: Ifa847c10f96bdfce441ab953c3dfd6cc2366befd
egukim [Wed, 6 Sep 2017 09:56:36 +0000 (18:56 +0900)]
Build and Provide tee.bin
ATF biuling use tee.bin in this packge for BL32 Image
Change-Id: Ia8316feeff335f714782fb086bd77f9a67ea5ae7
Signed-off-by: egukim <egukim@dignsys.com>
r.tyminski [Wed, 14 Jun 2017 08:31:43 +0000 (10:31 +0200)]
Added packaging and necessary changes for gbs compilation.
Packaging for optee-os binary and optee-os TA devkit.
Modify pem_to_pub_c.py and sign.py script to use openssl
if pycrypto is not available.
Allow to disable Terminal User Interface (TUI) from compilation.
Compile 32-bit TA devkit with CFG_WITH_VFP=n. GBS compile with softfp.
Change-Id: If3ad89d8871c1a8f7f1a519b07941316acdbdd14
r.tyminski [Mon, 5 Jun 2017 10:44:25 +0000 (12:44 +0200)]
Update from upstream to 2.4.0 version
Change-Id: I2b3a30f20684d6629fe379d9cd7895aff759c301
r.tyminski [Mon, 29 May 2017 09:42:10 +0000 (11:42 +0200)]
Initial commit with upstream sources
Change-Id: Ie9460111f21fc955102fd8732a0173b2d0499a4a
Tizen Infrastructure [Mon, 3 Apr 2017 06:28:04 +0000 (23:28 -0700)]
Initial empty repository