| #
a5ac48d6 |
| 13-Sep-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: add VCORE_FREE_{PA,SZ,END_PA}
Add VCORE_FREE_{PA,SZ,END_PA} defines to identify the unused and free memory range at the end of TEE_RAM_START..(TEE_RAM_START + TEE_RAM_VA_SIZE).
VCORE_FREE_SZ
core: add VCORE_FREE_{PA,SZ,END_PA}
Add VCORE_FREE_{PA,SZ,END_PA} defines to identify the unused and free memory range at the end of TEE_RAM_START..(TEE_RAM_START + TEE_RAM_VA_SIZE).
VCORE_FREE_SZ is 0 in a pager configuration since all the memory is used by the pager.
The VCORE_FREE range is excluded from the TEE_RAM_RW area for CFG_NS_VIRTUALIZATION=y and instead put in a separate NEX_RAM_RW area. This makes each partition use a bit less memory and leaves the VCORE_FREE range available for the Nexus.
The VCORE_FREE range is added to the TEE_RAM_RW area for the normal configuration with CFG_NS_VIRTUALIZATION=n and CFG_WITH_PAGER=n. It's in practice unchanged behaviour in this configuration.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| #
0b00e98d |
| 23-Aug-2023 |
Jerome Forissier <jerome.forissier@linaro.org> |
core: linker.h: replace __arm__ with ARM32
We use ARM32 and ARM64 throughout the core code, not __arm__ and __aarch64__, so replace the occurrence of __arm__ that is in linker.h.
Signed-off-by: Jer
core: linker.h: replace __arm__ with ARM32
We use ARM32 and ARM64 throughout the core code, not __arm__ and __aarch64__, so replace the occurrence of __arm__ that is in linker.h.
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
c24c1950 |
| 11-Apr-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: linker.h: remove *_SZ_UNSAFE defines
Removes the now unused *_SZ_UNSAFE defines.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.
core: linker.h: remove *_SZ_UNSAFE defines
Removes the now unused *_SZ_UNSAFE defines.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| #
ff843c89 |
| 11-Apr-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: linker.h: fix ASAN_MAP_PA and ASAN_SHADOW_PA
Fixes ASAN_MAP_PA and ASAN_SHADOW_PA to cast via vaddr_t to paddr_t to avoid compile errors when paddr_t is larger than a pointer, that is, with CF
core: linker.h: fix ASAN_MAP_PA and ASAN_SHADOW_PA
Fixes ASAN_MAP_PA and ASAN_SHADOW_PA to cast via vaddr_t to paddr_t to avoid compile errors when paddr_t is larger than a pointer, that is, with CFG_CORE_LARGE_PHYS_ADDR on 32-bit platforms.
core/include/kernel/linker.h:113:26: error: cast from pointer to integer of diff erent size [-Werror=pointer-to-int-cast] 113 | #define ASAN_MAP_PA ((paddr_t)__asan_map_start) | ^
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| #
0f2735cd |
| 11-Apr-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: linker.h: fix VCORE_NEX_RW_SZ
Fixes the VCORE_NEX_RW_SZ define by adding a missing pair of ( ).
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.c
core: linker.h: fix VCORE_NEX_RW_SZ
Fixes the VCORE_NEX_RW_SZ define by adding a missing pair of ( ).
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| #
1aae2c8e |
| 19-Jan-2022 |
Jerome Forissier <jerome@forissier.org> |
core: pager: export __{text,rodata}_{init,pageable}_{start,end}
Add symbols __text_pageable_start, __text_pageable_end, __rodata_pageable_start and __rodata_pageable_end. They will later be used by
core: pager: export __{text,rodata}_{init,pageable}_{start,end}
Add symbols __text_pageable_start, __text_pageable_end, __rodata_pageable_start and __rodata_pageable_end. They will later be used by the attestation PTA.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Sumit Garg <sumit.garg@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
889fb568 |
| 14-Dec-2021 |
Jerome Forissier <jerome@forissier.org> |
core: add delimited area in .text to store data
A few variables such as boot_mmu_config are stored within the .text section of tee.elf, because they need to be reachable from the identity mapping wh
core: add delimited area in .text to store data
A few variables such as boot_mmu_config are stored within the .text section of tee.elf, because they need to be reachable from the identity mapping which covers a subset of .text. Having them here however is a problem when one wants to measure (hash) the .text section because the runtime content may be different from the content in the tee.elf. In order to workaround this issue, allocate an area in the .text section to gather the data that are modified at boot time. Symbols tagged with .identity_map.data will be stored there. Two delimiters are introduced: __text_data_start and __text_data_end.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Sumit Garg <sumit.garg@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
d3a996cf |
| 01-Dec-2021 |
Jerome Forissier <jerome@forissier.org> |
kernel/linker.h: export __text_end
Add __text_end to <kernel/linker.h>. Can be used for example to compute a hash of the TEE executable code in a remote attestation scenario.
Signed-off-by: Jerome
kernel/linker.h: export __text_end
Add __text_end to <kernel/linker.h>. Can be used for example to compute a hash of the TEE executable code in a remote attestation scenario.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Acked-by: Sumit Garg <sumit.garg@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
27f5d377 |
| 14-Jan-2022 |
Jerome Forissier <jerome@forissier.org> |
core: remove __rodata_dtdrv_start and __rodata_dtdrv_end
Commit 61bdedea9452 ("core: define DT drivers using scattered arrays") omitted to remove the declarations and "dummy" definitions for symbols
core: remove __rodata_dtdrv_start and __rodata_dtdrv_end
Commit 61bdedea9452 ("core: define DT drivers using scattered arrays") omitted to remove the declarations and "dummy" definitions for symbols __rodata_dtdrv_start and __rodata_dtdrv_end, which are not used anymore. Remove them.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| #
4a96f1f5 |
| 04-Mar-2021 |
Marouene Boubakri <marouene.boubakri@nxp.com> |
core: kernel: move linker.h to core/include/kernel
To make reuse of linker.h when porting OP-TEE OS to other architectures, this commit moves it to core/include/kernel.
Signed-off-by: Marouene Boub
core: kernel: move linker.h to core/include/kernel
To make reuse of linker.h when porting OP-TEE OS to other architectures, this commit moves it to core/include/kernel.
Signed-off-by: Marouene Boubakri <marouene.boubakri@nxp.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|