History log of /optee_os/core/include/kernel/linker.h (Results 1 – 10 of 10)
Revision Date Author Comments
# 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 ...