SVC_Handler ⇒ SVC_Handler
Function Pointers
- BusFault_Handler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- CCM_AAR_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- COMP_LPCOMP_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- DebugMon_Handler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- ECB_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- FPU_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- GPIOTE_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- HardFault_Handler from main.o(.text) referenced from arm_startup_nrf52.o(RESET)
- I2S_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- MWU_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- MemoryManagement_Handler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- NFCT_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- NMI_Handler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- PDM_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- POWER_CLOCK_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- PWM0_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- PWM1_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- PWM2_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- PendSV_Handler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- QDEC_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- RADIO_IRQHandler from transport.o(.text) referenced from arm_startup_nrf52.o(RESET)
- RNG_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- RTC0_IRQHandler from bootloader_rtc.o(.text) referenced from arm_startup_nrf52.o(RESET)
- RTC1_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- RTC2_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- Reset_Handler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SAADC_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SPIM2_SPIS2_SPI2_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SVC_Handler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SWI0_EGU0_IRQHandler from transport.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SWI1_EGU1_IRQHandler from serial_handler_uart.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SWI2_EGU2_IRQHandler from bootloader.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SWI3_EGU3_IRQHandler from bootloader.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SWI4_EGU4_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SWI5_EGU5_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SysTick_Handler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SystemInit from system_nrf52.o(.text) referenced from arm_startup_nrf52.o(.text)
- TEMP_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- TIMER0_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- TIMER1_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- TIMER2_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- TIMER3_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- TIMER4_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- UARTE0_UART0_IRQHandler from serial_handler_uart.o(.text) referenced from arm_startup_nrf52.o(RESET)
- UsageFault_Handler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- WDT_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- __main from __main.o(!!!main) referenced from arm_startup_nrf52.o(.text)
- bl_cmd_handler from bootloader_app_bridge.o(.text) referenced from bootloader_app_bridge.o(.text)
- bl_evt_handler from bootloader.o(.text) referenced from bootloader.o(.text)
- radio_idle_cb from transport.o(.text) referenced from transport.o(.text)
- radio_rx_cb from transport.o(.text) referenced from transport.o(.text)
- radio_tx_cb from transport.o(.text) referenced from transport.o(.text)
- rx_cb from bootloader.o(.text) referenced from bootloader.o(.text)
Global Symbols
__main (Thumb, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
[Calls]
- >> __rt_entry
- >> __scatterload
__scatterload (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
[Called By]
__scatterload_rt2 (Thumb, 44 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
[Calls]
__scatterload_rt2_thumb_only (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
__scatterload_null (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
__scatterload_copy (Thumb, 26 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
[Calls]
[Called By]
__scatterload_zeroinit (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
__rt_lib_init (Thumb, 0 bytes, Stack size unknown bytes, libinit.o(.ARM.Collect$$libinit$$00000000))
[Called By]
__rt_lib_init_fp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000001))
[Calls]
__rt_lib_init_alloca_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002C))
__rt_lib_init_argv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002A))
__rt_lib_init_atexit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019))
__rt_lib_init_clock_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F))
__rt_lib_init_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000030))
__rt_lib_init_exceptions_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E))
__rt_lib_init_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D))
__rt_lib_init_getenv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021))
__rt_lib_init_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000008))
__rt_lib_init_lc_collate_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000F))
__rt_lib_init_lc_ctype_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000011))
__rt_lib_init_lc_monetary_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013))
__rt_lib_init_lc_numeric_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015))
__rt_lib_init_lc_time_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017))
__rt_lib_init_rand_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000C))
__rt_lib_init_return (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000031))
__rt_lib_init_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B))
__rt_lib_init_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000023))
__rt_lib_init_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000A))
__rt_lib_shutdown (Thumb, 0 bytes, Stack size unknown bytes, libshutdown.o(.ARM.Collect$$libshutdown$$00000000))
[Called By]
__rt_lib_shutdown_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000006))
__rt_lib_shutdown_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E))
__rt_lib_shutdown_return (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F))
__rt_lib_shutdown_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000009))
__rt_lib_shutdown_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000003))
__rt_lib_shutdown_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000B))
__rt_entry (Thumb, 0 bytes, Stack size unknown bytes, rtentry.o(.ARM.Collect$$rtentry$$00000000))
[Called By]
- >> __main
- >> __scatterload_rt2
__rt_entry_presh_1 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$00000002))
__rt_entry_sh (Thumb, 0 bytes, Stack size unknown bytes, rtentry4.o(.ARM.Collect$$rtentry$$00000004))
[Stack]
- Max Depth = 8 + Unknown Stack Size
- Call Chain = __rt_entry_sh ⇒ __user_setup_stackheap
[Calls]- >> __user_setup_stackheap
__rt_entry_li (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000A))
[Calls]
__rt_entry_postsh_1 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$00000009))
__rt_entry_main (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000D))
[Stack]
- Max Depth = 1068 + Unknown Stack Size
- Call Chain = __rt_entry_main ⇒ main ⇒ bootloader_enable ⇒ bl_cmd_handler ⇒ dfu_mesh_timeout ⇒ signature_check ⇒ uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]
__rt_entry_postli_1 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000C))
__rt_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit.o(.ARM.Collect$$rtexit$$00000000))
[Called By]
__rt_exit_ls (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000003))
[Calls]
__rt_exit_prels_1 (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))
__rt_exit_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000004))
[Calls]
__asm___17_bootloader_util_c_c13d365c__bootloader_util_reset (Thumb, 52 bytes, Stack size 0 bytes, bootloader_util.o(.emb_text))
[Called By]
- >> bootloader_util_app_start
SWI2_EGU2_IRQHandler (Thumb, 4 bytes, Stack size 0 bytes, bootloader.o(.text))
[Stack]
- Max Depth = 248
- Call Chain = SWI2_EGU2_IRQHandler ⇒ mesh_aci_command_check ⇒ serial_command_handler ⇒ serial_wait_for_completion ⇒ UARTE0_UART0_IRQHandler ⇒ char_rx ⇒ serial_handler_event_send ⇒ fifo_push
[Calls]- >> mesh_aci_command_check
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
SWI3_EGU3_IRQHandler (Thumb, 232 bytes, Stack size 56 bytes, bootloader.o(.text))
[Stack]
- Max Depth = 1060 + Unknown Stack Size
- Call Chain = SWI3_EGU3_IRQHandler ⇒ bl_cmd_handler ⇒ dfu_mesh_timeout ⇒ signature_check ⇒ uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> nrf_flash_store
- >> nrf_flash_erase
- >> fifo_pop
- >> fifo_is_empty
- >> bootloader_util_app_start
- >> bootloader_info_entry_get
- >> bl_cmd_handler
- >> app_error_handler_bare
- >> __aeabi_memset
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
bootloader_abort (Thumb, 116 bytes, Stack size 32 bytes, bootloader.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = bootloader_abort ⇒ dfu_mesh_app_is_valid ⇒ fw_is_verified ⇒ bootloader_info_entry_get ⇒ info_entry_get
[Calls]- >> radio_disable
- >> interrupts_disable
- >> fifo_is_empty
- >> dfu_mesh_app_is_valid
- >> bootloader_util_app_start
- >> bootloader_info_entry_get
- >> app_error_handler_bare
[Called By]- >> bootloader_timeout
- >> bl_evt_handler
- >> main
bootloader_init (Thumb, 132 bytes, Stack size 48 bytes, bootloader.o(.text))
[Stack]
- Max Depth = 1052 + Unknown Stack Size
- Call Chain = bootloader_init ⇒ bl_cmd_handler ⇒ dfu_mesh_timeout ⇒ signature_check ⇒ uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> transport_init
- >> rtc_init
- >> mesh_aci_init
- >> fifo_init
- >> dfu_bank_scan
- >> bootloader_app_bridge_init
- >> bl_cmd_handler
- >> app_error_handler_bare
- >> __aeabi_memclr4
[Called By]
bootloader_enable (Thumb, 264 bytes, Stack size 64 bytes, bootloader.o(.text))
[Stack]
- Max Depth = 1068 + Unknown Stack Size
- Call Chain = bootloader_enable ⇒ bl_cmd_handler ⇒ dfu_mesh_timeout ⇒ signature_check ⇒ uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> transport_start
- >> mesh_aci_start
- >> dfu_mesh_req
- >> dfu_mesh_missing_type_get
- >> dfu_mesh_app_is_valid
- >> dfu_bank_flash
- >> bootloader_info_entry_overwrite
- >> bootloader_info_entry_get
- >> bl_cmd_handler
- >> app_error_handler_bare
- >> set_timeout
[Called By]
bootloader_timeout (Thumb, 68 bytes, Stack size 40 bytes, bootloader.o(.text))
[Stack]
- Max Depth = 1044 + Unknown Stack Size
- Call Chain = bootloader_timeout ⇒ bl_cmd_handler ⇒ dfu_mesh_timeout ⇒ signature_check ⇒ uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> bl_cmd_handler
- >> app_error_handler_bare
- >> bootloader_abort
[Called By]
bootloader_cmd_send (Thumb, 4 bytes, Stack size 0 bytes, bootloader.o(.text))
[Called By]
- >> serial_command_handler
bl_cmd_handler (Thumb, 320 bytes, Stack size 48 bytes, bootloader_app_bridge.o(.text))
[Stack]
- Max Depth = 1004 + Unknown Stack Size
- Call Chain = bl_cmd_handler ⇒ dfu_mesh_timeout ⇒ signature_check ⇒ uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> dfu_transfer_flash_write_complete
- >> dfu_mesh_timeout
- >> dfu_mesh_rx
- >> dfu_mesh_restart
- >> dfu_mesh_relay
- >> dfu_mesh_on_flash_idle
- >> dfu_mesh_init
- >> dfu_bank_on_flash_idle
- >> bootloader_info_on_flash_op_end
- >> bootloader_info_on_flash_idle
- >> bootloader_info_init
- >> bootloader_info_entry_put
- >> bootloader_info_entry_invalidate
- >> dfu_mesh_start
- >> dfu_mesh_req
- >> dfu_bank_flash
- >> bootloader_info_entry_get
- >> app_error_handler_bare
[Called By]- >> bootloader_timeout
- >> bootloader_enable
- >> bootloader_init
- >> SWI3_EGU3_IRQHandler
- >> bl_evt_handler
- >> rx_cb
[Address Reference Count : 1]- bootloader_app_bridge.o(.text)
bootloader_app_bridge_init (Thumb, 30 bytes, Stack size 0 bytes, bootloader_app_bridge.o(.text))
[Called By]
bootloader_evt_send (Thumb, 12 bytes, Stack size 0 bytes, bootloader_app_bridge.o(.text))
[Called By]
- >> handle_fwid_packet
- >> request_missing_data
- >> send_bank_notifications
- >> send_progress_event
- >> handle_data_packet
- >> target_rx_data
- >> notify_state_packet
- >> start_target
- >> beacon_set
- >> packet_tx_dynamic
- >> flash_bank_entry_fw
- >> dfu_mesh_on_flash_idle
- >> tx_abort
- >> flash_erase
- >> flash_write
- >> send_end_evt
send_end_evt (Thumb, 24 bytes, Stack size 40 bytes, bootloader_app_bridge.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = send_end_evt
[Calls]
[Called By]- >> transfer_abort
- >> target_rx_start
- >> get_info_pointers
- >> dfu_mesh_timeout
flash_write (Thumb, 36 bytes, Stack size 56 bytes, bootloader_app_bridge.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = flash_write ⇒ __aeabi_memcpy4
[Calls]- >> bootloader_evt_send
- >> __aeabi_memcpy4
[Called By]- >> dfu_transfer_data
- >> entry_write
- >> entry_header_invalidate
- >> copy_page_write_next_data
- >> copy_page_write_meta
- >> bootloader_info_init
flash_erase (Thumb, 32 bytes, Stack size 48 bytes, bootloader_app_bridge.o(.text))
[Stack]
- Max Depth = 56
- Call Chain = flash_erase ⇒ __aeabi_memcpy4
[Calls]- >> bootloader_evt_send
- >> __aeabi_memcpy4
[Called By]- >> dfu_transfer_start
- >> copy_page
- >> bootloader_info_on_flash_idle
- >> bootloader_info_init
tx_abort (Thumb, 22 bytes, Stack size 40 bytes, bootloader_app_bridge.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = tx_abort
[Calls]
[Called By]
bootloader_is_in_application (Thumb, 10 bytes, Stack size 0 bytes, bootloader_app_bridge.o(.text))
[Called By]
entry_invalidate (Thumb, 56 bytes, Stack size 16 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 88
- Call Chain = entry_invalidate ⇒ entry_header_invalidate ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> bootloader_info_header_get
- >> entry_header_invalidate
- >> info_entry_get
- >> app_error_handler_bare
[Called By]- >> bootloader_info_entry_invalidate
entry_write (Thumb, 104 bytes, Stack size 32 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 96 + Unknown Stack Size
- Call Chain = entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> get_write_buffer
- >> flash_write
- >> app_error_handler_bare
- >> __aeabi_memset
- >> __aeabi_memcpy4
[Called By]- >> bootloader_info_entry_put
- >> bootloader_info_entry_overwrite
bootloader_info_init (Thumb, 126 bytes, Stack size 16 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 80
- Call Chain = bootloader_info_init ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> bootloader_info_first_unused_get
- >> flash_erase
- >> flash_write
- >> app_error_handler_bare
- >> __aeabi_memclr4
[Called By]
bootloader_info_entry_get (Thumb, 8 bytes, Stack size 0 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = bootloader_info_entry_get ⇒ info_entry_get
[Calls]
[Called By]- >> fw_is_verified
- >> bootloader_is_newer
- >> app_is_newer
- >> send_bank_notifications
- >> start_target
- >> get_info_pointers
- >> flash_bank_entry
- >> flash_bank_entry_fw
- >> bootloader_info_entry_put
- >> is_upgrade
- >> dfu_mesh_missing_type_get
- >> dfu_mesh_app_is_valid
- >> dfu_bank_scan
- >> dfu_bank_flash
- >> bootloader_info_entry_overwrite
- >> bl_cmd_handler
- >> bootloader_enable
- >> bootloader_abort
- >> SWI3_EGU3_IRQHandler
- >> bl_evt_handler
bootloader_info_reset (Thumb, 46 bytes, Stack size 8 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 80
- Call Chain = bootloader_info_reset ⇒ copy_page ⇒ flash_erase ⇒ __aeabi_memcpy4
[Calls]- >> copy_page
- >> app_error_handler_bare
[Called By]- >> dfu_mesh_finalize
- >> bootloader_info_entry_put
bootloader_info_entry_put (Thumb, 214 bytes, Stack size 32 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 128 + Unknown Stack Size
- Call Chain = bootloader_info_entry_put ⇒ entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> bootloader_info_reset
- >> entry_write
- >> bootloader_info_header_get
- >> entry_header_invalidate
- >> bootloader_info_entry_get
- >> app_error_handler_bare
[Called By]- >> dfu_mesh_finalize
- >> start_target
- >> flash_bank_entry
- >> bl_cmd_handler
bootloader_info_entry_overwrite (Thumb, 44 bytes, Stack size 16 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 112 + Unknown Stack Size
- Call Chain = bootloader_info_entry_overwrite ⇒ entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> entry_write
- >> bootloader_info_header_get
- >> bootloader_info_entry_get
[Called By]- >> start_target
- >> flash_bank_entry
- >> flash_bank_entry_fw
- >> bootloader_enable
bootloader_info_entry_invalidate (Thumb, 8 bytes, Stack size 0 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 88
- Call Chain = bootloader_info_entry_invalidate ⇒ entry_invalidate ⇒ entry_header_invalidate ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]
[Called By]- >> start_target
- >> flash_bank_entry
- >> bl_cmd_handler
bootloader_info_stable (Thumb, 20 bytes, Stack size 0 bytes, bootloader_info.o(.text))
[Called By]
- >> dfu_mesh_on_flash_idle
bootloader_info_on_flash_op_end (Thumb, 88 bytes, Stack size 16 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 104
- Call Chain = bootloader_info_on_flash_op_end ⇒ copy_page_on_flash_op_end ⇒ copy_page_write_next_data ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> copy_page_on_flash_op_end
- >> bootloader_info_first_unused_get
- >> copy_page
- >> free_write_buffer
[Called By]
bootloader_info_on_flash_idle (Thumb, 50 bytes, Stack size 0 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = bootloader_info_on_flash_idle ⇒ copy_page_write_meta ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> copy_page_write_meta
- >> flash_erase
[Called By]
RTC0_IRQHandler (Thumb, 66 bytes, Stack size 16 bytes, bootloader_rtc.o(.text))
[Stack]
- Max Depth = 1060 + Unknown Stack Size
- Call Chain = RTC0_IRQHandler ⇒ bootloader_timeout ⇒ bl_cmd_handler ⇒ dfu_mesh_timeout ⇒ signature_check ⇒ uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> transport_rtc_irq_handler
- >> bootloader_timeout
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
rtc_init (Thumb, 42 bytes, Stack size 0 bytes, bootloader_rtc.o(.text))
[Called By]
bootloader_util_app_start (Thumb, 4 bytes, Stack size 0 bytes, bootloader_util.o(.text))
[Calls]
- >> __asm___17_bootloader_util_c_c13d365c__bootloader_util_reset
[Called By]- >> bootloader_abort
- >> SWI3_EGU3_IRQHandler
dfu_bank_scan (Thumb, 60 bytes, Stack size 16 bytes, dfu_bank.o(.text))
[Stack]
- Max Depth = 472 + Unknown Stack Size
- Call Chain = dfu_bank_scan ⇒ flash_bank_entry ⇒ flash_bank_entry_fw ⇒ bootloader_info_entry_overwrite ⇒ entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> flash_bank_entry
- >> bootloader_info_entry_get
[Called By]
dfu_bank_flash (Thumb, 64 bytes, Stack size 16 bytes, dfu_bank.o(.text))
[Stack]
- Max Depth = 472 + Unknown Stack Size
- Call Chain = dfu_bank_flash ⇒ flash_bank_entry ⇒ flash_bank_entry_fw ⇒ bootloader_info_entry_overwrite ⇒ entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> flash_bank_entry
- >> bootloader_info_entry_get
[Called By]- >> bl_cmd_handler
- >> bootloader_enable
- >> bl_evt_handler
dfu_bank_on_flash_idle (Thumb, 22 bytes, Stack size 0 bytes, dfu_bank.o(.text))
[Stack]
- Max Depth = 456 + Unknown Stack Size
- Call Chain = dfu_bank_on_flash_idle ⇒ flash_bank_entry ⇒ flash_bank_entry_fw ⇒ bootloader_info_entry_overwrite ⇒ entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]
[Called By]
dfu_bank_transfer_in_progress (Thumb, 12 bytes, Stack size 0 bytes, dfu_bank.o(.text))
[Called By]
- >> dfu_mesh_start
- >> main
dfu_mesh_init (Thumb, 42 bytes, Stack size 16 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = dfu_mesh_init ⇒ get_info_pointers ⇒ send_end_evt
[Calls]- >> get_info_pointers
- >> __aeabi_memclr4
- >> __aeabi_memclr
[Called By]
dfu_mesh_start (Thumb, 60 bytes, Stack size 8 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 104
- Call Chain = dfu_mesh_start ⇒ send_bank_notifications ⇒ bootloader_info_entry_get ⇒ info_entry_get
[Calls]- >> packet_cache_flush
- >> start_find_fwid
- >> send_bank_notifications
- >> get_info_pointers
- >> dfu_bank_transfer_in_progress
- >> __aeabi_memclr4
- >> __aeabi_memclr
[Called By]- >> dfu_mesh_on_flash_idle
- >> bl_cmd_handler
- >> bl_evt_handler
dfu_mesh_req (Thumb, 44 bytes, Stack size 8 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 108
- Call Chain = dfu_mesh_req ⇒ start_req ⇒ beacon_set ⇒ __aeabi_memclr4
[Calls]
[Called By]- >> bl_cmd_handler
- >> bootloader_enable
dfu_mesh_relay (Thumb, 54 bytes, Stack size 16 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 100
- Call Chain = dfu_mesh_relay ⇒ beacon_set ⇒ __aeabi_memclr4
[Calls]- >> fwid_union_cpy
- >> state_beacon_type
- >> beacon_set
[Called By]
dfu_mesh_rx (Thumb, 110 bytes, Stack size 16 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 432 + Unknown Stack Size
- Call Chain = dfu_mesh_rx ⇒ handle_data_packet ⇒ target_rx_start ⇒ start_target ⇒ bootloader_info_entry_put ⇒ entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> packet_in_cache
- >> handle_fwid_packet
- >> send_progress_event
- >> handle_data_req_packet
- >> handle_state_packet
- >> handle_data_packet
- >> relay_packet
[Called By]
dfu_mesh_finalize (Thumb, 304 bytes, Stack size 192 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 320 + Unknown Stack Size
- Call Chain = dfu_mesh_finalize ⇒ bootloader_info_entry_put ⇒ entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> fwid_union_cpy
- >> bootloader_info_reset
- >> bootloader_info_entry_put
- >> app_error_handler_bare
- >> __aeabi_memset
- >> __aeabi_memcpy4
- >> __aeabi_memcpy
[Called By]
dfu_mesh_timeout (Thumb, 76 bytes, Stack size 8 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 956 + Unknown Stack Size
- Call Chain = dfu_mesh_timeout ⇒ signature_check ⇒ uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> dfu_mesh_finalize
- >> start_req
- >> signature_check
- >> send_end_evt
[Called By]
dfu_mesh_missing_type_get (Thumb, 76 bytes, Stack size 16 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = dfu_mesh_missing_type_get ⇒ bootloader_info_entry_get ⇒ info_entry_get
[Calls]- >> bootloader_info_entry_get
[Called By]
dfu_mesh_app_is_valid (Thumb, 62 bytes, Stack size 8 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = dfu_mesh_app_is_valid ⇒ fw_is_verified ⇒ bootloader_info_entry_get ⇒ info_entry_get
[Calls]- >> fw_is_verified
- >> bootloader_info_entry_get
[Called By]- >> bootloader_enable
- >> bootloader_abort
- >> bl_evt_handler
dfu_mesh_restart (Thumb, 4 bytes, Stack size 0 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 92
- Call Chain = dfu_mesh_restart ⇒ start_find_fwid ⇒ beacon_set ⇒ __aeabi_memclr4
[Calls]
[Called By]
dfu_mesh_on_flash_idle (Thumb, 74 bytes, Stack size 40 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 144
- Call Chain = dfu_mesh_on_flash_idle ⇒ dfu_mesh_start ⇒ send_bank_notifications ⇒ bootloader_info_entry_get ⇒ info_entry_get
[Calls]- >> fwid_union_cpy
- >> dfu_transfer_end
- >> get_info_pointers
- >> bootloader_info_stable
- >> bootloader_evt_send
- >> dfu_mesh_start
[Called By]
dfu_transfer_init (Thumb, 20 bytes, Stack size 8 bytes, dfu_transfer_mesh.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = dfu_transfer_init ⇒ __aeabi_memclr4
[Calls]
[Called By]- >> dfu_transfer_start
- >> dfu_transfer_end
dfu_transfer_start (Thumb, 108 bytes, Stack size 32 bytes, dfu_transfer_mesh.o(.text))
[Stack]
- Max Depth = 88
- Call Chain = dfu_transfer_start ⇒ flash_erase ⇒ __aeabi_memcpy4
[Calls]- >> dfu_transfer_init
- >> flash_erase
[Called By]
dfu_transfer_data (Thumb, 280 bytes, Stack size 48 bytes, dfu_transfer_mesh.o(.text))
[Stack]
- Max Depth = 112
- Call Chain = dfu_transfer_data ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> transfer_abort
- >> segment_is_missing
- >> flash_write
- >> __aeabi_memcpy
- >> __aeabi_llsl
[Called By]
dfu_transfer_has_entry (Thumb, 100 bytes, Stack size 24 bytes, dfu_transfer_mesh.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = dfu_transfer_has_entry ⇒ segment_is_missing
[Calls]- >> segment_is_missing
- >> __aeabi_memcpy
[Called By]- >> handle_data_req_packet
dfu_transfer_get_oldest_missing_entry (Thumb, 102 bytes, Stack size 48 bytes, dfu_transfer_mesh.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = dfu_transfer_get_oldest_missing_entry
[Calls]
[Called By]
dfu_transfer_sha256 (Thumb, 24 bytes, Stack size 0 bytes, dfu_transfer_mesh.o(.text))
[Stack]
- Max Depth = 348
- Call Chain = dfu_transfer_sha256 ⇒ sha256_update ⇒ sha256_transform
[Calls]
[Called By]
dfu_transfer_end (Thumb, 2 bytes, Stack size 0 bytes, dfu_transfer_mesh.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = dfu_transfer_end ⇒ dfu_transfer_init ⇒ __aeabi_memclr4
[Calls]
[Called By]- >> dfu_mesh_on_flash_idle
dfu_transfer_flash_write_complete (Thumb, 18 bytes, Stack size 0 bytes, dfu_transfer_mesh.o(.text))
[Called By]
fwid_union_cpy (Thumb, 32 bytes, Stack size 0 bytes, dfu_util.o(.text))
[Called By]
- >> dfu_mesh_finalize
- >> send_bank_notifications
- >> notify_state_packet
- >> start_req
- >> dfu_mesh_relay
- >> dfu_mesh_on_flash_idle
fwid_union_cmp (Thumb, 40 bytes, Stack size 8 bytes, dfu_util.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = fwid_union_cmp ⇒ memcmp
[Calls]
[Called By]
fwid_union_id_cmp (Thumb, 48 bytes, Stack size 0 bytes, dfu_util.o(.text))
[Called By]
- >> ready_packet_matches_our_req
- >> handle_state_packet
fwid_union_version_cmp (Thumb, 40 bytes, Stack size 0 bytes, dfu_util.o(.text))
[Called By]
- >> ready_packet_matches_our_req
tid_cache_has_entry (Thumb, 26 bytes, Stack size 0 bytes, dfu_util.o(.text))
[Called By]
- >> ready_packet_matches_our_req
ready_packet_matches_our_req (Thumb, 66 bytes, Stack size 16 bytes, dfu_util.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = ready_packet_matches_our_req
[Calls]- >> tid_cache_has_entry
- >> fwid_union_version_cmp
- >> fwid_union_id_cmp
[Called By]
addr_from_seg (Thumb, 20 bytes, Stack size 0 bytes, dfu_util.o(.text))
[Called By]
is_upgrade (Thumb, 120 bytes, Stack size 16 bytes, dfu_util.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = is_upgrade ⇒ bootloader_info_entry_get ⇒ info_entry_get
[Calls]- >> bootloader_info_entry_get
[Called By]
app_is_newer (Thumb, 46 bytes, Stack size 8 bytes, dfu_util.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = app_is_newer ⇒ bootloader_info_entry_get ⇒ info_entry_get
[Calls]- >> bootloader_info_entry_get
[Called By]
bootloader_is_newer (Thumb, 36 bytes, Stack size 8 bytes, dfu_util.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = bootloader_is_newer ⇒ bootloader_info_entry_get ⇒ info_entry_get
[Calls]- >> bootloader_info_entry_get
[Called By]
fw_is_verified (Thumb, 32 bytes, Stack size 8 bytes, dfu_util.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = fw_is_verified ⇒ bootloader_info_entry_get ⇒ info_entry_get
[Calls]- >> bootloader_info_entry_get
[Called By]
tid_cache_entry_put (Thumb, 22 bytes, Stack size 8 bytes, dfu_util.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = tid_cache_entry_put
[Called By]- >> handle_data_packet
- >> target_rx_start
packet_in_cache (Thumb, 44 bytes, Stack size 12 bytes, dfu_util.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = packet_in_cache
[Called By]- >> handle_data_req_packet
- >> handle_data_packet
- >> dfu_mesh_rx
packet_cache_put (Thumb, 34 bytes, Stack size 12 bytes, dfu_util.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = packet_cache_put
[Called By]- >> handle_data_packet
- >> relay_packet
packet_cache_flush (Thumb, 20 bytes, Stack size 8 bytes, dfu_util.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = packet_cache_flush
[Calls]
[Called By]- >> target_rx_start
- >> dfu_mesh_start
section_overlap (Thumb, 28 bytes, Stack size 0 bytes, dfu_util.o(.text))
[Called By]
- >> target_rx_start
- >> start_target
interrupts_disable (Thumb, 52 bytes, Stack size 12 bytes, dfu_util.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = interrupts_disable
[Called By]- >> flash_bank_entry_fw
- >> bootloader_abort
fifo_init (Thumb, 28 bytes, Stack size 0 bytes, fifo.o(.text))
[Called By]
- >> transport_init
- >> bootloader_init
- >> serial_handler_init
- >> radio_init
fifo_push (Thumb, 80 bytes, Stack size 16 bytes, fifo.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = fifo_push
[Calls]
[Called By]- >> serial_handler_event_send
- >> bl_evt_handler
- >> char_rx
- >> radio_rx_cb
- >> radio_order
fifo_pop (Thumb, 76 bytes, Stack size 16 bytes, fifo.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = fifo_pop
[Calls]
[Called By]- >> SWI3_EGU3_IRQHandler
- >> serial_handler_command_get
- >> SWI1_EGU1_IRQHandler
- >> SWI0_EGU0_IRQHandler
- >> radio_event_handler
fifo_get_len (Thumb, 8 bytes, Stack size 0 bytes, fifo.o(.text))
[Called By]
- >> serial_handler_credit_available
- >> radio_event_handler
fifo_peek_at (Thumb, 72 bytes, Stack size 16 bytes, fifo.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = fifo_peek_at
[Calls]
[Called By]
fifo_peek (Thumb, 4 bytes, Stack size 0 bytes, fifo.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = fifo_peek ⇒ fifo_peek_at
[Calls]
[Called By]
fifo_is_empty (Thumb, 16 bytes, Stack size 0 bytes, fifo.o(.text))
[Called By]
- >> bootloader_abort
- >> SWI3_EGU3_IRQHandler
- >> UARTE0_UART0_IRQHandler
- >> radio_init
app_error_handler_bare (Thumb, 6 bytes, Stack size 0 bytes, main.o(.text))
[Called By]
- >> dfu_mesh_finalize
- >> start_ready
- >> target_rx_start
- >> start_target
- >> flash_bank_entry
- >> flash_bank_entry_fw
- >> bootloader_info_reset
- >> entry_write
- >> entry_invalidate
- >> entry_header_invalidate
- >> copy_page_write_next_data
- >> free_write_buffer
- >> bootloader_info_init
- >> bootloader_info_entry_put
- >> transport_init
- >> mesh_packet_ref_count_dec
- >> bl_cmd_handler
- >> bootloader_timeout
- >> bootloader_enable
- >> bootloader_init
- >> bootloader_abort
- >> SWI3_EGU3_IRQHandler
- >> bl_evt_handler
- >> SWI0_EGU0_IRQHandler
- >> radio_event_handler
- >> mesh_packet_ref_count_inc
HardFault_Handler (Thumb, 6 bytes, Stack size 0 bytes, main.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
main (Thumb, 120 bytes, Stack size 0 bytes, main.o(.text))
[Stack]
- Max Depth = 1068 + Unknown Stack Size
- Call Chain = main ⇒ bootloader_enable ⇒ bl_cmd_handler ⇒ dfu_mesh_timeout ⇒ signature_check ⇒ uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> dfu_bank_transfer_in_progress
- >> bootloader_enable
- >> bootloader_init
- >> bootloader_abort
[Called By]
mesh_packet_init (Thumb, 16 bytes, Stack size 0 bytes, mesh_packet.o(.text))
[Called By]
mesh_packet_acquire (Thumb, 60 bytes, Stack size 8 bytes, mesh_packet.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = mesh_packet_acquire
[Called By]- >> bl_evt_handler
- >> order_scan
mesh_packet_ref_count_inc (Thumb, 60 bytes, Stack size 16 bytes, mesh_packet.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = mesh_packet_ref_count_inc
[Calls]- >> app_error_handler_bare
[Called By]- >> transport_rtc_irq_handler
- >> transport_tx
mesh_packet_ref_count_dec (Thumb, 66 bytes, Stack size 8 bytes, mesh_packet.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = mesh_packet_ref_count_dec
[Calls]- >> app_error_handler_bare
[Called By]- >> transport_rtc_irq_handler
- >> transport_tx_abort
- >> transport_tx
- >> bl_evt_handler
- >> SWI0_EGU0_IRQHandler
- >> radio_rx_cb
- >> radio_tx_cb
- >> order_scan
mesh_packet_ref_count_get (Thumb, 24 bytes, Stack size 0 bytes, mesh_packet.o(.text))
[Called By]
mesh_packet_set_local_addr (Thumb, 34 bytes, Stack size 0 bytes, mesh_packet.o(.text))
[Called By]
mesh_packet_adv_data_get (Thumb, 76 bytes, Stack size 20 bytes, mesh_packet.o(.text))
[Stack]
- Max Depth = 20
- Call Chain = mesh_packet_adv_data_get
[Called By]
nrf_flash_erase (Thumb, 88 bytes, Stack size 20 bytes, nrf_flash.o(.text))
[Stack]
- Max Depth = 20
- Call Chain = nrf_flash_erase
[Called By]
nrf_flash_store (Thumb, 108 bytes, Stack size 28 bytes, nrf_flash.o(.text))
[Stack]
- Max Depth = 28
- Call Chain = nrf_flash_store
[Called By]
radio_disable (Thumb, 30 bytes, Stack size 0 bytes, radio_control.o(.text))
[Called By]
- >> bootloader_abort
- >> radio_event_handler
radio_init (Thumb, 244 bytes, Stack size 32 bytes, radio_control.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = radio_init
[Calls]- >> fifo_is_empty
- >> fifo_init
- >> timeslot_is_in_ts
- >> NVIC_SetPendingIRQ
[Called By]
radio_order (Thumb, 68 bytes, Stack size 8 bytes, radio_control.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = radio_order ⇒ fifo_push
[Calls]- >> fifo_push
- >> timeslot_is_in_ts
- >> NVIC_SetPendingIRQ
[Called By]- >> transport_rtc_irq_handler
- >> order_scan
radio_event_handler (Thumb, 230 bytes, Stack size 40 bytes, radio_control.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = radio_event_handler ⇒ setup_event
[Calls]- >> fifo_peek
- >> fifo_get_len
- >> radio_disable
- >> fifo_pop
- >> app_error_handler_bare
- >> setup_event
[Called By]
rand_prng_get (Thumb, 36 bytes, Stack size 8 bytes, rand.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = rand_prng_get
[Called By]- >> set_next_tx
- >> rand_prng_seed
rand_hw_rng_get (Thumb, 44 bytes, Stack size 16 bytes, rand.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = rand_hw_rng_get
[Called By]
rand_prng_seed (Thumb, 50 bytes, Stack size 16 bytes, rand.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = rand_prng_seed ⇒ rand_hw_rng_get
[Calls]- >> rand_hw_rng_get
- >> rand_prng_get
[Called By]
transport_start (Thumb, 16 bytes, Stack size 0 bytes, transport.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = transport_start ⇒ order_scan ⇒ radio_order ⇒ fifo_push
[Calls]
[Called By]- >> bootloader_enable
- >> SWI0_EGU0_IRQHandler
SWI0_EGU0_IRQHandler (Thumb, 64 bytes, Stack size 16 bytes, transport.o(.text))
[Stack]
- Max Depth = 56
- Call Chain = SWI0_EGU0_IRQHandler ⇒ transport_start ⇒ order_scan ⇒ radio_order ⇒ fifo_push
[Calls]- >> transport_start
- >> mesh_packet_ref_count_dec
- >> fifo_pop
- >> app_error_handler_bare
- >> mesh_packet_ref_count_get
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
RADIO_IRQHandler (Thumb, 4 bytes, Stack size 0 bytes, transport.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = RADIO_IRQHandler ⇒ radio_event_handler ⇒ setup_event
[Calls]
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
timeslot_is_in_ts (Thumb, 4 bytes, Stack size 0 bytes, transport.o(.text))
[Called By]
- >> radio_order
- >> radio_init
transport_init (Thumb, 96 bytes, Stack size 8 bytes, transport.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = transport_init ⇒ rand_prng_seed ⇒ rand_hw_rng_get
[Calls]- >> fifo_init
- >> app_error_handler_bare
- >> __aeabi_memclr4
- >> NVIC_SetPriority
- >> NVIC_EnableIRQ
- >> rand_prng_seed
- >> radio_init
- >> mesh_packet_init
[Called By]
transport_tx (Thumb, 96 bytes, Stack size 24 bytes, transport.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = transport_tx ⇒ set_next_tx ⇒ rand_prng_get
[Calls]- >> mesh_packet_ref_count_dec
- >> order_next_rtc
- >> set_next_tx
- >> mesh_packet_ref_count_inc
[Called By]
transport_tx_abort (Thumb, 50 bytes, Stack size 8 bytes, transport.o(.text))
[Stack]
- Max Depth = 28
- Call Chain = transport_tx_abort ⇒ order_next_rtc
[Calls]- >> mesh_packet_ref_count_dec
- >> NVIC_DisableIRQ
- >> NVIC_EnableIRQ
- >> order_next_rtc
[Called By]
transport_rtc_irq_handler (Thumb, 178 bytes, Stack size 32 bytes, transport.o(.text))
[Stack]
- Max Depth = 56
- Call Chain = transport_rtc_irq_handler ⇒ set_next_tx ⇒ rand_prng_get
[Calls]- >> mesh_packet_ref_count_dec
- >> order_next_rtc
- >> set_next_tx
- >> radio_order
- >> mesh_packet_ref_count_inc
[Called By]
transport_tx_evt_get (Thumb, 30 bytes, Stack size 0 bytes, transport.o(.text))
[Called By]
- >> serial_command_handler
- >> radio_tx_cb
transport_tx_evt_set (Thumb, 24 bytes, Stack size 0 bytes, transport.o(.text))
[Called By]
- >> serial_command_handler
uECC_verify (Thumb, 540 bytes, Stack size 488 bytes, uECC.o(.text))
[Stack]
- Max Depth = 788
- Call Chain = uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> vli_bytesToNative
- >> vli_modMult_fast
- >> vli_modSub
- >> vli_cmp
- >> vli_set
- >> vli_testBit
- >> vli_isZero
- >> vli_clear
- >> vli_modMult_n
- >> XYcZ_add
- >> apply_z
- >> EccPoint_double_jacobian
- >> vli_modInv
- >> vli_sub
- >> vli_numBits
[Called By]
sha256_transform (Thumb, 294 bytes, Stack size 324 bytes, sha256.o(.text))
[Stack]
- Max Depth = 324
- Call Chain = sha256_transform
[Called By]- >> sha256_update
- >> sha256_final
sha256_init (Thumb, 50 bytes, Stack size 0 bytes, sha256.o(.text))
[Called By]
sha256_update (Thumb, 84 bytes, Stack size 24 bytes, sha256.o(.text))
[Stack]
- Max Depth = 348
- Call Chain = sha256_update ⇒ sha256_transform
[Calls]
[Called By]- >> dfu_transfer_sha256
- >> signature_check
sha256_final (Thumb, 272 bytes, Stack size 16 bytes, sha256.o(.text))
[Stack]
- Max Depth = 340
- Call Chain = sha256_final ⇒ sha256_transform
[Calls]- >> __aeabi_memclr4
- >> sha256_transform
[Called By]
SWI1_EGU1_IRQHandler (Thumb, 48 bytes, Stack size 8 bytes, serial_handler_uart.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = SWI1_EGU1_IRQHandler ⇒ fifo_pop
[Calls]
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
serial_handler_event_send (Thumb, 62 bytes, Stack size 48 bytes, serial_handler_uart.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = serial_handler_event_send ⇒ fifo_push
[Calls]- >> fifo_is_full
- >> fifo_push
- >> __aeabi_memcpy
- >> schedule_transmit
[Called By]- >> mesh_aci_start
- >> bl_evt_handler
- >> mesh_aci_rbc_event_handler
- >> serial_command_handler
- >> char_rx
- >> radio_tx_cb
UARTE0_UART0_IRQHandler (Thumb, 104 bytes, Stack size 16 bytes, serial_handler_uart.o(.text))
[Stack]
- Max Depth = 128
- Call Chain = UARTE0_UART0_IRQHandler ⇒ char_rx ⇒ serial_handler_event_send ⇒ fifo_push
[Calls]- >> fifo_is_empty
- >> char_rx
- >> schedule_transmit
[Called By]- >> serial_wait_for_completion
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
serial_handler_init (Thumb, 174 bytes, Stack size 16 bytes, serial_handler_uart.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = serial_handler_init
[Calls]
[Called By]
serial_handler_credit_available (Thumb, 8 bytes, Stack size 0 bytes, serial_handler_uart.o(.text))
[Calls]
[Called By]
serial_wait_for_completion (Thumb, 40 bytes, Stack size 16 bytes, serial_handler_uart.o(.text))
[Stack]
- Max Depth = 144
- Call Chain = serial_wait_for_completion ⇒ UARTE0_UART0_IRQHandler ⇒ char_rx ⇒ serial_handler_event_send ⇒ fifo_push
[Calls]- >> UARTE0_UART0_IRQHandler
[Called By]- >> serial_command_handler
serial_handler_command_get (Thumb, 62 bytes, Stack size 48 bytes, serial_handler_uart.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = serial_handler_command_get ⇒ fifo_pop
[Calls]- >> fifo_pop
- >> __aeabi_memcpy
[Called By]- >> mesh_aci_command_check
mesh_aci_init (Thumb, 24 bytes, Stack size 0 bytes, mesh_aci.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = mesh_aci_init ⇒ serial_handler_init
[Calls]
[Called By]
mesh_aci_start (Thumb, 60 bytes, Stack size 40 bytes, mesh_aci.o(.text))
[Stack]
- Max Depth = 104
- Call Chain = mesh_aci_start ⇒ serial_handler_event_send ⇒ fifo_push
[Calls]- >> serial_handler_event_send
- >> serial_handler_credit_available
[Called By]
mesh_aci_command_check (Thumb, 24 bytes, Stack size 40 bytes, mesh_aci.o(.text))
[Stack]
- Max Depth = 248
- Call Chain = mesh_aci_command_check ⇒ serial_command_handler ⇒ serial_wait_for_completion ⇒ UARTE0_UART0_IRQHandler ⇒ char_rx ⇒ serial_handler_event_send ⇒ fifo_push
[Calls]- >> serial_command_handler
- >> serial_handler_command_get
[Called By]
mesh_aci_rbc_event_handler (Thumb, 72 bytes, Stack size 40 bytes, mesh_aci.o(.text), UNUSED)
[Calls]
- >> serial_handler_event_send
- >> __aeabi_memcpy
SystemCoreClockUpdate (Thumb, 8 bytes, Stack size 0 bytes, system_nrf52.o(.text), UNUSED)
SystemInit (Thumb, 726 bytes, Stack size 20 bytes, system_nrf52.o(.text))
[Stack]
- Max Depth = 20
- Call Chain = SystemInit
[Address Reference Count : 1]- arm_startup_nrf52.o(.text)
Reset_Handler (Thumb, 8 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
NMI_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
MemoryManagement_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Calls]
- >> MemoryManagement_Handler
[Called By]- >> MemoryManagement_Handler
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
BusFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
UsageFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
SVC_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
DebugMon_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
PendSV_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
SysTick_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
CCM_AAR_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
COMP_LPCOMP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
ECB_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
FPU_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
GPIOTE_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
I2S_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
MWU_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
NFCT_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
PDM_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
POWER_CLOCK_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
PWM0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
PWM1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
PWM2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
QDEC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
RNG_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
RTC1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
RTC2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
SAADC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
SPIM2_SPIS2_SPI2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
SWI4_EGU4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
SWI5_EGU5_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
TEMP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
TIMER0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
TIMER1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
TIMER2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
TIMER3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
TIMER4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
WDT_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
__user_initial_stackheap (Thumb, 10 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Called By]
- >> __user_setup_stackheap
__aeabi_uldivmod (Thumb, 0 bytes, Stack size 48 bytes, lludivv7m.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = __aeabi_uldivmod
[Called By]
_ll_udiv (Thumb, 238 bytes, Stack size 48 bytes, lludivv7m.o(.text), UNUSED)
__aeabi_llsl (Thumb, 0 bytes, Stack size 0 bytes, llshl.o(.text))
[Called By]
- >> segment_is_missing
- >> dfu_transfer_get_oldest_missing_entry
- >> dfu_transfer_data
_ll_shift_l (Thumb, 38 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)
memcmp (Thumb, 88 bytes, Stack size 8 bytes, memcmp.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = memcmp
[Called By]- >> fwid_union_cmp
- >> flash_bank_entry_fw
__aeabi_memcpy (Thumb, 0 bytes, Stack size 0 bytes, rt_memcpy_v6.o(.text))
[Called By]
- >> fifo_peek_at
- >> dfu_transfer_has_entry
- >> dfu_transfer_data
- >> dfu_mesh_finalize
- >> target_rx_data
- >> beacon_set
- >> serial_handler_event_send
- >> fifo_push
- >> fifo_pop
- >> bl_evt_handler
- >> mesh_aci_rbc_event_handler
- >> serial_command_handler
- >> serial_handler_command_get
__rt_memcpy (Thumb, 138 bytes, Stack size 0 bytes, rt_memcpy_v6.o(.text), UNUSED)
[Calls]
_memcpy_lastbytes (Thumb, 0 bytes, Stack size unknown bytes, rt_memcpy_v6.o(.text), UNUSED)
__aeabi_memcpy4 (Thumb, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = __aeabi_memcpy4
[Called By]- >> dfu_mesh_finalize
- >> flash_bank_entry
- >> entry_write
- >> flash_erase
- >> flash_write
- >> __rt_memcpy
__aeabi_memcpy8 (Thumb, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)
__rt_memcpy_w (Thumb, 100 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)
_memcpy_lastbytes_aligned (Thumb, 0 bytes, Stack size unknown bytes, rt_memcpy_w.o(.text), UNUSED)
__aeabi_memset (Thumb, 16 bytes, Stack size 0 bytes, aeabi_memset.o(.text))
[Calls]
[Called By]- >> dfu_mesh_finalize
- >> start_target
- >> flash_bank_entry
- >> entry_write
- >> SWI3_EGU3_IRQHandler
__aeabi_memclr (Thumb, 0 bytes, Stack size 0 bytes, rt_memclr.o(.text))
[Called By]
- >> packet_cache_flush
- >> target_rx_start
- >> dfu_mesh_init
- >> dfu_mesh_start
__rt_memclr (Thumb, 68 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
[Calls]
_memset (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr.o(.text))
[Called By]
__aeabi_memclr4 (Thumb, 0 bytes, Stack size 4 bytes, rt_memclr_w.o(.text))
[Stack]
- Max Depth = 4
- Call Chain = __aeabi_memclr4
[Called By]- >> dfu_transfer_init
- >> sha256_final
- >> start_find_fwid
- >> beacon_set
- >> dfu_mesh_init
- >> bootloader_info_init
- >> transport_init
- >> dfu_mesh_start
- >> bootloader_init
__aeabi_memclr8 (Thumb, 0 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED)
__rt_memclr_w (Thumb, 78 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED)
_memset_w (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED)
[Called By]
__use_two_region_memory (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__rt_heap_escrow$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__rt_heap_expand$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__user_setup_stackheap (Thumb, 74 bytes, Stack size 8 bytes, sys_stackheap_outer.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = __user_setup_stackheap
[Calls]- >> __user_perproc_libspace
- >> __user_initial_stackheap
[Called By]
exit (Thumb, 12 bytes, Stack size 0 bytes, exit.o(.text))
[Calls]
[Called By]
__user_libspace (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
__user_perproc_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text))
[Called By]
- >> __user_setup_stackheap
__user_perthread_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
_sys_exit (Thumb, 8 bytes, Stack size 0 bytes, sys_exit.o(.text))
[Called By]
__I$use$semihosting (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
__use_no_semihosting_swi (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
__semihosting_library_function (Thumb, 0 bytes, Stack size 0 bytes, indicate_semi.o(.text), UNUSED)
fifo_is_full (Thumb, 20 bytes, Stack size 0 bytes, fifo.o(i.fifo_is_full))
[Called By]
- >> serial_handler_event_send
- >> char_rx
_fp_init (Thumb, 10 bytes, Stack size 0 bytes, fpinit.o(x$fpl$fpinit))
[Called By]
__fplib_config_fpu_vfp (Thumb, 0 bytes, Stack size unknown bytes, fpinit.o(x$fpl$fpinit), UNUSED)
__fplib_config_pureend_doubles (Thumb, 0 bytes, Stack size unknown bytes, fpinit.o(x$fpl$fpinit), UNUSED)
Local Symbols
rx_cb (Thumb, 48 bytes, Stack size 32 bytes, bootloader.o(.text))
[Stack]
- Max Depth = 1036 + Unknown Stack Size
- Call Chain = rx_cb ⇒ bl_cmd_handler ⇒ dfu_mesh_timeout ⇒ signature_check ⇒ uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> mesh_packet_adv_data_get
- >> bl_cmd_handler
[Address Reference Count : 1]
bl_evt_handler (Thumb, 572 bytes, Stack size 48 bytes, bootloader.o(.text))
[Stack]
- Max Depth = 1052 + Unknown Stack Size
- Call Chain = bl_evt_handler ⇒ bl_cmd_handler ⇒ dfu_mesh_timeout ⇒ signature_check ⇒ uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> transport_tx_abort
- >> transport_tx
- >> serial_handler_event_send
- >> mesh_packet_set_local_addr
- >> mesh_packet_ref_count_dec
- >> mesh_packet_acquire
- >> is_upgrade
- >> fifo_push
- >> dfu_mesh_start
- >> dfu_mesh_app_is_valid
- >> dfu_bank_flash
- >> bootloader_info_entry_get
- >> bl_cmd_handler
- >> app_error_handler_bare
- >> bootloader_abort
- >> stop_timeout
- >> set_timeout
- >> NVIC_SetPendingIRQ
- >> __aeabi_memcpy
- >> __aeabi_uldivmod
[Address Reference Count : 1]
NVIC_SetPendingIRQ (Thumb, 22 bytes, Stack size 0 bytes, bootloader.o(.text))
[Called By]
set_timeout (Thumb, 38 bytes, Stack size 0 bytes, bootloader.o(.text))
[Called By]
- >> bootloader_enable
- >> bl_evt_handler
stop_timeout (Thumb, 18 bytes, Stack size 0 bytes, bootloader.o(.text))
[Called By]
info_entry_get (Thumb, 68 bytes, Stack size 16 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = info_entry_get
[Called By]- >> entry_invalidate
- >> bootloader_info_first_unused_get
- >> bootloader_info_entry_get
free_write_buffer (Thumb, 114 bytes, Stack size 24 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = free_write_buffer
[Calls]- >> app_error_handler_bare
[Called By]- >> bootloader_info_on_flash_op_end
place_head_after_entry (Thumb, 50 bytes, Stack size 0 bytes, bootloader_info.o(.text))
[Called By]
get_write_buffer (Thumb, 130 bytes, Stack size 24 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = get_write_buffer
[Calls]- >> place_head_after_entry
[Called By]
copy_page_write_meta (Thumb, 28 bytes, Stack size 8 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = copy_page_write_meta ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]
[Called By]- >> copy_page_on_flash_op_end
- >> bootloader_info_on_flash_idle
copy_page_write_next_data (Thumb, 106 bytes, Stack size 16 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 80
- Call Chain = copy_page_write_next_data ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> flash_write
- >> app_error_handler_bare
[Called By]- >> copy_page_on_flash_op_end
copy_page (Thumb, 42 bytes, Stack size 16 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = copy_page ⇒ flash_erase ⇒ __aeabi_memcpy4
[Calls]
[Called By]- >> bootloader_info_reset
- >> bootloader_info_on_flash_op_end
entry_header_invalidate (Thumb, 28 bytes, Stack size 8 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = entry_header_invalidate ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> flash_write
- >> app_error_handler_bare
[Called By]- >> entry_invalidate
- >> bootloader_info_entry_put
bootloader_info_header_get (Thumb, 26 bytes, Stack size 0 bytes, bootloader_info.o(.text))
[Called By]
- >> entry_invalidate
- >> bootloader_info_first_unused_get
- >> bootloader_info_entry_put
- >> bootloader_info_entry_overwrite
bootloader_info_first_unused_get (Thumb, 22 bytes, Stack size 8 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = bootloader_info_first_unused_get ⇒ info_entry_get
[Calls]- >> bootloader_info_header_get
- >> info_entry_get
[Called By]- >> bootloader_info_on_flash_op_end
- >> bootloader_info_init
copy_page_on_flash_op_end (Thumb, 84 bytes, Stack size 8 bytes, bootloader_info.o(.text))
[Stack]
- Max Depth = 88
- Call Chain = copy_page_on_flash_op_end ⇒ copy_page_write_next_data ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> copy_page_write_next_data
- >> copy_page_write_meta
[Called By]- >> bootloader_info_on_flash_op_end
flash_bank_entry_fw (Thumb, 326 bytes, Stack size 64 bytes, dfu_bank.o(.text))
[Stack]
- Max Depth = 176 + Unknown Stack Size
- Call Chain = flash_bank_entry_fw ⇒ bootloader_info_entry_overwrite ⇒ entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> bootloader_is_in_application
- >> bootloader_evt_send
- >> interrupts_disable
- >> bootloader_info_entry_overwrite
- >> bootloader_info_entry_get
- >> app_error_handler_bare
- >> memcmp
[Called By]
flash_bank_entry (Thumb, 330 bytes, Stack size 280 bytes, dfu_bank.o(.text))
[Stack]
- Max Depth = 456 + Unknown Stack Size
- Call Chain = flash_bank_entry ⇒ flash_bank_entry_fw ⇒ bootloader_info_entry_overwrite ⇒ entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> flash_bank_entry_fw
- >> bootloader_info_entry_put
- >> bootloader_info_entry_invalidate
- >> bootloader_info_entry_overwrite
- >> bootloader_info_entry_get
- >> app_error_handler_bare
- >> __aeabi_memset
- >> __aeabi_memcpy4
[Called By]- >> dfu_bank_on_flash_idle
- >> dfu_bank_scan
- >> dfu_bank_flash
get_info_pointers (Thumb, 98 bytes, Stack size 8 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = get_info_pointers ⇒ send_end_evt
[Calls]- >> send_end_evt
- >> bootloader_info_entry_get
[Called By]- >> dfu_mesh_on_flash_idle
- >> dfu_mesh_init
- >> dfu_mesh_start
segment_count_from_start_packet (Thumb, 48 bytes, Stack size 0 bytes, dfu_mesh.o(.text))
[Called By]
- >> handle_data_packet
- >> target_rx_start
packet_tx_dynamic (Thumb, 64 bytes, Stack size 56 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 56
- Call Chain = packet_tx_dynamic
[Calls]
[Called By]- >> handle_data_req_packet
- >> relay_packet
signature_check (Thumb, 148 bytes, Stack size 160 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 948
- Call Chain = signature_check ⇒ uECC_verify ⇒ vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> uECC_verify
- >> sha256_update
- >> sha256_init
- >> sha256_final
- >> dfu_transfer_sha256
[Called By]
beacon_set (Thumb, 242 bytes, Stack size 80 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 84
- Call Chain = beacon_set ⇒ __aeabi_memclr4
[Calls]- >> bootloader_evt_send
- >> __aeabi_memclr4
- >> __aeabi_memcpy
[Called By]- >> start_ready
- >> start_find_fwid
- >> handle_state_packet
- >> start_req
- >> dfu_mesh_relay
relay_packet (Thumb, 44 bytes, Stack size 16 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = relay_packet ⇒ packet_tx_dynamic
[Calls]- >> packet_cache_put
- >> packet_tx_dynamic
[Called By]- >> handle_data_req_packet
- >> handle_data_packet
- >> dfu_mesh_rx
start_req (Thumb, 66 bytes, Stack size 16 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 100
- Call Chain = start_req ⇒ beacon_set ⇒ __aeabi_memclr4
[Calls]- >> fwid_union_cpy
- >> state_beacon_type
- >> beacon_set
[Called By]- >> handle_data_packet
- >> target_rx_start
- >> start_target
- >> dfu_mesh_timeout
- >> dfu_mesh_req
start_target (Thumb, 436 bytes, Stack size 184 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 312 + Unknown Stack Size
- Call Chain = start_target ⇒ bootloader_info_entry_put ⇒ entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> section_overlap
- >> dfu_transfer_start
- >> start_req
- >> bootloader_info_entry_put
- >> bootloader_info_entry_invalidate
- >> bootloader_evt_send
- >> bootloader_info_entry_overwrite
- >> bootloader_info_entry_get
- >> app_error_handler_bare
- >> __aeabi_memset
[Called By]
notify_state_packet (Thumb, 56 bytes, Stack size 40 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = notify_state_packet
[Calls]- >> fwid_union_cpy
- >> bootloader_evt_send
[Called By]
target_rx_start (Thumb, 276 bytes, Stack size 32 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 344 + Unknown Stack Size
- Call Chain = target_rx_start ⇒ start_target ⇒ bootloader_info_entry_put ⇒ entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> tid_cache_entry_put
- >> section_overlap
- >> packet_cache_flush
- >> start_find_fwid
- >> start_target
- >> start_req
- >> segment_count_from_start_packet
- >> send_end_evt
- >> app_error_handler_bare
- >> __aeabi_memclr
[Called By]
target_rx_data (Thumb, 188 bytes, Stack size 72 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 208
- Call Chain = target_rx_data ⇒ request_missing_data ⇒ dfu_transfer_get_oldest_missing_entry
[Calls]- >> dfu_transfer_data
- >> addr_from_seg
- >> request_missing_data
- >> send_progress_event
- >> bootloader_evt_send
- >> __aeabi_memcpy
[Called By]
handle_data_packet (Thumb, 300 bytes, Stack size 72 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 416 + Unknown Stack Size
- Call Chain = handle_data_packet ⇒ target_rx_start ⇒ start_target ⇒ bootloader_info_entry_put ⇒ entry_write ⇒ flash_write ⇒ __aeabi_memcpy4
[Calls]- >> tid_cache_entry_put
- >> packet_in_cache
- >> packet_cache_put
- >> send_progress_event
- >> target_rx_data
- >> target_rx_start
- >> start_req
- >> relay_packet
- >> segment_count_from_start_packet
- >> tx_abort
- >> bootloader_evt_send
[Called By]
handle_state_packet (Thumb, 230 bytes, Stack size 24 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 124
- Call Chain = handle_state_packet ⇒ start_ready ⇒ beacon_set ⇒ __aeabi_memclr4
[Calls]- >> ready_packet_matches_our_req
- >> fwid_union_id_cmp
- >> fwid_union_cmp
- >> start_ready
- >> state_beacon_type
- >> notify_state_packet
- >> beacon_set
[Called By]
handle_data_req_packet (Thumb, 188 bytes, Stack size 48 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = handle_data_req_packet ⇒ relay_packet ⇒ packet_tx_dynamic
[Calls]- >> packet_in_cache
- >> dfu_transfer_has_entry
- >> relay_packet
- >> packet_tx_dynamic
[Called By]
state_beacon_type (Thumb, 28 bytes, Stack size 0 bytes, dfu_mesh.o(.text))
[Called By]
- >> start_ready
- >> handle_state_packet
- >> start_req
- >> dfu_mesh_relay
send_progress_event (Thumb, 26 bytes, Stack size 40 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = send_progress_event
[Calls]
[Called By]- >> handle_data_packet
- >> target_rx_data
- >> dfu_mesh_rx
send_bank_notifications (Thumb, 122 bytes, Stack size 80 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 96
- Call Chain = send_bank_notifications ⇒ bootloader_info_entry_get ⇒ info_entry_get
[Calls]- >> fwid_union_cpy
- >> bootloader_evt_send
- >> bootloader_info_entry_get
[Called By]
start_find_fwid (Thumb, 26 bytes, Stack size 8 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 92
- Call Chain = start_find_fwid ⇒ beacon_set ⇒ __aeabi_memclr4
[Calls]- >> beacon_set
- >> __aeabi_memclr4
[Called By]- >> target_rx_start
- >> dfu_mesh_restart
- >> dfu_mesh_start
start_ready (Thumb, 82 bytes, Stack size 16 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 100
- Call Chain = start_ready ⇒ beacon_set ⇒ __aeabi_memclr4
[Calls]- >> state_beacon_type
- >> beacon_set
- >> app_error_handler_bare
[Called By]
request_missing_data (Thumb, 138 bytes, Stack size 88 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 136
- Call Chain = request_missing_data ⇒ dfu_transfer_get_oldest_missing_entry
[Calls]- >> dfu_transfer_get_oldest_missing_entry
- >> bootloader_evt_send
[Called By]
handle_fwid_packet (Thumb, 162 bytes, Stack size 56 bytes, dfu_mesh.o(.text))
[Stack]
- Max Depth = 80
- Call Chain = handle_fwid_packet ⇒ bootloader_is_newer ⇒ bootloader_info_entry_get ⇒ info_entry_get
[Calls]- >> bootloader_is_newer
- >> app_is_newer
- >> bootloader_evt_send
[Called By]
segment_is_missing (Thumb, 52 bytes, Stack size 8 bytes, dfu_transfer_mesh.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = segment_is_missing
[Calls]
[Called By]- >> dfu_transfer_has_entry
- >> dfu_transfer_data
transfer_abort (Thumb, 12 bytes, Stack size 0 bytes, dfu_transfer_mesh.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = transfer_abort ⇒ send_end_evt
[Calls]
[Called By]
setup_event (Thumb, 162 bytes, Stack size 32 bytes, radio_control.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = setup_event
[Called By]
NVIC_SetPendingIRQ (Thumb, 22 bytes, Stack size 0 bytes, radio_control.o(.text))
[Called By]
- >> radio_order
- >> radio_init
set_next_tx (Thumb, 124 bytes, Stack size 16 bytes, transport.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = set_next_tx ⇒ rand_prng_get
[Calls]
[Called By]- >> transport_rtc_irq_handler
- >> transport_tx
order_scan (Thumb, 52 bytes, Stack size 16 bytes, transport.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = order_scan ⇒ radio_order ⇒ fifo_push
[Calls]- >> mesh_packet_ref_count_dec
- >> mesh_packet_acquire
- >> radio_order
[Called By]- >> transport_start
- >> radio_idle_cb
radio_tx_cb (Thumb, 66 bytes, Stack size 40 bytes, transport.o(.text))
[Stack]
- Max Depth = 104
- Call Chain = radio_tx_cb ⇒ serial_handler_event_send ⇒ fifo_push
[Calls]- >> serial_handler_event_send
- >> mesh_packet_ref_count_dec
- >> mesh_packet_adv_data_get
- >> transport_tx_evt_get
[Address Reference Count : 1]
radio_rx_cb (Thumb, 38 bytes, Stack size 24 bytes, transport.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = radio_rx_cb ⇒ fifo_push
[Calls]- >> mesh_packet_ref_count_dec
- >> fifo_push
[Address Reference Count : 1]
radio_idle_cb (Thumb, 12 bytes, Stack size 0 bytes, transport.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = radio_idle_cb ⇒ order_scan ⇒ radio_order ⇒ fifo_push
[Calls]
[Address Reference Count : 1]
order_next_rtc (Thumb, 92 bytes, Stack size 20 bytes, transport.o(.text))
[Stack]
- Max Depth = 20
- Call Chain = order_next_rtc
[Called By]- >> transport_rtc_irq_handler
- >> transport_tx_abort
- >> transport_tx
NVIC_EnableIRQ (Thumb, 22 bytes, Stack size 0 bytes, transport.o(.text))
[Called By]
- >> transport_tx_abort
- >> transport_init
NVIC_DisableIRQ (Thumb, 22 bytes, Stack size 0 bytes, transport.o(.text))
[Called By]
NVIC_SetPriority (Thumb, 32 bytes, Stack size 0 bytes, transport.o(.text))
[Called By]
vli_numBits (Thumb, 50 bytes, Stack size 0 bytes, uECC.o(.text))
[Called By]
vli_add (Thumb, 50 bytes, Stack size 16 bytes, uECC.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = vli_add
[Called By]- >> vli_modSub
- >> vli_modAdd
- >> EccPoint_double_jacobian
- >> vli_modInv
- >> vli_mmod_fast
vli_sub (Thumb, 50 bytes, Stack size 16 bytes, uECC.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = vli_sub
[Called By]- >> uECC_verify
- >> vli_modSub
- >> vli_modAdd
- >> vli_modInv
- >> vli_mmod_fast
muladd (Thumb, 42 bytes, Stack size 20 bytes, uECC.o(.text))
[Stack]
- Max Depth = 20
- Call Chain = muladd
[Called By]
vli_mult (Thumb, 152 bytes, Stack size 48 bytes, uECC.o(.text))
[Stack]
- Max Depth = 68
- Call Chain = vli_mult ⇒ muladd
[Calls]
[Called By]- >> vli_modMult_fast
- >> vli_modMult_n
vli_mmod_fast (Thumb, 398 bytes, Stack size 56 bytes, uECC.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = vli_mmod_fast ⇒ vli_sub
[Calls]- >> vli_cmp
- >> vli_set
- >> vli_sub
- >> vli_add
[Called By]
vli_modInv (Thumb, 286 bytes, Stack size 144 bytes, uECC.o(.text))
[Stack]
- Max Depth = 160
- Call Chain = vli_modInv ⇒ vli_sub
[Calls]- >> vli_rshift1
- >> vli_cmp
- >> vli_set
- >> vli_isZero
- >> vli_clear
- >> vli_sub
- >> vli_add
[Called By]
EccPoint_double_jacobian (Thumb, 284 bytes, Stack size 88 bytes, uECC.o(.text))
[Stack]
- Max Depth = 232
- Call Chain = EccPoint_double_jacobian ⇒ vli_modMult_fast ⇒ vli_mmod_fast ⇒ vli_sub
[Calls]- >> vli_modMult_fast
- >> vli_modSub
- >> vli_modAdd
- >> vli_rshift1
- >> vli_set
- >> vli_testBit
- >> vli_isZero
- >> vli_add
[Called By]
apply_z (Thumb, 52 bytes, Stack size 48 bytes, uECC.o(.text))
[Stack]
- Max Depth = 192
- Call Chain = apply_z ⇒ vli_modMult_fast ⇒ vli_mmod_fast ⇒ vli_sub
[Calls]
[Called By]
XYcZ_add (Thumb, 166 bytes, Stack size 56 bytes, uECC.o(.text))
[Stack]
- Max Depth = 200
- Call Chain = XYcZ_add ⇒ vli_modMult_fast ⇒ vli_mmod_fast ⇒ vli_sub
[Calls]- >> vli_modMult_fast
- >> vli_modSub
- >> vli_set
[Called By]
vli_modMult_n (Thumb, 166 bytes, Stack size 232 bytes, uECC.o(.text))
[Stack]
- Max Depth = 300
- Call Chain = vli_modMult_n ⇒ vli_mult ⇒ muladd
[Calls]- >> vli_rshift1
- >> vli_set
- >> vli_clear
- >> vli_mult
[Called By]
vli_clear (Thumb, 16 bytes, Stack size 0 bytes, uECC.o(.text))
[Called By]
- >> uECC_verify
- >> vli_modMult_n
- >> vli_modInv
vli_isZero (Thumb, 22 bytes, Stack size 0 bytes, uECC.o(.text))
[Called By]
- >> uECC_verify
- >> EccPoint_double_jacobian
- >> vli_modInv
vli_testBit (Thumb, 18 bytes, Stack size 0 bytes, uECC.o(.text))
[Called By]
- >> uECC_verify
- >> EccPoint_double_jacobian
vli_set (Thumb, 18 bytes, Stack size 0 bytes, uECC.o(.text))
[Called By]
- >> uECC_verify
- >> vli_modMult_n
- >> XYcZ_add
- >> EccPoint_double_jacobian
- >> vli_modInv
- >> vli_mmod_fast
vli_cmp (Thumb, 38 bytes, Stack size 8 bytes, uECC.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = vli_cmp
[Called By]- >> uECC_verify
- >> vli_modAdd
- >> vli_modInv
- >> vli_mmod_fast
vli_rshift1 (Thumb, 28 bytes, Stack size 0 bytes, uECC.o(.text))
[Called By]
- >> vli_modMult_n
- >> EccPoint_double_jacobian
- >> vli_modInv
vli_modAdd (Thumb, 40 bytes, Stack size 16 bytes, uECC.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = vli_modAdd ⇒ vli_sub
[Calls]- >> vli_cmp
- >> vli_sub
- >> vli_add
[Called By]- >> EccPoint_double_jacobian
vli_modSub (Thumb, 30 bytes, Stack size 16 bytes, uECC.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = vli_modSub ⇒ vli_sub
[Calls]
[Called By]- >> uECC_verify
- >> XYcZ_add
- >> EccPoint_double_jacobian
vli_modMult_fast (Thumb, 24 bytes, Stack size 72 bytes, uECC.o(.text))
[Stack]
- Max Depth = 144
- Call Chain = vli_modMult_fast ⇒ vli_mmod_fast ⇒ vli_sub
[Calls]- >> vli_mmod_fast
- >> vli_mult
[Called By]- >> uECC_verify
- >> XYcZ_add
- >> apply_z
- >> EccPoint_double_jacobian
vli_bytesToNative (Thumb, 36 bytes, Stack size 8 bytes, uECC.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = vli_bytesToNative
[Called By]
schedule_transmit (Thumb, 26 bytes, Stack size 0 bytes, serial_handler_uart.o(.text))
[Calls]
[Called By]- >> serial_handler_event_send
- >> UARTE0_UART0_IRQHandler
char_rx (Thumb, 124 bytes, Stack size 48 bytes, serial_handler_uart.o(.text))
[Stack]
- Max Depth = 112
- Call Chain = char_rx ⇒ serial_handler_event_send ⇒ fifo_push
[Calls]- >> fifo_is_full
- >> serial_handler_event_send
- >> fifo_push
- >> NVIC_SetPendingIRQ
[Called By]- >> UARTE0_UART0_IRQHandler
NVIC_SetPendingIRQ (Thumb, 22 bytes, Stack size 0 bytes, serial_handler_uart.o(.text))
[Called By]
- >> char_rx
- >> schedule_transmit
error_code_translate (Thumb, 58 bytes, Stack size 0 bytes, mesh_aci.o(.text))
[Called By]
- >> serial_command_handler
serial_command_handler (Thumb, 326 bytes, Stack size 64 bytes, mesh_aci.o(.text))
[Stack]
- Max Depth = 208
- Call Chain = serial_command_handler ⇒ serial_wait_for_completion ⇒ UARTE0_UART0_IRQHandler ⇒ char_rx ⇒ serial_handler_event_send ⇒ fifo_push
[Calls]- >> serial_handler_event_send
- >> bootloader_cmd_send
- >> __aeabi_memcpy
- >> error_code_translate
- >> serial_wait_for_completion
- >> transport_tx_evt_set
- >> transport_tx_evt_get
[Called By]- >> mesh_aci_command_check
Undefined Global Symbols
_handle_redirection (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED, UNUSED)
[Called By]