#<CALLGRAPH># ARM Linker, 5.03 [Build 76]: Last Updated: Fri Sep 27 17:27:25 2013
__asm___11_app_timer_c_cd27f9c3__nrf_delay_us ⇒ __asm___11_app_timer_c_cd27f9c3__nrf_delay_us
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 app_gpiote.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_COMP_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 arm_startup_nrf51.o(.text) 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(.text) 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(.text) referenced from arm_startup_nrf51.o(RESET)
- SWI1_IRQHandler from ble_radio_notification.o(.text) referenced from arm_startup_nrf51.o(RESET)
- SWI2_IRQHandler from ble_stack_handler.o(.text) 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(.text) 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 __main.o(!!!main) referenced from arm_startup_nrf51.o(.text)
- battery_level_meas_timeout_handler from main.o(.text) referenced from main.o(.text)
- ble_evt_dispatch from main.o(.text) referenced from main.o(.text)
- ble_flash_on_radio_active_evt from ble_flash.o(.text) referenced from main.o(.text)
- bond_evt_handler from main.o(.text) referenced from main.o(.text)
- bond_manager_error_handler from main.o(.text) referenced from main.o(.text)
- button_event_handler from main.o(.text) referenced 2 times from main.o(.data)
- conn_params_error_handler from main.o(.text) referenced from main.o(.text)
- detection_delay_timeout_handler from app_button.o(.text) referenced from app_button.o(.text)
- gpiote_event_handler from app_button.o(.text) referenced from app_button.o(.text)
- on_conn_params_evt from main.o(.text) referenced from main.o(.text)
- on_hts_evt from main.o(.text) referenced from main.o(.text)
- softdevice_assertion_handler from ble_stack_handler.o(.text) referenced from ble_stack_handler.o(.text)
- update_timeout_handler from ble_conn_params.o(.text) referenced from ble_conn_params.o(.text)
Global Symbols
__main (Thumb, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
[Calls]
- >> __scatterload
- >> __rt_entry
__scatterload (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
[Called By]
__scatterload_rt2 (Thumb, 52 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
[Calls]
__scatterload_rt2_thumb_only (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
__scatterload_null (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
__scatterload_zeroinit (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
__rt_lib_init (Thumb, 0 bytes, Stack size unknown bytes, libinit.o(.ARM.Collect$$libinit$$00000000))
[Called By]
__rt_lib_init_fp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000001))
__rt_lib_init_alloca_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002C))
__rt_lib_init_argv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002A))
__rt_lib_init_atexit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019))
__rt_lib_init_clock_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F))
__rt_lib_init_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000030))
__rt_lib_init_exceptions_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E))
__rt_lib_init_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D))
__rt_lib_init_getenv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021))
__rt_lib_init_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000008))
__rt_lib_init_lc_collate_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000F))
__rt_lib_init_lc_ctype_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000011))
__rt_lib_init_lc_monetary_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013))
__rt_lib_init_lc_numeric_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015))
__rt_lib_init_lc_time_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017))
__rt_lib_init_rand_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000C))
__rt_lib_init_return (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000031))
__rt_lib_init_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B))
__rt_lib_init_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000023))
__rt_lib_init_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000A))
__rt_lib_shutdown (Thumb, 0 bytes, Stack size unknown bytes, libshutdown.o(.ARM.Collect$$libshutdown$$00000000))
[Called By]
__rt_lib_shutdown_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000006))
__rt_lib_shutdown_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E))
__rt_lib_shutdown_return (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F))
__rt_lib_shutdown_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000009))
__rt_lib_shutdown_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000003))
__rt_lib_shutdown_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000B))
__rt_entry (Thumb, 0 bytes, Stack size unknown bytes, rtentry.o(.ARM.Collect$$rtentry$$00000000))
[Called By]
- >> __scatterload_rt2
- >> __main
__rt_entry_presh_1 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$00000002))
__rt_entry_sh (Thumb, 0 bytes, Stack size unknown bytes, rtentry4.o(.ARM.Collect$$rtentry$$00000004))
[Stack]
- Max Depth = 8 + Unknown Stack Size
- Call Chain = __rt_entry_sh ⇒ __user_setup_stackheap
[Calls]- >> __user_setup_stackheap
__rt_entry_li (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000A))
[Calls]
__rt_entry_postsh_1 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$00000009))
__rt_entry_main (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000D))
[Stack]
- Max Depth = 376 + Unknown Stack Size
- Call Chain = __rt_entry_main ⇒ main ⇒ services_init ⇒ ble_bas_init ⇒ battery_level_char_add ⇒ ble_srv_report_ref_encode ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
__rt_entry_postli_1 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000C))
__rt_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit.o(.ARM.Collect$$rtexit$$00000000))
[Called By]
__rt_exit_ls (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000003))
[Calls]
__rt_exit_prels_1 (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))
__rt_exit_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000004))
[Calls]
__asm___11_app_timer_c_cd27f9c3__nrf_delay_us (Thumb, 30 bytes, Stack size 0 bytes, app_timer.o(.emb_text))
[Calls]
- >> __asm___11_app_timer_c_cd27f9c3__nrf_delay_us
[Called By]- >> __asm___11_app_timer_c_cd27f9c3__nrf_delay_us
- >> rtc1_stop
- >> rtc1_start
__asm___13_simple_uart_c_5dda6715__nrf_delay_us (Thumb, 30 bytes, Stack size 0 bytes, simple_uart.o(.emb_text), UNUSED)
[Calls]
- >> __asm___13_simple_uart_c_5dda6715__nrf_delay_us
[Called By]- >> simple_uart_get_with_timeout
- >> __asm___13_simple_uart_c_5dda6715__nrf_delay_us
__aeabi_memcpy4 (Thumb, 56 bytes, Stack size 0 bytes, rt_memcpy.o(.emb_text))
[Called By]
- >> on_connect
- >> load_all_from_flash
- >> master_find_in_db
- >> master_update
- >> on_auth_status_from_new_master
- >> sys_attr_load_from_flash
- >> bonding_info_load_from_flash
- >> ble_conn_params_init
- >> __aeabi_memcpy
- >> fetch_stack
- >> ble_flash_page_read
- >> ble_bondmngr_sys_attr_store
- >> ble_bondmngr_bonded_master_delete
__aeabi_memcpy8 (Thumb, 0 bytes, Stack size 0 bytes, rt_memcpy.o(.emb_text), UNUSED)
Reset_Handler (Thumb, 18 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)
LPCOMP_COMP_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)
RNG_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)
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)
__user_initial_stackheap (Thumb, 0 bytes, Stack size unknown bytes, arm_startup_nrf51.o(.text))
[Called By]
- >> __user_setup_stackheap
SystemInit (Thumb, 52 bytes, Stack size 8 bytes, system_nrf51.o(.text))
[Stack]
- Max Depth = 20
- Call Chain = SystemInit ⇒ is_manual_peripheral_setup_needed ⇒ __ARM_common_switch8
[Calls]- >> is_manual_peripheral_setup_needed
- >> is_output_31_setup_needed
[Address Reference Count : 1]- arm_startup_nrf51.o(.text)
SystemCoreClockUpdate (Thumb, 8 bytes, Stack size 0 bytes, system_nrf51.o(.text), UNUSED)
app_error_handler (Thumb, 26 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 104
- Call Chain = app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> ble_debug_assert_handler
- >> nrf_gpio_pin_set
[Called By]- >> SWI2_IRQHandler
- >> intern_ble_stack_events_execute
- >> timeout_handler_exec
- >> ble_srv_report_ref_encode
- >> char_add
- >> pnp_id_encode
- >> sys_id_encode
- >> assert_nrf_callback
- >> power_manage
- >> radio_notification_init
- >> bond_manager_init
- >> bond_evt_handler
- >> bond_manager_error_handler
- >> buttons_init
- >> gpiote_init
- >> button_event_handler
- >> ble_stack_init
- >> on_ble_evt
- >> conn_params_init
- >> conn_params_error_handler
- >> on_conn_params_evt
- >> advertising_start
- >> application_timers_start
- >> services_init
- >> temperature_measurement_send
- >> advertising_init
- >> gap_params_init
- >> timers_init
- >> battery_level_update
- >> ble_error_log_init
- >> button_handler_execute
assert_nrf_callback (Thumb, 18 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = assert_nrf_callback ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Called By]- >> softdevice_assertion_handler
main (Thumb, 90 bytes, Stack size 8 bytes, main.o(.text))
[Stack]
- Max Depth = 376
- Call Chain = main ⇒ services_init ⇒ ble_bas_init ⇒ battery_level_char_add ⇒ ble_srv_report_ref_encode ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> simple_uart_putstring
- >> simple_uart_config
- >> power_manage
- >> radio_notification_init
- >> bond_manager_init
- >> buttons_init
- >> gpiote_init
- >> ble_stack_init
- >> conn_params_init
- >> advertising_start
- >> application_timers_start
- >> sec_params_init
- >> sensor_sim_init
- >> services_init
- >> advertising_init
- >> gap_params_init
- >> timers_init
- >> leds_init
[Called By]
ble_dis_init (Thumb, 386 bytes, Stack size 32 bytes, ble_dis.o(.text))
[Stack]
- Max Depth = 216
- Call Chain = ble_dis_init ⇒ char_add ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> char_add
- >> pnp_id_encode
- >> sys_id_encode
[Called By]
ble_bas_on_ble_evt (Thumb, 58 bytes, Stack size 16 bytes, ble_bas.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = ble_bas_on_ble_evt ⇒ on_write
[Calls]- >> on_write
- >> on_disconnect
- >> on_connect
[Called By]
ble_bas_init (Thumb, 66 bytes, Stack size 24 bytes, ble_bas.o(.text))
[Stack]
- Max Depth = 240
- Call Chain = ble_bas_init ⇒ battery_level_char_add ⇒ ble_srv_report_ref_encode ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> battery_level_char_add
[Called By]
ble_bas_battery_level_update (Thumb, 118 bytes, Stack size 40 bytes, ble_bas.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = ble_bas_battery_level_update
[Called By]
ble_hts_on_ble_evt (Thumb, 72 bytes, Stack size 16 bytes, ble_hts.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = ble_hts_on_ble_evt ⇒ on_write ⇒ on_cccd_write
[Calls]- >> on_hvc
- >> on_write
- >> on_disconnect
- >> on_connect
[Called By]
ble_hts_init (Thumb, 98 bytes, Stack size 24 bytes, ble_hts.o(.text))
[Stack]
- Max Depth = 196
- Call Chain = ble_hts_init ⇒ hts_measurement_char_add ⇒ hts_measurement_encode ⇒ ble_date_time_encode
[Calls]- >> hts_temp_type_char_add
- >> hts_measurement_char_add
[Called By]
ble_hts_measurement_send (Thumb, 94 bytes, Stack size 64 bytes, ble_hts.o(.text))
[Stack]
- Max Depth = 108
- Call Chain = ble_hts_measurement_send ⇒ hts_measurement_encode ⇒ ble_date_time_encode
[Calls]- >> hts_measurement_encode
[Called By]- >> temperature_measurement_send
ble_hts_is_indication_enabled (Thumb, 38 bytes, Stack size 24 bytes, ble_hts.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = ble_hts_is_indication_enabled
[Calls]- >> ble_srv_is_indication_enabled
[Called By]
ble_advdata_set (Thumb, 122 bytes, Stack size 104 bytes, ble_advdata.o(.text))
[Stack]
- Max Depth = 232
- Call Chain = ble_advdata_set ⇒ adv_data_encode ⇒ uuid_list_encode ⇒ uuid_list_sized_encode
[Calls]- >> srdata_check
- >> advdata_check
- >> adv_data_encode
[Called By]
ble_srv_report_ref_encode (Thumb, 60 bytes, Stack size 24 bytes, ble_srv_common.o(.text))
[Stack]
- Max Depth = 128
- Call Chain = ble_srv_report_ref_encode ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Called By]- >> battery_level_char_add
ble_srv_ascii_to_utf8 (Thumb, 18 bytes, Stack size 16 bytes, ble_srv_common.o(.text))
[Stack]
- Max Depth = 28
- Call Chain = ble_srv_ascii_to_utf8 ⇒ strlen
[Calls]
[Called By]
ble_sensorsim_init (Thumb, 26 bytes, Stack size 0 bytes, ble_sensorsim.o(.text))
[Called By]
ble_sensorsim_measure (Thumb, 74 bytes, Stack size 0 bytes, ble_sensorsim.o(.text))
[Called By]
- >> hts_sim_measurement
- >> battery_level_update
RTC1_IRQHandler (Thumb, 34 bytes, Stack size 8 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 152
- Call Chain = RTC1_IRQHandler ⇒ timer_timeouts_check ⇒ timeout_handler_exec ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
SWI0_IRQHandler (Thumb, 8 bytes, Stack size 8 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 92
- Call Chain = SWI0_IRQHandler ⇒ timer_list_handler ⇒ list_insertions_handler ⇒ timer_list_insert
[Calls]
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
app_timer_init (Thumb, 250 bytes, Stack size 40 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 56
- Call Chain = app_timer_init ⇒ rtc1_init ⇒ NVIC_SetPriority
[Calls]- >> rtc1_counter_get
- >> NVIC_ClearPendingIRQ
- >> NVIC_EnableIRQ
- >> rtc1_stop
- >> rtc1_init
- >> NVIC_SetPriority
[Called By]
app_timer_create (Thumb, 108 bytes, Stack size 16 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = app_timer_create
[Called By]- >> ble_conn_params_init
- >> app_button_init
- >> timers_init
app_timer_start (Thumb, 98 bytes, Stack size 32 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 84
- Call Chain = app_timer_start ⇒ timer_start_op_schedule ⇒ user_op_alloc
[Calls]- >> user_id_get
- >> timer_start_op_schedule
[Called By]- >> conn_params_negotiation
- >> application_timers_start
- >> gpiote_event_handler
app_timer_stop (Thumb, 60 bytes, Stack size 16 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 44
- Call Chain = app_timer_stop ⇒ timer_stop_op_schedule ⇒ user_op_alloc
[Calls]- >> user_id_get
- >> timer_stop_op_schedule
[Called By]- >> ble_conn_params_stop
- >> on_write
- >> on_disconnect
- >> app_button_disable
- >> gpiote_event_handler
app_timer_stop_all (Thumb, 26 bytes, Stack size 8 bytes, app_timer.o(.text), UNUSED)
[Calls]
- >> user_id_get
- >> timer_stop_all_op_schedule
app_timer_cnt_get (Thumb, 14 bytes, Stack size 8 bytes, app_timer.o(.text), UNUSED)
[Calls]
app_timer_cnt_diff_compute (Thumb, 22 bytes, Stack size 16 bytes, app_timer.o(.text), UNUSED)
[Calls]
ble_stack_handler_init (Thumb, 82 bytes, Stack size 40 bytes, ble_stack_handler.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = ble_stack_handler_init
[Called By]
intern_ble_stack_events_execute (Thumb, 60 bytes, Stack size 16 bytes, ble_stack_handler.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = intern_ble_stack_events_execute ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Called By]
SWI2_IRQHandler (Thumb, 50 bytes, Stack size 16 bytes, ble_stack_handler.o(.text))
[Stack]
- Max Depth = 136
- Call Chain = SWI2_IRQHandler ⇒ intern_ble_stack_events_execute ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> intern_ble_stack_events_execute
- >> app_error_handler
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
ble_conn_params_init (Thumb, 90 bytes, Stack size 16 bytes, ble_conn_params.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = ble_conn_params_init ⇒ __aeabi_memcpy
[Calls]- >> app_timer_create
- >> __aeabi_memcpy
- >> __aeabi_memcpy4
[Called By]
ble_conn_params_stop (Thumb, 12 bytes, Stack size 8 bytes, ble_conn_params.o(.text), UNUSED)
[Calls]
ble_conn_params_on_ble_evt (Thumb, 62 bytes, Stack size 8 bytes, ble_conn_params.o(.text))
[Stack]
- Max Depth = 124
- Call Chain = ble_conn_params_on_ble_evt ⇒ on_write ⇒ conn_params_negotiation ⇒ app_timer_start ⇒ timer_start_op_schedule ⇒ user_op_alloc
[Calls]- >> on_conn_params_update
- >> on_write
- >> on_disconnect
- >> on_connect
[Called By]
ble_conn_params_change_conn_params (Thumb, 86 bytes, Stack size 16 bytes, ble_conn_params.o(.text), UNUSED)
[Calls]
- >> is_conn_params_ok
- >> __aeabi_memcpy
ble_bondmngr_bonded_master_delete (Thumb, 342 bytes, Stack size 24 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 80
- Call Chain = ble_bondmngr_bonded_master_delete ⇒ sys_attr_store ⇒ ble_flash_block_write ⇒ flash_word_write
[Calls]- >> update_whitelist
- >> flash_pages_erase
- >> sys_attr_store
- >> bond_info_store
- >> __aeabi_memclr4
- >> __aeabi_memcpy4
- >> ble_flash_page_addr
[Called By]
ble_bondmngr_on_ble_evt (Thumb, 110 bytes, Stack size 8 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 104
- Call Chain = ble_bondmngr_on_ble_evt ⇒ on_auth_status ⇒ auth_status_update ⇒ bond_info_store ⇒ ble_flash_block_write ⇒ flash_word_write
[Calls]- >> on_sec_update
- >> on_sec_info_request
- >> on_auth_status
- >> on_sys_attr_missing
- >> on_connect
[Called By]
ble_bondmngr_bonded_masters_store (Thumb, 248 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = ble_bondmngr_bonded_masters_store ⇒ sys_attr_store ⇒ ble_flash_block_write ⇒ flash_word_write
[Calls]- >> master_update
- >> sys_attr_changed
- >> bond_info_changed
- >> sys_attr_store
- >> bond_info_store
- >> ble_flash_page_erase
[Called By]
ble_bondmngr_sys_attr_store (Thumb, 92 bytes, Stack size 16 bytes, ble_bondmngr.o(.text), UNUSED)
[Calls]
- >> sys_attr_store
- >> __aeabi_memcpy4
ble_bondmngr_bonded_masters_delete (Thumb, 34 bytes, Stack size 8 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = ble_bondmngr_bonded_masters_delete ⇒ flash_pages_erase ⇒ ble_flash_page_erase
[Calls]
[Called By]
ble_bondmngr_master_addr_get (Thumb, 66 bytes, Stack size 16 bytes, ble_bondmngr.o(.text), UNUSED)
[Calls]
ble_bondmngr_whitelist_get (Thumb, 108 bytes, Stack size 8 bytes, ble_bondmngr.o(.text), UNUSED)
ble_bondmngr_init (Thumb, 132 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 144
- Call Chain = ble_bondmngr_init ⇒ load_all_from_flash ⇒ sys_attr_load_from_flash ⇒ ble_flash_crc16_compute
[Calls]- >> load_all_from_flash
- >> flash_pages_erase
- >> __aeabi_uidivmod
- >> __aeabi_memclr4
[Called By]
ble_bondmngr_master_ids_get (Thumb, 90 bytes, Stack size 8 bytes, ble_bondmngr.o(.text), UNUSED)
ble_bondmngr_is_link_encrypted (Thumb, 38 bytes, Stack size 0 bytes, ble_bondmngr.o(.text), UNUSED)
ble_flash_crc16_compute (Thumb, 64 bytes, Stack size 16 bytes, ble_flash.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = ble_flash_crc16_compute
[Called By]- >> sys_attr_changed
- >> bond_info_changed
- >> sys_attr_load_from_flash
- >> bonding_info_load_from_flash
- >> sys_attr_store
- >> bond_info_store
- >> ble_flash_page_read
- >> ble_flash_page_write
ble_flash_word_write (Thumb, 18 bytes, Stack size 16 bytes, ble_flash.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = ble_flash_word_write ⇒ flash_word_write
[Calls]
[Called By]- >> sys_attr_store
- >> bond_info_store
ble_flash_block_write (Thumb, 36 bytes, Stack size 24 bytes, ble_flash.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = ble_flash_block_write ⇒ flash_word_write
[Calls]
[Called By]- >> sys_attr_store
- >> bond_info_store
ble_flash_page_erase (Thumb, 26 bytes, Stack size 16 bytes, ble_flash.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = ble_flash_page_erase
[Calls]
[Called By]- >> flash_pages_erase
- >> ble_bondmngr_bonded_masters_store
- >> ble_error_log_read
ble_flash_page_write (Thumb, 120 bytes, Stack size 48 bytes, ble_flash.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = ble_flash_page_write ⇒ flash_word_write
[Calls]- >> flash_word_write
- >> flash_word_unprotected_write
- >> flash_page_erase
- >> ble_flash_crc16_compute
[Called By]
ble_flash_page_read (Thumb, 112 bytes, Stack size 56 bytes, ble_flash.o(.text), UNUSED)
[Calls]
- >> __aeabi_memcpy4
- >> ble_flash_crc16_compute
[Called By]
ble_flash_page_addr (Thumb, 18 bytes, Stack size 0 bytes, ble_flash.o(.text))
[Called By]
- >> sys_attr_load_from_flash
- >> bonding_info_load_from_flash
- >> sys_attr_store
- >> bond_info_store
- >> ble_bondmngr_bonded_master_delete
ble_flash_on_radio_active_evt (Thumb, 6 bytes, Stack size 0 bytes, ble_flash.o(.text))
[Address Reference Count : 1]
app_button_init (Thumb, 188 bytes, Stack size 48 bytes, app_button.o(.text))
[Stack]
- Max Depth = 80
- Call Chain = app_button_init ⇒ app_gpiote_user_register ⇒ pins_sense_disable
[Calls]- >> app_timer_create
- >> app_gpiote_user_register
[Called By]
app_button_enable (Thumb, 24 bytes, Stack size 8 bytes, app_button.o(.text))
[Stack]
- Max Depth = 28
- Call Chain = app_button_enable ⇒ app_gpiote_user_enable
[Calls]- >> app_gpiote_user_enable
[Called By]
app_button_disable (Thumb, 42 bytes, Stack size 8 bytes, app_button.o(.text))
[Stack]
- Max Depth = 52
- Call Chain = app_button_disable ⇒ app_timer_stop ⇒ timer_stop_op_schedule ⇒ user_op_alloc
[Calls]- >> app_timer_stop
- >> app_gpiote_user_disable
[Called By]
app_button_is_pushed (Thumb, 90 bytes, Stack size 24 bytes, app_button.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = app_button_is_pushed ⇒ app_gpiote_pins_state_get
[Calls]- >> app_gpiote_pins_state_get
[Called By]
ble_error_log_write (Thumb, 96 bytes, Stack size 24 bytes, ble_error_log.o(.text))
[Stack]
- Max Depth = 88
- Call Chain = ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> __aeabi_uidivmod
- >> strncpy
- >> fetch_stack
- >> ble_flash_page_write
[Called By]- >> ble_debug_assert_handler
ble_error_log_read (Thumb, 170 bytes, Stack size 24 bytes, ble_error_log.o(.text), UNUSED)
[Calls]
- >> __aeabi_uidivmod
- >> ble_flash_page_read
- >> ble_flash_page_erase
[Called By]
ble_error_log_clear (Thumb, 8 bytes, Stack size 0 bytes, ble_error_log.o(.text), UNUSED)
ble_error_log_init (Thumb, 60 bytes, Stack size 16 bytes, ble_error_log.o(.text), UNUSED)
[Calls]
- >> app_error_handler
- >> ble_error_log_read
SWI1_IRQHandler (Thumb, 34 bytes, Stack size 8 bytes, ble_radio_notification.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = SWI1_IRQHandler
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
ble_radio_notification_init (Thumb, 64 bytes, Stack size 24 bytes, ble_radio_notification.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = ble_radio_notification_init
[Called By]- >> radio_notification_init
GPIOTE_IRQHandler (Thumb, 106 bytes, Stack size 32 bytes, app_gpiote.o(.text))
[Stack]
- Max Depth = 52
- Call Chain = GPIOTE_IRQHandler ⇒ sense_level_toggle
[Calls]
[Address Reference Count : 1]- arm_startup_nrf51.o(RESET)
app_gpiote_init (Thumb, 114 bytes, Stack size 16 bytes, app_gpiote.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = app_gpiote_init ⇒ NVIC_SetPriority
[Calls]- >> __aeabi_memclr4
- >> NVIC_SetPriority
[Called By]
app_gpiote_user_register (Thumb, 138 bytes, Stack size 24 bytes, app_gpiote.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = app_gpiote_user_register ⇒ pins_sense_disable
[Calls]
[Called By]
app_gpiote_user_enable (Thumb, 222 bytes, Stack size 20 bytes, app_gpiote.o(.text))
[Stack]
- Max Depth = 20
- Call Chain = app_gpiote_user_enable
[Called By]
app_gpiote_user_disable (Thumb, 66 bytes, Stack size 8 bytes, app_gpiote.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = app_gpiote_user_disable ⇒ pins_sense_disable
[Calls]
[Called By]
app_gpiote_pins_state_get (Thumb, 52 bytes, Stack size 8 bytes, app_gpiote.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = app_gpiote_pins_state_get
[Called By]- >> app_button_is_pushed
- >> detection_delay_timeout_handler
ble_debug_assert_handler (Thumb, 56 bytes, Stack size 0 bytes, ble_debug_assert_handler.o(.text))
[Stack]
- Max Depth = 88
- Call Chain = ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> strncpy
- >> ble_error_log_write
[Called By]
simple_uart_get (Thumb, 24 bytes, Stack size 0 bytes, simple_uart.o(.text), UNUSED)
simple_uart_get_with_timeout (Thumb, 62 bytes, Stack size 16 bytes, simple_uart.o(.text), UNUSED)
[Calls]
- >> __asm___13_simple_uart_c_5dda6715__nrf_delay_us
simple_uart_put (Thumb, 22 bytes, Stack size 0 bytes, simple_uart.o(.text))
[Called By]
simple_uart_putstring (Thumb, 32 bytes, Stack size 12 bytes, simple_uart.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = simple_uart_putstring
[Calls]
[Called By]- >> main
- >> bond_evt_handler
- >> bond_manager_error_handler
simple_uart_config (Thumb, 90 bytes, Stack size 24 bytes, simple_uart.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = simple_uart_config ⇒ nrf_gpio_cfg_input
[Calls]- >> nrf_gpio_cfg_input
- >> nrf_gpio_cfg_output
[Called By]
memcmp (Thumb, 90 bytes, Stack size 8 bytes, memcmp.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = memcmp
[Called By]- >> on_connect
- >> addr_equal
- >> irk_equal
- >> enc_info_equal
strlen (Thumb, 62 bytes, Stack size 12 bytes, strlen.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = strlen
[Called By]
__aeabi_memcpy (Thumb, 130 bytes, Stack size 24 bytes, rt_memcpy.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = __aeabi_memcpy
[Calls]
[Called By]- >> on_sec_info_request
- >> auth_status_update
- >> on_connect
- >> on_auth_status_from_new_master
- >> ble_conn_params_change_conn_params
- >> on_conn_params_update
- >> on_connect
- >> service_data_encode
- >> manuf_specific_data_encode
- >> uint8_array_encode
- >> ble_conn_params_init
- >> hts_sim_measurement
- >> ble_bondmngr_master_addr_get
__rt_memcpy (Thumb, 0 bytes, Stack size 24 bytes, rt_memcpy.o(.text), UNUSED)
_memset_w (Thumb, 26 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
[Called By]
- >> __rt_memclr_w
- >> _memset
_memset (Thumb, 30 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
[Calls]
[Called By]
__aeabi_memclr (Thumb, 4 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
[Calls]
__rt_memclr (Thumb, 0 bytes, Stack size 0 bytes, rt_memclr.o(.text))
[Called By]
__aeabi_memclr4 (Thumb, 0 bytes, Stack size 0 bytes, rt_memclr.o(.text))
[Called By]
- >> hts_temp_type_char_add
- >> hts_measurement_char_add
- >> battery_level_char_add
- >> char_add
- >> ble_bondmngr_init
- >> app_gpiote_init
- >> conn_params_init
- >> services_init
- >> advertising_init
- >> ble_bondmngr_bonded_master_delete
__aeabi_memclr8 (Thumb, 0 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
__rt_memclr_w (Thumb, 4 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
[Calls]
strncpy (Thumb, 104 bytes, Stack size 24 bytes, strncpy.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = strncpy
[Calls]
[Called By]- >> ble_debug_assert_handler
- >> ble_error_log_write
__aeabi_uidiv (Thumb, 0 bytes, Stack size 0 bytes, aeabi_sdiv.o(.text), UNUSED)
__aeabi_uidivmod (Thumb, 20 bytes, Stack size 0 bytes, aeabi_sdiv.o(.text))
[Called By]
- >> sys_attr_store
- >> bond_info_store
- >> ble_bondmngr_init
- >> bond_manager_init
- >> hts_sim_measurement
- >> ble_error_log_read
- >> ble_error_log_write
__aeabi_idiv (Thumb, 0 bytes, Stack size 8 bytes, aeabi_sdiv.o(.text), UNUSED)
__aeabi_idivmod (Thumb, 326 bytes, Stack size 8 bytes, aeabi_sdiv.o(.text), UNUSED)
__use_two_region_memory (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__rt_heap_escrow$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__rt_heap_expand$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__user_setup_stackheap (Thumb, 62 bytes, Stack size 8 bytes, sys_stackheap_outer.o(.text))
[Stack]
- Max Depth = 8 + Unknown Stack Size
- Call Chain = __user_setup_stackheap
[Calls]- >> __user_initial_stackheap
- >> __user_perproc_libspace
[Called By]
exit (Thumb, 12 bytes, Stack size 0 bytes, exit.o(.text))
[Calls]
- >> __rt_exit
- >> _call_atexit_fns (Weak Reference)
[Called By]
__user_libspace (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
__user_perproc_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text))
[Called By]
- >> __user_setup_stackheap
__user_perthread_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
_sys_exit (Thumb, 8 bytes, Stack size 0 bytes, sys_exit.o(.text))
[Called By]
__I$use$semihosting (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
__use_no_semihosting_swi (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
__decompress (Thumb, 0 bytes, Stack size unknown bytes, __dczerorl.o(.text), UNUSED)
__decompress0 (Thumb, 58 bytes, Stack size unknown bytes, __dczerorl.o(.text), UNUSED)
__semihosting_library_function (Thumb, 0 bytes, Stack size unknown bytes, indicate_semi.o(.text), UNUSED)
__ARM_common_switch8 (Thumb, 28 bytes, Stack size 8 bytes, system_nrf51.o(i.__ARM_common_switch8))
[Stack]
- Max Depth = 8
- Call Chain = __ARM_common_switch8
[Called By]- >> is_manual_peripheral_setup_needed
- >> is_output_31_setup_needed
Local Symbols
is_output_31_setup_needed (Thumb, 102 bytes, Stack size 4 bytes, system_nrf51.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = is_output_31_setup_needed ⇒ __ARM_common_switch8
[Calls]
[Called By]
is_manual_peripheral_setup_needed (Thumb, 102 bytes, Stack size 4 bytes, system_nrf51.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = is_manual_peripheral_setup_needed ⇒ __ARM_common_switch8
[Calls]
[Called By]
battery_level_update (Thumb, 58 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = battery_level_update ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> ble_sensorsim_measure
- >> ble_bas_battery_level_update
- >> app_error_handler
[Called By]- >> battery_level_meas_timeout_handler
battery_level_meas_timeout_handler (Thumb, 10 bytes, Stack size 8 bytes, main.o(.text))
[Stack]
- Max Depth = 128
- Call Chain = battery_level_meas_timeout_handler ⇒ battery_level_update ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Address Reference Count : 1]
hts_sim_measurement (Thumb, 116 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = hts_sim_measurement ⇒ __aeabi_memcpy
[Calls]- >> ble_sensorsim_measure
- >> __aeabi_uidivmod
- >> __aeabi_memcpy
[Called By]- >> temperature_measurement_send
leds_init (Thumb, 72 bytes, Stack size 0 bytes, main.o(.text))
[Called By]
timers_init (Thumb, 88 bytes, Stack size 24 bytes, main.o(.text))
[Stack]
- Max Depth = 128
- Call Chain = timers_init ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> app_timer_init
- >> app_timer_create
- >> app_error_handler
[Called By]
gap_params_init (Thumb, 162 bytes, Stack size 24 bytes, main.o(.text))
[Stack]
- Max Depth = 128
- Call Chain = gap_params_init ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Called By]
advertising_init (Thumb, 114 bytes, Stack size 88 bytes, main.o(.text))
[Stack]
- Max Depth = 320
- Call Chain = advertising_init ⇒ ble_advdata_set ⇒ adv_data_encode ⇒ uuid_list_encode ⇒ uuid_list_sized_encode
[Calls]- >> ble_advdata_set
- >> app_error_handler
- >> __aeabi_memclr4
[Called By]
temperature_measurement_send (Thumb, 72 bytes, Stack size 40 bytes, main.o(.text))
[Stack]
- Max Depth = 148
- Call Chain = temperature_measurement_send ⇒ ble_hts_measurement_send ⇒ hts_measurement_encode ⇒ ble_date_time_encode
[Calls]- >> ble_hts_measurement_send
- >> app_error_handler
- >> hts_sim_measurement
[Called By]- >> bond_evt_handler
- >> button_event_handler
- >> on_hts_evt
on_hts_evt (Thumb, 38 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 164
- Call Chain = on_hts_evt ⇒ temperature_measurement_send ⇒ ble_hts_measurement_send ⇒ hts_measurement_encode ⇒ ble_date_time_encode
[Calls]- >> temperature_measurement_send
[Address Reference Count : 1]
services_init (Thumb, 612 bytes, Stack size 128 bytes, main.o(.text))
[Stack]
- Max Depth = 368
- Call Chain = services_init ⇒ ble_bas_init ⇒ battery_level_char_add ⇒ ble_srv_report_ref_encode ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> ble_srv_ascii_to_utf8
- >> ble_hts_init
- >> ble_dis_init
- >> ble_bas_init
- >> app_error_handler
- >> __aeabi_memclr4
[Called By]
sensor_sim_init (Thumb, 50 bytes, Stack size 8 bytes, main.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = sensor_sim_init
[Calls]
[Called By]
sec_params_init (Thumb, 66 bytes, Stack size 0 bytes, main.o(.text))
[Called By]
application_timers_start (Thumb, 46 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = application_timers_start ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> app_timer_start
- >> app_error_handler
[Called By]
advertising_start (Thumb, 40 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = advertising_start ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> app_error_handler
- >> nrf_gpio_pin_set
[Called By]
on_conn_params_evt (Thumb, 48 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = on_conn_params_evt ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Address Reference Count : 1]
conn_params_error_handler (Thumb, 22 bytes, Stack size 8 bytes, main.o(.text))
[Stack]
- Max Depth = 112
- Call Chain = conn_params_error_handler ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Address Reference Count : 1]
conn_params_init (Thumb, 82 bytes, Stack size 40 bytes, main.o(.text))
[Stack]
- Max Depth = 144
- Call Chain = conn_params_init ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> ble_conn_params_init
- >> app_error_handler
- >> __aeabi_memclr4
[Called By]
on_ble_evt (Thumb, 338 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 136
- Call Chain = on_ble_evt ⇒ advertising_start ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> ble_bondmngr_bonded_masters_store
- >> ble_bondmngr_bonded_masters_delete
- >> app_button_enable
- >> app_button_disable
- >> app_error_handler
- >> nrf_gpio_pin_clear
- >> nrf_gpio_pin_set
- >> advertising_start
[Called By]
ble_evt_dispatch (Thumb, 40 bytes, Stack size 8 bytes, main.o(.text))
[Stack]
- Max Depth = 144
- Call Chain = ble_evt_dispatch ⇒ on_ble_evt ⇒ advertising_start ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> ble_hts_on_ble_evt
- >> ble_conn_params_on_ble_evt
- >> ble_bondmngr_on_ble_evt
- >> ble_bas_on_ble_evt
- >> on_ble_evt
[Address Reference Count : 1]
ble_stack_init (Thumb, 52 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = ble_stack_init ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> ble_stack_handler_init
- >> app_error_handler
[Called By]
button_event_handler (Thumb, 170 bytes, Stack size 8 bytes, main.o(.text))
[Stack]
- Max Depth = 156
- Call Chain = button_event_handler ⇒ temperature_measurement_send ⇒ ble_hts_measurement_send ⇒ hts_measurement_encode ⇒ ble_date_time_encode
[Calls]- >> app_error_handler
- >> temperature_measurement_send
[Address Reference Count : 1]
gpiote_init (Thumb, 42 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = gpiote_init ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> app_gpiote_init
- >> app_error_handler
[Called By]
buttons_init (Thumb, 48 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = buttons_init ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> app_button_init
- >> app_error_handler
[Called By]
bond_manager_error_handler (Thumb, 74 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = bond_manager_error_handler ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> simple_uart_putstring
- >> app_error_handler
[Address Reference Count : 1]
bond_evt_handler (Thumb, 90 bytes, Stack size 24 bytes, main.o(.text))
[Stack]
- Max Depth = 172
- Call Chain = bond_evt_handler ⇒ temperature_measurement_send ⇒ ble_hts_measurement_send ⇒ hts_measurement_encode ⇒ ble_date_time_encode
[Calls]- >> simple_uart_putstring
- >> ble_hts_is_indication_enabled
- >> app_error_handler
- >> temperature_measurement_send
[Address Reference Count : 1]
bond_manager_init (Thumb, 166 bytes, Stack size 32 bytes, main.o(.text))
[Stack]
- Max Depth = 176
- Call Chain = bond_manager_init ⇒ ble_bondmngr_init ⇒ load_all_from_flash ⇒ sys_attr_load_from_flash ⇒ ble_flash_crc16_compute
[Calls]- >> ble_bondmngr_init
- >> app_button_is_pushed
- >> app_error_handler
- >> __aeabi_uidivmod
[Called By]
radio_notification_init (Thumb, 42 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = radio_notification_init ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> ble_radio_notification_init
- >> app_error_handler
[Called By]
power_manage (Thumb, 34 bytes, Stack size 16 bytes, main.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = power_manage ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Called By]
nrf_gpio_pin_set (Thumb, 10 bytes, Stack size 0 bytes, main.o(.text))
[Called By]
- >> app_error_handler
- >> on_ble_evt
- >> advertising_start
nrf_gpio_pin_clear (Thumb, 10 bytes, Stack size 0 bytes, main.o(.text))
[Called By]
sys_id_encode (Thumb, 160 bytes, Stack size 16 bytes, ble_dis.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = sys_id_encode ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Called By]
pnp_id_encode (Thumb, 152 bytes, Stack size 24 bytes, ble_dis.o(.text))
[Stack]
- Max Depth = 128
- Call Chain = pnp_id_encode ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> uint16_encode
- >> app_error_handler
[Called By]
char_add (Thumb, 232 bytes, Stack size 80 bytes, ble_dis.o(.text))
[Stack]
- Max Depth = 184
- Call Chain = char_add ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> app_error_handler
- >> __aeabi_memclr4
[Called By]
uint16_encode (Thumb, 18 bytes, Stack size 0 bytes, ble_dis.o(.text))
[Called By]
on_connect (Thumb, 6 bytes, Stack size 0 bytes, ble_bas.o(.text))
[Called By]
on_disconnect (Thumb, 8 bytes, Stack size 0 bytes, ble_bas.o(.text))
[Called By]
on_write (Thumb, 80 bytes, Stack size 24 bytes, ble_bas.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = on_write
[Called By]
battery_level_char_add (Thumb, 448 bytes, Stack size 88 bytes, ble_bas.o(.text))
[Stack]
- Max Depth = 216
- Call Chain = battery_level_char_add ⇒ ble_srv_report_ref_encode ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> ble_srv_report_ref_encode
- >> __aeabi_memclr4
[Called By]
on_connect (Thumb, 6 bytes, Stack size 0 bytes, ble_hts.o(.text))
[Called By]
on_disconnect (Thumb, 8 bytes, Stack size 0 bytes, ble_hts.o(.text))
[Called By]
on_cccd_write (Thumb, 52 bytes, Stack size 16 bytes, ble_hts.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = on_cccd_write
[Calls]- >> ble_srv_is_indication_enabled
[Called By]
on_write (Thumb, 26 bytes, Stack size 16 bytes, ble_hts.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = on_write ⇒ on_cccd_write
[Calls]
[Called By]
on_hvc (Thumb, 32 bytes, Stack size 24 bytes, ble_hts.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = on_hvc
[Called By]
hts_measurement_encode (Thumb, 164 bytes, Stack size 32 bytes, ble_hts.o(.text))
[Stack]
- Max Depth = 44
- Call Chain = hts_measurement_encode ⇒ ble_date_time_encode
[Calls]
[Called By]- >> hts_measurement_char_add
- >> ble_hts_measurement_send
hts_measurement_char_add (Thumb, 242 bytes, Stack size 128 bytes, ble_hts.o(.text))
[Stack]
- Max Depth = 172
- Call Chain = hts_measurement_char_add ⇒ hts_measurement_encode ⇒ ble_date_time_encode
[Calls]- >> hts_measurement_encode
- >> __aeabi_memclr4
[Called By]
hts_temp_type_char_add (Thumb, 172 bytes, Stack size 80 bytes, ble_hts.o(.text))
[Stack]
- Max Depth = 80
- Call Chain = hts_temp_type_char_add
[Calls]
[Called By]
ble_srv_is_indication_enabled (Thumb, 22 bytes, Stack size 0 bytes, ble_hts.o(.text))
[Called By]
- >> on_cccd_write
- >> ble_hts_is_indication_enabled
ble_date_time_encode (Thumb, 64 bytes, Stack size 12 bytes, ble_hts.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = ble_date_time_encode
[Called By]- >> hts_measurement_encode
name_encode (Thumb, 106 bytes, Stack size 32 bytes, ble_advdata.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = name_encode
[Called By]
appearance_encode (Thumb, 74 bytes, Stack size 24 bytes, ble_advdata.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = appearance_encode
[Calls]
[Called By]
uint8_array_encode (Thumb, 82 bytes, Stack size 24 bytes, ble_advdata.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = uint8_array_encode ⇒ __aeabi_memcpy
[Calls]
[Called By]
tx_power_level_encode (Thumb, 48 bytes, Stack size 12 bytes, ble_advdata.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = tx_power_level_encode
[Called By]
uuid_list_sized_encode (Thumb, 196 bytes, Stack size 64 bytes, ble_advdata.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = uuid_list_sized_encode
[Called By]
uuid_list_encode (Thumb, 64 bytes, Stack size 40 bytes, ble_advdata.o(.text))
[Stack]
- Max Depth = 104
- Call Chain = uuid_list_encode ⇒ uuid_list_sized_encode
[Calls]- >> uuid_list_sized_encode
[Called By]
conn_int_check (Thumb, 88 bytes, Stack size 0 bytes, ble_advdata.o(.text))
[Called By]
conn_int_encode (Thumb, 92 bytes, Stack size 24 bytes, ble_advdata.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = conn_int_encode
[Calls]- >> uint16_encode
- >> conn_int_check
[Called By]
manuf_specific_data_encode (Thumb, 106 bytes, Stack size 24 bytes, ble_advdata.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = manuf_specific_data_encode ⇒ __aeabi_memcpy
[Calls]- >> uint16_encode
- >> __aeabi_memcpy
[Called By]
service_data_encode (Thumb, 140 bytes, Stack size 32 bytes, ble_advdata.o(.text))
[Stack]
- Max Depth = 56
- Call Chain = service_data_encode ⇒ __aeabi_memcpy
[Calls]- >> uint16_encode
- >> __aeabi_memcpy
[Called By]
adv_data_encode (Thumb, 304 bytes, Stack size 24 bytes, ble_advdata.o(.text))
[Stack]
- Max Depth = 128
- Call Chain = adv_data_encode ⇒ uuid_list_encode ⇒ uuid_list_sized_encode
[Calls]- >> service_data_encode
- >> manuf_specific_data_encode
- >> conn_int_encode
- >> uuid_list_encode
- >> tx_power_level_encode
- >> uint8_array_encode
- >> appearance_encode
- >> name_encode
[Called By]
advdata_check (Thumb, 32 bytes, Stack size 0 bytes, ble_advdata.o(.text))
[Called By]
srdata_check (Thumb, 16 bytes, Stack size 0 bytes, ble_advdata.o(.text))
[Called By]
uint16_encode (Thumb, 18 bytes, Stack size 0 bytes, ble_advdata.o(.text))
[Called By]
- >> service_data_encode
- >> manuf_specific_data_encode
- >> conn_int_encode
- >> appearance_encode
NVIC_SetPriority (Thumb, 110 bytes, Stack size 8 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = NVIC_SetPriority
[Called By]- >> rtc1_init
- >> app_timer_init
rtc1_init (Thumb, 18 bytes, Stack size 8 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = rtc1_init ⇒ NVIC_SetPriority
[Calls]
[Called By]
rtc1_start (Thumb, 42 bytes, Stack size 8 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = rtc1_start
[Calls]- >> __asm___11_app_timer_c_cd27f9c3__nrf_delay_us
- >> NVIC_ClearPendingIRQ
- >> NVIC_EnableIRQ
[Called By]
rtc1_stop (Thumb, 44 bytes, Stack size 8 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = rtc1_stop
[Calls]- >> __asm___11_app_timer_c_cd27f9c3__nrf_delay_us
[Called By]- >> compare_reg_update
- >> app_timer_init
timer_list_insert (Thumb, 206 bytes, Stack size 20 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 20
- Call Chain = timer_list_insert
[Called By]- >> list_insertions_handler
timer_list_remove (Thumb, 150 bytes, Stack size 16 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = timer_list_remove
[Called By]- >> list_deletions_handler
timer_timeouts_check_sched (Thumb, 10 bytes, Stack size 8 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = timer_timeouts_check_sched
[Calls]
[Called By]
timer_list_handler_sched (Thumb, 10 bytes, Stack size 8 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = timer_list_handler_sched
[Calls]
[Called By]- >> timer_stop_all_op_schedule
- >> timer_stop_op_schedule
- >> timer_start_op_schedule
- >> timer_timeouts_check
timeout_handler_exec (Thumb, 60 bytes, Stack size 16 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = timeout_handler_exec ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Called By]
timer_timeouts_check (Thumb, 132 bytes, Stack size 24 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 144
- Call Chain = timer_timeouts_check ⇒ timeout_handler_exec ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> ticks_diff_get
- >> rtc1_counter_get
- >> timeout_handler_exec
- >> timer_list_handler_sched
[Called By]
elapsed_ticks_acquire (Thumb, 82 bytes, Stack size 0 bytes, app_timer.o(.text))
[Called By]
list_deletions_handler (Thumb, 280 bytes, Stack size 32 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = list_deletions_handler ⇒ timer_list_remove
[Calls]
[Called By]
expired_timers_handler (Thumb, 98 bytes, Stack size 20 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 20
- Call Chain = expired_timers_handler
[Called By]
list_insertions_handler (Thumb, 260 bytes, Stack size 32 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 52
- Call Chain = list_insertions_handler ⇒ timer_list_insert
[Calls]- >> ticks_diff_get
- >> timer_list_insert
[Called By]
compare_reg_update (Thumb, 122 bytes, Stack size 32 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = compare_reg_update ⇒ timer_timeouts_check_sched
[Calls]- >> ticks_diff_get
- >> rtc1_counter_get
- >> timer_timeouts_check_sched
- >> rtc1_stop
- >> rtc1_start
[Called By]
timer_list_handler (Thumb, 70 bytes, Stack size 32 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 84
- Call Chain = timer_list_handler ⇒ list_insertions_handler ⇒ timer_list_insert
[Calls]- >> compare_reg_update
- >> list_insertions_handler
- >> expired_timers_handler
- >> list_deletions_handler
- >> elapsed_ticks_acquire
[Called By]
user_op_alloc (Thumb, 42 bytes, Stack size 12 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = user_op_alloc
[Called By]- >> timer_stop_all_op_schedule
- >> timer_stop_op_schedule
- >> timer_start_op_schedule
timer_start_op_schedule (Thumb, 64 bytes, Stack size 40 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 52
- Call Chain = timer_start_op_schedule ⇒ user_op_alloc
[Calls]- >> rtc1_counter_get
- >> user_op_alloc
- >> timer_list_handler_sched
[Called By]
timer_stop_op_schedule (Thumb, 42 bytes, Stack size 16 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 28
- Call Chain = timer_stop_op_schedule ⇒ user_op_alloc
[Calls]- >> user_op_alloc
- >> timer_list_handler_sched
[Called By]
timer_stop_all_op_schedule (Thumb, 42 bytes, Stack size 16 bytes, app_timer.o(.text), UNUSED)
[Calls]
- >> user_op_alloc
- >> timer_list_handler_sched
[Called By]
user_id_get (Thumb, 34 bytes, Stack size 8 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = user_id_get ⇒ current_int_priority_get
[Calls]- >> current_int_priority_get
[Called By]- >> app_timer_stop_all
- >> app_timer_stop
- >> app_timer_start
NVIC_EnableIRQ (Thumb, 14 bytes, Stack size 0 bytes, app_timer.o(.text))
[Called By]
- >> rtc1_start
- >> app_timer_init
NVIC_SetPendingIRQ (Thumb, 14 bytes, Stack size 0 bytes, app_timer.o(.text))
[Called By]
- >> timer_list_handler_sched
- >> timer_timeouts_check_sched
NVIC_ClearPendingIRQ (Thumb, 16 bytes, Stack size 0 bytes, app_timer.o(.text))
[Called By]
- >> rtc1_start
- >> app_timer_init
current_int_priority_get (Thumb, 84 bytes, Stack size 8 bytes, app_timer.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = current_int_priority_get
[Called By]
rtc1_counter_get (Thumb, 6 bytes, Stack size 0 bytes, app_timer.o(.text))
[Called By]
- >> app_timer_cnt_get
- >> timer_start_op_schedule
- >> compare_reg_update
- >> timer_timeouts_check
- >> app_timer_init
ticks_diff_get (Thumb, 10 bytes, Stack size 0 bytes, app_timer.o(.text))
[Called By]
- >> app_timer_cnt_diff_compute
- >> compare_reg_update
- >> list_insertions_handler
- >> timer_timeouts_check
softdevice_assertion_handler (Thumb, 18 bytes, Stack size 16 bytes, ble_stack_handler.o(.text))
[Stack]
- Max Depth = 136
- Call Chain = softdevice_assertion_handler ⇒ assert_nrf_callback ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Address Reference Count : 1]- ble_stack_handler.o(.text)
is_conn_params_ok (Thumb, 30 bytes, Stack size 0 bytes, ble_conn_params.o(.text))
[Called By]
- >> ble_conn_params_change_conn_params
- >> conn_params_negotiation
update_timeout_handler (Thumb, 136 bytes, Stack size 16 bytes, ble_conn_params.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = update_timeout_handler
[Address Reference Count : 1]
conn_params_negotiation (Thumb, 126 bytes, Stack size 16 bytes, ble_conn_params.o(.text))
[Stack]
- Max Depth = 100
- Call Chain = conn_params_negotiation ⇒ app_timer_start ⇒ timer_start_op_schedule ⇒ user_op_alloc
[Calls]- >> is_conn_params_ok
- >> app_timer_start
[Called By]- >> on_conn_params_update
- >> on_write
- >> on_connect
on_connect (Thumb, 42 bytes, Stack size 8 bytes, ble_conn_params.o(.text))
[Stack]
- Max Depth = 108
- Call Chain = on_connect ⇒ conn_params_negotiation ⇒ app_timer_start ⇒ timer_start_op_schedule ⇒ user_op_alloc
[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(.text))
[Stack]
- Max Depth = 60
- Call Chain = on_disconnect ⇒ app_timer_stop ⇒ timer_stop_op_schedule ⇒ user_op_alloc
[Calls]
[Called By]- >> ble_conn_params_on_ble_evt
on_write (Thumb, 84 bytes, Stack size 16 bytes, ble_conn_params.o(.text))
[Stack]
- Max Depth = 116
- Call Chain = on_write ⇒ conn_params_negotiation ⇒ app_timer_start ⇒ timer_start_op_schedule ⇒ user_op_alloc
[Calls]- >> conn_params_negotiation
- >> app_timer_stop
[Called By]- >> ble_conn_params_on_ble_evt
on_conn_params_update (Thumb, 20 bytes, Stack size 8 bytes, ble_conn_params.o(.text))
[Stack]
- Max Depth = 108
- Call Chain = on_conn_params_update ⇒ conn_params_negotiation ⇒ app_timer_start ⇒ timer_start_op_schedule ⇒ user_op_alloc
[Calls]- >> conn_params_negotiation
- >> __aeabi_memcpy
[Called By]- >> ble_conn_params_on_ble_evt
crc_extract (Thumb, 30 bytes, Stack size 0 bytes, ble_bondmngr.o(.text))
[Called By]
- >> sys_attr_load_from_flash
- >> bonding_info_load_from_flash
bond_info_store (Thumb, 162 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 56
- Call Chain = bond_info_store ⇒ ble_flash_block_write ⇒ flash_word_write
[Calls]- >> __aeabi_uidivmod
- >> ble_flash_word_write
- >> ble_flash_page_addr
- >> ble_flash_crc16_compute
- >> ble_flash_block_write
[Called By]- >> auth_status_update
- >> on_auth_status_from_new_master
- >> ble_bondmngr_bonded_masters_store
- >> ble_bondmngr_bonded_master_delete
sys_attr_store (Thumb, 162 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 56
- Call Chain = sys_attr_store ⇒ ble_flash_block_write ⇒ flash_word_write
[Calls]- >> __aeabi_uidivmod
- >> ble_flash_word_write
- >> ble_flash_page_addr
- >> ble_flash_crc16_compute
- >> ble_flash_block_write
[Called By]- >> ble_bondmngr_bonded_masters_store
- >> ble_bondmngr_sys_attr_store
- >> ble_bondmngr_bonded_master_delete
bonding_info_load_from_flash (Thumb, 136 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = bonding_info_load_from_flash ⇒ ble_flash_crc16_compute
[Calls]- >> crc_extract
- >> __aeabi_memcpy4
- >> ble_flash_page_addr
- >> ble_flash_crc16_compute
[Called By]
sys_attr_load_from_flash (Thumb, 136 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = sys_attr_load_from_flash ⇒ ble_flash_crc16_compute
[Calls]- >> crc_extract
- >> __aeabi_memcpy4
- >> ble_flash_page_addr
- >> ble_flash_crc16_compute
[Called By]
flash_pages_erase (Thumb, 42 bytes, Stack size 8 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = flash_pages_erase ⇒ ble_flash_page_erase
[Calls]
[Called By]- >> ble_bondmngr_init
- >> ble_bondmngr_bonded_masters_delete
- >> ble_bondmngr_bonded_master_delete
bond_info_changed (Thumb, 66 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = bond_info_changed ⇒ ble_flash_crc16_compute
[Calls]- >> ble_flash_crc16_compute
[Called By]- >> ble_bondmngr_bonded_masters_store
sys_attr_changed (Thumb, 70 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = sys_attr_changed ⇒ ble_flash_crc16_compute
[Calls]- >> ble_flash_crc16_compute
[Called By]- >> ble_bondmngr_bonded_masters_store
master_sys_attr_set (Thumb, 50 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = master_sys_attr_set
[Called By]- >> on_sec_update
- >> on_sys_attr_missing
update_whitelist (Thumb, 210 bytes, Stack size 8 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = update_whitelist
[Called By]- >> load_all_from_flash
- >> master_update
- >> on_auth_status_from_new_master
- >> ble_bondmngr_bonded_master_delete
on_auth_status_from_new_master (Thumb, 218 bytes, Stack size 24 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 80
- Call Chain = on_auth_status_from_new_master ⇒ bond_info_store ⇒ ble_flash_block_write ⇒ flash_word_write
[Calls]- >> update_whitelist
- >> bond_info_store
- >> __aeabi_memcpy
- >> __aeabi_memcpy4
[Called By]
master_update (Thumb, 52 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = master_update ⇒ update_whitelist
[Calls]- >> update_whitelist
- >> __aeabi_memcpy4
[Called By]- >> ble_bondmngr_bonded_masters_store
master_find_in_db (Thumb, 68 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = master_find_in_db
[Calls]
[Called By]- >> on_sec_info_request
- >> on_auth_status
load_all_from_flash (Thumb, 244 bytes, Stack size 96 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 128
- Call Chain = load_all_from_flash ⇒ sys_attr_load_from_flash ⇒ ble_flash_crc16_compute
[Calls]- >> update_whitelist
- >> sys_attr_load_from_flash
- >> bonding_info_load_from_flash
- >> __aeabi_memcpy4
[Called By]
sec_levels_equal (Thumb, 58 bytes, Stack size 0 bytes, ble_bondmngr.o(.text))
[Called By]
sec_keys_equal (Thumb, 90 bytes, Stack size 0 bytes, ble_bondmngr.o(.text))
[Called By]
enc_info_equal (Thumb, 66 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = enc_info_equal ⇒ memcmp
[Calls]
[Called By]
irk_equal (Thumb, 28 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = irk_equal ⇒ memcmp
[Calls]
[Called By]
addr_equal (Thumb, 36 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = addr_equal ⇒ memcmp
[Calls]
[Called By]
auth_status_equal (Thumb, 122 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = auth_status_equal ⇒ addr_equal ⇒ memcmp
[Calls]- >> addr_equal
- >> irk_equal
- >> enc_info_equal
- >> sec_keys_equal
- >> sec_levels_equal
[Called By]
on_connect (Thumb, 238 bytes, Stack size 24 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = on_connect ⇒ __aeabi_memcpy
[Calls]- >> __aeabi_memcpy
- >> __aeabi_memcpy4
- >> memcmp
[Called By]- >> ble_bondmngr_on_ble_evt
on_sys_attr_missing (Thumb, 56 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = on_sys_attr_missing ⇒ master_sys_attr_set
[Calls]
[Called By]- >> ble_bondmngr_on_ble_evt
auth_status_update (Thumb, 142 bytes, Stack size 24 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 80
- Call Chain = auth_status_update ⇒ bond_info_store ⇒ ble_flash_block_write ⇒ flash_word_write
[Calls]- >> auth_status_equal
- >> bond_info_store
- >> __aeabi_memcpy
[Called By]
on_auth_status (Thumb, 98 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 96
- Call Chain = on_auth_status ⇒ auth_status_update ⇒ bond_info_store ⇒ ble_flash_block_write ⇒ flash_word_write
[Calls]- >> auth_status_update
- >> master_find_in_db
- >> on_auth_status_from_new_master
- >> ble_bondmngr_bonded_master_delete
[Called By]- >> ble_bondmngr_on_ble_evt
on_sec_info_request (Thumb, 112 bytes, Stack size 16 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = on_sec_info_request ⇒ __aeabi_memcpy
[Calls]- >> master_find_in_db
- >> __aeabi_memcpy
[Called By]- >> ble_bondmngr_on_ble_evt
on_sec_update (Thumb, 162 bytes, Stack size 32 bytes, ble_bondmngr.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = on_sec_update ⇒ master_sys_attr_set
[Calls]
[Called By]- >> ble_bondmngr_on_ble_evt
flash_page_erase (Thumb, 48 bytes, Stack size 0 bytes, ble_flash.o(.text))
[Called By]
- >> ble_flash_page_write
- >> ble_flash_page_erase
flash_word_unprotected_write (Thumb, 46 bytes, Stack size 0 bytes, ble_flash.o(.text))
[Called By]
flash_word_write (Thumb, 64 bytes, Stack size 16 bytes, ble_flash.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = flash_word_write
[Called By]- >> ble_flash_page_write
- >> ble_flash_word_write
- >> ble_flash_block_write
button_handler_execute (Thumb, 58 bytes, Stack size 16 bytes, app_button.o(.text))
[Stack]
- Max Depth = 120
- Call Chain = button_handler_execute ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]
[Called By]- >> detection_delay_timeout_handler
detection_delay_timeout_handler (Thumb, 112 bytes, Stack size 32 bytes, app_button.o(.text))
[Stack]
- Max Depth = 152
- Call Chain = detection_delay_timeout_handler ⇒ button_handler_execute ⇒ app_error_handler ⇒ ble_debug_assert_handler ⇒ ble_error_log_write ⇒ ble_flash_page_write ⇒ flash_word_write
[Calls]- >> app_gpiote_pins_state_get
- >> button_handler_execute
[Address Reference Count : 1]
gpiote_event_handler (Thumb, 46 bytes, Stack size 16 bytes, app_button.o(.text))
[Stack]
- Max Depth = 100
- Call Chain = gpiote_event_handler ⇒ app_timer_start ⇒ timer_start_op_schedule ⇒ user_op_alloc
[Calls]- >> app_timer_stop
- >> app_timer_start
[Address Reference Count : 1]
fetch_stack (Thumb, 38 bytes, Stack size 24 bytes, ble_error_log.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = fetch_stack
[Calls]
[Called By]
sense_level_toggle (Thumb, 124 bytes, Stack size 20 bytes, app_gpiote.o(.text))
[Stack]
- Max Depth = 20
- Call Chain = sense_level_toggle
[Called By]
pins_sense_disable (Thumb, 96 bytes, Stack size 8 bytes, app_gpiote.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = pins_sense_disable
[Called By]- >> app_gpiote_user_register
- >> app_gpiote_user_disable
NVIC_SetPriority (Thumb, 110 bytes, Stack size 8 bytes, app_gpiote.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = NVIC_SetPriority
[Called By]
nrf_gpio_cfg_output (Thumb, 18 bytes, Stack size 0 bytes, simple_uart.o(.text))
[Called By]
nrf_gpio_cfg_input (Thumb, 20 bytes, Stack size 8 bytes, simple_uart.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = nrf_gpio_cfg_input
[Called By]
Undefined Global Symbols
_call_atexit_fns (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]