zephyr/scripts/native_simulator/common/other/linker_script.pre.ld
Alberto Escolar Piedras 850fc2f22f Native simulator: Add first version in-tree
Add the first version of the native simulator.
The simultaor is taken as is from
https://github.com/BabbleSim/native_simulator/
sha: 74986abfe088a1780e604dae65f87470b4c2a0eb

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-07-05 07:01:19 -04:00

50 lines
1.2 KiB
Text

/*
* Copyright (c) 2023 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: Apache-2.0
*/
/**
* @file
* @brief Linker command/script file for the native simulator runner
*/
#define NSI_INIT_LEVEL(level) \
__nsi_##level##_tasks_start = .; \
KEEP(*(SORT(.nsi_##level[0-9]_task))); \
KEEP(*(SORT(.nsi_##level[1-9][0-9]_task))); \
KEEP(*(SORT(.nsi_##level[1-9][0-9][0-9]_task))); \
SECTIONS
{
nsi_tasks :
{
__nsi_tasks_start = .;
NSI_INIT_LEVEL(PRE_BOOT_1)
NSI_INIT_LEVEL(PRE_BOOT_2)
NSI_INIT_LEVEL(HW_INIT)
NSI_INIT_LEVEL(PRE_BOOT_3)
NSI_INIT_LEVEL(FIRST_SLEEP)
NSI_INIT_LEVEL(ON_EXIT_PRE)
NSI_INIT_LEVEL(ON_EXIT_POST)
__nsi_tasks_end = .;
}
nsi_hw_events :
{
__nsi_hw_events_callbacks_start = .;
KEEP(*(SORT(.nsi_hw_event[0-9]_callback))); \
KEEP(*(SORT(.nsi_hw_event[1-9][0-9]_callback))); \
KEEP(*(SORT(.nsi_hw_event[1-9][0-9][0-9]_callback)));
__nsi_hw_events_callbacks_end = .;
__nsi_hw_events_timers_start = .;
KEEP(*(SORT(.nsi_hw_event[0-9]_timer))); \
KEEP(*(SORT(.nsi_hw_event[1-9][0-9]_timer))); \
KEEP(*(SORT(.nsi_hw_event[1-9][0-9][0-9]_timer)));
__nsi_hw_events_timers_end = .;
}
} INSERT AFTER .data;
/*
* Note this script augments the default host linker script
*/