2019-04-06 09:08:09 -04:00
|
|
|
/* SPDX-License-Identifier: Apache-2.0 */
|
|
|
|
|
2019-10-14 13:47:17 +09:00
|
|
|
#if defined(CONFIG_GEN_SW_ISR_TABLE) && defined(CONFIG_DYNAMIC_INTERRUPTS)
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(sw_isr_table,,)
|
2018-11-08 14:44:31 -08:00
|
|
|
{
|
2019-06-20 18:28:37 +09:00
|
|
|
/*
|
|
|
|
* Some arch requires an entry to be aligned to arch
|
|
|
|
* specific boundary for using double word load
|
|
|
|
* instruction. See include/sw_isr_table.h.
|
|
|
|
*/
|
|
|
|
. = ALIGN(CONFIG_ARCH_SW_ISR_TABLE_ALIGN);
|
2020-04-28 00:43:03 +09:00
|
|
|
*(_SW_ISR_TABLE_SECTION_NAME)
|
2018-11-08 14:44:31 -08:00
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
#endif
|
|
|
|
|
2020-03-09 11:02:20 +01:00
|
|
|
SECTION_DATA_PROLOGUE(devices,,)
|
2016-10-20 08:09:32 -07:00
|
|
|
{
|
2020-03-09 11:02:20 +01:00
|
|
|
DEVICE_SECTIONS()
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
2016-10-20 08:09:32 -07:00
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(initshell,,)
|
2016-07-31 16:16:29 +03:00
|
|
|
{
|
|
|
|
SHELL_INIT_SECTIONS()
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(log_dynamic_sections,,)
|
2018-05-16 08:50:33 +02:00
|
|
|
{
|
|
|
|
__log_dynamic_start = .;
|
|
|
|
KEEP(*(SORT(.log_dynamic_*)));
|
|
|
|
__log_dynamic_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(_static_thread_area,,SUBALIGN(4))
|
2016-11-01 14:37:15 -05:00
|
|
|
{
|
2019-06-03 13:01:43 -04:00
|
|
|
__static_thread_data_list_start = .;
|
2019-06-03 10:51:32 -04:00
|
|
|
KEEP(*(SORT_BY_NAME(".__static_thread_data.static.*")))
|
2019-06-03 13:01:43 -04:00
|
|
|
__static_thread_data_list_end = .;
|
2016-11-01 14:37:15 -05:00
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2017-08-22 13:15:23 -07:00
|
|
|
#ifdef CONFIG_USERSPACE
|
|
|
|
/* All kernel objects within are assumed to be either completely
|
|
|
|
* initialized at build time, or initialized automatically at runtime
|
|
|
|
* via iteration before the POST_KERNEL phase.
|
|
|
|
*
|
|
|
|
* These two symbols only used by gen_kobject_list.py
|
|
|
|
*/
|
|
|
|
|
|
|
|
_static_kernel_objects_begin = .;
|
|
|
|
#endif /* CONFIG_USERSPACE */
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(_k_timer_area,,SUBALIGN(4))
|
2016-11-01 14:37:15 -05:00
|
|
|
{
|
|
|
|
_k_timer_list_start = .;
|
2019-03-09 00:35:40 -08:00
|
|
|
KEEP(*("._k_timer.static.*"))
|
2016-11-01 14:37:15 -05:00
|
|
|
_k_timer_list_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(_k_mem_slab_area,,SUBALIGN(4))
|
2016-11-01 14:37:15 -05:00
|
|
|
{
|
|
|
|
_k_mem_slab_list_start = .;
|
2019-03-09 00:35:40 -08:00
|
|
|
KEEP(*("._k_mem_slab.static.*"))
|
2016-11-01 14:37:15 -05:00
|
|
|
_k_mem_slab_list_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(_k_mem_pool_area,,SUBALIGN(4))
|
2016-11-01 14:37:15 -05:00
|
|
|
{
|
|
|
|
_k_mem_pool_list_start = .;
|
2019-03-09 00:35:40 -08:00
|
|
|
KEEP(*("._k_mem_pool.static.*"))
|
2016-11-01 14:37:15 -05:00
|
|
|
_k_mem_pool_list_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2020-04-03 10:01:03 -07:00
|
|
|
SECTION_DATA_PROLOGUE(_k_heap_area,,SUBALIGN(4))
|
|
|
|
{
|
|
|
|
_k_heap_list_start = .;
|
|
|
|
KEEP(*("._k_heap.static.*"))
|
|
|
|
_k_heap_list_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(_k_sem_area,,SUBALIGN(4))
|
2016-11-01 14:37:15 -05:00
|
|
|
{
|
|
|
|
_k_sem_list_start = .;
|
2019-03-09 00:35:40 -08:00
|
|
|
KEEP(*("._k_sem.static.*"))
|
2019-08-22 14:38:26 -04:00
|
|
|
KEEP(*("._sys_sem.static.*"))
|
2016-11-01 14:37:15 -05:00
|
|
|
_k_sem_list_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(_k_mutex_area,,SUBALIGN(4))
|
2016-11-01 14:37:15 -05:00
|
|
|
{
|
|
|
|
_k_mutex_list_start = .;
|
2019-03-09 00:35:40 -08:00
|
|
|
KEEP(*("._k_mutex.static.*"))
|
2016-11-01 14:37:15 -05:00
|
|
|
_k_mutex_list_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(_k_queue_area,,SUBALIGN(4))
|
2017-02-21 14:50:42 +02:00
|
|
|
{
|
|
|
|
_k_queue_list_start = .;
|
2019-03-09 00:35:40 -08:00
|
|
|
KEEP(*("._k_queue.static.*"))
|
2019-06-03 10:51:32 -04:00
|
|
|
KEEP(*("._k_fifo.static.*"))
|
|
|
|
KEEP(*("._k_lifo.static.*"))
|
2017-02-21 14:50:42 +02:00
|
|
|
_k_queue_list_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(_k_stack_area,,SUBALIGN(4))
|
2016-11-01 14:37:15 -05:00
|
|
|
{
|
|
|
|
_k_stack_list_start = .;
|
2019-03-09 00:35:40 -08:00
|
|
|
KEEP(*("._k_stack.static.*"))
|
2016-11-01 14:37:15 -05:00
|
|
|
_k_stack_list_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(_k_msgq_area,,SUBALIGN(4))
|
2016-11-01 14:37:15 -05:00
|
|
|
{
|
|
|
|
_k_msgq_list_start = .;
|
2019-03-09 00:35:40 -08:00
|
|
|
KEEP(*("._k_msgq.static.*"))
|
2016-11-01 14:37:15 -05:00
|
|
|
_k_msgq_list_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(_k_mbox_area,,SUBALIGN(4))
|
2016-11-01 14:37:15 -05:00
|
|
|
{
|
|
|
|
_k_mbox_list_start = .;
|
2019-03-09 00:35:40 -08:00
|
|
|
KEEP(*("._k_mbox.static.*"))
|
2016-11-01 14:37:15 -05:00
|
|
|
_k_mbox_list_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(_k_pipe_area,,SUBALIGN(4))
|
2016-11-01 14:37:15 -05:00
|
|
|
{
|
|
|
|
_k_pipe_list_start = .;
|
2019-03-09 00:35:40 -08:00
|
|
|
KEEP(*("._k_pipe.static.*"))
|
2016-11-01 14:37:15 -05:00
|
|
|
_k_pipe_list_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(_net_buf_pool_area,,SUBALIGN(4))
|
2017-06-03 19:20:27 +03:00
|
|
|
{
|
|
|
|
_net_buf_pool_list = .;
|
|
|
|
KEEP(*(SORT_BY_NAME("._net_buf_pool.static.*")))
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(net_if,,SUBALIGN(4))
|
2016-05-02 09:02:04 +02:00
|
|
|
{
|
|
|
|
__net_if_start = .;
|
|
|
|
*(".net_if.*")
|
2017-03-08 09:30:03 +01:00
|
|
|
KEEP(*(SORT_BY_NAME(".net_if.*")))
|
2016-05-02 09:02:04 +02:00
|
|
|
__net_if_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
2016-06-01 15:25:22 +03:00
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(net_if_dev,,SUBALIGN(4))
|
2018-01-11 16:06:53 +02:00
|
|
|
{
|
|
|
|
__net_if_dev_start = .;
|
|
|
|
*(".net_if_dev.*")
|
|
|
|
KEEP(*(SORT_BY_NAME(".net_if_dev.*")))
|
|
|
|
__net_if_dev_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(net_l2_data,,SUBALIGN(4))
|
2016-06-16 13:50:38 +02:00
|
|
|
{
|
|
|
|
__net_l2_data_start = .;
|
|
|
|
*(".net_l2.data")
|
|
|
|
KEEP(*(SORT_BY_NAME(".net_l2.data*")))
|
|
|
|
__net_l2_data_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
2017-08-22 13:15:23 -07:00
|
|
|
|
2020-04-01 12:47:53 +03:00
|
|
|
#if defined(CONFIG_UART_MUX)
|
|
|
|
SECTION_DATA_PROLOGUE(uart_mux,,SUBALIGN(4))
|
|
|
|
{
|
|
|
|
__uart_mux_start = .;
|
|
|
|
*(".uart_mux.*")
|
|
|
|
KEEP(*(SORT_BY_NAME(".uart_mux.*")))
|
|
|
|
__uart_mux_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
#endif
|
|
|
|
|
2017-10-30 12:27:35 +01:00
|
|
|
#if defined(CONFIG_USB_DEVICE_STACK)
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(usb_descriptor,,SUBALIGN(1))
|
2017-10-30 12:27:35 +01:00
|
|
|
{
|
|
|
|
__usb_descriptor_start = .;
|
|
|
|
*(".usb.descriptor")
|
|
|
|
KEEP(*(SORT_BY_NAME(".usb.descriptor*")))
|
|
|
|
__usb_descriptor_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(usb_data,,SUBALIGN(1))
|
2017-10-30 12:27:35 +01:00
|
|
|
{
|
|
|
|
__usb_data_start = .;
|
|
|
|
*(".usb.data")
|
|
|
|
KEEP(*(SORT_BY_NAME(".usb.data*")))
|
|
|
|
__usb_data_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
#endif /* CONFIG_USB_DEVICE_STACK */
|
|
|
|
|
2018-05-31 15:26:30 +03:00
|
|
|
#if defined(CONFIG_USB_DEVICE_BOS)
|
2019-03-14 18:39:36 -05:00
|
|
|
SECTION_DATA_PROLOGUE(usb_bos_desc,,SUBALIGN(1))
|
2018-05-31 15:26:30 +03:00
|
|
|
{
|
|
|
|
__usb_bos_desc_start = .;
|
|
|
|
*(".usb.bos_desc")
|
|
|
|
KEEP(*(SORT_BY_NAME(".usb.bos_desc*")))
|
|
|
|
__usb_bos_desc_end = .;
|
|
|
|
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
|
|
|
|
#endif /* CONFIG_USB_DEVICE_BOS */
|
|
|
|
|
2017-08-22 13:15:23 -07:00
|
|
|
#ifdef CONFIG_USERSPACE
|
|
|
|
_static_kernel_objects_end = .;
|
|
|
|
#endif
|