linker_conf.h 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253
  1. /* Fix for AC-6.9 */
  2. #ifndef __GNUC__
  3. #define __GNUC__ 9
  4. #endif
  5. /* ROM layout */
  6. #define __rom_region_start Image$$ER_VECTOR$$Base
  7. #define _vector_start Image$$ER_VECTOR$$Base
  8. #define _vector_end Image$$ER_VECTOR$$Limit
  9. #define __app_entry_table Image$$ER_APP_ENTRY$$Base
  10. #define __app_entry_end Image$$ER_APP_ENTRY$$Limit
  11. #define __service_entry_table Image$$ER_SRV_ENTRY$$Base
  12. #define __service_entry_end Image$$ER_SRV_ENTRY$$Limit
  13. #define __view_entry_table Image$$ER_VIEW_ENTRY$$Base
  14. #define __view_entry_end Image$$ER_VIEW_ENTRY$$Limit
  15. #define __text_region_start Image$$ER_TEXT$$Base
  16. #define __text_region_end Image$$ER_TEXT$$Limit
  17. #define __start_unwind_idx Image$$ER_ARM_EXIDX$$Base
  18. #define __stop_unwind_idx Image$$ER_ARM_EXIDX$$Limit
  19. #define __exidx_start Image$$ER_ARM_EXIDX$$Base
  20. #define __exidx_end Image$$ER_ARM_EXIDX$$Limit
  21. #define __rodata_region_start Image$$ER_INIT_PRE_KERNEL_1$$Base
  22. #define __init_start Image$$ER_INIT_PRE_KERNEL_1$$Base
  23. #define __init_PRE_KERNEL_1_start Image$$ER_INIT_PRE_KERNEL_1$$Base
  24. #define __init_PRE_KERNEL_2_start Image$$ER_INIT_PRE_KERNEL_2$$Base
  25. #define __init_POST_KERNEL_start Image$$ER_INIT_POST_KERNEL$$Base
  26. #define __init_APPLICATION_start Image$$ER_INIT_APPLICATION$$Base
  27. #define __init_SMP_start Image$$ER_INIT_SMP$$Base
  28. #define __init_POWER_MAX_start Image$$ER_INIT_POWER_MAX$$Base
  29. #define __init_end Image$$ER_INIT_POWER_MAXX$$Limit
  30. #define __app_shmem_regions_start Image$$ER_APP_SHMEM$$Base
  31. #define __app_shmem_regions_end Image$$ER_APP_SHMEM$$Limit
  32. #define __net_l2_start Image$$ER_NET_12$$Base
  33. #define __net_l2_end Image$$ER_NET_12$$Limit
  34. #define _bt_l2cap_fixed_chan_list_start Image$$ER_BT_CHANNELS$$Base
  35. #define _bt_l2cap_fixed_chan_list_end Image$$ER_BT_CHANNELS$$Limit
  36. #define _bt_l2cap_br_fixed_chan_list_start Image$$ER_BT_BR_CHANNELS$$Base
  37. #define _bt_l2cap_br_fixed_chan_list_end Image$$ER_BT_BR_CHANNELS$$Limit
  38. #define _bt_gatt_service_static_list_start Image$$ER_BT_SERVICES$$Base
  39. #define _bt_gatt_service_static_list_end Image$$ER_BT_SERVICES$$Limit
  40. #define __log_const_start Image$$ER_LOG_CONST$$Base
  41. #define __log_const_end Image$$ER_LOG_CONST$$Limit
  42. #define __log_backends_start Image$$ER_LOG_BACKENDS$$Base
  43. #define __log_backends_end Image$$ER_LOG_BACKENDS$$Limit
  44. #define _shell_list_start Image$$ER_SHELL$$Base
  45. #define _shell_list_end Image$$ER_SHELL$$Limit
  46. #define __shell_root_cmds_start Image$$ER_SHELL_ROOT_CMDS$$Base
  47. #define __shell_root_cmds_end Image$$ER_SHELL_ROOT_CMDS$$Limit
  48. #define __font_entry_start Image$$ER_FONT_ENTRY$$Base
  49. #define __font_entry_end Image$$ER_FONT_ENTRY$$Limit
  50. #define _tracing_backend_list_start Image$$ER_TRACING_BACKENDS$$Base
  51. #define _tracing_backend_list_end Image$$ER_TRACING_BACKENDS$$Limit
  52. #define __rodata_region_end Image$$ER_RODATA$$Limit
  53. #define __rom_region_end Image$$ER_RODATA$$Limit
  54. #define _flash_used Load$$LR$$LR1$$Length
  55. /* RAM layout */
  56. #define _image_ram_start Image$$ER_SW_ISR_TABLE$$Base
  57. #define __ramfunc_start Image$$ER_RAMFUNC$$Base
  58. #define __ramfunc_end Image$$ER_RAMFUNC$$Limit
  59. #define __ramfunc_size Image$$ER_RAMFUNC$$Length
  60. #define __ramfunc_load_start Load$$ER_RAMFUNC$$Base
  61. #define _sram_data_start Image$$ER_SRAM_DATA$$Base
  62. #define _sram_data_end Image$$ER_SRAM_DATA$$Limit
  63. #define _sram_data_ram_size Image$$ER_SRAM_DATA$$Length
  64. #define _sram_data_rom_start Load$$ER_SRAM_DATA$$Base
  65. #define __sram_bss_start Image$$ER_SRAM_BSS$$Base
  66. #define __sram_bss_end Image$$ER_SRAM_BSS$$Limit
  67. #define _sleep_shutdown_ram_start Image$$ER_SRAM_SLEEP_SHUTDOWN$$Base
  68. #define _sleep_shutdown_ram_end Image$$ER_SRAM_SLEEP_SHUTDOWN$$Limit
  69. #define __data_region_start Image$$ER_DATAS$$Base
  70. #define __data_region_load_start Load$$ER_DATAS$$Base
  71. #define __device_start Image$$ER_DEVICE_PRE_KERNEL_1$$Base
  72. #define __device_PRE_KERNEL_1_start Image$$ER_DEVICE_PRE_KERNEL_1$$Base
  73. #define __device_PRE_KERNEL_2_start Image$$ER_DEVICE_PRE_KERNEL_2$$Base
  74. #define __device_POST_KERNEL_start Image$$ER_DEVICE_POST_KERNEL$$Base
  75. #define __device_APPLICATION_start Image$$ER_DEVICE_APPLICATION$$Base
  76. #define __device_SMP_start Image$$ER_DEVICE_SMP$$Base
  77. #define __device_end Image$$ER_DEVICE_SMPX$$Limit
  78. #define __device_init_status_start Image$$ER_DEVICE_INIT_STATUS$$Base
  79. #define __device_init_status_end Image$$ER_DEVICE_INIT_STATUS$$Limit
  80. #define __device_busy_start Image$$ER_DEVICE_BUSY$$Base
  81. #define __device_busy_end Image$$ER_DEVICE_BUSY$$Limit
  82. #define __device_states_start Image$$ER_DEVICE_STATE$$Base
  83. #define __device_states_end Image$$ER_DEVICE_STATE$$Limit
  84. #define __pm_device_slots_start Image$$ER_PM_DEVICE_SLOTS$$Base
  85. #define __pm_device_slots_end Image$$ER_PM_DEVICE_SLOTS$$Limit
  86. #define __shell_module_start Image$$ER_INITSHELL$$Base
  87. #define __log_dynamic_start Image$$ER_LOG_DYNAMIC$$Base
  88. #define __log_dynamic_end Image$$ER_LOG_DYNAMIC$$Limit
  89. #define __static_thread_data_list_start Image$$ER_STATIC_THREAD$$Base
  90. #define __static_thread_data_list_end Image$$ER_STATIC_THREAD$$Limit
  91. #define _k_timer_list_start Image$$ER_K_TIMER$$Base
  92. #define _k_timer_list_end Image$$ER_K_TIMER$$Limit
  93. #define _k_mem_slab_list_start Image$$ER_K_MEM_SLAB$$Base
  94. #define _k_mem_slab_list_end Image$$ER_K_MEM_SLAB$$Limit
  95. #define _k_mem_pool_list_start Image$$ER_K_MEM_POOL$$Base
  96. #define _k_mem_pool_list_end Image$$ER_K_MEM_POOL$$Limit
  97. #define _k_heap_list_start Image$$ER_K_HEAP$$Base
  98. #define _k_heap_list_end Image$$ER_K_HEAP$$Limit
  99. #define _k_sem_list_start Image$$ER_K_SEM$$Base
  100. #define _k_sem_list_end Image$$ER_K_SEM$$Limit
  101. #define _k_mutex_list_start Image$$ER_K_MUTEX$$Base
  102. #define _k_mutex_list_end Image$$ER_K_MUTEX$$Limit
  103. #define _k_queue_list_start Image$$ER_K_QUEUE$$Base
  104. #define _k_queue_list_end Image$$ER_K_QUEUE$$Limit
  105. #define _k_stack_list_start Image$$ER_K_STACK$$Base
  106. #define _k_stack_list_end Image$$ER_K_STACK$$Limit
  107. #define _k_msgq_list_start Image$$ER_K_MSGQ$$Base
  108. #define _k_msgq_list_end Image$$ER_K_MSGQ$$Limit
  109. #define _k_mbox_list_start Image$$ER_K_MBOX$$Base
  110. #define _k_mbox_list_end Image$$ER_K_MBOX$$Limit
  111. #define _k_pipe_list_start Image$$ER_K_PIPE$$Base
  112. #define _k_pipe_list_end Image$$ER_K_PIPE$$Limit
  113. #define _net_buf_pool_list Image$$ER_NET_BUF_POOL$$Base
  114. #define _net_buf_pool_list_end Image$$ER_NET_BUF_POOL$$Limit
  115. #define __net_if_start Image$$ER_NET_IF$$Base
  116. #define __net_if_end Image$$ER_NET_IF$$Limit
  117. #define __net_if_dev_start Image$$ER_NET_IF_DEV$$Base
  118. #define __net_if_dev_end Image$$ER_NET_IF_DEV$$Limit
  119. #define __net_l2_data_start Image$$ER_NET_L2_DATA$$Base
  120. #define __net_l2_data_end Image$$ER_NET_L2_DATA$$Limit
  121. #define __data_region_end Image$$ER_NET_L2_DATA$$Limit
  122. #define __bss_start Image$$ER_BSS$$Base
  123. #define __bss_end Image$$ER_BSS$$ZI$$Limit
  124. #define __psram_bss_start Image$$ER_BSS$$Base
  125. #define __psram_bss_end Image$$ER_BSS$$ZI$$Limit
  126. #define __kernel_ram_start Image$$ER_SRAM_BSS$$Base
  127. #define __kernel_ram_save_end Image$$ER_SRAM_BSS$$Limit
  128. #define _image_ram_end Image$$ER_NOINIT$$Limit
  129. #define __kernel_ram_end Image$$ER_RAM_END$$Base
  130. #define _end Image$$ER_PSRAM_BSS$$Limit
  131. #define __share_ram_start Image$$ER_SHARE_RAM_BSS$$Base
  132. #define __share_ram_end Image$$ER_SHARE_RAM_BSS$$ZI$$Limit
  133. #define __mp3_p_overlay_bss_start Image$$ER_MP3_P_OVERLAY_BSS$$Base
  134. #define __mp3_p_overlay_bss_size Image$$ER_MP3_P_OVERLAY_BSS$$ZI$$Length
  135. #define __mp3_p_overlay_data_start Image$$ER_MP3_P_OVERLAY_DATA$$Base
  136. #define __mp3_p_overlay_data_size Image$$ER_MP3_P_OVERLAY_DATA$$Length
  137. #define __mp3_p_overlay_data_image_start Load$$ER_MP3_P_OVERLAY_DATA$$Base
  138. #define __aac_p_overlay_bss_start Image$$ER_AAC_P_OVERLAY_BSS$$Base
  139. #define __aac_p_overlay_bss_size Image$$ER_AAC_P_OVERLAY_BSS$$ZI$$Length
  140. #define __aac_p_overlay_data_start Image$$ER_AAC_P_OVERLAY_DATA$$Base
  141. #define __aac_p_overlay_data_size Image$$ER_AAC_P_OVERLAY_DATA$$Length
  142. #define __aac_p_overlay_data_image_start Load$$ER_AAC_P_OVERLAY_DATA$$Base
  143. #define __wma_p_overlay_bss_start Image$$ER_WMA_P_OVERLAY_BSS$$Base
  144. #define __wma_p_overlay_bss_size Image$$ER_WMA_P_OVERLAY_BSS$$ZI$$Length
  145. #define __wma_p_overlay_data_start Image$$ER_WMA_P_OVERLAY_DATA$$Base
  146. #define __wma_p_overlay_data_size Image$$ER_WMA_P_OVERLAY_DATA$$Length
  147. #define __wma_p_overlay_data_image_start Load$$ER_WMA_P_OVERLAY_DATA$$Base
  148. #define __ape_p_overlay_bss_start Image$$ER_APE_P_OVERLAY_BSS$$Base
  149. #define __ape_p_overlay_bss_size Image$$ER_APE_P_OVERLAY_BSS$$ZI$$Length
  150. #define __ape_p_overlay_data_start Image$$ER_APE_P_OVERLAY_DATA$$Base
  151. #define __ape_p_overlay_data_size Image$$ER_APE_P_OVERLAY_DATA$$Length
  152. #define __ape_p_overlay_data_image_start Load$$ER_APE_P_OVERLAY_DATA$$Base
  153. #define __flac_p_overlay_bss_start Image$$ER_FLAC_P_OVERLAY_BSS$$Base
  154. #define __flac_p_overlay_bss_size Image$$ER_FLAC_P_OVERLAY_BSS$$ZI$$Length
  155. #define __flac_p_overlay_data_start Image$$ER_FLAC_P_OVERLAY_DATA$$Base
  156. #define __flac_p_overlay_data_size Image$$ER_FLAC_P_OVERLAY_DATA$$Length
  157. #define __flac_p_overlay_data_image_start Load$$ER_FLAC_P_OVERLAY_DATA$$Base
  158. #define __wav_p_overlay_bss_start Image$$ER_WAV_P_OVERLAY_BSS$$Base
  159. #define __wav_p_overlay_bss_size Image$$ER_WAV_P_OVERLAY_BSS$$ZI$$Length
  160. #define __wav_p_overlay_data_start Image$$ER_WAV_P_OVERLAY_DATA$$Base
  161. #define __wav_p_overlay_data_size Image$$ER_WAV_P_OVERLAY_DATA$$Length
  162. #define __wav_p_overlay_data_image_start Load$$ER_WAV_P_OVERLAY_DATA$$Base
  163. #define __sim_flash_ram_start Image$$ER_SIM_SRAM_NOINIT$$Base
  164. #define __sim_flash_ram_end Image$$ER_SIM_SRAM_NOINIT$$Limit
  165. #define __sensor_func_start Image$$ER_SENSOR_FUNC$$Base
  166. #define __sensor_func_end Image$$ER_SENSOR_FUNC$$Limit
  167. #define __sensor_func_size Image$$ER_SENSOR_FUNC$$Length
  168. #define __sensor_func_load_start Load$$ER_SENSOR_FUNC$$Base
  169. #define __sensor_data_start Image$$ER_SENSOR_DATA$$Base
  170. #define __sensor_data_end Image$$ER_SENSOR_DATA$$Limit
  171. #define __sensor_data_size Image$$ER_SENSOR_DATA$$Length
  172. #define __sensor_data_load_start Load$$ER_SENSOR_DATA$$Base
  173. #define __sensor_bss_start Image$$ER_SENSOR_BSS$$Base
  174. #define __sensor_bss_end Image$$ER_SENSOR_BSS$$ZI$$Limit
  175. #define __sensor_bss_size Image$$ER_SENSOR_BSS$$ZI$$Length
  176. #define SENSOR_LOAD_SIZE (AlignExpr(ImageLength(ER_SENSOR_FUNC),8) \
  177. + AlignExpr(ImageLength(ER_SENSOR_DATA),8))
  178. #define SENSOR_IMAGE_SIZE AlignExpr(SENSOR_LOAD_SIZE \
  179. + AlignExpr(ImageLength(ER_SENSOR_BSS),8), 512)
  180. #define __ramdump_sram_start Image$$ER_SRAM_DATA$$Base
  181. #define __ramdump_sram_end Image$$ER_SRAM_SLEEP_SHUTDOWN$$Base
  182. #define __ramdump_psram_start Image$$ER_ATTDATA$$Base
  183. #define __ramdump_psram_end Image$$ER_PSRAM_NOSAVE$$Base