При добавлении RAM rellocate(как я понял - любого кода) - программа начинает виснуть. С ITCM такой проблемы нету(пробовал запускать несколько раз, используя ITCM rellocate - всё хорошо)
CMakeLists.txt:
# Печатаем каждый файл с новой строки
foreach(src_file ${PJSIP_CONFIGURED_SOURCES})
message(STATUS " -> ${src_file}")
endforeach()
message(STATUS "=======================================================")
# -----------------------------------------------------------------
# 2. Массово отправляем во внешнюю RAM только этот отфильтрованный список
if(PJSIP_CONFIGURED_SOURCES)
zephyr_code_relocate(FILES ${PJSIP_CONFIGURED_SOURCES} LOCATION RAM_TEXT)
endif()
Debug:
Breakpoint 1, main (argc=-536810240, argv=0x8010c1f0 <z_main_thread>) at /home/vovan/ZEPHYR_RTOS/zephyrproject/zephyr/samples/pjsip/pjproject/pjsip-apps/src/samples/zephyr_pjsua.c:864
864 printk("--- Project build on: %s at %s ---\n",__DATE__,__TIME__);
(gdb) n
865 exit_main_pthread = 0;
(gdb) n
866 lcd_init_val = lcd_init();
(gdb) n
867 lcd_set_data(0, 0, "Load pjsip", 0);
(gdb) n
868 lcd_set_data(0, 1, 0, 1);
(gdb) n
871 net_mgmt_init_event_callback(&mgmt_cb, net_event_handler, NET_EVENT_ETHERNET_CARRIER_ON | NET_EVENT_ETHERNET_CARRIER_OFF);
(gdb) n
872 net_mgmt_add_event_callback(&mgmt_cb);
(gdb) n
873 have_settings = setup_disk();
(gdb) n
874 sample_usbd = sample_usbd_init_device(NULL);
(gdb) n
875 if (sample_usbd == NULL) {
(gdb) n
879 ret = usbd_enable(sample_usbd);
(gdb) n
880 if (ret) {
(gdb) n
888 printf("The device is put in USB mass storage mode\n");
(gdb) n
890 set_static_ip();
(gdb) n
891 if(have_settings)
(gdb) n
892 pjsip_start(NULL, 0, NULL);
(gdb) n
bg_thread_main (unused1=<optimized out>, unused2=<optimized out>, unused3=<optimized out>) at /home/vovan/ZEPHYR_RTOS/zephyrproject/zephyr/kernel/init.c:590
590 z_thread_essential_clear(&z_main_thread);
(gdb) n
z_thread_entry (entry=0x60156ef9 <bg_thread_main>, p1=<optimized out>, p2=<optimized out>, p3=0x0 <zephyr_timer_wrapper>) at /home/vovan/ZEPHYR_RTOS/zephyrproject/zephyr/lib/os/thread_entry.c:50
50 k_thread_abort(k_current_get());
(gdb) n
^C
Program received signal SIGINT, Interrupt.
arch_system_halt (reason=reason@entry=20) at /home/vovan/ZEPHYR_RTOS/zephyrproject/zephyr/kernel/fatal.c:30
30 for (;;) {