__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_close ⇒ __asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_close
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 arm_startup_nrf52.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 arm_startup_nrf52.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 arm_startup_nrf52.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 nrf_bootloader_dfu_timers.o(i.RTC2_IRQHandler) 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 nrf_svc_handler.o(.emb_text) referenced from arm_startup_nrf52.o(RESET)
- SWI0_EGU0_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SWI1_EGU1_IRQHandler from arm_startup_nrf52.o(.text) referenced from arm_startup_nrf52.o(RESET)
- SWI2_EGU2_IRQHandler from nrf_sdh.o(i.SWI2_EGU2_IRQHandler) referenced from arm_startup_nrf52.o(RESET)
- SWI3_EGU3_IRQHandler from arm_startup_nrf52.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(i.SystemInit) 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 arm_startup_nrf52.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 nrf_bootloader_wdt.o(i.WDT_IRQHandler) referenced from arm_startup_nrf52.o(RESET)
- __main from entry.o(.ARM.Collect$$$$00000000) referenced from arm_startup_nrf52.o(.text)
- app_error_fault_handler from main.o(i.app_error_fault_handler) referenced from nrf_sdh.o(i.nrf_sdh_enable_request)
- ble_dfu_req_handler_callback from nrf_dfu_ble.o(i.ble_dfu_req_handler_callback) referenced 2 times from nrf_dfu_ble.o(.constdata)
- ble_dfu_transport_close from nrf_dfu_ble.o(i.ble_dfu_transport_close) referenced from nrf_dfu_ble.o(dfu_trans)
- ble_dfu_transport_init from nrf_dfu_ble.o(i.ble_dfu_transport_init) referenced from nrf_dfu_ble.o(dfu_trans)
- ble_evt_handler from nrf_dfu_ble.o(i.ble_evt_handler) referenced from nrf_dfu_ble.o(sdh_ble_observers2)
- buf_read from pb_decode.o(i.buf_read) referenced from pb_decode.o(i.pb_istream_from_buffer)
- buf_read from pb_decode.o(i.buf_read) referenced from pb_decode.o(i.pb_read)
- dfu_fstorage_evt_handler from nrf_dfu_flash.o(i.dfu_fstorage_evt_handler) referenced from nrf_dfu_flash.o(fs_data)
- dfu_observer from main.o(i.dfu_observer) referenced from main.o(i.main)
- dfu_observer from nrf_bootloader.o(i.dfu_observer) referenced from nrf_bootloader.o(i.nrf_bootloader_init)
- dfu_observer from nrf_dfu.o(i.dfu_observer) referenced from nrf_dfu.o(i.nrf_dfu_init)
- do_reset from nrf_bootloader.o(i.do_reset) referenced from nrf_bootloader.o(i.bootloader_reset)
- double_jacobian_default from micro_ecc_lib_uECC.c.o(.text.double_jacobian_default) referenced from micro_ecc_lib_uECC.c.o(.rodata.curve_secp256r1)
- erase from nrf_fstorage_nvmc.o(i.erase) referenced 2 times from nrf_fstorage_nvmc.o(.constdata)
- flash_write_callback from nrf_bootloader_fw_activation.o(i.flash_write_callback) referenced from nrf_bootloader_fw_activation.o(i.nrf_bootloader_fw_activate)
- flash_write_callback from nrf_bootloader.o(i.flash_write_callback) referenced from nrf_bootloader.o(i.nrf_bootloader_init)
- inactivity_timeout from nrf_bootloader.o(i.inactivity_timeout) referenced from nrf_bootloader.o(i.dfu_observer)
- inactivity_timeout from nrf_bootloader.o(i.inactivity_timeout) referenced from nrf_bootloader.o(i.nrf_bootloader_init)
- init from nrf_fstorage_nvmc.o(i.init) referenced 2 times from nrf_fstorage_nvmc.o(.constdata)
- is_busy from nrf_fstorage_nvmc.o(i.is_busy) referenced 2 times from nrf_fstorage_nvmc.o(.constdata)
- main from main.o(i.main) referenced from entry9a.o(.ARM.Collect$$$$0000000B)
- nrf_dfu_req_handler_req from nrf_dfu_req_handler.o(i.nrf_dfu_req_handler_req) referenced from nrf_dfu_req_handler.o(i.nrf_dfu_req_handler_on_req)
- nrf_dfu_set_adv_name_handler from nrf_dfu_svci_handler.o(i.nrf_dfu_set_adv_name_handler) referenced from nrf_dfu_svci_handler.o(svc_data)
- nrf_dfu_set_adv_name_on_call from nrf_dfu_svci_handler.o(i.nrf_dfu_set_adv_name_on_call) referenced from nrf_dfu_svci_handler.o(i.nrf_dfu_set_adv_name_handler)
- nrf_dfu_set_adv_name_on_sys_evt from nrf_dfu_svci_handler.o(i.nrf_dfu_set_adv_name_on_sys_evt) referenced from nrf_dfu_svci_handler.o(i.nrf_dfu_set_adv_name_handler)
- nrf_fstorage_sdh_req_handler from nrf_fstorage_sd.o(i.nrf_fstorage_sdh_req_handler) referenced from nrf_fstorage_sd.o(sdh_req_observers0)
- nrf_fstorage_sdh_state_handler from nrf_fstorage_sd.o(i.nrf_fstorage_sdh_state_handler) referenced from nrf_fstorage_sd.o(sdh_state_observers0)
- nrf_fstorage_sys_evt_handler from nrf_fstorage_sd.o(i.nrf_fstorage_sys_evt_handler) referenced from nrf_fstorage_sd.o(sdh_soc_observers0)
- nrf_sdh_ble_evts_poll from nrf_sdh_ble.o(i.nrf_sdh_ble_evts_poll) referenced from nrf_sdh_ble.o(sdh_stack_observers0)
- nrf_sdh_soc_evts_poll from nrf_sdh_soc.o(i.nrf_sdh_soc_evts_poll) referenced from nrf_sdh_soc.o(sdh_stack_observers0)
- nrf_sw_backend_hash_sha256_finalize from nrf_sw_backend_hash.o(i.nrf_sw_backend_hash_sha256_finalize) referenced from nrf_sw_backend_hash.o(.constdata)
- nrf_sw_backend_hash_sha256_init from nrf_sw_backend_hash.o(i.nrf_sw_backend_hash_sha256_init) referenced from nrf_sw_backend_hash.o(.constdata)
- nrf_sw_backend_hash_sha256_update from nrf_sw_backend_hash.o(i.nrf_sw_backend_hash_sha256_update) referenced from nrf_sw_backend_hash.o(.constdata)
- on_data_obj_execute_request_sched from nrf_dfu_req_handler.o(i.on_data_obj_execute_request_sched) referenced from nrf_dfu_req_handler.o(i.on_data_obj_execute_request_sched)
- on_dfu_complete from nrf_dfu_req_handler.o(i.on_dfu_complete) referenced from nrf_dfu_req_handler.o(i.on_data_obj_execute_request_sched)
- on_flash_write from nrf_dfu_ble.o(i.on_flash_write) referenced from nrf_dfu_ble.o(.constdata)
- pb_dec_bytes from pb_decode.o(i.pb_dec_bytes) referenced from pb_decode.o(.constdata)
- pb_dec_fixed32 from pb_decode.o(i.pb_dec_fixed32) referenced from pb_decode.o(.constdata)
- pb_dec_fixed64 from pb_decode.o(i.pb_dec_fixed64) referenced from pb_decode.o(.constdata)
- pb_dec_string from pb_decode.o(i.pb_dec_string) referenced from pb_decode.o(.constdata)
- pb_dec_submessage from pb_decode.o(i.pb_dec_submessage) referenced from pb_decode.o(.constdata)
- pb_dec_svarint from pb_decode.o(i.pb_dec_svarint) referenced from pb_decode.o(.constdata)
- pb_dec_uvarint from pb_decode.o(i.pb_dec_uvarint) referenced from pb_decode.o(.constdata)
- pb_dec_varint from pb_decode.o(i.pb_dec_varint) referenced from pb_decode.o(.constdata)
- pb_decoding_callback from nrf_dfu_validation.o(i.pb_decoding_callback) referenced from nrf_dfu_validation.o(i.stored_init_cmd_decode)
- read from nrf_fstorage_nvmc.o(i.read) referenced 2 times from nrf_fstorage_nvmc.o(.constdata)
- rmap from nrf_fstorage_nvmc.o(i.rmap) referenced 2 times from nrf_fstorage_nvmc.o(.constdata)
- uECC_secp256r1 from micro_ecc_lib_uECC.c.o(.text.uECC_secp256r1) referenced from micro_ecc_backend_ecc.o(.constdata)
- uninit from nrf_fstorage_nvmc.o(i.uninit) referenced 2 times from nrf_fstorage_nvmc.o(.constdata)
- vli_mmod_fast_secp256r1 from micro_ecc_lib_uECC.c.o(.text.vli_mmod_fast_secp256r1) referenced from micro_ecc_lib_uECC.c.o(.rodata.curve_secp256r1)
- wdt_feed_timer_handler from nrf_bootloader_wdt.o(i.wdt_feed_timer_handler) referenced from nrf_bootloader_wdt.o(i.nrf_bootloader_wdt_init)
- wmap from nrf_fstorage_nvmc.o(i.wmap) referenced 2 times from nrf_fstorage_nvmc.o(.constdata)
- write from nrf_fstorage_nvmc.o(i.write) referenced 2 times from nrf_fstorage_nvmc.o(.constdata)
- x_side_default from micro_ecc_lib_uECC.c.o(.text.x_side_default) referenced from micro_ecc_lib_uECC.c.o(.rodata.curve_secp256r1)
Global Symbols
__main (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
[Address Reference Count : 1]
- arm_startup_nrf52.o(.text)
_main_stk (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
_main_scatterload (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
[Calls]
__main_after_scatterload (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
[Called By]
_main_clock (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
_main_cpp_init (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
_main_init (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
__rt_final_cpp (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))
__rt_final_exit (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F))
__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_req (Thumb, 56 bytes, Stack size 0 bytes, nrf_atfifo.o(.emb_text))
[Called By]
__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_close (Thumb, 18 bytes, Stack size 0 bytes, nrf_atfifo.o(.emb_text))
[Calls]
- >> __asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_close
[Called By]- >> nrf_atfifo_item_put
- >> __asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_close
__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_req (Thumb, 58 bytes, Stack size 0 bytes, nrf_atfifo.o(.emb_text))
[Called By]
__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_close (Thumb, 18 bytes, Stack size 0 bytes, nrf_atfifo.o(.emb_text))
[Calls]
- >> __asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_close
[Called By]- >> nrf_atfifo_item_free
- >> __asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_close
__asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_space_clear (Thumb, 50 bytes, Stack size 0 bytes, nrf_atfifo.o(.emb_text))
[Called By]
__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_mov (Thumb, 24 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text), UNUSED)
__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_orr (Thumb, 26 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text))
[Called By]
- >> nrf_atomic_u32_fetch_or
__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_and (Thumb, 26 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text))
[Called By]
__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_eor (Thumb, 26 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text), UNUSED)
__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_add (Thumb, 26 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text), UNUSED)
__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_sub (Thumb, 26 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text), UNUSED)
__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_cmp_exch (Thumb, 42 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text), UNUSED)
__asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_sub_hs (Thumb, 30 bytes, Stack size 0 bytes, nrf_atomic.o(.emb_text), UNUSED)
SVC_Handler (Thumb, 20 bytes, Stack size 0 bytes, nrf_svc_handler.o(.emb_text))
[Stack]
- Max Depth = 24
- Call Chain = SVC_Handler ⇒ nrf_svc_handler_c
[Calls]
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
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)
HardFault_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)
DebugMon_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)
PendSV_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)
SysTick_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)
CCM_AAR_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Calls]
[Called By]
[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)
RADIO_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)
RTC0_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)
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)
SWI0_EGU0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
SWI1_EGU1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
SWI3_EGU3_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)
UARTE0_UART0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf52.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf52.o(RESET)
__aeabi_llsl (Thumb, 30 bytes, Stack size 0 bytes, llshl.o(.text))
[Called By]
_ll_shift_l (Thumb, 0 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)
__aeabi_memcpy (Thumb, 36 bytes, Stack size 0 bytes, memcpya.o(.text))
[Called By]
- >> nrf_dfu_settings_reinit
- >> settings_write
- >> nrf_dfu_validation_init_cmd_append
- >> app_sched_event_put
- >> nrf_dfu_settings_adv_name_copy
- >> ble_evt_handler
- >> postvalidate
- >> postvalidate_sd_bl
- >> nrf_dfu_validation_signature_check
- >> boot_validation_extract
- >> read
- >> read
- >> pb_field_set_to_default
__aeabi_memcpy4 (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text))
[Called By]
- >> nrf_dfu_settings_reinit
- >> on_data_obj_execute_request_sched
- >> nrf_dfu_req_handler_req_process
- >> ble_dfu_init
- >> on_ctrl_pt_write
- >> ble_evt_handler
- >> advertising_start
- >> postvalidate_sd_bl
__aeabi_memcpy8 (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text), UNUSED)
__aeabi_memset (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text))
[Called By]
- >> nrf_dfu_settings_progress_reset
- >> memset
- >> __aeabi_memclr
__aeabi_memset4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
__aeabi_memset8 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
__aeabi_memclr (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text))
[Calls]
[Called By]- >> boot_validation_extract
- >> pb_field_set_to_default
- >> decode_static_field
__aeabi_memclr4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))
[Called By]
- >> nrf_dfu_settings_reinit
- >> sha256_final
- >> ble_dfu_req_handler_callback
- >> stored_init_cmd_decode
- >> postvalidate_sd_bl
- >> nrf_dfu_validation_signature_check
- >> nrf_dfu_validation_hash_ok
- >> boot_validation_extract
- >> nrf_dfu_settings_progress_reset
- >> write
- >> uninit
- >> event_send
- >> erase
- >> event_send
__aeabi_memclr8 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
memset (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = memset
[Calls]
[Called By]
memcmp (Thumb, 26 bytes, Stack size 12 bytes, memcmp.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = memcmp
[Called By]- >> bl_activate
- >> settings_write
- >> nrf_dfu_validation_hash_ok
__scatterload (Thumb, 28 bytes, Stack size 0 bytes, init.o(.text))
[Calls]
- >> __main_after_scatterload
[Called By]
__scatterload_rt2 (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
uECC_secp256r1 (Thumb, 8 bytes, Stack size 0 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_secp256r1))
[Address Reference Count : 1]
- micro_ecc_backend_ecc.o(.constdata)
uECC_verify (Thumb, 724 bytes, Stack size 1920 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_verify))
[Stack]
- Max Depth = 2960
- Call Chain = uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> uECC_vli_modInv
- >> uECC_vli_modMult_fast
- >> uECC_vli_modMult
- >> uECC_vli_modSub
- >> uECC_vli_equal
- >> uECC_vli_set
- >> uECC_vli_numBits
- >> uECC_vli_testBit
- >> uECC_vli_isZero
- >> uECC_vli_clear
- >> uECC_vli_sub
- >> apply_z
- >> XYcZ_add
- >> bits2int
- >> uECC_vli_cmp_unsafe
- >> bcopy
[Called By]- >> nrf_crypto_backend_micro_ecc_verify
uECC_vli_add (Thumb, 88 bytes, Stack size 64 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_add))
[Stack]
- Max Depth = 64
- Call Chain = uECC_vli_add
[Called By]- >> uECC_vli_modInv
- >> uECC_vli_modSub
- >> uECC_vli_modAdd
- >> double_jacobian_default
- >> vli_modInv_update
- >> vli_mmod_fast_secp256r1
uECC_vli_clear (Thumb, 24 bytes, Stack size 32 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_clear))
[Stack]
- Max Depth = 32
- Call Chain = uECC_vli_clear
[Called By]- >> uECC_verify
- >> uECC_vli_modInv
- >> uECC_vli_mmod
- >> bits2int
uECC_vli_equal (Thumb, 42 bytes, Stack size 48 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_equal))
[Stack]
- Max Depth = 48
- Call Chain = uECC_vli_equal
[Called By]
uECC_vli_isZero (Thumb, 30 bytes, Stack size 32 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_isZero))
[Stack]
- Max Depth = 32
- Call Chain = uECC_vli_isZero
[Called By]- >> uECC_verify
- >> uECC_vli_modInv
- >> double_jacobian_default
uECC_vli_mmod (Thumb, 316 bytes, Stack size 672 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_mmod))
[Stack]
- Max Depth = 720
- Call Chain = uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> uECC_vli_rshift1
- >> uECC_vli_set
- >> uECC_vli_numBits
- >> uECC_vli_clear
[Called By]
uECC_vli_modAdd (Thumb, 50 bytes, Stack size 64 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_modAdd))
[Stack]
- Max Depth = 128
- Call Chain = uECC_vli_modAdd ⇒ uECC_vli_sub
[Calls]- >> uECC_vli_sub
- >> uECC_vli_add
- >> uECC_vli_cmp_unsafe
[Called By]- >> double_jacobian_default
- >> x_side_default
uECC_vli_modInv (Thumb, 268 bytes, Stack size 608 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_modInv))
[Stack]
- Max Depth = 768
- Call Chain = uECC_vli_modInv ⇒ vli_modInv_update ⇒ uECC_vli_add
[Calls]- >> uECC_vli_rshift1
- >> uECC_vli_set
- >> uECC_vli_isZero
- >> uECC_vli_clear
- >> uECC_vli_sub
- >> uECC_vli_add
- >> vli_modInv_update
- >> uECC_vli_cmp_unsafe
[Called By]
uECC_vli_modMult (Thumb, 36 bytes, Stack size 320 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_modMult))
[Stack]
- Max Depth = 1040
- Call Chain = uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> uECC_vli_mmod
- >> uECC_vli_mult
[Called By]
uECC_vli_modMult_fast (Thumb, 32 bytes, Stack size 320 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_modMult_fast))
[Stack]
- Max Depth = 464
- Call Chain = uECC_vli_modMult_fast ⇒ uECC_vli_mult
[Calls]
[Called By]- >> uECC_verify
- >> apply_z
- >> XYcZ_add
- >> double_jacobian_default
- >> x_side_default
uECC_vli_modSquare_fast (Thumb, 32 bytes, Stack size 320 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_modSquare_fast))
[Stack]
- Max Depth = 464
- Call Chain = uECC_vli_modSquare_fast ⇒ uECC_vli_square
[Calls]
[Called By]- >> apply_z
- >> XYcZ_add
- >> double_jacobian_default
- >> x_side_default
uECC_vli_modSub (Thumb, 36 bytes, Stack size 64 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_modSub))
[Stack]
- Max Depth = 128
- Call Chain = uECC_vli_modSub ⇒ uECC_vli_sub
[Calls]- >> uECC_vli_sub
- >> uECC_vli_add
[Called By]- >> uECC_verify
- >> XYcZ_add
- >> double_jacobian_default
- >> x_side_default
uECC_vli_mult (Thumb, 786 bytes, Stack size 144 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_mult))
[Stack]
- Max Depth = 144
- Call Chain = uECC_vli_mult
[Called By]- >> uECC_vli_modMult_fast
- >> uECC_vli_modMult
uECC_vli_numBits (Thumb, 68 bytes, Stack size 0 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_numBits))
[Calls]
[Called By]- >> uECC_verify
- >> uECC_vli_mmod
- >> uECC_vli_numBits
uECC_vli_rshift1 (Thumb, 26 bytes, Stack size 0 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_rshift1))
[Called By]
- >> uECC_vli_modInv
- >> uECC_vli_mmod
- >> double_jacobian_default
- >> vli_modInv_update
uECC_vli_set (Thumb, 26 bytes, Stack size 48 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_set))
[Stack]
- Max Depth = 48
- Call Chain = uECC_vli_set
[Called By]- >> uECC_verify
- >> uECC_vli_modInv
- >> uECC_vli_mmod
- >> XYcZ_add
- >> double_jacobian_default
- >> vli_mmod_fast_secp256r1
uECC_vli_square (Thumb, 652 bytes, Stack size 144 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_square))
[Stack]
- Max Depth = 144
- Call Chain = uECC_vli_square
[Called By]- >> uECC_vli_modSquare_fast
uECC_vli_sub (Thumb, 94 bytes, Stack size 64 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_sub))
[Stack]
- Max Depth = 64
- Call Chain = uECC_vli_sub
[Called By]- >> uECC_verify
- >> uECC_vli_modInv
- >> uECC_vli_modSub
- >> uECC_vli_modAdd
- >> vli_mmod_fast_secp256r1
- >> bits2int
uECC_vli_testBit (Thumb, 18 bytes, Stack size 0 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_testBit))
[Called By]
RTC2_IRQHandler (Thumb, 106 bytes, Stack size 24 bytes, nrf_bootloader_dfu_timers.o(i.RTC2_IRQHandler))
[Stack]
- Max Depth = 48
- Call Chain = RTC2_IRQHandler ⇒ timer_activate ⇒ nrf_rtc_event_clear
[Calls]- >> timer_stop
- >> timer_activate
- >> nrf_rtc_event_clear
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
SWI2_EGU2_IRQHandler (Thumb, 4 bytes, Stack size 0 bytes, nrf_sdh.o(i.SWI2_EGU2_IRQHandler))
[Stack]
- Max Depth = 24
- Call Chain = SWI2_EGU2_IRQHandler ⇒ nrf_sdh_evts_poll ⇒ nrf_section_iter_next ⇒ nrf_section_iter_item_set
[Calls]
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
SystemInit (Thumb, 848 bytes, Stack size 20 bytes, system_nrf52.o(i.SystemInit))
[Stack]
- Max Depth = 20
- Call Chain = SystemInit
[Address Reference Count : 1]- arm_startup_nrf52.o(.text)
WDT_IRQHandler (Thumb, 14 bytes, Stack size 8 bytes, nrf_bootloader_wdt.o(i.WDT_IRQHandler))
[Stack]
- Max Depth = 8
- Call Chain = WDT_IRQHandler
[Address Reference Count : 1]- arm_startup_nrf52.o(RESET)
__scatterload_copy (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
__scatterload_null (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
__scatterload_zeroinit (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
app_error_fault_handler (Thumb, 4 bytes, Stack size 0 bytes, main.o(i.app_error_fault_handler))
[Calls]
[Address Reference Count : 1]- nrf_sdh.o(i.nrf_sdh_enable_request)
app_error_handler_bare (Thumb, 4 bytes, Stack size 0 bytes, main.o(i.app_error_handler_bare))
[Calls]
[Called By]- >> nrf_bootloader_app_start_final
- >> nrf_bootloader_init
- >> ble_evt_handler
- >> nrf_sdh_soc_evts_poll
- >> nrf_sdh_ble_evts_poll
- >> softdevices_evt_irq_enable
- >> softdevice_evt_irq_disable
app_sched_event_put (Thumb, 154 bytes, Stack size 40 bytes, app_scheduler.o(i.app_sched_event_put))
[Stack]
- Max Depth = 52
- Call Chain = app_sched_event_put ⇒ app_util_critical_region_enter
[Calls]- >> app_util_critical_region_exit
- >> app_util_critical_region_enter
- >> __aeabi_memcpy
[Called By]- >> on_data_obj_execute_request_sched
- >> nrf_dfu_req_handler_on_req
app_sched_execute (Thumb, 58 bytes, Stack size 8 bytes, app_scheduler.o(i.app_sched_execute))
[Stack]
- Max Depth = 8
- Call Chain = app_sched_execute
[Called By]
app_sched_init (Thumb, 40 bytes, Stack size 12 bytes, app_scheduler.o(i.app_sched_init))
[Stack]
- Max Depth = 12
- Call Chain = app_sched_init
[Called By]
app_util_critical_region_enter (Thumb, 64 bytes, Stack size 12 bytes, app_util_platform.o(i.app_util_critical_region_enter))
[Stack]
- Max Depth = 12
- Call Chain = app_util_critical_region_enter
[Called By]- >> app_sched_event_put
- >> nrf_sdh_enable_request
- >> nrf_sdh_disable_request
- >> nrf_balloc_free
- >> nrf_balloc_alloc
app_util_critical_region_exit (Thumb, 46 bytes, Stack size 0 bytes, app_util_platform.o(i.app_util_critical_region_exit))
[Called By]
- >> app_sched_event_put
- >> nrf_sdh_enable_request
- >> nrf_sdh_disable_request
- >> nrf_balloc_free
- >> nrf_balloc_alloc
ble_dfu_init (Thumb, 182 bytes, Stack size 96 bytes, nrf_dfu_ble.o(i.ble_dfu_init))
[Stack]
- Max Depth = 96
- Call Chain = ble_dfu_init
[Calls]
[Called By]- >> ble_dfu_transport_init
ble_dfu_transport_close (Thumb, 82 bytes, Stack size 24 bytes, nrf_dfu_ble.o(i.ble_dfu_transport_close))
[Stack]
- Max Depth = 80
- Call Chain = ble_dfu_transport_close ⇒ nrf_sdh_disable_request ⇒ sdh_state_observer_notify ⇒ nrf_section_iter_next ⇒ nrf_section_iter_item_set
[Calls]- >> nrf_sdh_disable_request
[Address Reference Count : 1]
ble_dfu_transport_init (Thumb, 134 bytes, Stack size 16 bytes, nrf_dfu_ble.o(i.ble_dfu_transport_init))
[Stack]
- Max Depth = 112
- Call Chain = ble_dfu_transport_init ⇒ ble_dfu_init
[Calls]- >> nrf_sdh_enable_request
- >> nrf_sdh_ble_enable
- >> nrf_sdh_ble_default_cfg_set
- >> nrf_sdh_ble_app_ram_start_get
- >> nrf_dfu_settings_adv_name_is_valid
- >> nrf_dfu_settings_adv_name_copy
- >> nrf_dfu_mbr_init_sd
- >> nrf_balloc_init
- >> ble_dfu_init
- >> gap_params_init
- >> advertising_start
[Address Reference Count : 1]
ble_srv_is_notification_enabled (Thumb, 8 bytes, Stack size 0 bytes, ble_srv_common.o(i.ble_srv_is_notification_enabled))
[Called By]
crc32_compute (Thumb, 54 bytes, Stack size 20 bytes, crc32.o(i.crc32_compute))
[Stack]
- Max Depth = 20
- Call Chain = crc32_compute
[Called By]- >> nrf_dfu_validation_boot_validate
- >> app_activate
- >> settings_crc_get
- >> boot_validation_crc
- >> nrf_dfu_validation_init_cmd_append
- >> on_data_obj_write_request
- >> nrf_dfu_settings_adv_name_is_valid
- >> postvalidate
- >> boot_validation_extract
- >> nrf_dfu_settings_adv_name_write
dfu_fstorage_evt_handler (Thumb, 12 bytes, Stack size 0 bytes, nrf_dfu_flash.o(i.dfu_fstorage_evt_handler))
[Address Reference Count : 1]
ext_error_get (Thumb, 10 bytes, Stack size 0 bytes, nrf_dfu_handling_error.o(i.ext_error_get))
[Called By]
- >> ble_dfu_req_handler_callback
ext_error_set (Thumb, 8 bytes, Stack size 0 bytes, nrf_dfu_handling_error.o(i.ext_error_set))
[Called By]
- >> ext_err_code_handle
- >> ble_dfu_req_handler_callback
- >> nrf_dfu_req_handler_init
fw_hash_ok (Thumb, 8 bytes, Stack size 0 bytes, nrf_dfu_validation.o(i.fw_hash_ok))
[Stack]
- Max Depth = 304
- Call Chain = fw_hash_ok ⇒ nrf_dfu_validation_hash_ok ⇒ crypto_init ⇒ nrf_crypto_ecc_public_key_from_raw ⇒ nrf_crypto_backend_micro_ecc_public_key_from_raw ⇒ nrf_crypto_internal_double_swap_endian
[Calls]- >> nrf_dfu_validation_hash_ok
[Called By]
main (Thumb, 38 bytes, Stack size 0 bytes, main.o(i.main))
[Stack]
- Max Depth = 3352
- Call Chain = main ⇒ nrf_bootloader_init ⇒ nrf_dfu_init ⇒ nrf_dfu_req_handler_init ⇒ nrf_dfu_validation_init_cmd_execute ⇒ nrf_dfu_validation_prevalidate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_bootloader_mbr_addrs_populate
- >> nrf_bootloader_init
- >> nrf_bootloader_flash_protect
- >> on_error
[Address Reference Count : 1]- entry9a.o(.ARM.Collect$$$$0000000B)
nrf_atfifo_clear (Thumb, 16 bytes, Stack size 8 bytes, nrf_atfifo.o(i.nrf_atfifo_clear))
[Stack]
- Max Depth = 8
- Call Chain = nrf_atfifo_clear
[Calls]- >> __asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_space_clear
[Called By]
nrf_atfifo_init (Thumb, 38 bytes, Stack size 8 bytes, nrf_atfifo.o(i.nrf_atfifo_init))
[Stack]
- Max Depth = 8
- Call Chain = nrf_atfifo_init
[Called By]
nrf_atfifo_item_alloc (Thumb, 22 bytes, Stack size 16 bytes, nrf_atfifo.o(i.nrf_atfifo_item_alloc))
[Stack]
- Max Depth = 16
- Call Chain = nrf_atfifo_item_alloc
[Calls]- >> __asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_req
[Called By]
nrf_atfifo_item_free (Thumb, 22 bytes, Stack size 8 bytes, nrf_atfifo.o(i.nrf_atfifo_item_free))
[Stack]
- Max Depth = 8
- Call Chain = nrf_atfifo_item_free
[Calls]- >> __asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_close
[Called By]
nrf_atfifo_item_get (Thumb, 22 bytes, Stack size 16 bytes, nrf_atfifo.o(i.nrf_atfifo_item_get))
[Stack]
- Max Depth = 16
- Call Chain = nrf_atfifo_item_get
[Calls]- >> __asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_rspace_req
[Called By]
nrf_atfifo_item_put (Thumb, 22 bytes, Stack size 8 bytes, nrf_atfifo.o(i.nrf_atfifo_item_put))
[Stack]
- Max Depth = 8
- Call Chain = nrf_atfifo_item_put
[Calls]- >> __asm___12_nrf_atfifo_c_51f461e1__nrf_atfifo_wspace_close
[Called By]
nrf_atomic_flag_clear (Thumb, 6 bytes, Stack size 0 bytes, nrf_atomic.o(i.nrf_atomic_flag_clear))
[Stack]
- Max Depth = 8
- Call Chain = nrf_atomic_flag_clear ⇒ nrf_atomic_u32_and
[Calls]
[Called By]
nrf_atomic_flag_set_fetch (Thumb, 6 bytes, Stack size 0 bytes, nrf_atomic.o(i.nrf_atomic_flag_set_fetch))
[Stack]
- Max Depth = 8
- Call Chain = nrf_atomic_flag_set_fetch ⇒ nrf_atomic_u32_fetch_or
[Calls]- >> nrf_atomic_u32_fetch_or
[Called By]- >> queue_start
- >> init
- >> write
- >> erase
nrf_atomic_u32_and (Thumb, 12 bytes, Stack size 8 bytes, nrf_atomic.o(i.nrf_atomic_u32_and))
[Stack]
- Max Depth = 8
- Call Chain = nrf_atomic_u32_and
[Calls]- >> __asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_and
[Called By]
nrf_atomic_u32_fetch_or (Thumb, 10 bytes, Stack size 8 bytes, nrf_atomic.o(i.nrf_atomic_u32_fetch_or))
[Stack]
- Max Depth = 8
- Call Chain = nrf_atomic_u32_fetch_or
[Calls]- >> __asm___12_nrf_atomic_c_85ca2469__nrf_atomic_internal_orr
[Called By]- >> nrf_atomic_flag_set_fetch
nrf_balloc_alloc (Thumb, 68 bytes, Stack size 16 bytes, nrf_balloc.o(i.nrf_balloc_alloc))
[Stack]
- Max Depth = 28
- Call Chain = nrf_balloc_alloc ⇒ app_util_critical_region_enter
[Calls]- >> app_util_critical_region_exit
- >> app_util_critical_region_enter
[Called By]
nrf_balloc_free (Thumb, 48 bytes, Stack size 16 bytes, nrf_balloc.o(i.nrf_balloc_free))
[Stack]
- Max Depth = 28
- Call Chain = nrf_balloc_free ⇒ app_util_critical_region_enter
[Calls]- >> app_util_critical_region_exit
- >> app_util_critical_region_enter
[Called By]- >> on_flash_write
- >> ble_evt_handler
nrf_balloc_init (Thumb, 48 bytes, Stack size 8 bytes, nrf_balloc.o(i.nrf_balloc_init))
[Stack]
- Max Depth = 8
- Call Chain = nrf_balloc_init
[Called By]- >> ble_dfu_transport_init
nrf_bootloader_app_start (Thumb, 36 bytes, Stack size 8 bytes, nrf_bootloader_app_start.o(i.nrf_bootloader_app_start))
[Stack]
- Max Depth = 8
- Call Chain = nrf_bootloader_app_start
[Calls]- >> nrf_dfu_mbr_irq_forward_address_set
[Called By]
nrf_bootloader_app_start_final (Thumb, 88 bytes, Stack size 8 bytes, nrf_bootloader_app_start_final.o(i.nrf_bootloader_app_start_final), UNUSED)
[Calls]
- >> nrf_dfu_bank0_start_addr
- >> nrf_bootloader_flash_protect
- >> app_error_handler_bare
nrf_bootloader_dfu_inactivity_timer_restart (Thumb, 34 bytes, Stack size 16 bytes, nrf_bootloader_dfu_timers.o(i.nrf_bootloader_dfu_inactivity_timer_restart))
[Stack]
- Max Depth = 56
- Call Chain = nrf_bootloader_dfu_inactivity_timer_restart ⇒ timer_start ⇒ timer_init ⇒ nrf_rtc_event_clear
[Calls]- >> timer_stop
- >> timer_start
[Called By]- >> dfu_observer
- >> nrf_bootloader_init
nrf_bootloader_flash_protect (Thumb, 96 bytes, Stack size 20 bytes, nrf_bootloader_app_start_final.o(i.nrf_bootloader_flash_protect))
[Stack]
- Max Depth = 20
- Call Chain = nrf_bootloader_flash_protect
[Called By]- >> nrf_bootloader_app_start_final
- >> main
nrf_bootloader_fw_activate (Thumb, 102 bytes, Stack size 16 bytes, nrf_bootloader_fw_activation.o(i.nrf_bootloader_fw_activate))
[Stack]
- Max Depth = 160
- Call Chain = nrf_bootloader_fw_activate ⇒ sd_activate ⇒ image_copy ⇒ nrf_dfu_settings_write_and_backup ⇒ nrf_dfu_settings_write ⇒ settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]- >> nrf_dfu_settings_write_and_backup
- >> nrf_dfu_bank_invalidate
- >> sd_activate
- >> bl_activate
- >> app_activate
[Called By]
nrf_bootloader_init (Thumb, 170 bytes, Stack size 16 bytes, nrf_bootloader.o(i.nrf_bootloader_init))
[Stack]
- Max Depth = 3352
- Call Chain = nrf_bootloader_init ⇒ nrf_dfu_init ⇒ nrf_dfu_req_handler_init ⇒ nrf_dfu_validation_init_cmd_execute ⇒ nrf_dfu_validation_prevalidate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_init_user
- >> nrf_dfu_settings_init
- >> nrf_dfu_settings_backup
- >> nrf_bootloader_wdt_init
- >> nrf_bootloader_wdt_feed
- >> nrf_bootloader_fw_activate
- >> nrf_bootloader_dfu_inactivity_timer_restart
- >> nrf_bootloader_app_start
- >> app_sched_init
- >> app_sched_execute
- >> nrf_power_gpregret_get
- >> dfu_enter_check
- >> bootloader_reset
- >> app_error_handler_bare
- >> nrf_dfu_init
- >> nrf_dfu_settings_additional_erase
[Called By]
nrf_bootloader_mbr_addrs_populate (Thumb, 42 bytes, Stack size 8 bytes, nrf_bootloader_info.o(i.nrf_bootloader_mbr_addrs_populate))
[Stack]
- Max Depth = 8
- Call Chain = nrf_bootloader_mbr_addrs_populate
[Calls]
[Called By]
nrf_bootloader_wdt_feed (Thumb, 20 bytes, Stack size 8 bytes, nrf_bootloader_wdt.o(i.nrf_bootloader_wdt_feed))
[Stack]
- Max Depth = 24
- Call Chain = nrf_bootloader_wdt_feed ⇒ wdt_feed
[Calls]- >> wdt_feed
- >> nrf_wdt_started
[Called By]- >> nrf_bootloader_init
- >> bl_activate
nrf_bootloader_wdt_feed_timer_start (Thumb, 16 bytes, Stack size 0 bytes, nrf_bootloader_dfu_timers.o(i.nrf_bootloader_wdt_feed_timer_start))
[Stack]
- Max Depth = 40
- Call Chain = nrf_bootloader_wdt_feed_timer_start ⇒ timer_start ⇒ timer_init ⇒ nrf_rtc_event_clear
[Calls]
[Called By]- >> nrf_bootloader_wdt_init
nrf_bootloader_wdt_init (Thumb, 60 bytes, Stack size 16 bytes, nrf_bootloader_wdt.o(i.nrf_bootloader_wdt_init))
[Stack]
- Max Depth = 56
- Call Chain = nrf_bootloader_wdt_init ⇒ nrf_bootloader_wdt_feed_timer_start ⇒ timer_start ⇒ timer_init ⇒ nrf_rtc_event_clear
[Calls]- >> wdt_feed
- >> nrf_wdt_started
- >> nrf_bootloader_wdt_feed_timer_start
[Called By]- >> nrf_bootloader_init
- >> image_copy
nrf_crypto_backend_micro_ecc_curve_get (Thumb, 6 bytes, Stack size 0 bytes, micro_ecc_backend_ecc.o(i.nrf_crypto_backend_micro_ecc_curve_get))
[Called By]
- >> nrf_crypto_backend_micro_ecc_verify
nrf_crypto_backend_micro_ecc_public_key_from_raw (Thumb, 16 bytes, Stack size 8 bytes, micro_ecc_backend_ecc.o(i.nrf_crypto_backend_micro_ecc_public_key_from_raw))
[Stack]
- Max Depth = 24
- Call Chain = nrf_crypto_backend_micro_ecc_public_key_from_raw ⇒ nrf_crypto_internal_double_swap_endian
[Calls]- >> nrf_crypto_internal_double_swap_endian
[Called By]- >> nrf_crypto_ecc_public_key_from_raw
nrf_crypto_backend_micro_ecc_verify (Thumb, 86 bytes, Stack size 128 bytes, micro_ecc_backend_ecdsa.o(i.nrf_crypto_backend_micro_ecc_verify))
[Stack]
- Max Depth = 3088
- Call Chain = nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_crypto_internal_swap_endian
- >> nrf_crypto_internal_double_swap_endian
- >> uECC_verify
- >> nrf_crypto_backend_micro_ecc_curve_get
[Called By]- >> nrf_crypto_ecdsa_verify
nrf_crypto_ecc_public_key_from_raw (Thumb, 48 bytes, Stack size 16 bytes, nrf_crypto_ecc.o(i.nrf_crypto_ecc_public_key_from_raw))
[Stack]
- Max Depth = 40
- Call Chain = nrf_crypto_ecc_public_key_from_raw ⇒ nrf_crypto_backend_micro_ecc_public_key_from_raw ⇒ nrf_crypto_internal_double_swap_endian
[Calls]- >> nrf_crypto_backend_micro_ecc_public_key_from_raw
- >> nrf_crypto_internal_ecc_raw_input_check
- >> nrf_crypto_internal_ecc_key_output_prepare
[Called By]
nrf_crypto_ecdsa_verify (Thumb, 72 bytes, Stack size 32 bytes, nrf_crypto_ecdsa.o(i.nrf_crypto_ecdsa_verify))
[Stack]
- Max Depth = 3120
- Call Chain = nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_crypto_backend_micro_ecc_verify
- >> nrf_crypto_internal_ecc_raw_input_check
- >> nrf_crypto_internal_ecc_key_input_check
[Called By]- >> nrf_dfu_validation_signature_check
nrf_crypto_hash_calculate (Thumb, 54 bytes, Stack size 24 bytes, nrf_crypto_hash.o(i.nrf_crypto_hash_calculate))
[Stack]
- Max Depth = 40
- Call Chain = nrf_crypto_hash_calculate ⇒ nrf_crypto_hash_update
[Calls]- >> nrf_crypto_hash_update
- >> nrf_crypto_hash_init
- >> nrf_crypto_hash_finalize
[Called By]- >> nrf_dfu_validation_signature_check
- >> nrf_dfu_validation_hash_ok
- >> boot_validation_extract
nrf_crypto_hash_finalize (Thumb, 54 bytes, Stack size 16 bytes, nrf_crypto_hash.o(i.nrf_crypto_hash_finalize))
[Stack]
- Max Depth = 16
- Call Chain = nrf_crypto_hash_finalize
[Calls]
[Called By]- >> nrf_crypto_hash_calculate
nrf_crypto_hash_init (Thumb, 38 bytes, Stack size 8 bytes, nrf_crypto_hash.o(i.nrf_crypto_hash_init))
[Stack]
- Max Depth = 8
- Call Chain = nrf_crypto_hash_init
[Called By]- >> nrf_crypto_hash_calculate
nrf_crypto_hash_update (Thumb, 46 bytes, Stack size 16 bytes, nrf_crypto_hash.o(i.nrf_crypto_hash_update))
[Stack]
- Max Depth = 16
- Call Chain = nrf_crypto_hash_update
[Calls]
[Called By]- >> nrf_crypto_hash_calculate
nrf_crypto_init (Thumb, 50 bytes, Stack size 24 bytes, nrf_crypto_init.o(i.nrf_crypto_init))
[Stack]
- Max Depth = 24
- Call Chain = nrf_crypto_init
[Called By]
nrf_crypto_internal_double_swap_endian (Thumb, 26 bytes, Stack size 16 bytes, nrf_crypto_shared.o(i.nrf_crypto_internal_double_swap_endian))
[Stack]
- Max Depth = 16
- Call Chain = nrf_crypto_internal_double_swap_endian
[Calls]- >> nrf_crypto_internal_swap_endian
[Called By]- >> nrf_crypto_backend_micro_ecc_verify
- >> nrf_crypto_backend_micro_ecc_public_key_from_raw
- >> crypto_init
nrf_crypto_internal_double_swap_endian_in_place (Thumb, 22 bytes, Stack size 12 bytes, nrf_crypto_shared.o(i.nrf_crypto_internal_double_swap_endian_in_place))
[Stack]
- Max Depth = 12
- Call Chain = nrf_crypto_internal_double_swap_endian_in_place
[Calls]- >> nrf_crypto_internal_swap_endian_in_place
[Called By]- >> nrf_dfu_validation_signature_check
nrf_crypto_internal_ecc_key_input_check (Thumb, 24 bytes, Stack size 0 bytes, nrf_crypto_ecc.o(i.nrf_crypto_internal_ecc_key_input_check))
[Called By]
- >> nrf_crypto_ecdsa_verify
nrf_crypto_internal_ecc_key_output_prepare (Thumb, 26 bytes, Stack size 0 bytes, nrf_crypto_ecc.o(i.nrf_crypto_internal_ecc_key_output_prepare))
[Called By]
- >> nrf_crypto_ecc_public_key_from_raw
nrf_crypto_internal_ecc_raw_input_check (Thumb, 22 bytes, Stack size 0 bytes, nrf_crypto_ecc.o(i.nrf_crypto_internal_ecc_raw_input_check))
[Called By]
- >> nrf_crypto_ecdsa_verify
- >> nrf_crypto_ecc_public_key_from_raw
nrf_crypto_internal_swap_endian (Thumb, 22 bytes, Stack size 0 bytes, nrf_crypto_shared.o(i.nrf_crypto_internal_swap_endian))
[Called By]
- >> nrf_crypto_internal_double_swap_endian
- >> nrf_crypto_backend_micro_ecc_verify
- >> nrf_dfu_validation_hash_ok
nrf_crypto_internal_swap_endian_in_place (Thumb, 24 bytes, Stack size 0 bytes, nrf_crypto_shared.o(i.nrf_crypto_internal_swap_endian_in_place))
[Called By]
- >> nrf_crypto_internal_double_swap_endian_in_place
nrf_dfu_bank0_start_addr (Thumb, 34 bytes, Stack size 0 bytes, nrf_dfu_utils.o(i.nrf_dfu_bank0_start_addr))
[Called By]
- >> nrf_bootloader_app_start_final
- >> dfu_enter_check
- >> nrf_dfu_bank1_start_addr
- >> app_activate
- >> nrf_dfu_cache_prepare
nrf_dfu_bank1_start_addr (Thumb, 28 bytes, Stack size 4 bytes, nrf_dfu_utils.o(i.nrf_dfu_bank1_start_addr))
[Stack]
- Max Depth = 4
- Call Chain = nrf_dfu_bank1_start_addr
[Calls]- >> nrf_dfu_bank0_start_addr
[Called By]- >> bl_activate
- >> nrf_dfu_validation_init_cmd_execute
- >> nrf_dfu_cache_prepare
nrf_dfu_bank_invalidate (Thumb, 14 bytes, Stack size 0 bytes, nrf_dfu_utils.o(i.nrf_dfu_bank_invalidate))
[Called By]
- >> nrf_bootloader_fw_activate
- >> postvalidate
- >> postvalidate_sd_bl
- >> nrf_dfu_cache_prepare
nrf_dfu_cache_prepare (Thumb, 140 bytes, Stack size 24 bytes, nrf_dfu_utils.o(i.nrf_dfu_cache_prepare))
[Stack]
- Max Depth = 28
- Call Chain = nrf_dfu_cache_prepare ⇒ nrf_dfu_bank1_start_addr
[Calls]- >> nrf_dfu_bank0_start_addr
- >> nrf_dfu_bank_invalidate
- >> nrf_dfu_bank1_start_addr
[Called By]- >> nrf_dfu_validation_init_cmd_execute
nrf_dfu_flash_erase (Thumb, 12 bytes, Stack size 0 bytes, nrf_dfu_flash.o(i.nrf_dfu_flash_erase))
[Stack]
- Max Depth = 24
- Call Chain = nrf_dfu_flash_erase ⇒ nrf_fstorage_erase
[Calls]
[Called By]- >> image_copy
- >> settings_write
- >> on_data_obj_create_request
nrf_dfu_flash_init (Thumb, 16 bytes, Stack size 0 bytes, nrf_dfu_flash.o(i.nrf_dfu_flash_init))
[Calls]
[Called By]- >> nrf_dfu_settings_init
- >> nrf_dfu_req_handler_init
nrf_dfu_flash_store (Thumb, 18 bytes, Stack size 8 bytes, nrf_dfu_flash.o(i.nrf_dfu_flash_store))
[Stack]
- Max Depth = 40
- Call Chain = nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]
[Called By]- >> image_copy
- >> settings_write
- >> on_data_obj_write_request
nrf_dfu_init (Thumb, 34 bytes, Stack size 8 bytes, nrf_dfu.o(i.nrf_dfu_init))
[Stack]
- Max Depth = 3336
- Call Chain = nrf_dfu_init ⇒ nrf_dfu_req_handler_init ⇒ nrf_dfu_validation_init_cmd_execute ⇒ nrf_dfu_validation_prevalidate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_transports_init
- >> nrf_dfu_req_handler_init
- >> dfu_observer
[Called By]
nrf_dfu_init_user (Thumb, 4 bytes, Stack size 0 bytes, nrf_bootloader.o(i.nrf_dfu_init_user))
[Called By]
nrf_dfu_mbr_copy_bl (Thumb, 22 bytes, Stack size 24 bytes, nrf_dfu_mbr.o(i.nrf_dfu_mbr_copy_bl))
[Stack]
- Max Depth = 24
- Call Chain = nrf_dfu_mbr_copy_bl
[Called By]
nrf_dfu_mbr_init_sd (Thumb, 18 bytes, Stack size 24 bytes, nrf_dfu_mbr.o(i.nrf_dfu_mbr_init_sd))
[Stack]
- Max Depth = 24
- Call Chain = nrf_dfu_mbr_init_sd
[Called By]- >> ble_dfu_transport_init
nrf_dfu_mbr_irq_forward_address_set (Thumb, 12 bytes, Stack size 0 bytes, nrf_dfu_mbr.o(i.nrf_dfu_mbr_irq_forward_address_set))
[Called By]
- >> nrf_bootloader_app_start
nrf_dfu_req_handler_init (Thumb, 62 bytes, Stack size 8 bytes, nrf_dfu_req_handler.o(i.nrf_dfu_req_handler_init))
[Stack]
- Max Depth = 3328
- Call Chain = nrf_dfu_req_handler_init ⇒ nrf_dfu_validation_init_cmd_execute ⇒ nrf_dfu_validation_prevalidate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_validation_init_cmd_present
- >> nrf_dfu_validation_init_cmd_execute
- >> nrf_dfu_validation_init
- >> nrf_dfu_flash_init
- >> ext_error_set
[Called By]
nrf_dfu_req_handler_on_req (Thumb, 16 bytes, Stack size 0 bytes, nrf_dfu_req_handler.o(i.nrf_dfu_req_handler_on_req))
[Stack]
- Max Depth = 52
- Call Chain = nrf_dfu_req_handler_on_req ⇒ app_sched_event_put ⇒ app_util_critical_region_enter
[Calls]
[Called By]- >> on_ctrl_pt_write
- >> ble_evt_handler
nrf_dfu_settings_additional_erase (Thumb, 46 bytes, Stack size 16 bytes, nrf_dfu_settings_svci.o(i.nrf_dfu_settings_additional_erase))
[Stack]
- Max Depth = 32
- Call Chain = nrf_dfu_settings_additional_erase ⇒ nrf_nvmc_write_words
[Calls]- >> nrf_nvmc_write_words
- >> nrf_nvmc_page_erase
[Called By]
nrf_dfu_settings_adv_name_copy (Thumb, 20 bytes, Stack size 8 bytes, nrf_dfu_settings_svci.o(i.nrf_dfu_settings_adv_name_copy))
[Stack]
- Max Depth = 8
- Call Chain = nrf_dfu_settings_adv_name_copy
[Calls]
[Called By]- >> ble_dfu_transport_init
nrf_dfu_settings_adv_name_is_valid (Thumb, 28 bytes, Stack size 8 bytes, nrf_dfu_settings_svci.o(i.nrf_dfu_settings_adv_name_is_valid))
[Stack]
- Max Depth = 28
- Call Chain = nrf_dfu_settings_adv_name_is_valid ⇒ crc32_compute
[Calls]
[Called By]- >> ble_dfu_transport_init
nrf_dfu_settings_adv_name_write (Thumb, 50 bytes, Stack size 16 bytes, nrf_dfu_settings_svci.o(i.nrf_dfu_settings_adv_name_write))
[Stack]
- Max Depth = 36
- Call Chain = nrf_dfu_settings_adv_name_write ⇒ crc32_compute
[Calls]
[Called By]- >> nrf_dfu_set_adv_name_on_call
nrf_dfu_settings_backup (Thumb, 6 bytes, Stack size 0 bytes, nrf_dfu_settings.o(i.nrf_dfu_settings_backup))
[Stack]
- Max Depth = 64
- Call Chain = nrf_dfu_settings_backup ⇒ settings_backup ⇒ settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]
[Called By]- >> bootloader_reset
- >> nrf_bootloader_init
nrf_dfu_settings_init (Thumb, 26 bytes, Stack size 8 bytes, nrf_dfu_settings.o(i.nrf_dfu_settings_init))
[Stack]
- Max Depth = 104
- Call Chain = nrf_dfu_settings_init ⇒ nrf_dfu_settings_write_and_backup ⇒ nrf_dfu_settings_write ⇒ settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]- >> nrf_dfu_settings_reinit
- >> nrf_dfu_settings_write_and_backup
- >> nrf_dfu_flash_init
[Called By]
nrf_dfu_settings_progress_reset (Thumb, 34 bytes, Stack size 8 bytes, nrf_dfu_settings.o(i.nrf_dfu_settings_progress_reset))
[Stack]
- Max Depth = 8
- Call Chain = nrf_dfu_settings_progress_reset
[Calls]- >> __aeabi_memclr4
- >> __aeabi_memset
[Called By]- >> nrf_dfu_validation_init_cmd_execute
- >> nrf_dfu_validation_init_cmd_create
- >> postvalidate
nrf_dfu_settings_reinit (Thumb, 190 bytes, Stack size 32 bytes, nrf_dfu_settings.o(i.nrf_dfu_settings_reinit))
[Stack]
- Max Depth = 60
- Call Chain = nrf_dfu_settings_reinit ⇒ crc_ok ⇒ settings_crc_get ⇒ crc32_compute
[Calls]- >> crc_ok
- >> boot_validation_crc
- >> __aeabi_memclr4
- >> __aeabi_memcpy4
- >> __aeabi_memcpy
[Called By]- >> nrf_dfu_settings_init
- >> dfu_observer
nrf_dfu_settings_write (Thumb, 42 bytes, Stack size 16 bytes, nrf_dfu_settings.o(i.nrf_dfu_settings_write))
[Stack]
- Max Depth = 80
- Call Chain = nrf_dfu_settings_write ⇒ settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]- >> settings_write
- >> settings_crc_get
- >> boot_validation_crc
[Called By]- >> nrf_dfu_settings_write_and_backup
nrf_dfu_settings_write_and_backup (Thumb, 26 bytes, Stack size 16 bytes, nrf_dfu_settings.o(i.nrf_dfu_settings_write_and_backup))
[Stack]
- Max Depth = 96
- Call Chain = nrf_dfu_settings_write_and_backup ⇒ nrf_dfu_settings_write ⇒ settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]- >> settings_backup
- >> nrf_dfu_settings_write
[Called By]- >> nrf_dfu_settings_init
- >> nrf_bootloader_fw_activate
- >> sd_activate
- >> image_copy
- >> on_data_obj_execute_request_sched
- >> nrf_dfu_command_req
nrf_dfu_softdevice_start_address (Thumb, 6 bytes, Stack size 0 bytes, nrf_dfu_utils.o(i.nrf_dfu_softdevice_start_address))
[Called By]
nrf_dfu_transports_close (Thumb, 44 bytes, Stack size 24 bytes, nrf_dfu_transport.o(i.nrf_dfu_transports_close))
[Stack]
- Max Depth = 24
- Call Chain = nrf_dfu_transports_close
[Called By]- >> on_ctrl_pt_write
- >> dfu_observer
nrf_dfu_transports_init (Thumb, 42 bytes, Stack size 24 bytes, nrf_dfu_transport.o(i.nrf_dfu_transports_init))
[Stack]
- Max Depth = 24
- Call Chain = nrf_dfu_transports_init
[Called By]
nrf_dfu_validation_activation_prepare (Thumb, 6 bytes, Stack size 0 bytes, nrf_dfu_validation.o(i.nrf_dfu_validation_activation_prepare))
[Stack]
- Max Depth = 3744
- Call Chain = nrf_dfu_validation_activation_prepare ⇒ postvalidate ⇒ postvalidate_sd_bl ⇒ boot_validation_extract ⇒ nrf_dfu_validation_boot_validate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]
[Called By]- >> on_data_obj_execute_request_sched
nrf_dfu_validation_boot_validate (Thumb, 82 bytes, Stack size 16 bytes, nrf_dfu_validation.o(i.nrf_dfu_validation_boot_validate))
[Stack]
- Max Depth = 3296
- Call Chain = nrf_dfu_validation_boot_validate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> crc32_compute
- >> nrf_dfu_validation_signature_check
- >> nrf_dfu_validation_hash_ok
[Called By]- >> boot_validate
- >> boot_validation_extract
nrf_dfu_validation_init (Thumb, 26 bytes, Stack size 8 bytes, nrf_dfu_validation.o(i.nrf_dfu_validation_init))
[Stack]
- Max Depth = 336
- Call Chain = nrf_dfu_validation_init ⇒ stored_init_cmd_decode ⇒ pb_decode ⇒ pb_decode_noinit ⇒ decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> stored_init_cmd_decode
[Called By]- >> nrf_dfu_req_handler_init
nrf_dfu_validation_init_cmd_append (Thumb, 66 bytes, Stack size 24 bytes, nrf_dfu_validation.o(i.nrf_dfu_validation_init_cmd_append), UNUSED)
[Calls]
- >> crc32_compute
- >> __aeabi_memcpy
[Called By]
nrf_dfu_validation_init_cmd_create (Thumb, 42 bytes, Stack size 16 bytes, nrf_dfu_validation.o(i.nrf_dfu_validation_init_cmd_create), UNUSED)
[Calls]
- >> nrf_dfu_settings_progress_reset
[Called By]
nrf_dfu_validation_init_cmd_execute (Thumb, 124 bytes, Stack size 24 bytes, nrf_dfu_validation.o(i.nrf_dfu_validation_init_cmd_execute))
[Stack]
- Max Depth = 3320
- Call Chain = nrf_dfu_validation_init_cmd_execute ⇒ nrf_dfu_validation_prevalidate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_bank1_start_addr
- >> nrf_dfu_validation_prevalidate
- >> update_data_size_get
- >> stored_init_cmd_decode
- >> nrf_dfu_cache_prepare
- >> nrf_dfu_settings_progress_reset
[Called By]- >> nrf_dfu_command_req
- >> nrf_dfu_req_handler_init
nrf_dfu_validation_init_cmd_present (Thumb, 6 bytes, Stack size 0 bytes, nrf_dfu_validation.o(i.nrf_dfu_validation_init_cmd_present))
[Called By]
- >> on_data_obj_write_request
- >> on_data_obj_create_request
- >> nrf_dfu_req_handler_init
nrf_dfu_validation_prevalidate (Thumb, 62 bytes, Stack size 16 bytes, nrf_dfu_validation.o(i.nrf_dfu_validation_prevalidate))
[Stack]
- Max Depth = 3296
- Call Chain = nrf_dfu_validation_prevalidate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_ver_validation_check
- >> nrf_dfu_validation_signature_check
[Called By]- >> nrf_dfu_validation_init_cmd_execute
nrf_dfu_ver_validation_check (Thumb, 122 bytes, Stack size 16 bytes, nrf_dfu_ver_validation.o(i.nrf_dfu_ver_validation_check))
[Stack]
- Max Depth = 44
- Call Chain = nrf_dfu_ver_validation_check ⇒ sd_req_ok ⇒ sd_req_check
[Calls]
[Called By]- >> nrf_dfu_validation_prevalidate
nrf_fstorage_erase (Thumb, 44 bytes, Stack size 24 bytes, nrf_fstorage.o(i.nrf_fstorage_erase))
[Stack]
- Max Depth = 24
- Call Chain = nrf_fstorage_erase
[Calls]
[Called By]
nrf_fstorage_init (Thumb, 8 bytes, Stack size 0 bytes, nrf_fstorage.o(i.nrf_fstorage_init))
[Called By]
nrf_fstorage_is_busy (Thumb, 70 bytes, Stack size 24 bytes, nrf_fstorage.o(i.nrf_fstorage_is_busy))
[Stack]
- Max Depth = 24
- Call Chain = nrf_fstorage_is_busy
[Called By]- >> on_data_obj_execute_request_sched
nrf_fstorage_sdh_req_handler (Thumb, 18 bytes, Stack size 0 bytes, nrf_fstorage_sd.o(i.nrf_fstorage_sdh_req_handler))
[Address Reference Count : 1]
- nrf_fstorage_sd.o(sdh_req_observers0)
nrf_fstorage_sdh_state_handler (Thumb, 28 bytes, Stack size 0 bytes, nrf_fstorage_sd.o(i.nrf_fstorage_sdh_state_handler))
[Stack]
- Max Depth = 96
- Call Chain = nrf_fstorage_sdh_state_handler ⇒ queue_process ⇒ nrf_fstorage_sys_evt_handler ⇒ queue_process (Cycle)
[Calls]
[Address Reference Count : 1]- nrf_fstorage_sd.o(sdh_state_observers0)
nrf_fstorage_sys_evt_handler (Thumb, 150 bytes, Stack size 16 bytes, nrf_fstorage_sd.o(i.nrf_fstorage_sys_evt_handler))
[Stack]
- Max Depth = 112 + In Cycle
- Call Chain = nrf_fstorage_sys_evt_handler ⇒ queue_process (Cycle)
[Calls]- >> nrf_sdh_request_continue
- >> queue_process
- >> queue_free
- >> event_send
[Called By]
[Address Reference Count : 1]- nrf_fstorage_sd.o(sdh_soc_observers0)
nrf_fstorage_write (Thumb, 62 bytes, Stack size 32 bytes, nrf_fstorage.o(i.nrf_fstorage_write))
[Stack]
- Max Depth = 32
- Call Chain = nrf_fstorage_write
[Calls]- >> addr_is_within_bounds
- >> addr_is_aligned32
[Called By]
nrf_nvmc_page_erase (Thumb, 40 bytes, Stack size 0 bytes, nrf_nvmc.o(i.nrf_nvmc_page_erase))
[Called By]
- >> nrf_dfu_settings_additional_erase
- >> erase
nrf_nvmc_write_word (Thumb, 38 bytes, Stack size 0 bytes, nrf_nvmc.o(i.nrf_nvmc_write_word))
[Called By]
- >> nrf_bootloader_mbr_addrs_populate
nrf_nvmc_write_words (Thumb, 58 bytes, Stack size 16 bytes, nrf_nvmc.o(i.nrf_nvmc_write_words))
[Stack]
- Max Depth = 16
- Call Chain = nrf_nvmc_write_words
[Called By]- >> nrf_dfu_settings_additional_erase
- >> write
nrf_sdh_ble_app_ram_start_get (Thumb, 16 bytes, Stack size 0 bytes, nrf_sdh_ble.o(i.nrf_sdh_ble_app_ram_start_get))
[Called By]
- >> nrf_sdh_ble_default_cfg_set
- >> ble_dfu_transport_init
nrf_sdh_ble_default_cfg_set (Thumb, 156 bytes, Stack size 32 bytes, nrf_sdh_ble.o(i.nrf_sdh_ble_default_cfg_set))
[Stack]
- Max Depth = 32
- Call Chain = nrf_sdh_ble_default_cfg_set
[Calls]- >> nrf_sdh_ble_app_ram_start_get
[Called By]- >> ble_dfu_transport_init
nrf_sdh_ble_enable (Thumb, 14 bytes, Stack size 0 bytes, nrf_sdh_ble.o(i.nrf_sdh_ble_enable))
[Called By]
- >> ble_dfu_transport_init
nrf_sdh_disable_request (Thumb, 80 bytes, Stack size 24 bytes, nrf_sdh.o(i.nrf_sdh_disable_request))
[Stack]
- Max Depth = 56
- Call Chain = nrf_sdh_disable_request ⇒ sdh_state_observer_notify ⇒ nrf_section_iter_next ⇒ nrf_section_iter_item_set
[Calls]- >> app_util_critical_region_exit
- >> app_util_critical_region_enter
- >> softdevice_evt_irq_disable
- >> sdh_state_observer_notify
- >> sdh_request_observer_notify
[Called By]- >> ble_dfu_transport_close
- >> nrf_sdh_request_continue
nrf_sdh_enable_request (Thumb, 102 bytes, Stack size 24 bytes, nrf_sdh.o(i.nrf_sdh_enable_request))
[Stack]
- Max Depth = 56
- Call Chain = nrf_sdh_enable_request ⇒ sdh_state_observer_notify ⇒ nrf_section_iter_next ⇒ nrf_section_iter_item_set
[Calls]- >> app_util_critical_region_exit
- >> app_util_critical_region_enter
- >> softdevices_evt_irq_enable
- >> sdh_state_observer_notify
- >> sdh_request_observer_notify
[Called By]- >> ble_dfu_transport_init
- >> nrf_sdh_request_continue
nrf_sdh_evts_poll (Thumb, 32 bytes, Stack size 16 bytes, nrf_sdh.o(i.nrf_sdh_evts_poll))
[Stack]
- Max Depth = 24
- Call Chain = nrf_sdh_evts_poll ⇒ nrf_section_iter_next ⇒ nrf_section_iter_item_set
[Calls]- >> nrf_section_iter_next
- >> nrf_section_iter_init
[Called By]
nrf_sdh_is_enabled (Thumb, 6 bytes, Stack size 0 bytes, nrf_sdh.o(i.nrf_sdh_is_enabled))
[Called By]
nrf_sdh_request_continue (Thumb, 22 bytes, Stack size 0 bytes, nrf_sdh.o(i.nrf_sdh_request_continue))
[Stack]
- Max Depth = 56
- Call Chain = nrf_sdh_request_continue ⇒ nrf_sdh_enable_request ⇒ sdh_state_observer_notify ⇒ nrf_section_iter_next ⇒ nrf_section_iter_item_set
[Calls]- >> nrf_sdh_enable_request
- >> nrf_sdh_disable_request
[Called By]- >> nrf_fstorage_sys_evt_handler
nrf_section_iter_init (Thumb, 10 bytes, Stack size 0 bytes, nrf_section_iter.o(i.nrf_section_iter_init))
[Called By]
- >> nrf_sdh_soc_evts_poll
- >> nrf_sdh_ble_evts_poll
- >> nrf_sdh_evts_poll
- >> sdh_state_observer_notify
- >> sdh_request_observer_notify
nrf_section_iter_next (Thumb, 32 bytes, Stack size 0 bytes, nrf_section_iter.o(i.nrf_section_iter_next))
[Stack]
- Max Depth = 8
- Call Chain = nrf_section_iter_next ⇒ nrf_section_iter_item_set
[Calls]- >> nrf_section_iter_item_set
[Called By]- >> nrf_sdh_soc_evts_poll
- >> nrf_sdh_ble_evts_poll
- >> nrf_sdh_evts_poll
- >> sdh_state_observer_notify
- >> sdh_request_observer_notify
nrf_svc_handler_c (Thumb, 84 bytes, Stack size 24 bytes, nrf_svc_handler.o(i.nrf_svc_handler_c))
[Stack]
- Max Depth = 24
- Call Chain = nrf_svc_handler_c
[Called By]
pb_decode (Thumb, 30 bytes, Stack size 16 bytes, pb_decode.o(i.pb_decode))
[Stack]
- Max Depth = 296
- Call Chain = pb_decode ⇒ pb_decode_noinit ⇒ decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> pb_message_set_to_defaults
- >> pb_decode_noinit
[Called By]- >> stored_init_cmd_decode
- >> pb_dec_submessage
pb_decode_fixed32 (Thumb, 32 bytes, Stack size 16 bytes, pb_decode.o(i.pb_decode_fixed32))
[Stack]
- Max Depth = 48
- Call Chain = pb_decode_fixed32 ⇒ pb_read ⇒ pb_read (Cycle)
[Calls]
[Called By]
pb_decode_fixed64 (Thumb, 92 bytes, Stack size 16 bytes, pb_decode.o(i.pb_decode_fixed64))
[Stack]
- Max Depth = 48
- Call Chain = pb_decode_fixed64 ⇒ pb_read ⇒ pb_read (Cycle)
[Calls]
[Called By]
pb_decode_noinit (Thumb, 390 bytes, Stack size 152 bytes, pb_decode.o(i.pb_decode_noinit))
[Stack]
- Max Depth = 280
- Call Chain = pb_decode_noinit ⇒ decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> iter_from_extension
- >> decode_field
- >> pb_field_iter_next
- >> pb_field_iter_find
- >> pb_field_iter_begin
- >> pb_skip_field
- >> pb_decode_tag
[Called By]- >> pb_decode
- >> pb_dec_submessage
pb_decode_svarint (Thumb, 58 bytes, Stack size 16 bytes, pb_decode.o(i.pb_decode_svarint))
[Stack]
- Max Depth = 56
- Call Chain = pb_decode_svarint ⇒ pb_decode_varint ⇒ pb_readbyte
[Calls]
[Called By]
pb_decode_tag (Thumb, 66 bytes, Stack size 24 bytes, pb_decode.o(i.pb_decode_tag))
[Stack]
- Max Depth = 56
- Call Chain = pb_decode_tag ⇒ pb_decode_varint32 ⇒ pb_readbyte
[Calls]
[Called By]
pb_decode_varint (Thumb, 74 bytes, Stack size 32 bytes, pb_decode.o(i.pb_decode_varint))
[Stack]
- Max Depth = 40
- Call Chain = pb_decode_varint ⇒ pb_readbyte
[Calls]- >> pb_readbyte
- >> __aeabi_llsl
[Called By]- >> pb_dec_varint
- >> pb_dec_uvarint
- >> pb_decode_svarint
pb_field_iter_begin (Thumb, 34 bytes, Stack size 0 bytes, pb_common.o(i.pb_field_iter_begin))
[Called By]
- >> pb_message_set_to_defaults
- >> iter_from_extension
- >> pb_field_iter_next
- >> pb_decode_noinit
pb_field_iter_find (Thumb, 46 bytes, Stack size 16 bytes, pb_common.o(i.pb_field_iter_find))
[Stack]
- Max Depth = 28
- Call Chain = pb_field_iter_find ⇒ pb_field_iter_next
[Calls]
[Called By]
pb_field_iter_next (Thumb, 126 bytes, Stack size 12 bytes, pb_common.o(i.pb_field_iter_next))
[Stack]
- Max Depth = 12
- Call Chain = pb_field_iter_next
[Calls]
[Called By]- >> pb_message_set_to_defaults
- >> pb_field_iter_find
- >> pb_decode_noinit
pb_istream_from_buffer (Thumb, 14 bytes, Stack size 8 bytes, pb_decode.o(i.pb_istream_from_buffer))
[Stack]
- Max Depth = 8
- Call Chain = pb_istream_from_buffer
[Called By]- >> stored_init_cmd_decode
- >> decode_callback_field
pb_make_string_substream (Thumb, 54 bytes, Stack size 16 bytes, pb_decode.o(i.pb_make_string_substream))
[Stack]
- Max Depth = 48
- Call Chain = pb_make_string_substream ⇒ pb_decode_varint32 ⇒ pb_readbyte
[Calls]
[Called By]- >> pb_dec_submessage
- >> decode_static_field
- >> decode_callback_field
pb_read (Thumb, 84 bytes, Stack size 32 bytes, pb_decode.o(i.pb_read))
[Stack]
- Max Depth = 32 + In Cycle
- Call Chain = pb_read ⇒ pb_read (Cycle)
[Calls]
[Called By]- >> read_raw_value
- >> pb_dec_string
- >> pb_dec_bytes
- >> pb_skip_field
- >> pb_read
- >> pb_decode_fixed64
- >> pb_decode_fixed32
pb_skip_field (Thumb, 90 bytes, Stack size 16 bytes, pb_decode.o(i.pb_skip_field))
[Stack]
- Max Depth = 48
- Call Chain = pb_skip_field ⇒ pb_decode_varint32 ⇒ pb_readbyte
[Calls]- >> pb_decode_varint32
- >> pb_read
[Called By]- >> decode_callback_field
- >> pb_decode_noinit
postvalidate (Thumb, 184 bytes, Stack size 112 bytes, nrf_dfu_validation.o(i.postvalidate))
[Stack]
- Max Depth = 3744
- Call Chain = postvalidate ⇒ postvalidate_sd_bl ⇒ boot_validation_extract ⇒ nrf_dfu_validation_boot_validate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_bank_invalidate
- >> crc32_compute
- >> fw_hash_ok
- >> postvalidate_sd_bl
- >> boot_validation_extract
- >> nrf_dfu_settings_progress_reset
- >> __aeabi_memcpy
[Called By]- >> nrf_dfu_validation_activation_prepare
settings_backup (Thumb, 12 bytes, Stack size 0 bytes, nrf_dfu_settings.o(i.settings_backup))
[Stack]
- Max Depth = 64
- Call Chain = settings_backup ⇒ settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]
[Called By]- >> nrf_dfu_settings_backup
- >> nrf_dfu_settings_write_and_backup
sha256_final (Thumb, 272 bytes, Stack size 16 bytes, sha256.o(i.sha256_final))
[Stack]
- Max Depth = 340
- Call Chain = sha256_final ⇒ sha256_transform
[Calls]- >> sha256_transform
- >> __aeabi_memclr4
[Called By]- >> nrf_sw_backend_hash_sha256_finalize
sha256_init (Thumb, 50 bytes, Stack size 0 bytes, sha256.o(i.sha256_init))
[Called By]
- >> nrf_sw_backend_hash_sha256_init
sha256_transform (Thumb, 294 bytes, Stack size 324 bytes, sha256.o(i.sha256_transform))
[Stack]
- Max Depth = 324
- Call Chain = sha256_transform
[Called By]- >> sha256_update
- >> sha256_final
sha256_update (Thumb, 84 bytes, Stack size 24 bytes, sha256.o(i.sha256_update))
[Stack]
- Max Depth = 348
- Call Chain = sha256_update ⇒ sha256_transform
[Calls]
[Called By]- >> nrf_sw_backend_hash_sha256_update
Local Symbols
dfu_observer (Thumb, 2 bytes, Stack size 0 bytes, main.o(i.dfu_observer))
[Address Reference Count : 1]
on_error (Thumb, 26 bytes, Stack size 0 bytes, main.o(i.on_error))
[Called By]
- >> main
- >> app_error_handler_bare
- >> app_error_fault_handler
boot_validate (Thumb, 16 bytes, Stack size 0 bytes, nrf_bootloader.o(i.boot_validate))
[Stack]
- Max Depth = 3296
- Call Chain = boot_validate ⇒ nrf_dfu_validation_boot_validate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_validation_boot_validate
[Called By]
bootloader_reset (Thumb, 28 bytes, Stack size 8 bytes, nrf_bootloader.o(i.bootloader_reset))
[Stack]
- Max Depth = 72
- Call Chain = bootloader_reset ⇒ nrf_dfu_settings_backup ⇒ settings_backup ⇒ settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]- >> nrf_dfu_settings_backup
- >> do_reset
[Called By]- >> inactivity_timeout
- >> dfu_observer
- >> nrf_bootloader_init
dfu_enter_check (Thumb, 116 bytes, Stack size 16 bytes, nrf_bootloader.o(i.dfu_enter_check))
[Stack]
- Max Depth = 3312
- Call Chain = dfu_enter_check ⇒ boot_validate ⇒ nrf_dfu_validation_boot_validate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_bank0_start_addr
- >> nrf_power_gpregret_get
- >> boot_validate
[Called By]
dfu_observer (Thumb, 62 bytes, Stack size 8 bytes, nrf_bootloader.o(i.dfu_observer))
[Stack]
- Max Depth = 80
- Call Chain = dfu_observer ⇒ bootloader_reset ⇒ nrf_dfu_settings_backup ⇒ settings_backup ⇒ settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]- >> nrf_dfu_settings_reinit
- >> nrf_bootloader_dfu_inactivity_timer_restart
- >> bootloader_reset
[Address Reference Count : 1]- nrf_bootloader.o(i.nrf_bootloader_init)
do_reset (Thumb, 26 bytes, Stack size 0 bytes, nrf_bootloader.o(i.do_reset))
[Called By]
[Address Reference Count : 1]- nrf_bootloader.o(i.bootloader_reset)
flash_write_callback (Thumb, 8 bytes, Stack size 0 bytes, nrf_bootloader.o(i.flash_write_callback))
[Address Reference Count : 1]
- nrf_bootloader.o(i.nrf_bootloader_init)
inactivity_timeout (Thumb, 6 bytes, Stack size 0 bytes, nrf_bootloader.o(i.inactivity_timeout))
[Stack]
- Max Depth = 72
- Call Chain = inactivity_timeout ⇒ bootloader_reset ⇒ nrf_dfu_settings_backup ⇒ settings_backup ⇒ settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]
[Address Reference Count : 2]- nrf_bootloader.o(i.dfu_observer)
- nrf_bootloader.o(i.nrf_bootloader_init)
nrf_power_gpregret_get (Thumb, 8 bytes, Stack size 0 bytes, nrf_bootloader.o(i.nrf_power_gpregret_get))
[Called By]
- >> dfu_enter_check
- >> nrf_bootloader_init
nrf_rtc_event_clear (Thumb, 12 bytes, Stack size 8 bytes, nrf_bootloader_dfu_timers.o(i.nrf_rtc_event_clear))
[Stack]
- Max Depth = 8
- Call Chain = nrf_rtc_event_clear
[Called By]- >> timer_init
- >> timer_activate
- >> RTC2_IRQHandler
timer_activate (Thumb, 86 bytes, Stack size 16 bytes, nrf_bootloader_dfu_timers.o(i.timer_activate))
[Stack]
- Max Depth = 24
- Call Chain = timer_activate ⇒ nrf_rtc_event_clear
[Calls]
[Called By]- >> timer_start
- >> RTC2_IRQHandler
timer_init (Thumb, 96 bytes, Stack size 16 bytes, nrf_bootloader_dfu_timers.o(i.timer_init))
[Stack]
- Max Depth = 24
- Call Chain = timer_init ⇒ nrf_rtc_event_clear
[Calls]
[Called By]
timer_start (Thumb, 26 bytes, Stack size 16 bytes, nrf_bootloader_dfu_timers.o(i.timer_start))
[Stack]
- Max Depth = 40
- Call Chain = timer_start ⇒ timer_init ⇒ nrf_rtc_event_clear
[Calls]- >> timer_init
- >> timer_activate
[Called By]- >> nrf_bootloader_dfu_inactivity_timer_restart
- >> nrf_bootloader_wdt_feed_timer_start
timer_stop (Thumb, 16 bytes, Stack size 0 bytes, nrf_bootloader_dfu_timers.o(i.timer_stop))
[Called By]
- >> nrf_bootloader_dfu_inactivity_timer_restart
- >> RTC2_IRQHandler
app_activate (Thumb, 66 bytes, Stack size 16 bytes, nrf_bootloader_fw_activation.o(i.app_activate))
[Stack]
- Max Depth = 144
- Call Chain = app_activate ⇒ image_copy ⇒ nrf_dfu_settings_write_and_backup ⇒ nrf_dfu_settings_write ⇒ settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]- >> nrf_dfu_bank0_start_addr
- >> crc32_compute
- >> image_copy
[Called By]- >> nrf_bootloader_fw_activate
bl_activate (Thumb, 90 bytes, Stack size 16 bytes, nrf_bootloader_fw_activation.o(i.bl_activate))
[Stack]
- Max Depth = 40
- Call Chain = bl_activate ⇒ nrf_bootloader_wdt_feed ⇒ wdt_feed
[Calls]- >> nrf_bootloader_wdt_feed
- >> nrf_dfu_mbr_copy_bl
- >> nrf_dfu_bank1_start_addr
- >> memcmp
[Called By]- >> nrf_bootloader_fw_activate
flash_write_callback (Thumb, 8 bytes, Stack size 0 bytes, nrf_bootloader_fw_activation.o(i.flash_write_callback))
[Address Reference Count : 1]
- nrf_bootloader_fw_activation.o(i.nrf_bootloader_fw_activate)
image_copy (Thumb, 140 bytes, Stack size 32 bytes, nrf_bootloader_fw_activation.o(i.image_copy))
[Stack]
- Max Depth = 128
- Call Chain = image_copy ⇒ nrf_dfu_settings_write_and_backup ⇒ nrf_dfu_settings_write ⇒ settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]- >> nrf_bootloader_wdt_init
- >> nrf_dfu_settings_write_and_backup
- >> nrf_dfu_flash_store
- >> nrf_dfu_flash_erase
[Called By]- >> sd_activate
- >> app_activate
sd_activate (Thumb, 74 bytes, Stack size 16 bytes, nrf_bootloader_fw_activation.o(i.sd_activate))
[Stack]
- Max Depth = 144
- Call Chain = sd_activate ⇒ image_copy ⇒ nrf_dfu_settings_write_and_backup ⇒ nrf_dfu_settings_write ⇒ settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]- >> nrf_dfu_softdevice_start_address
- >> nrf_dfu_settings_write_and_backup
- >> image_copy
[Called By]- >> nrf_bootloader_fw_activate
nrf_wdt_started (Thumb, 12 bytes, Stack size 0 bytes, nrf_bootloader_wdt.o(i.nrf_wdt_started))
[Called By]
- >> nrf_bootloader_wdt_init
- >> nrf_bootloader_wdt_feed
- >> wdt_feed
wdt_feed (Thumb, 48 bytes, Stack size 16 bytes, nrf_bootloader_wdt.o(i.wdt_feed))
[Stack]
- Max Depth = 16
- Call Chain = wdt_feed
[Calls]
[Called By]- >> nrf_bootloader_wdt_init
- >> nrf_bootloader_wdt_feed
- >> wdt_feed_timer_handler
wdt_feed_timer_handler (Thumb, 4 bytes, Stack size 0 bytes, nrf_bootloader_wdt.o(i.wdt_feed_timer_handler))
[Stack]
- Max Depth = 16
- Call Chain = wdt_feed_timer_handler ⇒ wdt_feed
[Calls]
[Address Reference Count : 1]- nrf_bootloader_wdt.o(i.nrf_bootloader_wdt_init)
verify_context (Thumb, 26 bytes, Stack size 0 bytes, nrf_crypto_hash.o(i.verify_context))
[Called By]
- >> nrf_crypto_hash_update
- >> nrf_crypto_hash_finalize
nrf_sw_backend_hash_sha256_finalize (Thumb, 36 bytes, Stack size 8 bytes, nrf_sw_backend_hash.o(i.nrf_sw_backend_hash_sha256_finalize))
[Stack]
- Max Depth = 348
- Call Chain = nrf_sw_backend_hash_sha256_finalize ⇒ sha256_final ⇒ sha256_transform
[Calls]
[Address Reference Count : 1]- nrf_sw_backend_hash.o(.constdata)
nrf_sw_backend_hash_sha256_init (Thumb, 6 bytes, Stack size 0 bytes, nrf_sw_backend_hash.o(i.nrf_sw_backend_hash_sha256_init))
[Calls]
[Address Reference Count : 1]- nrf_sw_backend_hash.o(.constdata)
nrf_sw_backend_hash_sha256_update (Thumb, 6 bytes, Stack size 0 bytes, nrf_sw_backend_hash.o(i.nrf_sw_backend_hash_sha256_update))
[Stack]
- Max Depth = 348
- Call Chain = nrf_sw_backend_hash_sha256_update ⇒ sha256_update ⇒ sha256_transform
[Calls]
[Address Reference Count : 1]- nrf_sw_backend_hash.o(.constdata)
dfu_observer (Thumb, 36 bytes, Stack size 8 bytes, nrf_dfu.o(i.dfu_observer))
[Stack]
- Max Depth = 32
- Call Chain = dfu_observer ⇒ nrf_dfu_transports_close
[Calls]- >> nrf_dfu_transports_close
[Called By]
[Address Reference Count : 1]- nrf_dfu.o(i.nrf_dfu_init)
advertising_init (Thumb, 96 bytes, Stack size 32 bytes, nrf_dfu_ble.o(i.advertising_init))
[Stack]
- Max Depth = 32
- Call Chain = advertising_init
[Called By]
advertising_start (Thumb, 44 bytes, Stack size 32 bytes, nrf_dfu_ble.o(i.advertising_start))
[Stack]
- Max Depth = 64
- Call Chain = advertising_start ⇒ advertising_init
[Calls]- >> advertising_init
- >> __aeabi_memcpy4
[Called By]- >> ble_dfu_transport_init
- >> ble_evt_handler
ble_dfu_req_handler_callback (Thumb, 180 bytes, Stack size 40 bytes, nrf_dfu_ble.o(i.ble_dfu_req_handler_callback))
[Stack]
- Max Depth = 72
- Call Chain = ble_dfu_req_handler_callback ⇒ response_send
[Calls]- >> ext_error_set
- >> ext_error_get
- >> uint32_encode
- >> response_send
- >> response_crc_add
- >> __aeabi_memclr4
[Address Reference Count : 1]- nrf_dfu_ble.o(.constdata)
ble_evt_handler (Thumb, 456 bytes, Stack size 40 bytes, nrf_dfu_ble.o(i.ble_evt_handler))
[Stack]
- Max Depth = 132
- Call Chain = ble_evt_handler ⇒ on_ctrl_pt_write ⇒ nrf_dfu_req_handler_on_req ⇒ app_sched_event_put ⇒ app_util_critical_region_enter
[Calls]- >> app_error_handler_bare
- >> nrf_dfu_req_handler_on_req
- >> nrf_balloc_free
- >> nrf_balloc_alloc
- >> on_rw_authorize_req
- >> on_ctrl_pt_write
- >> advertising_start
- >> __aeabi_memcpy4
- >> __aeabi_memcpy
[Address Reference Count : 1]- nrf_dfu_ble.o(sdh_ble_observers2)
gap_params_init (Thumb, 84 bytes, Stack size 16 bytes, nrf_dfu_ble.o(i.gap_params_init))
[Stack]
- Max Depth = 16
- Call Chain = gap_params_init
[Called By]- >> ble_dfu_transport_init
on_ctrl_pt_write (Thumb, 98 bytes, Stack size 40 bytes, nrf_dfu_ble.o(i.on_ctrl_pt_write))
[Stack]
- Max Depth = 92
- Call Chain = on_ctrl_pt_write ⇒ nrf_dfu_req_handler_on_req ⇒ app_sched_event_put ⇒ app_util_critical_region_enter
[Calls]- >> nrf_dfu_req_handler_on_req
- >> nrf_dfu_transports_close
- >> __aeabi_memcpy4
[Called By]
on_flash_write (Thumb, 8 bytes, Stack size 0 bytes, nrf_dfu_ble.o(i.on_flash_write))
[Stack]
- Max Depth = 28
- Call Chain = on_flash_write ⇒ nrf_balloc_free ⇒ app_util_critical_region_enter
[Calls]
[Address Reference Count : 1]- nrf_dfu_ble.o(.constdata)
on_rw_authorize_req (Thumb, 128 bytes, Stack size 40 bytes, nrf_dfu_ble.o(i.on_rw_authorize_req))
[Stack]
- Max Depth = 40
- Call Chain = on_rw_authorize_req
[Calls]- >> ble_srv_is_notification_enabled
[Called By]
response_crc_add (Thumb, 32 bytes, Stack size 16 bytes, nrf_dfu_ble.o(i.response_crc_add))
[Stack]
- Max Depth = 16
- Call Chain = response_crc_add
[Calls]
[Called By]- >> ble_dfu_req_handler_callback
response_send (Thumb, 40 bytes, Stack size 32 bytes, nrf_dfu_ble.o(i.response_send))
[Stack]
- Max Depth = 32
- Call Chain = response_send
[Called By]- >> ble_dfu_req_handler_callback
uint32_encode (Thumb, 18 bytes, Stack size 0 bytes, nrf_dfu_ble.o(i.uint32_encode))
[Called By]
- >> response_crc_add
- >> ble_dfu_req_handler_callback
cmd_response_offset_and_crc_set (Thumb, 12 bytes, Stack size 0 bytes, nrf_dfu_req_handler.o(i.cmd_response_offset_and_crc_set), UNUSED)
[Called By]
ext_err_code_handle (Thumb, 14 bytes, Stack size 0 bytes, nrf_dfu_req_handler.o(i.ext_err_code_handle))
[Calls]
[Called By]- >> on_data_obj_execute_request_sched
- >> nrf_dfu_command_req
nrf_dfu_command_req (Thumb, 142 bytes, Stack size 16 bytes, nrf_dfu_req_handler.o(i.nrf_dfu_command_req), UNUSED)
[Calls]
- >> nrf_dfu_settings_write_and_backup
- >> nrf_dfu_validation_init_cmd_execute
- >> nrf_dfu_validation_init_cmd_create
- >> nrf_dfu_validation_init_cmd_append
- >> ext_err_code_handle
- >> cmd_response_offset_and_crc_set
[Called By]- >> nrf_dfu_req_handler_req_process
nrf_dfu_data_req (Thumb, 108 bytes, Stack size 16 bytes, nrf_dfu_req_handler.o(i.nrf_dfu_data_req), UNUSED)
[Calls]
- >> on_data_obj_write_request
- >> on_data_obj_execute_request_sched
- >> on_data_obj_create_request
[Called By]- >> nrf_dfu_req_handler_req_process
nrf_dfu_req_handler_req (Thumb, 4 bytes, Stack size 0 bytes, nrf_dfu_req_handler.o(i.nrf_dfu_req_handler_req))
[Address Reference Count : 1]
- nrf_dfu_req_handler.o(i.nrf_dfu_req_handler_on_req)
nrf_dfu_req_handler_req_process (Thumb, 136 bytes, Stack size 40 bytes, nrf_dfu_req_handler.o(i.nrf_dfu_req_handler_req_process), UNUSED)
[Calls]
- >> nrf_dfu_data_req
- >> nrf_dfu_command_req
- >> __aeabi_memcpy4
on_data_obj_create_request (Thumb, 108 bytes, Stack size 24 bytes, nrf_dfu_req_handler.o(i.on_data_obj_create_request), UNUSED)
[Calls]
- >> nrf_dfu_flash_erase
- >> nrf_dfu_validation_init_cmd_present
[Called By]
on_data_obj_execute_request_sched (Thumb, 100 bytes, Stack size 32 bytes, nrf_dfu_req_handler.o(i.on_data_obj_execute_request_sched))
[Stack]
- Max Depth = 3776
- Call Chain = on_data_obj_execute_request_sched ⇒ nrf_dfu_validation_activation_prepare ⇒ postvalidate ⇒ postvalidate_sd_bl ⇒ boot_validation_extract ⇒ nrf_dfu_validation_boot_validate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_settings_write_and_backup
- >> nrf_fstorage_is_busy
- >> nrf_dfu_validation_activation_prepare
- >> app_sched_event_put
- >> ext_err_code_handle
- >> __aeabi_memcpy4
[Called By]
[Address Reference Count : 1]- nrf_dfu_req_handler.o(i.on_data_obj_execute_request_sched)
on_data_obj_write_request (Thumb, 118 bytes, Stack size 24 bytes, nrf_dfu_req_handler.o(i.on_data_obj_write_request), UNUSED)
[Calls]
- >> nrf_dfu_flash_store
- >> crc32_compute
- >> nrf_dfu_validation_init_cmd_present
[Called By]
on_dfu_complete (Thumb, 8 bytes, Stack size 0 bytes, nrf_dfu_req_handler.o(i.on_dfu_complete))
[Address Reference Count : 1]
- nrf_dfu_req_handler.o(i.on_data_obj_execute_request_sched)
boot_validation_crc (Thumb, 12 bytes, Stack size 0 bytes, nrf_dfu_settings.o(i.boot_validation_crc))
[Stack]
- Max Depth = 20
- Call Chain = boot_validation_crc ⇒ crc32_compute
[Calls]
[Called By]- >> nrf_dfu_settings_reinit
- >> nrf_dfu_settings_write
crc_ok (Thumb, 30 bytes, Stack size 8 bytes, nrf_dfu_settings.o(i.crc_ok))
[Stack]
- Max Depth = 28
- Call Chain = crc_ok ⇒ settings_crc_get ⇒ crc32_compute
[Calls]
[Called By]- >> nrf_dfu_settings_reinit
settings_crc_get (Thumb, 10 bytes, Stack size 0 bytes, nrf_dfu_settings.o(i.settings_crc_get))
[Stack]
- Max Depth = 20
- Call Chain = settings_crc_get ⇒ crc32_compute
[Calls]
[Called By]- >> crc_ok
- >> nrf_dfu_settings_write
settings_write (Thumb, 80 bytes, Stack size 24 bytes, nrf_dfu_settings.o(i.settings_write))
[Stack]
- Max Depth = 64
- Call Chain = settings_write ⇒ nrf_dfu_flash_store ⇒ nrf_fstorage_write
[Calls]- >> nrf_dfu_flash_store
- >> nrf_dfu_flash_erase
- >> memcmp
- >> __aeabi_memcpy
[Called By]- >> settings_backup
- >> nrf_dfu_settings_write
boot_validation_extract (Thumb, 146 bytes, Stack size 160 bytes, nrf_dfu_validation.o(i.boot_validation_extract))
[Stack]
- Max Depth = 3456
- Call Chain = boot_validation_extract ⇒ nrf_dfu_validation_boot_validate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_validation_boot_validate
- >> nrf_crypto_hash_calculate
- >> crc32_compute
- >> __aeabi_memclr4
- >> __aeabi_memclr
- >> __aeabi_memcpy
[Called By]- >> postvalidate
- >> postvalidate_sd_bl
crypto_init (Thumb, 46 bytes, Stack size 72 bytes, nrf_dfu_validation.o(i.crypto_init))
[Stack]
- Max Depth = 112
- Call Chain = crypto_init ⇒ nrf_crypto_ecc_public_key_from_raw ⇒ nrf_crypto_backend_micro_ecc_public_key_from_raw ⇒ nrf_crypto_internal_double_swap_endian
[Calls]- >> nrf_crypto_internal_double_swap_endian
- >> nrf_crypto_init
- >> nrf_crypto_ecc_public_key_from_raw
[Called By]- >> nrf_dfu_validation_signature_check
- >> nrf_dfu_validation_hash_ok
is_major_softdevice_update (Thumb, 88 bytes, Stack size 8 bytes, nrf_dfu_validation.o(i.is_major_softdevice_update))
[Stack]
- Max Depth = 8
- Call Chain = is_major_softdevice_update
[Called By]
nrf_dfu_validation_hash_ok (Thumb, 90 bytes, Stack size 192 bytes, nrf_dfu_validation.o(i.nrf_dfu_validation_hash_ok))
[Stack]
- Max Depth = 304
- Call Chain = nrf_dfu_validation_hash_ok ⇒ crypto_init ⇒ nrf_crypto_ecc_public_key_from_raw ⇒ nrf_crypto_backend_micro_ecc_public_key_from_raw ⇒ nrf_crypto_internal_double_swap_endian
[Calls]- >> nrf_crypto_internal_swap_endian
- >> nrf_crypto_hash_calculate
- >> crypto_init
- >> memcmp
- >> __aeabi_memclr4
[Called By]- >> nrf_dfu_validation_boot_validate
- >> fw_hash_ok
nrf_dfu_validation_signature_check (Thumb, 140 bytes, Stack size 160 bytes, nrf_dfu_validation.o(i.nrf_dfu_validation_signature_check))
[Stack]
- Max Depth = 3280
- Call Chain = nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_crypto_internal_double_swap_endian_in_place
- >> nrf_crypto_hash_calculate
- >> nrf_crypto_ecdsa_verify
- >> crypto_init
- >> __aeabi_memclr4
- >> __aeabi_memcpy
[Called By]- >> nrf_dfu_validation_boot_validate
- >> nrf_dfu_validation_prevalidate
pb_decoding_callback (Thumb, 52 bytes, Stack size 8 bytes, nrf_dfu_validation.o(i.pb_decoding_callback))
[Stack]
- Max Depth = 8
- Call Chain = pb_decoding_callback
[Address Reference Count : 1]- nrf_dfu_validation.o(i.stored_init_cmd_decode)
postvalidate_sd_bl (Thumb, 272 bytes, Stack size 176 bytes, nrf_dfu_validation.o(i.postvalidate_sd_bl))
[Stack]
- Max Depth = 3632
- Call Chain = postvalidate_sd_bl ⇒ boot_validation_extract ⇒ nrf_dfu_validation_boot_validate ⇒ nrf_dfu_validation_signature_check ⇒ nrf_crypto_ecdsa_verify ⇒ nrf_crypto_backend_micro_ecc_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_bank_invalidate
- >> is_major_softdevice_update
- >> boot_validation_extract
- >> __aeabi_memclr4
- >> __aeabi_memcpy4
- >> __aeabi_memcpy
[Called By]
stored_init_cmd_decode (Thumb, 172 bytes, Stack size 32 bytes, nrf_dfu_validation.o(i.stored_init_cmd_decode))
[Stack]
- Max Depth = 328
- Call Chain = stored_init_cmd_decode ⇒ pb_decode ⇒ pb_decode_noinit ⇒ decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> pb_istream_from_buffer
- >> pb_decode
- >> __aeabi_memclr4
[Called By]- >> nrf_dfu_validation_init_cmd_execute
- >> nrf_dfu_validation_init
update_data_size_get (Thumb, 84 bytes, Stack size 12 bytes, nrf_dfu_validation.o(i.update_data_size_get))
[Stack]
- Max Depth = 12
- Call Chain = update_data_size_get
[Called By]- >> nrf_dfu_validation_init_cmd_execute
sd_req_check (Thumb, 64 bytes, Stack size 20 bytes, nrf_dfu_ver_validation.o(i.sd_req_check))
[Stack]
- Max Depth = 20
- Call Chain = sd_req_check
[Called By]
sd_req_ok (Thumb, 100 bytes, Stack size 8 bytes, nrf_dfu_ver_validation.o(i.sd_req_ok))
[Stack]
- Max Depth = 28
- Call Chain = sd_req_ok ⇒ sd_req_check
[Calls]
[Called By]- >> nrf_dfu_ver_validation_check
addr_is_aligned32 (Thumb, 12 bytes, Stack size 0 bytes, nrf_fstorage.o(i.addr_is_aligned32))
[Called By]
addr_is_within_bounds (Thumb, 24 bytes, Stack size 0 bytes, nrf_fstorage.o(i.addr_is_within_bounds))
[Called By]
- >> nrf_fstorage_write
- >> nrf_fstorage_erase
erase (Thumb, 68 bytes, Stack size 32 bytes, nrf_fstorage_nvmc.o(i.erase))
[Stack]
- Max Depth = 88
- Call Chain = erase ⇒ event_send
[Calls]- >> nrf_nvmc_page_erase
- >> event_send
- >> nrf_atomic_flag_set_fetch
- >> nrf_atomic_flag_clear
[Address Reference Count : 1]- nrf_fstorage_nvmc.o(.constdata)
event_send (Thumb, 54 bytes, Stack size 56 bytes, nrf_fstorage_nvmc.o(i.event_send))
[Stack]
- Max Depth = 56
- Call Chain = event_send
[Calls]
[Called By]
init (Thumb, 8 bytes, Stack size 0 bytes, nrf_fstorage_nvmc.o(i.init))
[Address Reference Count : 1]
- nrf_fstorage_nvmc.o(.constdata)
is_busy (Thumb, 12 bytes, Stack size 0 bytes, nrf_fstorage_nvmc.o(i.is_busy))
[Address Reference Count : 1]
- nrf_fstorage_nvmc.o(.constdata)
read (Thumb, 14 bytes, Stack size 8 bytes, nrf_fstorage_nvmc.o(i.read))
[Stack]
- Max Depth = 8
- Call Chain = read
[Calls]
[Address Reference Count : 1]- nrf_fstorage_nvmc.o(.constdata)
rmap (Thumb, 4 bytes, Stack size 0 bytes, nrf_fstorage_nvmc.o(i.rmap))
[Address Reference Count : 1]
- nrf_fstorage_nvmc.o(.constdata)
uninit (Thumb, 12 bytes, Stack size 8 bytes, nrf_fstorage_nvmc.o(i.uninit))
[Stack]
- Max Depth = 16
- Call Chain = uninit ⇒ nrf_atomic_flag_clear ⇒ nrf_atomic_u32_and
[Calls]
[Address Reference Count : 1]- nrf_fstorage_nvmc.o(.constdata)
wmap (Thumb, 4 bytes, Stack size 0 bytes, nrf_fstorage_nvmc.o(i.wmap))
[Address Reference Count : 1]
- nrf_fstorage_nvmc.o(.constdata)
write (Thumb, 64 bytes, Stack size 32 bytes, nrf_fstorage_nvmc.o(i.write))
[Stack]
- Max Depth = 88
- Call Chain = write ⇒ event_send
[Calls]- >> nrf_nvmc_write_words
- >> event_send
- >> nrf_atomic_flag_set_fetch
- >> nrf_atomic_flag_clear
[Address Reference Count : 1]- nrf_fstorage_nvmc.o(.constdata)
erase (Thumb, 72 bytes, Stack size 32 bytes, nrf_fstorage_sd.o(i.erase))
[Stack]
- Max Depth = 136
- Call Chain = erase ⇒ queue_start ⇒ queue_process ⇒ nrf_fstorage_sys_evt_handler ⇒ queue_process (Cycle)
[Calls]- >> queue_start
- >> nrf_atfifo_item_put
- >> nrf_atfifo_item_alloc
- >> __aeabi_memclr4
[Address Reference Count : 1]- nrf_fstorage_sd.o(.constdata)
event_send (Thumb, 84 bytes, Stack size 40 bytes, nrf_fstorage_sd.o(i.event_send))
[Stack]
- Max Depth = 40
- Call Chain = event_send
[Calls]
[Called By]- >> nrf_fstorage_sys_evt_handler
- >> queue_process
init (Thumb, 46 bytes, Stack size 8 bytes, nrf_fstorage_sd.o(i.init))
[Stack]
- Max Depth = 16
- Call Chain = init ⇒ nrf_atomic_flag_set_fetch ⇒ nrf_atomic_u32_fetch_or
[Calls]- >> nrf_sdh_is_enabled
- >> nrf_atomic_flag_set_fetch
- >> nrf_atfifo_init
[Address Reference Count : 1]- nrf_fstorage_sd.o(.constdata)
is_busy (Thumb, 12 bytes, Stack size 0 bytes, nrf_fstorage_sd.o(i.is_busy))
[Address Reference Count : 1]
- nrf_fstorage_sd.o(.constdata)
queue_free (Thumb, 10 bytes, Stack size 0 bytes, nrf_fstorage_sd.o(i.queue_free))
[Stack]
- Max Depth = 8
- Call Chain = queue_free ⇒ nrf_atfifo_item_free
[Calls]
[Called By]- >> nrf_fstorage_sys_evt_handler
- >> queue_process
queue_process (Thumb, 142 bytes, Stack size 24 bytes, nrf_fstorage_sd.o(i.queue_process))
[Stack]
- Max Depth = 96
- Call Chain = queue_process ⇒ nrf_fstorage_sys_evt_handler ⇒ queue_process (Cycle)
[Calls]- >> nrf_fstorage_sys_evt_handler
- >> queue_free
- >> event_send
- >> nrf_atfifo_item_get
[Called By]- >> nrf_fstorage_sys_evt_handler
- >> nrf_fstorage_sdh_state_handler
- >> queue_start
queue_start (Thumb, 30 bytes, Stack size 8 bytes, nrf_fstorage_sd.o(i.queue_start))
[Stack]
- Max Depth = 104
- Call Chain = queue_start ⇒ queue_process ⇒ nrf_fstorage_sys_evt_handler ⇒ queue_process (Cycle)
[Calls]- >> queue_process
- >> nrf_atomic_flag_set_fetch
[Called By]
read (Thumb, 14 bytes, Stack size 8 bytes, nrf_fstorage_sd.o(i.read))
[Stack]
- Max Depth = 8
- Call Chain = read
[Calls]
[Address Reference Count : 1]- nrf_fstorage_sd.o(.constdata)
rmap (Thumb, 4 bytes, Stack size 0 bytes, nrf_fstorage_sd.o(i.rmap))
[Address Reference Count : 1]
- nrf_fstorage_sd.o(.constdata)
uninit (Thumb, 22 bytes, Stack size 8 bytes, nrf_fstorage_sd.o(i.uninit))
[Stack]
- Max Depth = 16
- Call Chain = uninit ⇒ nrf_atfifo_clear
[Calls]- >> nrf_atfifo_clear
- >> __aeabi_memclr4
[Address Reference Count : 1]- nrf_fstorage_sd.o(.constdata)
wmap (Thumb, 4 bytes, Stack size 0 bytes, nrf_fstorage_sd.o(i.wmap))
[Address Reference Count : 1]
- nrf_fstorage_sd.o(.constdata)
write (Thumb, 74 bytes, Stack size 40 bytes, nrf_fstorage_sd.o(i.write))
[Stack]
- Max Depth = 144
- Call Chain = write ⇒ queue_start ⇒ queue_process ⇒ nrf_fstorage_sys_evt_handler ⇒ queue_process (Cycle)
[Calls]- >> queue_start
- >> nrf_atfifo_item_put
- >> nrf_atfifo_item_alloc
- >> __aeabi_memclr4
[Address Reference Count : 1]- nrf_fstorage_sd.o(.constdata)
nrf_section_iter_item_set (Thumb, 36 bytes, Stack size 8 bytes, nrf_section_iter.o(i.nrf_section_iter_item_set))
[Stack]
- Max Depth = 8
- Call Chain = nrf_section_iter_item_set
[Called By]
nrf_dfu_set_adv_name_handler (Thumb, 22 bytes, Stack size 0 bytes, nrf_dfu_svci_handler.o(i.nrf_dfu_set_adv_name_handler))
[Address Reference Count : 1]
- nrf_dfu_svci_handler.o(svc_data)
nrf_dfu_set_adv_name_on_call (Thumb, 56 bytes, Stack size 8 bytes, nrf_dfu_svci_handler.o(i.nrf_dfu_set_adv_name_on_call))
[Stack]
- Max Depth = 44
- Call Chain = nrf_dfu_set_adv_name_on_call ⇒ nrf_dfu_settings_adv_name_write ⇒ crc32_compute
[Calls]- >> nrf_dfu_settings_adv_name_write
[Address Reference Count : 1]- nrf_dfu_svci_handler.o(i.nrf_dfu_set_adv_name_handler)
nrf_dfu_set_adv_name_on_sys_evt (Thumb, 36 bytes, Stack size 0 bytes, nrf_dfu_svci_handler.o(i.nrf_dfu_set_adv_name_on_sys_evt))
[Address Reference Count : 1]
- nrf_dfu_svci_handler.o(i.nrf_dfu_set_adv_name_handler)
__sd_nvic_app_accessible_irq (Thumb, 32 bytes, Stack size 0 bytes, nrf_sdh.o(i.__sd_nvic_app_accessible_irq))
[Called By]
- >> softdevices_evt_irq_enable
- >> softdevice_evt_irq_disable
sdh_request_observer_notify (Thumb, 44 bytes, Stack size 24 bytes, nrf_sdh.o(i.sdh_request_observer_notify))
[Stack]
- Max Depth = 32
- Call Chain = sdh_request_observer_notify ⇒ nrf_section_iter_next ⇒ nrf_section_iter_item_set
[Calls]- >> nrf_section_iter_next
- >> nrf_section_iter_init
[Called By]- >> nrf_sdh_enable_request
- >> nrf_sdh_disable_request
sdh_state_observer_notify (Thumb, 38 bytes, Stack size 24 bytes, nrf_sdh.o(i.sdh_state_observer_notify))
[Stack]
- Max Depth = 32
- Call Chain = sdh_state_observer_notify ⇒ nrf_section_iter_next ⇒ nrf_section_iter_item_set
[Calls]- >> nrf_section_iter_next
- >> nrf_section_iter_init
[Called By]- >> nrf_sdh_enable_request
- >> nrf_sdh_disable_request
softdevice_evt_irq_disable (Thumb, 60 bytes, Stack size 8 bytes, nrf_sdh.o(i.softdevice_evt_irq_disable))
[Stack]
- Max Depth = 8
- Call Chain = softdevice_evt_irq_disable
[Calls]- >> app_error_handler_bare
- >> __sd_nvic_app_accessible_irq
[Called By]- >> nrf_sdh_disable_request
softdevices_evt_irq_enable (Thumb, 80 bytes, Stack size 8 bytes, nrf_sdh.o(i.softdevices_evt_irq_enable))
[Stack]
- Max Depth = 8
- Call Chain = softdevices_evt_irq_enable
[Calls]- >> app_error_handler_bare
- >> __sd_nvic_app_accessible_irq
[Called By]- >> nrf_sdh_enable_request
nrf_sdh_ble_evts_poll (Thumb, 88 bytes, Stack size 528 bytes, nrf_sdh_ble.o(i.nrf_sdh_ble_evts_poll))
[Stack]
- Max Depth = 536
- Call Chain = nrf_sdh_ble_evts_poll ⇒ nrf_section_iter_next ⇒ nrf_section_iter_item_set
[Calls]- >> app_error_handler_bare
- >> nrf_section_iter_next
- >> nrf_section_iter_init
[Address Reference Count : 1]- nrf_sdh_ble.o(sdh_stack_observers0)
nrf_sdh_soc_evts_poll (Thumb, 56 bytes, Stack size 24 bytes, nrf_sdh_soc.o(i.nrf_sdh_soc_evts_poll))
[Stack]
- Max Depth = 32
- Call Chain = nrf_sdh_soc_evts_poll ⇒ nrf_section_iter_next ⇒ nrf_section_iter_item_set
[Calls]- >> app_error_handler_bare
- >> nrf_section_iter_next
- >> nrf_section_iter_init
[Address Reference Count : 1]- nrf_sdh_soc.o(sdh_stack_observers0)
buf_read (Thumb, 28 bytes, Stack size 8 bytes, pb_decode.o(i.buf_read))
[Stack]
- Max Depth = 8
- Call Chain = buf_read
[Address Reference Count : 2]- pb_decode.o(i.pb_istream_from_buffer)
- pb_decode.o(i.pb_read)
decode_callback_field (Thumb, 126 bytes, Stack size 72 bytes, pb_decode.o(i.decode_callback_field))
[Stack]
- Max Depth = 128
- Call Chain = decode_callback_field ⇒ read_raw_value ⇒ pb_read ⇒ pb_read (Cycle)
[Calls]- >> pb_istream_from_buffer
- >> read_raw_value
- >> pb_skip_field
- >> pb_make_string_substream
[Called By]
decode_field (Thumb, 26 bytes, Stack size 0 bytes, pb_decode.o(i.decode_field))
[Stack]
- Max Depth = 128
- Call Chain = decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> decode_static_field
- >> decode_callback_field
[Called By]
decode_static_field (Thumb, 220 bytes, Stack size 40 bytes, pb_decode.o(i.decode_static_field))
[Stack]
- Max Depth = 128
- Call Chain = decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> pb_message_set_to_defaults
- >> __aeabi_memclr
- >> pb_make_string_substream
[Called By]
iter_from_extension (Thumb, 46 bytes, Stack size 16 bytes, pb_decode.o(i.iter_from_extension))
[Stack]
- Max Depth = 16
- Call Chain = iter_from_extension
[Calls]
[Called By]- >> pb_field_set_to_default
- >> pb_decode_noinit
pb_dec_bytes (Thumb, 66 bytes, Stack size 24 bytes, pb_decode.o(i.pb_dec_bytes))
[Stack]
- Max Depth = 56
- Call Chain = pb_dec_bytes ⇒ pb_decode_varint32 ⇒ pb_readbyte
[Calls]- >> pb_decode_varint32
- >> pb_read
[Address Reference Count : 1]
pb_dec_fixed32 (Thumb, 6 bytes, Stack size 0 bytes, pb_decode.o(i.pb_dec_fixed32))
[Stack]
- Max Depth = 48
- Call Chain = pb_dec_fixed32 ⇒ pb_decode_fixed32 ⇒ pb_read ⇒ pb_read (Cycle)
[Calls]
[Address Reference Count : 1]
pb_dec_fixed64 (Thumb, 6 bytes, Stack size 0 bytes, pb_decode.o(i.pb_dec_fixed64))
[Stack]
- Max Depth = 48
- Call Chain = pb_dec_fixed64 ⇒ pb_decode_fixed64 ⇒ pb_read ⇒ pb_read (Cycle)
[Calls]
[Address Reference Count : 1]
pb_dec_string (Thumb, 62 bytes, Stack size 24 bytes, pb_decode.o(i.pb_dec_string))
[Stack]
- Max Depth = 56
- Call Chain = pb_dec_string ⇒ pb_decode_varint32 ⇒ pb_readbyte
[Calls]- >> pb_decode_varint32
- >> pb_read
[Address Reference Count : 1]
pb_dec_submessage (Thumb, 64 bytes, Stack size 40 bytes, pb_decode.o(i.pb_dec_submessage))
[Stack]
- Max Depth = 336
- Call Chain = pb_dec_submessage ⇒ pb_decode ⇒ pb_decode_noinit ⇒ decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> pb_decode
- >> pb_make_string_substream
- >> pb_decode_noinit
[Address Reference Count : 1]
pb_dec_svarint (Thumb, 88 bytes, Stack size 24 bytes, pb_decode.o(i.pb_dec_svarint))
[Stack]
- Max Depth = 80
- Call Chain = pb_dec_svarint ⇒ pb_decode_svarint ⇒ pb_decode_varint ⇒ pb_readbyte
[Calls]
[Address Reference Count : 1]
pb_dec_uvarint (Thumb, 88 bytes, Stack size 24 bytes, pb_decode.o(i.pb_dec_uvarint))
[Stack]
- Max Depth = 64
- Call Chain = pb_dec_uvarint ⇒ pb_decode_varint ⇒ pb_readbyte
[Calls]
[Address Reference Count : 1]
pb_dec_varint (Thumb, 90 bytes, Stack size 24 bytes, pb_decode.o(i.pb_dec_varint))
[Stack]
- Max Depth = 64
- Call Chain = pb_dec_varint ⇒ pb_decode_varint ⇒ pb_readbyte
[Calls]
[Address Reference Count : 1]
pb_decode_varint32 (Thumb, 76 bytes, Stack size 24 bytes, pb_decode.o(i.pb_decode_varint32))
[Stack]
- Max Depth = 32
- Call Chain = pb_decode_varint32 ⇒ pb_readbyte
[Calls]
[Called By]- >> pb_dec_string
- >> pb_dec_bytes
- >> pb_skip_field
- >> pb_make_string_substream
- >> pb_decode_tag
pb_field_set_to_default (Thumb, 164 bytes, Stack size 40 bytes, pb_decode.o(i.pb_field_set_to_default))
[Stack]
- Max Depth = 56 + In Cycle
- Call Chain = pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> pb_message_set_to_defaults
- >> pb_field_set_to_default
- >> iter_from_extension
- >> __aeabi_memclr
- >> __aeabi_memcpy
[Called By]- >> pb_message_set_to_defaults
- >> pb_field_set_to_default
pb_message_set_to_defaults (Thumb, 38 bytes, Stack size 32 bytes, pb_decode.o(i.pb_message_set_to_defaults))
[Stack]
- Max Depth = 88
- Call Chain = pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> pb_field_set_to_default
- >> pb_field_iter_next
- >> pb_field_iter_begin
[Called By]- >> pb_decode
- >> pb_field_set_to_default
- >> decode_static_field
pb_readbyte (Thumb, 32 bytes, Stack size 8 bytes, pb_decode.o(i.pb_readbyte))
[Stack]
- Max Depth = 8
- Call Chain = pb_readbyte
[Called By]- >> pb_decode_varint32
- >> pb_decode_varint
read_raw_value (Thumb, 98 bytes, Stack size 24 bytes, pb_decode.o(i.read_raw_value))
[Stack]
- Max Depth = 56
- Call Chain = read_raw_value ⇒ pb_read ⇒ pb_read (Cycle)
[Calls]
[Called By]
bcopy (Thumb, 12 bytes, Stack size 0 bytes, micro_ecc_lib_uECC.c.o(.text.bcopy))
[Calls]
[Called By]- >> uECC_verify
- >> bits2int
- >> bcopy
uECC_vli_cmp_unsafe (Thumb, 42 bytes, Stack size 32 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_cmp_unsafe))
[Stack]
- Max Depth = 32
- Call Chain = uECC_vli_cmp_unsafe
[Called By]- >> uECC_verify
- >> uECC_vli_modInv
- >> uECC_vli_modAdd
- >> vli_mmod_fast_secp256r1
- >> bits2int
bits2int (Thumb, 136 bytes, Stack size 128 bytes, micro_ecc_lib_uECC.c.o(.text.bits2int))
[Stack]
- Max Depth = 192
- Call Chain = bits2int ⇒ uECC_vli_sub
[Calls]- >> uECC_vli_clear
- >> uECC_vli_sub
- >> uECC_vli_cmp_unsafe
- >> bcopy
[Called By]
vli_mmod_fast_secp256r1 (Thumb, 432 bytes, Stack size 224 bytes, micro_ecc_lib_uECC.c.o(.text.vli_mmod_fast_secp256r1))
[Stack]
- Max Depth = 288
- Call Chain = vli_mmod_fast_secp256r1 ⇒ uECC_vli_sub
[Calls]- >> uECC_vli_set
- >> uECC_vli_sub
- >> uECC_vli_add
- >> uECC_vli_cmp_unsafe
[Address Reference Count : 1]- micro_ecc_lib_uECC.c.o(.rodata.curve_secp256r1)
vli_modInv_update (Thumb, 58 bytes, Stack size 96 bytes, micro_ecc_lib_uECC.c.o(.text.vli_modInv_update))
[Stack]
- Max Depth = 160
- Call Chain = vli_modInv_update ⇒ uECC_vli_add
[Calls]- >> uECC_vli_rshift1
- >> uECC_vli_add
[Called By]
x_side_default (Thumb, 90 bytes, Stack size 256 bytes, micro_ecc_lib_uECC.c.o(.text.x_side_default))
[Stack]
- Max Depth = 720
- Call Chain = x_side_default ⇒ uECC_vli_modSquare_fast ⇒ uECC_vli_square
[Calls]- >> memset
- >> uECC_vli_modSquare_fast
- >> uECC_vli_modMult_fast
- >> uECC_vli_modSub
- >> uECC_vli_modAdd
[Address Reference Count : 1]- micro_ecc_lib_uECC.c.o(.rodata.curve_secp256r1)
double_jacobian_default (Thumb, 340 bytes, Stack size 416 bytes, micro_ecc_lib_uECC.c.o(.text.double_jacobian_default))
[Stack]
- Max Depth = 880
- Call Chain = double_jacobian_default ⇒ uECC_vli_modSquare_fast ⇒ uECC_vli_square
[Calls]- >> uECC_vli_modSquare_fast
- >> uECC_vli_modMult_fast
- >> uECC_vli_modSub
- >> uECC_vli_modAdd
- >> uECC_vli_rshift1
- >> uECC_vli_set
- >> uECC_vli_isZero
- >> uECC_vli_add
[Address Reference Count : 1]- micro_ecc_lib_uECC.c.o(.rodata.curve_secp256r1)
XYcZ_add (Thumb, 202 bytes, Stack size 288 bytes, micro_ecc_lib_uECC.c.o(.text.XYcZ_add))
[Stack]
- Max Depth = 752
- Call Chain = XYcZ_add ⇒ uECC_vli_modSquare_fast ⇒ uECC_vli_square
[Calls]- >> uECC_vli_modSquare_fast
- >> uECC_vli_modMult_fast
- >> uECC_vli_modSub
- >> uECC_vli_set
[Called By]
apply_z (Thumb, 62 bytes, Stack size 224 bytes, micro_ecc_lib_uECC.c.o(.text.apply_z))
[Stack]
- Max Depth = 688
- Call Chain = apply_z ⇒ uECC_vli_modSquare_fast ⇒ uECC_vli_square
[Calls]- >> uECC_vli_modSquare_fast
- >> uECC_vli_modMult_fast
[Called By]
Undefined Global Symbols