| #
eee73fd0 |
| 06-Feb-2024 |
Wen Bin <a1231512a@163.com> |
plat-hikey: make DRAM1_BASE configurable
This commit introduces the CFG_DRAM1_BASE configuration switch in the plat-hikey platform.
Signed-off-by: Wen Bin <a1231512a@163.com> Acked-by: Etienne Carr
plat-hikey: make DRAM1_BASE configurable
This commit introduces the CFG_DRAM1_BASE configuration switch in the plat-hikey platform.
Signed-off-by: Wen Bin <a1231512a@163.com> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
513b0748 |
| 30-May-2022 |
Olivier Masse <olivier.masse@nxp.com> |
plat-hikey: Add embedded DTB to define SDP
For Hikey, the Secure Data Path memory region definition is done in an embedded dtb as defined in Documentation/devicetree/bindings/reserved-memory/linaro,
plat-hikey: Add embedded DTB to define SDP
For Hikey, the Secure Data Path memory region definition is done in an embedded dtb as defined in Documentation/devicetree/bindings/reserved-memory/linaro,secure-heap.yaml
Signed-off-by: Olivier Masse <olivier.masse@nxp.com> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| #
bc14a5cc |
| 16-May-2022 |
Jerome Forissier <jerome.forissier@linaro.org> |
core: arm.mk: set CFG_ARM32_core=y when CFG_ARM34_core != y
Updates core/arch/arm/arm.mk to assume 32-bit mode when not 64-bit and simplify the platforms conf.mk accordingly.
Signed-off-by: Jerome
core: arm.mk: set CFG_ARM32_core=y when CFG_ARM34_core != y
Updates core/arch/arm/arm.mk to assume 32-bit mode when not 64-bit and simplify the platforms conf.mk accordingly.
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| #
aeb2ac09 |
| 16-May-2022 |
Jerome Forissier <jerome.forissier@linaro.org> |
core: arm.mk: set CFG_WITH_LPAE=y when CFG_ARCH64_core=y
Since CFG_WITH_LPAE=y is mandatory when CFG_ARCH64_core=y, set it in the common file core/arch/arm/arm.mk instead of leaving it to the platfo
core: arm.mk: set CFG_WITH_LPAE=y when CFG_ARCH64_core=y
Since CFG_WITH_LPAE=y is mandatory when CFG_ARCH64_core=y, set it in the common file core/arch/arm/arm.mk instead of leaving it to the platforms.
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| #
b30b0d41 |
| 29-Jun-2021 |
Jerome Forissier <jerome@forissier.org> |
hikey, hikey960: disable CFG_SECURE_DATA_PATH by default
Since linaro-swg/linux.git branch optee [1] was rebased onto kernel v5.12, Secure Data Path is broken in xtest [2] because the client side is
hikey, hikey960: disable CFG_SECURE_DATA_PATH by default
Since linaro-swg/linux.git branch optee [1] was rebased onto kernel v5.12, Secure Data Path is broken in xtest [2] because the client side is based on the ION allocator, which was removed from the kernel.
Therefore, disable SDP support by default.
Link: [1] https://github.com/linaro-swg/linux/tree/optee-v5.12-20210628 Link: [2] https://github.com/OP-TEE/optee_test/blob/3.13.0/host/xtest/regression_1000.c#L1220-L1263 Signed-off-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
16c8ce9c |
| 12-Nov-2020 |
Jerome Forissier <jerome@forissier.org> |
hikey: increase CFG_CORE_HEAP_SIZE from 64 to 72 KB
HiKey 620 uses the default core heap size which is 64 KB. This seems to be a bit small now and the likely reason of some IBART failures [1]:
283
hikey: increase CFG_CORE_HEAP_SIZE from 64 to 72 KB
HiKey 620 uses the default core heap size which is 64 KB. This seems to be a bit small now and the likely reason of some IBART failures [1]:
2833: regression_6018.2 OK 2834: o regression_6018.3 Storage id: 80000100 [...] 2846: E/TC:? 0 TA panicked with code 0xffff000c
Increase the size to 72 KB.
Link: [1] https://optee.mooo.com:5000/logs/OP-TEE/build/441/518642707/65112f06d1ffdd93762acdd1d8a8a06e9bebdd1d Signed-off-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| #
f3721740 |
| 23-Jul-2020 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: remove the unused PM stubs
Removes the PM stubs and all references to CFG_PM_STUBS.
Reviewed-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.o
core: remove the unused PM stubs
Removes the PM stubs and all references to CFG_PM_STUBS.
Reviewed-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
35e770df |
| 04-Jun-2020 |
Jerome Forissier <jerome@forissier.org> |
Move CFG_WITH_STACK_CANARIES to global config file
All platforms but one (bcm-ns3) set CFG_WITH_STACK_CANARIES ?= y in their configuration files. Move this flag to the global mk/config.mk instead. N
Move CFG_WITH_STACK_CANARIES to global config file
All platforms but one (bcm-ns3) set CFG_WITH_STACK_CANARIES ?= y in their configuration files. Move this flag to the global mk/config.mk instead. Not sure it matters much, but in order to avoid any functional change, CFG_WITH_STACK_CANARIES ?= n is added to plat-bcm/conf.mk.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
0146c7ad |
| 07-Jun-2020 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: make generic boot mandatory
The OP-TEE booting has since quite some time been unified in the sense that all platforms use CFG_GENERIC_BOOT=y. Make this configuration option mandatory and remov
core: make generic boot mandatory
The OP-TEE booting has since quite some time been unified in the sense that all platforms use CFG_GENERIC_BOOT=y. Make this configuration option mandatory and remove the CFG_GENERIC_BOOT flag.
Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
7ce2319e |
| 03-Feb-2020 |
Henrik Uhrenfeldt <henrik.uhrenfeldt@huawei.com> |
hikey960: fix support for 4G & 6G boards
Since commit 4518cdc1ff64 ("core: arm64: introduce CFG_CORE_ARM64_PA_BITS") platforms are required to define CFG_CORE_ARM64_PA_BITS if their physical address
hikey960: fix support for 4G & 6G boards
Since commit 4518cdc1ff64 ("core: arm64: introduce CFG_CORE_ARM64_PA_BITS") platforms are required to define CFG_CORE_ARM64_PA_BITS if their physical address space extends beyond 4G. This was missing for HiKey960 4G & 6G versions, which indeed have addresses beyond 4G.
Signed-off-by: Henrik Uhrenfeldt <henrik.uhrenfeldt@huawei.com>
show more ...
|
| #
87372da4 |
| 22-Nov-2019 |
Jens Wiklander <jens.wiklander@linaro.org> |
Enable ASLR by default
With this patch both CFG_TA_ASLR and CFG_CORE_ASLR are set to 'y' by default.
Removes CFG_TA_ASLR?=y for plat-hikey and plat-vexpress (qemu_virt).
If the current platform do
Enable ASLR by default
With this patch both CFG_TA_ASLR and CFG_CORE_ASLR are set to 'y' by default.
Removes CFG_TA_ASLR?=y for plat-hikey and plat-vexpress (qemu_virt).
If the current platform doesn't use CFG_DT=y and hasn't overridden get_aslr_seed() a warning message will be printed on the secure uart and execution will resume with the default load address.
Reviewed-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
318b762e |
| 07-Oct-2019 |
Jerome Forissier <jerome@forissier.org> |
hikey, hikey960: set CFG_TEE_RAM_VA_SIZE to 2 MiB
Commit 8fd4d26f6e22 ("plat-hikey: support generic RAM layout") has inadvertently removed the platform-specific definition of TEE_RAM_VA_SIZE for HiK
hikey, hikey960: set CFG_TEE_RAM_VA_SIZE to 2 MiB
Commit 8fd4d26f6e22 ("plat-hikey: support generic RAM layout") has inadvertently removed the platform-specific definition of TEE_RAM_VA_SIZE for HiKey platforms. It was 2 MiB before, and became 1 MiB (the default). This commit restores the proper value.
Fixes the following panic on boot (HiKey960, 32-bit TEE core with pager enabled):
I/TC: Pager is enabled. Hashes: 1824 bytes I/TC: Pager pool size: 252kB I/TC: OP-TEE version: 3.6.0-182-g2d7a8964df-dev (gcc version 6.2.1 20161016 (Linaro GCC 6.2-2016.11)) #5 Mon 07 Oct 2019 08:22:21 AM UTC arm E/TC:0 0 Panic at core/lib/libtomcrypt/mpi_desc.c:39 <get_mp_scratch_memory_pool> E/TC:0 0 Call stack: E/TC:0 0 0x3f003a4d
Fixes: 8fd4d26f6e22 ("plat-hikey: support generic RAM layout") Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Joakim Bech <joakim.bech@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
8744ddb3 |
| 26-Sep-2019 |
Jerome Forissier <jerome@forissier.org> |
Revert "hikey: increase core heap size to 192 kB"
This reverts commit 28c75dbebc49 ("hikey: increase core heap size to 192 kB") which increased the core heap size in order to pass the AOSP VTS. Unfo
Revert "hikey: increase core heap size to 192 kB"
This reverts commit 28c75dbebc49 ("hikey: increase core heap size to 192 kB") which increased the core heap size in order to pass the AOSP VTS. Unfortunately, this bigger value does not work well when the pager is enabled: it causes lots of page faults and a massive slowdown (for instance, 'xtest 1013' on HiKey620 completes in ~ 1.7 s with the default heap size of 64 kB but takes ~ 53 s with 192 kB).
Therefore, revert to the previous configuration. A bigger value can always be set on the command line or by other means when building for AOSP.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Victor Chong <victor.chong@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
28c75dbe |
| 17-Sep-2019 |
Victor Chong <victor.chong@linaro.org> |
hikey: increase core heap size to 192 kB
To pass VTS in AOSP builds.
Signed-off-by: Victor Chong <victor.chong@linaro.org> Reviewed-by: Joakim Bech <joakim.bech@linaro.org>
|
| #
a28e3d9d |
| 04-Sep-2019 |
Jerome Forissier <jerome@forissier.org> |
hikey960: add ASAN shadow offset for 32-bit build
Adds the proper CFG_ASAN_SHADOW_OFFSET value for HiKey960 in 32-bit mode. This allows to run with the kernel address sanitizer enabled (CFG_CORE_SAN
hikey960: add ASAN shadow offset for 32-bit build
Adds the proper CFG_ASAN_SHADOW_OFFSET value for HiKey960 in 32-bit mode. This allows to run with the kernel address sanitizer enabled (CFG_CORE_SANITIZE_KADDRESS=y).
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
7dfff131 |
| 20-Dec-2018 |
Jerome Forissier <jerome.forissier@linaro.org> |
core: user_ta: implement ASLR for TAs
Introduces CFG_TA_ASLR to enable Address Space Layout Randomization of Trusted Applications. ASLR makes the exploitation of memory corruption vulnerabilities ha
core: user_ta: implement ASLR for TAs
Introduces CFG_TA_ASLR to enable Address Space Layout Randomization of Trusted Applications. ASLR makes the exploitation of memory corruption vulnerabilities harder. The feature is disabled by default except for the configurations I could test (QEMU and HiKey960). When CFG_TA_ASLR=y, the stack and subsequent ELF file(s) needed by the TA are mapped into the user VA space with a random offset comprised between CFG_TA_ASLR_MIN_OFFSET_PAGES and CFG_TA_ASLR_MAX_OFFSET_PAGES pages (that is between 0 and 128 pages by default).
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (QEMU, HiKey960) Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
4525508a |
| 16-Jan-2019 |
Jerome Forissier <jerome.forissier@linaro.org> |
hikey960: set CFG_CORE_BGET_BESTFIT=y
Enables the "best fit" algorithm for core memory allocation on HiKey960. This avoids occasional out-of-memory errors when running the full xtest suite (with Glo
hikey960: set CFG_CORE_BGET_BESTFIT=y
Enables the "best fit" algorithm for core memory allocation on HiKey960. This avoids occasional out-of-memory errors when running the full xtest suite (with GlobalPlatform tests).
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
9f1eec75 |
| 17-Dec-2018 |
Jerome Forissier <jerome.forissier@linaro.org> |
Factor out ta-targets from platform config
Platforms use the same basic pattern again and again:
ta-targets = ta_arm32 ifeq ($(CFG_ARM64_core),y) ta-targets += ta_arm64 endif
Let's move this p
Factor out ta-targets from platform config
Platforms use the same basic pattern again and again:
ta-targets = ta_arm32 ifeq ($(CFG_ARM64_core),y) ta-targets += ta_arm64 endif
Let's move this pattern to core/arch/arm/arm.mk, make it the default, and cleanup the platform configuration files.
Suggested-by: Jens Wiklander <jens.wiklander@linaro.org> 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 ...
|
| #
bad91efa |
| 17-Jul-2018 |
Jens Wiklander <jens.wiklander@linaro.org> |
plat-hikey: embed ta/avb as early TA
In order to support AVB in U-boot embed the AVB ta as an early TA.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <je
plat-hikey: embed ta/avb as early TA
In order to support AVB in U-boot embed the AVB ta as an early TA.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
9460285e |
| 04-Jun-2018 |
Jerome Forissier <jerome.forissier@linaro.org> |
plat-*/conf.mk: use $(call force, ...) to set CFG_TEE_CORE_NB_CORE
Except for very special cases (such as virtualization), the number of CPU cores that can enter OP-TEE is a fixed number that depend
plat-*/conf.mk: use $(call force, ...) to set CFG_TEE_CORE_NB_CORE
Except for very special cases (such as virtualization), the number of CPU cores that can enter OP-TEE is a fixed number that depends on the hardware configuration and should not be configurable at build time. Therefore, use $(call force,CFG_TEE_CORE_NB_CORE,<value>) to set the value.
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
8fd4d26f |
| 15-May-2018 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-hikey: support generic RAM layout
Move default secure and non-secure Optee memory locations from platform_config.h to conf.mk using the generic_ram_layout.
Signed-off-by: Etienne Carriere <eti
plat-hikey: support generic RAM layout
Move default secure and non-secure Optee memory locations from platform_config.h to conf.mk using the generic_ram_layout.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Joakim Bech <joakim.bech@linaro.org> Tested-by: Jerome Forissier <jerome.forissier@linaro.org> (HiKey960)
show more ...
|
| #
29e7629e |
| 03-May-2018 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: move CFG_TEE_CORE_NB_CORE to conf.mk for various platforms
Update platforms d02, rcar, sam, hikey, mediatek, poplar, rpi3, sprd, zynqmp and marvell.
These platforms no more defines CFG_ confi
core: move CFG_TEE_CORE_NB_CORE to conf.mk for various platforms
Update platforms d02, rcar, sam, hikey, mediatek, poplar, rpi3, sprd, zynqmp and marvell.
These platforms no more defines CFG_ configuration directives as NB_CORE was the last remaining one.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Joakim Bech <joakim.bech@linaro.org>
show more ...
|
| #
8d91fe09 |
| 13-Apr-2018 |
Victor Chong <victor.chong@linaro.org> |
hikey: register additional dyn shm
Signed-off-by: Victor Chong <victor.chong@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
|
| #
24a8c0ad |
| 19-Dec-2017 |
Peter Griffin <peter.griffin@linaro.org> |
hikey: Enable cache APIs for hikey platform.
When decrypting into SDP buffers TA's like Playready and Widevine need to be able to flush the cache.
Signed-off-by: Peter Griffin <peter.griffin@linaro
hikey: Enable cache APIs for hikey platform.
When decrypting into SDP buffers TA's like Playready and Widevine need to be able to flush the cache.
Signed-off-by: Peter Griffin <peter.griffin@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| #
8f643c00 |
| 11-Jan-2018 |
Jerome Forissier <jerome.forissier@linaro.org> |
core: crypto: default enable HWSUPP_PMULT_64 with CRYPTO_WITH_CE
64-bit polynomial multiply is defined in the ARMv8.0 Cryptographic Extension instructions together with other instructions like AES*
core: crypto: default enable HWSUPP_PMULT_64 with CRYPTO_WITH_CE
64-bit polynomial multiply is defined in the ARMv8.0 Cryptographic Extension instructions together with other instructions like AES* and SHA1*. Therefore, it is reasonable to enable CFG_HWSUPP_PMULT_64 when CFG_CRYPTO_WITH_CE is enabled. Platforms can always override this value if need be.
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|