Static Call Graph - [STM324xG_EVAL\STM324xG_EVAL.axf]

# Static Call Graph for image STM324xG_EVAL\STM324xG_EVAL.axf

#<CALLGRAPH># ARM Linker, 5060528: Last Updated: Thu Jan 25 21:16:15 2018

### Maximum Stack Usage = 772 bytes + Unknown(Cycles, Untraceable Function Pointers)

### Call chain for Maximum Stack Depth:

http_recv ⇒ Send_LED ⇒ HTTP_Send_String ⇒ http_send_data ⇒ http_close_conn ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes

### Mutually Recursive functions

- SVC_Handler ⇒ SVC_Handler
- PendSV_Handler ⇒ PendSV_Handler
- ADC_IRQHandler ⇒ ADC_IRQHandler

  ### Function Pointers

  - ADC_DMAConvCplt from stm32f4xx_hal_adc.o(.text) referenced from stm32f4xx_hal_adc.o(.text)
  - ADC_DMAError from stm32f4xx_hal_adc.o(.text) referenced from stm32f4xx_hal_adc.o(.text)
  - ADC_DMAHalfConvCplt from stm32f4xx_hal_adc.o(.text) referenced from stm32f4xx_hal_adc.o(.text)
  - ADC_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - ADC_MultiModeDMAConvCplt from stm32f4xx_hal_adc_ex.o(.text) referenced from stm32f4xx_hal_adc_ex.o(.text)
  - ADC_MultiModeDMAError from stm32f4xx_hal_adc_ex.o(.text) referenced from stm32f4xx_hal_adc_ex.o(.text)
  - ADC_MultiModeDMAHalfConvCplt from stm32f4xx_hal_adc_ex.o(.text) referenced from stm32f4xx_hal_adc_ex.o(.text)
  - BusFault_Handler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - CAN1_RX0_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - CAN1_RX1_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - CAN1_SCE_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - CAN1_TX_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - CAN2_RX0_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - CAN2_RX1_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - CAN2_SCE_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - CAN2_TX_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DCMI_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA1_Stream0_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA1_Stream1_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA1_Stream2_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA1_Stream3_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA1_Stream4_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA1_Stream5_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA1_Stream6_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA1_Stream7_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream0_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream1_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream2_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream3_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream4_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream5_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream6_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream7_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DebugMon_Handler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - ETH_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - ETH_WKUP_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - EXTI0_IRQHandler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - EXTI15_10_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - EXTI1_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - EXTI2_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - EXTI3_IRQHandler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - EXTI4_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - EXTI9_5_IRQHandler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - FLASH_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - FMC_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - FPU_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - HASH_RNG_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - HardFault_Handler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - I2C1_ER_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - I2C1_EV_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - I2C2_ER_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - I2C2_EV_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - I2C3_ER_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - I2C3_EV_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - I2C_DMAError from stm32f4xx_hal_i2c.o(.text) referenced 4 times from stm32f4xx_hal_i2c.o(.text)
  - I2C_DMAMasterReceiveCplt from stm32f4xx_hal_i2c.o(.text) referenced from stm32f4xx_hal_i2c.o(.text)
  - I2C_DMAMasterTransmitCplt from stm32f4xx_hal_i2c.o(.text) referenced from stm32f4xx_hal_i2c.o(.text)
  - I2C_DMAMemReceiveCplt from stm32f4xx_hal_i2c.o(.text) referenced from stm32f4xx_hal_i2c.o(.text)
  - I2C_DMAMemTransmitCplt from stm32f4xx_hal_i2c.o(.text) referenced from stm32f4xx_hal_i2c.o(.text)
  - I2C_DMASlaveReceiveCplt from stm32f4xx_hal_i2c.o(.text) referenced from stm32f4xx_hal_i2c.o(.text)
  - I2C_DMASlaveTransmitCplt from stm32f4xx_hal_i2c.o(.text) referenced from stm32f4xx_hal_i2c.o(.text)
  - MemManage_Handler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - NMI_Handler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - OTG_FS_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - OTG_FS_WKUP_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - OTG_HS_EP1_IN_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - OTG_HS_EP1_OUT_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - OTG_HS_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - OTG_HS_WKUP_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - PVD_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - PendSV_Handler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - RC5_CGI_Handler from httpd_cgi_ssi.o(.text) referenced from httpd_cgi_ssi.o(.constdata)
  - RCC_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - RTC_Alarm_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - RTC_WKUP_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - Reset_Handler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - SDIO_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - SPI1_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - SPI2_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - SPI3_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - SPI_2linesRxISR_16BIT from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_2linesRxISR_8BIT from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_2linesTxISR_16BIT from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_2linesTxISR_8BIT from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_DMAError from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_DMAHalfReceiveCplt from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_DMAHalfTransmitCplt from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_DMAHalfTransmitReceiveCplt from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_DMAReceiveCplt from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_DMATransmitCplt from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_DMATransmitReceiveCplt from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_RxISR_16BIT from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_RxISR_8BIT from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_TxISR_16BIT from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SPI_TxISR_8BIT from stm32f4xx_hal_spi.o(.text) referenced from stm32f4xx_hal_spi.o(.text)
  - SVC_Handler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - SysTick_Handler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - SystemInit from system_stm32f4xx.o(.text) referenced from startup_stm32f407xx.o(.text)
  - TAMP_STAMP_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM1_BRK_TIM9_IRQHandler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM1_CC_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM1_TRG_COM_TIM11_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM1_UP_TIM10_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM2_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM3_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM4_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM5_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM6_DAC_IRQHandler from process2.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM7_IRQHandler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM8_BRK_TIM12_IRQHandler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM8_CC_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM8_TRG_COM_TIM14_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM8_UP_TIM13_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIMEx_DMACommutationCplt from stm32f4xx_hal_tim_ex.o(.text) referenced 2 times from stm32f4xx_hal_tim.o(.text)
  - TIM_DMACaptureCplt from stm32f4xx_hal_tim.o(.text) referenced 10 times from stm32f4xx_hal_tim.o(.text)
  - TIM_DMADelayPulseCplt from stm32f4xx_hal_tim.o(.text) referenced 11 times from stm32f4xx_hal_tim.o(.text)
  - TIM_DMAError from stm32f4xx_hal_tim.o(.text) referenced 18 times from stm32f4xx_hal_tim.o(.text)
  - TIM_DMAPeriodElapsedCplt from stm32f4xx_hal_tim.o(.text) referenced 2 times from stm32f4xx_hal_tim.o(.text)
  - TIM_DMATriggerCplt from stm32f4xx_hal_tim.o(.text) referenced from stm32f4xx_hal_tim.o(.text)
  - Telnet_accept from telnet.o(.text) referenced from telnet.o(.text)
  - Telnet_conn_err from telnet.o(.text) referenced from telnet.o(.text)
  - Telnet_recv from telnet.o(.text) referenced from telnet.o(.text)
  - UART4_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - UART5_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - USART1_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - USART2_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - USART3_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - USART6_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - UsageFault_Handler from stm32f4xx_it.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - WWDG_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - __main from entry.o(.ARM.Collect$$$$00000000) referenced from startup_stm32f407xx.o(.text)
  - _sputc from printfa.o(i._sputc) referenced from printfa.o(i.__0sprintf)
  - arp_timer from lwip_timers.o(.text) referenced from lwip_timers.o(.text)
  - dhcp_recv from dhcp.o(.text) referenced from dhcp.o(.text)
  - dhcp_timer_coarse from lwip_timers.o(.text) referenced from lwip_timers.o(.text)
  - dhcp_timer_fine from lwip_timers.o(.text) referenced from lwip_timers.o(.text)
  - etharp_output from etharp.o(.text) referenced from ethernetif.o(.text)
  - ethernet_input from etharp.o(.text) referenced from main.o(.text)
  - ethernetif_init from ethernetif.o(.text) referenced from main.o(.text)
  - ethernetif_update_config from ethernetif.o(.text) referenced from main.o(.text)
  - http_accept from httpd.o(.text) referenced from httpd.o(.text)
  - http_err from httpd.o(.text) referenced from httpd.o(.text)
  - http_poll from httpd.o(.text) referenced 2 times from httpd.o(.text)
  - http_recv from httpd.o(.text) referenced from httpd.o(.text)
  - http_sent from httpd.o(.text) referenced from httpd.o(.text)
  - ip_reass_timer from lwip_timers.o(.text) referenced from lwip_timers.o(.text)
  - ipfrag_free_pbuf_custom from ip_frag.o(.text) referenced from ip_frag.o(.text)
  - low_level_output from ethernetif.o(.text) referenced from ethernetif.o(.text)
  - main from main.o(.text) referenced from entry9a.o(.ARM.Collect$$$$0000000B)
  - tcp_accept_null from tcp.o(.text) referenced from tcp.o(.text)
  - tcp_recv_null from tcp.o(.text) referenced from tcp.o(.text)
  - tcpip_tcp_timer from lwip_timers.o(.text) referenced from lwip_timers.o(.text)

  ### Global Symbols

  __main (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
  [Address Reference Count : 1]

  - startup_stm32f407xx.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]

  - >> __scatterload

  __main_after_scatterload (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
  [Called By]

  - >> __scatterload

  _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))

  SystemInit (Thumb, 82 bytes, Stack size 0 bytes, system_stm32f4xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(.text)

  SystemCoreClockUpdate (Thumb, 174 bytes, Stack size 16 bytes, system_stm32f4xx.o(.text), UNUSED)

  tcp_input (Thumb, 1154 bytes, Stack size 40 bytes, tcp_in.o(.text))
  [Stack]

  - Max Depth = 524
  - Call Chain = tcp_input ⇒ tcp_listen_input ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_rst
  - >> tcp_recv_null
  - >> tcp_process_refused_data
  - >> tcp_pcb_remove
  - >> tcp_output
  - >> tcp_abort
  - >> pbuf_header
  - >> pbuf_free
  - >> memp_free
  - >> lwip_ntohs
  - >> lwip_ntohl
  - >> ip4_addr_isbroadcast
  - >> tcp_timewait_input
  - >> tcp_listen_input
  - >> tcp_process
  [Called By]
  - >> ip_input

  lwip_htons (Thumb, 12 bytes, Stack size 0 bytes, def.o(.text))
  [Called By]

  - >> tcp_write
  - >> tcp_output_segment
  - >> tcp_create_segment
  - >> tcp_output_alloc_header
  - >> tcp_zero_window_probe
  - >> tcp_send_fin
  - >> ip_output_if
  - >> udp_sendto_if
  - >> tcp_rst
  - >> tcp_output
  - >> lwip_ntohs
  - >> tcp_receive
  - >> etharp_raw
  - >> etharp_arp_input
  - >> ip_frag
  - >> ip_reass
  - >> inet_chksum_pseudo_partial
  - >> inet_chksum_pseudo

  lwip_ntohs (Thumb, 12 bytes, Stack size 4 bytes, def.o(.text))
  [Stack]

  - Max Depth = 4
  - Call Chain = lwip_ntohs
  [Calls]
  - >> lwip_htons
  [Called By]
  - >> tcp_zero_window_probe
  - >> tcp_send_fin
  - >> udp_input
  - >> tcp_output
  - >> tcp_input
  - >> tcp_parseopt
  - >> tcp_receive
  - >> ip_input
  - >> ip_frag
  - >> ip_reass
  - >> ip_reass_chain_frag_into_datagram_and_validate

  lwip_htonl (Thumb, 26 bytes, Stack size 0 bytes, def.o(.text))
  [Called By]

  - >> tcp_output_segment
  - >> tcp_create_segment
  - >> tcp_output_alloc_header
  - >> tcp_keepalive
  - >> dhcp_parse_reply
  - >> dhcp_handle_ack
  - >> dhcp_handle_offer
  - >> dhcp_create_msg
  - >> tcp_send_empty_ack
  - >> tcp_rst
  - >> lwip_ntohl
  - >> ipaddr_aton
  - >> ip4_addr_netmask_valid

  lwip_ntohl (Thumb, 12 bytes, Stack size 4 bytes, def.o(.text))
  [Stack]

  - Max Depth = 4
  - Call Chain = lwip_ntohl
  [Calls]
  - >> lwip_htonl
  [Called By]
  - >> tcp_output_segment
  - >> dhcp_decline
  - >> dhcp_recv
  - >> dhcp_parse_reply
  - >> dhcp_reboot
  - >> dhcp_select
  - >> tcp_rexmit
  - >> tcp_output
  - >> tcp_input
  - >> tcp_process
  - >> tcp_receive

  sys_timeout (Thumb, 152 bytes, Stack size 24 bytes, lwip_timers.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = sys_timeout
  [Calls]
  - >> memp_malloc
  [Called By]
  - >> sys_timeouts_init
  - >> dhcp_timer_fine
  - >> dhcp_timer_coarse
  - >> arp_timer
  - >> ip_reass_timer
  - >> tcpip_tcp_timer
  - >> tcp_timer_needed

  tcp_timer_needed (Thumb, 38 bytes, Stack size 8 bytes, lwip_timers.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = tcp_timer_needed ⇒ sys_timeout
  [Calls]
  - >> sys_timeout
  [Called By]
  - >> tcp_connect
  - >> tcp_listen_with_backlog
  - >> tcp_bind
  - >> tcp_close_shutdown
  - >> tcp_listen_input
  - >> tcp_process

  sys_timeouts_init (Thumb, 60 bytes, Stack size 8 bytes, lwip_timers.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = sys_timeouts_init ⇒ sys_timeout
  [Calls]
  - >> sys_now
  - >> sys_timeout
  [Called By]
  - >> lwip_init

  sys_untimeout (Thumb, 90 bytes, Stack size 24 bytes, lwip_timers.o(.text), UNUSED)
  [Calls]

  - >> memp_free

  sys_check_timeouts (Thumb, 92 bytes, Stack size 32 bytes, lwip_timers.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = sys_check_timeouts ⇒ sys_now
  [Calls]
  - >> sys_now
  - >> memp_free
  [Called By]
  - >> main2

  sys_restart_timeouts (Thumb, 12 bytes, Stack size 8 bytes, lwip_timers.o(.text), UNUSED)
  [Calls]

  - >> sys_now

  memp_init (Thumb, 82 bytes, Stack size 8 bytes, memp.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = memp_init
  [Called By]
  - >> lwip_init

  memp_malloc (Thumb, 44 bytes, Stack size 0 bytes, memp.o(.text))
  [Called By]

  - >> raw_new
  - >> tcp_create_segment
  - >> tcp_listen_with_backlog
  - >> udp_new
  - >> pbuf_alloc
  - >> sys_timeout
  - >> tcp_alloc
  - >> ip_frag_alloc_pbuf_custom_ref
  - >> ip_reass_enqueue_new_datagram

  memp_free (Thumb, 28 bytes, Stack size 0 bytes, memp.o(.text))
  [Called By]

  - >> raw_remove
  - >> tcp_listen_with_backlog
  - >> tcp_slowtmr
  - >> tcp_close_shutdown
  - >> udp_remove
  - >> sys_check_timeouts
  - >> sys_untimeout
  - >> tcp_seg_free
  - >> tcp_abandon
  - >> pbuf_free
  - >> tcp_input
  - >> ip_frag_free_pbuf_custom_ref
  - >> ip_reass_dequeue_datagram

  dhcp_renew (Thumb, 150 bytes, Stack size 24 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 324
  - Call Chain = dhcp_renew ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> udp_sendto_if
  - >> dhcp_set_state
  - >> dhcp_create_msg
  - >> dhcp_option_short
  - >> dhcp_option
  - >> dhcp_option_trailer
  - >> dhcp_delete_msg
  - >> pbuf_realloc
  [Called By]
  - >> dhcp_timeout
  - >> dhcp_t1_timeout

  dhcp_coarse_tmr (Thumb, 74 bytes, Stack size 8 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 348
  - Call Chain = dhcp_coarse_tmr ⇒ dhcp_t2_timeout ⇒ dhcp_rebind ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> dhcp_t2_timeout
  - >> dhcp_t1_timeout
  [Called By]
  - >> dhcp_timer_coarse

  dhcp_release (Thumb, 178 bytes, Stack size 24 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 468
  - Call Chain = dhcp_release ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> udp_sendto_if
  - >> netif_set_netmask
  - >> netif_set_ipaddr
  - >> netif_set_gw
  - >> netif_set_down
  - >> dhcp_set_state
  - >> dhcp_create_msg
  - >> dhcp_option_trailer
  - >> dhcp_delete_msg
  - >> pbuf_realloc
  [Called By]
  - >> dhcp_timeout

  dhcp_fine_tmr (Thumb, 68 bytes, Stack size 8 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 492
  - Call Chain = dhcp_fine_tmr ⇒ dhcp_timeout ⇒ dhcp_release ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> dhcp_timeout
  [Called By]
  - >> dhcp_timer_fine

  dhcp_set_struct (Thumb, 30 bytes, Stack size 16 bytes, dhcp.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_memclr4

  dhcp_cleanup (Thumb, 24 bytes, Stack size 8 bytes, dhcp.o(.text), UNUSED)
  [Calls]

  - >> mem_free

  dhcp_stop (Thumb, 62 bytes, Stack size 16 bytes, dhcp.o(.text), UNUSED)
  [Calls]

  - >> udp_remove
  - >> dhcp_set_state
  [Called By]
  - >> dhcp_start

  dhcp_start (Thumb, 238 bytes, Stack size 16 bytes, dhcp.o(.text), UNUSED)
  [Calls]

  - >> udp_remove
  - >> udp_recv
  - >> udp_new
  - >> udp_connect
  - >> udp_bind
  - >> mem_malloc
  - >> dhcp_stop
  - >> dhcp_discover
  - >> __aeabi_memclr4

  dhcp_inform (Thumb, 188 bytes, Stack size 80 bytes, dhcp.o(.text), UNUSED)
  [Calls]

  - >> udp_sendto_if
  - >> udp_remove
  - >> udp_new
  - >> udp_bind
  - >> dhcp_set_state
  - >> dhcp_create_msg
  - >> dhcp_option_short
  - >> dhcp_option
  - >> dhcp_option_trailer
  - >> dhcp_delete_msg
  - >> pbuf_realloc
  - >> __aeabi_memclr4

  dhcp_network_changed (Thumb, 80 bytes, Stack size 16 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 348
  - Call Chain = dhcp_network_changed ⇒ dhcp_reboot ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> netif_set_down
  - >> dhcp_reboot
  - >> dhcp_discover
  [Called By]
  - >> netif_set_link_up

  dhcp_arp_reply (Thumb, 58 bytes, Stack size 16 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 348
  - Call Chain = dhcp_arp_reply ⇒ dhcp_decline ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> dhcp_decline
  [Called By]
  - >> etharp_arp_input

  udp_init (Thumb, 2 bytes, Stack size 0 bytes, udp.o(.text))
  [Called By]

  - >> lwip_init

  udp_input (Thumb, 470 bytes, Stack size 56 bytes, udp.o(.text))
  [Stack]

  - Max Depth = 396
  - Call Chain = udp_input ⇒ icmp_dest_unreach ⇒ icmp_send_response ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> icmp_dest_unreach
  - >> pbuf_header
  - >> pbuf_free
  - >> lwip_ntohs
  - >> ip4_addr_isbroadcast
  [Called By]
  - >> ip_input

  udp_bind (Thumb, 146 bytes, Stack size 24 bytes, udp.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = udp_bind ⇒ udp_new_port
  [Calls]
  - >> udp_new_port
  [Called By]
  - >> udp_sendto_if
  - >> udp_connect
  - >> dhcp_inform
  - >> dhcp_start

  udp_sendto_if (Thumb, 240 bytes, Stack size 64 bytes, udp.o(.text))
  [Stack]

  - Max Depth = 300
  - Call Chain = udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_chain
  - >> ip_output_if
  - >> udp_bind
  - >> pbuf_alloc
  - >> pbuf_header
  - >> pbuf_free
  - >> lwip_htons
  [Called By]
  - >> udp_sendto
  - >> dhcp_inform
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_reboot
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

  udp_sendto (Thumb, 54 bytes, Stack size 32 bytes, udp.o(.text), UNUSED)
  [Calls]

  - >> ip_route
  - >> udp_sendto_if
  [Called By]
  - >> udp_send

  udp_send (Thumb, 36 bytes, Stack size 16 bytes, udp.o(.text), UNUSED)
  [Calls]

  - >> udp_sendto

  udp_connect (Thumb, 98 bytes, Stack size 24 bytes, udp.o(.text), UNUSED)
  [Calls]

  - >> udp_bind
  [Called By]
  - >> dhcp_start

  udp_disconnect (Thumb, 16 bytes, Stack size 0 bytes, udp.o(.text), UNUSED)

  udp_recv (Thumb, 6 bytes, Stack size 0 bytes, udp.o(.text), UNUSED)
  [Called By]

  - >> dhcp_start

  udp_remove (Thumb, 60 bytes, Stack size 16 bytes, udp.o(.text), UNUSED)
  [Calls]

  - >> memp_free
  [Called By]
  - >> dhcp_inform
  - >> dhcp_start
  - >> dhcp_stop

  udp_new (Thumb, 28 bytes, Stack size 8 bytes, udp.o(.text), UNUSED)
  [Calls]

  - >> memp_malloc
  - >> __aeabi_memclr4
  [Called By]
  - >> dhcp_inform
  - >> dhcp_start

  mem_init (Thumb, 74 bytes, Stack size 0 bytes, mem.o(.text))
  [Called By]

  - >> lwip_init

  mem_free (Thumb, 76 bytes, Stack size 16 bytes, mem.o(.text))
  [Stack]

  - Max Depth = 28
  - Call Chain = mem_free ⇒ plug_holes
  [Calls]
  - >> plug_holes
  [Called By]
  - >> dhcp_cleanup
  - >> pbuf_free
  - >> Telnet_conn_err
  - >> Telnet_recv
  - >> http_state_free

  mem_trim (Thumb, 292 bytes, Stack size 24 bytes, mem.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = mem_trim
  [Called By]
  - >> pbuf_realloc

  mem_malloc (Thumb, 226 bytes, Stack size 20 bytes, mem.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = mem_malloc
  [Called By]
  - >> mem_calloc
  - >> pbuf_alloc
  - >> dhcp_start
  - >> http_send_data
  - >> http_state_alloc

  mem_calloc (Thumb, 34 bytes, Stack size 16 bytes, mem.o(.text))
  [Stack]

  - Max Depth = 36
  - Call Chain = mem_calloc ⇒ mem_malloc
  [Calls]
  - >> mem_malloc
  - >> __aeabi_memclr
  [Called By]
  - >> Telnet_accept

  netif_init (Thumb, 2 bytes, Stack size 0 bytes, netif.o(.text))
  [Called By]

  - >> lwip_init

  netif_set_gw (Thumb, 16 bytes, Stack size 0 bytes, netif.o(.text))
  [Called By]

  - >> netif_set_addr
  - >> dhcp_release
  - >> dhcp_bind
  - >> dhcp_handle_nak

  netif_set_netmask (Thumb, 16 bytes, Stack size 0 bytes, netif.o(.text))
  [Called By]

  - >> netif_set_addr
  - >> dhcp_release
  - >> dhcp_bind
  - >> dhcp_handle_nak

  netif_set_ipaddr (Thumb, 124 bytes, Stack size 24 bytes, netif.o(.text))
  [Stack]

  - Max Depth = 444
  - Call Chain = netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_abort
  [Called By]
  - >> netif_set_addr
  - >> dhcp_release
  - >> dhcp_bind
  - >> dhcp_handle_nak

  netif_set_addr (Thumb, 40 bytes, Stack size 24 bytes, netif.o(.text))
  [Stack]

  - Max Depth = 468
  - Call Chain = netif_set_addr ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> netif_set_netmask
  - >> netif_set_ipaddr
  - >> netif_set_gw
  [Called By]
  - >> netif_add
  - >> ethernetif_notify_conn_changed

  netif_add (Thumb, 132 bytes, Stack size 32 bytes, netif.o(.text))
  [Stack]

  - Max Depth = 500
  - Call Chain = netif_add ⇒ netif_set_addr ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> netif_set_addr
  [Called By]
  - >> Netif_Config

  netif_set_default (Thumb, 10 bytes, Stack size 0 bytes, netif.o(.text))
  [Called By]

  - >> netif_remove
  - >> Netif_Config

  netif_set_down (Thumb, 42 bytes, Stack size 8 bytes, netif.o(.text))
  [Stack]

  - Max Depth = 92
  - Call Chain = netif_set_down ⇒ etharp_cleanup_netif ⇒ etharp_free_entry ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> etharp_cleanup_netif
  [Called By]
  - >> netif_remove
  - >> dhcp_network_changed
  - >> dhcp_release
  - >> dhcp_handle_nak
  - >> Netif_Config
  - >> ethernetif_notify_conn_changed

  netif_remove (Thumb, 94 bytes, Stack size 8 bytes, netif.o(.text), UNUSED)
  [Calls]

  - >> netif_set_default
  - >> netif_set_down

  netif_find (Thumb, 72 bytes, Stack size 8 bytes, netif.o(.text), UNUSED)

  netif_set_up (Thumb, 54 bytes, Stack size 8 bytes, netif.o(.text))
  [Stack]

  - Max Depth = 180
  - Call Chain = netif_set_up ⇒ etharp_request ⇒ etharp_raw ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> etharp_request
  [Called By]
  - >> dhcp_bind
  - >> Netif_Config
  - >> ethernetif_notify_conn_changed

  netif_set_link_up (Thumb, 80 bytes, Stack size 8 bytes, netif.o(.text))
  [Stack]

  - Max Depth = 356
  - Call Chain = netif_set_link_up ⇒ dhcp_network_changed ⇒ dhcp_reboot ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> etharp_request
  - >> dhcp_network_changed
  [Called By]
  - >> ethernetif_set_link

  netif_set_link_down (Thumb, 42 bytes, Stack size 8 bytes, netif.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = netif_set_link_down
  [Called By]
  - >> ethernetif_set_link

  netif_set_link_callback (Thumb, 6 bytes, Stack size 0 bytes, netif.o(.text))
  [Called By]

  - >> Netif_Config

  tcp_init (Thumb, 2 bytes, Stack size 0 bytes, tcp.o(.text))
  [Called By]

  - >> lwip_init

  tcp_seg_free (Thumb, 26 bytes, Stack size 8 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 68
  - Call Chain = tcp_seg_free ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_free
  - >> memp_free
  [Called By]
  - >> tcp_create_segment
  - >> tcp_segs_free
  - >> tcp_output
  - >> tcp_process
  - >> tcp_receive

  tcp_segs_free (Thumb, 24 bytes, Stack size 16 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 84
  - Call Chain = tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_seg_free
  [Called By]
  - >> tcp_write
  - >> tcp_pcb_purge
  - >> tcp_abandon

  tcp_pcb_purge (Thumb, 88 bytes, Stack size 8 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 92
  - Call Chain = tcp_pcb_purge ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_segs_free
  - >> pbuf_free
  [Called By]
  - >> tcp_slowtmr
  - >> tcp_close_shutdown
  - >> tcp_pcb_remove
  - >> tcp_process

  tcp_slowtmr (Thumb, 832 bytes, Stack size 48 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 420
  - Call Chain = tcp_slowtmr ⇒ tcp_rexmit_rto ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_zero_window_probe
  - >> tcp_rexmit_rto
  - >> tcp_keepalive
  - >> tcp_rst
  - >> tcp_pcb_purge
  - >> tcp_output
  - >> memp_free
  [Called By]
  - >> tcp_tmr

  tcp_pcb_remove (Thumb, 140 bytes, Stack size 16 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 372
  - Call Chain = tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_pcb_purge
  - >> tcp_output
  [Called By]
  - >> tcp_close_shutdown
  - >> tcp_abandon
  - >> tcp_input

  tcp_close (Thumb, 28 bytes, Stack size 8 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 404
  - Call Chain = tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_close_shutdown
  [Called By]
  - >> tcp_recv_null
  - >> Telnet_recv
  - >> http_close_conn

  tcp_update_rcv_ann_wnd (Thumb, 78 bytes, Stack size 8 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = tcp_update_rcv_ann_wnd
  [Called By]
  - >> tcp_recved
  - >> tcp_receive

  tcp_recved (Thumb, 74 bytes, Stack size 16 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 372
  - Call Chain = tcp_recved ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_update_rcv_ann_wnd
  - >> tcp_output
  [Called By]
  - >> tcp_recv_null
  - >> Telnet_recv
  - >> http_recv

  tcp_recv_null (Thumb, 46 bytes, Stack size 24 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 428
  - Call Chain = tcp_recv_null ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_recved
  - >> tcp_close
  - >> pbuf_free
  [Called By]
  - >> tcp_process_refused_data
  - >> tcp_input
  [Address Reference Count : 1]
  - tcp.o(.text)

  tcp_process_refused_data (Thumb, 148 bytes, Stack size 24 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 452
  - Call Chain = tcp_process_refused_data ⇒ tcp_recv_null ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_recv_null
  [Called By]
  - >> tcp_fasttmr
  - >> tcp_input

  tcp_fasttmr (Thumb, 114 bytes, Stack size 16 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 468
  - Call Chain = tcp_fasttmr ⇒ tcp_process_refused_data ⇒ tcp_recv_null ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_process_refused_data
  - >> tcp_output
  [Called By]
  - >> tcp_tmr

  tcp_tmr (Thumb, 30 bytes, Stack size 8 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 476
  - Call Chain = tcp_tmr ⇒ tcp_fasttmr ⇒ tcp_process_refused_data ⇒ tcp_recv_null ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_fasttmr
  - >> tcp_slowtmr
  [Called By]
  - >> tcpip_tcp_timer

  tcp_shutdown (Thumb, 98 bytes, Stack size 16 bytes, tcp.o(.text), UNUSED)
  [Calls]

  - >> tcp_close_shutdown
  - >> pbuf_free

  tcp_abandon (Thumb, 174 bytes, Stack size 40 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 412
  - Call Chain = tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_segs_free
  - >> tcp_rst
  - >> tcp_pcb_remove
  - >> memp_free
  [Called By]
  - >> tcp_abort
  - >> tcp_listen_input

  tcp_abort (Thumb, 14 bytes, Stack size 8 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 420
  - Call Chain = tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_abandon
  [Called By]
  - >> tcp_kill_timewait
  - >> tcp_kill_prio
  - >> netif_set_ipaddr
  - >> tcp_input
  - >> tcp_process

  tcp_bind (Thumb, 146 bytes, Stack size 32 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 64
  - Call Chain = tcp_bind ⇒ tcp_timer_needed ⇒ sys_timeout
  [Calls]
  - >> tcp_new_port
  - >> tcp_timer_needed
  [Called By]
  - >> Telnet_init
  - >> httpd_init_addr

  tcp_listen_with_backlog (Thumb, 198 bytes, Stack size 16 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = tcp_listen_with_backlog ⇒ tcp_timer_needed ⇒ sys_timeout
  [Calls]
  - >> memp_malloc
  - >> tcp_timer_needed
  - >> memp_free
  [Called By]
  - >> Telnet_init
  - >> httpd_init_addr

  tcp_eff_send_mss (Thumb, 46 bytes, Stack size 24 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = tcp_eff_send_mss ⇒ ip_route
  [Calls]
  - >> ip_route
  [Called By]
  - >> tcp_output_segment
  - >> tcp_connect
  - >> tcp_listen_input
  - >> tcp_process

  tcp_next_iss (Thumb, 20 bytes, Stack size 0 bytes, tcp.o(.text))
  [Called By]

  - >> tcp_connect
  - >> tcp_alloc

  tcp_connect (Thumb, 328 bytes, Stack size 40 bytes, tcp.o(.text), UNUSED)
  [Calls]

  - >> tcp_next_iss
  - >> tcp_new_port
  - >> ip_route
  - >> tcp_timer_needed
  - >> tcp_output
  - >> tcp_enqueue_flags
  - >> tcp_eff_send_mss

  tcp_setprio (Thumb, 4 bytes, Stack size 0 bytes, tcp.o(.text))
  [Called By]

  - >> httpd_init_addr
  - >> http_accept

  tcp_alloc (Thumb, 182 bytes, Stack size 16 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 460
  - Call Chain = tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_next_iss
  - >> tcp_kill_timewait
  - >> tcp_kill_prio
  - >> memp_malloc
  - >> __aeabi_memclr4
  [Called By]
  - >> tcp_new
  - >> tcp_listen_input

  tcp_new (Thumb, 10 bytes, Stack size 8 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 468
  - Call Chain = tcp_new ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_alloc
  [Called By]
  - >> Telnet_init
  - >> httpd_init_addr

  tcp_arg (Thumb, 4 bytes, Stack size 0 bytes, tcp.o(.text))
  [Called By]

  - >> Telnet_accept
  - >> httpd_init_addr
  - >> http_accept
  - >> http_close_conn

  tcp_recv (Thumb, 8 bytes, Stack size 0 bytes, tcp.o(.text))
  [Called By]

  - >> Telnet_accept
  - >> http_accept
  - >> http_close_conn

  tcp_sent (Thumb, 8 bytes, Stack size 0 bytes, tcp.o(.text))
  [Called By]

  - >> http_accept
  - >> http_close_conn

  tcp_err (Thumb, 10 bytes, Stack size 0 bytes, tcp.o(.text))
  [Called By]

  - >> Telnet_accept
  - >> http_accept
  - >> http_close_conn

  tcp_accept (Thumb, 4 bytes, Stack size 0 bytes, tcp.o(.text))
  [Called By]

  - >> Telnet_init
  - >> httpd_init_addr

  tcp_poll (Thumb, 14 bytes, Stack size 0 bytes, tcp.o(.text))
  [Called By]

  - >> http_accept
  - >> http_close_conn

  tcp_debug_state_str (Thumb, 10 bytes, Stack size 0 bytes, tcp.o(.text), UNUSED)

  tcp_enqueue_flags (Thumb, 294 bytes, Stack size 32 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 140
  - Call Chain = tcp_enqueue_flags ⇒ tcp_create_segment ⇒ tcp_seg_free ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_create_segment
  - >> pbuf_alloc
  - >> pbuf_clen
  [Called By]
  - >> tcp_send_fin
  - >> tcp_connect
  - >> tcp_listen_input

  tcp_send_fin (Thumb, 74 bytes, Stack size 16 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 156
  - Call Chain = tcp_send_fin ⇒ tcp_enqueue_flags ⇒ tcp_create_segment ⇒ tcp_seg_free ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_enqueue_flags
  - >> lwip_ntohs
  - >> lwip_htons
  [Called By]
  - >> tcp_close_shutdown

  tcp_write (Thumb, 976 bytes, Stack size 112 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 268
  - Call Chain = tcp_write ⇒ tcp_pbuf_prealloc ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_cat
  - >> tcp_write_checks
  - >> tcp_pbuf_prealloc
  - >> tcp_create_segment
  - >> tcp_segs_free
  - >> pbuf_alloc
  - >> pbuf_free
  - >> pbuf_clen
  - >> lwip_htons
  - >> __aeabi_memcpy
  [Called By]
  - >> Telnet_accept
  - >> Telnet_recv
  - >> http_write

  tcp_send_empty_ack (Thumb, 84 bytes, Stack size 32 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 316
  - Call Chain = tcp_send_empty_ack ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> ip_output
  - >> tcp_output_alloc_header
  - >> lwip_htonl
  - >> pbuf_free
  [Called By]
  - >> tcp_output
  - >> tcp_receive

  tcp_output (Thumb, 444 bytes, Stack size 32 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 356
  - Call Chain = tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_output_segment
  - >> tcp_send_empty_ack
  - >> tcp_seg_free
  - >> lwip_ntohs
  - >> lwip_ntohl
  - >> lwip_htons
  [Called By]
  - >> tcp_rexmit_rto
  - >> tcp_connect
  - >> tcp_fasttmr
  - >> tcp_recved
  - >> tcp_slowtmr
  - >> tcp_close_shutdown
  - >> tcp_pcb_remove
  - >> tcp_input
  - >> tcp_timewait_input
  - >> tcp_listen_input
  - >> http_poll

  tcp_rst (Thumb, 132 bytes, Stack size 48 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 332
  - Call Chain = tcp_rst ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> ip_output
  - >> pbuf_alloc
  - >> lwip_htonl
  - >> pbuf_free
  - >> lwip_htons
  [Called By]
  - >> tcp_slowtmr
  - >> tcp_close_shutdown
  - >> tcp_abandon
  - >> tcp_input
  - >> tcp_timewait_input
  - >> tcp_listen_input
  - >> tcp_process

  tcp_rexmit_rto (Thumb, 58 bytes, Stack size 16 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 372
  - Call Chain = tcp_rexmit_rto ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_output
  [Called By]
  - >> tcp_slowtmr

  tcp_rexmit (Thumb, 90 bytes, Stack size 24 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 28
  - Call Chain = tcp_rexmit ⇒ lwip_ntohl
  [Calls]
  - >> lwip_ntohl
  [Called By]
  - >> tcp_rexmit_fast
  - >> tcp_process

  tcp_rexmit_fast (Thumb, 120 bytes, Stack size 8 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 36
  - Call Chain = tcp_rexmit_fast ⇒ tcp_rexmit ⇒ lwip_ntohl
  [Calls]
  - >> tcp_rexmit
  [Called By]
  - >> tcp_receive

  tcp_keepalive (Thumb, 86 bytes, Stack size 24 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 308
  - Call Chain = tcp_keepalive ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> ip_output
  - >> tcp_output_alloc_header
  - >> lwip_htonl
  - >> pbuf_free
  [Called By]
  - >> tcp_slowtmr

  tcp_zero_window_probe (Thumb, 180 bytes, Stack size 40 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 324
  - Call Chain = tcp_zero_window_probe ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> ip_output
  - >> tcp_output_alloc_header
  - >> pbuf_copy_partial
  - >> pbuf_free
  - >> lwip_ntohs
  - >> lwip_htons
  [Called By]
  - >> tcp_slowtmr

  raw_input (Thumb, 102 bytes, Stack size 32 bytes, raw.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = raw_input
  [Called By]
  - >> ip_input

  raw_bind (Thumb, 16 bytes, Stack size 0 bytes, raw.o(.text), UNUSED)

  raw_connect (Thumb, 16 bytes, Stack size 0 bytes, raw.o(.text), UNUSED)

  raw_recv (Thumb, 6 bytes, Stack size 0 bytes, raw.o(.text), UNUSED)

  raw_sendto (Thumb, 172 bytes, Stack size 48 bytes, raw.o(.text), UNUSED)
  [Calls]

  - >> pbuf_chain
  - >> ip_route
  - >> ip_output_if
  - >> pbuf_alloc
  - >> pbuf_header
  - >> pbuf_free
  [Called By]
  - >> raw_send

  raw_send (Thumb, 18 bytes, Stack size 16 bytes, raw.o(.text), UNUSED)
  [Calls]

  - >> raw_sendto

  raw_remove (Thumb, 60 bytes, Stack size 16 bytes, raw.o(.text), UNUSED)
  [Calls]

  - >> memp_free

  raw_new (Thumb, 46 bytes, Stack size 16 bytes, raw.o(.text), UNUSED)
  [Calls]

  - >> memp_malloc
  - >> __aeabi_memclr4

  lwip_init (Thumb, 28 bytes, Stack size 8 bytes, init.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = lwip_init ⇒ sys_timeouts_init ⇒ sys_timeout
  [Calls]
  - >> tcp_init
  - >> netif_init
  - >> mem_init
  - >> udp_init
  - >> memp_init
  - >> sys_timeouts_init
  [Called By]
  - >> Init

  pbuf_free (Thumb, 150 bytes, Stack size 32 bytes, pbuf.o(.text))
  [Stack]

  - Max Depth = 60
  - Call Chain = pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> mem_free
  - >> memp_free
  [Called By]
  - >> pbuf_coalesce
  - >> pbuf_dechain
  - >> raw_sendto
  - >> tcp_write
  - >> tcp_create_segment
  - >> tcp_zero_window_probe
  - >> tcp_keepalive
  - >> tcp_shutdown
  - >> udp_input
  - >> udp_sendto_if
  - >> pbuf_alloc
  - >> etharp_query
  - >> dhcp_recv
  - >> dhcp_delete_msg
  - >> tcp_send_empty_ack
  - >> tcp_seg_free
  - >> tcp_rst
  - >> tcp_recv_null
  - >> tcp_pcb_purge
  - >> pbuf_realloc
  - >> tcp_input
  - >> ethernet_input
  - >> etharp_raw
  - >> etharp_arp_input
  - >> etharp_update_arp_entry
  - >> etharp_free_entry
  - >> icmp_send_response
  - >> icmp_input
  - >> ip_input
  - >> ip_frag
  - >> ip_reass
  - >> ipfrag_free_pbuf_custom
  - >> ip_reass_chain_frag_into_datagram_and_validate
  - >> ip_reass_free_complete_datagram
  - >> ethernetif_input
  - >> Telnet_recv
  - >> httpd_post_receive_data
  - >> http_recv
  - >> http_post_request

  pbuf_alloc (Thumb, 424 bytes, Stack size 40 bytes, pbuf.o(.text))
  [Stack]

  - Max Depth = 100
  - Call Chain = pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> mem_malloc
  - >> memp_malloc
  - >> pbuf_free
  [Called By]
  - >> pbuf_coalesce
  - >> raw_sendto
  - >> tcp_write
  - >> tcp_pbuf_prealloc
  - >> tcp_output_alloc_header
  - >> udp_sendto_if
  - >> etharp_query
  - >> dhcp_create_msg
  - >> tcp_rst
  - >> tcp_enqueue_flags
  - >> etharp_raw
  - >> icmp_send_response
  - >> icmp_input
  - >> ip_frag
  - >> low_level_input

  pbuf_alloced_custom (Thumb, 116 bytes, Stack size 20 bytes, pbuf.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = pbuf_alloced_custom
  [Called By]
  - >> ip_frag

  pbuf_realloc (Thumb, 120 bytes, Stack size 24 bytes, pbuf.o(.text))
  [Stack]

  - Max Depth = 84
  - Call Chain = pbuf_realloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> mem_trim
  - >> pbuf_free
  [Called By]
  - >> dhcp_inform
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_reboot
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover
  - >> tcp_receive
  - >> ip_input

  pbuf_header (Thumb, 134 bytes, Stack size 16 bytes, pbuf.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = pbuf_header
  [Called By]
  - >> raw_sendto
  - >> tcp_create_segment
  - >> ip_output_if
  - >> udp_input
  - >> udp_sendto_if
  - >> tcp_input
  - >> tcp_receive
  - >> ethernet_input
  - >> etharp_output
  - >> icmp_input
  - >> ip_reass
  - >> http_post_request

  pbuf_clen (Thumb, 18 bytes, Stack size 0 bytes, pbuf.o(.text))
  [Called By]

  - >> tcp_write
  - >> tcp_enqueue_flags
  - >> tcp_receive
  - >> ip_reass
  - >> ip_reass_chain_frag_into_datagram_and_validate
  - >> ip_reass_free_complete_datagram
  - >> http_parse_request

  pbuf_ref (Thumb, 10 bytes, Stack size 0 bytes, pbuf.o(.text))
  [Called By]

  - >> pbuf_chain
  - >> etharp_query
  - >> ip_frag

  pbuf_cat (Thumb, 56 bytes, Stack size 8 bytes, pbuf.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = pbuf_cat
  [Called By]
  - >> tcp_write
  - >> pbuf_chain
  - >> ip_frag
  - >> ip_reass
  - >> http_parse_request

  pbuf_chain (Thumb, 26 bytes, Stack size 12 bytes, pbuf.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = pbuf_chain ⇒ pbuf_cat
  [Calls]
  - >> pbuf_ref
  - >> pbuf_cat
  [Called By]
  - >> raw_sendto
  - >> udp_sendto_if

  pbuf_dechain (Thumb, 66 bytes, Stack size 16 bytes, pbuf.o(.text), UNUSED)
  [Calls]

  - >> pbuf_free

  pbuf_copy (Thumb, 200 bytes, Stack size 24 bytes, pbuf.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = pbuf_copy
  [Calls]
  - >> __aeabi_memcpy
  [Called By]
  - >> pbuf_coalesce
  - >> etharp_query
  - >> icmp_input

  pbuf_copy_partial (Thumb, 146 bytes, Stack size 40 bytes, pbuf.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = pbuf_copy_partial
  [Calls]
  - >> __aeabi_memcpy
  [Called By]
  - >> tcp_zero_window_probe
  - >> dhcp_parse_reply
  - >> http_parse_request

  pbuf_take (Thumb, 116 bytes, Stack size 32 bytes, pbuf.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_memcpy

  pbuf_coalesce (Thumb, 60 bytes, Stack size 24 bytes, pbuf.o(.text), UNUSED)
  [Calls]

  - >> pbuf_copy
  - >> pbuf_alloc
  - >> pbuf_free

  pbuf_get_at (Thumb, 46 bytes, Stack size 8 bytes, pbuf.o(.text), UNUSED)
  [Called By]

  - >> pbuf_memcmp

  pbuf_memcmp (Thumb, 96 bytes, Stack size 40 bytes, pbuf.o(.text), UNUSED)
  [Calls]

  - >> pbuf_get_at
  [Called By]
  - >> pbuf_memfind

  pbuf_memfind (Thumb, 76 bytes, Stack size 32 bytes, pbuf.o(.text), UNUSED)
  [Calls]

  - >> pbuf_memcmp
  [Called By]
  - >> pbuf_strstr

  pbuf_strstr (Thumb, 60 bytes, Stack size 16 bytes, pbuf.o(.text), UNUSED)
  [Calls]

  - >> pbuf_memfind
  - >> strlen

  ip4_addr_isbroadcast (Thumb, 78 bytes, Stack size 12 bytes, ip_addr.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = ip4_addr_isbroadcast
  [Called By]
  - >> udp_input
  - >> etharp_query
  - >> tcp_input
  - >> etharp_output
  - >> etharp_update_arp_entry
  - >> icmp_input
  - >> ip_input

  ip4_addr_netmask_valid (Thumb, 56 bytes, Stack size 16 bytes, ip_addr.o(.text), UNUSED)
  [Calls]

  - >> lwip_htonl

  ipaddr_aton (Thumb, 348 bytes, Stack size 48 bytes, ip_addr.o(.text), UNUSED)
  [Calls]

  - >> lwip_htonl
  [Called By]
  - >> ipaddr_addr

  ipaddr_addr (Thumb, 24 bytes, Stack size 16 bytes, ip_addr.o(.text), UNUSED)
  [Calls]

  - >> ipaddr_aton

  ipaddr_ntoa_r (Thumb, 168 bytes, Stack size 40 bytes, ip_addr.o(.text), UNUSED)
  [Called By]

  - >> ipaddr_ntoa

  ipaddr_ntoa (Thumb, 16 bytes, Stack size 8 bytes, ip_addr.o(.text), UNUSED)
  [Calls]

  - >> ipaddr_ntoa_r

  inet_chksum_pseudo (Thumb, 170 bytes, Stack size 40 bytes, inet_chksum.o(.text), UNUSED)
  [Calls]

  - >> lwip_htons
  - >> lwip_standard_chksum

  inet_chksum_pseudo_partial (Thumb, 192 bytes, Stack size 56 bytes, inet_chksum.o(.text), UNUSED)
  [Calls]

  - >> lwip_htons
  - >> lwip_standard_chksum

  inet_chksum (Thumb, 20 bytes, Stack size 16 bytes, inet_chksum.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = inet_chksum ⇒ lwip_standard_chksum
  [Calls]
  - >> lwip_standard_chksum
  [Called By]
  - >> icmp_send_response
  - >> ip_frag
  - >> ip_reass

  inet_chksum_pbuf (Thumb, 86 bytes, Stack size 24 bytes, inet_chksum.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = inet_chksum_pbuf ⇒ lwip_standard_chksum
  [Calls]
  - >> lwip_standard_chksum
  [Called By]
  - >> icmp_input

  ip_reass_tmr (Thumb, 56 bytes, Stack size 16 bytes, ip_frag.o(.text))
  [Stack]

  - Max Depth = 388
  - Call Chain = ip_reass_tmr ⇒ ip_reass_free_complete_datagram ⇒ icmp_time_exceeded ⇒ icmp_send_response ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> ip_reass_free_complete_datagram
  [Called By]
  - >> ip_reass_timer

  ip_reass (Thumb, 422 bytes, Stack size 40 bytes, ip_frag.o(.text))
  [Stack]

  - Max Depth = 468
  - Call Chain = ip_reass ⇒ ip_reass_enqueue_new_datagram ⇒ ip_reass_remove_oldest_datagram ⇒ ip_reass_free_complete_datagram ⇒ icmp_time_exceeded ⇒ icmp_send_response ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_cat
  - >> pbuf_header
  - >> pbuf_free
  - >> pbuf_clen
  - >> lwip_ntohs
  - >> lwip_htons
  - >> ip_reass_chain_frag_into_datagram_and_validate
  - >> ip_reass_enqueue_new_datagram
  - >> ip_reass_remove_oldest_datagram
  - >> ip_reass_dequeue_datagram
  - >> inet_chksum
  - >> __aeabi_memcpy
  [Called By]
  - >> ip_input

  ip_frag (Thumb, 424 bytes, Stack size 96 bytes, ip_frag.o(.text))
  [Stack]

  - Max Depth = 196
  - Call Chain = ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_ref
  - >> pbuf_alloced_custom
  - >> pbuf_cat
  - >> pbuf_alloc
  - >> pbuf_free
  - >> lwip_ntohs
  - >> lwip_htons
  - >> ip_frag_free_pbuf_custom_ref
  - >> ip_frag_alloc_pbuf_custom_ref
  - >> inet_chksum
  - >> __aeabi_memcpy
  [Called By]
  - >> ip_output_if

  ip_route (Thumb, 80 bytes, Stack size 8 bytes, ip.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = ip_route
  [Called By]
  - >> raw_sendto
  - >> ip_output
  - >> tcp_output_segment
  - >> tcp_connect
  - >> udp_sendto
  - >> tcp_eff_send_mss

  ip_input (Thumb, 484 bytes, Stack size 40 bytes, ip.o(.text))
  [Stack]

  - Max Depth = 564
  - Call Chain = ip_input ⇒ tcp_input ⇒ tcp_listen_input ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> raw_input
  - >> icmp_dest_unreach
  - >> udp_input
  - >> pbuf_realloc
  - >> pbuf_free
  - >> lwip_ntohs
  - >> ip4_addr_isbroadcast
  - >> tcp_input
  - >> icmp_input
  - >> ip_reass
  [Called By]
  - >> ethernet_input

  ip_output_if (Thumb, 204 bytes, Stack size 40 bytes, ip.o(.text))
  [Stack]

  - Max Depth = 236
  - Call Chain = ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_header
  - >> lwip_htons
  - >> ip_frag
  [Called By]
  - >> raw_sendto
  - >> ip_output
  - >> udp_sendto_if
  - >> icmp_input

  ip_output (Thumb, 60 bytes, Stack size 48 bytes, ip.o(.text))
  [Stack]

  - Max Depth = 284
  - Call Chain = ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> ip_route
  - >> ip_output_if
  [Called By]
  - >> tcp_output_segment
  - >> tcp_zero_window_probe
  - >> tcp_keepalive
  - >> tcp_send_empty_ack
  - >> tcp_rst
  - >> icmp_send_response

  icmp_input (Thumb, 380 bytes, Stack size 48 bytes, icmp.o(.text))
  [Stack]

  - Max Depth = 284
  - Call Chain = icmp_input ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_copy
  - >> ip_output_if
  - >> pbuf_alloc
  - >> pbuf_header
  - >> pbuf_free
  - >> ip4_addr_isbroadcast
  - >> inet_chksum_pbuf
  [Called By]
  - >> ip_input

  icmp_dest_unreach (Thumb, 18 bytes, Stack size 16 bytes, icmp.o(.text))
  [Stack]

  - Max Depth = 340
  - Call Chain = icmp_dest_unreach ⇒ icmp_send_response ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> icmp_send_response
  [Called By]
  - >> udp_input
  - >> ip_input

  icmp_time_exceeded (Thumb, 18 bytes, Stack size 16 bytes, icmp.o(.text))
  [Stack]

  - Max Depth = 340
  - Call Chain = icmp_time_exceeded ⇒ icmp_send_response ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> icmp_send_response
  [Called By]
  - >> ip_reass_free_complete_datagram

  etharp_tmr (Thumb, 144 bytes, Stack size 16 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 84
  - Call Chain = etharp_tmr ⇒ etharp_free_entry ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> etharp_free_entry
  [Called By]
  - >> arp_timer

  etharp_cleanup_netif (Thumb, 52 bytes, Stack size 16 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 84
  - Call Chain = etharp_cleanup_netif ⇒ etharp_free_entry ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> etharp_free_entry
  [Called By]
  - >> netif_set_down

  etharp_find_addr (Thumb, 90 bytes, Stack size 24 bytes, etharp.o(.text), UNUSED)
  [Calls]

  - >> etharp_find_entry

  etharp_request (Thumb, 40 bytes, Stack size 32 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 172
  - Call Chain = etharp_request ⇒ etharp_raw ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> etharp_raw
  [Called By]
  - >> netif_set_link_up
  - >> netif_set_up
  - >> etharp_query
  - >> etharp_output_to_arp_index

  etharp_query (Thumb, 362 bytes, Stack size 40 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 212
  - Call Chain = etharp_query ⇒ etharp_request ⇒ etharp_raw ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_copy
  - >> pbuf_ref
  - >> etharp_request
  - >> pbuf_alloc
  - >> pbuf_free
  - >> ip4_addr_isbroadcast
  - >> etharp_send_ip
  - >> etharp_find_entry
  [Called By]
  - >> dhcp_check
  - >> etharp_output

  etharp_output (Thumb, 318 bytes, Stack size 40 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 252
  - Call Chain = etharp_output ⇒ etharp_query ⇒ etharp_request ⇒ etharp_raw ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> etharp_query
  - >> pbuf_header
  - >> ip4_addr_isbroadcast
  - >> etharp_output_to_arp_index
  - >> etharp_send_ip
  [Address Reference Count : 1]
  - ethernetif.o(.text)

  ethernet_input (Thumb, 198 bytes, Stack size 24 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 588
  - Call Chain = ethernet_input ⇒ ip_input ⇒ tcp_input ⇒ tcp_listen_input ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_header
  - >> pbuf_free
  - >> etharp_arp_input
  - >> ip_input
  - >> memcmp
  [Address Reference Count : 1]
  - main.o(.text)

  HAL_RCC_DeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_rcc.o(.text), UNUSED)

  HAL_RCC_OscConfig (Thumb, 906 bytes, Stack size 16 bytes, stm32f4xx_hal_rcc.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_RCC_OscConfig
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> SystemClock_Config

  HAL_RCC_ClockConfig (Thumb, 450 bytes, Stack size 16 bytes, stm32f4xx_hal_rcc.o(.text))
  [Stack]

  - Max Depth = 80
  - Call Chain = HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_NVIC_SetPriority ⇒ NVIC_SetPriority
  [Calls]
  - >> HAL_InitTick
  - >> HAL_GetTick
  [Called By]
  - >> SystemClock_Config

  HAL_RCC_MCOConfig (Thumb, 186 bytes, Stack size 40 bytes, stm32f4xx_hal_rcc.o(.text), UNUSED)
  [Calls]

  - >> HAL_GPIO_Init

  HAL_RCC_EnableCSS (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_rcc.o(.text), UNUSED)

  HAL_RCC_DisableCSS (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_rcc.o(.text), UNUSED)

  HAL_RCC_GetSysClockFreq (Thumb, 170 bytes, Stack size 16 bytes, stm32f4xx_hal_rcc.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_RCC_GetSysClockFreq
  [Called By]
  - >> HAL_RCC_GetHCLKFreq

  HAL_RCC_GetHCLKFreq (Thumb, 44 bytes, Stack size 8 bytes, stm32f4xx_hal_rcc.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_RCC_GetHCLKFreq ⇒ HAL_RCC_GetSysClockFreq
  [Calls]
  - >> HAL_RCC_GetSysClockFreq
  [Called By]
  - >> HAL_ETH_Init
  - >> HAL_InitTick
  - >> HAL_RCC_GetPCLK2Freq
  - >> HAL_RCC_GetPCLK1Freq

  HAL_RCC_GetPCLK1Freq (Thumb, 38 bytes, Stack size 8 bytes, stm32f4xx_hal_rcc.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = HAL_RCC_GetPCLK1Freq ⇒ HAL_RCC_GetHCLKFreq ⇒ HAL_RCC_GetSysClockFreq
  [Calls]
  - >> HAL_RCC_GetHCLKFreq
  [Called By]
  - >> HAL_I2C_Init
  - >> RC5_TIM_GetCounterCLKValue

  HAL_RCC_GetPCLK2Freq (Thumb, 38 bytes, Stack size 8 bytes, stm32f4xx_hal_rcc.o(.text), UNUSED)
  [Calls]

  - >> HAL_RCC_GetHCLKFreq

  HAL_RCC_GetOscConfig (Thumb, 320 bytes, Stack size 0 bytes, stm32f4xx_hal_rcc.o(.text), UNUSED)

  HAL_RCC_GetClockConfig (Thumb, 66 bytes, Stack size 0 bytes, stm32f4xx_hal_rcc.o(.text), UNUSED)

  HAL_RCC_CSSCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_rcc.o(.text), UNUSED)
  [Called By]

  - >> HAL_RCC_NMI_IRQHandler

  HAL_RCC_NMI_IRQHandler (Thumb, 30 bytes, Stack size 8 bytes, stm32f4xx_hal_rcc.o(.text), UNUSED)
  [Calls]

  - >> HAL_RCC_CSSCallback

  HAL_ADC_Init (Thumb, 100 bytes, Stack size 16 bytes, stm32f4xx_hal_adc.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = HAL_ADC_Init ⇒ HAL_ADC_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> ADC_Init
  - >> HAL_ADC_MspInit
  [Called By]
  - >> ADC_Config

  HAL_ADC_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)
  [Called By]

  - >> HAL_ADC_DeInit

  HAL_ADC_DeInit (Thumb, 68 bytes, Stack size 16 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)
  [Calls]

  - >> HAL_ADC_MspDeInit

  HAL_ADC_Start (Thumb, 236 bytes, Stack size 8 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)

  HAL_ADC_Stop (Thumb, 72 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)

  HAL_ADC_PollForConversion (Thumb, 208 bytes, Stack size 16 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_ADC_PollForEvent (Thumb, 118 bytes, Stack size 24 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_ADC_Start_IT (Thumb, 248 bytes, Stack size 8 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)

  HAL_ADC_Stop_IT (Thumb, 86 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)

  HAL_ADC_ErrorCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(.text))
  [Called By]

  - >> ADC_MultiModeDMAError
  - >> HAL_ADC_IRQHandler
  - >> ADC_DMAError

  HAL_ADC_LevelOutOfWindowCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)
  [Called By]

  - >> HAL_ADC_IRQHandler

  HAL_ADC_ConvCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(.text))
  [Called By]

  - >> ADC_MultiModeDMAConvCplt
  - >> HAL_ADC_IRQHandler
  - >> ADC_DMAConvCplt

  HAL_ADC_IRQHandler (Thumb, 372 bytes, Stack size 16 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)
  [Calls]

  - >> HAL_ADC_ConvCpltCallback
  - >> HAL_ADC_LevelOutOfWindowCallback
  - >> HAL_ADC_ErrorCallback
  - >> HAL_ADCEx_InjectedConvCpltCallback

  HAL_ADC_ConvHalfCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(.text))
  [Called By]

  - >> ADC_MultiModeDMAHalfConvCplt
  - >> ADC_DMAHalfConvCplt

  HAL_ADC_Start_DMA (Thumb, 334 bytes, Stack size 24 bytes, stm32f4xx_hal_adc.o(.text))
  [Stack]

  - Max Depth = 60
  - Call Chain = HAL_ADC_Start_DMA ⇒ HAL_DMA_Start_IT ⇒ DMA_SetConfig
  [Calls]
  - >> HAL_DMA_Start_IT
  [Called By]
  - >> EXTI3_IRQHandler

  HAL_ADC_Stop_DMA (Thumb, 108 bytes, Stack size 16 bytes, stm32f4xx_hal_adc.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = HAL_ADC_Stop_DMA ⇒ HAL_DMA_Abort
  [Calls]
  - >> HAL_DMA_Abort
  [Called By]
  - >> EXTI3_IRQHandler

  HAL_ADC_GetValue (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)

  HAL_ADC_ConfigChannel (Thumb, 386 bytes, Stack size 12 bytes, stm32f4xx_hal_adc.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = HAL_ADC_ConfigChannel
  [Called By]
  - >> ADC_Config

  HAL_ADC_AnalogWDGConfig (Thumb, 132 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)

  HAL_ADC_GetState (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)

  HAL_ADC_GetError (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(.text), UNUSED)

  HAL_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text))
  [Called By]

  - >> HAL_Init

  HAL_InitTick (Thumb, 36 bytes, Stack size 16 bytes, stm32f4xx_hal.o(.text))
  [Stack]

  - Max Depth = 64
  - Call Chain = HAL_InitTick ⇒ HAL_NVIC_SetPriority ⇒ NVIC_SetPriority
  [Calls]
  - >> HAL_SYSTICK_Config
  - >> HAL_NVIC_SetPriority
  - >> HAL_RCC_GetHCLKFreq
  [Called By]
  - >> HAL_Init
  - >> HAL_RCC_ClockConfig

  HAL_Init (Thumb, 44 bytes, Stack size 8 bytes, stm32f4xx_hal.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = HAL_Init ⇒ HAL_InitTick ⇒ HAL_NVIC_SetPriority ⇒ NVIC_SetPriority
  [Calls]
  - >> HAL_MspInit
  - >> HAL_NVIC_SetPriorityGrouping
  - >> HAL_InitTick
  [Called By]
  - >> main

  HAL_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)
  [Called By]

  - >> HAL_DeInit

  HAL_DeInit (Thumb, 64 bytes, Stack size 8 bytes, stm32f4xx_hal.o(.text), UNUSED)
  [Calls]

  - >> HAL_MspDeInit

  HAL_IncTick (Thumb, 12 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text))
  [Called By]

  - >> SysTick_Handler

  HAL_GetTick (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text))
  [Called By]

  - >> sys_now
  - >> HAL_ETH_Init
  - >> HAL_ETH_ReadPHYRegister
  - >> HAL_ETH_WritePHYRegister
  - >> HAL_ADCEx_InjectedPollForConversion
  - >> HAL_I2C_IsDeviceReady
  - >> I2C_WaitOnSTOPFlagUntilTimeout
  - >> I2C_WaitOnRXNEFlagUntilTimeout
  - >> I2C_WaitOnFlagUntilTimeout
  - >> I2C_WaitOnMasterAddressFlagUntilTimeout
  - >> I2C_WaitOnTXEFlagUntilTimeout
  - >> I2C_WaitOnBTFFlagUntilTimeout
  - >> HAL_Delay
  - >> HAL_DMA_Abort
  - >> HAL_ADC_PollForEvent
  - >> HAL_ADC_PollForConversion
  - >> HAL_RCC_OscConfig
  - >> HAL_RCC_ClockConfig
  - >> ethernetif_update_config
  - >> HAL_SPI_Receive
  - >> HAL_SPI_TransmitReceive
  - >> HAL_SPI_Transmit
  - >> SPI_DMATransmitReceiveCplt
  - >> SPI_DMATransmitCplt
  - >> SPI_CloseRxTx_ISR
  - >> SPI_CloseTx_ISR
  - >> SPI_WaitFlagStateUntilTimeout
  - >> HAL_RTCEx_PollForAlarmBEvent
  - >> HAL_RTCEx_SetSynchroShift
  - >> HAL_RTCEx_SetSmoothCalib
  - >> HAL_RTCEx_PollForWakeUpTimerEvent
  - >> HAL_RTCEx_DeactivateWakeUpTimer
  - >> HAL_RTCEx_SetWakeUpTimer_IT
  - >> HAL_RTCEx_SetWakeUpTimer
  - >> HAL_RTCEx_PollForTamper2Event
  - >> HAL_RTCEx_PollForTamper1Event
  - >> HAL_RTCEx_PollForTimeStampEvent
  - >> HAL_RTC_PollForAlarmAEvent
  - >> HAL_RTC_DeactivateAlarm
  - >> HAL_RTC_SetAlarm_IT
  - >> HAL_RTC_SetAlarm
  - >> HAL_RTC_DeInit
  - >> HAL_RTC_WaitForSynchro
  - >> RTC_EnterInitMode
  - >> HAL_IWDG_Refresh
  - >> HAL_DMA_PollForTransfer

  HAL_Delay (Thumb, 26 bytes, Stack size 16 bytes, stm32f4xx_hal.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_Delay
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_ETH_Init
  - >> ETH_MACReceptionDisable
  - >> ETH_MACTransmissionDisable
  - >> ETH_MACTransmissionEnable
  - >> ETH_MACReceptionEnable
  - >> ETH_FlushTransmitFIFO
  - >> ETH_MACDMAConfig
  - >> Init_Config
  - >> Init
  - >> HAL_ETH_ConfigDMA
  - >> HAL_ETH_ConfigMAC
  - >> TM_ILI9341_InitLCD__
  - >> TM_ILI9341_InitLCD
  - >> Save
  - >> MX_GPIO_Init_l
  - >> RC5_CGI

  HAL_SuspendTick (Thumb, 18 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)

  HAL_ResumeTick (Thumb, 18 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)

  HAL_GetHalVersion (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)

  HAL_GetREVID (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text))
  [Called By]

  - >> SystemClock_Config

  HAL_GetDEVID (Thumb, 10 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)

  HAL_DBGMCU_EnableDBGSleepMode (Thumb, 14 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)

  HAL_DBGMCU_DisableDBGSleepMode (Thumb, 14 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)

  HAL_DBGMCU_EnableDBGStopMode (Thumb, 14 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)

  HAL_DBGMCU_DisableDBGStopMode (Thumb, 14 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)

  HAL_DBGMCU_EnableDBGStandbyMode (Thumb, 14 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)

  HAL_DBGMCU_DisableDBGStandbyMode (Thumb, 14 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)

  HAL_EnableCompensationCell (Thumb, 22 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)

  HAL_DisableCompensationCell (Thumb, 24 bytes, Stack size 0 bytes, stm32f4xx_hal.o(.text), UNUSED)

  HAL_GPIO_Init (Thumb, 476 bytes, Stack size 24 bytes, stm32f4xx_hal_gpio.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_GPIO_Init
  [Called By]
  - >> HAL_RCC_MCOConfig
  - >> HAL_ADC_MspInit
  - >> MX_GPIO_Init_l

  HAL_GPIO_DeInit (Thumb, 326 bytes, Stack size 20 bytes, stm32f4xx_hal_gpio.o(.text), UNUSED)

  HAL_GPIO_ReadPin (Thumb, 16 bytes, Stack size 0 bytes, stm32f4xx_hal_gpio.o(.text))
  [Called By]

  - >> Attention

  HAL_GPIO_WritePin (Thumb, 12 bytes, Stack size 0 bytes, stm32f4xx_hal_gpio.o(.text))
  [Called By]

  - >> TIM8_BRK_TIM12_IRQHandler
  - >> EXTI3_IRQHandler
  - >> TM_ILI9341_GetPixel
  - >> TM_ILI9341_DrawFilledRectangle
  - >> TM_ILI9341_InitLCD__
  - >> TM_ILI9341_InitLCD
  - >> TM_ILI9341_SendData
  - >> TM_ILI9341_SendCommand
  - >> TIMER_change
  - >> Hot_STOP
  - >> TM_ILI9341_SendData16
  - >> TM_ILI9341_Init
  - >> MX_GPIO_Init_l
  - >> RC5_CGI

  HAL_GPIO_TogglePin (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_gpio.o(.text), UNUSED)

  HAL_GPIO_LockPin (Thumb, 46 bytes, Stack size 8 bytes, stm32f4xx_hal_gpio.o(.text), UNUSED)

  HAL_GPIO_EXTI_Callback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_gpio.o(.text))
  [Called By]

  - >> HAL_GPIO_EXTI_IRQHandler

  HAL_GPIO_EXTI_IRQHandler (Thumb, 28 bytes, Stack size 8 bytes, stm32f4xx_hal_gpio.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_GPIO_EXTI_IRQHandler
  [Calls]
  - >> HAL_GPIO_EXTI_Callback
  [Called By]
  - >> RC5_MeasureFirstLowDuration
  - >> EXTI9_5_IRQHandler
  - >> EXTI3_IRQHandler
  - >> EXTI0_IRQHandler

  HAL_PWR_DeInit (Thumb, 24 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_EnableBkUpAccess (Thumb, 20 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text))
  [Called By]

  - >> SystemClock_Config

  HAL_PWR_DisableBkUpAccess (Thumb, 22 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_ConfigPVD (Thumb, 172 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_EnablePVD (Thumb, 20 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_DisablePVD (Thumb, 20 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_EnableWakeUpPin (Thumb, 12 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_DisableWakeUpPin (Thumb, 12 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_EnterSLEEPMode (Thumb, 28 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_EnterSTOPMode (Thumb, 54 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_EnterSTANDBYMode (Thumb, 32 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_PVDCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)
  [Called By]

  - >> HAL_PWR_PVD_IRQHandler

  HAL_PWR_PVD_IRQHandler (Thumb, 30 bytes, Stack size 8 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)
  [Calls]

  - >> HAL_PWR_PVDCallback

  HAL_PWR_EnableSleepOnExit (Thumb, 14 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_DisableSleepOnExit (Thumb, 14 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_EnableSEVOnPend (Thumb, 14 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_PWR_DisableSEVOnPend (Thumb, 14 bytes, Stack size 0 bytes, stm32f4xx_hal_pwr.o(.text), UNUSED)

  HAL_NVIC_SetPriorityGrouping (Thumb, 36 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(.text))
  [Called By]

  - >> HAL_Init

  HAL_NVIC_SetPriority (Thumb, 124 bytes, Stack size 40 bytes, stm32f4xx_hal_cortex.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = HAL_NVIC_SetPriority ⇒ NVIC_SetPriority
  [Calls]
  - >> NVIC_GetPriorityGrouping
  - >> NVIC_SetPriority
  [Called By]
  - >> HAL_InitTick
  - >> NVIC_Config

  HAL_NVIC_EnableIRQ (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(.text))
  [Called By]

  - >> NVIC_Config

  HAL_NVIC_DisableIRQ (Thumb, 22 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(.text))
  [Called By]

  - >> Hot_STOP

  HAL_NVIC_SystemReset (Thumb, 64 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(.text), UNUSED)

  HAL_SYSTICK_Config (Thumb, 52 bytes, Stack size 16 bytes, stm32f4xx_hal_cortex.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_SYSTICK_Config ⇒ NVIC_SetPriority
  [Calls]
  - >> NVIC_SetPriority
  [Called By]
  - >> HAL_InitTick

  HAL_MPU_ConfigRegion (Thumb, 90 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(.text), UNUSED)

  HAL_NVIC_GetPriorityGrouping (Thumb, 8 bytes, Stack size 8 bytes, stm32f4xx_hal_cortex.o(.text), UNUSED)
  [Calls]

  - >> NVIC_GetPriorityGrouping

  HAL_NVIC_GetPriority (Thumb, 138 bytes, Stack size 28 bytes, stm32f4xx_hal_cortex.o(.text), UNUSED)

  HAL_NVIC_SetPendingIRQ (Thumb, 24 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(.text), UNUSED)

  HAL_NVIC_GetPendingIRQ (Thumb, 38 bytes, Stack size 8 bytes, stm32f4xx_hal_cortex.o(.text), UNUSED)

  HAL_NVIC_ClearPendingIRQ (Thumb, 22 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(.text), UNUSED)

  HAL_NVIC_GetActive (Thumb, 38 bytes, Stack size 8 bytes, stm32f4xx_hal_cortex.o(.text), UNUSED)

  HAL_SYSTICK_CLKSourceConfig (Thumb, 40 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(.text), UNUSED)

  HAL_SYSTICK_Callback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(.text), UNUSED)
  [Called By]

  - >> HAL_SYSTICK_IRQHandler

  HAL_SYSTICK_IRQHandler (Thumb, 8 bytes, Stack size 8 bytes, stm32f4xx_hal_cortex.o(.text), UNUSED)
  [Calls]

  - >> HAL_SYSTICK_Callback

  HAL_I2C_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text))
  [Called By]

  - >> HAL_I2C_Init

  HAL_I2C_Init (Thumb, 286 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = HAL_I2C_Init ⇒ HAL_RCC_GetPCLK1Freq ⇒ HAL_RCC_GetHCLKFreq ⇒ HAL_RCC_GetSysClockFreq
  [Calls]
  - >> HAL_I2C_MspInit
  - >> HAL_RCC_GetPCLK1Freq
  [Called By]
  - >> I2C_Config

  HAL_I2C_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text))
  [Called By]

  - >> HAL_I2C_DeInit

  HAL_I2C_DeInit (Thumb, 60 bytes, Stack size 8 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_I2C_DeInit
  [Calls]
  - >> HAL_I2C_MspDeInit
  [Called By]
  - >> I2Cx_Error

  HAL_I2C_Master_Transmit (Thumb, 320 bytes, Stack size 32 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = HAL_I2C_Master_Transmit ⇒ I2C_MasterRequestWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> I2C_MasterRequestWrite
  - >> I2C_WaitOnFlagUntilTimeout
  - >> I2C_WaitOnTXEFlagUntilTimeout
  - >> I2C_WaitOnBTFFlagUntilTimeout
  [Called By]
  - >> OW_ReadByte
  - >> OW_TouchBit
  - >> OW_WriteByte
  - >> OW_Reset
  - >> ds2482_write_config
  - >> ds2482_reset

  HAL_I2C_Master_Receive (Thumb, 630 bytes, Stack size 32 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 80
  - Call Chain = HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> I2C_MasterRequestRead
  - >> I2C_WaitOnRXNEFlagUntilTimeout
  - >> I2C_WaitOnFlagUntilTimeout
  [Called By]
  - >> OW_ReadByte
  - >> OW_TouchBit
  - >> OW_WriteByte
  - >> OW_Reset
  - >> ds2482_write_config
  - >> ds2482_reset

  HAL_I2C_Slave_Transmit (Thumb, 350 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_WaitOnFlagUntilTimeout
  - >> I2C_WaitOnTXEFlagUntilTimeout

  HAL_I2C_Slave_Receive (Thumb, 350 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_WaitOnSTOPFlagUntilTimeout
  - >> I2C_WaitOnRXNEFlagUntilTimeout
  - >> I2C_WaitOnFlagUntilTimeout

  HAL_I2C_Master_Transmit_IT (Thumb, 250 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_MasterRequestWrite
  - >> I2C_WaitOnFlagUntilTimeout

  HAL_I2C_Master_Receive_IT (Thumb, 372 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_MasterRequestRead
  - >> I2C_WaitOnFlagUntilTimeout

  HAL_I2C_Master_Sequential_Transmit_IT (Thumb, 272 bytes, Stack size 32 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_MasterRequestWrite
  - >> I2C_WaitOnFlagUntilTimeout

  HAL_I2C_Master_Sequential_Receive_IT (Thumb, 494 bytes, Stack size 32 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_MasterRequestRead
  - >> I2C_WaitOnFlagUntilTimeout

  HAL_I2C_Slave_Transmit_IT (Thumb, 146 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_WaitOnFlagUntilTimeout

  HAL_I2C_Slave_Receive_IT (Thumb, 146 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_WaitOnFlagUntilTimeout

  HAL_I2C_Slave_Sequential_Transmit_IT (Thumb, 128 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)

  HAL_I2C_Slave_Sequential_Receive_IT (Thumb, 128 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)

  HAL_I2C_EnableListen_IT (Thumb, 48 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)

  HAL_I2C_DisableListen_IT (Thumb, 70 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)

  HAL_I2C_ErrorCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text))
  [Called By]

  - >> HAL_I2C_ER_IRQHandler
  - >> I2C_DMAMemReceiveCplt
  - >> I2C_DMAMemTransmitCplt
  - >> I2C_DMASlaveReceiveCplt
  - >> I2C_DMASlaveTransmitCplt
  - >> I2C_DMAMasterReceiveCplt
  - >> I2C_DMAMasterTransmitCplt
  - >> I2C_DMAError

  HAL_I2C_MasterTxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text))
  [Called By]

  - >> I2C_MasterTransmit_BTF
  - >> I2C_DMAMasterTransmitCplt

  HAL_I2C_Master_Transmit_DMA (Thumb, 354 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_MasterRequestWrite
  - >> I2C_WaitOnFlagUntilTimeout
  - >> HAL_DMA_Start_IT

  HAL_I2C_MasterRxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text))
  [Called By]

  - >> I2C_MasterReceive_RXNE
  - >> I2C_MasterReceive_BTF
  - >> I2C_DMAMasterReceiveCplt

  HAL_I2C_Master_Receive_DMA (Thumb, 346 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_MasterRequestRead
  - >> I2C_WaitOnFlagUntilTimeout
  - >> HAL_DMA_Start_IT

  HAL_I2C_Master_Abort_IT (Thumb, 118 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)

  HAL_I2C_SlaveTxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text))
  [Called By]

  - >> I2C_Slave_AF
  - >> I2C_SlaveTransmit_TXE
  - >> I2C_DMASlaveTransmitCplt

  HAL_I2C_Slave_Transmit_DMA (Thumb, 318 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_WaitOnFlagUntilTimeout
  - >> HAL_DMA_Start_IT

  HAL_I2C_SlaveRxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text))
  [Called By]

  - >> I2C_Slave_STOPF
  - >> I2C_SlaveReceive_RXNE
  - >> I2C_DMASlaveReceiveCplt

  HAL_I2C_Slave_Receive_DMA (Thumb, 214 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_WaitOnFlagUntilTimeout
  - >> HAL_DMA_Start_IT

  HAL_I2C_Mem_Write (Thumb, 304 bytes, Stack size 40 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 96
  - Call Chain = HAL_I2C_Mem_Write ⇒ I2C_RequestMemoryWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> I2C_RequestMemoryWrite
  - >> I2C_WaitOnFlagUntilTimeout
  - >> I2C_WaitOnTXEFlagUntilTimeout
  [Called By]
  - >> I2Cx_WriteMultiple
  - >> I2Cx_Write

  HAL_I2C_Mem_Read (Thumb, 612 bytes, Stack size 40 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 96
  - Call Chain = HAL_I2C_Mem_Read ⇒ I2C_RequestMemoryRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> I2C_RequestMemoryRead
  - >> I2C_WaitOnRXNEFlagUntilTimeout
  - >> I2C_WaitOnFlagUntilTimeout
  [Called By]
  - >> I2Cx_ReadMultiple
  - >> I2Cx_Read

  HAL_I2C_Mem_Write_IT (Thumb, 244 bytes, Stack size 32 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_RequestMemoryWrite
  - >> I2C_WaitOnFlagUntilTimeout

  HAL_I2C_Mem_Read_IT (Thumb, 400 bytes, Stack size 32 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_RequestMemoryRead
  - >> I2C_WaitOnFlagUntilTimeout

  HAL_I2C_MemTxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text))
  [Called By]

  - >> I2C_MasterTransmit_BTF
  - >> I2C_DMAMemTransmitCplt

  HAL_I2C_Mem_Write_DMA (Thumb, 314 bytes, Stack size 32 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_RequestMemoryRead
  - >> I2C_RequestMemoryWrite
  - >> I2C_WaitOnFlagUntilTimeout
  - >> HAL_DMA_Start_IT

  HAL_I2C_MemRxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text))
  [Called By]

  - >> I2C_MasterReceive_RXNE
  - >> I2C_MasterReceive_BTF
  - >> I2C_DMAMemReceiveCplt

  HAL_I2C_Mem_Read_DMA (Thumb, 366 bytes, Stack size 32 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_RequestMemoryRead
  - >> I2C_WaitOnFlagUntilTimeout
  - >> HAL_DMA_Start_IT

  HAL_I2C_IsDeviceReady (Thumb, 426 bytes, Stack size 48 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = HAL_I2C_IsDeviceReady ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> I2C_WaitOnFlagUntilTimeout
  - >> HAL_GetTick
  [Called By]
  - >> I2Cx_IsDeviceReady

  HAL_I2C_ListenCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Called By]

  - >> HAL_I2C_ER_IRQHandler
  - >> I2C_Slave_AF
  - >> I2C_Slave_STOPF

  HAL_I2C_AddrCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Called By]

  - >> I2C_Slave_ADDR

  HAL_I2C_EV_IRQHandler (Thumb, 374 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> I2C_MasterTransmit_TXE
  - >> I2C_MasterTransmit_BTF
  - >> I2C_MasterReceive_RXNE
  - >> I2C_MasterReceive_BTF
  - >> I2C_Slave_ADDR
  - >> I2C_Slave_STOPF
  - >> I2C_SlaveTransmit_TXE
  - >> I2C_SlaveTransmit_BTF
  - >> I2C_SlaveReceive_RXNE
  - >> I2C_SlaveReceive_BTF

  HAL_I2C_ER_IRQHandler (Thumb, 332 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> HAL_I2C_ListenCpltCallback
  - >> HAL_I2C_ErrorCallback
  - >> I2C_Slave_AF

  HAL_I2C_GetState (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text))
  [Called By]

  - >> I2C_Config

  HAL_I2C_GetMode (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)

  HAL_I2C_GetError (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)

  HAL_ADCEx_InjectedStart (Thumb, 252 bytes, Stack size 12 bytes, stm32f4xx_hal_adc_ex.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = HAL_ADCEx_InjectedStart
  [Called By]
  - >> ADC_Config

  HAL_ADCEx_InjectedStart_IT (Thumb, 264 bytes, Stack size 12 bytes, stm32f4xx_hal_adc_ex.o(.text), UNUSED)

  HAL_ADCEx_InjectedStop (Thumb, 104 bytes, Stack size 0 bytes, stm32f4xx_hal_adc_ex.o(.text), UNUSED)

  HAL_ADCEx_InjectedPollForConversion (Thumb, 160 bytes, Stack size 16 bytes, stm32f4xx_hal_adc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_ADCEx_InjectedStop_IT (Thumb, 116 bytes, Stack size 0 bytes, stm32f4xx_hal_adc_ex.o(.text), UNUSED)

  HAL_ADCEx_InjectedGetValue (Thumb, 70 bytes, Stack size 8 bytes, stm32f4xx_hal_adc_ex.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_ADCEx_InjectedGetValue
  [Called By]
  - >> TIM1_BRK_TIM9_IRQHandler

  HAL_ADCEx_MultiModeStart_DMA (Thumb, 278 bytes, Stack size 24 bytes, stm32f4xx_hal_adc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT

  HAL_ADCEx_MultiModeStop_DMA (Thumb, 108 bytes, Stack size 16 bytes, stm32f4xx_hal_adc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Abort

  HAL_ADCEx_MultiModeGetValue (Thumb, 10 bytes, Stack size 0 bytes, stm32f4xx_hal_adc_ex.o(.text), UNUSED)

  HAL_ADCEx_InjectedConvCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_adc_ex.o(.text), UNUSED)
  [Called By]

  - >> HAL_ADC_IRQHandler

  HAL_ADCEx_InjectedConfigChannel (Thumb, 548 bytes, Stack size 8 bytes, stm32f4xx_hal_adc_ex.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_ADCEx_InjectedConfigChannel
  [Called By]
  - >> ADC_Config

  HAL_ADCEx_MultiModeConfigChannel (Thumb, 162 bytes, Stack size 0 bytes, stm32f4xx_hal_adc_ex.o(.text), UNUSED)

  HAL_ETH_WritePHYRegister (Thumb, 144 bytes, Stack size 24 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_ETH_WritePHYRegister
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_ETH_Init
  - >> ethernetif_update_config
  - >> low_level_init

  HAL_ETH_ReadPHYRegister (Thumb, 146 bytes, Stack size 24 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_ETH_ReadPHYRegister
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_ETH_Init
  - >> ethernetif_update_config
  - >> ethernetif_set_link
  - >> low_level_init

  HAL_ETH_Init (Thumb, 670 bytes, Stack size 32 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 248
  - Call Chain = HAL_ETH_Init ⇒ ETH_MACDMAConfig ⇒ HAL_Delay
  [Calls]
  - >> HAL_ETH_ReadPHYRegister
  - >> HAL_ETH_WritePHYRegister
  - >> ETH_MACDMAConfig
  - >> HAL_Delay
  - >> HAL_GetTick
  - >> HAL_RCC_GetHCLKFreq
  - >> HAL_ETH_MspInit
  [Called By]
  - >> low_level_init

  HAL_ETH_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_eth.o(.text), UNUSED)
  [Called By]

  - >> HAL_ETH_DeInit

  HAL_ETH_DeInit (Thumb, 32 bytes, Stack size 8 bytes, stm32f4xx_hal_eth.o(.text), UNUSED)
  [Calls]

  - >> HAL_ETH_MspDeInit

  HAL_ETH_DMATxDescListInit (Thumb, 132 bytes, Stack size 16 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_ETH_DMATxDescListInit
  [Called By]
  - >> low_level_init

  HAL_ETH_DMARxDescListInit (Thumb, 140 bytes, Stack size 16 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_ETH_DMARxDescListInit
  [Called By]
  - >> low_level_init

  HAL_ETH_TransmitFrame (Thumb, 340 bytes, Stack size 16 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_ETH_TransmitFrame
  [Called By]
  - >> low_level_output

  HAL_ETH_GetReceivedFrame (Thumb, 178 bytes, Stack size 0 bytes, stm32f4xx_hal_eth.o(.text))
  [Called By]

  - >> low_level_input

  HAL_ETH_GetReceivedFrame_IT (Thumb, 186 bytes, Stack size 0 bytes, stm32f4xx_hal_eth.o(.text), UNUSED)

  HAL_ETH_ErrorCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_eth.o(.text), UNUSED)
  [Called By]

  - >> HAL_ETH_IRQHandler

  HAL_ETH_TxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_eth.o(.text), UNUSED)
  [Called By]

  - >> HAL_ETH_IRQHandler

  HAL_ETH_RxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_eth.o(.text), UNUSED)
  [Called By]

  - >> HAL_ETH_IRQHandler

  HAL_ETH_IRQHandler (Thumb, 164 bytes, Stack size 8 bytes, stm32f4xx_hal_eth.o(.text), UNUSED)
  [Calls]

  - >> HAL_ETH_RxCpltCallback
  - >> HAL_ETH_TxCpltCallback
  - >> HAL_ETH_ErrorCallback

  HAL_ETH_Start (Thumb, 82 bytes, Stack size 8 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = HAL_ETH_Start ⇒ ETH_MACTransmissionEnable ⇒ HAL_Delay
  [Calls]
  - >> ETH_MACTransmissionEnable
  - >> ETH_MACReceptionEnable
  - >> ETH_FlushTransmitFIFO
  - >> ETH_DMATransmissionEnable
  - >> ETH_DMAReceptionEnable
  [Called By]
  - >> ethernetif_update_config
  - >> low_level_init

  HAL_ETH_Stop (Thumb, 82 bytes, Stack size 8 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = HAL_ETH_Stop ⇒ ETH_MACReceptionDisable ⇒ HAL_Delay
  [Calls]
  - >> ETH_DMATransmissionDisable
  - >> ETH_DMAReceptionDisable
  - >> ETH_MACReceptionDisable
  - >> ETH_MACTransmissionDisable
  - >> ETH_FlushTransmitFIFO
  [Called By]
  - >> ethernetif_update_config

  HAL_ETH_ConfigMAC (Thumb, 314 bytes, Stack size 16 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = HAL_ETH_ConfigMAC ⇒ HAL_Delay
  [Calls]
  - >> HAL_Delay
  [Called By]
  - >> ethernetif_update_config

  HAL_ETH_ConfigDMA (Thumb, 196 bytes, Stack size 16 bytes, stm32f4xx_hal_eth.o(.text), UNUSED)
  [Calls]

  - >> HAL_Delay

  HAL_ETH_GetState (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_eth.o(.text), UNUSED)

  HAL_DMA_Init (Thumb, 128 bytes, Stack size 16 bytes, stm32f4xx_hal_dma.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_DMA_Init
  [Calls]
  - >> DMA_CalcBaseAndBitshift
  [Called By]
  - >> ADC_Config

  HAL_DMA_DeInit (Thumb, 100 bytes, Stack size 16 bytes, stm32f4xx_hal_dma.o(.text), UNUSED)
  [Calls]

  - >> DMA_CalcBaseAndBitshift

  HAL_DMA_Start (Thumb, 82 bytes, Stack size 24 bytes, stm32f4xx_hal_dma.o(.text), UNUSED)
  [Calls]

  - >> DMA_SetConfig

  HAL_DMA_Start_IT (Thumb, 106 bytes, Stack size 24 bytes, stm32f4xx_hal_dma.o(.text))
  [Stack]

  - Max Depth = 36
  - Call Chain = HAL_DMA_Start_IT ⇒ DMA_SetConfig
  [Calls]
  - >> DMA_SetConfig
  [Called By]
  - >> HAL_ADCEx_MultiModeStart_DMA
  - >> HAL_I2C_Mem_Read_DMA
  - >> HAL_I2C_Mem_Write_DMA
  - >> HAL_I2C_Slave_Receive_DMA
  - >> HAL_I2C_Slave_Transmit_DMA
  - >> HAL_I2C_Master_Receive_DMA
  - >> HAL_I2C_Master_Transmit_DMA
  - >> HAL_ADC_Start_DMA
  - >> HAL_SPI_Receive_DMA
  - >> HAL_SPI_TransmitReceive_DMA
  - >> HAL_SPI_Transmit_DMA
  - >> HAL_TIMEx_PWMN_Start_DMA
  - >> HAL_TIMEx_OCN_Start_DMA
  - >> HAL_TIMEx_HallSensor_Start_DMA
  - >> HAL_TIM_DMABurst_ReadStart
  - >> HAL_TIM_DMABurst_WriteStart
  - >> HAL_TIM_Encoder_Start_DMA
  - >> HAL_TIM_IC_Start_DMA
  - >> HAL_TIM_PWM_Start_DMA
  - >> HAL_TIM_OC_Start_DMA
  - >> HAL_TIM_Base_Start_DMA

  HAL_DMA_Abort (Thumb, 94 bytes, Stack size 16 bytes, stm32f4xx_hal_dma.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_DMA_Abort
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_ADCEx_MultiModeStop_DMA
  - >> HAL_ADC_Stop_DMA
  - >> HAL_SPI_DMAStop
  - >> HAL_TIM_DMABurst_ReadStop
  - >> HAL_TIM_DMABurst_WriteStop

  HAL_DMA_PollForTransfer (Thumb, 412 bytes, Stack size 40 bytes, stm32f4xx_hal_dma.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_DMA_IRQHandler (Thumb, 530 bytes, Stack size 16 bytes, stm32f4xx_hal_dma.o(.text), UNUSED)

  HAL_DMA_GetState (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_dma.o(.text), UNUSED)

  HAL_DMA_GetError (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_hal_dma.o(.text), UNUSED)

  HAL_IWDG_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_iwdg.o(.text))
  [Called By]

  - >> HAL_IWDG_Init

  HAL_IWDG_Init (Thumb, 76 bytes, Stack size 8 bytes, stm32f4xx_hal_iwdg.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_IWDG_Init
  [Calls]
  - >> HAL_IWDG_MspInit
  [Called By]
  - >> IWDG_Init

  HAL_IWDG_Start (Thumb, 56 bytes, Stack size 0 bytes, stm32f4xx_hal_iwdg.o(.text))
  [Called By]

  - >> IWDG_Init

  HAL_IWDG_Refresh (Thumb, 100 bytes, Stack size 16 bytes, stm32f4xx_hal_iwdg.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_IWDG_Refresh
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> TIMER_change

  HAL_IWDG_GetState (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_hal_iwdg.o(.text), UNUSED)

  RTC_EnterInitMode (Thumb, 62 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = RTC_EnterInitMode
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_RTCEx_DeactivateRefClock
  - >> HAL_RTCEx_SetRefClock
  - >> HAL_RTCEx_DeactivateCoarseCalib
  - >> HAL_RTCEx_SetCoarseCalib
  - >> HAL_RTC_SetDate
  - >> HAL_RTC_SetTime
  - >> HAL_RTC_DeInit
  - >> HAL_RTC_Init

  HAL_RTC_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc.o(.text))
  [Called By]

  - >> HAL_RTC_Init

  HAL_RTC_Init (Thumb, 176 bytes, Stack size 8 bytes, stm32f4xx_hal_rtc.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_RTC_Init ⇒ RTC_EnterInitMode
  [Calls]
  - >> HAL_RTC_MspInit
  - >> RTC_EnterInitMode
  [Called By]
  - >> RTC_Init

  HAL_RTC_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)
  [Called By]

  - >> HAL_RTC_DeInit

  HAL_RTC_WaitForSynchro (Thumb, 58 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_RTC_WaitForSynchro
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_RTCEx_SetSynchroShift
  - >> HAL_RTC_SetDate
  - >> HAL_RTC_SetTime
  - >> HAL_RTC_DeInit

  HAL_RTC_DeInit (Thumb, 254 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick
  - >> HAL_RTC_MspDeInit
  - >> HAL_RTC_WaitForSynchro
  - >> RTC_EnterInitMode

  RTC_Bcd2ToByte (Thumb, 22 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc.o(.text))
  [Called By]

  - >> HAL_RTCEx_GetTimeStamp
  - >> HAL_RTC_GetAlarm
  - >> HAL_RTC_SetAlarm_IT
  - >> HAL_RTC_SetAlarm
  - >> HAL_RTC_GetDate
  - >> HAL_RTC_SetDate
  - >> HAL_RTC_GetTime
  - >> HAL_RTC_SetTime

  RTC_ByteToBcd2 (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc.o(.text))
  [Called By]

  - >> HAL_RTC_SetAlarm_IT
  - >> HAL_RTC_SetAlarm
  - >> HAL_RTC_SetDate
  - >> HAL_RTC_SetTime

  HAL_RTC_SetTime (Thumb, 304 bytes, Stack size 24 bytes, stm32f4xx_hal_rtc.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = HAL_RTC_SetTime ⇒ HAL_RTC_WaitForSynchro
  [Calls]
  - >> RTC_ByteToBcd2
  - >> RTC_Bcd2ToByte
  - >> HAL_RTC_WaitForSynchro
  - >> RTC_EnterInitMode
  [Called By]
  - >> Save

  HAL_RTC_GetTime (Thumb, 92 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)
  [Calls]

  - >> RTC_Bcd2ToByte

  HAL_RTC_SetDate (Thumb, 284 bytes, Stack size 24 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)
  [Calls]

  - >> RTC_ByteToBcd2
  - >> RTC_Bcd2ToByte
  - >> HAL_RTC_WaitForSynchro
  - >> RTC_EnterInitMode

  HAL_RTC_GetDate (Thumb, 72 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)
  [Calls]

  - >> RTC_Bcd2ToByte

  HAL_RTC_SetAlarm (Thumb, 488 bytes, Stack size 32 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick
  - >> RTC_ByteToBcd2
  - >> RTC_Bcd2ToByte

  HAL_RTC_SetAlarm_IT (Thumb, 554 bytes, Stack size 32 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick
  - >> RTC_ByteToBcd2
  - >> RTC_Bcd2ToByte

  HAL_RTC_DeactivateAlarm (Thumb, 244 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_RTC_GetAlarm (Thumb, 154 bytes, Stack size 24 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)
  [Calls]

  - >> RTC_Bcd2ToByte

  HAL_RTC_AlarmAEventCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)
  [Called By]

  - >> HAL_RTC_AlarmIRQHandler

  HAL_RTC_AlarmIRQHandler (Thumb, 104 bytes, Stack size 8 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)
  [Calls]

  - >> HAL_RTC_AlarmAEventCallback
  - >> HAL_RTCEx_AlarmBEventCallback

  HAL_RTC_PollForAlarmAEvent (Thumb, 74 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_RTC_GetState (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc.o(.text), UNUSED)

  HAL_RTCEx_SetTimeStamp (Thumb, 122 bytes, Stack size 12 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_SetTimeStamp_IT (Thumb, 162 bytes, Stack size 12 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_DeactivateTimeStamp (Thumb, 96 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_GetTimeStamp (Thumb, 166 bytes, Stack size 32 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> RTC_Bcd2ToByte

  HAL_RTCEx_SetTamper (Thumb, 124 bytes, Stack size 8 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_SetTamper_IT (Thumb, 160 bytes, Stack size 8 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_DeactivateTamper (Thumb, 50 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_Tamper2EventCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Called By]

  - >> HAL_RTCEx_TamperTimeStampIRQHandler

  HAL_RTCEx_Tamper1EventCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Called By]

  - >> HAL_RTCEx_TamperTimeStampIRQHandler

  HAL_RTCEx_TimeStampEventCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Called By]

  - >> HAL_RTCEx_TamperTimeStampIRQHandler

  HAL_RTCEx_TamperTimeStampIRQHandler (Thumb, 146 bytes, Stack size 8 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_RTCEx_TimeStampEventCallback
  - >> HAL_RTCEx_Tamper1EventCallback
  - >> HAL_RTCEx_Tamper2EventCallback

  HAL_RTCEx_PollForTimeStampEvent (Thumb, 92 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_RTCEx_PollForTamper1Event (Thumb, 74 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_RTCEx_PollForTamper2Event (Thumb, 86 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_RTCEx_SetWakeUpTimer (Thumb, 254 bytes, Stack size 24 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_RTCEx_SetWakeUpTimer_IT (Thumb, 294 bytes, Stack size 24 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_RTCEx_DeactivateWakeUpTimer (Thumb, 152 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_RTCEx_GetWakeUpTimer (Thumb, 10 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_WakeUpTimerEventCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Called By]

  - >> HAL_RTCEx_WakeUpTimerIRQHandler

  HAL_RTCEx_WakeUpTimerIRQHandler (Thumb, 62 bytes, Stack size 8 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_RTCEx_WakeUpTimerEventCallback

  HAL_RTCEx_PollForWakeUpTimerEvent (Thumb, 74 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_RTCEx_BKUPWrite (Thumb, 18 bytes, Stack size 8 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_BKUPRead (Thumb, 18 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_SetCoarseCalib (Thumb, 138 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> RTC_EnterInitMode

  HAL_RTCEx_DeactivateCoarseCalib (Thumb, 126 bytes, Stack size 8 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> RTC_EnterInitMode

  HAL_RTCEx_SetSmoothCalib (Thumb, 162 bytes, Stack size 24 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  HAL_RTCEx_SetSynchroShift (Thumb, 230 bytes, Stack size 24 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick
  - >> HAL_RTC_WaitForSynchro

  HAL_RTCEx_SetCalibrationOutPut (Thumb, 100 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_DeactivateCalibrationOutPut (Thumb, 78 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_SetRefClock (Thumb, 126 bytes, Stack size 8 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> RTC_EnterInitMode

  HAL_RTCEx_DeactivateRefClock (Thumb, 126 bytes, Stack size 8 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> RTC_EnterInitMode

  HAL_RTCEx_EnableBypassShadow (Thumb, 78 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_DisableBypassShadow (Thumb, 78 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)

  HAL_RTCEx_AlarmBEventCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Called By]

  - >> HAL_RTC_AlarmIRQHandler

  HAL_RTCEx_PollForAlarmBEvent (Thumb, 74 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick

  TIM_Base_SetConfig (Thumb, 184 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text))
  [Called By]

  - >> HAL_TIMEx_HallSensor_Init
  - >> HAL_TIM_Encoder_Init
  - >> HAL_TIM_OnePulse_Init
  - >> HAL_TIM_IC_Init
  - >> HAL_TIM_PWM_Init
  - >> HAL_TIM_OC_Init
  - >> HAL_TIM_Base_Init

  HAL_TIM_Base_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text))
  [Called By]

  - >> HAL_TIM_Base_Init

  HAL_TIM_Base_Init (Thumb, 52 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_TIM_Base_Init
  [Calls]
  - >> HAL_TIM_Base_MspInit
  - >> TIM_Base_SetConfig
  [Called By]
  - >> RC5_WaitForNextFallingEdge
  - >> TIM_Config_l

  HAL_TIM_Base_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_Base_DeInit

  HAL_TIM_Base_DeInit (Thumb, 70 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_TIM_Base_MspDeInit

  HAL_TIM_Base_Start (Thumb, 30 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)

  HAL_TIM_Base_Stop (Thumb, 56 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)

  HAL_TIM_Base_Start_IT (Thumb, 30 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text))
  [Called By]

  - >> RC5_MeasureFirstLowDuration
  - >> EXTI3_IRQHandler
  - >> TIM_Config_l

  HAL_TIM_Base_Stop_IT (Thumb, 56 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text))
  [Called By]

  - >> RC5_Sample_Data
  - >> RC5_MeasureFirstLowDuration
  - >> TIM8_BRK_TIM12_IRQHandler
  - >> EXTI3_IRQHandler
  - >> GFX_NBK
  - >> GFX_Rect

  HAL_TIM_ErrorCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text))
  [Called By]

  - >> TIM_DMAError

  TIM_DMAError (Thumb, 20 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = TIM_DMAError
  [Calls]
  - >> HAL_TIM_ErrorCallback
  [Address Reference Count : 2]
  - stm32f4xx_hal_tim.o(.text)
  - stm32f4xx_hal_tim_ex.o(.text)

  HAL_TIM_PeriodElapsedCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text))
  [Called By]

  - >> HAL_TIM_IRQHandler
  - >> TIM_DMAPeriodElapsedCplt

  HAL_TIM_Base_Start_DMA (Thumb, 96 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT

  HAL_TIM_Base_Stop_DMA (Thumb, 62 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)

  HAL_TIM_OC_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_OC_Init

  HAL_TIM_OC_Init (Thumb, 52 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_TIM_OC_MspInit
  - >> TIM_Base_SetConfig

  HAL_TIM_OC_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_OC_DeInit

  HAL_TIM_OC_DeInit (Thumb, 70 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_TIM_OC_MspDeInit

  TIM_CCxChannelCmd (Thumb, 28 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = TIM_CCxChannelCmd
  [Called By]
  - >> HAL_TIMEx_HallSensor_Stop_DMA
  - >> HAL_TIMEx_HallSensor_Start_DMA
  - >> HAL_TIMEx_HallSensor_Stop_IT
  - >> HAL_TIMEx_HallSensor_Start_IT
  - >> HAL_TIMEx_HallSensor_Stop
  - >> HAL_TIMEx_HallSensor_Start
  - >> HAL_TIM_Encoder_Stop_DMA
  - >> HAL_TIM_Encoder_Start_DMA
  - >> HAL_TIM_Encoder_Stop_IT
  - >> HAL_TIM_Encoder_Start_IT
  - >> HAL_TIM_Encoder_Stop
  - >> HAL_TIM_Encoder_Start
  - >> HAL_TIM_OnePulse_Stop_IT
  - >> HAL_TIM_OnePulse_Start_IT
  - >> HAL_TIM_OnePulse_Stop
  - >> HAL_TIM_OnePulse_Start
  - >> HAL_TIM_IC_Stop_DMA
  - >> HAL_TIM_IC_Start_DMA
  - >> HAL_TIM_IC_Stop_IT
  - >> HAL_TIM_IC_Start_IT
  - >> HAL_TIM_IC_Stop
  - >> HAL_TIM_IC_Start
  - >> HAL_TIM_PWM_Stop_DMA
  - >> HAL_TIM_PWM_Start_DMA
  - >> HAL_TIM_PWM_Stop_IT
  - >> HAL_TIM_PWM_Start_IT
  - >> HAL_TIM_PWM_Stop
  - >> HAL_TIM_PWM_Start
  - >> HAL_TIM_OC_Stop_DMA
  - >> HAL_TIM_OC_Start_DMA
  - >> HAL_TIM_OC_Stop_IT
  - >> HAL_TIM_OC_Start_IT
  - >> HAL_TIM_OC_Stop
  - >> HAL_TIM_OC_Start

  HAL_TIM_OC_Start (Thumb, 68 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_OC_Stop (Thumb, 170 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_OC_Start_IT (Thumb, 144 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_OC_Stop_IT (Thumb, 196 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_PWM_PulseFinishedCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text))
  [Called By]

  - >> HAL_TIM_IRQHandler
  - >> TIM_DMADelayPulseCplt

  TIM_DMADelayPulseCplt (Thumb, 70 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = TIM_DMADelayPulseCplt
  [Calls]
  - >> HAL_TIM_PWM_PulseFinishedCallback
  [Address Reference Count : 2]
  - stm32f4xx_hal_tim.o(.text)
  - stm32f4xx_hal_tim_ex.o(.text)

  HAL_TIM_OC_Start_DMA (Thumb, 310 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT
  - >> TIM_CCxChannelCmd

  HAL_TIM_OC_Stop_DMA (Thumb, 202 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_PWM_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text))
  [Called By]

  - >> HAL_TIM_PWM_Init

  HAL_TIM_PWM_Init (Thumb, 52 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_TIM_PWM_Init
  [Calls]
  - >> HAL_TIM_PWM_MspInit
  - >> TIM_Base_SetConfig
  [Called By]
  - >> GFX_NBK
  - >> GFX_Rect
  - >> TIM_Config_l

  HAL_TIM_PWM_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text))
  [Called By]

  - >> HAL_TIM_PWM_DeInit

  HAL_TIM_PWM_DeInit (Thumb, 70 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_TIM_PWM_DeInit
  [Calls]
  - >> HAL_TIM_PWM_MspDeInit
  [Called By]
  - >> GFX_NBK
  - >> GFX_Rect

  HAL_TIM_PWM_Start (Thumb, 78 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_TIM_PWM_Start ⇒ TIM_CCxChannelCmd
  [Calls]
  - >> TIM_CCxChannelCmd
  [Called By]
  - >> GFX_NBK
  - >> GFX_Rect
  - >> TIM_Config_l

  HAL_TIM_PWM_Stop (Thumb, 126 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_TIM_PWM_Stop ⇒ TIM_CCxChannelCmd
  [Calls]
  - >> TIM_CCxChannelCmd
  [Called By]
  - >> GFX_NBK
  - >> GFX_Rect

  HAL_TIM_PWM_Start_IT (Thumb, 144 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_PWM_Stop_IT (Thumb, 196 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_PWM_Start_DMA (Thumb, 310 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT
  - >> TIM_CCxChannelCmd

  HAL_TIM_PWM_Stop_DMA (Thumb, 202 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_IC_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_IC_Init

  HAL_TIM_IC_Init (Thumb, 60 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_TIM_IC_MspInit
  - >> TIM_Base_SetConfig

  HAL_TIM_IC_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_IC_DeInit

  HAL_TIM_IC_DeInit (Thumb, 70 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_TIM_IC_MspDeInit

  HAL_TIM_IC_Start (Thumb, 32 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_IC_Stop (Thumb, 58 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_IC_Start_IT (Thumb, 108 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_IC_Stop_IT (Thumb, 134 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_IC_CaptureCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text))
  [Called By]

  - >> HAL_TIM_IRQHandler
  - >> TIM_DMACaptureCplt

  TIM_DMACaptureCplt (Thumb, 70 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = TIM_DMACaptureCplt
  [Calls]
  - >> HAL_TIM_IC_CaptureCallback
  [Address Reference Count : 2]
  - stm32f4xx_hal_tim.o(.text)
  - stm32f4xx_hal_tim_ex.o(.text)

  HAL_TIM_IC_Start_DMA (Thumb, 274 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT
  - >> TIM_CCxChannelCmd

  HAL_TIM_IC_Stop_DMA (Thumb, 140 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_OnePulse_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_OnePulse_Init

  HAL_TIM_OnePulse_Init (Thumb, 76 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_TIM_OnePulse_MspInit
  - >> TIM_Base_SetConfig

  HAL_TIM_OnePulse_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_OnePulse_DeInit

  HAL_TIM_OnePulse_DeInit (Thumb, 70 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_TIM_OnePulse_MspDeInit

  HAL_TIM_OnePulse_Start (Thumb, 66 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_OnePulse_Stop (Thumb, 130 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_OnePulse_Start_IT (Thumb, 90 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_OnePulse_Stop_IT (Thumb, 154 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_Encoder_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_Encoder_Init

  HAL_TIM_Encoder_Init (Thumb, 180 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_TIM_Encoder_MspInit
  - >> TIM_Base_SetConfig

  HAL_TIM_Encoder_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_Encoder_DeInit

  HAL_TIM_Encoder_DeInit (Thumb, 70 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_TIM_Encoder_MspDeInit

  HAL_TIM_Encoder_Start (Thumb, 78 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_Encoder_Stop (Thumb, 104 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_Encoder_Start_IT (Thumb, 126 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_Encoder_Stop_IT (Thumb, 162 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_Encoder_Start_DMA (Thumb, 328 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT
  - >> TIM_CCxChannelCmd

  HAL_TIM_Encoder_Stop_DMA (Thumb, 152 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIM_TriggerCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text))
  [Called By]

  - >> HAL_TIM_IRQHandler
  - >> TIM_DMATriggerCplt

  HAL_TIM_OC_DelayElapsedCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text))
  [Called By]

  - >> HAL_TIM_IRQHandler

  HAL_TIM_IRQHandler (Thumb, 406 bytes, Stack size 8 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_TIM_IRQHandler
  [Calls]
  - >> HAL_TIM_OC_DelayElapsedCallback
  - >> HAL_TIM_TriggerCallback
  - >> HAL_TIM_IC_CaptureCallback
  - >> HAL_TIM_PWM_PulseFinishedCallback
  - >> HAL_TIM_PeriodElapsedCallback
  - >> HAL_TIMEx_CommutationCallback
  - >> HAL_TIMEx_BreakCallback
  [Called By]
  - >> TIM8_BRK_TIM12_IRQHandler
  - >> TIM1_BRK_TIM9_IRQHandler
  - >> TIM6_DAC_IRQHandler

  TIM_OC2_SetConfig (Thumb, 112 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = TIM_OC2_SetConfig
  [Called By]
  - >> HAL_TIMEx_HallSensor_Init
  - >> HAL_TIM_OnePulse_ConfigChannel
  - >> HAL_TIM_PWM_ConfigChannel
  - >> HAL_TIM_OC_ConfigChannel

  HAL_TIM_OC_ConfigChannel (Thumb, 116 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_OC2_SetConfig
  - >> TIM_OC1_SetConfig
  - >> TIM_OC3_SetConfig
  - >> TIM_OC4_SetConfig

  TIM_TI1_SetConfig (Thumb, 122 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIMEx_HallSensor_Init
  - >> HAL_TIM_OnePulse_ConfigChannel
  - >> HAL_TIM_IC_ConfigChannel

  HAL_TIM_IC_ConfigChannel (Thumb, 224 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_TI1_SetConfig
  - >> TIM_TI2_SetConfig
  - >> TIM_TI3_SetConfig
  - >> TIM_TI4_SetConfig

  HAL_TIM_PWM_ConfigChannel (Thumb, 294 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 28
  - Call Chain = HAL_TIM_PWM_ConfigChannel ⇒ TIM_OC2_SetConfig
  [Calls]
  - >> TIM_OC2_SetConfig
  - >> TIM_OC1_SetConfig
  - >> TIM_OC3_SetConfig
  - >> TIM_OC4_SetConfig
  [Called By]
  - >> TIM_Config_l

  HAL_TIM_OnePulse_ConfigChannel (Thumb, 286 bytes, Stack size 48 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_TI1_SetConfig
  - >> TIM_OC2_SetConfig
  - >> TIM_TI2_SetConfig
  - >> TIM_OC1_SetConfig

  HAL_TIM_DMABurst_WriteStart (Thumb, 366 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT

  HAL_TIM_DMABurst_WriteStop (Thumb, 128 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Abort

  HAL_TIM_DMABurst_ReadStart (Thumb, 366 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT

  HAL_TIM_DMABurst_ReadStop (Thumb, 128 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Abort

  HAL_TIM_GenerateEvent (Thumb, 54 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)

  HAL_TIM_ConfigOCrefClear (Thumb, 252 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_ETR_SetConfig

  HAL_TIM_ConfigClockSource (Thumb, 306 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_TI2_ConfigInputStage
  - >> TIM_TI1_ConfigInputStage
  - >> TIM_ITRx_SetConfig
  - >> TIM_ETR_SetConfig

  HAL_TIM_ConfigTI1Input (Thumb, 24 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)

  HAL_TIM_SlaveConfigSynchronization (Thumb, 86 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_SlaveTimer_SetConfig

  HAL_TIM_SlaveConfigSynchronization_IT (Thumb, 86 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_SlaveTimer_SetConfig

  HAL_TIM_ReadCapturedValue (Thumb, 84 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)

  HAL_TIM_Base_GetState (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)

  HAL_TIM_OC_GetState (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)

  HAL_TIM_PWM_GetState (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)

  HAL_TIM_IC_GetState (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)

  HAL_TIM_OnePulse_GetState (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)

  HAL_TIM_Encoder_GetState (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)

  HAL_TIMEx_HallSensor_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIMEx_HallSensor_Init

  HAL_TIMEx_HallSensor_Init (Thumb, 196 bytes, Stack size 40 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_TIMEx_HallSensor_MspInit
  - >> TIM_TI1_SetConfig
  - >> TIM_OC2_SetConfig
  - >> TIM_Base_SetConfig

  HAL_TIMEx_HallSensor_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIMEx_HallSensor_DeInit

  HAL_TIMEx_HallSensor_DeInit (Thumb, 70 bytes, Stack size 8 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_TIMEx_HallSensor_MspDeInit

  HAL_TIMEx_HallSensor_Start (Thumb, 30 bytes, Stack size 8 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIMEx_HallSensor_Stop (Thumb, 56 bytes, Stack size 8 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIMEx_HallSensor_Start_IT (Thumb, 42 bytes, Stack size 8 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIMEx_HallSensor_Stop_IT (Thumb, 68 bytes, Stack size 8 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIMEx_HallSensor_Start_DMA (Thumb, 104 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT
  - >> TIM_CCxChannelCmd

  HAL_TIMEx_HallSensor_Stop_DMA (Thumb, 68 bytes, Stack size 8 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxChannelCmd

  HAL_TIMEx_OCN_Start (Thumb, 44 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_OCN_Stop (Thumb, 96 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_OCN_Start_IT (Thumb, 132 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_OCN_Stop_IT (Thumb, 196 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_OCN_Start_DMA (Thumb, 270 bytes, Stack size 24 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT
  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_OCN_Stop_DMA (Thumb, 192 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_PWMN_Start (Thumb, 44 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_PWMN_Stop (Thumb, 96 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_PWMN_Start_IT (Thumb, 132 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_PWMN_Stop_IT (Thumb, 196 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_PWMN_Start_DMA (Thumb, 270 bytes, Stack size 24 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT
  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_PWMN_Stop_DMA (Thumb, 178 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_OnePulseN_Start (Thumb, 32 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_OnePulseN_Stop (Thumb, 96 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_OnePulseN_Start_IT (Thumb, 56 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_OnePulseN_Stop_IT (Thumb, 120 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Calls]

  - >> TIM_CCxNChannelCmd

  HAL_TIMEx_ConfigCommutationEvent (Thumb, 110 bytes, Stack size 8 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)

  HAL_TIMEx_ConfigCommutationEvent_IT (Thumb, 122 bytes, Stack size 8 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)

  HAL_TIMEx_CommutationCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim_ex.o(.text))
  [Called By]

  - >> TIMEx_DMACommutationCplt
  - >> HAL_TIM_IRQHandler

  TIMEx_DMACommutationCplt (Thumb, 20 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = TIMEx_DMACommutationCplt
  [Calls]
  - >> HAL_TIMEx_CommutationCallback
  [Address Reference Count : 2]
  - stm32f4xx_hal_tim.o(.text)
  - stm32f4xx_hal_tim_ex.o(.text)

  HAL_TIMEx_ConfigCommutationEvent_DMA (Thumb, 146 bytes, Stack size 8 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)

  HAL_TIMEx_MasterConfigSynchronization (Thumb, 98 bytes, Stack size 0 bytes, stm32f4xx_hal_tim_ex.o(.text))
  [Called By]

  - >> TIM_Config_l

  HAL_TIMEx_ConfigBreakDeadTime (Thumb, 80 bytes, Stack size 0 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)

  HAL_TIMEx_RemapConfig (Thumb, 48 bytes, Stack size 0 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)

  HAL_TIMEx_BreakCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_tim_ex.o(.text))
  [Called By]

  - >> HAL_TIM_IRQHandler

  HAL_TIMEx_HallSensor_GetState (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)

  HAL_SPI_MspInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text))
  [Called By]

  - >> HAL_SPI_Init

  HAL_SPI_Init (Thumb, 140 bytes, Stack size 8 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_SPI_Init
  [Calls]
  - >> HAL_SPI_MspInit
  [Called By]
  - >> TM_SPI_SetDataSize
  - >> SPI_Init

  HAL_SPI_MspDeInit (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)
  [Called By]

  - >> HAL_SPI_DeInit

  HAL_SPI_DeInit (Thumb, 54 bytes, Stack size 8 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)
  [Calls]

  - >> HAL_SPI_MspDeInit

  HAL_SPI_Transmit (Thumb, 348 bytes, Stack size 32 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 80
  - Call Chain = HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GetTick
  - >> SPI_CheckFlag_BSY
  [Called By]
  - >> TM_ILI9341_SendData
  - >> TM_ILI9341_SendCommand
  - >> TM_ILI9341_SendData16

  HAL_SPI_TransmitReceive (Thumb, 404 bytes, Stack size 32 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick
  - >> SPI_CheckFlag_BSY
  [Called By]
  - >> HAL_SPI_Receive

  HAL_SPI_Receive (Thumb, 368 bytes, Stack size 32 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)
  [Calls]

  - >> HAL_GetTick
  - >> HAL_SPI_TransmitReceive
  - >> SPI_CheckForDisablingSPI
  - >> SPI_CheckFlag_BSY
  [Called By]
  - >> TM_ILI9341_GetPixel

  HAL_SPI_TxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text))
  [Called By]

  - >> SPI_DMATransmitCplt
  - >> SPI_CloseTx_ISR

  HAL_SPI_ErrorCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text))
  [Called By]

  - >> HAL_SPI_IRQHandler
  - >> SPI_DMATransmitReceiveCplt
  - >> SPI_DMAReceiveCplt
  - >> SPI_DMATransmitCplt
  - >> SPI_DMAError
  - >> SPI_CloseRxTx_ISR
  - >> SPI_CloseRx_ISR
  - >> SPI_CloseTx_ISR

  HAL_SPI_Transmit_IT (Thumb, 176 bytes, Stack size 12 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)

  HAL_SPI_RxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text))
  [Called By]

  - >> SPI_DMAReceiveCplt
  - >> SPI_CloseRxTx_ISR
  - >> SPI_CloseRx_ISR

  HAL_SPI_TxRxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text))
  [Called By]

  - >> SPI_DMATransmitReceiveCplt
  - >> SPI_CloseRxTx_ISR

  HAL_SPI_TransmitReceive_IT (Thumb, 174 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)
  [Called By]

  - >> HAL_SPI_Receive_IT

  HAL_SPI_Receive_IT (Thumb, 194 bytes, Stack size 20 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)
  [Calls]

  - >> HAL_SPI_TransmitReceive_IT

  HAL_SPI_TxHalfCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text))
  [Called By]

  - >> SPI_DMAHalfTransmitCplt

  HAL_SPI_Transmit_DMA (Thumb, 190 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT

  HAL_SPI_RxHalfCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text))
  [Called By]

  - >> SPI_DMAHalfReceiveCplt

  HAL_SPI_TxRxHalfCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text))
  [Called By]

  - >> SPI_DMAHalfTransmitReceiveCplt

  HAL_SPI_TransmitReceive_DMA (Thumb, 276 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT
  [Called By]
  - >> HAL_SPI_Receive_DMA

  HAL_SPI_Receive_DMA (Thumb, 220 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Start_IT
  - >> HAL_SPI_TransmitReceive_DMA

  HAL_SPI_DMAPause (Thumb, 50 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)

  HAL_SPI_DMAResume (Thumb, 50 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)

  HAL_SPI_DMAStop (Thumb, 46 bytes, Stack size 8 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)
  [Calls]

  - >> HAL_DMA_Abort

  HAL_SPI_IRQHandler (Thumb, 252 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)
  [Calls]

  - >> HAL_SPI_ErrorCallback

  HAL_SPI_GetState (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text))
  [Called By]

  - >> SPI_Init

  HAL_SPI_GetError (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text), UNUSED)

  Reset_Handler (Thumb, 8 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  SVC_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Calls]

  - >> SVC_Handler
  [Called By]
  - >> SVC_Handler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  PendSV_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Calls]

  - >> PendSV_Handler
  [Called By]
  - >> PendSV_Handler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  ADC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Calls]

  - >> ADC_IRQHandler
  [Called By]
  - >> ADC_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  CAN1_RX0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  CAN1_RX1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  CAN1_SCE_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  CAN1_TX_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  CAN2_RX0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  CAN2_RX1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  CAN2_SCE_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  CAN2_TX_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DCMI_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA1_Stream0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA1_Stream1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA1_Stream2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA1_Stream3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA1_Stream4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA1_Stream5_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA1_Stream6_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA1_Stream7_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA2_Stream0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA2_Stream1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA2_Stream2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA2_Stream3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA2_Stream4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA2_Stream5_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA2_Stream6_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DMA2_Stream7_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  ETH_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  ETH_WKUP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  EXTI15_10_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  EXTI1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  EXTI2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  EXTI4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  FLASH_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  FMC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  FPU_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  HASH_RNG_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  I2C1_ER_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  I2C1_EV_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  I2C2_ER_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  I2C2_EV_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  I2C3_ER_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  I2C3_EV_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  OTG_FS_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  OTG_FS_WKUP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  OTG_HS_EP1_IN_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  OTG_HS_EP1_OUT_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  OTG_HS_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  OTG_HS_WKUP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  PVD_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  RCC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  RTC_Alarm_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  RTC_WKUP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  SDIO_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  SPI1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  SPI2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  SPI3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  TAMP_STAMP_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  TIM1_CC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  TIM1_TRG_COM_TIM11_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  TIM1_UP_TIM10_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  TIM2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  TIM3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  TIM4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  TIM5_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  TIM8_CC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  TIM8_TRG_COM_TIM14_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  TIM8_UP_TIM13_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  UART4_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  UART5_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  USART1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  USART2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  USART3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  USART6_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  WWDG_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  HAL_ADC_MspInit (Thumb, 98 bytes, Stack size 32 bytes, stm32f4xx_hal_msp.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = HAL_ADC_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_GPIO_Init
  [Called By]
  - >> HAL_ADC_Init

  HAL_ETH_MspInit (Thumb, 2 bytes, Stack size 0 bytes, ethernetif.o(.text))
  [Called By]

  - >> HAL_ETH_Init

  ethernetif_input (Thumb, 44 bytes, Stack size 16 bytes, ethernetif.o(.text))
  [Stack]

  - Max Depth = 156
  - Call Chain = ethernetif_input ⇒ low_level_input ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_free
  - >> low_level_input
  [Called By]
  - >> main2

  ethernetif_init (Thumb, 38 bytes, Stack size 8 bytes, ethernetif.o(.text))
  [Stack]

  - Max Depth = 280
  - Call Chain = ethernetif_init ⇒ low_level_init ⇒ HAL_ETH_Init ⇒ ETH_MACDMAConfig ⇒ HAL_Delay
  [Calls]
  - >> low_level_init
  [Address Reference Count : 1]
  - main.o(.text)

  sys_now (Thumb, 8 bytes, Stack size 8 bytes, ethernetif.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = sys_now
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> sys_restart_timeouts
  - >> sys_check_timeouts
  - >> sys_timeouts_init

  ethernetif_set_link (Thumb, 60 bytes, Stack size 16 bytes, ethernetif.o(.text))
  [Stack]

  - Max Depth = 372
  - Call Chain = ethernetif_set_link ⇒ netif_set_link_up ⇒ dhcp_network_changed ⇒ dhcp_reboot ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> netif_set_link_down
  - >> netif_set_link_up
  - >> HAL_ETH_ReadPHYRegister
  [Called By]
  - >> EXTI9_5_IRQHandler

  ethernetif_update_config (Thumb, 252 bytes, Stack size 16 bytes, ethernetif.o(.text))
  [Stack]

  - Max Depth = 508
  - Call Chain = ethernetif_update_config ⇒ ethernetif_notify_conn_changed ⇒ netif_set_addr ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> HAL_ETH_ReadPHYRegister
  - >> HAL_ETH_WritePHYRegister
  - >> HAL_GetTick
  - >> HAL_ETH_ConfigMAC
  - >> HAL_ETH_Stop
  - >> HAL_ETH_Start
  - >> ethernetif_notify_conn_changed
  [Address Reference Count : 1]
  - main.o(.text)

  Init (Thumb, 40 bytes, Stack size 8 bytes, main.o(.text))
  [Stack]

  - Max Depth = 540
  - Call Chain = Init ⇒ Netif_Config ⇒ netif_add ⇒ netif_set_addr ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> lwip_init
  - >> HAL_Delay
  - >> httpd_init
  - >> User_notification
  - >> Telnet_init
  - >> Init_Config
  - >> IWDG_Init
  - >> Netif_Config
  [Called By]
  - >> main

  main (Thumb, 22 bytes, Stack size 8 bytes, main.o(.text))
  [Stack]

  - Max Depth = 548
  - Call Chain = main ⇒ Init ⇒ Netif_Config ⇒ netif_add ⇒ netif_set_addr ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> HAL_Init
  - >> main2
  - >> Init
  - >> SystemClock_Config
  [Address Reference Count : 1]
  - entry9a.o(.ARM.Collect$$$$0000000B)

  TIM1_BRK_TIM9_IRQHandler (Thumb, 166 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = TIM1_BRK_TIM9_IRQHandler ⇒ HAL_ADCEx_InjectedGetValue
  [Calls]
  - >> HAL_ADCEx_InjectedGetValue
  - >> HAL_TIM_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  TIM7_IRQHandler (Thumb, 8 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = TIM7_IRQHandler ⇒ RC5_Sample_Data
  [Calls]
  - >> RC5_Sample_Data
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  EXTI0_IRQHandler (Thumb, 14 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = EXTI0_IRQHandler ⇒ RC5_MeasureFirstLowDuration ⇒ HAL_GPIO_EXTI_IRQHandler
  [Calls]
  - >> HAL_GPIO_EXTI_IRQHandler
  - >> RC5_MeasureFirstLowDuration
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  EXTI3_IRQHandler (Thumb, 544 bytes, Stack size 48 bytes, stm32f4xx_it.o(.text))
  [Stack]

  - Max Depth = 120
  - Call Chain = EXTI3_IRQHandler ⇒ __hardfp_sqrt ⇒ _dsqrt ⇒ _double_round
  [Calls]
  - >> HAL_GPIO_EXTI_IRQHandler
  - >> HAL_GPIO_WritePin
  - >> HAL_ADC_Stop_DMA
  - >> HAL_ADC_Start_DMA
  - >> __aeabi_ul2d
  - >> __aeabi_d2uiz
  - >> HAL_TIM_Base_Stop_IT
  - >> HAL_TIM_Base_Start_IT
  - >> __aeabi_uldivmod
  - >> __hardfp_sqrt
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  TIM8_BRK_TIM12_IRQHandler (Thumb, 98 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = TIM8_BRK_TIM12_IRQHandler ⇒ HAL_TIM_IRQHandler
  [Calls]
  - >> HAL_GPIO_WritePin
  - >> HAL_TIM_IRQHandler
  - >> HAL_TIM_Base_Stop_IT
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  EXTI9_5_IRQHandler (Thumb, 44 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text))
  [Stack]

  - Max Depth = 380
  - Call Chain = EXTI9_5_IRQHandler ⇒ ethernetif_set_link ⇒ netif_set_link_up ⇒ dhcp_network_changed ⇒ dhcp_reboot ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> HAL_GPIO_EXTI_IRQHandler
  - >> ethernetif_set_link
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  NMI_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  HardFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  MemManage_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  BusFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  UsageFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  DebugMon_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  SysTick_Handler (Thumb, 8 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = SysTick_Handler
  [Calls]
  - >> HAL_IncTick
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  User_notification (Thumb, 2 bytes, Stack size 0 bytes, app_ethernet.o(.text))
  [Called By]

  - >> Init

  ethernetif_notify_conn_changed (Thumb, 56 bytes, Stack size 24 bytes, app_ethernet.o(.text))
  [Stack]

  - Max Depth = 492
  - Call Chain = ethernetif_notify_conn_changed ⇒ netif_set_addr ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> netif_set_addr
  - >> netif_set_up
  - >> netif_set_down
  [Called By]
  - >> ethernetif_update_config

  RC5_CGI_Handler (Thumb, 8 bytes, Stack size 8 bytes, httpd_cgi_ssi.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = RC5_CGI_Handler
  [Address Reference Count : 1]
  - httpd_cgi_ssi.o(.constdata)

  httpd_ssi_init (Thumb, 2 bytes, Stack size 0 bytes, httpd_cgi_ssi.o(.text))
  [Called By]

  - >> httpd_init

  httpd_cgi_init (Thumb, 20 bytes, Stack size 8 bytes, httpd_cgi_ssi.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = httpd_cgi_init
  [Calls]
  - >> http_set_cgi_handlers
  [Called By]
  - >> httpd_init

  httpd_post_finished (Thumb, 36 bytes, Stack size 16 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = httpd_post_finished
  [Calls]
  - >> strcpy
  [Called By]
  - >> http_handle_post_finished
  - >> http_close_conn

  httpd_post_receive_data (Thumb, 30 bytes, Stack size 24 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 264
  - Call Chain = httpd_post_receive_data ⇒ RC5_CGI ⇒ BSP_EEPROM_WriteBuffer ⇒ EEPROM_WritePage ⇒ EEPROM_IO_WriteData ⇒ I2Cx_WriteMultiple ⇒ HAL_I2C_Mem_Write ⇒ I2C_RequestMemoryWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> pbuf_free
  - >> RC5_CGI
  [Called By]
  - >> http_post_rxpbuf

  httpd_post_begin (Thumb, 30 bytes, Stack size 24 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = httpd_post_begin
  [Called By]
  - >> http_post_request

  HTTP_Send_String (Thumb, 32 bytes, Stack size 16 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 484
  - Call Chain = HTTP_Send_String ⇒ http_send_data ⇒ http_close_conn ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> http_send_data
  [Called By]
  - >> Send_LED

  Send_LED (Thumb, 340 bytes, Stack size 240 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 724
  - Call Chain = Send_LED ⇒ HTTP_Send_String ⇒ http_send_data ⇒ http_close_conn ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> PrintToLCD
  - >> HTTP_Send_String
  - >> __2sprintf
  [Called By]
  - >> http_recv

  httpd_init (Thumb, 22 bytes, Stack size 8 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 492
  - Call Chain = httpd_init ⇒ httpd_init_addr ⇒ tcp_new ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> httpd_init_addr
  - >> httpd_cgi_init
  - >> httpd_ssi_init
  [Called By]
  - >> Init

  http_set_ssi_handler (Thumb, 30 bytes, Stack size 0 bytes, httpd.o(.text), UNUSED)

  http_set_cgi_handlers (Thumb, 18 bytes, Stack size 0 bytes, httpd.o(.text))
  [Called By]

  - >> httpd_cgi_init

  fs_open (Thumb, 70 bytes, Stack size 16 bytes, fs.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = fs_open ⇒ fs_free
  [Calls]
  - >> fs_free
  - >> fs_malloc
  - >> strcmp
  [Called By]
  - >> http_find_file
  - >> http_get_404_file

  fs_close (Thumb, 12 bytes, Stack size 8 bytes, fs.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = fs_close ⇒ fs_free
  [Calls]
  - >> fs_free
  [Called By]
  - >> http_state_free

  fs_read (Thumb, 62 bytes, Stack size 24 bytes, fs.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = fs_read
  [Calls]
  - >> __aeabi_memcpy
  [Called By]
  - >> http_send_data

  fs_bytes_left (Thumb, 10 bytes, Stack size 0 bytes, fs.o(.text))
  [Called By]

  - >> http_send_data

  EEPROM_IO_Init (Thumb, 8 bytes, Stack size 8 bytes, stm324xg_eval.o(.text), UNUSED)
  [Calls]

  - >> I2Cx_Init
  [Called By]
  - >> BSP_EEPROM_Init

  EEPROM_IO_WriteData (Thumb, 28 bytes, Stack size 24 bytes, stm324xg_eval.o(.text))
  [Stack]

  - Max Depth = 160
  - Call Chain = EEPROM_IO_WriteData ⇒ I2Cx_WriteMultiple ⇒ HAL_I2C_Mem_Write ⇒ I2C_RequestMemoryWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> I2Cx_WriteMultiple
  [Called By]
  - >> EEPROM_WritePage

  EEPROM_IO_ReadData (Thumb, 28 bytes, Stack size 24 bytes, stm324xg_eval.o(.text))
  [Stack]

  - Max Depth = 160
  - Call Chain = EEPROM_IO_ReadData ⇒ I2Cx_ReadMultiple ⇒ HAL_I2C_Mem_Read ⇒ I2C_RequestMemoryRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> I2Cx_ReadMultiple
  [Called By]
  - >> BSP_EEPROM_ReadBuffer

  EEPROM_IO_IsDeviceReady (Thumb, 16 bytes, Stack size 16 bytes, stm324xg_eval.o(.text))
  [Stack]

  - Max Depth = 104
  - Call Chain = EEPROM_IO_IsDeviceReady ⇒ I2Cx_IsDeviceReady ⇒ HAL_I2C_IsDeviceReady ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> I2Cx_IsDeviceReady
  [Called By]
  - >> BSP_EEPROM_Init
  - >> EEPROM_WaitEepromStandbyState

  BSP_EEPROM_Init (Thumb, 26 bytes, Stack size 8 bytes, stm324xg_eval_eeprom.o(.text), UNUSED)
  [Calls]

  - >> EEPROM_IO_IsDeviceReady
  - >> EEPROM_IO_Init

  BSP_EEPROM_TIMEOUT_UserCallback (Thumb, 2 bytes, Stack size 0 bytes, stm324xg_eval_eeprom.o(.text))
  [Called By]

  - >> BSP_EEPROM_ReadBuffer
  - >> EEPROM_WritePage
  - >> EEPROM_WaitEepromStandbyState

  BSP_EEPROM_ReadBuffer (Thumb, 34 bytes, Stack size 16 bytes, stm324xg_eval_eeprom.o(.text))
  [Stack]

  - Max Depth = 176
  - Call Chain = BSP_EEPROM_ReadBuffer ⇒ EEPROM_IO_ReadData ⇒ I2Cx_ReadMultiple ⇒ HAL_I2C_Mem_Read ⇒ I2C_RequestMemoryRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> BSP_EEPROM_TIMEOUT_UserCallback
  - >> EEPROM_IO_ReadData
  [Called By]
  - >> Load

  BSP_EEPROM_WriteBuffer (Thumb, 420 bytes, Stack size 40 bytes, stm324xg_eval_eeprom.o(.text))
  [Stack]

  - Max Depth = 224
  - Call Chain = BSP_EEPROM_WriteBuffer ⇒ EEPROM_WritePage ⇒ EEPROM_IO_WriteData ⇒ I2Cx_WriteMultiple ⇒ HAL_I2C_Mem_Write ⇒ I2C_RequestMemoryWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> EEPROM_WritePage
  [Called By]
  - >> Save
  - >> RC5_CGI

  I2C_Config (Thumb, 64 bytes, Stack size 8 bytes, init_l.o(.text))
  [Stack]

  - Max Depth = 224
  - Call Chain = I2C_Config ⇒ OW_Search ⇒ OW_SearchRom ⇒ OW_WriteBit ⇒ OW_TouchBit ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_GetState
  - >> HAL_I2C_Init
  - >> OW_Search
  - >> ConvertTemperature_ds18b20
  [Called By]
  - >> Init_Config

  Init_Config (Thumb, 46 bytes, Stack size 8 bytes, init_l.o(.text))
  [Stack]

  - Max Depth = 240
  - Call Chain = Init_Config ⇒ TM_ILI9341_Init ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_Delay
  - >> TM_ILI9341_Init
  - >> RC5_Receiver_Init
  - >> I2C_Config
  - >> RCC_Config_l
  - >> MX_GPIO_Init_l
  - >> TIM_Config_l
  - >> ADC_Config
  - >> NVIC_Config
  - >> RTC_Init
  [Called By]
  - >> Init

  IWDG_Init (Thumb, 32 bytes, Stack size 8 bytes, init_l.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = IWDG_Init ⇒ HAL_IWDG_Init
  [Calls]
  - >> HAL_IWDG_Start
  - >> HAL_IWDG_Init
  [Called By]
  - >> Init

  SPI_Init (Thumb, 70 bytes, Stack size 8 bytes, init_l.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = SPI_Init ⇒ HAL_SPI_Init
  [Calls]
  - >> HAL_SPI_GetState
  - >> HAL_SPI_Init
  [Called By]
  - >> TM_ILI9341_InitLCD__
  - >> TM_ILI9341_InitLCD

  Parse_Time (Thumb, 58 bytes, Stack size 16 bytes, lab.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = Parse_Time
  [Called By]
  - >> Update_Time

  Update_Time (Thumb, 80 bytes, Stack size 12 bytes, lab.o(.text))
  [Stack]

  - Max Depth = 28
  - Call Chain = Update_Time ⇒ Parse_Time
  [Calls]
  - >> Parse_Time
  [Called By]
  - >> Get_Buffer_Telnet
  - >> general_process
  - >> PrintToLCD

  Get_Var (Thumb, 60 bytes, Stack size 0 bytes, lab.o(.text))
  [Called By]

  - >> PrintToLCD

  Get_uint32 (Thumb, 56 bytes, Stack size 0 bytes, lab.o(.text))
  [Called By]

  - >> PrintToLCD

  Interpolation (Thumb, 90 bytes, Stack size 40 bytes, lab.o(.text))
  [Stack]

  - Max Depth = 104
  - Call Chain = Interpolation ⇒ __aeabi_ldivmod ⇒ __aeabi_uldivmod
  [Calls]
  - >> __aeabi_ldivmod
  [Called By]
  - >> Get_Alcohol
  - >> Get_Alcohol_Par
  - >> rectification_process

  GFX_Rect (Thumb, 442 bytes, Stack size 24 bytes, lab.o(.text))
  [Stack]

  - Max Depth = 336
  - Call Chain = GFX_Rect ⇒ PrintToLCD ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_TIM_PWM_Stop
  - >> HAL_TIM_PWM_Start
  - >> HAL_TIM_PWM_DeInit
  - >> HAL_TIM_PWM_Init
  - >> HAL_TIM_Base_Stop_IT
  - >> TM_SPI_SetDataSize
  - >> TM_ILI9341_SetSquare
  - >> TM_ILI9341_SendData16
  - >> TM_ILI9341_INT_Fill
  - >> TM_ILI9341_Fill
  - >> TM_ILI9341_DrawRectangle
  - >> TM_ILI9341_DrawLine
  - >> GG_ILI9341_PutImage
  - >> PrintToLCD
  [Called By]
  - >> change_mode

  GFX_NBK (Thumb, 398 bytes, Stack size 16 bytes, lab.o(.text))
  [Stack]

  - Max Depth = 328
  - Call Chain = GFX_NBK ⇒ PrintToLCD ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_TIM_PWM_Stop
  - >> HAL_TIM_PWM_Start
  - >> HAL_TIM_PWM_DeInit
  - >> HAL_TIM_PWM_Init
  - >> HAL_TIM_Base_Stop_IT
  - >> TM_ILI9341_INT_Fill
  - >> TM_ILI9341_Fill
  - >> TM_ILI9341_DrawRectangle
  - >> GG_ILI9341_PutImage
  - >> PrintToLCD
  [Called By]
  - >> change_mode

  RGB565ToRGB888 (Thumb, 46 bytes, Stack size 32 bytes, lab.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = RGB565ToRGB888 ⇒ __2sprintf
  [Calls]
  - >> __2sprintf
  [Called By]
  - >> PrintToLCD

  ds2482_reset (Thumb, 72 bytes, Stack size 24 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 104
  - Call Chain = ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_Master_Receive
  - >> HAL_I2C_Master_Transmit
  [Called By]
  - >> OW_TouchBit
  - >> OW_WriteByte
  - >> OW_Reset
  - >> ds2482_detect
  - >> ds2482_write_config

  ds2482_write_config (Thumb, 84 bytes, Stack size 32 bytes, onewire.o(.text), UNUSED)
  [Calls]

  - >> HAL_I2C_Master_Receive
  - >> HAL_I2C_Master_Transmit
  - >> ds2482_reset
  [Called By]
  - >> ds2482_detect

  ds2482_detect (Thumb, 30 bytes, Stack size 8 bytes, onewire.o(.text), UNUSED)
  [Calls]

  - >> ds2482_write_config
  - >> ds2482_reset

  OW_Reset (Thumb, 122 bytes, Stack size 32 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 136
  - Call Chain = OW_Reset ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_Master_Receive
  - >> HAL_I2C_Master_Transmit
  - >> ds2482_reset
  [Called By]
  - >> OW_SearchRom
  - >> OW_InternCommand
  - >> ConvertTemperature_ds18b20

  OW_WriteByte (Thumb, 110 bytes, Stack size 32 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 136
  - Call Chain = OW_WriteByte ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_Master_Receive
  - >> HAL_I2C_Master_Transmit
  - >> ds2482_reset
  [Called By]
  - >> OW_SearchRom
  - >> OW_InternCommand
  - >> ConvertTemperature_ds18b20

  OW_TouchBit (Thumb, 138 bytes, Stack size 32 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 136
  - Call Chain = OW_TouchBit ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_Master_Receive
  - >> HAL_I2C_Master_Transmit
  - >> ds2482_reset
  [Called By]
  - >> OW_ReadBit
  - >> OW_WriteBit

  OW_ReadByte (Thumb, 138 bytes, Stack size 32 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 112
  - Call Chain = OW_ReadByte ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_Master_Receive
  - >> HAL_I2C_Master_Transmit
  [Called By]
  - >> Read_ds18b20

  OW_WriteBit (Thumb, 16 bytes, Stack size 16 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 152
  - Call Chain = OW_WriteBit ⇒ OW_TouchBit ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> OW_TouchBit
  [Called By]
  - >> OW_SearchRom

  OW_ReadBit (Thumb, 14 bytes, Stack size 8 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 144
  - Call Chain = OW_ReadBit ⇒ OW_TouchBit ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> OW_TouchBit
  [Called By]
  - >> OW_SearchRom

  OW_SearchRom (Thumb, 140 bytes, Stack size 32 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 184
  - Call Chain = OW_SearchRom ⇒ OW_WriteBit ⇒ OW_TouchBit ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> OW_ReadBit
  - >> OW_WriteBit
  - >> OW_WriteByte
  - >> OW_Reset
  [Called By]
  - >> OW_Search

  OW_Search (Thumb, 96 bytes, Stack size 32 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 216
  - Call Chain = OW_Search ⇒ OW_SearchRom ⇒ OW_WriteBit ⇒ OW_TouchBit ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> OW_SearchRom
  [Called By]
  - >> I2C_Config

  OW_Command (Thumb, 28 bytes, Stack size 24 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 184
  - Call Chain = OW_Command ⇒ OW_InternCommand ⇒ OW_WriteByte ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> OW_InternCommand
  [Called By]
  - >> Read_ds18b20

  OW_Checksum (Thumb, 82 bytes, Stack size 20 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = OW_Checksum
  [Called By]
  - >> Read_ds18b20

  Read_ds18b20 (Thumb, 144 bytes, Stack size 40 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 224
  - Call Chain = Read_ds18b20 ⇒ OW_Command ⇒ OW_InternCommand ⇒ OW_WriteByte ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> OW_Checksum
  - >> OW_Command
  - >> OW_ReadByte
  [Called By]
  - >> ReadTemperature

  ConvertTemperature_ds18b20 (Thumb, 30 bytes, Stack size 8 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 144
  - Call Chain = ConvertTemperature_ds18b20 ⇒ OW_WriteByte ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> OW_WriteByte
  - >> OW_Reset
  [Called By]
  - >> TIMER_change
  - >> ReadTemperature
  - >> I2C_Config

  crc8 (Thumb, 62 bytes, Stack size 20 bytes, onewire.o(.text), UNUSED)

  OW_CRC_Byte (Thumb, 32 bytes, Stack size 0 bytes, onewire.o(.text), UNUSED)

  Def_OSR (Thumb, 184 bytes, Stack size 32 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = Def_OSR
  [Calls]
  - >> SET_OCR_PWM
  [Called By]
  - >> rectification_process

  PrintToLCD (Thumb, 1906 bytes, Stack size 96 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 312
  - Call Chain = PrintToLCD ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> __aeabi_ul2f
  - >> __aeabi_f2d
  - >> TM_ILI9341_Puts
  - >> RGB565ToRGB888
  - >> Get_uint32
  - >> Get_Var
  - >> Update_Time
  - >> __2sprintf
  - >> __aeabi_memclr
  - >> __aeabi_memcpy
  [Called By]
  - >> Edit_Menu
  - >> RC5
  - >> Key
  - >> RC5_val
  - >> change_mode
  - >> TIMER_change
  - >> GFX_NBK
  - >> GFX_Rect
  - >> Send_LED

  load_OW (Thumb, 280 bytes, Stack size 8 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = load_OW ⇒ memcmp
  [Calls]
  - >> memcmp
  [Called By]
  - >> change_mode

  Edit_Menu (Thumb, 298 bytes, Stack size 16 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 328
  - Call Chain = Edit_Menu ⇒ PrintToLCD ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> PrintToLCD
  [Called By]
  - >> Key

  main2 (Thumb, 90 bytes, Stack size 0 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 512
  - Call Chain = main2 ⇒ RC5 ⇒ Key ⇒ Save ⇒ change_mode ⇒ GFX_Rect ⇒ PrintToLCD ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> sys_check_timeouts
  - >> ethernetif_input
  - >> Load
  - >> RC5
  - >> Update_OCR
  - >> change_mode
  - >> TIMER_change
  - >> Timer_Update
  [Called By]
  - >> main

  TIM6_DAC_IRQHandler (Thumb, 22 bytes, Stack size 8 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = TIM6_DAC_IRQHandler ⇒ HAL_TIM_IRQHandler
  [Calls]
  - >> HAL_TIM_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  Change_OCR_MOTOR (Thumb, 56 bytes, Stack size 0 bytes, process2.o(.text), UNUSED)

  Get_Buffer_Telnet (Thumb, 518 bytes, Stack size 144 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 172
  - Call Chain = Get_Buffer_Telnet ⇒ Update_Time ⇒ Parse_Time
  [Calls]
  - >> __aeabi_f2d
  - >> Update_Time
  - >> __2sprintf
  [Called By]
  - >> Telnet_accept
  - >> Telnet_recv

  RC5_Receiver_Init (Thumb, 180 bytes, Stack size 8 bytes, rc5_ir_emul_receiver.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = RC5_Receiver_Init ⇒ RC5_TIM_GetCounterCLKValue ⇒ HAL_RCC_GetPCLK1Freq ⇒ HAL_RCC_GetHCLKFreq ⇒ HAL_RCC_GetSysClockFreq
  [Calls]
  - >> RC5_TIM_GetCounterCLKValue
  - >> RC5_WaitForNextFallingEdge
  [Called By]
  - >> Init_Config

  RC5_Sample_Data (Thumb, 122 bytes, Stack size 8 bytes, rc5_ir_emul_receiver.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = RC5_Sample_Data
  [Calls]
  - >> HAL_TIM_Base_Stop_IT
  [Called By]
  - >> TIM7_IRQHandler

  RC5_MeasureFirstLowDuration (Thumb, 292 bytes, Stack size 8 bytes, rc5_ir_emul_receiver.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = RC5_MeasureFirstLowDuration ⇒ HAL_GPIO_EXTI_IRQHandler
  [Calls]
  - >> HAL_GPIO_EXTI_IRQHandler
  - >> HAL_TIM_Base_Stop_IT
  - >> HAL_TIM_Base_Start_IT
  [Called By]
  - >> EXTI0_IRQHandler

  RC5_Decode (Thumb, 290 bytes, Stack size 16 bytes, rc5_ir_emul_receiver.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = RC5_Decode ⇒ RC5_WaitForNextFallingEdge ⇒ HAL_TIM_Base_Init
  [Calls]
  - >> RC5_WaitForNextFallingEdge
  [Called By]
  - >> RC5

  RC5_CGI (Thumb, 256 bytes, Stack size 16 bytes, rc5_ir_emul_receiver.o(.text))
  [Stack]

  - Max Depth = 240
  - Call Chain = RC5_CGI ⇒ BSP_EEPROM_WriteBuffer ⇒ EEPROM_WritePage ⇒ EEPROM_IO_WriteData ⇒ I2Cx_WriteMultiple ⇒ HAL_I2C_Mem_Write ⇒ I2C_RequestMemoryWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_GPIO_WritePin
  - >> HAL_Delay
  - >> BSP_EEPROM_WriteBuffer
  - >> atoi
  [Called By]
  - >> httpd_post_receive_data
  - >> http_recv

  Telnet_init (Thumb, 38 bytes, Stack size 8 bytes, telnet.o(.text))
  [Stack]

  - Max Depth = 476
  - Call Chain = Telnet_init ⇒ tcp_new ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_accept
  - >> tcp_new
  - >> tcp_listen_with_backlog
  - >> tcp_bind
  [Called By]
  - >> Init

  TM_SPI_SetDataSize (Thumb, 16 bytes, Stack size 16 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = TM_SPI_SetDataSize ⇒ HAL_SPI_Init
  [Calls]
  - >> HAL_SPI_Init
  [Called By]
  - >> TM_ILI9341_Putc
  - >> TM_ILI9341_INT_Fill
  - >> GFX_Rect

  TM_ILI9341_SendData16 (Thumb, 48 bytes, Stack size 8 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = TM_ILI9341_SendData16 ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GPIO_WritePin
  - >> HAL_SPI_Transmit
  [Called By]
  - >> TM_ILI9341_Putc
  - >> TM_ILI9341_INT_Fill
  - >> GFX_Rect

  TM_ILI9341_SendCommand (Thumb, 48 bytes, Stack size 8 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = TM_ILI9341_SendCommand ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GPIO_WritePin
  - >> HAL_SPI_Transmit
  [Called By]
  - >> TM_ILI9341_GetPixel
  - >> TM_ILI9341_DrawPixel
  - >> TM_ILI9341_DisplayOff
  - >> TM_ILI9341_DisplayOn
  - >> TM_ILI9341_InitLCD__
  - >> TM_ILI9341_InitLCD
  - >> TM_ILI9341_Rotate
  - >> TM_ILI9341_SetCursorPosition
  - >> TM_ILI9341_SetSquare

  TM_ILI9341_SendData (Thumb, 48 bytes, Stack size 8 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GPIO_WritePin
  - >> HAL_SPI_Transmit
  [Called By]
  - >> TM_ILI9341_DrawPixel
  - >> TM_ILI9341_InitLCD__
  - >> TM_ILI9341_InitLCD
  - >> TM_ILI9341_Rotate
  - >> TM_ILI9341_SetCursorPosition

  TM_ILI9341_SetCursorPosition (Thumb, 76 bytes, Stack size 24 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 112
  - Call Chain = TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TM_ILI9341_SendData
  - >> TM_ILI9341_SendCommand
  [Called By]
  - >> TM_ILI9341_GetPixel
  - >> TM_ILI9341_DrawPixel
  - >> TM_ILI9341_SetSquare

  TM_ILI9341_SetSquare (Thumb, 40 bytes, Stack size 24 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 136
  - Call Chain = TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TM_ILI9341_SetCursorPosition
  - >> TM_ILI9341_SendCommand
  [Called By]
  - >> TM_ILI9341_Putc
  - >> TM_ILI9341_INT_Fill
  - >> GFX_Rect

  TM_ILI9341_Putc (Thumb, 214 bytes, Stack size 40 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 176
  - Call Chain = TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TM_SPI_SetDataSize
  - >> TM_ILI9341_SetSquare
  - >> TM_ILI9341_SendData16
  [Called By]
  - >> TM_ILI9341_Puts

  TM_ILI9341_Puts (Thumb, 118 bytes, Stack size 40 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 216
  - Call Chain = TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TM_ILI9341_Putc
  [Called By]
  - >> Save
  - >> TM_ILI9341_Init
  - >> PrintToLCD

  TM_ILI9341_INT_Fill (Thumb, 82 bytes, Stack size 32 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 168
  - Call Chain = TM_ILI9341_INT_Fill ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TM_SPI_SetDataSize
  - >> TM_ILI9341_SetSquare
  - >> TM_ILI9341_SendData16
  [Called By]
  - >> TM_ILI9341_DrawFilledRectangle
  - >> TM_ILI9341_Fill
  - >> TM_ILI9341_DrawLine
  - >> GFX_NBK
  - >> GFX_Rect

  TM_ILI9341_Fill (Thumb, 28 bytes, Stack size 16 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 184
  - Call Chain = TM_ILI9341_Fill ⇒ TM_ILI9341_INT_Fill ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TM_ILI9341_INT_Fill
  [Called By]
  - >> Key
  - >> Save
  - >> change_mode
  - >> Hot_STOP
  - >> GFX_NBK
  - >> GFX_Rect
  - >> TM_ILI9341_Init

  TM_ILI9341_Rotate (Thumb, 96 bytes, Stack size 8 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 96
  - Call Chain = TM_ILI9341_Rotate ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TM_ILI9341_SendData
  - >> TM_ILI9341_SendCommand
  [Called By]
  - >> TM_ILI9341_Init

  TM_ILI9341_InitLCD (Thumb, 334 bytes, Stack size 8 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 96
  - Call Chain = TM_ILI9341_InitLCD ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GPIO_WritePin
  - >> HAL_Delay
  - >> TM_ILI9341_SendData
  - >> TM_ILI9341_SendCommand
  - >> SPI_Init
  [Called By]
  - >> TM_ILI9341_Init

  TM_ILI9341_Init (Thumb, 102 bytes, Stack size 16 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 232
  - Call Chain = TM_ILI9341_Init ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GPIO_WritePin
  - >> TM_ILI9341_InitLCD
  - >> TM_ILI9341_Rotate
  - >> TM_ILI9341_Puts
  - >> TM_ILI9341_Fill
  [Called By]
  - >> Init_Config

  TM_ILI9341_InitLCD__ (Thumb, 616 bytes, Stack size 8 bytes, lcd_g.o(.text), UNUSED)
  [Calls]

  - >> HAL_GPIO_WritePin
  - >> HAL_Delay
  - >> TM_ILI9341_SendData
  - >> TM_ILI9341_SendCommand
  - >> SPI_Init

  TM_ILI9341_DisplayOn (Thumb, 10 bytes, Stack size 8 bytes, lcd_g.o(.text), UNUSED)
  [Calls]

  - >> TM_ILI9341_SendCommand

  TM_ILI9341_DisplayOff (Thumb, 10 bytes, Stack size 8 bytes, lcd_g.o(.text), UNUSED)
  [Calls]

  - >> TM_ILI9341_SendCommand

  TM_ILI9341_DrawPixel (Thumb, 42 bytes, Stack size 16 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 128
  - Call Chain = TM_ILI9341_DrawPixel ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TM_ILI9341_SetCursorPosition
  - >> TM_ILI9341_SendData
  - >> TM_ILI9341_SendCommand
  [Called By]
  - >> TM_ILI9341_DrawFilledCircle
  - >> TM_ILI9341_DrawCircle
  - >> TM_ILI9341_DrawLine
  - >> GG_ILI9341_PutImage

  TM_ILI9341_GetStringSize (Thumb, 28 bytes, Stack size 16 bytes, lcd_g.o(.text), UNUSED)

  TM_ILI9341_DrawLine (Thumb, 316 bytes, Stack size 56 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 224
  - Call Chain = TM_ILI9341_DrawLine ⇒ TM_ILI9341_INT_Fill ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TM_ILI9341_DrawPixel
  - >> TM_ILI9341_INT_Fill
  [Called By]
  - >> TM_ILI9341_DrawFilledCircle
  - >> TM_ILI9341_DrawRectangle
  - >> GFX_Rect

  TM_ILI9341_DrawRectangle (Thumb, 74 bytes, Stack size 32 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 256
  - Call Chain = TM_ILI9341_DrawRectangle ⇒ TM_ILI9341_DrawLine ⇒ TM_ILI9341_INT_Fill ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TM_ILI9341_DrawLine
  [Called By]
  - >> GFX_NBK
  - >> GFX_Rect

  TM_ILI9341_DrawFilledRectangle (Thumb, 68 bytes, Stack size 32 bytes, lcd_g.o(.text), UNUSED)
  [Calls]

  - >> HAL_GPIO_WritePin
  - >> TM_ILI9341_INT_Fill

  TM_ILI9341_DrawCircle (Thumb, 260 bytes, Stack size 56 bytes, lcd_g.o(.text), UNUSED)
  [Calls]

  - >> TM_ILI9341_DrawPixel

  TM_ILI9341_DrawFilledCircle (Thumb, 334 bytes, Stack size 48 bytes, lcd_g.o(.text), UNUSED)
  [Calls]

  - >> TM_ILI9341_DrawPixel
  - >> TM_ILI9341_DrawLine

  TM_ILI9341_GetPixel (Thumb, 74 bytes, Stack size 24 bytes, lcd_g.o(.text), UNUSED)
  [Calls]

  - >> HAL_GPIO_WritePin
  - >> HAL_SPI_Receive
  - >> TM_ILI9341_SetCursorPosition
  - >> TM_ILI9341_SendCommand

  GG_ILI9341_PutImage (Thumb, 118 bytes, Stack size 32 bytes, lcd_g.o(.text))
  [Stack]

  - Max Depth = 160
  - Call Chain = GG_ILI9341_PutImage ⇒ TM_ILI9341_DrawPixel ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TM_ILI9341_DrawPixel
  [Called By]
  - >> GFX_NBK
  - >> GFX_Rect

  __aeabi_uldivmod (Thumb, 98 bytes, Stack size 40 bytes, uldiv.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = __aeabi_uldivmod
  [Calls]
  - >> __aeabi_llsr
  - >> __aeabi_llsl
  [Called By]
  - >> EXTI3_IRQHandler
  - >> _printf_core
  - >> _fp_digits
  - >> __aeabi_ldivmod

  __aeabi_ldivmod (Thumb, 98 bytes, Stack size 24 bytes, ldiv.o(.text))
  [Stack]

  - Max Depth = 64
  - Call Chain = __aeabi_ldivmod ⇒ __aeabi_uldivmod
  [Calls]
  - >> __aeabi_uldivmod
  [Called By]
  - >> Interpolation

  __aeabi_memcpy (Thumb, 36 bytes, Stack size 0 bytes, memcpya.o(.text))
  [Called By]

  - >> pbuf_take
  - >> pbuf_copy
  - >> tcp_write
  - >> pbuf_copy_partial
  - >> icmp_send_response
  - >> ip_frag
  - >> ip_reass
  - >> ip_reass_enqueue_new_datagram
  - >> ip_reass_free_complete_datagram
  - >> low_level_input
  - >> low_level_output
  - >> fs_read
  - >> PrintToLCD
  - >> get_tag_insert

  __aeabi_memcpy4 (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text))
  [Called By]

  - >> get_tag_insert

  __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]

  - >> _memset$wrapper
  - >> __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]

  - >> __aeabi_memset
  [Called By]
  - >> mem_calloc
  - >> PrintToLCD

  __aeabi_memclr4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))
  [Called By]

  - >> raw_new
  - >> udp_new
  - >> dhcp_inform
  - >> dhcp_start
  - >> dhcp_set_struct
  - >> dhcp_parse_reply
  - >> tcp_alloc
  - >> ip_reass_enqueue_new_datagram
  - >> Telnet_accept
  - >> Telnet_recv
  - >> http_state_alloc

  __aeabi_memclr8 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)

  _memset$wrapper (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_memset

  strstr (Thumb, 36 bytes, Stack size 12 bytes, strstr.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = strstr
  [Called By]
  - >> http_find_file
  - >> get_http_headers

  strchr (Thumb, 20 bytes, Stack size 0 bytes, strchr.o(.text))
  [Called By]

  - >> http_find_file
  - >> get_http_headers
  - >> extract_uri_parameters

  strlen (Thumb, 14 bytes, Stack size 0 bytes, strlen.o(.text))
  [Called By]

  - >> pbuf_strstr
  - >> http_send_data
  - >> get_tag_insert
  - >> strnstr

  strcmp (Thumb, 28 bytes, Stack size 8 bytes, strcmp.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = strcmp
  [Called By]
  - >> Save
  - >> fs_open
  - >> http_recv
  - >> http_find_file
  - >> get_http_headers
  - >> get_tag_insert

  memcmp (Thumb, 26 bytes, Stack size 12 bytes, memcmp.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = memcmp
  [Called By]
  - >> ethernet_input
  - >> Telnet_recv
  - >> load_OW
  - >> Load

  strcpy (Thumb, 18 bytes, Stack size 0 bytes, strcpy.o(.text))
  [Called By]

  - >> httpd_post_finished
  - >> http_recv

  strncmp (Thumb, 30 bytes, Stack size 12 bytes, strncmp.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = strncmp
  [Called By]
  - >> http_recv
  - >> http_parse_request
  - >> http_find_file
  - >> strnstr

  strcspn (Thumb, 34 bytes, Stack size 12 bytes, strcspn.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = strcspn
  [Called By]
  - >> http_recv

  atoi (Thumb, 26 bytes, Stack size 16 bytes, atoi.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = atoi ⇒ strtol ⇒ _strtoul
  [Calls]
  - >> strtol
  - >> __aeabi_errno_addr
  [Called By]
  - >> RC5_CGI
  - >> http_post_request

  __aeabi_dadd (Thumb, 322 bytes, Stack size 48 bytes, dadd.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
  [Calls]
  - >> __aeabi_lasr
  - >> __aeabi_llsl
  - >> _double_round
  - >> _double_epilogue
  [Called By]
  - >> __aeabi_dsub
  - >> __aeabi_drsub
  - >> NBK_process
  - >> _fp_digits

  __aeabi_dsub (Thumb, 6 bytes, Stack size 0 bytes, dadd.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = __aeabi_dsub ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
  [Calls]
  - >> __aeabi_dadd
  [Called By]
  - >> NBK_process

  __aeabi_drsub (Thumb, 6 bytes, Stack size 0 bytes, dadd.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = __aeabi_drsub ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
  [Calls]
  - >> __aeabi_dadd
  [Called By]
  - >> Get_Alcohol

  __aeabi_dmul (Thumb, 228 bytes, Stack size 48 bytes, dmul.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
  [Calls]
  - >> _double_epilogue
  [Called By]
  - >> Get_Alcohol
  - >> _fp_digits

  __aeabi_ul2f (Thumb, 28 bytes, Stack size 8 bytes, ffltul.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = __aeabi_ul2f ⇒ _float_epilogue
  [Calls]
  - >> _float_epilogue
  [Called By]
  - >> PrintToLCD

  __aeabi_ui2d (Thumb, 26 bytes, Stack size 16 bytes, dfltui.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = __aeabi_ui2d ⇒ _double_epilogue ⇒ _double_round
  [Calls]
  - >> _double_epilogue
  [Called By]
  - >> Get_Alcohol

  __aeabi_ul2d (Thumb, 24 bytes, Stack size 16 bytes, dfltul.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = __aeabi_ul2d ⇒ _double_epilogue ⇒ _double_round
  [Calls]
  - >> _double_epilogue
  [Called By]
  - >> EXTI3_IRQHandler

  __aeabi_d2uiz (Thumb, 50 bytes, Stack size 8 bytes, dfixui.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = __aeabi_d2uiz
  [Calls]
  - >> __aeabi_llsr
  [Called By]
  - >> EXTI3_IRQHandler

  __aeabi_f2d (Thumb, 38 bytes, Stack size 0 bytes, f2d.o(.text))
  [Called By]

  - >> Get_Buffer_Telnet
  - >> NBK_process
  - >> Attention
  - >> PrintToLCD

  __aeabi_cdcmpeq (Thumb, 0 bytes, Stack size 0 bytes, cdcmple.o(.text), UNUSED)

  __aeabi_cdcmple (Thumb, 48 bytes, Stack size 0 bytes, cdcmple.o(.text))
  [Called By]

  - >> NBK_process

  __aeabi_cdrcmple (Thumb, 48 bytes, Stack size 0 bytes, cdrcmple.o(.text))
  [Called By]

  - >> NBK_process
  - >> _fp_digits

  __aeabi_d2f (Thumb, 56 bytes, Stack size 8 bytes, d2f.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = __aeabi_d2f
  [Calls]
  - >> _float_round
  [Called By]
  - >> Get_Alcohol
  - >> NBK_process

  __aeabi_uidiv (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)

  __aeabi_uidivmod (Thumb, 44 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
  [Called By]

  - >> _printf_core

  __aeabi_llsl (Thumb, 30 bytes, Stack size 0 bytes, llshl.o(.text))
  [Called By]

  - >> __aeabi_dadd
  - >> _double_epilogue
  - >> __aeabi_d2ulz
  - >> __aeabi_uldivmod

  _ll_shift_l (Thumb, 0 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)

  __aeabi_llsr (Thumb, 32 bytes, Stack size 0 bytes, llushr.o(.text))
  [Called By]

  - >> __aeabi_d2uiz
  - >> _double_epilogue
  - >> __aeabi_d2ulz
  - >> __aeabi_uldivmod
  - >> _dsqrt

  _ll_ushift_r (Thumb, 0 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)

  __aeabi_lasr (Thumb, 36 bytes, Stack size 0 bytes, llsshr.o(.text))
  [Called By]

  - >> __aeabi_dadd

  _ll_sshift_r (Thumb, 0 bytes, Stack size 0 bytes, llsshr.o(.text), UNUSED)

  strtol (Thumb, 112 bytes, Stack size 32 bytes, strtol.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = strtol ⇒ _strtoul
  [Calls]
  - >> __rt_ctype_table
  - >> __aeabi_errno_addr
  - >> _strtoul
  [Called By]
  - >> atoi

  __I$use$fp (Thumb, 0 bytes, Stack size 0 bytes, iusefp.o(.text), UNUSED)

  _float_round (Thumb, 18 bytes, Stack size 0 bytes, fepilogue.o(.text))
  [Called By]

  - >> __aeabi_d2f

  _float_epilogue (Thumb, 92 bytes, Stack size 4 bytes, fepilogue.o(.text))
  [Stack]

  - Max Depth = 4
  - Call Chain = _float_epilogue
  [Called By]
  - >> __aeabi_ul2f

  _double_round (Thumb, 30 bytes, Stack size 8 bytes, depilogue.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = _double_round
  [Called By]
  - >> __aeabi_dadd
  - >> _double_epilogue
  - >> __aeabi_ddiv
  - >> _dsqrt

  _double_epilogue (Thumb, 156 bytes, Stack size 32 bytes, depilogue.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = _double_epilogue ⇒ _double_round
  [Calls]
  - >> __aeabi_llsr
  - >> __aeabi_llsl
  - >> _double_round
  [Called By]
  - >> __aeabi_ul2d
  - >> __aeabi_ui2d
  - >> __aeabi_dmul
  - >> __aeabi_dadd

  __aeabi_ddiv (Thumb, 222 bytes, Stack size 32 bytes, ddiv.o(.text), UNUSED)
  [Calls]

  - >> _double_round
  [Called By]
  - >> _fp_digits

  _dsqrt (Thumb, 162 bytes, Stack size 32 bytes, dsqrt.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = _dsqrt ⇒ _double_round
  [Calls]
  - >> __aeabi_llsr
  - >> _double_round
  [Called By]
  - >> __hardfp_sqrt

  __aeabi_d2ulz (Thumb, 48 bytes, Stack size 0 bytes, dfixul.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_llsr
  - >> __aeabi_llsl
  [Called By]
  - >> _fp_digits

  __scatterload (Thumb, 28 bytes, Stack size 0 bytes, init.o(.text))
  [Calls]

  - >> __main_after_scatterload
  [Called By]
  - >> _main_scatterload

  __scatterload_rt2 (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)

  __rt_ctype_table (Thumb, 4 bytes, Stack size 0 bytes, ctype_o.o(.text))
  [Called By]

  - >> strtol

  _strtoul (Thumb, 158 bytes, Stack size 40 bytes, _strtoul.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = _strtoul
  [Calls]
  - >> __aeabi_errno_addr
  - >> _chval
  [Called By]
  - >> strtol

  _chval (Thumb, 28 bytes, Stack size 0 bytes, _chval.o(.text))
  [Called By]

  - >> _strtoul

  __decompress (Thumb, 0 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)

  __decompress1 (Thumb, 86 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)

  __0sprintf (Thumb, 34 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
  [Calls]

  - >> _sputc
  - >> _printf_core

  __1sprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)

  __2sprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf))
  [Stack]

  - Max Depth = 24
  - Call Chain = __2sprintf
  [Called By]
  - >> Get_Buffer_Telnet
  - >> Attention
  - >> RGB565ToRGB888
  - >> PrintToLCD
  - >> Send_LED

  __c89sprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)

  sprintf (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)

  __aeabi_errno_addr (Thumb, 4 bytes, Stack size 0 bytes, errno.o(i.__aeabi_errno_addr))
  [Called By]

  - >> strtol
  - >> atoi
  - >> _strtoul

  __rt_errno_addr (Thumb, 0 bytes, Stack size 0 bytes, errno.o(i.__aeabi_errno_addr), UNUSED)

  __hardfp_sqrt (Thumb, 122 bytes, Stack size 32 bytes, sqrt.o(i.__hardfp_sqrt))
  [Stack]

  - Max Depth = 72
  - Call Chain = __hardfp_sqrt ⇒ _dsqrt ⇒ _double_round
  [Calls]
  - >> __set_errno
  - >> _dsqrt
  [Called By]
  - >> EXTI3_IRQHandler

  __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)

  __set_errno (Thumb, 6 bytes, Stack size 0 bytes, errno.o(i.__set_errno))
  [Called By]

  - >> __hardfp_sqrt

  ### Local Symbols

  tcp_receive (Thumb, 1634 bytes, Stack size 40 bytes, tcp_in.o(.text))
  [Stack]

  - Max Depth = 356
  - Call Chain = tcp_receive ⇒ tcp_send_empty_ack ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_update_rcv_ann_wnd
  - >> tcp_send_empty_ack
  - >> tcp_seg_free
  - >> tcp_rexmit_fast
  - >> pbuf_realloc
  - >> pbuf_header
  - >> pbuf_clen
  - >> lwip_ntohs
  - >> lwip_ntohl
  - >> lwip_htons
  [Called By]
  - >> tcp_process

  tcp_parseopt (Thumb, 202 bytes, Stack size 32 bytes, tcp_in.o(.text))
  [Stack]

  - Max Depth = 36
  - Call Chain = tcp_parseopt ⇒ lwip_ntohs
  [Calls]
  - >> lwip_ntohs
  [Called By]
  - >> tcp_listen_input
  - >> tcp_process

  tcp_process (Thumb, 1464 bytes, Stack size 32 bytes, tcp_in.o(.text))
  [Stack]

  - Max Depth = 452
  - Call Chain = tcp_process ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_timer_needed
  - >> tcp_seg_free
  - >> tcp_rst
  - >> tcp_rexmit
  - >> tcp_pcb_purge
  - >> tcp_eff_send_mss
  - >> tcp_abort
  - >> lwip_ntohl
  - >> tcp_parseopt
  - >> tcp_receive
  [Called By]
  - >> tcp_input

  tcp_listen_input (Thumb, 280 bytes, Stack size 24 bytes, tcp_in.o(.text))
  [Stack]

  - Max Depth = 484
  - Call Chain = tcp_listen_input ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_timer_needed
  - >> tcp_rst
  - >> tcp_output
  - >> tcp_enqueue_flags
  - >> tcp_eff_send_mss
  - >> tcp_alloc
  - >> tcp_abandon
  - >> tcp_parseopt
  [Called By]
  - >> tcp_input

  tcp_timewait_input (Thumb, 140 bytes, Stack size 16 bytes, tcp_in.o(.text))
  [Stack]

  - Max Depth = 372
  - Call Chain = tcp_timewait_input ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_rst
  - >> tcp_output
  [Called By]
  - >> tcp_input

  tcpip_tcp_timer (Thumb, 40 bytes, Stack size 8 bytes, lwip_timers.o(.text))
  [Stack]

  - Max Depth = 484
  - Call Chain = tcpip_tcp_timer ⇒ tcp_tmr ⇒ tcp_fasttmr ⇒ tcp_process_refused_data ⇒ tcp_recv_null ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_tmr
  - >> sys_timeout
  [Address Reference Count : 1]
  - lwip_timers.o(.text)

  ip_reass_timer (Thumb, 26 bytes, Stack size 8 bytes, lwip_timers.o(.text))
  [Stack]

  - Max Depth = 396
  - Call Chain = ip_reass_timer ⇒ ip_reass_tmr ⇒ ip_reass_free_complete_datagram ⇒ icmp_time_exceeded ⇒ icmp_send_response ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> ip_reass_tmr
  - >> sys_timeout
  [Address Reference Count : 1]
  - lwip_timers.o(.text)

  arp_timer (Thumb, 26 bytes, Stack size 8 bytes, lwip_timers.o(.text))
  [Stack]

  - Max Depth = 92
  - Call Chain = arp_timer ⇒ etharp_tmr ⇒ etharp_free_entry ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> etharp_tmr
  - >> sys_timeout
  [Address Reference Count : 1]
  - lwip_timers.o(.text)

  dhcp_timer_coarse (Thumb, 26 bytes, Stack size 8 bytes, lwip_timers.o(.text))
  [Stack]

  - Max Depth = 356
  - Call Chain = dhcp_timer_coarse ⇒ dhcp_coarse_tmr ⇒ dhcp_t2_timeout ⇒ dhcp_rebind ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> dhcp_coarse_tmr
  - >> sys_timeout
  [Address Reference Count : 1]
  - lwip_timers.o(.text)

  dhcp_timer_fine (Thumb, 26 bytes, Stack size 8 bytes, lwip_timers.o(.text))
  [Stack]

  - Max Depth = 500
  - Call Chain = dhcp_timer_fine ⇒ dhcp_fine_tmr ⇒ dhcp_timeout ⇒ dhcp_release ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> dhcp_fine_tmr
  - >> sys_timeout
  [Address Reference Count : 1]
  - lwip_timers.o(.text)

  dhcp_delete_msg (Thumb, 40 bytes, Stack size 8 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 68
  - Call Chain = dhcp_delete_msg ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_free
  [Called By]
  - >> dhcp_inform
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_reboot
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

  dhcp_option_trailer (Thumb, 70 bytes, Stack size 0 bytes, dhcp.o(.text))
  [Called By]

  - >> dhcp_inform
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_reboot
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

  dhcp_option_byte (Thumb, 18 bytes, Stack size 0 bytes, dhcp.o(.text))
  [Called By]

  - >> dhcp_select
  - >> dhcp_discover
  - >> dhcp_create_msg

  dhcp_option (Thumb, 32 bytes, Stack size 8 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = dhcp_option
  [Called By]
  - >> dhcp_inform
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_reboot
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover
  - >> dhcp_create_msg

  dhcp_option_short (Thumb, 34 bytes, Stack size 8 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = dhcp_option_short
  [Called By]
  - >> dhcp_inform
  - >> dhcp_renew
  - >> dhcp_reboot
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

  dhcp_create_msg (Thumb, 326 bytes, Stack size 24 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 124
  - Call Chain = dhcp_create_msg ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_alloc
  - >> dhcp_option
  - >> dhcp_option_byte
  - >> lwip_htonl
  [Called By]
  - >> dhcp_inform
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_reboot
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

  dhcp_set_state (Thumb, 16 bytes, Stack size 0 bytes, dhcp.o(.text))
  [Called By]

  - >> dhcp_inform
  - >> dhcp_stop
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_bind
  - >> dhcp_reboot
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_check
  - >> dhcp_handle_nak
  - >> dhcp_discover

  dhcp_discover (Thumb, 222 bytes, Stack size 24 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 324
  - Call Chain = dhcp_discover ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> udp_sendto_if
  - >> dhcp_set_state
  - >> dhcp_create_msg
  - >> dhcp_option_short
  - >> dhcp_option
  - >> dhcp_option_byte
  - >> dhcp_option_trailer
  - >> dhcp_delete_msg
  - >> pbuf_realloc
  [Called By]
  - >> dhcp_network_changed
  - >> dhcp_start
  - >> dhcp_timeout
  - >> dhcp_handle_nak

  dhcp_handle_nak (Thumb, 56 bytes, Stack size 16 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 460
  - Call Chain = dhcp_handle_nak ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> netif_set_netmask
  - >> netif_set_ipaddr
  - >> netif_set_gw
  - >> netif_set_down
  - >> dhcp_discover
  - >> dhcp_set_state
  [Called By]
  - >> dhcp_recv

  dhcp_check (Thumb, 70 bytes, Stack size 24 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 236
  - Call Chain = dhcp_check ⇒ etharp_query ⇒ etharp_request ⇒ etharp_raw ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> etharp_query
  - >> dhcp_set_state
  [Called By]
  - >> dhcp_recv
  - >> dhcp_timeout

  dhcp_option_long (Thumb, 66 bytes, Stack size 8 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = dhcp_option_long
  [Called By]
  - >> dhcp_decline
  - >> dhcp_reboot
  - >> dhcp_select

  dhcp_select (Thumb, 256 bytes, Stack size 32 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 332
  - Call Chain = dhcp_select ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> udp_sendto_if
  - >> dhcp_option_long
  - >> dhcp_set_state
  - >> dhcp_create_msg
  - >> dhcp_option_short
  - >> dhcp_option
  - >> dhcp_option_byte
  - >> dhcp_option_trailer
  - >> dhcp_delete_msg
  - >> pbuf_realloc
  - >> lwip_ntohl
  [Called By]
  - >> dhcp_timeout
  - >> dhcp_handle_offer

  dhcp_handle_offer (Thumb, 78 bytes, Stack size 16 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 348
  - Call Chain = dhcp_handle_offer ⇒ dhcp_select ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> dhcp_select
  - >> lwip_htonl
  [Called By]
  - >> dhcp_recv

  dhcp_t1_timeout (Thumb, 40 bytes, Stack size 16 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 340
  - Call Chain = dhcp_t1_timeout ⇒ dhcp_renew ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> dhcp_renew
  [Called By]
  - >> dhcp_coarse_tmr

  dhcp_rebind (Thumb, 148 bytes, Stack size 24 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 324
  - Call Chain = dhcp_rebind ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> udp_sendto_if
  - >> dhcp_set_state
  - >> dhcp_create_msg
  - >> dhcp_option_short
  - >> dhcp_option
  - >> dhcp_option_trailer
  - >> dhcp_delete_msg
  - >> pbuf_realloc
  [Called By]
  - >> dhcp_timeout
  - >> dhcp_t2_timeout

  dhcp_t2_timeout (Thumb, 40 bytes, Stack size 16 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 340
  - Call Chain = dhcp_t2_timeout ⇒ dhcp_rebind ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> dhcp_rebind
  [Called By]
  - >> dhcp_coarse_tmr

  dhcp_reboot (Thumb, 180 bytes, Stack size 32 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 332
  - Call Chain = dhcp_reboot ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> udp_sendto_if
  - >> dhcp_option_long
  - >> dhcp_set_state
  - >> dhcp_create_msg
  - >> dhcp_option_short
  - >> dhcp_option
  - >> dhcp_option_trailer
  - >> dhcp_delete_msg
  - >> pbuf_realloc
  - >> lwip_ntohl
  [Called By]
  - >> dhcp_network_changed
  - >> dhcp_timeout

  dhcp_bind (Thumb, 260 bytes, Stack size 24 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 468
  - Call Chain = dhcp_bind ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> netif_set_up
  - >> netif_set_netmask
  - >> netif_set_ipaddr
  - >> netif_set_gw
  - >> dhcp_set_state
  [Called By]
  - >> dhcp_recv
  - >> dhcp_timeout

  dhcp_timeout (Thumb, 210 bytes, Stack size 16 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 484
  - Call Chain = dhcp_timeout ⇒ dhcp_release ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_bind
  - >> dhcp_reboot
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_check
  - >> dhcp_discover
  [Called By]
  - >> dhcp_fine_tmr

  dhcp_handle_ack (Thumb, 112 bytes, Stack size 16 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = dhcp_handle_ack
  [Calls]
  - >> lwip_htonl
  [Called By]
  - >> dhcp_recv

  dhcp_parse_reply (Thumb, 808 bytes, Stack size 80 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 120
  - Call Chain = dhcp_parse_reply ⇒ pbuf_copy_partial
  [Calls]
  - >> pbuf_copy_partial
  - >> lwip_htonl
  - >> lwip_ntohl
  - >> __aeabi_memclr4
  [Called By]
  - >> dhcp_recv

  dhcp_recv (Thumb, 298 bytes, Stack size 40 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 508
  - Call Chain = dhcp_recv ⇒ dhcp_bind ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> dhcp_parse_reply
  - >> dhcp_handle_ack
  - >> dhcp_bind
  - >> dhcp_handle_offer
  - >> dhcp_check
  - >> dhcp_handle_nak
  - >> pbuf_free
  - >> lwip_ntohl
  [Address Reference Count : 1]
  - dhcp.o(.text)

  dhcp_decline (Thumb, 142 bytes, Stack size 32 bytes, dhcp.o(.text))
  [Stack]

  - Max Depth = 332
  - Call Chain = dhcp_decline ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> udp_sendto_if
  - >> dhcp_option_long
  - >> dhcp_set_state
  - >> dhcp_create_msg
  - >> dhcp_option
  - >> dhcp_option_trailer
  - >> dhcp_delete_msg
  - >> pbuf_realloc
  - >> lwip_ntohl
  [Called By]
  - >> dhcp_arp_reply

  udp_new_port (Thumb, 80 bytes, Stack size 8 bytes, udp.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = udp_new_port
  [Called By]
  - >> udp_bind

  plug_holes (Thumb, 124 bytes, Stack size 12 bytes, mem.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = plug_holes
  [Called By]
  - >> mem_free

  tcp_close_shutdown (Thumb, 470 bytes, Stack size 24 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 396
  - Call Chain = tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_send_fin
  - >> tcp_timer_needed
  - >> tcp_rst
  - >> tcp_pcb_remove
  - >> tcp_pcb_purge
  - >> tcp_output
  - >> memp_free
  [Called By]
  - >> tcp_shutdown
  - >> tcp_close

  tcp_new_port (Thumb, 96 bytes, Stack size 12 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = tcp_new_port
  [Called By]
  - >> tcp_connect
  - >> tcp_bind

  tcp_accept_null (Thumb, 8 bytes, Stack size 0 bytes, tcp.o(.text))
  [Address Reference Count : 1]

  - tcp.o(.text)

  tcp_kill_prio (Thumb, 122 bytes, Stack size 24 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 444
  - Call Chain = tcp_kill_prio ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_abort
  [Called By]
  - >> tcp_alloc

  tcp_kill_timewait (Thumb, 54 bytes, Stack size 16 bytes, tcp.o(.text))
  [Stack]

  - Max Depth = 436
  - Call Chain = tcp_kill_timewait ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_abort
  [Called By]
  - >> tcp_alloc

  tcp_output_alloc_header (Thumb, 120 bytes, Stack size 32 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 132
  - Call Chain = tcp_output_alloc_header ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_alloc
  - >> lwip_htonl
  - >> lwip_htons
  [Called By]
  - >> tcp_zero_window_probe
  - >> tcp_keepalive
  - >> tcp_send_empty_ack

  tcp_create_segment (Thumb, 184 bytes, Stack size 40 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 108
  - Call Chain = tcp_create_segment ⇒ tcp_seg_free ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> memp_malloc
  - >> lwip_htonl
  - >> tcp_seg_free
  - >> pbuf_header
  - >> pbuf_free
  - >> lwip_htons
  [Called By]
  - >> tcp_write
  - >> tcp_enqueue_flags

  tcp_pbuf_prealloc (Thumb, 120 bytes, Stack size 56 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 156
  - Call Chain = tcp_pbuf_prealloc ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_alloc
  [Called By]
  - >> tcp_write

  tcp_write_checks (Thumb, 128 bytes, Stack size 0 bytes, tcp_out.o(.text))
  [Called By]

  - >> tcp_write

  tcp_output_segment (Thumb, 210 bytes, Stack size 40 bytes, tcp_out.o(.text))
  [Stack]

  - Max Depth = 324
  - Call Chain = tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> ip_output
  - >> ip_route
  - >> lwip_htonl
  - >> tcp_eff_send_mss
  - >> lwip_ntohl
  - >> lwip_htons
  [Called By]
  - >> tcp_output

  lwip_standard_chksum (Thumb, 94 bytes, Stack size 24 bytes, inet_chksum.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = lwip_standard_chksum
  [Called By]
  - >> inet_chksum_pbuf
  - >> inet_chksum
  - >> inet_chksum_pseudo_partial
  - >> inet_chksum_pseudo

  ip_reass_dequeue_datagram (Thumb, 40 bytes, Stack size 16 bytes, ip_frag.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = ip_reass_dequeue_datagram
  [Calls]
  - >> memp_free
  [Called By]
  - >> ip_reass
  - >> ip_reass_free_complete_datagram

  ip_reass_free_complete_datagram (Thumb, 156 bytes, Stack size 32 bytes, ip_frag.o(.text))
  [Stack]

  - Max Depth = 372
  - Call Chain = ip_reass_free_complete_datagram ⇒ icmp_time_exceeded ⇒ icmp_send_response ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_free
  - >> pbuf_clen
  - >> icmp_time_exceeded
  - >> ip_reass_dequeue_datagram
  - >> __aeabi_memcpy
  [Called By]
  - >> ip_reass_tmr
  - >> ip_reass_remove_oldest_datagram

  ip_reass_remove_oldest_datagram (Thumb, 118 bytes, Stack size 40 bytes, ip_frag.o(.text))
  [Stack]

  - Max Depth = 412
  - Call Chain = ip_reass_remove_oldest_datagram ⇒ ip_reass_free_complete_datagram ⇒ icmp_time_exceeded ⇒ icmp_send_response ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> ip_reass_free_complete_datagram
  [Called By]
  - >> ip_reass
  - >> ip_reass_enqueue_new_datagram

  ip_reass_enqueue_new_datagram (Thumb, 84 bytes, Stack size 16 bytes, ip_frag.o(.text))
  [Stack]

  - Max Depth = 428
  - Call Chain = ip_reass_enqueue_new_datagram ⇒ ip_reass_remove_oldest_datagram ⇒ ip_reass_free_complete_datagram ⇒ icmp_time_exceeded ⇒ icmp_send_response ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> memp_malloc
  - >> ip_reass_remove_oldest_datagram
  - >> __aeabi_memclr4
  - >> __aeabi_memcpy
  [Called By]
  - >> ip_reass

  ip_reass_chain_frag_into_datagram_and_validate (Thumb, 352 bytes, Stack size 48 bytes, ip_frag.o(.text))
  [Stack]

  - Max Depth = 108
  - Call Chain = ip_reass_chain_frag_into_datagram_and_validate ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_free
  - >> pbuf_clen
  - >> lwip_ntohs
  [Called By]
  - >> ip_reass

  ip_frag_alloc_pbuf_custom_ref (Thumb, 10 bytes, Stack size 8 bytes, ip_frag.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = ip_frag_alloc_pbuf_custom_ref
  [Calls]
  - >> memp_malloc
  [Called By]
  - >> ip_frag

  ip_frag_free_pbuf_custom_ref (Thumb, 18 bytes, Stack size 8 bytes, ip_frag.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = ip_frag_free_pbuf_custom_ref
  [Calls]
  - >> memp_free
  [Called By]
  - >> ip_frag
  - >> ipfrag_free_pbuf_custom

  ipfrag_free_pbuf_custom (Thumb, 32 bytes, Stack size 16 bytes, ip_frag.o(.text))
  [Stack]

  - Max Depth = 76
  - Call Chain = ipfrag_free_pbuf_custom ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_free
  - >> ip_frag_free_pbuf_custom_ref
  [Address Reference Count : 1]
  - ip_frag.o(.text)

  icmp_send_response (Thumb, 136 bytes, Stack size 40 bytes, icmp.o(.text))
  [Stack]

  - Max Depth = 324
  - Call Chain = icmp_send_response ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> ip_output
  - >> pbuf_alloc
  - >> pbuf_free
  - >> inet_chksum
  - >> __aeabi_memcpy
  [Called By]
  - >> icmp_dest_unreach
  - >> icmp_time_exceeded

  etharp_free_entry (Thumb, 112 bytes, Stack size 8 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 68
  - Call Chain = etharp_free_entry ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_free
  [Called By]
  - >> etharp_cleanup_netif
  - >> etharp_tmr
  - >> etharp_find_entry

  etharp_find_entry (Thumb, 374 bytes, Stack size 48 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 116
  - Call Chain = etharp_find_entry ⇒ etharp_free_entry ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> etharp_free_entry
  [Called By]
  - >> etharp_query
  - >> etharp_find_addr
  - >> etharp_update_arp_entry

  etharp_send_ip (Thumb, 60 bytes, Stack size 24 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = etharp_send_ip
  [Called By]
  - >> etharp_query
  - >> etharp_output
  - >> etharp_output_to_arp_index
  - >> etharp_update_arp_entry

  etharp_update_arp_entry (Thumb, 190 bytes, Stack size 32 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 148
  - Call Chain = etharp_update_arp_entry ⇒ etharp_find_entry ⇒ etharp_free_entry ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_free
  - >> ip4_addr_isbroadcast
  - >> etharp_send_ip
  - >> etharp_find_entry
  [Called By]
  - >> etharp_arp_input

  etharp_arp_input (Thumb, 306 bytes, Stack size 40 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 388
  - Call Chain = etharp_arp_input ⇒ dhcp_arp_reply ⇒ dhcp_decline ⇒ udp_sendto_if ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> dhcp_arp_reply
  - >> pbuf_free
  - >> lwip_htons
  - >> etharp_update_arp_entry
  [Called By]
  - >> ethernet_input

  etharp_raw (Thumb, 186 bytes, Stack size 40 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 140
  - Call Chain = etharp_raw ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_alloc
  - >> pbuf_free
  - >> lwip_htons
  [Called By]
  - >> etharp_request

  etharp_output_to_arp_index (Thumb, 104 bytes, Stack size 16 bytes, etharp.o(.text))
  [Stack]

  - Max Depth = 188
  - Call Chain = etharp_output_to_arp_index ⇒ etharp_request ⇒ etharp_raw ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> etharp_request
  - >> etharp_send_ip
  [Called By]
  - >> etharp_output

  ADC_Init (Thumb, 362 bytes, Stack size 0 bytes, stm32f4xx_hal_adc.o(.text))
  [Called By]

  - >> HAL_ADC_Init

  ADC_DMAError (Thumb, 26 bytes, Stack size 16 bytes, stm32f4xx_hal_adc.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = ADC_DMAError
  [Calls]
  - >> HAL_ADC_ErrorCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_adc.o(.text)

  ADC_DMAHalfConvCplt (Thumb, 14 bytes, Stack size 16 bytes, stm32f4xx_hal_adc.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = ADC_DMAHalfConvCplt
  [Calls]
  - >> HAL_ADC_ConvHalfCpltCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_adc.o(.text)

  ADC_DMAConvCplt (Thumb, 110 bytes, Stack size 16 bytes, stm32f4xx_hal_adc.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = ADC_DMAConvCplt
  [Calls]
  - >> HAL_ADC_ConvCpltCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_adc.o(.text)

  NVIC_SetPriority (Thumb, 32 bytes, Stack size 8 bytes, stm32f4xx_hal_cortex.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = NVIC_SetPriority
  [Called By]
  - >> HAL_SYSTICK_Config
  - >> HAL_NVIC_SetPriority

  NVIC_GetPriorityGrouping (Thumb, 12 bytes, Stack size 0 bytes, stm32f4xx_hal_cortex.o(.text))
  [Called By]

  - >> HAL_NVIC_GetPriorityGrouping
  - >> HAL_NVIC_SetPriority

  I2C_IsAcknowledgeFailed (Thumb, 52 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text))
  [Called By]

  - >> I2C_WaitOnSTOPFlagUntilTimeout
  - >> I2C_WaitOnTXEFlagUntilTimeout
  - >> I2C_WaitOnBTFFlagUntilTimeout

  I2C_WaitOnBTFFlagUntilTimeout (Thumb, 90 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = I2C_WaitOnBTFFlagUntilTimeout
  [Calls]
  - >> I2C_IsAcknowledgeFailed
  - >> HAL_GetTick
  [Called By]
  - >> HAL_I2C_Master_Transmit

  I2C_WaitOnTXEFlagUntilTimeout (Thumb, 90 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = I2C_WaitOnTXEFlagUntilTimeout
  [Calls]
  - >> I2C_IsAcknowledgeFailed
  - >> HAL_GetTick
  [Called By]
  - >> HAL_I2C_Mem_Write
  - >> HAL_I2C_Slave_Transmit
  - >> HAL_I2C_Master_Transmit
  - >> I2C_RequestMemoryRead
  - >> I2C_RequestMemoryWrite

  I2C_WaitOnMasterAddressFlagUntilTimeout (Thumb, 178 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = I2C_WaitOnMasterAddressFlagUntilTimeout
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> I2C_RequestMemoryRead
  - >> I2C_RequestMemoryWrite
  - >> I2C_MasterRequestRead
  - >> I2C_MasterRequestWrite

  I2C_WaitOnFlagUntilTimeout (Thumb, 230 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_I2C_IsDeviceReady
  - >> HAL_I2C_Mem_Read_DMA
  - >> HAL_I2C_Mem_Write_DMA
  - >> HAL_I2C_Mem_Read_IT
  - >> HAL_I2C_Mem_Write_IT
  - >> HAL_I2C_Mem_Read
  - >> HAL_I2C_Mem_Write
  - >> HAL_I2C_Slave_Receive_DMA
  - >> HAL_I2C_Slave_Transmit_DMA
  - >> HAL_I2C_Master_Receive_DMA
  - >> HAL_I2C_Master_Transmit_DMA
  - >> HAL_I2C_Slave_Receive_IT
  - >> HAL_I2C_Slave_Transmit_IT
  - >> HAL_I2C_Master_Sequential_Receive_IT
  - >> HAL_I2C_Master_Sequential_Transmit_IT
  - >> HAL_I2C_Master_Receive_IT
  - >> HAL_I2C_Master_Transmit_IT
  - >> HAL_I2C_Slave_Receive
  - >> HAL_I2C_Slave_Transmit
  - >> HAL_I2C_Master_Receive
  - >> HAL_I2C_Master_Transmit
  - >> I2C_DMAMemTransmitCplt
  - >> I2C_RequestMemoryRead
  - >> I2C_RequestMemoryWrite
  - >> I2C_DMASlaveTransmitCplt
  - >> I2C_DMAMasterTransmitCplt
  - >> I2C_MasterRequestRead
  - >> I2C_MasterRequestWrite

  I2C_MasterRequestWrite (Thumb, 186 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = I2C_MasterRequestWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> I2C_WaitOnFlagUntilTimeout
  - >> I2C_WaitOnMasterAddressFlagUntilTimeout
  [Called By]
  - >> HAL_I2C_Master_Transmit_DMA
  - >> HAL_I2C_Master_Sequential_Transmit_IT
  - >> HAL_I2C_Master_Transmit_IT
  - >> HAL_I2C_Master_Transmit

  I2C_WaitOnRXNEFlagUntilTimeout (Thumb, 116 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = I2C_WaitOnRXNEFlagUntilTimeout
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_I2C_Mem_Read
  - >> HAL_I2C_Slave_Receive
  - >> HAL_I2C_Master_Receive

  I2C_MasterRequestRead (Thumb, 298 bytes, Stack size 24 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> I2C_WaitOnFlagUntilTimeout
  - >> I2C_WaitOnMasterAddressFlagUntilTimeout
  [Called By]
  - >> HAL_I2C_Master_Receive_DMA
  - >> HAL_I2C_Master_Sequential_Receive_IT
  - >> HAL_I2C_Master_Receive_IT
  - >> HAL_I2C_Master_Receive

  I2C_WaitOnSTOPFlagUntilTimeout (Thumb, 88 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = I2C_WaitOnSTOPFlagUntilTimeout
  [Calls]
  - >> I2C_IsAcknowledgeFailed
  - >> HAL_GetTick
  [Called By]
  - >> HAL_I2C_Slave_Receive
  - >> I2C_DMASlaveReceiveCplt

  I2C_DMAError (Thumb, 50 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = I2C_DMAError
  [Calls]
  - >> HAL_I2C_ErrorCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_i2c.o(.text)

  I2C_DMAMasterTransmitCplt (Thumb, 88 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = I2C_DMAMasterTransmitCplt ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_MasterTxCpltCallback
  - >> HAL_I2C_ErrorCallback
  - >> I2C_WaitOnFlagUntilTimeout
  [Address Reference Count : 1]
  - stm32f4xx_hal_i2c.o(.text)

  I2C_DMAMasterReceiveCplt (Thumb, 90 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = I2C_DMAMasterReceiveCplt
  [Calls]
  - >> HAL_I2C_MasterRxCpltCallback
  - >> HAL_I2C_ErrorCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_i2c.o(.text)

  I2C_DMASlaveTransmitCplt (Thumb, 98 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = I2C_DMASlaveTransmitCplt ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_SlaveTxCpltCallback
  - >> HAL_I2C_ErrorCallback
  - >> I2C_WaitOnFlagUntilTimeout
  [Address Reference Count : 1]
  - stm32f4xx_hal_i2c.o(.text)

  I2C_DMASlaveReceiveCplt (Thumb, 128 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = I2C_DMASlaveReceiveCplt ⇒ I2C_WaitOnSTOPFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_SlaveRxCpltCallback
  - >> HAL_I2C_ErrorCallback
  - >> I2C_WaitOnSTOPFlagUntilTimeout
  [Address Reference Count : 1]
  - stm32f4xx_hal_i2c.o(.text)

  I2C_RequestMemoryWrite (Thumb, 208 bytes, Stack size 32 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = I2C_RequestMemoryWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> I2C_WaitOnFlagUntilTimeout
  - >> I2C_WaitOnMasterAddressFlagUntilTimeout
  - >> I2C_WaitOnTXEFlagUntilTimeout
  [Called By]
  - >> HAL_I2C_Mem_Write_DMA
  - >> HAL_I2C_Mem_Write_IT
  - >> HAL_I2C_Mem_Write

  I2C_RequestMemoryRead (Thumb, 344 bytes, Stack size 32 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = I2C_RequestMemoryRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> I2C_WaitOnFlagUntilTimeout
  - >> I2C_WaitOnMasterAddressFlagUntilTimeout
  - >> I2C_WaitOnTXEFlagUntilTimeout
  [Called By]
  - >> HAL_I2C_Mem_Read_DMA
  - >> HAL_I2C_Mem_Write_DMA
  - >> HAL_I2C_Mem_Read_IT
  - >> HAL_I2C_Mem_Read

  I2C_DMAMemTransmitCplt (Thumb, 88 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = I2C_DMAMemTransmitCplt ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_MemTxCpltCallback
  - >> HAL_I2C_ErrorCallback
  - >> I2C_WaitOnFlagUntilTimeout
  [Address Reference Count : 1]
  - stm32f4xx_hal_i2c.o(.text)

  I2C_DMAMemReceiveCplt (Thumb, 90 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = I2C_DMAMemReceiveCplt
  [Calls]
  - >> HAL_I2C_MemRxCpltCallback
  - >> HAL_I2C_ErrorCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_i2c.o(.text)

  I2C_SlaveReceive_BTF (Thumb, 30 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Called By]

  - >> HAL_I2C_EV_IRQHandler

  I2C_SlaveReceive_RXNE (Thumb, 84 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> HAL_I2C_SlaveRxCpltCallback
  [Called By]
  - >> HAL_I2C_EV_IRQHandler

  I2C_SlaveTransmit_BTF (Thumb, 28 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Called By]

  - >> HAL_I2C_EV_IRQHandler

  I2C_SlaveTransmit_TXE (Thumb, 82 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> HAL_I2C_SlaveTxCpltCallback
  [Called By]
  - >> HAL_I2C_EV_IRQHandler

  I2C_Slave_STOPF (Thumb, 136 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> HAL_I2C_ListenCpltCallback
  - >> HAL_I2C_SlaveRxCpltCallback
  [Called By]
  - >> HAL_I2C_EV_IRQHandler

  I2C_Slave_ADDR (Thumb, 54 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> HAL_I2C_AddrCallback
  [Called By]
  - >> HAL_I2C_EV_IRQHandler

  I2C_MasterReceive_BTF (Thumb, 300 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> HAL_I2C_MemRxCpltCallback
  - >> HAL_I2C_MasterRxCpltCallback
  [Called By]
  - >> HAL_I2C_EV_IRQHandler

  I2C_MasterReceive_RXNE (Thumb, 248 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> HAL_I2C_MemRxCpltCallback
  - >> HAL_I2C_MasterRxCpltCallback
  [Called By]
  - >> HAL_I2C_EV_IRQHandler

  I2C_MasterTransmit_BTF (Thumb, 178 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> HAL_I2C_MemTxCpltCallback
  - >> HAL_I2C_MasterTxCpltCallback
  [Called By]
  - >> HAL_I2C_EV_IRQHandler

  I2C_MasterTransmit_TXE (Thumb, 42 bytes, Stack size 0 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Called By]

  - >> HAL_I2C_EV_IRQHandler

  I2C_Slave_AF (Thumb, 176 bytes, Stack size 16 bytes, stm32f4xx_hal_i2c.o(.text), UNUSED)
  [Calls]

  - >> HAL_I2C_ListenCpltCallback
  - >> HAL_I2C_SlaveTxCpltCallback
  [Called By]
  - >> HAL_I2C_ER_IRQHandler

  ADC_MultiModeDMAError (Thumb, 26 bytes, Stack size 16 bytes, stm32f4xx_hal_adc_ex.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = ADC_MultiModeDMAError
  [Calls]
  - >> HAL_ADC_ErrorCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_adc_ex.o(.text)

  ADC_MultiModeDMAHalfConvCplt (Thumb, 14 bytes, Stack size 16 bytes, stm32f4xx_hal_adc_ex.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = ADC_MultiModeDMAHalfConvCplt
  [Calls]
  - >> HAL_ADC_ConvHalfCpltCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_adc_ex.o(.text)

  ADC_MultiModeDMAConvCplt (Thumb, 130 bytes, Stack size 16 bytes, stm32f4xx_hal_adc_ex.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = ADC_MultiModeDMAConvCplt
  [Calls]
  - >> HAL_ADC_ConvCpltCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_adc_ex.o(.text)

  ETH_MACAddressConfig (Thumb, 48 bytes, Stack size 12 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = ETH_MACAddressConfig
  [Called By]
  - >> ETH_MACDMAConfig

  ETH_MACDMAConfig (Thumb, 566 bytes, Stack size 200 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 216
  - Call Chain = ETH_MACDMAConfig ⇒ HAL_Delay
  [Calls]
  - >> ETH_MACAddressConfig
  - >> HAL_Delay
  [Called By]
  - >> HAL_ETH_Init

  ETH_DMAReceptionEnable (Thumb, 22 bytes, Stack size 0 bytes, stm32f4xx_hal_eth.o(.text))
  [Called By]

  - >> HAL_ETH_Start

  ETH_DMATransmissionEnable (Thumb, 22 bytes, Stack size 0 bytes, stm32f4xx_hal_eth.o(.text))
  [Called By]

  - >> HAL_ETH_Start

  ETH_FlushTransmitFIFO (Thumb, 56 bytes, Stack size 16 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = ETH_FlushTransmitFIFO ⇒ HAL_Delay
  [Calls]
  - >> HAL_Delay
  [Called By]
  - >> HAL_ETH_Stop
  - >> HAL_ETH_Start

  ETH_MACReceptionEnable (Thumb, 40 bytes, Stack size 16 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = ETH_MACReceptionEnable ⇒ HAL_Delay
  [Calls]
  - >> HAL_Delay
  [Called By]
  - >> HAL_ETH_Start

  ETH_MACTransmissionEnable (Thumb, 40 bytes, Stack size 16 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = ETH_MACTransmissionEnable ⇒ HAL_Delay
  [Calls]
  - >> HAL_Delay
  [Called By]
  - >> HAL_ETH_Start

  ETH_MACTransmissionDisable (Thumb, 40 bytes, Stack size 16 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = ETH_MACTransmissionDisable ⇒ HAL_Delay
  [Calls]
  - >> HAL_Delay
  [Called By]
  - >> HAL_ETH_Stop

  ETH_MACReceptionDisable (Thumb, 40 bytes, Stack size 16 bytes, stm32f4xx_hal_eth.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = ETH_MACReceptionDisable ⇒ HAL_Delay
  [Calls]
  - >> HAL_Delay
  [Called By]
  - >> HAL_ETH_Stop

  ETH_DMAReceptionDisable (Thumb, 22 bytes, Stack size 0 bytes, stm32f4xx_hal_eth.o(.text))
  [Called By]

  - >> HAL_ETH_Stop

  ETH_DMATransmissionDisable (Thumb, 22 bytes, Stack size 0 bytes, stm32f4xx_hal_eth.o(.text))
  [Called By]

  - >> HAL_ETH_Stop

  DMA_CalcBaseAndBitshift (Thumb, 46 bytes, Stack size 0 bytes, stm32f4xx_hal_dma.o(.text))
  [Called By]

  - >> HAL_DMA_DeInit
  - >> HAL_DMA_Init

  DMA_SetConfig (Thumb, 44 bytes, Stack size 12 bytes, stm32f4xx_hal_dma.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = DMA_SetConfig
  [Called By]
  - >> HAL_DMA_Start_IT
  - >> HAL_DMA_Start

  TIM_DMAPeriodElapsedCplt (Thumb, 20 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = TIM_DMAPeriodElapsedCplt
  [Calls]
  - >> HAL_TIM_PeriodElapsedCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_tim.o(.text)

  TIM_OC4_SetConfig (Thumb, 88 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = TIM_OC4_SetConfig
  [Called By]
  - >> HAL_TIM_PWM_ConfigChannel
  - >> HAL_TIM_OC_ConfigChannel

  TIM_OC3_SetConfig (Thumb, 122 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = TIM_OC3_SetConfig
  [Called By]
  - >> HAL_TIM_PWM_ConfigChannel
  - >> HAL_TIM_OC_ConfigChannel

  TIM_OC1_SetConfig (Thumb, 102 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = TIM_OC1_SetConfig
  [Called By]
  - >> HAL_TIM_OnePulse_ConfigChannel
  - >> HAL_TIM_PWM_ConfigChannel
  - >> HAL_TIM_OC_ConfigChannel

  TIM_TI4_SetConfig (Thumb, 64 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_IC_ConfigChannel

  TIM_TI3_SetConfig (Thumb, 60 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_IC_ConfigChannel

  TIM_TI2_SetConfig (Thumb, 62 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_OnePulse_ConfigChannel
  - >> HAL_TIM_IC_ConfigChannel

  TIM_DMATriggerCplt (Thumb, 20 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = TIM_DMATriggerCplt
  [Calls]
  - >> HAL_TIM_TriggerCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_tim.o(.text)

  TIM_ETR_SetConfig (Thumb, 24 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_ConfigClockSource
  - >> HAL_TIM_ConfigOCrefClear
  - >> TIM_SlaveTimer_SetConfig

  TIM_ITRx_SetConfig (Thumb, 20 bytes, Stack size 0 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_ConfigClockSource

  TIM_TI1_ConfigInputStage (Thumb, 42 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_ConfigClockSource
  - >> TIM_SlaveTimer_SetConfig

  TIM_TI2_ConfigInputStage (Thumb, 44 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIM_ConfigClockSource
  - >> TIM_SlaveTimer_SetConfig

  TIM_SlaveTimer_SetConfig (Thumb, 164 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text), UNUSED)
  [Calls]

  - >> TIM_TI2_ConfigInputStage
  - >> TIM_TI1_ConfigInputStage
  - >> TIM_ETR_SetConfig
  [Called By]
  - >> HAL_TIM_SlaveConfigSynchronization_IT
  - >> HAL_TIM_SlaveConfigSynchronization

  TIM_CCxNChannelCmd (Thumb, 28 bytes, Stack size 12 bytes, stm32f4xx_hal_tim_ex.o(.text), UNUSED)
  [Called By]

  - >> HAL_TIMEx_OnePulseN_Stop_IT
  - >> HAL_TIMEx_OnePulseN_Start_IT
  - >> HAL_TIMEx_OnePulseN_Stop
  - >> HAL_TIMEx_OnePulseN_Start
  - >> HAL_TIMEx_PWMN_Stop_DMA
  - >> HAL_TIMEx_PWMN_Start_DMA
  - >> HAL_TIMEx_PWMN_Stop_IT
  - >> HAL_TIMEx_PWMN_Start_IT
  - >> HAL_TIMEx_PWMN_Stop
  - >> HAL_TIMEx_PWMN_Start
  - >> HAL_TIMEx_OCN_Stop_DMA
  - >> HAL_TIMEx_OCN_Start_DMA
  - >> HAL_TIMEx_OCN_Stop_IT
  - >> HAL_TIMEx_OCN_Start_IT
  - >> HAL_TIMEx_OCN_Stop
  - >> HAL_TIMEx_OCN_Start

  SPI_WaitFlagStateUntilTimeout (Thumb, 160 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> SPI_CheckFlag_BSY

  SPI_CheckFlag_BSY (Thumb, 40 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SPI_WaitFlagStateUntilTimeout
  [Called By]
  - >> HAL_SPI_Receive
  - >> HAL_SPI_TransmitReceive
  - >> HAL_SPI_Transmit
  - >> SPI_DMATransmitReceiveCplt
  - >> SPI_DMATransmitCplt
  - >> SPI_CloseRxTx_ISR
  - >> SPI_CloseTx_ISR

  SPI_CheckForDisablingSPI (Thumb, 42 bytes, Stack size 0 bytes, stm32f4xx_hal_spi.o(.text))
  [Called By]

  - >> HAL_SPI_Receive
  - >> SPI_DMAReceiveCplt
  - >> SPI_CloseRx_ISR

  SPI_CloseTx_ISR (Thumb, 96 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 64
  - Call Chain = SPI_CloseTx_ISR ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GetTick
  - >> HAL_SPI_ErrorCallback
  - >> HAL_SPI_TxCpltCallback
  - >> SPI_CheckFlag_BSY
  [Called By]
  - >> SPI_TxISR_16BIT
  - >> SPI_TxISR_8BIT

  SPI_TxISR_8BIT (Thumb, 34 bytes, Stack size 8 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = SPI_TxISR_8BIT ⇒ SPI_CloseTx_ISR ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SPI_CloseTx_ISR
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_TxISR_16BIT (Thumb, 36 bytes, Stack size 8 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = SPI_TxISR_16BIT ⇒ SPI_CloseTx_ISR ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SPI_CloseTx_ISR
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_CloseRx_ISR (Thumb, 58 bytes, Stack size 8 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = SPI_CloseRx_ISR
  [Calls]
  - >> HAL_SPI_RxCpltCallback
  - >> HAL_SPI_ErrorCallback
  - >> SPI_CheckForDisablingSPI
  [Called By]
  - >> SPI_RxISR_16BIT
  - >> SPI_RxISR_8BIT

  SPI_RxISR_8BIT (Thumb, 34 bytes, Stack size 8 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = SPI_RxISR_8BIT ⇒ SPI_CloseRx_ISR
  [Calls]
  - >> SPI_CloseRx_ISR
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_RxISR_16BIT (Thumb, 36 bytes, Stack size 8 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = SPI_RxISR_16BIT ⇒ SPI_CloseRx_ISR
  [Calls]
  - >> SPI_CloseRx_ISR
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_CloseRxTx_ISR (Thumb, 98 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 64
  - Call Chain = SPI_CloseRxTx_ISR ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GetTick
  - >> HAL_SPI_TxRxCpltCallback
  - >> HAL_SPI_RxCpltCallback
  - >> HAL_SPI_ErrorCallback
  - >> SPI_CheckFlag_BSY
  [Called By]
  - >> SPI_2linesRxISR_16BIT
  - >> SPI_2linesTxISR_16BIT
  - >> SPI_2linesRxISR_8BIT
  - >> SPI_2linesTxISR_8BIT

  SPI_2linesTxISR_8BIT (Thumb, 50 bytes, Stack size 8 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = SPI_2linesTxISR_8BIT ⇒ SPI_CloseRxTx_ISR ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SPI_CloseRxTx_ISR
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_2linesRxISR_8BIT (Thumb, 50 bytes, Stack size 8 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = SPI_2linesRxISR_8BIT ⇒ SPI_CloseRxTx_ISR ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SPI_CloseRxTx_ISR
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_2linesTxISR_16BIT (Thumb, 52 bytes, Stack size 8 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = SPI_2linesTxISR_16BIT ⇒ SPI_CloseRxTx_ISR ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SPI_CloseRxTx_ISR
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_2linesRxISR_16BIT (Thumb, 52 bytes, Stack size 8 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = SPI_2linesRxISR_16BIT ⇒ SPI_CloseRxTx_ISR ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SPI_CloseRxTx_ISR
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_DMAError (Thumb, 40 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = SPI_DMAError
  [Calls]
  - >> HAL_SPI_ErrorCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_DMATransmitCplt (Thumb, 150 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = SPI_DMATransmitCplt ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GetTick
  - >> HAL_SPI_ErrorCallback
  - >> HAL_SPI_TxCpltCallback
  - >> SPI_CheckFlag_BSY
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_DMAHalfTransmitCplt (Thumb, 14 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = SPI_DMAHalfTransmitCplt
  [Calls]
  - >> HAL_SPI_TxHalfCpltCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_DMAReceiveCplt (Thumb, 76 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = SPI_DMAReceiveCplt
  [Calls]
  - >> HAL_SPI_RxCpltCallback
  - >> HAL_SPI_ErrorCallback
  - >> SPI_CheckForDisablingSPI
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_DMAHalfReceiveCplt (Thumb, 14 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = SPI_DMAHalfReceiveCplt
  [Calls]
  - >> HAL_SPI_RxHalfCpltCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_DMATransmitReceiveCplt (Thumb, 90 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 64
  - Call Chain = SPI_DMATransmitReceiveCplt ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GetTick
  - >> HAL_SPI_TxRxCpltCallback
  - >> HAL_SPI_ErrorCallback
  - >> SPI_CheckFlag_BSY
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  SPI_DMAHalfTransmitReceiveCplt (Thumb, 14 bytes, Stack size 16 bytes, stm32f4xx_hal_spi.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = SPI_DMAHalfTransmitReceiveCplt
  [Calls]
  - >> HAL_SPI_TxRxHalfCpltCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_spi.o(.text)

  low_level_init (Thumb, 184 bytes, Stack size 24 bytes, ethernetif.o(.text))
  [Stack]

  - Max Depth = 272
  - Call Chain = low_level_init ⇒ HAL_ETH_Init ⇒ ETH_MACDMAConfig ⇒ HAL_Delay
  [Calls]
  - >> HAL_ETH_DMARxDescListInit
  - >> HAL_ETH_DMATxDescListInit
  - >> HAL_ETH_Init
  - >> HAL_ETH_ReadPHYRegister
  - >> HAL_ETH_WritePHYRegister
  - >> HAL_ETH_Start
  [Called By]
  - >> ethernetif_init

  low_level_output (Thumb, 226 bytes, Stack size 40 bytes, ethernetif.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = low_level_output ⇒ HAL_ETH_TransmitFrame
  [Calls]
  - >> HAL_ETH_TransmitFrame
  - >> __aeabi_memcpy
  [Address Reference Count : 1]
  - ethernetif.o(.text)

  low_level_input (Thumb, 242 bytes, Stack size 40 bytes, ethernetif.o(.text))
  [Stack]

  - Max Depth = 140
  - Call Chain = low_level_input ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> pbuf_alloc
  - >> HAL_ETH_GetReceivedFrame
  - >> __aeabi_memcpy
  [Called By]
  - >> ethernetif_input

  Netif_Config (Thumb, 86 bytes, Stack size 32 bytes, main.o(.text))
  [Stack]

  - Max Depth = 532
  - Call Chain = Netif_Config ⇒ netif_add ⇒ netif_set_addr ⇒ netif_set_ipaddr ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> netif_set_link_callback
  - >> netif_set_default
  - >> netif_add
  - >> netif_set_up
  - >> netif_set_down
  [Called By]
  - >> Init

  SystemClock_Config (Thumb, 170 bytes, Stack size 80 bytes, main.o(.text))
  [Stack]

  - Max Depth = 160
  - Call Chain = SystemClock_Config ⇒ HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_NVIC_SetPriority ⇒ NVIC_SetPriority
  [Calls]
  - >> HAL_PWR_EnableBkUpAccess
  - >> HAL_GetREVID
  - >> HAL_RCC_OscConfig
  - >> HAL_RCC_ClockConfig
  [Called By]
  - >> main

  strnstr (Thumb, 74 bytes, Stack size 24 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 36
  - Call Chain = strnstr ⇒ strncmp
  [Calls]
  - >> strncmp
  - >> strlen
  [Called By]
  - >> http_parse_request
  - >> http_post_request
  - >> http_init_file

  http_state_alloc (Thumb, 34 bytes, Stack size 8 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 28
  - Call Chain = http_state_alloc ⇒ mem_malloc
  [Calls]
  - >> mem_malloc
  - >> __aeabi_memclr4
  [Called By]
  - >> http_accept

  http_state_free (Thumb, 42 bytes, Stack size 8 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 36
  - Call Chain = http_state_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> mem_free
  - >> fs_close
  [Called By]
  - >> http_err
  - >> http_close_conn

  http_write (Thumb, 86 bytes, Stack size 32 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 300
  - Call Chain = http_write ⇒ tcp_write ⇒ tcp_pbuf_prealloc ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_write
  [Called By]
  - >> http_send_data

  get_tag_insert (Thumb, 178 bytes, Stack size 16 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = get_tag_insert ⇒ strcmp
  [Calls]
  - >> strcmp
  - >> strlen
  - >> __aeabi_memcpy4
  - >> __aeabi_memcpy
  [Called By]
  - >> http_send_data

  http_send_data (Thumb, 1734 bytes, Stack size 48 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 468
  - Call Chain = http_send_data ⇒ http_close_conn ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> mem_malloc
  - >> fs_read
  - >> fs_bytes_left
  - >> http_close_conn
  - >> get_tag_insert
  - >> http_write
  - >> strlen
  [Called By]
  - >> HTTP_Send_String
  - >> http_recv
  - >> http_sent
  - >> http_poll

  http_poll (Thumb, 92 bytes, Stack size 16 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 484
  - Call Chain = http_poll ⇒ http_send_data ⇒ http_close_conn ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_output
  - >> http_close_conn
  - >> http_send_data
  [Address Reference Count : 1]
  - httpd.o(.text)

  http_close_conn (Thumb, 130 bytes, Stack size 16 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 420
  - Call Chain = http_close_conn ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_poll
  - >> tcp_err
  - >> tcp_sent
  - >> tcp_recv
  - >> tcp_arg
  - >> tcp_close
  - >> httpd_post_finished
  - >> http_state_free
  [Called By]
  - >> http_recv
  - >> http_poll
  - >> http_send_data

  extract_uri_parameters (Thumb, 126 bytes, Stack size 24 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = extract_uri_parameters
  [Calls]
  - >> strchr
  [Called By]
  - >> http_find_file

  get_http_headers (Thumb, 272 bytes, Stack size 32 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 44
  - Call Chain = get_http_headers ⇒ strstr
  [Calls]
  - >> strcmp
  - >> strchr
  - >> strstr
  [Called By]
  - >> http_init_file

  http_get_404_file (Thumb, 54 bytes, Stack size 16 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = http_get_404_file ⇒ fs_open ⇒ fs_free
  [Calls]
  - >> fs_open
  [Called By]
  - >> http_find_file

  http_init_file (Thumb, 138 bytes, Stack size 24 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 68
  - Call Chain = http_init_file ⇒ get_http_headers ⇒ strstr
  [Calls]
  - >> get_http_headers
  - >> strnstr
  [Called By]
  - >> http_find_file

  http_find_file (Thumb, 384 bytes, Stack size 48 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 116
  - Call Chain = http_find_file ⇒ http_init_file ⇒ get_http_headers ⇒ strstr
  [Calls]
  - >> fs_open
  - >> http_init_file
  - >> http_get_404_file
  - >> extract_uri_parameters
  - >> strncmp
  - >> strcmp
  - >> strchr
  - >> strstr
  [Called By]
  - >> http_parse_request
  - >> http_post_request
  - >> http_handle_post_finished

  http_handle_post_finished (Thumb, 144 bytes, Stack size 8 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 124
  - Call Chain = http_handle_post_finished ⇒ http_find_file ⇒ http_init_file ⇒ get_http_headers ⇒ strstr
  [Calls]
  - >> httpd_post_finished
  - >> http_find_file
  [Called By]
  - >> http_post_rxpbuf

  http_post_rxpbuf (Thumb, 66 bytes, Stack size 16 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 280
  - Call Chain = http_post_rxpbuf ⇒ httpd_post_receive_data ⇒ RC5_CGI ⇒ BSP_EEPROM_WriteBuffer ⇒ EEPROM_WritePage ⇒ EEPROM_IO_WriteData ⇒ I2Cx_WriteMultiple ⇒ HAL_I2C_Mem_Write ⇒ I2C_RequestMemoryWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> httpd_post_receive_data
  - >> http_handle_post_finished
  [Called By]
  - >> http_recv
  - >> http_post_request

  http_post_request (Thumb, 324 bytes, Stack size 104 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 384
  - Call Chain = http_post_request ⇒ http_post_rxpbuf ⇒ httpd_post_receive_data ⇒ RC5_CGI ⇒ BSP_EEPROM_WriteBuffer ⇒ EEPROM_WritePage ⇒ EEPROM_IO_WriteData ⇒ I2Cx_WriteMultiple ⇒ HAL_I2C_Mem_Write ⇒ I2C_RequestMemoryWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> pbuf_header
  - >> pbuf_free
  - >> httpd_post_begin
  - >> http_post_rxpbuf
  - >> http_find_file
  - >> strnstr
  - >> atoi
  [Called By]
  - >> http_parse_request

  http_parse_request (Thumb, 440 bytes, Stack size 88 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 472
  - Call Chain = http_parse_request ⇒ http_post_request ⇒ http_post_rxpbuf ⇒ httpd_post_receive_data ⇒ RC5_CGI ⇒ BSP_EEPROM_WriteBuffer ⇒ EEPROM_WritePage ⇒ EEPROM_IO_WriteData ⇒ I2Cx_WriteMultiple ⇒ HAL_I2C_Mem_Write ⇒ I2C_RequestMemoryWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> pbuf_cat
  - >> pbuf_copy_partial
  - >> pbuf_clen
  - >> http_post_request
  - >> http_find_file
  - >> strnstr
  - >> strncmp
  [Called By]
  - >> http_recv

  http_err (Thumb, 22 bytes, Stack size 16 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 52
  - Call Chain = http_err ⇒ http_state_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> http_state_free
  [Address Reference Count : 1]
  - httpd.o(.text)

  http_sent (Thumb, 40 bytes, Stack size 24 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 492
  - Call Chain = http_sent ⇒ http_send_data ⇒ http_close_conn ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> http_send_data
  [Address Reference Count : 1]
  - httpd.o(.text)

  http_recv (Thumb, 292 bytes, Stack size 48 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 772
  - Call Chain = http_recv ⇒ Send_LED ⇒ HTTP_Send_String ⇒ http_send_data ⇒ http_close_conn ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_recved
  - >> pbuf_free
  - >> RC5_CGI
  - >> Send_LED
  - >> http_parse_request
  - >> http_post_rxpbuf
  - >> http_close_conn
  - >> http_send_data
  - >> strcspn
  - >> strncmp
  - >> strcpy
  - >> strcmp
  [Address Reference Count : 1]
  - httpd.o(.text)

  http_accept (Thumb, 94 bytes, Stack size 24 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 52
  - Call Chain = http_accept ⇒ http_state_alloc ⇒ mem_malloc
  [Calls]
  - >> tcp_poll
  - >> tcp_err
  - >> tcp_sent
  - >> tcp_recv
  - >> tcp_arg
  - >> tcp_setprio
  - >> http_state_alloc
  [Address Reference Count : 1]
  - httpd.o(.text)

  httpd_init_addr (Thumb, 72 bytes, Stack size 16 bytes, httpd.o(.text))
  [Stack]

  - Max Depth = 484
  - Call Chain = httpd_init_addr ⇒ tcp_new ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abort ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_accept
  - >> tcp_arg
  - >> tcp_new
  - >> tcp_setprio
  - >> tcp_listen_with_backlog
  - >> tcp_bind
  [Called By]
  - >> httpd_init

  fs_malloc (Thumb, 54 bytes, Stack size 0 bytes, fs.o(.text))
  [Called By]

  - >> fs_open

  fs_free (Thumb, 48 bytes, Stack size 8 bytes, fs.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = fs_free
  [Called By]
  - >> fs_open
  - >> fs_close

  I2Cx_Init (Thumb, 2 bytes, Stack size 0 bytes, stm324xg_eval.o(.text))
  [Called By]

  - >> EEPROM_IO_Init
  - >> I2Cx_Error

  I2Cx_Error (Thumb, 16 bytes, Stack size 8 bytes, stm324xg_eval.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = I2Cx_Error ⇒ HAL_I2C_DeInit
  [Calls]
  - >> HAL_I2C_DeInit
  - >> I2Cx_Init
  [Called By]
  - >> I2Cx_WriteMultiple
  - >> I2Cx_ReadMultiple
  - >> I2Cx_Write
  - >> I2Cx_Read

  I2Cx_Read (Thumb, 54 bytes, Stack size 32 bytes, stm324xg_eval.o(.text), UNUSED)
  [Calls]

  - >> HAL_I2C_Mem_Read
  - >> I2Cx_Error

  I2Cx_Write (Thumb, 48 bytes, Stack size 40 bytes, stm324xg_eval.o(.text), UNUSED)
  [Calls]

  - >> HAL_I2C_Mem_Write
  - >> I2Cx_Error

  I2Cx_ReadMultiple (Thumb, 60 bytes, Stack size 40 bytes, stm324xg_eval.o(.text))
  [Stack]

  - Max Depth = 136
  - Call Chain = I2Cx_ReadMultiple ⇒ HAL_I2C_Mem_Read ⇒ I2C_RequestMemoryRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_Mem_Read
  - >> I2Cx_Error
  [Called By]
  - >> EEPROM_IO_ReadData

  I2Cx_WriteMultiple (Thumb, 60 bytes, Stack size 40 bytes, stm324xg_eval.o(.text))
  [Stack]

  - Max Depth = 136
  - Call Chain = I2Cx_WriteMultiple ⇒ HAL_I2C_Mem_Write ⇒ I2C_RequestMemoryWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_Mem_Write
  - >> I2Cx_Error
  [Called By]
  - >> EEPROM_IO_WriteData

  I2Cx_IsDeviceReady (Thumb, 20 bytes, Stack size 16 bytes, stm324xg_eval.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = I2Cx_IsDeviceReady ⇒ HAL_I2C_IsDeviceReady ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_I2C_IsDeviceReady
  [Called By]
  - >> EEPROM_IO_IsDeviceReady

  EEPROM_WaitEepromStandbyState (Thumb, 26 bytes, Stack size 8 bytes, stm324xg_eval_eeprom.o(.text))
  [Stack]

  - Max Depth = 112
  - Call Chain = EEPROM_WaitEepromStandbyState ⇒ EEPROM_IO_IsDeviceReady ⇒ I2Cx_IsDeviceReady ⇒ HAL_I2C_IsDeviceReady ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> BSP_EEPROM_TIMEOUT_UserCallback
  - >> EEPROM_IO_IsDeviceReady
  [Called By]
  - >> EEPROM_WritePage

  EEPROM_WritePage (Thumb, 64 bytes, Stack size 24 bytes, stm324xg_eval_eeprom.o(.text))
  [Stack]

  - Max Depth = 184
  - Call Chain = EEPROM_WritePage ⇒ EEPROM_IO_WriteData ⇒ I2Cx_WriteMultiple ⇒ HAL_I2C_Mem_Write ⇒ I2C_RequestMemoryWrite ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> BSP_EEPROM_TIMEOUT_UserCallback
  - >> EEPROM_WaitEepromStandbyState
  - >> EEPROM_IO_WriteData
  [Called By]
  - >> BSP_EEPROM_WriteBuffer

  RTC_Init (Thumb, 76 bytes, Stack size 8 bytes, init_l.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = RTC_Init ⇒ HAL_RTC_Init ⇒ RTC_EnterInitMode
  [Calls]
  - >> HAL_RTC_Init
  [Called By]
  - >> Init_Config

  NVIC_Config (Thumb, 126 bytes, Stack size 8 bytes, init_l.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = NVIC_Config ⇒ HAL_NVIC_SetPriority ⇒ NVIC_SetPriority
  [Calls]
  - >> HAL_NVIC_EnableIRQ
  - >> HAL_NVIC_SetPriority
  [Called By]
  - >> Init_Config

  ADC_Config (Thumb, 334 bytes, Stack size 56 bytes, init_l.o(.text))
  [Stack]

  - Max Depth = 128
  - Call Chain = ADC_Config ⇒ HAL_ADC_Init ⇒ HAL_ADC_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_ADCEx_InjectedConfigChannel
  - >> HAL_ADCEx_InjectedStart
  - >> HAL_ADC_ConfigChannel
  - >> HAL_ADC_Init
  - >> HAL_DMA_Init
  [Called By]
  - >> Init_Config

  TIM_Config_l (Thumb, 602 bytes, Stack size 16 bytes, init_l.o(.text))
  [Stack]

  - Max Depth = 44
  - Call Chain = TIM_Config_l ⇒ HAL_TIM_PWM_ConfigChannel ⇒ TIM_OC2_SetConfig
  [Calls]
  - >> HAL_TIMEx_MasterConfigSynchronization
  - >> HAL_TIM_PWM_ConfigChannel
  - >> HAL_TIM_PWM_Start
  - >> HAL_TIM_PWM_Init
  - >> HAL_TIM_Base_Start_IT
  - >> HAL_TIM_Base_Init
  [Called By]
  - >> Init_Config

  MX_GPIO_Init_l (Thumb, 638 bytes, Stack size 24 bytes, init_l.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = MX_GPIO_Init_l ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_GPIO_WritePin
  - >> HAL_Delay
  - >> HAL_GPIO_Init
  [Called By]
  - >> Init_Config

  RCC_Config_l (Thumb, 806 bytes, Stack size 8 bytes, init_l.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = RCC_Config_l
  [Called By]
  - >> Init_Config

  OW_InternCommand (Thumb, 80 bytes, Stack size 24 bytes, onewire.o(.text))
  [Stack]

  - Max Depth = 160
  - Call Chain = OW_InternCommand ⇒ OW_WriteByte ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> OW_WriteByte
  - >> OW_Reset
  [Called By]
  - >> OW_Command

  Timer_Update (Thumb, 2 bytes, Stack size 0 bytes, process2.o(.text))
  [Called By]

  - >> main2

  SET_OCR_MOTOR (Thumb, 18 bytes, Stack size 0 bytes, process2.o(.text))
  [Called By]

  - >> NBK_process
  - >> PID_NBK
  - >> Hot_STOP

  SET_OCR_CEL (Thumb, 22 bytes, Stack size 0 bytes, process2.o(.text))
  [Called By]

  - >> Key
  - >> rectification_process
  - >> Hot_STOP

  SET_OCR_PWM (Thumb, 22 bytes, Stack size 0 bytes, process2.o(.text))
  [Called By]

  - >> Def_OSR
  - >> WaterControl
  - >> Key
  - >> distillation_process
  - >> rectification_process
  - >> Hot_STOP

  Hot_STOP (Thumb, 110 bytes, Stack size 16 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 200
  - Call Chain = Hot_STOP ⇒ TM_ILI9341_Fill ⇒ TM_ILI9341_INT_Fill ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_NVIC_DisableIRQ
  - >> HAL_GPIO_WritePin
  - >> SET_OCR_PWM
  - >> SET_OCR_CEL
  - >> SET_OCR_MOTOR
  - >> TM_ILI9341_Fill
  [Called By]
  - >> distillation_process
  - >> rectification_process
  - >> NBK_process
  - >> Attention

  Attention (Thumb, 634 bytes, Stack size 16 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 216
  - Call Chain = Attention ⇒ Hot_STOP ⇒ TM_ILI9341_Fill ⇒ TM_ILI9341_INT_Fill ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GPIO_ReadPin
  - >> __aeabi_f2d
  - >> Hot_STOP
  - >> __2sprintf
  [Called By]
  - >> TIMER_change

  PID_NBK (Thumb, 176 bytes, Stack size 16 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = PID_NBK
  [Calls]
  - >> SET_OCR_MOTOR
  [Called By]
  - >> NBK_process

  NBK_process (Thumb, 1150 bytes, Stack size 32 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 232
  - Call Chain = NBK_process ⇒ Hot_STOP ⇒ TM_ILI9341_Fill ⇒ TM_ILI9341_INT_Fill ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> __aeabi_f2d
  - >> __aeabi_dsub
  - >> __aeabi_dadd
  - >> __aeabi_d2f
  - >> __aeabi_cdrcmple
  - >> __aeabi_cdcmple
  - >> PID_NBK
  - >> Hot_STOP
  - >> SET_OCR_MOTOR
  [Called By]
  - >> general_process

  PID_Power (Thumb, 326 bytes, Stack size 0 bytes, process2.o(.text))
  [Called By]

  - >> rectification_process

  rectification_process (Thumb, 802 bytes, Stack size 16 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 216
  - Call Chain = rectification_process ⇒ Hot_STOP ⇒ TM_ILI9341_Fill ⇒ TM_ILI9341_INT_Fill ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> Def_OSR
  - >> PID_Power
  - >> Hot_STOP
  - >> SET_OCR_PWM
  - >> SET_OCR_CEL
  - >> Interpolation
  [Called By]
  - >> general_process

  Change_OCR_PWM (Thumb, 62 bytes, Stack size 0 bytes, process2.o(.text))
  [Called By]

  - >> distillation_process

  distillation_process (Thumb, 462 bytes, Stack size 8 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 208
  - Call Chain = distillation_process ⇒ Hot_STOP ⇒ TM_ILI9341_Fill ⇒ TM_ILI9341_INT_Fill ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> Change_OCR_PWM
  - >> Hot_STOP
  - >> SET_OCR_PWM
  [Called By]
  - >> general_process

  general_process (Thumb, 82 bytes, Stack size 8 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 240
  - Call Chain = general_process ⇒ NBK_process ⇒ Hot_STOP ⇒ TM_ILI9341_Fill ⇒ TM_ILI9341_INT_Fill ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> distillation_process
  - >> rectification_process
  - >> NBK_process
  - >> Update_Time
  [Called By]
  - >> TIMER_change

  Get_Alcohol_Par (Thumb, 178 bytes, Stack size 32 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 136
  - Call Chain = Get_Alcohol_Par ⇒ Interpolation ⇒ __aeabi_ldivmod ⇒ __aeabi_uldivmod
  [Calls]
  - >> Interpolation
  [Called By]
  - >> ReadTemperature

  Get_Alcohol (Thumb, 224 bytes, Stack size 64 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 168
  - Call Chain = Get_Alcohol ⇒ Interpolation ⇒ __aeabi_ldivmod ⇒ __aeabi_uldivmod
  [Calls]
  - >> __aeabi_ui2d
  - >> __aeabi_drsub
  - >> __aeabi_dmul
  - >> __aeabi_d2f
  - >> Interpolation
  [Called By]
  - >> ReadTemperature

  ReadTemperature (Thumb, 296 bytes, Stack size 8 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 232
  - Call Chain = ReadTemperature ⇒ Read_ds18b20 ⇒ OW_Command ⇒ OW_InternCommand ⇒ OW_WriteByte ⇒ ds2482_reset ⇒ HAL_I2C_Master_Receive ⇒ I2C_MasterRequestRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> Get_Alcohol
  - >> Get_Alcohol_Par
  - >> Read_ds18b20
  - >> ConvertTemperature_ds18b20
  [Called By]
  - >> TIMER_change

  TIMER_change (Thumb, 304 bytes, Stack size 8 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 320
  - Call Chain = TIMER_change ⇒ PrintToLCD ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GPIO_WritePin
  - >> HAL_IWDG_Refresh
  - >> ReadTemperature
  - >> general_process
  - >> Attention
  - >> ConvertTemperature_ds18b20
  - >> PrintToLCD
  [Called By]
  - >> main2

  change_mode (Thumb, 172 bytes, Stack size 16 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 352
  - Call Chain = change_mode ⇒ GFX_Rect ⇒ PrintToLCD ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> load_OW
  - >> TM_ILI9341_Fill
  - >> GFX_NBK
  - >> GFX_Rect
  - >> PrintToLCD
  [Called By]
  - >> main2
  - >> Key
  - >> Save
  - >> RC5_val

  Update_OCR (Thumb, 134 bytes, Stack size 0 bytes, process2.o(.text))
  [Called By]

  - >> main2
  - >> RC5_val

  RC5_val (Thumb, 1214 bytes, Stack size 32 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 384
  - Call Chain = RC5_val ⇒ change_mode ⇒ GFX_Rect ⇒ PrintToLCD ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> Update_OCR
  - >> change_mode
  - >> PrintToLCD
  [Called By]
  - >> RC5

  Save (Thumb, 232 bytes, Stack size 144 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 496
  - Call Chain = Save ⇒ change_mode ⇒ GFX_Rect ⇒ PrintToLCD ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_Delay
  - >> HAL_RTC_SetTime
  - >> TM_ILI9341_Puts
  - >> change_mode
  - >> TM_ILI9341_Fill
  - >> BSP_EEPROM_WriteBuffer
  - >> strcmp
  [Called By]
  - >> Key

  Key (Thumb, 422 bytes, Stack size 8 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 504
  - Call Chain = Key ⇒ Save ⇒ change_mode ⇒ GFX_Rect ⇒ PrintToLCD ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> Edit_Menu
  - >> Save
  - >> change_mode
  - >> SET_OCR_PWM
  - >> SET_OCR_CEL
  - >> TM_ILI9341_Fill
  - >> PrintToLCD
  [Called By]
  - >> RC5

  RC5 (Thumb, 130 bytes, Stack size 8 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 512
  - Call Chain = RC5 ⇒ Key ⇒ Save ⇒ change_mode ⇒ GFX_Rect ⇒ PrintToLCD ⇒ TM_ILI9341_Puts ⇒ TM_ILI9341_Putc ⇒ TM_ILI9341_SetSquare ⇒ TM_ILI9341_SetCursorPosition ⇒ TM_ILI9341_SendData ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> RC5_Decode
  - >> Key
  - >> RC5_val
  - >> PrintToLCD
  [Called By]
  - >> main2

  Load (Thumb, 164 bytes, Stack size 120 bytes, process2.o(.text))
  [Stack]

  - Max Depth = 296
  - Call Chain = Load ⇒ BSP_EEPROM_ReadBuffer ⇒ EEPROM_IO_ReadData ⇒ I2Cx_ReadMultiple ⇒ HAL_I2C_Mem_Read ⇒ I2C_RequestMemoryRead ⇒ I2C_WaitOnFlagUntilTimeout
  [Calls]
  - >> BSP_EEPROM_ReadBuffer
  - >> memcmp
  [Called By]
  - >> main2

  WaterControl (Thumb, 156 bytes, Stack size 8 bytes, process2.o(.text), UNUSED)
  [Calls]

  - >> SET_OCR_PWM

  RC5_WaitForNextFallingEdge (Thumb, 52 bytes, Stack size 8 bytes, rc5_ir_emul_receiver.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = RC5_WaitForNextFallingEdge ⇒ HAL_TIM_Base_Init
  [Calls]
  - >> HAL_TIM_Base_Init
  [Called By]
  - >> RC5_Decode
  - >> RC5_Receiver_Init

  RC5_TIM_GetCounterCLKValue (Thumb, 42 bytes, Stack size 16 bytes, rc5_ir_emul_receiver.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = RC5_TIM_GetCounterCLKValue ⇒ HAL_RCC_GetPCLK1Freq ⇒ HAL_RCC_GetHCLKFreq ⇒ HAL_RCC_GetSysClockFreq
  [Calls]
  - >> HAL_RCC_GetPCLK1Freq
  [Called By]
  - >> RC5_Receiver_Init

  Telnet_recv (Thumb, 178 bytes, Stack size 256 bytes, telnet.o(.text))
  [Stack]

  - Max Depth = 660
  - Call Chain = Telnet_recv ⇒ tcp_close ⇒ tcp_close_shutdown ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ ip_frag ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_write
  - >> tcp_recved
  - >> tcp_close
  - >> mem_free
  - >> pbuf_free
  - >> Get_Buffer_Telnet
  - >> memcmp
  - >> __aeabi_memclr4
  [Address Reference Count : 1]
  - telnet.o(.text)

  Telnet_conn_err (Thumb, 16 bytes, Stack size 16 bytes, telnet.o(.text))
  [Stack]

  - Max Depth = 44
  - Call Chain = Telnet_conn_err ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> mem_free
  [Address Reference Count : 1]
  - telnet.o(.text)

  Telnet_accept (Thumb, 78 bytes, Stack size 224 bytes, telnet.o(.text))
  [Stack]

  - Max Depth = 492
  - Call Chain = Telnet_accept ⇒ tcp_write ⇒ tcp_pbuf_prealloc ⇒ pbuf_alloc ⇒ pbuf_free ⇒ mem_free ⇒ plug_holes
  [Calls]
  - >> tcp_write
  - >> tcp_err
  - >> tcp_recv
  - >> tcp_arg
  - >> mem_calloc
  - >> Get_Buffer_Telnet
  - >> __aeabi_memclr4
  [Address Reference Count : 1]
  - telnet.o(.text)

  _fp_digits (Thumb, 366 bytes, Stack size 64 bytes, printfa.o(i._fp_digits), UNUSED)
  [Calls]

  - >> __aeabi_dmul
  - >> __aeabi_dadd
  - >> __aeabi_cdrcmple
  - >> __aeabi_ddiv
  - >> __aeabi_d2ulz
  - >> __aeabi_uldivmod
  [Called By]
  - >> _printf_core

  _printf_core (Thumb, 1744 bytes, Stack size 136 bytes, printfa.o(i._printf_core), UNUSED)
  [Calls]

  - >> __aeabi_uidivmod
  - >> _printf_pre_padding
  - >> _printf_post_padding
  - >> _fp_digits
  - >> __aeabi_uldivmod
  [Called By]
  - >> __0sprintf

  _printf_post_padding (Thumb, 36 bytes, Stack size 24 bytes, printfa.o(i._printf_post_padding), UNUSED)
  [Called By]

  - >> _printf_core

  _printf_pre_padding (Thumb, 46 bytes, Stack size 24 bytes, printfa.o(i._printf_pre_padding), UNUSED)
  [Called By]

  - >> _printf_core

  _sputc (Thumb, 10 bytes, Stack size 0 bytes, printfa.o(i._sputc))
  [Called By]

  - >> __0sprintf
  [Address Reference Count : 1]
  - printfa.o(i.__0sprintf)

  ### Undefined Global Symbols