bcopy ⇒ bcopy
Function Pointers
- ADC_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- CCM_AAR_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- ECB_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- GPIOTE_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- HardFault_Handler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- LPCOMP_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- NMI_Handler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- POWER_CLOCK_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- PendSV_Handler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- QDEC_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- RADIO_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- RNG_IRQHandler from nrf_drv_rng.o(i.RNG_IRQHandler) referenced from arm_startup_nrf51.o(RESET)
- RTC0_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- RTC1_IRQHandler from app_timer.o(i.RTC1_IRQHandler) referenced from arm_startup_nrf51.o(RESET)
- Reset_Handler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- SPI0_TWI0_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- SPI1_TWI1_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- SVC_Handler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- SWI0_IRQHandler from app_timer.o(i.SWI0_IRQHandler) referenced from arm_startup_nrf51.o(RESET)
- SWI1_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- SWI2_IRQHandler from softdevice_handler.o(i.SWI2_IRQHandler) referenced from arm_startup_nrf51.o(RESET)
- SWI3_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- SWI4_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- SWI5_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- SysTick_Handler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- SystemInit from system_nrf51.o(i.SystemInit) referenced from arm_startup_nrf51.o(.text)
- TEMP_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- TIMER0_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- TIMER1_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- TIMER2_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- UART0_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- WDT_IRQHandler from arm_startup_nrf51.o(.text) referenced from arm_startup_nrf51.o(RESET)
- __main from entry.o(.ARM.Collect$$$$00000000) referenced from arm_startup_nrf51.o(.text)
- app_timer_evt_get from app_timer_appsh.o(i.app_timer_evt_get) referenced from app_timer_appsh.o(i.app_timer_evt_schedule)
- app_timer_evt_schedule from app_timer_appsh.o(i.app_timer_evt_schedule) referenced from nrf_dfu.o(i.timers_init)
- ble_dfu_transport_close from nrf_ble_dfu.o(i.ble_dfu_transport_close) referenced from nrf_ble_dfu.o(dfu_trans)
- ble_dfu_transport_init from nrf_ble_dfu.o(i.ble_dfu_transport_init) referenced from nrf_ble_dfu.o(dfu_trans)
- ble_evt_dispatch from nrf_ble_dfu.o(i.ble_evt_dispatch) referenced from nrf_ble_dfu.o(i.ble_dfu_transport_init)
- 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)
- conn_params_error_handler from nrf_ble_dfu.o(i.conn_params_error_handler) referenced from nrf_ble_dfu.o(i.conn_params_init)
- dfu_data_write_handler from dfu_req_handling.o(i.dfu_data_write_handler) referenced from dfu_req_handling.o(i.nrf_dfu_data_req)
- dfu_settings_write_callback from nrf_dfu_settings.o(i.dfu_settings_write_callback) referenced from nrf_dfu_settings.o(i.nrf_dfu_settings_write)
- 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)
- fs_evt_handler from nrf_dfu_flash.o(i.fs_evt_handler) referenced from nrf_dfu_flash.o(fs_data)
- fs_sys_event_handler from fstorage.o(i.fs_sys_event_handler) referenced from nrf_dfu_flash.o(i.nrf_dfu_flash_init)
- main from main.o(i.main) referenced from entry9a.o(.ARM.Collect$$$$0000000B)
- on_dfu_complete from dfu_req_handling.o(i.on_dfu_complete) referenced from dfu_req_handling.o(i.nrf_dfu_postvalidate)
- 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 dfu_req_handling.o(i.pb_decoding_callback) referenced from dfu_req_handling.o(i.dfu_decode_commmand)
- softdevice_evt_get from softdevice_handler_appsh.o(i.softdevice_evt_get) referenced from softdevice_handler_appsh.o(i.softdevice_evt_schedule)
- softdevice_evt_schedule from softdevice_handler_appsh.o(i.softdevice_evt_schedule) referenced from nrf_ble_dfu.o(i.ble_stack_init)
- softdevice_fault_handler from softdevice_handler.o(i.softdevice_fault_handler) referenced from softdevice_handler.o(i.softdevice_handler_init)
- update_timeout_handler from ble_conn_params.o(i.update_timeout_handler) referenced from ble_conn_params.o(i.ble_conn_params_init)
- 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)
- 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_nrf51.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___26_nrf_bootloader_app_start_c_5c9f33f9__nrf_bootloader_app_start_impl (Thumb, 52 bytes, Stack size 0 bytes, nrf_bootloader_app_start.o(.emb_text))
[Called By]
- >> nrf_bootloader_app_start
Reset_Handler (Thumb, 26 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
NMI_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
HardFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
SVC_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
PendSV_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
SysTick_Handler (Thumb, 2 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
ADC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
CCM_AAR_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
ECB_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
GPIOTE_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
LPCOMP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
POWER_CLOCK_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
QDEC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
RADIO_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
RTC0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
SPI0_TWI0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
SPI1_TWI1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
SWI1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
SWI3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
SWI4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
SWI5_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
TEMP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
TIMER0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
TIMER1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
TIMER2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
UART0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
WDT_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, arm_startup_nrf51.o(.text))
[Address Reference Count : 1]
- arm_startup_nrf51.o(RESET)
__aeabi_llsl (Thumb, 32 bytes, Stack size 8 bytes, llshl.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = __aeabi_llsl
[Called By]
_ll_shift_l (Thumb, 0 bytes, Stack size 8 bytes, llshl.o(.text), UNUSED)
__aeabi_memcpy (Thumb, 36 bytes, Stack size 0 bytes, memcpya.o(.text))
[Called By]
- >> ble_conn_params_init
- >> on_connect
- >> on_conn_params_update
- >> nrf_dfu_data_req
- >> nrf_dfu_command_req
- >> dfu_handle_prevalidate
- >> nrf_dfu_settings_init
- >> app_sched_event_put
- >> nrf_queue_push
- >> pb_field_set_to_default
__aeabi_memcpy4 (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text))
[Called By]
- >> ble_conn_params_init
- >> nrf_dfu_settings_write
__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_postvalidate
- >> 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]- >> pb_field_set_to_default
- >> decode_static_field
__aeabi_memclr4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))
[Called By]
- >> nrf_dfu_postvalidate
- >> nrf_dfu_command_req
- >> nrf_dfu_settings_init
- >> softdevice_enable_get_default_config
- >> dfu_pkt_char_add
- >> dfu_ctrl_pt_add
- >> conn_params_init
- >> advertising_start
- >> queue_get_next_free
- >> sha256_final
__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]
__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))
[Called By]
uECC_verify (Thumb, 690 bytes, Stack size 1856 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_verify))
[Stack]
- Max Depth = 2928
- 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]
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, 36 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, 288 bytes, Stack size 704 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_mmod))
[Stack]
- Max Depth = 752
- 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, 278 bytes, Stack size 640 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, 38 bytes, Stack size 320 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_modMult))
[Stack]
- Max Depth = 1072
- 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, 152 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, 30 bytes, Stack size 32 bytes, micro_ecc_lib_uECC.c.o(.text.uECC_vli_rshift1))
[Stack]
- Max Depth = 32
- Call Chain = uECC_vli_rshift1
[Called By]- >> uECC_vli_modInv
- >> uECC_vli_mmod
- >> double_jacobian_default
- >> vli_modInv_update
uECC_vli_set (Thumb, 24 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, 166 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, 92 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]
RNG_IRQHandler (Thumb, 128 bytes, Stack size 16 bytes, nrf_drv_rng.o(i.RNG_IRQHandler))
[Stack]
- Max Depth = 64
- Call Chain = RNG_IRQHandler ⇒ nrf_queue_push ⇒ app_util_critical_region_exit
[Calls]- >> nrf_drv_rng_stop
- >> softdevice_handler_is_enabled
- >> nrf_queue_push
- >> nrf_queue_is_full
- >> app_util_critical_region_exit
- >> app_util_critical_region_enter
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
RTC1_IRQHandler (Thumb, 34 bytes, Stack size 8 bytes, app_timer.o(i.RTC1_IRQHandler))
[Stack]
- Max Depth = 48
- Call Chain = RTC1_IRQHandler ⇒ timer_timeouts_check ⇒ timeout_handler_exec
[Calls]
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
SWI0_IRQHandler (Thumb, 8 bytes, Stack size 8 bytes, app_timer.o(i.SWI0_IRQHandler))
[Stack]
- Max Depth = 80
- Call Chain = SWI0_IRQHandler ⇒ timer_list_handler ⇒ compare_reg_update ⇒ timer_timeouts_check_sched
[Calls]
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
SWI2_IRQHandler (Thumb, 46 bytes, Stack size 16 bytes, softdevice_handler.o(i.SWI2_IRQHandler))
[Stack]
- Max Depth = 40
- Call Chain = SWI2_IRQHandler ⇒ intern_softdevice_events_execute
[Calls]- >> app_error_handler_bare
- >> intern_softdevice_events_execute
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
SystemInit (Thumb, 76 bytes, Stack size 8 bytes, system_nrf51.o(i.SystemInit))
[Stack]
- Max Depth = 8
- Call Chain = SystemInit
[Calls]- >> is_peripheral_domain_setup_needed
- >> is_manual_peripheral_setup_needed
- >> is_disabled_in_debug_needed
[Address Reference Count : 1]- arm_startup_nrf51.o(.text)
__ARM_common_ll_muluu (Thumb, 48 bytes, Stack size 24 bytes, sha256.o(i.__ARM_common_ll_muluu))
[Stack]
- Max Depth = 24
- Call Chain = __ARM_common_ll_muluu
[Called By]
__ARM_common_switch8 (Thumb, 28 bytes, Stack size 8 bytes, dfu_req_handling.o(i.__ARM_common_switch8))
[Stack]
- Max Depth = 8
- Call Chain = __ARM_common_switch8
[Called By]- >> nrf_dfu_data_req
- >> nrf_dfu_command_req
- >> on_ctrl_pt_write
__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]
[Called By]- >> softdevice_fault_handler
app_error_handler_bare (Thumb, 4 bytes, Stack size 0 bytes, main.o(i.app_error_handler_bare))
[Calls]
[Called By]- >> main
- >> nrf_dfu_enter_check
- >> nrf_dfu_settings_init
- >> timers_init
- >> scheduler_init
- >> on_ble_evt
- >> conn_params_error_handler
- >> ble_stack_init
- >> app_timer_evt_get
- >> timeout_handler_exec
- >> softdevice_evt_get
- >> intern_softdevice_events_execute
- >> SWI2_IRQHandler
app_sched_event_put (Thumb, 166 bytes, Stack size 40 bytes, app_scheduler.o(i.app_sched_event_put))
[Stack]
- Max Depth = 56
- Call Chain = app_sched_event_put ⇒ app_util_critical_region_exit
[Calls]- >> next_index
- >> app_util_critical_region_exit
- >> app_util_critical_region_enter
- >> __aeabi_memcpy
[Called By]- >> app_timer_evt_schedule
- >> softdevice_evt_schedule
app_sched_execute (Thumb, 92 bytes, Stack size 24 bytes, app_scheduler.o(i.app_sched_execute))
[Stack]
- Max Depth = 24
- Call Chain = app_sched_execute
[Calls]
[Called By]- >> nrf_dfu_wait
- >> delay_operation
- >> wait_for_event
app_sched_init (Thumb, 66 bytes, Stack size 12 bytes, app_scheduler.o(i.app_sched_init))
[Stack]
- Max Depth = 12
- Call Chain = app_sched_init
[Called By]
app_timer_create (Thumb, 64 bytes, Stack size 8 bytes, app_timer.o(i.app_timer_create))
[Stack]
- Max Depth = 8
- Call Chain = app_timer_create
[Called By]
app_timer_evt_schedule (Thumb, 22 bytes, Stack size 24 bytes, app_timer_appsh.o(i.app_timer_evt_schedule))
[Stack]
- Max Depth = 80
- Call Chain = app_timer_evt_schedule ⇒ app_sched_event_put ⇒ app_util_critical_region_exit
[Calls]
[Address Reference Count : 1]
app_timer_init (Thumb, 116 bytes, Stack size 24 bytes, app_timer.o(i.app_timer_init))
[Stack]
- Max Depth = 40
- Call Chain = app_timer_init ⇒ rtc1_init ⇒ NVIC_SetPriority
[Calls]- >> rtc1_stop
- >> rtc1_init
- >> rtc1_counter_get
- >> NVIC_SetPriority
- >> NVIC_EnableIRQ
- >> NVIC_ClearPendingIRQ
[Called By]
app_timer_start (Thumb, 80 bytes, Stack size 24 bytes, app_timer.o(i.app_timer_start))
[Stack]
- Max Depth = 88
- Call Chain = app_timer_start ⇒ timer_start_op_schedule ⇒ app_util_critical_region_exit
[Calls]- >> timer_start_op_schedule
[Called By]- >> conn_params_negotiation
app_timer_stop (Thumb, 50 bytes, Stack size 16 bytes, app_timer.o(i.app_timer_stop))
[Stack]
- Max Depth = 64
- Call Chain = app_timer_stop ⇒ timer_stop_op_schedule ⇒ app_util_critical_region_exit
[Calls]- >> timer_stop_op_schedule
[Called By]- >> ble_conn_params_stop
- >> on_write
- >> on_disconnect
app_util_critical_region_enter (Thumb, 70 bytes, Stack size 16 bytes, app_util_platform.o(i.app_util_critical_region_enter))
[Stack]
- Max Depth = 16
- Call Chain = app_util_critical_region_enter
[Calls]
[Called By]- >> timer_stop_op_schedule
- >> timer_start_op_schedule
- >> app_sched_event_put
- >> nrf_queue_push
- >> RNG_IRQHandler
app_util_critical_region_exit (Thumb, 56 bytes, Stack size 16 bytes, app_util_platform.o(i.app_util_critical_region_exit))
[Stack]
- Max Depth = 16
- Call Chain = app_util_critical_region_exit
[Calls]
[Called By]- >> timer_stop_op_schedule
- >> timer_start_op_schedule
- >> app_sched_event_put
- >> nrf_queue_push
- >> RNG_IRQHandler
ble_conn_params_init (Thumb, 90 bytes, Stack size 16 bytes, ble_conn_params.o(i.ble_conn_params_init))
[Stack]
- Max Depth = 24
- Call Chain = ble_conn_params_init ⇒ app_timer_create
[Calls]- >> app_timer_create
- >> __aeabi_memcpy4
- >> __aeabi_memcpy
[Called By]
ble_conn_params_on_ble_evt (Thumb, 62 bytes, Stack size 8 bytes, ble_conn_params.o(i.ble_conn_params_on_ble_evt))
[Stack]
- Max Depth = 128
- Call Chain = ble_conn_params_on_ble_evt ⇒ on_write ⇒ conn_params_negotiation ⇒ app_timer_start ⇒ timer_start_op_schedule ⇒ app_util_critical_region_exit
[Calls]- >> on_write
- >> on_disconnect
- >> on_connect
- >> on_conn_params_update
[Called By]
ble_conn_params_stop (Thumb, 12 bytes, Stack size 8 bytes, ble_conn_params.o(i.ble_conn_params_stop))
[Stack]
- Max Depth = 72
- Call Chain = ble_conn_params_stop ⇒ app_timer_stop ⇒ timer_stop_op_schedule ⇒ app_util_critical_region_exit
[Calls]
[Called By]- >> ble_dfu_transport_close
ble_dfu_init (Thumb, 138 bytes, Stack size 32 bytes, nrf_ble_dfu.o(i.ble_dfu_init))
[Stack]
- Max Depth = 96
- Call Chain = ble_dfu_init ⇒ dfu_pkt_char_add
[Calls]- >> dfu_pkt_char_add
- >> dfu_ctrl_pt_add
[Called By]- >> ble_dfu_transport_init
ble_dfu_transport_close (Thumb, 166 bytes, Stack size 8 bytes, nrf_ble_dfu.o(i.ble_dfu_transport_close))
[Stack]
- Max Depth = 80
- Call Chain = ble_dfu_transport_close ⇒ ble_conn_params_stop ⇒ app_timer_stop ⇒ timer_stop_op_schedule ⇒ app_util_critical_region_exit
[Calls]- >> ble_conn_params_stop
- >> advertising_stop
[Address Reference Count : 1]
ble_dfu_transport_init (Thumb, 132 bytes, Stack size 8 bytes, nrf_ble_dfu.o(i.ble_dfu_transport_init))
[Stack]
- Max Depth = 104
- Call Chain = ble_dfu_transport_init ⇒ ble_dfu_init ⇒ dfu_pkt_char_add
[Calls]- >> softdevice_ble_evt_handler_set
- >> ble_dfu_init
- >> leds_init
- >> gap_params_init
- >> conn_params_init
- >> ble_stack_init
- >> advertising_start
[Address Reference Count : 1]
ble_srv_is_notification_enabled (Thumb, 18 bytes, Stack size 16 bytes, ble_srv_common.o(i.ble_srv_is_notification_enabled))
[Stack]
- Max Depth = 16
- Call Chain = ble_srv_is_notification_enabled
[Calls]
[Called By]- >> on_write
- >> is_cccd_configured
bsp_board_led_off (Thumb, 16 bytes, Stack size 8 bytes, boards.o(i.bsp_board_led_off))
[Stack]
- Max Depth = 16
- Call Chain = bsp_board_led_off ⇒ nrf_gpio_pin_write
[Calls]
[Called By]
bsp_board_led_on (Thumb, 16 bytes, Stack size 8 bytes, boards.o(i.bsp_board_led_on))
[Stack]
- Max Depth = 16
- Call Chain = bsp_board_led_on ⇒ nrf_gpio_pin_write
[Calls]
[Called By]
bsp_board_leds_init (Thumb, 42 bytes, Stack size 24 bytes, boards.o(i.bsp_board_leds_init))
[Stack]
- Max Depth = 48
- Call Chain = bsp_board_leds_init ⇒ bsp_board_leds_off ⇒ bsp_board_led_off ⇒ nrf_gpio_pin_write
[Calls]- >> bsp_board_leds_off
- >> nrf_gpio_cfg
[Called By]
bsp_board_leds_off (Thumb, 20 bytes, Stack size 8 bytes, boards.o(i.bsp_board_leds_off))
[Stack]
- Max Depth = 24
- Call Chain = bsp_board_leds_off ⇒ bsp_board_led_off ⇒ nrf_gpio_pin_write
[Calls]
[Called By]
crc32_compute (Thumb, 74 bytes, Stack size 32 bytes, crc32.o(i.crc32_compute))
[Stack]
- Max Depth = 32
- Call Chain = crc32_compute
[Called By]- >> nrf_dfu_data_req
- >> nrf_dfu_command_req
- >> nrf_dfu_app_continue
- >> nrf_dfu_settings_calculate_crc
- >> nrf_dfu_app_is_valid
ecc_p256_verify (Thumb, 98 bytes, Stack size 48 bytes, ecc.o(i.ecc_p256_verify))
[Stack]
- Max Depth = 2976
- Call Chain = ecc_p256_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> uECC_verify
- >> uECC_secp256r1
- >> is_word_aligned
[Called By]
fs_erase (Thumb, 136 bytes, Stack size 24 bytes, fstorage.o(i.fs_erase))
[Stack]
- Max Depth = 80
- Call Chain = fs_erase ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> queue_start
- >> queue_get_next_free
- >> check_config
[Called By]
fs_fake_init (Thumb, 16 bytes, Stack size 0 bytes, fstorage.o(i.fs_fake_init))
[Called By]
fs_queue_is_full (Thumb, 16 bytes, Stack size 0 bytes, fstorage.o(i.fs_queue_is_full))
[Called By]
fs_store (Thumb, 150 bytes, Stack size 24 bytes, fstorage.o(i.fs_store))
[Stack]
- Max Depth = 80
- Call Chain = fs_store ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> queue_start
- >> queue_get_next_free
- >> check_config
[Called By]
fs_sys_event_handler (Thumb, 104 bytes, Stack size 16 bytes, fstorage.o(i.fs_sys_event_handler))
[Stack]
- Max Depth = 64
- Call Chain = fs_sys_event_handler ⇒ queue_process ⇒ send_event
[Calls]- >> queue_process
- >> on_operation_success
- >> on_operation_failure
[Address Reference Count : 1]- nrf_dfu_flash.o(i.nrf_dfu_flash_init)
intern_softdevice_events_execute (Thumb, 180 bytes, Stack size 24 bytes, softdevice_handler.o(i.intern_softdevice_events_execute))
[Stack]
- Max Depth = 24
- Call Chain = intern_softdevice_events_execute
[Calls]- >> app_error_handler_bare
[Called By]- >> softdevice_evt_get
- >> SWI2_IRQHandler
main (Thumb, 48 bytes, Stack size 16 bytes, main.o(i.main))
[Stack]
- Max Depth = 460
- Call Chain = main ⇒ nrf_bootloader_init ⇒ nrf_dfu_init ⇒ nrf_dfu_req_handler_init ⇒ dfu_decode_commmand ⇒ pb_decode ⇒ pb_decode_noinit ⇒ decode_extension ⇒ default_extension_decoder ⇒ decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> nrf_bootloader_init
- >> nrf_bootloader_app_start
- >> app_error_handler_bare
- >> leds_init
- >> buttons_init
[Address Reference Count : 1]- entry9a.o(.ARM.Collect$$$$0000000B)
nrf_bootloader_app_start (Thumb, 46 bytes, Stack size 16 bytes, nrf_bootloader_app_start.o(i.nrf_bootloader_app_start))
[Stack]
- Max Depth = 40
- Call Chain = nrf_bootloader_app_start ⇒ nrf_dfu_mbr_init_sd
[Calls]- >> __asm___26_nrf_bootloader_app_start_c_5c9f33f9__nrf_bootloader_app_start_impl
- >> nrf_dfu_mbr_init_sd
[Called By]
nrf_bootloader_init (Thumb, 22 bytes, Stack size 8 bytes, nrf_bootloader.o(i.nrf_bootloader_init))
[Stack]
- Max Depth = 444
- Call Chain = nrf_bootloader_init ⇒ nrf_dfu_init ⇒ nrf_dfu_req_handler_init ⇒ dfu_decode_commmand ⇒ pb_decode ⇒ pb_decode_noinit ⇒ decode_extension ⇒ default_extension_decoder ⇒ decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]
[Called By]
nrf_crypto_hash_compute (Thumb, 106 bytes, Stack size 152 bytes, nrf_crypto.o(i.nrf_crypto_hash_compute))
[Stack]
- Max Depth = 508
- Call Chain = nrf_crypto_hash_compute ⇒ sha256_final ⇒ sha256_transform
[Calls]- >> sha256_update
- >> sha256_init
- >> sha256_final
[Called By]- >> nrf_dfu_postvalidate
- >> dfu_handle_prevalidate
nrf_crypto_verify (Thumb, 50 bytes, Stack size 24 bytes, nrf_crypto.o(i.nrf_crypto_verify))
[Stack]
- Max Depth = 3000
- Call Chain = nrf_crypto_verify ⇒ ecc_p256_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]
[Called By]- >> dfu_handle_prevalidate
nrf_dfu_app_is_valid (Thumb, 58 bytes, Stack size 8 bytes, nrf_dfu_utils.o(i.nrf_dfu_app_is_valid))
[Stack]
- Max Depth = 40
- Call Chain = nrf_dfu_app_is_valid ⇒ crc32_compute
[Calls]
[Called By]
nrf_dfu_continue (Thumb, 72 bytes, Stack size 24 bytes, nrf_dfu_utils.o(i.nrf_dfu_continue))
[Stack]
- Max Depth = 224
- Call Chain = nrf_dfu_continue ⇒ nrf_dfu_continue_bank ⇒ nrf_dfu_sd_continue ⇒ nrf_dfu_sd_continue_impl ⇒ nrf_dfu_settings_write ⇒ nrf_dfu_flash_store ⇒ fs_store ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> nrf_dfu_continue_bank
- >> align_to_page
[Called By]
nrf_dfu_enter_check (Thumb, 78 bytes, Stack size 8 bytes, nrf_dfu.o(i.nrf_dfu_enter_check))
[Stack]
- Max Depth = 144
- Call Chain = nrf_dfu_enter_check ⇒ nrf_dfu_settings_write ⇒ nrf_dfu_flash_store ⇒ fs_store ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> app_error_handler_bare
- >> nrf_dfu_settings_write
[Called By]
nrf_dfu_find_cache (Thumb, 154 bytes, Stack size 32 bytes, nrf_dfu_utils.o(i.nrf_dfu_find_cache))
[Stack]
- Max Depth = 32
- Call Chain = nrf_dfu_find_cache
[Calls]
[Called By]- >> nrf_dfu_req_handler_init
- >> dfu_handle_prevalidate
nrf_dfu_flash_erase (Thumb, 176 bytes, Stack size 40 bytes, nrf_dfu_flash.o(i.nrf_dfu_flash_erase))
[Stack]
- Max Depth = 120
- Call Chain = nrf_dfu_flash_erase ⇒ fs_erase ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> nrf_nvmc_page_erase
- >> fs_erase
[Called By]- >> nrf_dfu_settings_write
- >> nrf_dfu_data_req
- >> nrf_dfu_app_continue
nrf_dfu_flash_init (Thumb, 56 bytes, Stack size 16 bytes, nrf_dfu_flash.o(i.nrf_dfu_flash_init))
[Stack]
- Max Depth = 16
- Call Chain = nrf_dfu_flash_init
[Calls]- >> softdevice_sys_evt_handler_set
- >> fs_fake_init
[Called By]- >> nrf_dfu_req_handler_init
nrf_dfu_flash_store (Thumb, 140 bytes, Stack size 40 bytes, nrf_dfu_flash.o(i.nrf_dfu_flash_store))
[Stack]
- Max Depth = 120
- Call Chain = nrf_dfu_flash_store ⇒ fs_store ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> nrf_nvmc_write_words
- >> fs_store
[Called By]- >> nrf_dfu_settings_write
- >> nrf_dfu_data_req
- >> nrf_dfu_app_continue
nrf_dfu_init (Thumb, 106 bytes, Stack size 16 bytes, nrf_dfu.o(i.nrf_dfu_init))
[Stack]
- Max Depth = 436
- Call Chain = nrf_dfu_init ⇒ nrf_dfu_req_handler_init ⇒ dfu_decode_commmand ⇒ pb_decode ⇒ pb_decode_noinit ⇒ decode_extension ⇒ default_extension_decoder ⇒ decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> nrf_bootloader_app_start
- >> nrf_dfu_req_handler_init
- >> nrf_dfu_enter_check
- >> nrf_dfu_transports_init
- >> nrf_dfu_settings_init
- >> nrf_dfu_continue
- >> nrf_dfu_app_is_valid
- >> wait_for_event
- >> timers_init
- >> scheduler_init
[Called By]
nrf_dfu_mbr_compare (Thumb, 46 bytes, Stack size 40 bytes, nrf_dfu_mbr.o(i.nrf_dfu_mbr_compare))
[Stack]
- Max Depth = 40
- Call Chain = nrf_dfu_mbr_compare
[Called By]- >> nrf_dfu_sd_continue_impl
- >> nrf_dfu_bl_continue
- >> nrf_dfu_app_continue
nrf_dfu_mbr_copy_bl (Thumb, 36 bytes, Stack size 40 bytes, nrf_dfu_mbr.o(i.nrf_dfu_mbr_copy_bl))
[Stack]
- Max Depth = 40
- Call Chain = nrf_dfu_mbr_copy_bl
[Called By]
nrf_dfu_mbr_copy_sd (Thumb, 56 bytes, Stack size 40 bytes, nrf_dfu_mbr.o(i.nrf_dfu_mbr_copy_sd))
[Stack]
- Max Depth = 40
- Call Chain = nrf_dfu_mbr_copy_sd
[Called By]- >> nrf_dfu_sd_continue_impl
nrf_dfu_mbr_init_sd (Thumb, 22 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]- >> nrf_bootloader_app_start
- >> ble_stack_init
nrf_dfu_req_handler_init (Thumb, 122 bytes, Stack size 8 bytes, dfu_req_handling.o(i.nrf_dfu_req_handler_init))
[Stack]
- Max Depth = 420
- Call Chain = nrf_dfu_req_handler_init ⇒ dfu_decode_commmand ⇒ pb_decode ⇒ pb_decode_noinit ⇒ decode_extension ⇒ default_extension_decoder ⇒ decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> nrf_dfu_flash_init
- >> nrf_dfu_find_cache
- >> dfu_decode_commmand
[Called By]
nrf_dfu_req_handler_on_req (Thumb, 108 bytes, Stack size 24 bytes, dfu_req_handling.o(i.nrf_dfu_req_handler_on_req))
[Stack]
- Max Depth = 3112
- Call Chain = nrf_dfu_req_handler_on_req ⇒ nrf_dfu_command_req ⇒ dfu_handle_signed_command ⇒ dfu_handle_prevalidate ⇒ nrf_crypto_verify ⇒ ecc_p256_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_data_req
- >> nrf_dfu_command_req
[Called By]- >> on_write
- >> on_ctrl_pt_write
nrf_dfu_settings_calculate_crc (Thumb, 14 bytes, Stack size 8 bytes, nrf_dfu_settings.o(i.nrf_dfu_settings_calculate_crc))
[Stack]
- Max Depth = 40
- Call Chain = nrf_dfu_settings_calculate_crc ⇒ crc32_compute
[Calls]
[Called By]- >> nrf_dfu_settings_write
- >> nrf_dfu_settings_init
nrf_dfu_settings_init (Thumb, 92 bytes, Stack size 16 bytes, nrf_dfu_settings.o(i.nrf_dfu_settings_init))
[Stack]
- Max Depth = 152
- Call Chain = nrf_dfu_settings_init ⇒ nrf_dfu_settings_write ⇒ nrf_dfu_flash_store ⇒ fs_store ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> app_error_handler_bare
- >> nrf_dfu_settings_write
- >> nrf_dfu_settings_calculate_crc
- >> __aeabi_memclr4
- >> __aeabi_memcpy
[Called By]
nrf_dfu_settings_write (Thumb, 116 bytes, Stack size 16 bytes, nrf_dfu_settings.o(i.nrf_dfu_settings_write))
[Stack]
- Max Depth = 136
- Call Chain = nrf_dfu_settings_write ⇒ nrf_dfu_flash_store ⇒ fs_store ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> nrf_dfu_flash_store
- >> nrf_dfu_flash_erase
- >> nrf_dfu_settings_calculate_crc
- >> wait_for_queue
- >> wait_for_pending
- >> __aeabi_memcpy4
[Called By]- >> nrf_dfu_postvalidate
- >> nrf_dfu_data_req
- >> dfu_handle_signed_command
- >> nrf_dfu_sd_continue_impl
- >> nrf_dfu_sd_continue
- >> nrf_dfu_bl_continue
- >> nrf_dfu_app_continue
- >> nrf_dfu_enter_check
- >> nrf_dfu_settings_init
nrf_dfu_transports_close (Thumb, 46 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]
nrf_dfu_transports_init (Thumb, 46 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_wait (Thumb, 8 bytes, Stack size 8 bytes, nrf_dfu.o(i.nrf_dfu_wait))
[Stack]
- Max Depth = 32
- Call Chain = nrf_dfu_wait ⇒ app_sched_execute
[Calls]
[Called By]
nrf_nvmc_page_erase (Thumb, 48 bytes, Stack size 0 bytes, nrf_nvmc.o(i.nrf_nvmc_page_erase))
[Called By]
nrf_nvmc_write_words (Thumb, 66 bytes, Stack size 12 bytes, nrf_nvmc.o(i.nrf_nvmc_write_words))
[Stack]
- Max Depth = 12
- Call Chain = nrf_nvmc_write_words
[Called By]
nrf_queue_is_full (Thumb, 30 bytes, Stack size 8 bytes, nrf_queue.o(i.nrf_queue_is_full))
[Stack]
- Max Depth = 8
- Call Chain = nrf_queue_is_full
[Calls]
[Called By]- >> nrf_queue_push
- >> RNG_IRQHandler
nrf_queue_push (Thumb, 196 bytes, Stack size 32 bytes, nrf_queue.o(i.nrf_queue_push))
[Stack]
- Max Depth = 48
- Call Chain = nrf_queue_push ⇒ app_util_critical_region_exit
[Calls]- >> nrf_queue_is_full
- >> app_util_critical_region_exit
- >> app_util_critical_region_enter
- >> queue_utilization_get
- >> nrf_queue_next_idx
- >> __aeabi_memcpy
[Called By]
pb_close_string_substream (Thumb, 6 bytes, Stack size 0 bytes, pb_decode.o(i.pb_close_string_substream))
[Called By]
- >> pb_dec_submessage
- >> decode_static_field
- >> decode_callback_field
pb_decode (Thumb, 32 bytes, Stack size 24 bytes, pb_decode.o(i.pb_decode))
[Stack]
- Max Depth = 388
- Call Chain = pb_decode ⇒ pb_decode_noinit ⇒ decode_extension ⇒ default_extension_decoder ⇒ decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> pb_decode_noinit
- >> pb_message_set_to_defaults
[Called By]- >> dfu_decode_commmand
- >> pb_dec_submessage
pb_decode_fixed32 (Thumb, 54 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, 136 bytes, Stack size 32 bytes, pb_decode.o(i.pb_decode_fixed64))
[Stack]
- Max Depth = 64
- Call Chain = pb_decode_fixed64 ⇒ pb_read ⇒ pb_read (Cycle)
[Calls]
[Called By]
pb_decode_noinit (Thumb, 362 bytes, Stack size 80 bytes, pb_decode.o(i.pb_decode_noinit))
[Stack]
- Max Depth = 364
- Call Chain = pb_decode_noinit ⇒ decode_extension ⇒ default_extension_decoder ⇒ decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> pb_skip_field
- >> pb_decode_tag
- >> find_extension_field
- >> decode_field
- >> decode_extension
- >> pb_field_iter_next
- >> pb_field_iter_find
- >> pb_field_iter_begin
[Called By]- >> pb_decode
- >> pb_dec_submessage
pb_decode_svarint (Thumb, 78 bytes, Stack size 24 bytes, pb_decode.o(i.pb_decode_svarint))
[Stack]
- Max Depth = 80
- Call Chain = pb_decode_svarint ⇒ pb_decode_varint ⇒ pb_readbyte
[Calls]
[Called By]
pb_decode_tag (Thumb, 76 bytes, Stack size 24 bytes, pb_decode.o(i.pb_decode_tag))
[Stack]
- Max Depth = 64
- Call Chain = pb_decode_tag ⇒ pb_decode_varint32 ⇒ pb_readbyte
[Calls]
[Called By]
pb_decode_varint (Thumb, 86 bytes, Stack size 40 bytes, pb_decode.o(i.pb_decode_varint))
[Stack]
- Max Depth = 56
- Call Chain = pb_decode_varint ⇒ pb_readbyte
[Calls]- >> pb_readbyte
- >> __aeabi_llsl
[Called By]- >> pb_decode_svarint
- >> pb_dec_varint
- >> pb_dec_uvarint
pb_field_iter_begin (Thumb, 50 bytes, Stack size 12 bytes, pb_common.o(i.pb_field_iter_begin))
[Stack]
- Max Depth = 12
- Call Chain = pb_field_iter_begin
[Called By]- >> pb_decode_noinit
- >> pb_message_set_to_defaults
- >> iter_from_extension
- >> pb_field_iter_next
pb_field_iter_find (Thumb, 50 bytes, Stack size 16 bytes, pb_common.o(i.pb_field_iter_find))
[Stack]
- Max Depth = 40
- Call Chain = pb_field_iter_find ⇒ pb_field_iter_next ⇒ pb_field_iter_begin
[Calls]
[Called By]
pb_field_iter_next (Thumb, 158 bytes, Stack size 12 bytes, pb_common.o(i.pb_field_iter_next))
[Stack]
- Max Depth = 24
- Call Chain = pb_field_iter_next ⇒ pb_field_iter_begin
[Calls]
[Called By]- >> pb_decode_noinit
- >> pb_message_set_to_defaults
- >> find_extension_field
- >> pb_field_iter_find
pb_istream_from_buffer (Thumb, 32 bytes, Stack size 36 bytes, pb_decode.o(i.pb_istream_from_buffer))
[Stack]
- Max Depth = 36
- Call Chain = pb_istream_from_buffer
[Called By]- >> dfu_decode_commmand
- >> decode_callback_field
pb_make_string_substream (Thumb, 56 bytes, Stack size 16 bytes, pb_decode.o(i.pb_make_string_substream))
[Stack]
- Max Depth = 56
- 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, 94 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]- >> pb_skip_field
- >> pb_read
- >> pb_decode_fixed64
- >> pb_decode_fixed32
- >> read_raw_value
- >> pb_skip_varint
- >> pb_skip_string
- >> pb_dec_string
- >> pb_dec_bytes
pb_skip_field (Thumb, 68 bytes, Stack size 16 bytes, pb_decode.o(i.pb_skip_field))
[Stack]
- Max Depth = 72
- Call Chain = pb_skip_field ⇒ pb_skip_string ⇒ pb_decode_varint32 ⇒ pb_readbyte
[Calls]- >> pb_read
- >> pb_skip_varint
- >> pb_skip_string
[Called By]- >> pb_decode_noinit
- >> decode_callback_field
sha256_final (Thumb, 528 bytes, Stack size 32 bytes, sha256.o(i.sha256_final))
[Stack]
- Max Depth = 356
- Call Chain = sha256_final ⇒ sha256_transform
[Calls]- >> sha256_transform
- >> __ARM_common_ll_muluu
- >> __aeabi_memclr4
[Called By]- >> nrf_crypto_hash_compute
sha256_init (Thumb, 60 bytes, Stack size 0 bytes, sha256.o(i.sha256_init))
[Called By]
- >> nrf_crypto_hash_compute
sha256_transform (Thumb, 480 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, 94 bytes, Stack size 20 bytes, sha256.o(i.sha256_update))
[Stack]
- Max Depth = 344
- Call Chain = sha256_update ⇒ sha256_transform
[Calls]
[Called By]- >> nrf_crypto_hash_compute
softdevice_ble_evt_handler_set (Thumb, 22 bytes, Stack size 0 bytes, softdevice_handler.o(i.softdevice_ble_evt_handler_set))
[Called By]
- >> ble_dfu_transport_init
softdevice_enable (Thumb, 34 bytes, Stack size 24 bytes, softdevice_handler.o(i.softdevice_enable))
[Stack]
- Max Depth = 24
- Call Chain = softdevice_enable
[Called By]
softdevice_enable_get_default_config (Thumb, 46 bytes, Stack size 16 bytes, softdevice_handler.o(i.softdevice_enable_get_default_config))
[Stack]
- Max Depth = 16
- Call Chain = softdevice_enable_get_default_config
[Calls]
[Called By]
softdevice_evt_get (Thumb, 40 bytes, Stack size 16 bytes, softdevice_handler_appsh.o(i.softdevice_evt_get))
[Stack]
- Max Depth = 40
- Call Chain = softdevice_evt_get ⇒ intern_softdevice_events_execute
[Calls]- >> app_error_handler_bare
- >> intern_softdevice_events_execute
[Address Reference Count : 1]- softdevice_handler_appsh.o(i.softdevice_evt_schedule)
softdevice_evt_schedule (Thumb, 14 bytes, Stack size 8 bytes, softdevice_handler_appsh.o(i.softdevice_evt_schedule))
[Stack]
- Max Depth = 64
- Call Chain = softdevice_evt_schedule ⇒ app_sched_event_put ⇒ app_util_critical_region_exit
[Calls]
[Address Reference Count : 1]- nrf_ble_dfu.o(i.ble_stack_init)
softdevice_fault_handler (Thumb, 20 bytes, Stack size 16 bytes, softdevice_handler.o(i.softdevice_fault_handler))
[Stack]
- Max Depth = 16
- Call Chain = softdevice_fault_handler
[Calls]- >> app_error_fault_handler
[Address Reference Count : 1]- softdevice_handler.o(i.softdevice_handler_init)
softdevice_handler_init (Thumb, 138 bytes, Stack size 40 bytes, softdevice_handler.o(i.softdevice_handler_init))
[Stack]
- Max Depth = 48
- Call Chain = softdevice_handler_init ⇒ sd_nvic_EnableIRQ
[Calls]- >> sd_nvic_EnableIRQ
- >> NVIC_EnableIRQ
- >> NVIC_DisableIRQ
[Called By]
softdevice_handler_is_enabled (Thumb, 6 bytes, Stack size 0 bytes, softdevice_handler.o(i.softdevice_handler_is_enabled))
[Called By]
softdevice_sys_evt_handler_set (Thumb, 22 bytes, Stack size 0 bytes, softdevice_handler.o(i.softdevice_sys_evt_handler_set))
[Called By]
Local Symbols
dfu_data_write_handler (Thumb, 12 bytes, Stack size 0 bytes, dfu_req_handling.o(i.dfu_data_write_handler))
[Address Reference Count : 1]
- dfu_req_handling.o(i.nrf_dfu_data_req)
dfu_decode_commmand (Thumb, 60 bytes, Stack size 24 bytes, dfu_req_handling.o(i.dfu_decode_commmand))
[Stack]
- Max Depth = 412
- Call Chain = dfu_decode_commmand ⇒ pb_decode ⇒ pb_decode_noinit ⇒ decode_extension ⇒ default_extension_decoder ⇒ 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
[Called By]- >> nrf_dfu_req_handler_init
- >> nrf_dfu_command_req
dfu_handle_command (Thumb, 6 bytes, Stack size 0 bytes, dfu_req_handling.o(i.dfu_handle_command))
[Called By]
dfu_handle_prevalidate (Thumb, 598 bytes, Stack size 48 bytes, dfu_req_handling.o(i.dfu_handle_prevalidate))
[Stack]
- Max Depth = 3048
- Call Chain = dfu_handle_prevalidate ⇒ nrf_crypto_verify ⇒ ecc_p256_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_find_cache
- >> nrf_crypto_verify
- >> nrf_crypto_hash_compute
- >> __aeabi_memcpy
[Called By]- >> dfu_handle_signed_command
dfu_handle_signed_command (Thumb, 56 bytes, Stack size 16 bytes, dfu_req_handling.o(i.dfu_handle_signed_command))
[Stack]
- Max Depth = 3064
- Call Chain = dfu_handle_signed_command ⇒ dfu_handle_prevalidate ⇒ nrf_crypto_verify ⇒ ecc_p256_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_settings_write
- >> dfu_handle_prevalidate
[Called By]
nrf_dfu_command_req (Thumb, 340 bytes, Stack size 24 bytes, dfu_req_handling.o(i.nrf_dfu_command_req))
[Stack]
- Max Depth = 3088
- Call Chain = nrf_dfu_command_req ⇒ dfu_handle_signed_command ⇒ dfu_handle_prevalidate ⇒ nrf_crypto_verify ⇒ ecc_p256_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> crc32_compute
- >> __ARM_common_switch8
- >> dfu_handle_signed_command
- >> dfu_handle_command
- >> dfu_decode_commmand
- >> __aeabi_memclr4
- >> __aeabi_memcpy
[Called By]- >> nrf_dfu_req_handler_on_req
nrf_dfu_data_req (Thumb, 900 bytes, Stack size 32 bytes, dfu_req_handling.o(i.nrf_dfu_data_req))
[Stack]
- Max Depth = 564
- Call Chain = nrf_dfu_data_req ⇒ nrf_dfu_postvalidate ⇒ nrf_crypto_hash_compute ⇒ sha256_final ⇒ sha256_transform
[Calls]- >> nrf_dfu_wait
- >> nrf_dfu_settings_write
- >> nrf_dfu_flash_store
- >> nrf_dfu_flash_erase
- >> crc32_compute
- >> __ARM_common_switch8
- >> nrf_dfu_postvalidate
- >> __aeabi_memcpy
[Called By]- >> nrf_dfu_req_handler_on_req
nrf_dfu_postvalidate (Thumb, 282 bytes, Stack size 24 bytes, dfu_req_handling.o(i.nrf_dfu_postvalidate))
[Stack]
- Max Depth = 532
- Call Chain = nrf_dfu_postvalidate ⇒ nrf_crypto_hash_compute ⇒ sha256_final ⇒ sha256_transform
[Calls]- >> nrf_dfu_settings_write
- >> nrf_crypto_hash_compute
- >> memcmp
- >> __aeabi_memclr4
- >> __aeabi_memset
[Called By]
on_dfu_complete (Thumb, 52 bytes, Stack size 0 bytes, dfu_req_handling.o(i.on_dfu_complete))
[Stack]
- Max Depth = 24
- Call Chain = on_dfu_complete ⇒ nrf_dfu_transports_close
[Calls]- >> nrf_dfu_transports_close
[Address Reference Count : 1]- dfu_req_handling.o(i.nrf_dfu_postvalidate)
pb_decoding_callback (Thumb, 34 bytes, Stack size 20 bytes, dfu_req_handling.o(i.pb_decoding_callback))
[Stack]
- Max Depth = 20
- Call Chain = pb_decoding_callback
[Address Reference Count : 1]- dfu_req_handling.o(i.dfu_decode_commmand)
NVIC_SystemReset (Thumb, 44 bytes, Stack size 0 bytes, main.o(i.NVIC_SystemReset))
[Called By]
- >> app_error_handler_bare
- >> app_error_fault_handler
buttons_init (Thumb, 58 bytes, Stack size 32 bytes, main.o(i.buttons_init))
[Stack]
- Max Depth = 32
- Call Chain = buttons_init
[Called By]
leds_init (Thumb, 14 bytes, Stack size 8 bytes, main.o(i.leds_init))
[Stack]
- Max Depth = 56
- Call Chain = leds_init ⇒ bsp_board_leds_init ⇒ bsp_board_leds_off ⇒ bsp_board_led_off ⇒ nrf_gpio_pin_write
[Calls]- >> bsp_board_leds_init
- >> bsp_board_led_on
[Called By]
nrf_gpio_cfg (Thumb, 42 bytes, Stack size 20 bytes, boards.o(i.nrf_gpio_cfg))
[Stack]
- Max Depth = 20
- Call Chain = nrf_gpio_cfg
[Called By]
nrf_gpio_pin_write (Thumb, 64 bytes, Stack size 8 bytes, boards.o(i.nrf_gpio_pin_write))
[Stack]
- Max Depth = 8
- Call Chain = nrf_gpio_pin_write
[Called By]- >> bsp_board_led_off
- >> bsp_board_led_on
conn_params_negotiation (Thumb, 126 bytes, Stack size 16 bytes, ble_conn_params.o(i.conn_params_negotiation))
[Stack]
- Max Depth = 104
- Call Chain = conn_params_negotiation ⇒ app_timer_start ⇒ timer_start_op_schedule ⇒ app_util_critical_region_exit
[Calls]- >> is_conn_params_ok
- >> app_timer_start
[Called By]- >> on_write
- >> on_connect
- >> on_conn_params_update
is_conn_params_ok (Thumb, 30 bytes, Stack size 0 bytes, ble_conn_params.o(i.is_conn_params_ok))
[Called By]
- >> conn_params_negotiation
on_conn_params_update (Thumb, 20 bytes, Stack size 8 bytes, ble_conn_params.o(i.on_conn_params_update))
[Stack]
- Max Depth = 112
- Call Chain = on_conn_params_update ⇒ conn_params_negotiation ⇒ app_timer_start ⇒ timer_start_op_schedule ⇒ app_util_critical_region_exit
[Calls]- >> conn_params_negotiation
- >> __aeabi_memcpy
[Called By]- >> ble_conn_params_on_ble_evt
on_connect (Thumb, 42 bytes, Stack size 8 bytes, ble_conn_params.o(i.on_connect))
[Stack]
- Max Depth = 112
- Call Chain = on_connect ⇒ conn_params_negotiation ⇒ app_timer_start ⇒ timer_start_op_schedule ⇒ app_util_critical_region_exit
[Calls]- >> conn_params_negotiation
- >> __aeabi_memcpy
[Called By]- >> ble_conn_params_on_ble_evt
on_disconnect (Thumb, 50 bytes, Stack size 16 bytes, ble_conn_params.o(i.on_disconnect))
[Stack]
- Max Depth = 80
- Call Chain = on_disconnect ⇒ app_timer_stop ⇒ timer_stop_op_schedule ⇒ app_util_critical_region_exit
[Calls]
[Called By]- >> ble_conn_params_on_ble_evt
on_write (Thumb, 74 bytes, Stack size 16 bytes, ble_conn_params.o(i.on_write))
[Stack]
- Max Depth = 120
- Call Chain = on_write ⇒ conn_params_negotiation ⇒ app_timer_start ⇒ timer_start_op_schedule ⇒ app_util_critical_region_exit
[Calls]- >> conn_params_negotiation
- >> ble_srv_is_notification_enabled
- >> app_timer_stop
[Called By]- >> ble_conn_params_on_ble_evt
update_timeout_handler (Thumb, 136 bytes, Stack size 16 bytes, ble_conn_params.o(i.update_timeout_handler))
[Stack]
- Max Depth = 16
- Call Chain = update_timeout_handler
[Address Reference Count : 1]- ble_conn_params.o(i.ble_conn_params_init)
uint16_decode (Thumb, 12 bytes, Stack size 0 bytes, ble_srv_common.o(i.uint16_decode))
[Called By]
- >> ble_srv_is_notification_enabled
advertising_init (Thumb, 118 bytes, Stack size 48 bytes, nrf_ble_dfu.o(i.advertising_init))
[Stack]
- Max Depth = 48
- Call Chain = advertising_init
[Called By]
advertising_start (Thumb, 116 bytes, Stack size 32 bytes, nrf_ble_dfu.o(i.advertising_start))
[Stack]
- Max Depth = 80
- Call Chain = advertising_start ⇒ advertising_init
[Calls]- >> nrf_gpio_pin_set
- >> nrf_gpio_pin_clear
- >> advertising_init
- >> __aeabi_memclr4
[Called By]- >> ble_dfu_transport_init
- >> on_ble_evt
advertising_stop (Thumb, 54 bytes, Stack size 8 bytes, nrf_ble_dfu.o(i.advertising_stop))
[Stack]
- Max Depth = 8
- Call Chain = advertising_stop
[Calls]
[Called By]- >> ble_dfu_transport_close
ble_evt_dispatch (Thumb, 18 bytes, Stack size 8 bytes, nrf_ble_dfu.o(i.ble_evt_dispatch))
[Stack]
- Max Depth = 3176
- Call Chain = ble_evt_dispatch ⇒ on_ble_evt ⇒ on_write ⇒ nrf_dfu_req_handler_on_req ⇒ nrf_dfu_command_req ⇒ dfu_handle_signed_command ⇒ dfu_handle_prevalidate ⇒ nrf_crypto_verify ⇒ ecc_p256_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> ble_conn_params_on_ble_evt
- >> on_ble_evt
[Address Reference Count : 1]- nrf_ble_dfu.o(i.ble_dfu_transport_init)
ble_stack_init (Thumb, 128 bytes, Stack size 48 bytes, nrf_ble_dfu.o(i.ble_stack_init))
[Stack]
- Max Depth = 96
- Call Chain = ble_stack_init ⇒ softdevice_handler_init ⇒ sd_nvic_EnableIRQ
[Calls]- >> app_error_handler_bare
- >> softdevice_handler_init
- >> softdevice_enable_get_default_config
- >> softdevice_enable
- >> nrf_dfu_mbr_init_sd
[Called By]- >> ble_dfu_transport_init
conn_params_error_handler (Thumb, 16 bytes, Stack size 8 bytes, nrf_ble_dfu.o(i.conn_params_error_handler))
[Stack]
- Max Depth = 8
- Call Chain = conn_params_error_handler
[Calls]- >> app_error_handler_bare
[Address Reference Count : 1]- nrf_ble_dfu.o(i.conn_params_init)
conn_params_init (Thumb, 48 bytes, Stack size 32 bytes, nrf_ble_dfu.o(i.conn_params_init))
[Stack]
- Max Depth = 56
- Call Chain = conn_params_init ⇒ ble_conn_params_init ⇒ app_timer_create
[Calls]- >> ble_conn_params_init
- >> __aeabi_memclr4
[Called By]- >> ble_dfu_transport_init
dfu_ctrl_pt_add (Thumb, 184 bytes, Stack size 64 bytes, nrf_ble_dfu.o(i.dfu_ctrl_pt_add))
[Stack]
- Max Depth = 64
- Call Chain = dfu_ctrl_pt_add
[Calls]
[Called By]
dfu_pkt_char_add (Thumb, 158 bytes, Stack size 64 bytes, nrf_ble_dfu.o(i.dfu_pkt_char_add))
[Stack]
- Max Depth = 64
- Call Chain = dfu_pkt_char_add
[Calls]
[Called By]
gap_address_change (Thumb, 56 bytes, Stack size 16 bytes, nrf_ble_dfu.o(i.gap_address_change))
[Stack]
- Max Depth = 16
- Call Chain = gap_address_change
[Called By]
gap_params_init (Thumb, 106 bytes, Stack size 24 bytes, nrf_ble_dfu.o(i.gap_params_init))
[Stack]
- Max Depth = 40
- Call Chain = gap_params_init ⇒ gap_address_change
[Calls]
[Called By]- >> ble_dfu_transport_init
is_cccd_configured (Thumb, 58 bytes, Stack size 24 bytes, nrf_ble_dfu.o(i.is_cccd_configured))
[Stack]
- Max Depth = 40
- Call Chain = is_cccd_configured ⇒ ble_srv_is_notification_enabled
[Calls]- >> ble_srv_is_notification_enabled
[Called By]
leds_init (Thumb, 28 bytes, Stack size 8 bytes, nrf_ble_dfu.o(i.leds_init))
[Stack]
- Max Depth = 40
- Call Chain = leds_init ⇒ nrf_gpio_cfg_output
[Calls]- >> nrf_gpio_pin_set
- >> nrf_gpio_cfg_output
[Called By]- >> ble_dfu_transport_init
nrf_gpio_cfg_output (Thumb, 56 bytes, Stack size 32 bytes, nrf_ble_dfu.o(i.nrf_gpio_cfg_output))
[Stack]
- Max Depth = 32
- Call Chain = nrf_gpio_cfg_output
[Called By]
nrf_gpio_pin_clear (Thumb, 24 bytes, Stack size 0 bytes, nrf_ble_dfu.o(i.nrf_gpio_pin_clear))
[Called By]
- >> on_ble_evt
- >> advertising_start
nrf_gpio_pin_set (Thumb, 24 bytes, Stack size 0 bytes, nrf_ble_dfu.o(i.nrf_gpio_pin_set))
[Called By]
- >> on_ble_evt
- >> leds_init
- >> advertising_stop
- >> advertising_start
on_ble_evt (Thumb, 348 bytes, Stack size 16 bytes, nrf_ble_dfu.o(i.on_ble_evt))
[Stack]
- Max Depth = 3168
- Call Chain = on_ble_evt ⇒ on_write ⇒ nrf_dfu_req_handler_on_req ⇒ nrf_dfu_command_req ⇒ dfu_handle_signed_command ⇒ dfu_handle_prevalidate ⇒ nrf_crypto_verify ⇒ ecc_p256_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> app_error_handler_bare
- >> on_write
- >> on_rw_authorize_req
- >> on_ctrl_pt_write
- >> nrf_gpio_pin_set
- >> nrf_gpio_pin_clear
- >> advertising_start
[Called By]
on_ctrl_pt_write (Thumb, 336 bytes, Stack size 40 bytes, nrf_ble_dfu.o(i.on_ctrl_pt_write))
[Stack]
- Max Depth = 3152
- Call Chain = on_ctrl_pt_write ⇒ nrf_dfu_req_handler_on_req ⇒ nrf_dfu_command_req ⇒ dfu_handle_signed_command ⇒ dfu_handle_prevalidate ⇒ nrf_crypto_verify ⇒ ecc_p256_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_req_handler_on_req
- >> __ARM_common_switch8
- >> response_send
- >> response_select_object_cmd_send
- >> response_crc_cmd_send
[Called By]
on_rw_authorize_req (Thumb, 144 bytes, Stack size 48 bytes, nrf_ble_dfu.o(i.on_rw_authorize_req))
[Stack]
- Max Depth = 88
- Call Chain = on_rw_authorize_req ⇒ is_cccd_configured ⇒ ble_srv_is_notification_enabled
[Calls]
[Called By]
on_write (Thumb, 106 bytes, Stack size 40 bytes, nrf_ble_dfu.o(i.on_write))
[Stack]
- Max Depth = 3152
- Call Chain = on_write ⇒ nrf_dfu_req_handler_on_req ⇒ nrf_dfu_command_req ⇒ dfu_handle_signed_command ⇒ dfu_handle_prevalidate ⇒ nrf_crypto_verify ⇒ ecc_p256_verify ⇒ uECC_verify ⇒ uECC_vli_modMult ⇒ uECC_vli_mmod ⇒ uECC_vli_set
[Calls]- >> nrf_dfu_req_handler_on_req
- >> response_crc_cmd_send
[Called By]
response_crc_cmd_send (Thumb, 114 bytes, Stack size 24 bytes, nrf_ble_dfu.o(i.response_crc_cmd_send))
[Stack]
- Max Depth = 64
- Call Chain = response_crc_cmd_send ⇒ send_hvx
[Calls]- >> uint32_encode
- >> send_hvx
[Called By]- >> on_write
- >> on_ctrl_pt_write
response_select_object_cmd_send (Thumb, 132 bytes, Stack size 40 bytes, nrf_ble_dfu.o(i.response_select_object_cmd_send))
[Stack]
- Max Depth = 80
- Call Chain = response_select_object_cmd_send ⇒ send_hvx
[Calls]- >> uint32_encode
- >> send_hvx
[Called By]
response_send (Thumb, 82 bytes, Stack size 24 bytes, nrf_ble_dfu.o(i.response_send))
[Stack]
- Max Depth = 64
- Call Chain = response_send ⇒ send_hvx
[Calls]
[Called By]
send_hvx (Thumb, 44 bytes, Stack size 40 bytes, nrf_ble_dfu.o(i.send_hvx))
[Stack]
- Max Depth = 40
- Call Chain = send_hvx
[Called By]- >> response_send
- >> response_select_object_cmd_send
- >> response_crc_cmd_send
uint32_encode (Thumb, 32 bytes, Stack size 0 bytes, nrf_ble_dfu.o(i.uint32_encode))
[Called By]
- >> response_select_object_cmd_send
- >> response_crc_cmd_send
scheduler_init (Thumb, 40 bytes, Stack size 16 bytes, nrf_dfu.o(i.scheduler_init))
[Stack]
- Max Depth = 28
- Call Chain = scheduler_init ⇒ app_sched_init
[Calls]- >> app_error_handler_bare
- >> app_sched_init
[Called By]
timers_init (Thumb, 42 bytes, Stack size 16 bytes, nrf_dfu.o(i.timers_init))
[Stack]
- Max Depth = 56
- Call Chain = timers_init ⇒ app_timer_init ⇒ rtc1_init ⇒ NVIC_SetPriority
[Calls]- >> app_error_handler_bare
- >> app_timer_init
[Called By]
wait_for_event (Thumb, 8 bytes, Stack size 0 bytes, nrf_dfu.o(i.wait_for_event))
[Stack]
- Max Depth = 24
- Call Chain = wait_for_event ⇒ app_sched_execute
[Calls]
[Called By]
fs_evt_handler (Thumb, 64 bytes, Stack size 16 bytes, nrf_dfu_flash.o(i.fs_evt_handler))
[Stack]
- Max Depth = 16
- Call Chain = fs_evt_handler
[Address Reference Count : 1]
delay_operation (Thumb, 72 bytes, Stack size 8 bytes, nrf_dfu_settings.o(i.delay_operation))
[Stack]
- Max Depth = 32
- Call Chain = delay_operation ⇒ app_sched_execute
[Calls]
[Called By]- >> wait_for_queue
- >> wait_for_pending
dfu_settings_write_callback (Thumb, 36 bytes, Stack size 16 bytes, nrf_dfu_settings.o(i.dfu_settings_write_callback))
[Stack]
- Max Depth = 16
- Call Chain = dfu_settings_write_callback
[Address Reference Count : 1]- nrf_dfu_settings.o(i.nrf_dfu_settings_write)
wait_for_pending (Thumb, 18 bytes, Stack size 8 bytes, nrf_dfu_settings.o(i.wait_for_pending))
[Stack]
- Max Depth = 40
- Call Chain = wait_for_pending ⇒ delay_operation ⇒ app_sched_execute
[Calls]
[Called By]- >> nrf_dfu_settings_write
wait_for_queue (Thumb, 18 bytes, Stack size 8 bytes, nrf_dfu_settings.o(i.wait_for_queue))
[Stack]
- Max Depth = 40
- Call Chain = wait_for_queue ⇒ delay_operation ⇒ app_sched_execute
[Calls]- >> fs_queue_is_full
- >> delay_operation
[Called By]- >> nrf_dfu_settings_write
align_to_page (Thumb, 12 bytes, Stack size 0 bytes, nrf_dfu_utils.o(i.align_to_page))
[Called By]
- >> nrf_dfu_find_cache
- >> nrf_dfu_sd_continue_impl
- >> nrf_dfu_continue
nrf_dfu_app_continue (Thumb, 242 bytes, Stack size 40 bytes, nrf_dfu_utils.o(i.nrf_dfu_app_continue))
[Stack]
- Max Depth = 176
- Call Chain = nrf_dfu_app_continue ⇒ nrf_dfu_settings_write ⇒ nrf_dfu_flash_store ⇒ fs_store ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> nrf_dfu_settings_write
- >> nrf_dfu_flash_store
- >> nrf_dfu_flash_erase
- >> crc32_compute
- >> nrf_dfu_invalidate_bank
- >> nrf_dfu_mbr_compare
[Called By]
nrf_dfu_bl_continue (Thumb, 70 bytes, Stack size 24 bytes, nrf_dfu_utils.o(i.nrf_dfu_bl_continue))
[Stack]
- Max Depth = 160
- Call Chain = nrf_dfu_bl_continue ⇒ nrf_dfu_settings_write ⇒ nrf_dfu_flash_store ⇒ fs_store ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> nrf_dfu_settings_write
- >> nrf_dfu_invalidate_bank
- >> nrf_dfu_mbr_copy_bl
- >> nrf_dfu_mbr_compare
[Called By]- >> nrf_dfu_sd_bl_continue
- >> nrf_dfu_continue_bank
nrf_dfu_continue_bank (Thumb, 110 bytes, Stack size 24 bytes, nrf_dfu_utils.o(i.nrf_dfu_continue_bank))
[Stack]
- Max Depth = 200
- Call Chain = nrf_dfu_continue_bank ⇒ nrf_dfu_sd_continue ⇒ nrf_dfu_sd_continue_impl ⇒ nrf_dfu_settings_write ⇒ nrf_dfu_flash_store ⇒ fs_store ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> nrf_dfu_sd_continue
- >> nrf_dfu_sd_bl_continue
- >> nrf_dfu_bl_continue
- >> nrf_dfu_app_continue
[Called By]
nrf_dfu_invalidate_bank (Thumb, 20 bytes, Stack size 0 bytes, nrf_dfu_utils.o(i.nrf_dfu_invalidate_bank))
[Called By]
- >> nrf_dfu_sd_continue
- >> nrf_dfu_bl_continue
- >> nrf_dfu_app_continue
nrf_dfu_sd_bl_continue (Thumb, 48 bytes, Stack size 16 bytes, nrf_dfu_utils.o(i.nrf_dfu_sd_bl_continue))
[Stack]
- Max Depth = 176
- Call Chain = nrf_dfu_sd_bl_continue ⇒ nrf_dfu_sd_continue_impl ⇒ nrf_dfu_settings_write ⇒ nrf_dfu_flash_store ⇒ fs_store ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> nrf_dfu_sd_continue_impl
- >> nrf_dfu_bl_continue
[Called By]
nrf_dfu_sd_continue (Thumb, 42 bytes, Stack size 16 bytes, nrf_dfu_utils.o(i.nrf_dfu_sd_continue))
[Stack]
- Max Depth = 176
- Call Chain = nrf_dfu_sd_continue ⇒ nrf_dfu_sd_continue_impl ⇒ nrf_dfu_settings_write ⇒ nrf_dfu_flash_store ⇒ fs_store ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> nrf_dfu_settings_write
- >> nrf_dfu_sd_continue_impl
- >> nrf_dfu_invalidate_bank
[Called By]
nrf_dfu_sd_continue_impl (Thumb, 166 bytes, Stack size 24 bytes, nrf_dfu_utils.o(i.nrf_dfu_sd_continue_impl))
[Stack]
- Max Depth = 160
- Call Chain = nrf_dfu_sd_continue_impl ⇒ nrf_dfu_settings_write ⇒ nrf_dfu_flash_store ⇒ fs_store ⇒ queue_start ⇒ queue_process ⇒ send_event
[Calls]- >> nrf_dfu_settings_write
- >> align_to_page
- >> nrf_dfu_mbr_copy_sd
- >> nrf_dfu_mbr_compare
[Called By]- >> nrf_dfu_sd_continue
- >> nrf_dfu_sd_bl_continue
nrf_drv_rng_stop (Thumb, 18 bytes, Stack size 0 bytes, nrf_drv_rng.o(i.nrf_drv_rng_stop))
[Called By]
next_index (Thumb, 20 bytes, Stack size 0 bytes, app_scheduler.o(i.next_index))
[Called By]
- >> app_sched_execute
- >> app_sched_event_put
NVIC_ClearPendingIRQ (Thumb, 14 bytes, Stack size 0 bytes, app_timer.o(i.NVIC_ClearPendingIRQ))
[Called By]
- >> app_timer_init
- >> rtc1_start
NVIC_EnableIRQ (Thumb, 14 bytes, Stack size 0 bytes, app_timer.o(i.NVIC_EnableIRQ))
[Called By]
- >> app_timer_init
- >> rtc1_start
NVIC_SetPendingIRQ (Thumb, 14 bytes, Stack size 0 bytes, app_timer.o(i.NVIC_SetPendingIRQ))
[Called By]
- >> timer_timeouts_check_sched
- >> timer_list_handler_sched
NVIC_SetPriority (Thumb, 110 bytes, Stack size 8 bytes, app_timer.o(i.NVIC_SetPriority))
[Stack]
- Max Depth = 8
- Call Chain = NVIC_SetPriority
[Called By]- >> app_timer_init
- >> rtc1_init
compare_reg_update (Thumb, 126 bytes, Stack size 32 bytes, app_timer.o(i.compare_reg_update))
[Stack]
- Max Depth = 40
- Call Chain = compare_reg_update ⇒ timer_timeouts_check_sched
[Calls]- >> timer_timeouts_check_sched
- >> ticks_diff_get
- >> rtc1_stop
- >> rtc1_start
- >> rtc1_counter_get
- >> rtc1_compare0_set
- >> nrf_delay_us
[Called By]
elapsed_ticks_acquire (Thumb, 82 bytes, Stack size 0 bytes, app_timer.o(i.elapsed_ticks_acquire))
[Called By]
expired_timers_handler (Thumb, 86 bytes, Stack size 20 bytes, app_timer.o(i.expired_timers_handler))
[Stack]
- Max Depth = 20
- Call Chain = expired_timers_handler
[Called By]
list_deletions_handler (Thumb, 114 bytes, Stack size 16 bytes, app_timer.o(i.list_deletions_handler))
[Stack]
- Max Depth = 28
- Call Chain = list_deletions_handler ⇒ timer_list_remove
[Calls]
[Called By]
list_insertions_handler (Thumb, 226 bytes, Stack size 24 bytes, app_timer.o(i.list_insertions_handler))
[Stack]
- Max Depth = 32
- Call Chain = list_insertions_handler ⇒ timer_list_insert
[Calls]- >> timer_list_insert
- >> ticks_diff_get
[Called By]
nrf_delay_us (Thumb, 54 bytes, Stack size 0 bytes, app_timer.o(i.nrf_delay_us))
[Called By]
- >> rtc1_stop
- >> rtc1_start
- >> compare_reg_update
rtc1_compare0_set (Thumb, 6 bytes, Stack size 0 bytes, app_timer.o(i.rtc1_compare0_set))
[Called By]
rtc1_counter_get (Thumb, 6 bytes, Stack size 0 bytes, app_timer.o(i.rtc1_counter_get))
[Called By]
- >> app_timer_init
- >> timer_timeouts_check
- >> timer_start_op_schedule
- >> compare_reg_update
rtc1_init (Thumb, 18 bytes, Stack size 8 bytes, app_timer.o(i.rtc1_init))
[Stack]
- Max Depth = 16
- Call Chain = rtc1_init ⇒ NVIC_SetPriority
[Calls]
[Called By]
rtc1_start (Thumb, 48 bytes, Stack size 8 bytes, app_timer.o(i.rtc1_start))
[Stack]
- Max Depth = 8
- Call Chain = rtc1_start
[Calls]- >> nrf_delay_us
- >> NVIC_EnableIRQ
- >> NVIC_ClearPendingIRQ
[Called By]
rtc1_stop (Thumb, 66 bytes, Stack size 8 bytes, app_timer.o(i.rtc1_stop))
[Stack]
- Max Depth = 8
- Call Chain = rtc1_stop
[Calls]
[Called By]- >> app_timer_init
- >> compare_reg_update
ticks_diff_get (Thumb, 10 bytes, Stack size 0 bytes, app_timer.o(i.ticks_diff_get))
[Called By]
- >> timer_timeouts_check
- >> list_insertions_handler
- >> compare_reg_update
timeout_handler_exec (Thumb, 54 bytes, Stack size 16 bytes, app_timer.o(i.timeout_handler_exec))
[Stack]
- Max Depth = 16
- Call Chain = timeout_handler_exec
[Calls]- >> app_error_handler_bare
[Called By]
timer_list_handler (Thumb, 74 bytes, Stack size 32 bytes, app_timer.o(i.timer_list_handler))
[Stack]
- Max Depth = 72
- Call Chain = timer_list_handler ⇒ compare_reg_update ⇒ timer_timeouts_check_sched
[Calls]- >> list_insertions_handler
- >> list_deletions_handler
- >> expired_timers_handler
- >> elapsed_ticks_acquire
- >> compare_reg_update
[Called By]
timer_list_handler_sched (Thumb, 10 bytes, Stack size 8 bytes, app_timer.o(i.timer_list_handler_sched))
[Stack]
- Max Depth = 8
- Call Chain = timer_list_handler_sched
[Calls]
[Called By]- >> timer_timeouts_check
- >> timer_stop_op_schedule
- >> timer_start_op_schedule
timer_list_insert (Thumb, 104 bytes, Stack size 8 bytes, app_timer.o(i.timer_list_insert))
[Stack]
- Max Depth = 8
- Call Chain = timer_list_insert
[Called By]- >> list_insertions_handler
timer_list_remove (Thumb, 96 bytes, Stack size 12 bytes, app_timer.o(i.timer_list_remove))
[Stack]
- Max Depth = 12
- Call Chain = timer_list_remove
[Called By]- >> list_deletions_handler
timer_start_op_schedule (Thumb, 92 bytes, Stack size 48 bytes, app_timer.o(i.timer_start_op_schedule))
[Stack]
- Max Depth = 64
- Call Chain = timer_start_op_schedule ⇒ app_util_critical_region_exit
[Calls]- >> user_op_enque
- >> user_op_alloc
- >> timer_list_handler_sched
- >> rtc1_counter_get
- >> app_util_critical_region_exit
- >> app_util_critical_region_enter
[Called By]
timer_stop_op_schedule (Thumb, 66 bytes, Stack size 32 bytes, app_timer.o(i.timer_stop_op_schedule))
[Stack]
- Max Depth = 48
- Call Chain = timer_stop_op_schedule ⇒ app_util_critical_region_exit
[Calls]- >> user_op_enque
- >> user_op_alloc
- >> timer_list_handler_sched
- >> app_util_critical_region_exit
- >> app_util_critical_region_enter
[Called By]
timer_timeouts_check (Thumb, 128 bytes, Stack size 24 bytes, app_timer.o(i.timer_timeouts_check))
[Stack]
- Max Depth = 40
- Call Chain = timer_timeouts_check ⇒ timeout_handler_exec
[Calls]- >> timer_list_handler_sched
- >> timeout_handler_exec
- >> ticks_diff_get
- >> rtc1_counter_get
[Called By]
timer_timeouts_check_sched (Thumb, 10 bytes, Stack size 8 bytes, app_timer.o(i.timer_timeouts_check_sched))
[Stack]
- Max Depth = 8
- Call Chain = timer_timeouts_check_sched
[Calls]
[Called By]
user_op_alloc (Thumb, 52 bytes, Stack size 12 bytes, app_timer.o(i.user_op_alloc))
[Stack]
- Max Depth = 12
- Call Chain = user_op_alloc
[Called By]- >> timer_stop_op_schedule
- >> timer_start_op_schedule
user_op_enque (Thumb, 6 bytes, Stack size 0 bytes, app_timer.o(i.user_op_enque))
[Called By]
- >> timer_stop_op_schedule
- >> timer_start_op_schedule
app_timer_evt_get (Thumb, 44 bytes, Stack size 24 bytes, app_timer_appsh.o(i.app_timer_evt_get))
[Stack]
- Max Depth = 24
- Call Chain = app_timer_evt_get
[Calls]- >> app_error_handler_bare
[Address Reference Count : 1]- app_timer_appsh.o(i.app_timer_evt_schedule)
__sd_nvic_irq_disable (Thumb, 12 bytes, Stack size 0 bytes, app_util_platform.o(i.__sd_nvic_irq_disable))
[Called By]
- >> app_util_critical_region_exit
- >> app_util_critical_region_enter
is_word_aligned (Thumb, 18 bytes, Stack size 0 bytes, ecc.o(i.is_word_aligned))
[Called By]
check_config (Thumb, 26 bytes, Stack size 0 bytes, fstorage.o(i.check_config))
[Called By]
erase_execute (Thumb, 10 bytes, Stack size 8 bytes, fstorage.o(i.erase_execute))
[Stack]
- Max Depth = 8
- Call Chain = erase_execute
[Called By]
on_operation_failure (Thumb, 38 bytes, Stack size 8 bytes, fstorage.o(i.on_operation_failure))
[Stack]
- Max Depth = 40
- Call Chain = on_operation_failure ⇒ send_event
[Calls]- >> send_event
- >> queue_advance
[Called By]
on_operation_success (Thumb, 114 bytes, Stack size 16 bytes, fstorage.o(i.on_operation_success))
[Stack]
- Max Depth = 48
- Call Chain = on_operation_success ⇒ send_event
[Calls]- >> send_event
- >> queue_advance
[Called By]
queue_advance (Thumb, 46 bytes, Stack size 0 bytes, fstorage.o(i.queue_advance))
[Called By]
- >> on_operation_success
- >> on_operation_failure
queue_get_next_free (Thumb, 94 bytes, Stack size 16 bytes, fstorage.o(i.queue_get_next_free))
[Stack]
- Max Depth = 16
- Call Chain = queue_get_next_free
[Calls]
[Called By]
queue_process (Thumb, 104 bytes, Stack size 16 bytes, fstorage.o(i.queue_process))
[Stack]
- Max Depth = 48
- Call Chain = queue_process ⇒ send_event
[Calls]- >> store_execute
- >> send_event
- >> erase_execute
[Called By]- >> fs_sys_event_handler
- >> queue_start
queue_start (Thumb, 44 bytes, Stack size 8 bytes, fstorage.o(i.queue_start))
[Stack]
- Max Depth = 56
- Call Chain = queue_start ⇒ queue_process ⇒ send_event
[Calls]
[Called By]
send_event (Thumb, 90 bytes, Stack size 32 bytes, fstorage.o(i.send_event))
[Stack]
- Max Depth = 32
- Call Chain = send_event
[Called By]- >> queue_process
- >> on_operation_success
- >> on_operation_failure
store_execute (Thumb, 50 bytes, Stack size 16 bytes, fstorage.o(i.store_execute))
[Stack]
- Max Depth = 16
- Call Chain = store_execute
[Called By]
nrf_queue_next_idx (Thumb, 16 bytes, Stack size 0 bytes, nrf_queue.o(i.nrf_queue_next_idx))
[Called By]
- >> nrf_queue_push
- >> nrf_queue_is_full
queue_utilization_get (Thumb, 44 bytes, Stack size 0 bytes, nrf_queue.o(i.queue_utilization_get))
[Called By]
NVIC_DisableIRQ (Thumb, 14 bytes, Stack size 0 bytes, softdevice_handler.o(i.NVIC_DisableIRQ))
[Called By]
- >> softdevice_handler_init
NVIC_EnableIRQ (Thumb, 14 bytes, Stack size 0 bytes, softdevice_handler.o(i.NVIC_EnableIRQ))
[Called By]
- >> softdevice_handler_init
- >> sd_nvic_EnableIRQ
__sd_nvic_app_accessible_irq (Thumb, 30 bytes, Stack size 0 bytes, softdevice_handler.o(i.__sd_nvic_app_accessible_irq))
[Called By]
sd_nvic_EnableIRQ (Thumb, 154 bytes, Stack size 8 bytes, softdevice_handler.o(i.sd_nvic_EnableIRQ))
[Stack]
- Max Depth = 8
- Call Chain = sd_nvic_EnableIRQ
[Calls]- >> __sd_nvic_app_accessible_irq
- >> NVIC_EnableIRQ
[Called By]- >> softdevice_handler_init
buf_read (Thumb, 38 bytes, Stack size 12 bytes, pb_decode.o(i.buf_read))
[Stack]
- Max Depth = 12
- 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, 142 bytes, Stack size 72 bytes, pb_decode.o(i.decode_callback_field))
[Stack]
- Max Depth = 144
- Call Chain = decode_callback_field ⇒ pb_skip_field ⇒ pb_skip_string ⇒ pb_decode_varint32 ⇒ pb_readbyte
[Calls]- >> pb_istream_from_buffer
- >> pb_skip_field
- >> pb_make_string_substream
- >> pb_close_string_substream
- >> read_raw_value
[Called By]
decode_extension (Thumb, 88 bytes, Stack size 40 bytes, pb_decode.o(i.decode_extension))
[Stack]
- Max Depth = 284
- Call Chain = decode_extension ⇒ default_extension_decoder ⇒ decode_field ⇒ decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> default_extension_decoder
[Called By]
decode_field (Thumb, 70 bytes, Stack size 16 bytes, pb_decode.o(i.decode_field))
[Stack]
- Max Depth = 180
- 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_pointer_field
- >> decode_callback_field
[Called By]- >> pb_decode_noinit
- >> default_extension_decoder
decode_pointer_field (Thumb, 6 bytes, Stack size 0 bytes, pb_decode.o(i.decode_pointer_field))
[Called By]
decode_static_field (Thumb, 280 bytes, Stack size 56 bytes, pb_decode.o(i.decode_static_field))
[Stack]
- Max Depth = 164
- Call Chain = decode_static_field ⇒ pb_message_set_to_defaults ⇒ pb_field_set_to_default ⇒ pb_message_set_to_defaults (Cycle)
[Calls]- >> pb_make_string_substream
- >> pb_close_string_substream
- >> pb_message_set_to_defaults
- >> __aeabi_memclr
[Called By]
default_extension_decoder (Thumb, 50 bytes, Stack size 64 bytes, pb_decode.o(i.default_extension_decoder))
[Stack]
- Max Depth = 244
- Call Chain = default_extension_decoder ⇒ 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
[Called By]
find_extension_field (Thumb, 40 bytes, Stack size 16 bytes, pb_decode.o(i.find_extension_field))
[Stack]
- Max Depth = 40
- Call Chain = find_extension_field ⇒ pb_field_iter_next ⇒ pb_field_iter_begin
[Calls]
[Called By]
iter_from_extension (Thumb, 46 bytes, Stack size 16 bytes, pb_decode.o(i.iter_from_extension))
[Stack]
- Max Depth = 28
- Call Chain = iter_from_extension ⇒ pb_field_iter_begin
[Calls]
[Called By]- >> pb_field_set_to_default
- >> default_extension_decoder
pb_dec_bytes (Thumb, 90 bytes, Stack size 40 bytes, pb_decode.o(i.pb_dec_bytes))
[Stack]
- Max Depth = 80
- Call Chain = pb_dec_bytes ⇒ pb_decode_varint32 ⇒ pb_readbyte
[Calls]- >> pb_read
- >> pb_decode_varint32
[Address Reference Count : 1]
pb_dec_fixed32 (Thumb, 18 bytes, Stack size 16 bytes, pb_decode.o(i.pb_dec_fixed32))
[Stack]
- Max Depth = 64
- Call Chain = pb_dec_fixed32 ⇒ pb_decode_fixed32 ⇒ pb_read ⇒ pb_read (Cycle)
[Calls]
[Address Reference Count : 1]
pb_dec_fixed64 (Thumb, 18 bytes, Stack size 16 bytes, pb_decode.o(i.pb_dec_fixed64))
[Stack]
- Max Depth = 80
- Call Chain = pb_dec_fixed64 ⇒ pb_decode_fixed64 ⇒ pb_read ⇒ pb_read (Cycle)
[Calls]
[Address Reference Count : 1]
pb_dec_string (Thumb, 82 bytes, Stack size 32 bytes, pb_decode.o(i.pb_dec_string))
[Stack]
- Max Depth = 72
- Call Chain = pb_dec_string ⇒ pb_decode_varint32 ⇒ pb_readbyte
[Calls]- >> pb_read
- >> pb_decode_varint32
[Address Reference Count : 1]
pb_dec_submessage (Thumb, 84 bytes, Stack size 40 bytes, pb_decode.o(i.pb_dec_submessage))
[Stack]
- Max Depth = 428
- Call Chain = pb_dec_submessage ⇒ pb_decode ⇒ pb_decode_noinit ⇒ decode_extension ⇒ default_extension_decoder ⇒ 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
- >> pb_close_string_substream
[Address Reference Count : 1]
pb_dec_svarint (Thumb, 110 bytes, Stack size 40 bytes, pb_decode.o(i.pb_dec_svarint))
[Stack]
- Max Depth = 120
- Call Chain = pb_dec_svarint ⇒ pb_decode_svarint ⇒ pb_decode_varint ⇒ pb_readbyte
[Calls]
[Address Reference Count : 1]
pb_dec_uvarint (Thumb, 110 bytes, Stack size 40 bytes, pb_decode.o(i.pb_dec_uvarint))
[Stack]
- Max Depth = 96
- Call Chain = pb_dec_uvarint ⇒ pb_decode_varint ⇒ pb_readbyte
[Calls]
[Address Reference Count : 1]
pb_dec_varint (Thumb, 134 bytes, Stack size 40 bytes, pb_decode.o(i.pb_dec_varint))
[Stack]
- Max Depth = 96
- Call Chain = pb_dec_varint ⇒ pb_decode_varint ⇒ pb_readbyte
[Calls]
[Address Reference Count : 1]
pb_decode_varint32 (Thumb, 106 bytes, Stack size 24 bytes, pb_decode.o(i.pb_decode_varint32))
[Stack]
- Max Depth = 40
- Call Chain = pb_decode_varint32 ⇒ pb_readbyte
[Calls]
[Called By]- >> pb_make_string_substream
- >> pb_decode_tag
- >> pb_skip_string
- >> pb_dec_string
- >> pb_dec_bytes
pb_field_set_to_default (Thumb, 208 bytes, Stack size 40 bytes, pb_decode.o(i.pb_field_set_to_default))
[Stack]
- Max Depth = 68 + 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, 48 bytes, Stack size 40 bytes, pb_decode.o(i.pb_message_set_to_defaults))
[Stack]
- Max Depth = 108
- 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, 40 bytes, Stack size 16 bytes, pb_decode.o(i.pb_readbyte))
[Stack]
- Max Depth = 16
- Call Chain = pb_readbyte
[Called By]- >> pb_decode_varint
- >> pb_decode_varint32
pb_skip_string (Thumb, 30 bytes, Stack size 16 bytes, pb_decode.o(i.pb_skip_string))
[Stack]
- Max Depth = 56
- Call Chain = pb_skip_string ⇒ pb_decode_varint32 ⇒ pb_readbyte
[Calls]- >> pb_read
- >> pb_decode_varint32
[Called By]
pb_skip_varint (Thumb, 38 bytes, Stack size 16 bytes, pb_decode.o(i.pb_skip_varint))
[Stack]
- Max Depth = 48
- Call Chain = pb_skip_varint ⇒ pb_read ⇒ pb_read (Cycle)
[Calls]
[Called By]
read_raw_value (Thumb, 118 bytes, Stack size 40 bytes, pb_decode.o(i.read_raw_value))
[Stack]
- Max Depth = 72
- Call Chain = read_raw_value ⇒ pb_read ⇒ pb_read (Cycle)
[Calls]
[Called By]
is_disabled_in_debug_needed (Thumb, 52 bytes, Stack size 0 bytes, system_nrf51.o(i.is_disabled_in_debug_needed))
[Called By]
is_manual_peripheral_setup_needed (Thumb, 104 bytes, Stack size 0 bytes, system_nrf51.o(i.is_manual_peripheral_setup_needed))
[Called By]
is_peripheral_domain_setup_needed (Thumb, 78 bytes, Stack size 0 bytes, system_nrf51.o(i.is_peripheral_domain_setup_needed))
[Called By]
bcopy (Thumb, 14 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, 38 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, 144 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, 436 bytes, Stack size 256 bytes, micro_ecc_lib_uECC.c.o(.text.vli_mmod_fast_secp256r1))
[Stack]
- Max Depth = 320
- 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, 64 bytes, Stack size 64 bytes, micro_ecc_lib_uECC.c.o(.text.vli_modInv_update))
[Stack]
- Max Depth = 128
- Call Chain = vli_modInv_update ⇒ uECC_vli_add
[Calls]- >> uECC_vli_rshift1
- >> uECC_vli_add
[Called By]
x_side_default (Thumb, 86 bytes, Stack size 288 bytes, micro_ecc_lib_uECC.c.o(.text.x_side_default))
[Stack]
- Max Depth = 752
- Call Chain = x_side_default ⇒ uECC_vli_modSquare_fast ⇒ uECC_vli_square
[Calls]- >> uECC_vli_modSquare_fast
- >> uECC_vli_modMult_fast
- >> uECC_vli_modSub
- >> uECC_vli_modAdd
- >> memset
[Address Reference Count : 1]- micro_ecc_lib_uECC.c.o(.rodata.curve_secp256r1)
double_jacobian_default (Thumb, 340 bytes, Stack size 448 bytes, micro_ecc_lib_uECC.c.o(.text.double_jacobian_default))
[Stack]
- Max Depth = 912
- 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, 200 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