In zephyr_linker_sources(). This is done since the point of the location is to place things at given offsets. This can only be done consistenly if the linker code is placed into the _first_ section. All uses of TEXT_START are replaced with ROM_START. ROM_START is only supported in some arches, as some arches have several custom sections before text. These don't currently have ROM_START or TEXT_START available, but that could be added with a bit of refactoring in their linker script. No SORT_KEYs are changed. This also fixes an error introduced when TEXT_START was added, where TEXT_SECTION_OFFSET was applied to riscv's common linker.ld instead of to openisa_rv32m1's specific linker.ld. Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
35 lines
809 B
CMake
35 lines
809 B
CMake
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
zephyr_library()
|
|
|
|
zephyr_library_sources(
|
|
thread.c
|
|
thread_entry_wrapper.S
|
|
cpu_idle.S
|
|
fatal.c
|
|
fault.c
|
|
fault_s.S
|
|
irq_manage.c
|
|
timestamp.c
|
|
isr_wrapper.S
|
|
regular_irq.S
|
|
switch.S
|
|
prep_c.c
|
|
reset.S
|
|
vector_table.c
|
|
)
|
|
|
|
zephyr_library_sources_ifdef(CONFIG_CACHE_FLUSHING cache.c)
|
|
zephyr_library_sources_ifdef(CONFIG_ARC_FIRQ fast_irq.S)
|
|
|
|
zephyr_library_sources_if_kconfig(irq_offload.c)
|
|
|
|
zephyr_library_sources_ifdef(CONFIG_USERSPACE userspace.S)
|
|
zephyr_library_sources_ifdef(CONFIG_ARC_CONNECT arc_connect.c)
|
|
zephyr_library_sources_ifdef(CONFIG_ARC_CONNECT arc_smp.c)
|
|
|
|
add_subdirectory_ifdef(CONFIG_ARC_CORE_MPU mpu)
|
|
add_subdirectory_ifdef(CONFIG_ARC_SECURE_FIRMWARE secureshield)
|
|
|
|
zephyr_linker_sources(ROM_START SORT_KEY 0x0vectors vector_table.ld)
|