# Static Call Graph for image Simba-ELCT-FrameWork\Simba-ELCT-FrameWork.axf

#<CALLGRAPH># ARM Linker, 6240002: Last Updated: Fri Apr 24 16:05:30 2026

### Maximum Stack Usage = 380 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)

### Call chain for Maximum Stack Depth:

__rt_entry_main ⇒ main ⇒ MX_FREERTOS_Init ⇒ osThreadCreate ⇒ xTaskCreate ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd

### Functions with no stack information

- __user_initial_stackheap

### Mutually Recursive functions

- ADC_IRQHandler ⇒ ADC_IRQHandler

  ### Function Pointers

  - ADC_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - BusFault_Handler from stm32f4xx_it.o(.text.BusFault_Handler) referenced from startup_stm32f407xx.o(RESET)
  - CAN1_RX0_IRQHandler from stm32f4xx_it.o(.text.CAN1_RX0_IRQHandler) 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)
  - CAN_Task from freertos.o(.text.CAN_Task) referenced from freertos.o(.rodata..L__const.MX_FREERTOS_Init.os_thread_def_Start_CAN_Task)
  - CDC_Control_FS from usbd_cdc_if.o(.text.CDC_Control_FS) referenced from usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
  - CDC_DeInit_FS from usbd_cdc_if.o(.text.CDC_DeInit_FS) referenced from usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
  - CDC_Init_FS from usbd_cdc_if.o(.text.CDC_Init_FS) referenced from usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
  - CDC_Receive_FS from usbd_cdc_if.o(.text.CDC_Receive_FS) referenced from usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
  - CDC_TransmitCplt_FS from usbd_cdc_if.o(.text.CDC_TransmitCplt_FS) referenced from usbd_cdc_if.o(.data.USBD_Interface_fops_FS)
  - 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 stm32f4xx_it.o(.text.DMA1_Stream1_IRQHandler) 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 stm32f4xx_it.o(.text.DMA1_Stream7_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream0_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream1_IRQHandler from stm32f4xx_it.o(.text.DMA2_Stream1_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream2_IRQHandler from stm32f4xx_it.o(.text.DMA2_Stream2_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream3_IRQHandler from stm32f4xx_it.o(.text.DMA2_Stream3_IRQHandler) 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 stm32f4xx_it.o(.text.DMA2_Stream6_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
  - DMA2_Stream7_IRQHandler from stm32f4xx_it.o(.text.DMA2_Stream7_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
  - DebugMon_Handler from stm32f4xx_it.o(.text.DebugMon_Handler) 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.EXTI0_IRQHandler) 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.EXTI3_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
  - EXTI4_IRQHandler from stm32f4xx_it.o(.text.EXTI4_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
  - EXTI9_5_IRQHandler from stm32f4xx_it.o(.text.EXTI9_5_IRQHandler) 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.HardFault_Handler) 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)
  - IMU_Task from freertos.o(.text.IMU_Task) referenced from freertos.o(.rodata..L__const.MX_FREERTOS_Init.os_thread_def_Start_IMU_Task)
  - LED_Task from freertos.o(.text.LED_Task) referenced from freertos.o(.rodata..L__const.MX_FREERTOS_Init.os_thread_def_Start_LED_Task)
  - MemManage_Handler from stm32f4xx_it.o(.text.MemManage_Handler) referenced from startup_stm32f407xx.o(RESET)
  - NMI_Handler from stm32f4xx_it.o(.text.NMI_Handler) referenced from startup_stm32f407xx.o(RESET)
  - OTG_FS_IRQHandler from stm32f4xx_it.o(.text.OTG_FS_IRQHandler) 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 port.o(.text.PendSV_Handler) referenced from startup_stm32f407xx.o(RESET)
  - 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)
  - SVC_Handler from port.o(.text.SVC_Handler) referenced from startup_stm32f407xx.o(RESET)
  - SysTick_Handler from port.o(.text.SysTick_Handler) referenced from startup_stm32f407xx.o(RESET)
  - SystemInit from system_stm32f4xx.o(.text.SystemInit) 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 startup_stm32f407xx.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 stm32f4xx_it.o(.text.TIM2_IRQHandler) 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 startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM7_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - TIM8_BRK_TIM12_IRQHandler from startup_stm32f407xx.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)
  - 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)
  - UART_DMAAbortOnError from stm32f4xx_hal_uart.o(.text.UART_DMAAbortOnError) referenced 2 times from stm32f4xx_hal_uart.o(.text.HAL_UART_IRQHandler)
  - 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 stm32f4xx_it.o(.text.USART3_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
  - USART6_IRQHandler from stm32f4xx_it.o(.text.USART6_IRQHandler) referenced from startup_stm32f407xx.o(RESET)
  - USBD_CDC_DataIn from usbd_cdc.o(.text.USBD_CDC_DataIn) referenced from usbd_cdc.o(.data.USBD_CDC)
  - USBD_CDC_DataOut from usbd_cdc.o(.text.USBD_CDC_DataOut) referenced from usbd_cdc.o(.data.USBD_CDC)
  - USBD_CDC_DeInit from usbd_cdc.o(.text.USBD_CDC_DeInit) referenced from usbd_cdc.o(.data.USBD_CDC)
  - USBD_CDC_EP0_RxReady from usbd_cdc.o(.text.USBD_CDC_EP0_RxReady) referenced from usbd_cdc.o(.data.USBD_CDC)
  - USBD_CDC_GetDeviceQualifierDescriptor from usbd_cdc.o(.text.USBD_CDC_GetDeviceQualifierDescriptor) referenced from usbd_cdc.o(.data.USBD_CDC)
  - USBD_CDC_GetFSCfgDesc from usbd_cdc.o(.text.USBD_CDC_GetFSCfgDesc) referenced from usbd_cdc.o(.data.USBD_CDC)
  - USBD_CDC_GetHSCfgDesc from usbd_cdc.o(.text.USBD_CDC_GetHSCfgDesc) referenced from usbd_cdc.o(.data.USBD_CDC)
  - USBD_CDC_GetOtherSpeedCfgDesc from usbd_cdc.o(.text.USBD_CDC_GetOtherSpeedCfgDesc) referenced from usbd_cdc.o(.data.USBD_CDC)
  - USBD_CDC_Init from usbd_cdc.o(.text.USBD_CDC_Init) referenced from usbd_cdc.o(.data.USBD_CDC)
  - USBD_CDC_Setup from usbd_cdc.o(.text.USBD_CDC_Setup) referenced from usbd_cdc.o(.data.USBD_CDC)
  - USBD_FS_ConfigStrDescriptor from usbd_desc.o(.text.USBD_FS_ConfigStrDescriptor) referenced from usbd_desc.o(.data.FS_Desc)
  - USBD_FS_DeviceDescriptor from usbd_desc.o(.text.USBD_FS_DeviceDescriptor) referenced from usbd_desc.o(.data.FS_Desc)
  - USBD_FS_InterfaceStrDescriptor from usbd_desc.o(.text.USBD_FS_InterfaceStrDescriptor) referenced from usbd_desc.o(.data.FS_Desc)
  - USBD_FS_LangIDStrDescriptor from usbd_desc.o(.text.USBD_FS_LangIDStrDescriptor) referenced from usbd_desc.o(.data.FS_Desc)
  - USBD_FS_ManufacturerStrDescriptor from usbd_desc.o(.text.USBD_FS_ManufacturerStrDescriptor) referenced from usbd_desc.o(.data.FS_Desc)
  - USBD_FS_ProductStrDescriptor from usbd_desc.o(.text.USBD_FS_ProductStrDescriptor) referenced from usbd_desc.o(.data.FS_Desc)
  - USBD_FS_SerialStrDescriptor from usbd_desc.o(.text.USBD_FS_SerialStrDescriptor) referenced from usbd_desc.o(.data.FS_Desc)
  - UsageFault_Handler from stm32f4xx_it.o(.text.UsageFault_Handler) referenced from startup_stm32f407xx.o(RESET)
  - WWDG_IRQHandler from startup_stm32f407xx.o(.text) referenced from startup_stm32f407xx.o(RESET)
  - __main from __main.o(!!!main) referenced from startup_stm32f407xx.o(.text)
  - prvIdleTask from tasks.o(.text.prvIdleTask) referenced 2 times from tasks.o(.text.vTaskStartScheduler)
  - prvTaskExitError from port.o(.text.prvTaskExitError) referenced 2 times from port.o(.text.pxPortInitialiseStack)

  ### Global Symbols

  __main (Thumb, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
  [Calls]

  - >> __rt_entry
  - >> __scatterload
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(.text)

  __scatterload (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
  [Called By]

  - >> __main

  __scatterload_rt2 (Thumb, 84 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
  [Calls]

  - >> __rt_entry

  __scatterload_rt2_thumb_only (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

  __scatterload_loop (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

  __scatterload_copy (Thumb, 26 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
  [Calls]

  - >> __scatterload_copy
  [Called By]
  - >> __scatterload_copy

  __scatterload_null (Thumb, 2 bytes, Stack size unknown bytes, __scatter.o(!!handler_null), UNUSED)

  __scatterload_zeroinit (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)

  __rt_lib_init (Thumb, 0 bytes, Stack size unknown bytes, libinit.o(.ARM.Collect$$libinit$$00000000))
  [Called By]

  - >> __rt_entry_li

  __rt_lib_init_fp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000001))
  [Calls]

  - >> _fp_init

  __rt_lib_init_alloca_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000030))

  __rt_lib_init_argv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E))

  __rt_lib_init_atexit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D))

  __rt_lib_init_clock_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000023))

  __rt_lib_init_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000034))

  __rt_lib_init_exceptions_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000032))

  __rt_lib_init_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021))

  __rt_lib_init_getenv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000025))

  __rt_lib_init_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000C))

  __rt_lib_init_lc_collate_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013))

  __rt_lib_init_lc_ctype_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015))

  __rt_lib_init_lc_monetary_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017))

  __rt_lib_init_lc_numeric_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019))

  __rt_lib_init_lc_time_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B))

  __rt_lib_init_preinit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000006))

  __rt_lib_init_rand_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000010))

  __rt_lib_init_relocate_pie_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000004))

  __rt_lib_init_return (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000035))

  __rt_lib_init_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F))

  __rt_lib_init_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000027))

  __rt_lib_init_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000E))

  __rt_lib_shutdown (Thumb, 0 bytes, Stack size unknown bytes, libshutdown.o(.ARM.Collect$$libshutdown$$00000000))
  [Called By]

  - >> __rt_exit_ls

  __rt_lib_shutdown_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000002))

  __rt_lib_shutdown_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000007))

  __rt_lib_shutdown_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F))

  __rt_lib_shutdown_return (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000010))

  __rt_lib_shutdown_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000A))

  __rt_lib_shutdown_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000004))

  __rt_lib_shutdown_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C))

  __rt_entry (Thumb, 0 bytes, Stack size unknown bytes, __rtentry.o(.ARM.Collect$$rtentry$$00000000))
  [Called By]

  - >> __main
  - >> __scatterload_rt2

  __rt_entry_presh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000002))

  __rt_entry_sh (Thumb, 0 bytes, Stack size unknown bytes, __rtentry4.o(.ARM.Collect$$rtentry$$00000004))
  [Stack]

  - Max Depth = 8 + Unknown Stack Size
  - Call Chain = __rt_entry_sh ⇒ __user_setup_stackheap
  [Calls]
  - >> __user_setup_stackheap

  __rt_entry_li (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000A))
  [Calls]

  - >> __rt_lib_init

  __rt_entry_postsh_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000009))

  __rt_entry_main (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000D))
  [Stack]

  - Max Depth = 380 + Unknown Stack Size
  - Call Chain = __rt_entry_main ⇒ main ⇒ MX_FREERTOS_Init ⇒ osThreadCreate ⇒ xTaskCreate ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> main
  - >> exit

  __rt_entry_postli_1 (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000C))

  __rt_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit.o(.ARM.Collect$$rtexit$$00000000))
  [Called By]

  - >> exit

  __rt_exit_ls (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000003))
  [Calls]

  - >> __rt_lib_shutdown

  __rt_exit_prels_1 (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))

  __rt_exit_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000004))
  [Calls]

  - >> _sys_exit

  Reset_Handler (Thumb, 8 bytes, Stack size 0 bytes, startup_stm32f407xx.o(.text))
  [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_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_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)

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

  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)

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

  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)

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

  - startup_stm32f407xx.o(RESET)

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

  - startup_stm32f407xx.o(RESET)

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

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

  - startup_stm32f407xx.o(RESET)

  __user_initial_stackheap (Thumb, 0 bytes, Stack size unknown bytes, startup_stm32f407xx.o(.text))
  [Called By]

  - >> __user_setup_stackheap

  __aeabi_uldivmod (Thumb, 0 bytes, Stack size 48 bytes, lludivv7m.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = __aeabi_uldivmod
  [Called By]
  - >> HAL_RCC_GetSysClockFreq
  - >> UART_SetConfig

  _ll_udiv (Thumb, 240 bytes, Stack size 48 bytes, lludivv7m.o(.text), UNUSED)

  __aeabi_memclr4 (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text))
  [Called By]

  - >> SystemClock_Config
  - >> USBD_CDC_Init

  __aeabi_memclr8 (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED)

  __rt_memclr_w (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED)

  _memset_w (Thumb, 74 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED)

  __use_two_region_memory (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

  __rt_heap_escrow$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

  __rt_heap_expand$2region (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)

  __user_setup_stackheap (Thumb, 74 bytes, Stack size 8 bytes, sys_stackheap_outer.o(.text))
  [Stack]

  - Max Depth = 8 + Unknown Stack Size
  - Call Chain = __user_setup_stackheap
  [Calls]
  - >> __user_initial_stackheap
  - >> __user_perproc_libspace
  [Called By]
  - >> __rt_entry_sh

  exit (Thumb, 18 bytes, Stack size 8 bytes, exit.o(.text))
  [Stack]

  - Max Depth = 8 + Unknown Stack Size
  - Call Chain = exit
  [Calls]
  - >> __rt_exit
  [Called By]
  - >> __rt_entry_main

  __user_libspace (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)

  __user_perproc_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text))
  [Called By]

  - >> __user_setup_stackheap

  __user_perthread_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)

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

  - >> __rt_exit_exit

  __I$use$semihosting (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)

  __use_no_semihosting_swi (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)

  __semihosting_library_function (Thumb, 0 bytes, Stack size unknown bytes, indicate_semi.o(.text), UNUSED)

  BusFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text.BusFault_Handler))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  CAN1_RX0_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.CAN1_RX0_IRQHandler))
  [Stack]

  - Max Depth = 60
  - Call Chain = CAN1_RX0_IRQHandler ⇒ HAL_CAN_IRQHandler ⇒ HAL_CAN_ErrorCallback
  [Calls]
  - >> HAL_CAN_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

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

  - Max Depth = 200
  - Call Chain = CAN_Task ⇒ MX_USB_DEVICE_Init ⇒ USBD_Init ⇒ USBD_LL_Init ⇒ HAL_PCD_Init ⇒ HAL_PCD_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> osDelay
  - >> MX_USB_DEVICE_Init
  [Address Reference Count : 1]
  - freertos.o(.rodata..L__const.MX_FREERTOS_Init.os_thread_def_Start_CAN_Task)

  DMA1_Stream1_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA1_Stream1_IRQHandler))
  [Stack]

  - Max Depth = 40
  - Call Chain = DMA1_Stream1_IRQHandler ⇒ HAL_DMA_IRQHandler
  [Calls]
  - >> HAL_DMA_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  DMA1_Stream7_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA1_Stream7_IRQHandler))
  [Stack]

  - Max Depth = 40
  - Call Chain = DMA1_Stream7_IRQHandler ⇒ HAL_DMA_IRQHandler
  [Calls]
  - >> HAL_DMA_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  DMA2_Stream1_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA2_Stream1_IRQHandler))
  [Stack]

  - Max Depth = 40
  - Call Chain = DMA2_Stream1_IRQHandler ⇒ HAL_DMA_IRQHandler
  [Calls]
  - >> HAL_DMA_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  DMA2_Stream2_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA2_Stream2_IRQHandler))
  [Stack]

  - Max Depth = 40
  - Call Chain = DMA2_Stream2_IRQHandler ⇒ HAL_DMA_IRQHandler
  [Calls]
  - >> HAL_DMA_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  DMA2_Stream3_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA2_Stream3_IRQHandler))
  [Stack]

  - Max Depth = 40
  - Call Chain = DMA2_Stream3_IRQHandler ⇒ HAL_DMA_IRQHandler
  [Calls]
  - >> HAL_DMA_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  DMA2_Stream6_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA2_Stream6_IRQHandler))
  [Stack]

  - Max Depth = 40
  - Call Chain = DMA2_Stream6_IRQHandler ⇒ HAL_DMA_IRQHandler
  [Calls]
  - >> HAL_DMA_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  DMA2_Stream7_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.DMA2_Stream7_IRQHandler))
  [Stack]

  - Max Depth = 40
  - Call Chain = DMA2_Stream7_IRQHandler ⇒ HAL_DMA_IRQHandler
  [Calls]
  - >> HAL_DMA_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  DebugMon_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text.DebugMon_Handler))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  EXTI0_IRQHandler (Thumb, 10 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.EXTI0_IRQHandler))
  [Stack]

  - Max Depth = 28
  - Call Chain = EXTI0_IRQHandler ⇒ HAL_GPIO_EXTI_IRQHandler ⇒ HAL_GPIO_EXTI_Callback
  [Calls]
  - >> HAL_GPIO_EXTI_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  EXTI3_IRQHandler (Thumb, 10 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.EXTI3_IRQHandler))
  [Stack]

  - Max Depth = 28
  - Call Chain = EXTI3_IRQHandler ⇒ HAL_GPIO_EXTI_IRQHandler ⇒ HAL_GPIO_EXTI_Callback
  [Calls]
  - >> HAL_GPIO_EXTI_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  EXTI4_IRQHandler (Thumb, 10 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.EXTI4_IRQHandler))
  [Stack]

  - Max Depth = 28
  - Call Chain = EXTI4_IRQHandler ⇒ HAL_GPIO_EXTI_IRQHandler ⇒ HAL_GPIO_EXTI_Callback
  [Calls]
  - >> HAL_GPIO_EXTI_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  EXTI9_5_IRQHandler (Thumb, 10 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.EXTI9_5_IRQHandler))
  [Stack]

  - Max Depth = 28
  - Call Chain = EXTI9_5_IRQHandler ⇒ HAL_GPIO_EXTI_IRQHandler ⇒ HAL_GPIO_EXTI_Callback
  [Calls]
  - >> HAL_GPIO_EXTI_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

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

  - >> HAL_UART_MspInit
  - >> HAL_SPI_MspInit
  - >> HAL_RTC_MspInit
  - >> HAL_I2C_MspInit
  - >> MX_USB_DEVICE_Init
  - >> MX_TIM10_Init
  - >> MX_TIM8_Init
  - >> MX_TIM5_Init
  - >> MX_TIM4_Init
  - >> MX_TIM3_Init
  - >> MX_TIM1_Init
  - >> MX_RTC_Init
  - >> MX_ADC3_Init
  - >> MX_ADC1_Init
  - >> MX_CRC_Init
  - >> MX_USART3_UART_Init
  - >> MX_SPI2_Init
  - >> MX_SPI1_Init
  - >> MX_I2C3_Init
  - >> MX_I2C2_Init
  - >> MX_I2C1_Init
  - >> MX_CAN1_Init
  - >> MX_USART6_UART_Init
  - >> MX_USART1_UART_Init
  - >> MX_CAN2_Init
  - >> SystemClock_Config
  - >> USBD_LL_Init
  - >> HAL_PCD_ResetCallback

  HAL_ADC_ConfigChannel (Thumb, 536 bytes, Stack size 20 bytes, stm32f4xx_hal_adc.o(.text.HAL_ADC_ConfigChannel))
  [Stack]

  - Max Depth = 20
  - Call Chain = HAL_ADC_ConfigChannel
  [Called By]
  - >> MX_ADC3_Init
  - >> MX_ADC1_Init

  HAL_ADC_Init (Thumb, 168 bytes, Stack size 24 bytes, stm32f4xx_hal_adc.o(.text.HAL_ADC_Init))
  [Stack]

  - Max Depth = 128
  - Call Chain = HAL_ADC_Init ⇒ HAL_ADC_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_ADC_MspInit
  - >> ADC_Init
  [Called By]
  - >> MX_ADC3_Init
  - >> MX_ADC1_Init

  HAL_ADC_MspInit (Thumb, 194 bytes, Stack size 48 bytes, adc.o(.text.HAL_ADC_MspInit))
  [Stack]

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

  HAL_CAN_ErrorCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_ErrorCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_ErrorCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CAN_IRQHandler (Thumb, 1010 bytes, Stack size 48 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_IRQHandler))
  [Stack]

  - Max Depth = 52
  - Call Chain = HAL_CAN_IRQHandler ⇒ HAL_CAN_ErrorCallback
  [Calls]
  - >> HAL_CAN_ErrorCallback
  - >> HAL_CAN_WakeUpFromRxMsgCallback
  - >> HAL_CAN_SleepCallback
  - >> HAL_CAN_RxFifo1MsgPendingCallback
  - >> HAL_CAN_RxFifo1FullCallback
  - >> HAL_CAN_RxFifo0MsgPendingCallback
  - >> HAL_CAN_RxFifo0FullCallback
  - >> HAL_CAN_TxMailbox2AbortCallback
  - >> HAL_CAN_TxMailbox2CompleteCallback
  - >> HAL_CAN_TxMailbox1AbortCallback
  - >> HAL_CAN_TxMailbox1CompleteCallback
  - >> HAL_CAN_TxMailbox0AbortCallback
  - >> HAL_CAN_TxMailbox0CompleteCallback
  [Called By]
  - >> CAN1_RX0_IRQHandler

  HAL_CAN_Init (Thumb, 478 bytes, Stack size 24 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_Init))
  [Stack]

  - Max Depth = 152
  - Call Chain = HAL_CAN_Init ⇒ HAL_CAN_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_GetTick
  - >> HAL_CAN_MspInit
  [Called By]
  - >> MX_CAN1_Init
  - >> MX_CAN2_Init

  HAL_CAN_MspInit (Thumb, 368 bytes, Stack size 64 bytes, can.o(.text.HAL_CAN_MspInit))
  [Stack]

  - Max Depth = 128
  - Call Chain = HAL_CAN_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_NVIC_EnableIRQ
  - >> HAL_NVIC_SetPriority
  - >> HAL_GPIO_Init
  [Called By]
  - >> HAL_CAN_Init

  HAL_CAN_RxFifo0FullCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_RxFifo0FullCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_RxFifo0FullCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CAN_RxFifo0MsgPendingCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_RxFifo0MsgPendingCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_RxFifo0MsgPendingCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CAN_RxFifo1FullCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_RxFifo1FullCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_RxFifo1FullCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CAN_RxFifo1MsgPendingCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_RxFifo1MsgPendingCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_RxFifo1MsgPendingCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CAN_SleepCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_SleepCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_SleepCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CAN_TxMailbox0AbortCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_TxMailbox0AbortCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_TxMailbox0AbortCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CAN_TxMailbox0CompleteCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_TxMailbox0CompleteCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_TxMailbox0CompleteCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CAN_TxMailbox1AbortCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_TxMailbox1AbortCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_TxMailbox1AbortCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CAN_TxMailbox1CompleteCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_TxMailbox1CompleteCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_TxMailbox1CompleteCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CAN_TxMailbox2AbortCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_TxMailbox2AbortCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_TxMailbox2AbortCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CAN_TxMailbox2CompleteCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_TxMailbox2CompleteCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_TxMailbox2CompleteCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CAN_WakeUpFromRxMsgCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_can.o(.text.HAL_CAN_WakeUpFromRxMsgCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_CAN_WakeUpFromRxMsgCallback
  [Called By]
  - >> HAL_CAN_IRQHandler

  HAL_CRC_Init (Thumb, 64 bytes, Stack size 16 bytes, stm32f4xx_hal_crc.o(.text.HAL_CRC_Init))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_CRC_Init ⇒ HAL_CRC_MspInit
  [Calls]
  - >> HAL_CRC_MspInit
  [Called By]
  - >> MX_CRC_Init

  HAL_CRC_MspInit (Thumb, 62 bytes, Stack size 8 bytes, crc.o(.text.HAL_CRC_MspInit))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_CRC_MspInit
  [Called By]
  - >> HAL_CRC_Init

  HAL_DMA_Abort (Thumb, 236 bytes, Stack size 24 bytes, stm32f4xx_hal_dma.o(.text.HAL_DMA_Abort))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_DMA_Abort
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_UART_IRQHandler

  HAL_DMA_Abort_IT (Thumb, 68 bytes, Stack size 8 bytes, stm32f4xx_hal_dma.o(.text.HAL_DMA_Abort_IT))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_DMA_Abort_IT
  [Called By]
  - >> HAL_UART_IRQHandler

  HAL_DMA_IRQHandler (Thumb, 798 bytes, Stack size 32 bytes, stm32f4xx_hal_dma.o(.text.HAL_DMA_IRQHandler))
  [Stack]

  - Max Depth = 32
  - Call Chain = HAL_DMA_IRQHandler
  [Called By]
  - >> DMA2_Stream7_IRQHandler
  - >> DMA2_Stream6_IRQHandler
  - >> DMA2_Stream3_IRQHandler
  - >> DMA2_Stream2_IRQHandler
  - >> DMA2_Stream1_IRQHandler
  - >> DMA1_Stream7_IRQHandler
  - >> DMA1_Stream1_IRQHandler

  HAL_DMA_Init (Thumb, 366 bytes, Stack size 32 bytes, stm32f4xx_hal_dma.o(.text.HAL_DMA_Init))
  [Stack]

  - Max Depth = 56
  - Call Chain = HAL_DMA_Init ⇒ DMA_CheckFifoParam
  [Calls]
  - >> HAL_GetTick
  - >> DMA_CalcBaseAndBitshift
  - >> DMA_CheckFifoParam
  [Called By]
  - >> HAL_UART_MspInit
  - >> HAL_SPI_MspInit
  - >> HAL_I2C_MspInit

  HAL_Delay (Thumb, 66 bytes, Stack size 24 bytes, stm32f4xx_hal.o(.text.HAL_Delay))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_Delay
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> USB_SetCurrentMode

  HAL_GPIO_EXTI_Callback (Thumb, 10 bytes, Stack size 4 bytes, stm32f4xx_hal_gpio.o(.text.HAL_GPIO_EXTI_Callback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_GPIO_EXTI_Callback
  [Called By]
  - >> HAL_GPIO_EXTI_IRQHandler

  HAL_GPIO_EXTI_IRQHandler (Thumb, 56 bytes, Stack size 16 bytes, stm32f4xx_hal_gpio.o(.text.HAL_GPIO_EXTI_IRQHandler))
  [Stack]

  - Max Depth = 20
  - Call Chain = HAL_GPIO_EXTI_IRQHandler ⇒ HAL_GPIO_EXTI_Callback
  [Calls]
  - >> HAL_GPIO_EXTI_Callback
  [Called By]
  - >> EXTI9_5_IRQHandler
  - >> EXTI4_IRQHandler
  - >> EXTI3_IRQHandler
  - >> EXTI0_IRQHandler

  HAL_GPIO_Init (Thumb, 950 bytes, Stack size 56 bytes, stm32f4xx_hal_gpio.o(.text.HAL_GPIO_Init))
  [Stack]

  - Max Depth = 56
  - Call Chain = HAL_GPIO_Init
  [Called By]
  - >> HAL_UART_MspInit
  - >> HAL_TIM_MspPostInit
  - >> HAL_SPI_MspInit
  - >> HAL_I2C_MspInit
  - >> HAL_CAN_MspInit
  - >> HAL_ADC_MspInit
  - >> MX_GPIO_Init
  - >> HAL_PCD_MspInit

  HAL_GPIO_WritePin (Thumb, 46 bytes, Stack size 8 bytes, stm32f4xx_hal_gpio.o(.text.HAL_GPIO_WritePin))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_GPIO_WritePin
  [Called By]
  - >> MX_GPIO_Init

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

  - >> HAL_Delay
  - >> HAL_RCCEx_PeriphCLKConfig
  - >> HAL_DMA_Init
  - >> HAL_CAN_Init
  - >> HAL_RCC_ClockConfig
  - >> HAL_RCC_OscConfig
  - >> HAL_RTC_WaitForSynchro
  - >> RTC_EnterInitMode
  - >> HAL_DMA_Abort

  HAL_I2C_Init (Thumb, 676 bytes, Stack size 64 bytes, stm32f4xx_hal_i2c.o(.text.HAL_I2C_Init))
  [Stack]

  - Max Depth = 208
  - Call Chain = HAL_I2C_Init ⇒ HAL_I2C_MspInit ⇒ HAL_DMA_Init ⇒ DMA_CheckFifoParam
  [Calls]
  - >> HAL_RCC_GetPCLK1Freq
  - >> HAL_I2C_MspInit
  [Called By]
  - >> MX_I2C3_Init
  - >> MX_I2C2_Init
  - >> MX_I2C1_Init

  HAL_I2C_MspInit (Thumb, 566 bytes, Stack size 88 bytes, i2c.o(.text.HAL_I2C_MspInit))
  [Stack]

  - Max Depth = 144
  - Call Chain = HAL_I2C_MspInit ⇒ HAL_DMA_Init ⇒ DMA_CheckFifoParam
  [Calls]
  - >> HAL_DMA_Init
  - >> HAL_GPIO_Init
  - >> Error_Handler
  [Called By]
  - >> HAL_I2C_Init

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

  - >> HAL_TIM_PeriodElapsedCallback

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

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

  HAL_InitTick (Thumb, 236 bytes, Stack size 56 bytes, stm32f4xx_hal_timebase_tim.o(.text.HAL_InitTick))
  [Stack]

  - Max Depth = 120
  - Call Chain = HAL_InitTick ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_TIM_Base_Start_IT
  - >> HAL_RCC_GetPCLK1Freq
  - >> HAL_RCC_GetClockConfig
  - >> HAL_TIM_Base_Init
  - >> HAL_NVIC_EnableIRQ
  - >> HAL_NVIC_SetPriority
  [Called By]
  - >> HAL_RCC_ClockConfig
  - >> HAL_Init

  HAL_MspInit (Thumb, 88 bytes, Stack size 16 bytes, stm32f4xx_hal_msp.o(.text.HAL_MspInit))
  [Stack]

  - Max Depth = 80
  - Call Chain = HAL_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_NVIC_SetPriority
  [Called By]
  - >> HAL_Init

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

  - Max Depth = 20
  - Call Chain = HAL_NVIC_EnableIRQ ⇒ __NVIC_EnableIRQ
  [Calls]
  - >> __NVIC_EnableIRQ
  [Called By]
  - >> HAL_InitTick
  - >> HAL_UART_MspInit
  - >> HAL_CAN_MspInit
  - >> MX_DMA_Init
  - >> MX_GPIO_Init
  - >> HAL_PCD_MspInit

  HAL_NVIC_SetPriority (Thumb, 50 bytes, Stack size 32 bytes, stm32f4xx_hal_cortex.o(.text.HAL_NVIC_SetPriority))
  [Stack]

  - Max Depth = 64
  - Call Chain = HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> __NVIC_SetPriority
  - >> NVIC_EncodePriority
  - >> __NVIC_GetPriorityGrouping
  [Called By]
  - >> HAL_InitTick
  - >> HAL_MspInit
  - >> HAL_UART_MspInit
  - >> HAL_CAN_MspInit
  - >> MX_DMA_Init
  - >> MX_GPIO_Init
  - >> HAL_PCD_MspInit

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

  - Max Depth = 28
  - Call Chain = HAL_NVIC_SetPriorityGrouping ⇒ __NVIC_SetPriorityGrouping
  [Calls]
  - >> __NVIC_SetPriorityGrouping
  [Called By]
  - >> HAL_Init

  HAL_PCDEx_LPM_Callback (Thumb, 12 bytes, Stack size 8 bytes, stm32f4xx_hal_pcd_ex.o(.text.HAL_PCDEx_LPM_Callback))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_PCDEx_LPM_Callback
  [Called By]
  - >> HAL_PCD_IRQHandler

  HAL_PCDEx_SetRxFiFo (Thumb, 24 bytes, Stack size 8 bytes, stm32f4xx_hal_pcd_ex.o(.text.HAL_PCDEx_SetRxFiFo))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_PCDEx_SetRxFiFo
  [Called By]
  - >> USBD_LL_Init

  HAL_PCDEx_SetTxFiFo (Thumb, 156 bytes, Stack size 16 bytes, stm32f4xx_hal_pcd_ex.o(.text.HAL_PCDEx_SetTxFiFo))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_PCDEx_SetTxFiFo
  [Called By]
  - >> USBD_LL_Init

  HAL_PCD_ConnectCallback (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(.text.HAL_PCD_ConnectCallback))
  [Calls]

  - >> USBD_LL_DevConnected
  [Called By]
  - >> HAL_PCD_IRQHandler

  HAL_PCD_DataInStageCallback (Thumb, 20 bytes, Stack size 0 bytes, usbd_conf.o(.text.HAL_PCD_DataInStageCallback))
  [Stack]

  - Max Depth = 144
  - Call Chain = HAL_PCD_DataInStageCallback ⇒ USBD_LL_DataInStage ⇒ USBD_CtlReceiveStatus ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_LL_DataInStage
  [Called By]
  - >> HAL_PCD_IRQHandler

  HAL_PCD_DataOutStageCallback (Thumb, 22 bytes, Stack size 0 bytes, usbd_conf.o(.text.HAL_PCD_DataOutStageCallback))
  [Stack]

  - Max Depth = 136
  - Call Chain = HAL_PCD_DataOutStageCallback ⇒ USBD_LL_DataOutStage ⇒ USBD_CtlSendStatus ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_LL_DataOutStage
  [Called By]
  - >> PCD_EP_OutXfrComplete_int

  HAL_PCD_DisconnectCallback (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(.text.HAL_PCD_DisconnectCallback))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_PCD_DisconnectCallback ⇒ USBD_LL_DevDisconnected
  [Calls]
  - >> USBD_LL_DevDisconnected
  [Called By]
  - >> HAL_PCD_IRQHandler

  HAL_PCD_EP_Abort (Thumb, 94 bytes, Stack size 24 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_Abort))
  [Stack]

  - Max Depth = 44
  - Call Chain = HAL_PCD_EP_Abort ⇒ USB_EPStopXfer
  [Calls]
  - >> USB_EPStopXfer
  [Called By]
  - >> HAL_PCD_IRQHandler

  HAL_PCD_EP_Close (Thumb, 168 bytes, Stack size 24 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_Close))
  [Stack]

  - Max Depth = 40
  - Call Chain = HAL_PCD_EP_Close ⇒ USB_DeactivateEndpoint
  [Calls]
  - >> USB_DeactivateEndpoint
  [Called By]
  - >> USBD_LL_CloseEP

  HAL_PCD_EP_ClrStall (Thumb, 200 bytes, Stack size 24 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_ClrStall))
  [Stack]

  - Max Depth = 40
  - Call Chain = HAL_PCD_EP_ClrStall ⇒ USB_EPClearStall
  [Calls]
  - >> USB_EPClearStall
  [Called By]
  - >> USBD_LL_ClearStallEP

  HAL_PCD_EP_GetRxCount (Thumb, 34 bytes, Stack size 8 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_GetRxCount))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_PCD_EP_GetRxCount
  [Called By]
  - >> USBD_LL_GetRxDataSize

  HAL_PCD_EP_Open (Thumb, 238 bytes, Stack size 32 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_Open))
  [Stack]

  - Max Depth = 48
  - Call Chain = HAL_PCD_EP_Open ⇒ USB_ActivateEndpoint
  [Calls]
  - >> USB_ActivateEndpoint
  [Called By]
  - >> USBD_LL_OpenEP

  HAL_PCD_EP_Receive (Thumb, 108 bytes, Stack size 32 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_Receive))
  [Stack]

  - Max Depth = 112
  - Call Chain = HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USB_EPStartXfer
  [Called By]
  - >> USBD_LL_PrepareReceive

  HAL_PCD_EP_SetStall (Thumb, 222 bytes, Stack size 24 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_SetStall))
  [Stack]

  - Max Depth = 48
  - Call Chain = HAL_PCD_EP_SetStall ⇒ USB_EP0_OutStart
  [Calls]
  - >> USB_EPSetStall
  - >> USB_EP0_OutStart
  [Called By]
  - >> USBD_LL_StallEP

  HAL_PCD_EP_Transmit (Thumb, 108 bytes, Stack size 32 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_EP_Transmit))
  [Stack]

  - Max Depth = 112
  - Call Chain = HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USB_EPStartXfer
  [Called By]
  - >> USBD_LL_Transmit

  HAL_PCD_IRQHandler (Thumb, 2106 bytes, Stack size 56 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_IRQHandler))
  [Stack]

  - Max Depth = 256
  - Call Chain = HAL_PCD_IRQHandler ⇒ PCD_EP_OutSetupPacket_int ⇒ HAL_PCD_SetupStageCallback ⇒ USBD_LL_SetupStage ⇒ USBD_StdDevReq ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> HAL_PCD_EP_Abort
  - >> USB_SetTurnaroundTime
  - >> HAL_RCC_GetHCLKFreq
  - >> USB_GetDevSpeed
  - >> USB_ActivateSetup
  - >> HAL_PCDEx_LPM_Callback
  - >> USB_EP0_OutStart
  - >> USB_ReadDevInEPInterrupt
  - >> USB_ReadDevAllInEpInterrupt
  - >> USB_ReadDevOutEPInterrupt
  - >> USB_ReadDevAllOutEpInterrupt
  - >> USB_ReadPacket
  - >> USB_ReadInterrupts
  - >> USB_GetMode
  - >> USB_FlushTxFifo
  - >> PCD_WriteEmptyTxFifo
  - >> PCD_EP_OutSetupPacket_int
  - >> PCD_EP_OutXfrComplete_int
  - >> HAL_PCD_DisconnectCallback
  - >> HAL_PCD_ConnectCallback
  - >> HAL_PCD_ISOINIncompleteCallback
  - >> HAL_PCD_ISOOUTIncompleteCallback
  - >> HAL_PCD_ResumeCallback
  - >> HAL_PCD_SuspendCallback
  - >> HAL_PCD_ResetCallback
  - >> HAL_PCD_SOFCallback
  - >> HAL_PCD_DataInStageCallback
  [Called By]
  - >> OTG_FS_IRQHandler

  HAL_PCD_ISOINIncompleteCallback (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(.text.HAL_PCD_ISOINIncompleteCallback))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_PCD_ISOINIncompleteCallback ⇒ USBD_LL_IsoINIncomplete
  [Calls]
  - >> USBD_LL_IsoINIncomplete
  [Called By]
  - >> HAL_PCD_IRQHandler

  HAL_PCD_ISOOUTIncompleteCallback (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(.text.HAL_PCD_ISOOUTIncompleteCallback))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_PCD_ISOOUTIncompleteCallback ⇒ USBD_LL_IsoOUTIncomplete
  [Calls]
  - >> USBD_LL_IsoOUTIncomplete
  [Called By]
  - >> HAL_PCD_IRQHandler

  HAL_PCD_Init (Thumb, 578 bytes, Stack size 64 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_Init))
  [Stack]

  - Max Depth = 168
  - Call Chain = HAL_PCD_Init ⇒ HAL_PCD_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> USB_DevDisconnect
  - >> USB_DevInit
  - >> USB_SetCurrentMode
  - >> USB_CoreInit
  - >> USB_DisableGlobalInt
  - >> HAL_PCD_MspInit
  [Called By]
  - >> USBD_LL_Init

  HAL_PCD_MspInit (Thumb, 136 bytes, Stack size 40 bytes, usbd_conf.o(.text.HAL_PCD_MspInit))
  [Stack]

  - Max Depth = 104
  - Call Chain = HAL_PCD_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_NVIC_EnableIRQ
  - >> HAL_NVIC_SetPriority
  - >> HAL_GPIO_Init
  [Called By]
  - >> HAL_PCD_Init

  HAL_PCD_ResetCallback (Thumb, 38 bytes, Stack size 8 bytes, usbd_conf.o(.text.HAL_PCD_ResetCallback))
  [Stack]

  - Max Depth = 88
  - Call Chain = HAL_PCD_ResetCallback ⇒ USBD_LL_Reset ⇒ USBD_LL_OpenEP ⇒ HAL_PCD_EP_Open ⇒ USB_ActivateEndpoint
  [Calls]
  - >> Error_Handler
  - >> USBD_LL_Reset
  - >> USBD_LL_SetSpeed
  [Called By]
  - >> HAL_PCD_IRQHandler

  HAL_PCD_ResumeCallback (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(.text.HAL_PCD_ResumeCallback))
  [Calls]

  - >> USBD_LL_Resume
  [Called By]
  - >> HAL_PCD_IRQHandler

  HAL_PCD_SOFCallback (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(.text.HAL_PCD_SOFCallback))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_PCD_SOFCallback ⇒ USBD_LL_SOF
  [Calls]
  - >> USBD_LL_SOF
  [Called By]
  - >> HAL_PCD_IRQHandler

  HAL_PCD_SetAddress (Thumb, 92 bytes, Stack size 24 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_SetAddress))
  [Stack]

  - Max Depth = 36
  - Call Chain = HAL_PCD_SetAddress ⇒ USB_SetDevAddress
  [Calls]
  - >> USB_SetDevAddress
  [Called By]
  - >> USBD_LL_SetUSBAddress

  HAL_PCD_SetupStageCallback (Thumb, 14 bytes, Stack size 0 bytes, usbd_conf.o(.text.HAL_PCD_SetupStageCallback))
  [Stack]

  - Max Depth = 168
  - Call Chain = HAL_PCD_SetupStageCallback ⇒ USBD_LL_SetupStage ⇒ USBD_StdDevReq ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_LL_SetupStage
  [Called By]
  - >> PCD_EP_OutSetupPacket_int

  HAL_PCD_Start (Thumb, 124 bytes, Stack size 24 bytes, stm32f4xx_hal_pcd.o(.text.HAL_PCD_Start))
  [Stack]

  - Max Depth = 32
  - Call Chain = HAL_PCD_Start ⇒ USB_DevConnect
  [Calls]
  - >> USB_DevConnect
  - >> USB_EnableGlobalInt
  [Called By]
  - >> USBD_LL_Start

  HAL_PCD_SuspendCallback (Thumb, 52 bytes, Stack size 8 bytes, usbd_conf.o(.text.HAL_PCD_SuspendCallback))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_PCD_SuspendCallback
  [Calls]
  - >> USBD_LL_Suspend
  [Called By]
  - >> HAL_PCD_IRQHandler

  HAL_RCCEx_PeriphCLKConfig (Thumb, 568 bytes, Stack size 32 bytes, stm32f4xx_hal_rcc_ex.o(.text.HAL_RCCEx_PeriphCLKConfig))
  [Stack]

  - Max Depth = 32
  - Call Chain = HAL_RCCEx_PeriphCLKConfig
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_RTC_MspInit

  HAL_RCC_ClockConfig (Thumb, 610 bytes, Stack size 24 bytes, stm32f4xx_hal_rcc.o(.text.HAL_RCC_ClockConfig))
  [Stack]

  - Max Depth = 144
  - Call Chain = HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_RCC_GetSysClockFreq
  - >> HAL_GetTick
  - >> HAL_InitTick
  [Called By]
  - >> SystemClock_Config

  HAL_RCC_GetClockConfig (Thumb, 84 bytes, Stack size 8 bytes, stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetClockConfig))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_RCC_GetClockConfig
  [Called By]
  - >> HAL_InitTick

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

  - >> HAL_RCC_GetPCLK2Freq
  - >> HAL_RCC_GetPCLK1Freq
  - >> HAL_PCD_IRQHandler

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

  - Max Depth = 8
  - Call Chain = HAL_RCC_GetPCLK1Freq
  [Calls]
  - >> HAL_RCC_GetHCLKFreq
  [Called By]
  - >> HAL_InitTick
  - >> HAL_I2C_Init
  - >> UART_SetConfig

  HAL_RCC_GetPCLK2Freq (Thumb, 34 bytes, Stack size 8 bytes, stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetPCLK2Freq))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_RCC_GetPCLK2Freq
  [Calls]
  - >> HAL_RCC_GetHCLKFreq
  [Called By]
  - >> UART_SetConfig

  HAL_RCC_GetSysClockFreq (Thumb, 230 bytes, Stack size 32 bytes, stm32f4xx_hal_rcc.o(.text.HAL_RCC_GetSysClockFreq))
  [Stack]

  - Max Depth = 80
  - Call Chain = HAL_RCC_GetSysClockFreq ⇒ __aeabi_uldivmod
  [Calls]
  - >> __aeabi_uldivmod
  [Called By]
  - >> HAL_RCC_ClockConfig

  HAL_RCC_OscConfig (Thumb, 1726 bytes, Stack size 32 bytes, stm32f4xx_hal_rcc.o(.text.HAL_RCC_OscConfig))
  [Stack]

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

  HAL_RTC_Init (Thumb, 268 bytes, Stack size 24 bytes, stm32f4xx_hal_rtc.o(.text.HAL_RTC_Init))
  [Stack]

  - Max Depth = 88
  - Call Chain = HAL_RTC_Init ⇒ HAL_RTC_MspInit ⇒ HAL_RCCEx_PeriphCLKConfig
  [Calls]
  - >> HAL_RTC_MspInit
  - >> RTC_ExitInitMode
  - >> RTC_EnterInitMode
  [Called By]
  - >> MX_RTC_Init

  HAL_RTC_MspInit (Thumb, 78 bytes, Stack size 32 bytes, rtc.o(.text.HAL_RTC_MspInit))
  [Stack]

  - Max Depth = 64
  - Call Chain = HAL_RTC_MspInit ⇒ HAL_RCCEx_PeriphCLKConfig
  [Calls]
  - >> HAL_RCCEx_PeriphCLKConfig
  - >> Error_Handler
  [Called By]
  - >> HAL_RTC_Init

  HAL_RTC_WaitForSynchro (Thumb, 88 bytes, Stack size 24 bytes, stm32f4xx_hal_rtc.o(.text.HAL_RTC_WaitForSynchro))
  [Stack]

  - Max Depth = 24
  - Call Chain = HAL_RTC_WaitForSynchro
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> RTC_ExitInitMode

  HAL_SPI_Init (Thumb, 258 bytes, Stack size 24 bytes, stm32f4xx_hal_spi.o(.text.HAL_SPI_Init))
  [Stack]

  - Max Depth = 160
  - Call Chain = HAL_SPI_Init ⇒ HAL_SPI_MspInit ⇒ HAL_DMA_Init ⇒ DMA_CheckFifoParam
  [Calls]
  - >> HAL_SPI_MspInit
  [Called By]
  - >> MX_SPI2_Init
  - >> MX_SPI1_Init

  HAL_SPI_MspInit (Thumb, 530 bytes, Stack size 80 bytes, spi.o(.text.HAL_SPI_MspInit))
  [Stack]

  - Max Depth = 136
  - Call Chain = HAL_SPI_MspInit ⇒ HAL_DMA_Init ⇒ DMA_CheckFifoParam
  [Calls]
  - >> HAL_DMA_Init
  - >> HAL_GPIO_Init
  - >> Error_Handler
  [Called By]
  - >> HAL_SPI_Init

  HAL_TIMEx_BreakCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_BreakCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIMEx_BreakCallback
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_TIMEx_CommutCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_CommutCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIMEx_CommutCallback
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_TIMEx_ConfigBreakDeadTime (Thumb, 178 bytes, Stack size 16 bytes, stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_ConfigBreakDeadTime))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_TIMEx_ConfigBreakDeadTime
  [Called By]
  - >> MX_TIM8_Init
  - >> MX_TIM1_Init

  HAL_TIMEx_MasterConfigSynchronization (Thumb, 290 bytes, Stack size 20 bytes, stm32f4xx_hal_tim_ex.o(.text.HAL_TIMEx_MasterConfigSynchronization))
  [Stack]

  - Max Depth = 20
  - Call Chain = HAL_TIMEx_MasterConfigSynchronization
  [Called By]
  - >> MX_TIM8_Init
  - >> MX_TIM5_Init
  - >> MX_TIM4_Init
  - >> MX_TIM3_Init
  - >> MX_TIM1_Init

  HAL_TIM_Base_Init (Thumb, 156 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_Base_Init))
  [Stack]

  - Max Depth = 44
  - Call Chain = HAL_TIM_Base_Init ⇒ HAL_TIM_Base_MspInit
  [Calls]
  - >> TIM_Base_SetConfig
  - >> HAL_TIM_Base_MspInit
  [Called By]
  - >> HAL_InitTick
  - >> MX_TIM10_Init
  - >> MX_TIM8_Init
  - >> MX_TIM5_Init
  - >> MX_TIM4_Init
  - >> MX_TIM3_Init
  - >> MX_TIM1_Init

  HAL_TIM_Base_MspInit (Thumb, 340 bytes, Stack size 28 bytes, tim.o(.text.HAL_TIM_Base_MspInit))
  [Stack]

  - Max Depth = 28
  - Call Chain = HAL_TIM_Base_MspInit
  [Called By]
  - >> HAL_TIM_Base_Init

  HAL_TIM_Base_Start_IT (Thumb, 246 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_Base_Start_IT))
  [Stack]

  - Max Depth = 12
  - Call Chain = HAL_TIM_Base_Start_IT
  [Called By]
  - >> HAL_InitTick

  HAL_TIM_ConfigClockSource (Thumb, 388 bytes, Stack size 32 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_ConfigClockSource))
  [Stack]

  - Max Depth = 52
  - Call Chain = HAL_TIM_ConfigClockSource ⇒ TIM_ETR_SetConfig
  [Calls]
  - >> TIM_ETR_SetConfig
  - >> TIM_TI2_ConfigInputStage
  - >> TIM_ITRx_SetConfig
  - >> TIM_TI1_ConfigInputStage
  [Called By]
  - >> MX_TIM8_Init
  - >> MX_TIM5_Init
  - >> MX_TIM4_Init
  - >> MX_TIM3_Init
  - >> MX_TIM1_Init

  HAL_TIM_IC_CaptureCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_IC_CaptureCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIM_IC_CaptureCallback
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_TIM_IRQHandler (Thumb, 538 bytes, Stack size 24 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_IRQHandler))
  [Stack]

  - Max Depth = 40
  - Call Chain = HAL_TIM_IRQHandler ⇒ HAL_TIM_PeriodElapsedCallback
  [Calls]
  - >> HAL_TIMEx_CommutCallback
  - >> HAL_TIM_TriggerCallback
  - >> HAL_TIMEx_BreakCallback
  - >> HAL_TIM_OC_DelayElapsedCallback
  - >> HAL_TIM_IC_CaptureCallback
  - >> HAL_TIM_PWM_PulseFinishedCallback
  - >> HAL_TIM_PeriodElapsedCallback
  [Called By]
  - >> TIM2_IRQHandler

  HAL_TIM_MspPostInit (Thumb, 628 bytes, Stack size 80 bytes, tim.o(.text.HAL_TIM_MspPostInit))
  [Stack]

  - Max Depth = 136
  - Call Chain = HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_GPIO_Init
  [Called By]
  - >> MX_TIM10_Init
  - >> MX_TIM8_Init
  - >> MX_TIM5_Init
  - >> MX_TIM4_Init
  - >> MX_TIM3_Init
  - >> MX_TIM1_Init

  HAL_TIM_OC_DelayElapsedCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_OC_DelayElapsedCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIM_OC_DelayElapsedCallback
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_TIM_PWM_ConfigChannel (Thumb, 322 bytes, Stack size 32 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_ConfigChannel))
  [Stack]

  - Max Depth = 52
  - Call Chain = HAL_TIM_PWM_ConfigChannel ⇒ TIM_OC2_SetConfig
  [Calls]
  - >> TIM_OC2_SetConfig
  - >> TIM_OC4_SetConfig
  - >> TIM_OC3_SetConfig
  - >> TIM_OC1_SetConfig
  [Called By]
  - >> MX_TIM10_Init
  - >> MX_TIM8_Init
  - >> MX_TIM5_Init
  - >> MX_TIM4_Init
  - >> MX_TIM3_Init
  - >> MX_TIM1_Init

  HAL_TIM_PWM_Init (Thumb, 156 bytes, Stack size 16 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_Init))
  [Stack]

  - Max Depth = 28
  - Call Chain = HAL_TIM_PWM_Init ⇒ TIM_Base_SetConfig
  [Calls]
  - >> HAL_TIM_PWM_MspInit
  - >> TIM_Base_SetConfig
  [Called By]
  - >> MX_TIM10_Init
  - >> MX_TIM8_Init
  - >> MX_TIM5_Init
  - >> MX_TIM4_Init
  - >> MX_TIM3_Init
  - >> MX_TIM1_Init

  HAL_TIM_PWM_MspInit (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_MspInit))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIM_PWM_MspInit
  [Called By]
  - >> HAL_TIM_PWM_Init

  HAL_TIM_PWM_PulseFinishedCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_PWM_PulseFinishedCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIM_PWM_PulseFinishedCallback
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_TIM_PeriodElapsedCallback (Thumb, 28 bytes, Stack size 16 bytes, main.o(.text.HAL_TIM_PeriodElapsedCallback))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_TIM_PeriodElapsedCallback
  [Calls]
  - >> HAL_IncTick
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_TIM_TriggerCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_tim.o(.text.HAL_TIM_TriggerCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_TIM_TriggerCallback
  [Called By]
  - >> HAL_TIM_IRQHandler

  HAL_UARTEx_RxEventCallback (Thumb, 12 bytes, Stack size 8 bytes, stm32f4xx_hal_uart.o(.text.HAL_UARTEx_RxEventCallback))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_UARTEx_RxEventCallback
  [Called By]
  - >> HAL_UART_IRQHandler
  - >> UART_Receive_IT

  HAL_UART_ErrorCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_uart.o(.text.HAL_UART_ErrorCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_UART_ErrorCallback
  [Called By]
  - >> HAL_UART_IRQHandler
  - >> UART_DMAAbortOnError

  HAL_UART_IRQHandler (Thumb, 1116 bytes, Stack size 80 bytes, stm32f4xx_hal_uart.o(.text.HAL_UART_IRQHandler))
  [Stack]

  - Max Depth = 120
  - Call Chain = HAL_UART_IRQHandler ⇒ UART_Receive_IT ⇒ HAL_UARTEx_RxEventCallback
  [Calls]
  - >> HAL_DMA_Abort_IT
  - >> UART_EndRxTransfer
  - >> HAL_DMA_Abort
  - >> HAL_UARTEx_RxEventCallback
  - >> HAL_UART_ErrorCallback
  - >> UART_EndTransmit_IT
  - >> UART_Transmit_IT
  - >> UART_Receive_IT
  [Called By]
  - >> USART6_IRQHandler
  - >> USART3_IRQHandler

  HAL_UART_Init (Thumb, 158 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.HAL_UART_Init))
  [Stack]

  - Max Depth = 192
  - Call Chain = HAL_UART_Init ⇒ HAL_UART_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_UART_MspInit
  - >> UART_SetConfig
  [Called By]
  - >> MX_USART3_UART_Init
  - >> MX_USART6_UART_Init
  - >> MX_USART1_UART_Init

  HAL_UART_MspInit (Thumb, 872 bytes, Stack size 112 bytes, usart.o(.text.HAL_UART_MspInit))
  [Stack]

  - Max Depth = 176
  - Call Chain = HAL_UART_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_DMA_Init
  - >> HAL_NVIC_EnableIRQ
  - >> HAL_NVIC_SetPriority
  - >> HAL_GPIO_Init
  - >> Error_Handler
  [Called By]
  - >> HAL_UART_Init

  HAL_UART_RxCpltCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_uart.o(.text.HAL_UART_RxCpltCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_UART_RxCpltCallback
  [Called By]
  - >> UART_Receive_IT

  HAL_UART_TxCpltCallback (Thumb, 8 bytes, Stack size 4 bytes, stm32f4xx_hal_uart.o(.text.HAL_UART_TxCpltCallback))
  [Stack]

  - Max Depth = 4
  - Call Chain = HAL_UART_TxCpltCallback
  [Called By]
  - >> UART_EndTransmit_IT

  HardFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text.HardFault_Handler))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  IMU_Task (Thumb, 16 bytes, Stack size 16 bytes, freertos.o(.text.IMU_Task))
  [Stack]

  - Max Depth = 132
  - Call Chain = IMU_Task ⇒ osDelay ⇒ vTaskDelay ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> osDelay
  [Address Reference Count : 1]
  - freertos.o(.rodata..L__const.MX_FREERTOS_Init.os_thread_def_Start_IMU_Task)

  LED_Task (Thumb, 16 bytes, Stack size 16 bytes, freertos.o(.text.LED_Task))
  [Stack]

  - Max Depth = 132
  - Call Chain = LED_Task ⇒ osDelay ⇒ vTaskDelay ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> osDelay
  [Address Reference Count : 1]
  - freertos.o(.rodata..L__const.MX_FREERTOS_Init.os_thread_def_Start_LED_Task)

  MX_ADC1_Init (Thumb, 128 bytes, Stack size 32 bytes, adc.o(.text.MX_ADC1_Init))
  [Stack]

  - Max Depth = 160
  - Call Chain = MX_ADC1_Init ⇒ HAL_ADC_Init ⇒ HAL_ADC_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_ADC_ConfigChannel
  - >> HAL_ADC_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_ADC3_Init (Thumb, 128 bytes, Stack size 32 bytes, adc.o(.text.MX_ADC3_Init))
  [Stack]

  - Max Depth = 160
  - Call Chain = MX_ADC3_Init ⇒ HAL_ADC_Init ⇒ HAL_ADC_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_ADC_ConfigChannel
  - >> HAL_ADC_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_CAN1_Init (Thumb, 78 bytes, Stack size 16 bytes, can.o(.text.MX_CAN1_Init))
  [Stack]

  - Max Depth = 168
  - Call Chain = MX_CAN1_Init ⇒ HAL_CAN_Init ⇒ HAL_CAN_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_CAN_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_CAN2_Init (Thumb, 78 bytes, Stack size 16 bytes, can.o(.text.MX_CAN2_Init))
  [Stack]

  - Max Depth = 168
  - Call Chain = MX_CAN2_Init ⇒ HAL_CAN_Init ⇒ HAL_CAN_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_CAN_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_CRC_Init (Thumb, 36 bytes, Stack size 8 bytes, crc.o(.text.MX_CRC_Init))
  [Stack]

  - Max Depth = 32
  - Call Chain = MX_CRC_Init ⇒ HAL_CRC_Init ⇒ HAL_CRC_MspInit
  [Calls]
  - >> HAL_CRC_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_DMA_Init (Thumb, 206 bytes, Stack size 56 bytes, dma.o(.text.MX_DMA_Init))
  [Stack]

  - Max Depth = 120
  - Call Chain = MX_DMA_Init ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_NVIC_EnableIRQ
  - >> HAL_NVIC_SetPriority
  [Called By]
  - >> main

  MX_FREERTOS_Init (Thumb, 196 bytes, Stack size 104 bytes, freertos.o(.text.MX_FREERTOS_Init))
  [Stack]

  - Max Depth = 364
  - Call Chain = MX_FREERTOS_Init ⇒ osThreadCreate ⇒ xTaskCreate ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> osThreadCreate
  [Called By]
  - >> main

  MX_GPIO_Init (Thumb, 668 bytes, Stack size 128 bytes, gpio.o(.text.MX_GPIO_Init))
  [Stack]

  - Max Depth = 192
  - Call Chain = MX_GPIO_Init ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_NVIC_EnableIRQ
  - >> HAL_NVIC_SetPriority
  - >> HAL_GPIO_Init
  - >> HAL_GPIO_WritePin
  [Called By]
  - >> main

  MX_I2C1_Init (Thumb, 72 bytes, Stack size 16 bytes, i2c.o(.text.MX_I2C1_Init))
  [Stack]

  - Max Depth = 224
  - Call Chain = MX_I2C1_Init ⇒ HAL_I2C_Init ⇒ HAL_I2C_MspInit ⇒ HAL_DMA_Init ⇒ DMA_CheckFifoParam
  [Calls]
  - >> HAL_I2C_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_I2C2_Init (Thumb, 72 bytes, Stack size 16 bytes, i2c.o(.text.MX_I2C2_Init))
  [Stack]

  - Max Depth = 224
  - Call Chain = MX_I2C2_Init ⇒ HAL_I2C_Init ⇒ HAL_I2C_MspInit ⇒ HAL_DMA_Init ⇒ DMA_CheckFifoParam
  [Calls]
  - >> HAL_I2C_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_I2C3_Init (Thumb, 72 bytes, Stack size 16 bytes, i2c.o(.text.MX_I2C3_Init))
  [Stack]

  - Max Depth = 224
  - Call Chain = MX_I2C3_Init ⇒ HAL_I2C_Init ⇒ HAL_I2C_MspInit ⇒ HAL_DMA_Init ⇒ DMA_CheckFifoParam
  [Calls]
  - >> HAL_I2C_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_RTC_Init (Thumb, 62 bytes, Stack size 16 bytes, rtc.o(.text.MX_RTC_Init))
  [Stack]

  - Max Depth = 104
  - Call Chain = MX_RTC_Init ⇒ HAL_RTC_Init ⇒ HAL_RTC_MspInit ⇒ HAL_RCCEx_PeriphCLKConfig
  [Calls]
  - >> HAL_RTC_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_SPI1_Init (Thumb, 78 bytes, Stack size 16 bytes, spi.o(.text.MX_SPI1_Init))
  [Stack]

  - Max Depth = 176
  - Call Chain = MX_SPI1_Init ⇒ HAL_SPI_Init ⇒ HAL_SPI_MspInit ⇒ HAL_DMA_Init ⇒ DMA_CheckFifoParam
  [Calls]
  - >> HAL_SPI_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_SPI2_Init (Thumb, 78 bytes, Stack size 16 bytes, spi.o(.text.MX_SPI2_Init))
  [Stack]

  - Max Depth = 176
  - Call Chain = MX_SPI2_Init ⇒ HAL_SPI_Init ⇒ HAL_SPI_MspInit ⇒ HAL_DMA_Init ⇒ DMA_CheckFifoParam
  [Calls]
  - >> HAL_SPI_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_TIM10_Init (Thumb, 142 bytes, Stack size 40 bytes, tim.o(.text.MX_TIM10_Init))
  [Stack]

  - Max Depth = 176
  - Call Chain = MX_TIM10_Init ⇒ HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_TIM_MspPostInit
  - >> HAL_TIM_PWM_ConfigChannel
  - >> HAL_TIM_PWM_Init
  - >> HAL_TIM_Base_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_TIM1_Init (Thumb, 366 bytes, Stack size 104 bytes, tim.o(.text.MX_TIM1_Init))
  [Stack]

  - Max Depth = 240
  - Call Chain = MX_TIM1_Init ⇒ HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_TIM_MspPostInit
  - >> HAL_TIMEx_ConfigBreakDeadTime
  - >> HAL_TIM_PWM_ConfigChannel
  - >> HAL_TIMEx_MasterConfigSynchronization
  - >> HAL_TIM_PWM_Init
  - >> HAL_TIM_ConfigClockSource
  - >> HAL_TIM_Base_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_TIM3_Init (Thumb, 216 bytes, Stack size 64 bytes, tim.o(.text.MX_TIM3_Init))
  [Stack]

  - Max Depth = 200
  - Call Chain = MX_TIM3_Init ⇒ HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_TIM_MspPostInit
  - >> HAL_TIM_PWM_ConfigChannel
  - >> HAL_TIMEx_MasterConfigSynchronization
  - >> HAL_TIM_PWM_Init
  - >> HAL_TIM_ConfigClockSource
  - >> HAL_TIM_Base_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_TIM4_Init (Thumb, 218 bytes, Stack size 64 bytes, tim.o(.text.MX_TIM4_Init))
  [Stack]

  - Max Depth = 200
  - Call Chain = MX_TIM4_Init ⇒ HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_TIM_MspPostInit
  - >> HAL_TIM_PWM_ConfigChannel
  - >> HAL_TIMEx_MasterConfigSynchronization
  - >> HAL_TIM_PWM_Init
  - >> HAL_TIM_ConfigClockSource
  - >> HAL_TIM_Base_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_TIM5_Init (Thumb, 266 bytes, Stack size 64 bytes, tim.o(.text.MX_TIM5_Init))
  [Stack]

  - Max Depth = 200
  - Call Chain = MX_TIM5_Init ⇒ HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_TIM_MspPostInit
  - >> HAL_TIM_PWM_ConfigChannel
  - >> HAL_TIMEx_MasterConfigSynchronization
  - >> HAL_TIM_PWM_Init
  - >> HAL_TIM_ConfigClockSource
  - >> HAL_TIM_Base_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_TIM8_Init (Thumb, 316 bytes, Stack size 104 bytes, tim.o(.text.MX_TIM8_Init))
  [Stack]

  - Max Depth = 240
  - Call Chain = MX_TIM8_Init ⇒ HAL_TIM_MspPostInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_TIM_MspPostInit
  - >> HAL_TIMEx_ConfigBreakDeadTime
  - >> HAL_TIM_PWM_ConfigChannel
  - >> HAL_TIMEx_MasterConfigSynchronization
  - >> HAL_TIM_PWM_Init
  - >> HAL_TIM_ConfigClockSource
  - >> HAL_TIM_Base_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_USART1_UART_Init (Thumb, 64 bytes, Stack size 16 bytes, usart.o(.text.MX_USART1_UART_Init))
  [Stack]

  - Max Depth = 208
  - Call Chain = MX_USART1_UART_Init ⇒ HAL_UART_Init ⇒ HAL_UART_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_UART_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_USART3_UART_Init (Thumb, 72 bytes, Stack size 16 bytes, usart.o(.text.MX_USART3_UART_Init))
  [Stack]

  - Max Depth = 208
  - Call Chain = MX_USART3_UART_Init ⇒ HAL_UART_Init ⇒ HAL_UART_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_UART_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_USART6_UART_Init (Thumb, 64 bytes, Stack size 16 bytes, usart.o(.text.MX_USART6_UART_Init))
  [Stack]

  - Max Depth = 208
  - Call Chain = MX_USART6_UART_Init ⇒ HAL_UART_Init ⇒ HAL_UART_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_UART_Init
  - >> Error_Handler
  [Called By]
  - >> main

  MX_USB_DEVICE_Init (Thumb, 114 bytes, Stack size 8 bytes, usb_device.o(.text.MX_USB_DEVICE_Init))
  [Stack]

  - Max Depth = 184
  - Call Chain = MX_USB_DEVICE_Init ⇒ USBD_Init ⇒ USBD_LL_Init ⇒ HAL_PCD_Init ⇒ HAL_PCD_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> Error_Handler
  - >> USBD_Start
  - >> USBD_CDC_RegisterInterface
  - >> USBD_RegisterClass
  - >> USBD_Init
  [Called By]
  - >> CAN_Task

  MemManage_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text.MemManage_Handler))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  NMI_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text.NMI_Handler))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  OTG_FS_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.OTG_FS_IRQHandler))
  [Stack]

  - Max Depth = 264
  - Call Chain = OTG_FS_IRQHandler ⇒ HAL_PCD_IRQHandler ⇒ PCD_EP_OutSetupPacket_int ⇒ HAL_PCD_SetupStageCallback ⇒ USBD_LL_SetupStage ⇒ USBD_StdDevReq ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> HAL_PCD_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  PendSV_Handler (Thumb, 100 bytes, Stack size 0 bytes, port.o(.text.PendSV_Handler))
  [Stack]

  - Max Depth = 20
  - Call Chain = PendSV_Handler ⇒ vTaskSwitchContext
  [Calls]
  - >> vTaskSwitchContext
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  RTC_EnterInitMode (Thumb, 130 bytes, Stack size 24 bytes, stm32f4xx_hal_rtc.o(.text.RTC_EnterInitMode))
  [Stack]

  - Max Depth = 24
  - Call Chain = RTC_EnterInitMode
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_RTC_Init

  RTC_ExitInitMode (Thumb, 72 bytes, Stack size 16 bytes, stm32f4xx_hal_rtc.o(.text.RTC_ExitInitMode))
  [Stack]

  - Max Depth = 40
  - Call Chain = RTC_ExitInitMode ⇒ HAL_RTC_WaitForSynchro
  [Calls]
  - >> HAL_RTC_WaitForSynchro
  [Called By]
  - >> HAL_RTC_Init

  SVC_Handler (Thumb, 36 bytes, Stack size 0 bytes, port.o(.text.SVC_Handler))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  SysTick_Handler (Thumb, 60 bytes, Stack size 16 bytes, port.o(.text.SysTick_Handler))
  [Stack]

  - Max Depth = 60
  - Call Chain = SysTick_Handler ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> xTaskIncrementTick
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  SystemClock_Config (Thumb, 192 bytes, Stack size 88 bytes, main.o(.text.SystemClock_Config))
  [Stack]

  - Max Depth = 232 + Unknown Stack Size
  - Call Chain = SystemClock_Config ⇒ HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_RCC_ClockConfig
  - >> Error_Handler
  - >> HAL_RCC_OscConfig
  - >> __aeabi_memclr4
  [Called By]
  - >> main

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

  - startup_stm32f407xx.o(.text)

  TIM2_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.TIM2_IRQHandler))
  [Stack]

  - Max Depth = 48
  - Call Chain = TIM2_IRQHandler ⇒ HAL_TIM_IRQHandler ⇒ HAL_TIM_PeriodElapsedCallback
  [Calls]
  - >> HAL_TIM_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  TIM_Base_SetConfig (Thumb, 420 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text.TIM_Base_SetConfig))
  [Stack]

  - Max Depth = 12
  - Call Chain = TIM_Base_SetConfig
  [Called By]
  - >> HAL_TIM_PWM_Init
  - >> HAL_TIM_Base_Init

  TIM_ETR_SetConfig (Thumb, 52 bytes, Stack size 20 bytes, stm32f4xx_hal_tim.o(.text.TIM_ETR_SetConfig))
  [Stack]

  - Max Depth = 20
  - Call Chain = TIM_ETR_SetConfig
  [Called By]
  - >> HAL_TIM_ConfigClockSource

  TIM_OC2_SetConfig (Thumb, 244 bytes, Stack size 20 bytes, stm32f4xx_hal_tim.o(.text.TIM_OC2_SetConfig))
  [Stack]

  - Max Depth = 20
  - Call Chain = TIM_OC2_SetConfig
  [Called By]
  - >> HAL_TIM_PWM_ConfigChannel

  USART3_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.USART3_IRQHandler))
  [Stack]

  - Max Depth = 128
  - Call Chain = USART3_IRQHandler ⇒ HAL_UART_IRQHandler ⇒ UART_Receive_IT ⇒ HAL_UARTEx_RxEventCallback
  [Calls]
  - >> HAL_UART_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  USART6_IRQHandler (Thumb, 16 bytes, Stack size 8 bytes, stm32f4xx_it.o(.text.USART6_IRQHandler))
  [Stack]

  - Max Depth = 128
  - Call Chain = USART6_IRQHandler ⇒ HAL_UART_IRQHandler ⇒ UART_Receive_IT ⇒ HAL_UARTEx_RxEventCallback
  [Calls]
  - >> HAL_UART_IRQHandler
  [Address Reference Count : 1]
  - startup_stm32f407xx.o(RESET)

  USBD_CDC_GetDeviceQualifierDescriptor (Thumb, 16 bytes, Stack size 0 bytes, usbd_cdc.o(.text.USBD_CDC_GetDeviceQualifierDescriptor))
  [Address Reference Count : 1]

  - usbd_cdc.o(.data.USBD_CDC)

  USBD_CDC_ReceivePacket (Thumb, 52 bytes, Stack size 8 bytes, usbd_cdc.o(.text.USBD_CDC_ReceivePacket))
  [Stack]

  - Max Depth = 128
  - Call Chain = USBD_CDC_ReceivePacket ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_LL_PrepareReceive
  [Called By]
  - >> CDC_Receive_FS

  USBD_CDC_RegisterInterface (Thumb, 24 bytes, Stack size 0 bytes, usbd_cdc.o(.text.USBD_CDC_RegisterInterface))
  [Called By]

  - >> MX_USB_DEVICE_Init

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

  - >> CDC_Receive_FS
  - >> CDC_Init_FS

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

  - >> CDC_Init_FS

  USBD_ClrClassConfig (Thumb, 18 bytes, Stack size 8 bytes, usbd_core.o(.text.USBD_ClrClassConfig))
  [Stack]

  - Max Depth = 8
  - Call Chain = USBD_ClrClassConfig
  [Called By]
  - >> USBD_StdDevReq

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

  - >> USBD_StdEPReq

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

  - >> USBD_StdItfReq

  USBD_CtlContinueRx (Thumb, 16 bytes, Stack size 8 bytes, usbd_ioreq.o(.text.USBD_CtlContinueRx))
  [Stack]

  - Max Depth = 128
  - Call Chain = USBD_CtlContinueRx ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_LL_PrepareReceive
  [Called By]
  - >> USBD_LL_DataOutStage

  USBD_CtlContinueSendData (Thumb, 16 bytes, Stack size 8 bytes, usbd_ioreq.o(.text.USBD_CtlContinueSendData))
  [Stack]

  - Max Depth = 128
  - Call Chain = USBD_CtlContinueSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_LL_Transmit
  [Called By]
  - >> USBD_LL_DataInStage

  USBD_CtlError (Thumb, 22 bytes, Stack size 8 bytes, usbd_ctlreq.o(.text.USBD_CtlError))
  [Stack]

  - Max Depth = 64
  - Call Chain = USBD_CtlError ⇒ USBD_LL_StallEP ⇒ HAL_PCD_EP_SetStall ⇒ USB_EP0_OutStart
  [Calls]
  - >> USBD_LL_StallEP
  [Called By]
  - >> USBD_CDC_Setup

  USBD_CtlPrepareRx (Thumb, 30 bytes, Stack size 8 bytes, usbd_ioreq.o(.text.USBD_CtlPrepareRx))
  [Stack]

  - Max Depth = 128
  - Call Chain = USBD_CtlPrepareRx ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_LL_PrepareReceive
  [Called By]
  - >> USBD_CDC_Setup

  USBD_CtlReceiveStatus (Thumb, 22 bytes, Stack size 8 bytes, usbd_ioreq.o(.text.USBD_CtlReceiveStatus))
  [Stack]

  - Max Depth = 128
  - Call Chain = USBD_CtlReceiveStatus ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_LL_PrepareReceive
  [Called By]
  - >> USBD_LL_DataInStage

  USBD_CtlSendData (Thumb, 28 bytes, Stack size 8 bytes, usbd_ioreq.o(.text.USBD_CtlSendData))
  [Stack]

  - Max Depth = 128
  - Call Chain = USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_LL_Transmit
  [Called By]
  - >> USBD_CDC_Setup
  - >> USBD_StdEPReq
  - >> USBD_StdDevReq

  USBD_CtlSendStatus (Thumb, 22 bytes, Stack size 8 bytes, usbd_ioreq.o(.text.USBD_CtlSendStatus))
  [Stack]

  - Max Depth = 128
  - Call Chain = USBD_CtlSendStatus ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_LL_Transmit
  [Called By]
  - >> USBD_StdEPReq
  - >> USBD_StdItfReq
  - >> USBD_StdDevReq
  - >> USBD_LL_DataOutStage

  USBD_FS_ConfigStrDescriptor (Thumb, 24 bytes, Stack size 8 bytes, usbd_desc.o(.text.USBD_FS_ConfigStrDescriptor))
  [Stack]

  - Max Depth = 16
  - Call Chain = USBD_FS_ConfigStrDescriptor ⇒ USBD_GetString
  [Calls]
  - >> USBD_GetString
  [Address Reference Count : 1]
  - usbd_desc.o(.data.FS_Desc)

  USBD_FS_DeviceDescriptor (Thumb, 14 bytes, Stack size 0 bytes, usbd_desc.o(.text.USBD_FS_DeviceDescriptor))
  [Address Reference Count : 1]

  - usbd_desc.o(.data.FS_Desc)

  USBD_FS_InterfaceStrDescriptor (Thumb, 24 bytes, Stack size 8 bytes, usbd_desc.o(.text.USBD_FS_InterfaceStrDescriptor))
  [Stack]

  - Max Depth = 16
  - Call Chain = USBD_FS_InterfaceStrDescriptor ⇒ USBD_GetString
  [Calls]
  - >> USBD_GetString
  [Address Reference Count : 1]
  - usbd_desc.o(.data.FS_Desc)

  USBD_FS_LangIDStrDescriptor (Thumb, 14 bytes, Stack size 0 bytes, usbd_desc.o(.text.USBD_FS_LangIDStrDescriptor))
  [Address Reference Count : 1]

  - usbd_desc.o(.data.FS_Desc)

  USBD_FS_ManufacturerStrDescriptor (Thumb, 24 bytes, Stack size 8 bytes, usbd_desc.o(.text.USBD_FS_ManufacturerStrDescriptor))
  [Stack]

  - Max Depth = 16
  - Call Chain = USBD_FS_ManufacturerStrDescriptor ⇒ USBD_GetString
  [Calls]
  - >> USBD_GetString
  [Address Reference Count : 1]
  - usbd_desc.o(.data.FS_Desc)

  USBD_FS_ProductStrDescriptor (Thumb, 24 bytes, Stack size 8 bytes, usbd_desc.o(.text.USBD_FS_ProductStrDescriptor))
  [Stack]

  - Max Depth = 16
  - Call Chain = USBD_FS_ProductStrDescriptor ⇒ USBD_GetString
  [Calls]
  - >> USBD_GetString
  [Address Reference Count : 1]
  - usbd_desc.o(.data.FS_Desc)

  USBD_FS_SerialStrDescriptor (Thumb, 136 bytes, Stack size 16 bytes, usbd_desc.o(.text.USBD_FS_SerialStrDescriptor))
  [Stack]

  - Max Depth = 16
  - Call Chain = USBD_FS_SerialStrDescriptor
  [Address Reference Count : 1]
  - usbd_desc.o(.data.FS_Desc)

  USBD_GetEpDesc (Thumb, 54 bytes, Stack size 8 bytes, usbd_core.o(.text.USBD_GetEpDesc))
  [Stack]

  - Max Depth = 8
  - Call Chain = USBD_GetEpDesc
  [Called By]
  - >> USBD_CDC_GetOtherSpeedCfgDesc
  - >> USBD_CDC_GetFSCfgDesc
  - >> USBD_CDC_GetHSCfgDesc

  USBD_GetString (Thumb, 126 bytes, Stack size 8 bytes, usbd_ctlreq.o(.text.USBD_GetString))
  [Stack]

  - Max Depth = 8
  - Call Chain = USBD_GetString
  [Called By]
  - >> USBD_FS_InterfaceStrDescriptor
  - >> USBD_FS_ConfigStrDescriptor
  - >> USBD_FS_ProductStrDescriptor
  - >> USBD_FS_ManufacturerStrDescriptor

  USBD_Init (Thumb, 42 bytes, Stack size 0 bytes, usbd_core.o(.text.USBD_Init))
  [Stack]

  - Max Depth = 176
  - Call Chain = USBD_Init ⇒ USBD_LL_Init ⇒ HAL_PCD_Init ⇒ HAL_PCD_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> USBD_LL_Init
  [Called By]
  - >> MX_USB_DEVICE_Init

  USBD_LL_ClearStallEP (Thumb, 34 bytes, Stack size 8 bytes, usbd_conf.o(.text.USBD_LL_ClearStallEP))
  [Stack]

  - Max Depth = 48
  - Call Chain = USBD_LL_ClearStallEP ⇒ HAL_PCD_EP_ClrStall ⇒ USB_EPClearStall
  [Calls]
  - >> HAL_PCD_EP_ClrStall
  [Called By]
  - >> USBD_StdEPReq

  USBD_LL_CloseEP (Thumb, 34 bytes, Stack size 8 bytes, usbd_conf.o(.text.USBD_LL_CloseEP))
  [Stack]

  - Max Depth = 48
  - Call Chain = USBD_LL_CloseEP ⇒ HAL_PCD_EP_Close ⇒ USB_DeactivateEndpoint
  [Calls]
  - >> HAL_PCD_EP_Close
  [Called By]
  - >> USBD_CDC_DeInit

  USBD_LL_DataInStage (Thumb, 180 bytes, Stack size 16 bytes, usbd_core.o(.text.USBD_LL_DataInStage))
  [Stack]

  - Max Depth = 144
  - Call Chain = USBD_LL_DataInStage ⇒ USBD_CtlReceiveStatus ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_CtlReceiveStatus
  - >> USBD_CtlContinueSendData
  - >> USBD_LL_PrepareReceive
  - >> USBD_LL_StallEP
  [Called By]
  - >> HAL_PCD_DataInStageCallback

  USBD_LL_DataOutStage (Thumb, 126 bytes, Stack size 8 bytes, usbd_core.o(.text.USBD_LL_DataOutStage))
  [Stack]

  - Max Depth = 136
  - Call Chain = USBD_LL_DataOutStage ⇒ USBD_CtlSendStatus ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_CtlSendStatus
  - >> USBD_CtlContinueRx
  [Called By]
  - >> HAL_PCD_DataOutStageCallback

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

  - >> HAL_PCD_ConnectCallback

  USBD_LL_DevDisconnected (Thumb, 34 bytes, Stack size 8 bytes, usbd_core.o(.text.USBD_LL_DevDisconnected))
  [Stack]

  - Max Depth = 8
  - Call Chain = USBD_LL_DevDisconnected
  [Called By]
  - >> HAL_PCD_DisconnectCallback

  USBD_LL_GetRxDataSize (Thumb, 8 bytes, Stack size 0 bytes, usbd_conf.o(.text.USBD_LL_GetRxDataSize))
  [Stack]

  - Max Depth = 8
  - Call Chain = USBD_LL_GetRxDataSize ⇒ HAL_PCD_EP_GetRxCount
  [Calls]
  - >> HAL_PCD_EP_GetRxCount
  [Called By]
  - >> USBD_CDC_DataOut

  USBD_LL_Init (Thumb, 110 bytes, Stack size 8 bytes, usbd_conf.o(.text.USBD_LL_Init))
  [Stack]

  - Max Depth = 176
  - Call Chain = USBD_LL_Init ⇒ HAL_PCD_Init ⇒ HAL_PCD_MspInit ⇒ HAL_NVIC_SetPriority ⇒ NVIC_EncodePriority
  [Calls]
  - >> HAL_PCDEx_SetRxFiFo
  - >> HAL_PCDEx_SetTxFiFo
  - >> HAL_PCD_Init
  - >> Error_Handler
  [Called By]
  - >> USBD_Init

  USBD_LL_IsStallEP (Thumb, 42 bytes, Stack size 0 bytes, usbd_conf.o(.text.USBD_LL_IsStallEP))
  [Called By]

  - >> USBD_StdEPReq

  USBD_LL_IsoINIncomplete (Thumb, 44 bytes, Stack size 8 bytes, usbd_core.o(.text.USBD_LL_IsoINIncomplete))
  [Stack]

  - Max Depth = 8
  - Call Chain = USBD_LL_IsoINIncomplete
  [Called By]
  - >> HAL_PCD_ISOINIncompleteCallback

  USBD_LL_IsoOUTIncomplete (Thumb, 44 bytes, Stack size 8 bytes, usbd_core.o(.text.USBD_LL_IsoOUTIncomplete))
  [Stack]

  - Max Depth = 8
  - Call Chain = USBD_LL_IsoOUTIncomplete
  [Called By]
  - >> HAL_PCD_ISOOUTIncompleteCallback

  USBD_LL_OpenEP (Thumb, 40 bytes, Stack size 8 bytes, usbd_conf.o(.text.USBD_LL_OpenEP))
  [Stack]

  - Max Depth = 56
  - Call Chain = USBD_LL_OpenEP ⇒ HAL_PCD_EP_Open ⇒ USB_ActivateEndpoint
  [Calls]
  - >> HAL_PCD_EP_Open
  [Called By]
  - >> USBD_CDC_Init
  - >> USBD_LL_Reset

  USBD_LL_PrepareReceive (Thumb, 34 bytes, Stack size 8 bytes, usbd_conf.o(.text.USBD_LL_PrepareReceive))
  [Stack]

  - Max Depth = 120
  - Call Chain = USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> HAL_PCD_EP_Receive
  [Called By]
  - >> USBD_CDC_Init
  - >> USBD_CtlPrepareRx
  - >> USBD_CtlReceiveStatus
  - >> USBD_CtlContinueRx
  - >> USBD_LL_DataInStage
  - >> USBD_CDC_ReceivePacket

  USBD_LL_Reset (Thumb, 98 bytes, Stack size 24 bytes, usbd_core.o(.text.USBD_LL_Reset))
  [Stack]

  - Max Depth = 80
  - Call Chain = USBD_LL_Reset ⇒ USBD_LL_OpenEP ⇒ HAL_PCD_EP_Open ⇒ USB_ActivateEndpoint
  [Calls]
  - >> USBD_LL_OpenEP
  [Called By]
  - >> HAL_PCD_ResetCallback

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

  - >> HAL_PCD_ResumeCallback

  USBD_LL_SOF (Thumb, 30 bytes, Stack size 8 bytes, usbd_core.o(.text.USBD_LL_SOF))
  [Stack]

  - Max Depth = 8
  - Call Chain = USBD_LL_SOF
  [Called By]
  - >> HAL_PCD_SOFCallback

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

  - >> HAL_PCD_ResetCallback

  USBD_LL_SetUSBAddress (Thumb, 34 bytes, Stack size 8 bytes, usbd_conf.o(.text.USBD_LL_SetUSBAddress))
  [Stack]

  - Max Depth = 44
  - Call Chain = USBD_LL_SetUSBAddress ⇒ HAL_PCD_SetAddress ⇒ USB_SetDevAddress
  [Calls]
  - >> HAL_PCD_SetAddress
  [Called By]
  - >> USBD_StdDevReq

  USBD_LL_SetupStage (Thumb, 96 bytes, Stack size 16 bytes, usbd_core.o(.text.USBD_LL_SetupStage))
  [Stack]

  - Max Depth = 168
  - Call Chain = USBD_LL_SetupStage ⇒ USBD_StdDevReq ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_StdEPReq
  - >> USBD_StdItfReq
  - >> USBD_StdDevReq
  - >> USBD_ParseSetupRequest
  [Called By]
  - >> HAL_PCD_SetupStageCallback

  USBD_LL_StallEP (Thumb, 34 bytes, Stack size 8 bytes, usbd_conf.o(.text.USBD_LL_StallEP))
  [Stack]

  - Max Depth = 56
  - Call Chain = USBD_LL_StallEP ⇒ HAL_PCD_EP_SetStall ⇒ USB_EP0_OutStart
  [Calls]
  - >> HAL_PCD_EP_SetStall
  [Called By]
  - >> USBD_CtlError
  - >> USBD_StdEPReq
  - >> USBD_StdItfReq
  - >> USBD_StdDevReq
  - >> USBD_LL_DataInStage

  USBD_LL_Start (Thumb, 34 bytes, Stack size 8 bytes, usbd_conf.o(.text.USBD_LL_Start))
  [Stack]

  - Max Depth = 40
  - Call Chain = USBD_LL_Start ⇒ HAL_PCD_Start ⇒ USB_DevConnect
  [Calls]
  - >> HAL_PCD_Start
  [Called By]
  - >> USBD_Start

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

  - >> HAL_PCD_SuspendCallback

  USBD_LL_Transmit (Thumb, 34 bytes, Stack size 8 bytes, usbd_conf.o(.text.USBD_LL_Transmit))
  [Stack]

  - Max Depth = 120
  - Call Chain = USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> HAL_PCD_EP_Transmit
  [Called By]
  - >> USBD_CDC_DataIn
  - >> USBD_CtlSendData
  - >> USBD_CtlContinueSendData
  - >> USBD_CtlSendStatus

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

  - >> USBD_LL_SetupStage

  USBD_RegisterClass (Thumb, 66 bytes, Stack size 16 bytes, usbd_core.o(.text.USBD_RegisterClass))
  [Stack]

  - Max Depth = 16
  - Call Chain = USBD_RegisterClass
  [Called By]
  - >> MX_USB_DEVICE_Init

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

  - >> USBD_StdDevReq

  USBD_Start (Thumb, 4 bytes, Stack size 0 bytes, usbd_core.o(.text.USBD_Start))
  [Stack]

  - Max Depth = 40
  - Call Chain = USBD_Start ⇒ USBD_LL_Start ⇒ HAL_PCD_Start ⇒ USB_DevConnect
  [Calls]
  - >> USBD_LL_Start
  [Called By]
  - >> MX_USB_DEVICE_Init

  USBD_StdDevReq (Thumb, 842 bytes, Stack size 24 bytes, usbd_ctlreq.o(.text.USBD_StdDevReq))
  [Stack]

  - Max Depth = 152
  - Call Chain = USBD_StdDevReq ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_CtlSendData
  - >> USBD_CtlSendStatus
  - >> USBD_ClrClassConfig
  - >> USBD_SetClassConfig
  - >> USBD_LL_SetUSBAddress
  - >> USBD_LL_StallEP
  [Called By]
  - >> USBD_LL_SetupStage

  USBD_StdEPReq (Thumb, 326 bytes, Stack size 16 bytes, usbd_ctlreq.o(.text.USBD_StdEPReq))
  [Stack]

  - Max Depth = 144
  - Call Chain = USBD_StdEPReq ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_CtlSendData
  - >> USBD_CoreFindEP
  - >> USBD_CtlSendStatus
  - >> USBD_LL_IsStallEP
  - >> USBD_LL_ClearStallEP
  - >> USBD_LL_StallEP
  [Called By]
  - >> USBD_LL_SetupStage

  USBD_StdItfReq (Thumb, 120 bytes, Stack size 16 bytes, usbd_ctlreq.o(.text.USBD_StdItfReq))
  [Stack]

  - Max Depth = 144
  - Call Chain = USBD_StdItfReq ⇒ USBD_CtlSendStatus ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_CoreFindIF
  - >> USBD_CtlSendStatus
  - >> USBD_LL_StallEP
  [Called By]
  - >> USBD_LL_SetupStage

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

  - >> USBD_CDC_DeInit

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

  - >> USBD_CDC_Init

  USB_ActivateEndpoint (Thumb, 222 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_ActivateEndpoint))
  [Stack]

  - Max Depth = 16
  - Call Chain = USB_ActivateEndpoint
  [Called By]
  - >> HAL_PCD_EP_Open

  USB_ActivateSetup (Thumb, 44 bytes, Stack size 8 bytes, stm32f4xx_ll_usb.o(.text.USB_ActivateSetup))
  [Stack]

  - Max Depth = 8
  - Call Chain = USB_ActivateSetup
  [Called By]
  - >> HAL_PCD_IRQHandler

  USB_CoreInit (Thumb, 214 bytes, Stack size 48 bytes, stm32f4xx_ll_usb.o(.text.USB_CoreInit))
  [Stack]

  - Max Depth = 60
  - Call Chain = USB_CoreInit ⇒ USB_CoreReset
  [Calls]
  - >> USB_CoreReset
  [Called By]
  - >> HAL_PCD_Init

  USB_DeactivateEndpoint (Thumb, 312 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_DeactivateEndpoint))
  [Stack]

  - Max Depth = 16
  - Call Chain = USB_DeactivateEndpoint
  [Called By]
  - >> HAL_PCD_EP_Close

  USB_DevConnect (Thumb, 42 bytes, Stack size 8 bytes, stm32f4xx_ll_usb.o(.text.USB_DevConnect))
  [Stack]

  - Max Depth = 8
  - Call Chain = USB_DevConnect
  [Called By]
  - >> HAL_PCD_Start

  USB_DevDisconnect (Thumb, 42 bytes, Stack size 8 bytes, stm32f4xx_ll_usb.o(.text.USB_DevDisconnect))
  [Stack]

  - Max Depth = 8
  - Call Chain = USB_DevDisconnect
  [Called By]
  - >> HAL_PCD_Init

  USB_DevInit (Thumb, 666 bytes, Stack size 56 bytes, stm32f4xx_ll_usb.o(.text.USB_DevInit))
  [Stack]

  - Max Depth = 72
  - Call Chain = USB_DevInit ⇒ USB_FlushTxFifo
  [Calls]
  - >> USB_SetDevSpeed
  - >> USB_FlushRxFifo
  - >> USB_FlushTxFifo
  [Called By]
  - >> HAL_PCD_Init

  USB_DisableGlobalInt (Thumb, 20 bytes, Stack size 4 bytes, stm32f4xx_ll_usb.o(.text.USB_DisableGlobalInt))
  [Stack]

  - Max Depth = 4
  - Call Chain = USB_DisableGlobalInt
  [Called By]
  - >> HAL_PCD_Init

  USB_EP0_OutStart (Thumb, 158 bytes, Stack size 24 bytes, stm32f4xx_ll_usb.o(.text.USB_EP0_OutStart))
  [Stack]

  - Max Depth = 24
  - Call Chain = USB_EP0_OutStart
  [Called By]
  - >> HAL_PCD_EP_SetStall
  - >> PCD_EP_OutSetupPacket_int
  - >> PCD_EP_OutXfrComplete_int
  - >> HAL_PCD_IRQHandler

  USB_EPClearStall (Thumb, 160 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_EPClearStall))
  [Stack]

  - Max Depth = 16
  - Call Chain = USB_EPClearStall
  [Called By]
  - >> HAL_PCD_EP_ClrStall

  USB_EPSetStall (Thumb, 168 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_EPSetStall))
  [Stack]

  - Max Depth = 16
  - Call Chain = USB_EPSetStall
  [Called By]
  - >> HAL_PCD_EP_SetStall

  USB_EPStartXfer (Thumb, 1016 bytes, Stack size 40 bytes, stm32f4xx_ll_usb.o(.text.USB_EPStartXfer))
  [Stack]

  - Max Depth = 80
  - Call Chain = USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USB_WritePacket
  [Called By]
  - >> HAL_PCD_EP_Transmit
  - >> HAL_PCD_EP_Receive

  USB_EPStopXfer (Thumb, 284 bytes, Stack size 20 bytes, stm32f4xx_ll_usb.o(.text.USB_EPStopXfer))
  [Stack]

  - Max Depth = 20
  - Call Chain = USB_EPStopXfer
  [Called By]
  - >> HAL_PCD_EP_Abort

  USB_EnableGlobalInt (Thumb, 20 bytes, Stack size 4 bytes, stm32f4xx_ll_usb.o(.text.USB_EnableGlobalInt))
  [Stack]

  - Max Depth = 4
  - Call Chain = USB_EnableGlobalInt
  [Called By]
  - >> HAL_PCD_Start

  USB_FlushRxFifo (Thumb, 116 bytes, Stack size 12 bytes, stm32f4xx_ll_usb.o(.text.USB_FlushRxFifo))
  [Stack]

  - Max Depth = 12
  - Call Chain = USB_FlushRxFifo
  [Called By]
  - >> USB_DevInit

  USB_FlushTxFifo (Thumb, 122 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_FlushTxFifo))
  [Stack]

  - Max Depth = 16
  - Call Chain = USB_FlushTxFifo
  [Called By]
  - >> USB_DevInit
  - >> HAL_PCD_IRQHandler

  USB_GetDevSpeed (Thumb, 76 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_GetDevSpeed))
  [Stack]

  - Max Depth = 16
  - Call Chain = USB_GetDevSpeed
  [Called By]
  - >> HAL_PCD_IRQHandler

  USB_GetMode (Thumb, 16 bytes, Stack size 4 bytes, stm32f4xx_ll_usb.o(.text.USB_GetMode))
  [Stack]

  - Max Depth = 4
  - Call Chain = USB_GetMode
  [Called By]
  - >> USB_SetCurrentMode
  - >> HAL_PCD_IRQHandler

  USB_ReadDevAllInEpInterrupt (Thumb, 36 bytes, Stack size 12 bytes, stm32f4xx_ll_usb.o(.text.USB_ReadDevAllInEpInterrupt))
  [Stack]

  - Max Depth = 12
  - Call Chain = USB_ReadDevAllInEpInterrupt
  [Called By]
  - >> HAL_PCD_IRQHandler

  USB_ReadDevAllOutEpInterrupt (Thumb, 36 bytes, Stack size 12 bytes, stm32f4xx_ll_usb.o(.text.USB_ReadDevAllOutEpInterrupt))
  [Stack]

  - Max Depth = 12
  - Call Chain = USB_ReadDevAllOutEpInterrupt
  [Called By]
  - >> HAL_PCD_IRQHandler

  USB_ReadDevInEPInterrupt (Thumb, 78 bytes, Stack size 24 bytes, stm32f4xx_ll_usb.o(.text.USB_ReadDevInEPInterrupt))
  [Stack]

  - Max Depth = 24
  - Call Chain = USB_ReadDevInEPInterrupt
  [Called By]
  - >> HAL_PCD_IRQHandler

  USB_ReadDevOutEPInterrupt (Thumb, 46 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_ReadDevOutEPInterrupt))
  [Stack]

  - Max Depth = 16
  - Call Chain = USB_ReadDevOutEPInterrupt
  [Called By]
  - >> HAL_PCD_IRQHandler

  USB_ReadInterrupts (Thumb, 26 bytes, Stack size 8 bytes, stm32f4xx_ll_usb.o(.text.USB_ReadInterrupts))
  [Stack]

  - Max Depth = 8
  - Call Chain = USB_ReadInterrupts
  [Called By]
  - >> HAL_PCD_IRQHandler

  USB_ReadPacket (Thumb, 180 bytes, Stack size 36 bytes, stm32f4xx_ll_usb.o(.text.USB_ReadPacket))
  [Stack]

  - Max Depth = 36
  - Call Chain = USB_ReadPacket
  [Called By]
  - >> HAL_PCD_IRQHandler

  USB_SetCurrentMode (Thumb, 222 bytes, Stack size 32 bytes, stm32f4xx_ll_usb.o(.text.USB_SetCurrentMode))
  [Stack]

  - Max Depth = 56
  - Call Chain = USB_SetCurrentMode ⇒ HAL_Delay
  [Calls]
  - >> HAL_Delay
  - >> USB_GetMode
  [Called By]
  - >> HAL_PCD_Init

  USB_SetDevAddress (Thumb, 54 bytes, Stack size 12 bytes, stm32f4xx_ll_usb.o(.text.USB_SetDevAddress))
  [Stack]

  - Max Depth = 12
  - Call Chain = USB_SetDevAddress
  [Called By]
  - >> HAL_PCD_SetAddress

  USB_SetDevSpeed (Thumb, 34 bytes, Stack size 12 bytes, stm32f4xx_ll_usb.o(.text.USB_SetDevSpeed))
  [Stack]

  - Max Depth = 12
  - Call Chain = USB_SetDevSpeed
  [Called By]
  - >> USB_DevInit

  USB_SetTurnaroundTime (Thumb, 442 bytes, Stack size 16 bytes, stm32f4xx_ll_usb.o(.text.USB_SetTurnaroundTime))
  [Stack]

  - Max Depth = 16
  - Call Chain = USB_SetTurnaroundTime
  [Called By]
  - >> HAL_PCD_IRQHandler

  USB_WritePacket (Thumb, 130 bytes, Stack size 40 bytes, stm32f4xx_ll_usb.o(.text.USB_WritePacket))
  [Stack]

  - Max Depth = 40
  - Call Chain = USB_WritePacket
  [Called By]
  - >> USB_EPStartXfer
  - >> PCD_WriteEmptyTxFifo

  UsageFault_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(.text.UsageFault_Handler))
  [Address Reference Count : 1]

  - startup_stm32f407xx.o(RESET)

  main (Thumb, 116 bytes, Stack size 16 bytes, main.o(.text.main))
  [Stack]

  - Max Depth = 380 + Unknown Stack Size
  - Call Chain = main ⇒ MX_FREERTOS_Init ⇒ osThreadCreate ⇒ xTaskCreate ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> osKernelStart
  - >> MX_FREERTOS_Init
  - >> MX_TIM10_Init
  - >> MX_TIM8_Init
  - >> MX_TIM5_Init
  - >> MX_TIM4_Init
  - >> MX_TIM3_Init
  - >> MX_TIM1_Init
  - >> MX_RTC_Init
  - >> MX_ADC3_Init
  - >> MX_ADC1_Init
  - >> MX_CRC_Init
  - >> MX_USART3_UART_Init
  - >> MX_SPI2_Init
  - >> MX_SPI1_Init
  - >> MX_I2C3_Init
  - >> MX_I2C2_Init
  - >> MX_I2C1_Init
  - >> MX_CAN1_Init
  - >> MX_USART6_UART_Init
  - >> MX_USART1_UART_Init
  - >> MX_CAN2_Init
  - >> MX_DMA_Init
  - >> MX_GPIO_Init
  - >> SystemClock_Config
  - >> HAL_Init
  [Called By]
  - >> __rt_entry_main

  osDelay (Thumb, 40 bytes, Stack size 24 bytes, cmsis_os.o(.text.osDelay))
  [Stack]

  - Max Depth = 116
  - Call Chain = osDelay ⇒ vTaskDelay ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> vTaskDelay
  [Called By]
  - >> IMU_Task
  - >> LED_Task
  - >> CAN_Task

  osKernelStart (Thumb, 10 bytes, Stack size 8 bytes, cmsis_os.o(.text.osKernelStart))
  [Stack]

  - Max Depth = 180
  - Call Chain = osKernelStart ⇒ vTaskStartScheduler ⇒ xTaskCreateStatic ⇒ prvInitialiseNewTask ⇒ pxPortInitialiseStack
  [Calls]
  - >> vTaskStartScheduler
  [Called By]
  - >> main

  osThreadCreate (Thumb, 172 bytes, Stack size 80 bytes, cmsis_os.o(.text.osThreadCreate))
  [Stack]

  - Max Depth = 260
  - Call Chain = osThreadCreate ⇒ xTaskCreate ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> makeFreeRtosPriority
  - >> xTaskCreate
  - >> xTaskCreateStatic
  [Called By]
  - >> MX_FREERTOS_Init

  pvPortMalloc (Thumb, 492 bytes, Stack size 48 bytes, heap_4.o(.text.pvPortMalloc))
  [Stack]

  - Max Depth = 116
  - Call Chain = pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> prvInsertBlockIntoFreeList
  - >> prvHeapInit
  - >> xTaskResumeAll
  - >> vTaskSuspendAll
  [Called By]
  - >> xTaskCreate

  pxPortInitialiseStack (Thumb, 94 bytes, Stack size 12 bytes, port.o(.text.pxPortInitialiseStack))
  [Stack]

  - Max Depth = 12
  - Call Chain = pxPortInitialiseStack
  [Called By]
  - >> prvInitialiseNewTask

  uxListRemove (Thumb, 72 bytes, Stack size 8 bytes, list.o(.text.uxListRemove))
  [Stack]

  - Max Depth = 8
  - Call Chain = uxListRemove
  [Called By]
  - >> xTaskIncrementTick
  - >> prvCheckTasksWaitingTermination
  - >> prvAddCurrentTaskToDelayedList
  - >> xTaskResumeAll

  vApplicationGetIdleTaskMemory (Thumb, 42 bytes, Stack size 12 bytes, freertos.o(.text.vApplicationGetIdleTaskMemory))
  [Stack]

  - Max Depth = 12
  - Call Chain = vApplicationGetIdleTaskMemory
  [Called By]
  - >> vTaskStartScheduler

  vListInitialise (Thumb, 46 bytes, Stack size 4 bytes, list.o(.text.vListInitialise))
  [Stack]

  - Max Depth = 4
  - Call Chain = vListInitialise
  [Called By]
  - >> prvInitialiseTaskLists

  vListInitialiseItem (Thumb, 14 bytes, Stack size 4 bytes, list.o(.text.vListInitialiseItem))
  [Stack]

  - Max Depth = 4
  - Call Chain = vListInitialiseItem
  [Called By]
  - >> prvInitialiseNewTask

  vListInsert (Thumb, 106 bytes, Stack size 16 bytes, list.o(.text.vListInsert))
  [Stack]

  - Max Depth = 16
  - Call Chain = vListInsert
  [Called By]
  - >> prvAddCurrentTaskToDelayedList

  vListInsertEnd (Thumb, 58 bytes, Stack size 12 bytes, list.o(.text.vListInsertEnd))
  [Stack]

  - Max Depth = 12
  - Call Chain = vListInsertEnd
  [Called By]
  - >> xTaskIncrementTick
  - >> prvAddCurrentTaskToDelayedList
  - >> prvAddNewTaskToReadyList
  - >> xTaskResumeAll

  vPortEnterCritical (Thumb, 86 bytes, Stack size 8 bytes, port.o(.text.vPortEnterCritical))
  [Stack]

  - Max Depth = 8
  - Call Chain = vPortEnterCritical
  [Called By]
  - >> prvCheckTasksWaitingTermination
  - >> prvAddNewTaskToReadyList
  - >> xTaskResumeAll

  vPortExitCritical (Thumb, 74 bytes, Stack size 8 bytes, port.o(.text.vPortExitCritical))
  [Stack]

  - Max Depth = 8
  - Call Chain = vPortExitCritical
  [Called By]
  - >> prvCheckTasksWaitingTermination
  - >> prvAddNewTaskToReadyList
  - >> xTaskResumeAll

  vPortFree (Thumb, 206 bytes, Stack size 32 bytes, heap_4.o(.text.vPortFree))
  [Stack]

  - Max Depth = 100
  - Call Chain = vPortFree ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> prvInsertBlockIntoFreeList
  - >> xTaskResumeAll
  - >> vTaskSuspendAll
  [Called By]
  - >> xTaskCreate
  - >> prvDeleteTCB

  vPortSetupTimerInterrupt (Thumb, 68 bytes, Stack size 0 bytes, port.o(.text.vPortSetupTimerInterrupt))
  [Called By]

  - >> xPortStartScheduler

  vTaskDelay (Thumb, 110 bytes, Stack size 24 bytes, tasks.o(.text.vTaskDelay))
  [Stack]

  - Max Depth = 92
  - Call Chain = vTaskDelay ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> prvAddCurrentTaskToDelayedList
  - >> xTaskResumeAll
  - >> vTaskSuspendAll
  [Called By]
  - >> osDelay

  vTaskStartScheduler (Thumb, 206 bytes, Stack size 48 bytes, tasks.o(.text.vTaskStartScheduler))
  [Stack]

  - Max Depth = 172
  - Call Chain = vTaskStartScheduler ⇒ xTaskCreateStatic ⇒ prvInitialiseNewTask ⇒ pxPortInitialiseStack
  [Calls]
  - >> vApplicationGetIdleTaskMemory
  - >> xPortStartScheduler
  - >> xTaskCreateStatic
  [Called By]
  - >> osKernelStart

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

  - >> vTaskDelay
  - >> vPortFree
  - >> pvPortMalloc

  vTaskSwitchContext (Thumb, 190 bytes, Stack size 20 bytes, tasks.o(.text.vTaskSwitchContext))
  [Stack]

  - Max Depth = 20
  - Call Chain = vTaskSwitchContext
  [Called By]
  - >> PendSV_Handler
  - >> xPortStartScheduler

  xPortStartScheduler (Thumb, 342 bytes, Stack size 40 bytes, port.o(.text.xPortStartScheduler))
  [Stack]

  - Max Depth = 60
  - Call Chain = xPortStartScheduler ⇒ vTaskSwitchContext
  [Calls]
  - >> vPortSetupTimerInterrupt
  - >> prvPortStartFirstTask
  - >> vPortEnableVFP
  - >> prvTaskExitError
  - >> vTaskSwitchContext
  [Called By]
  - >> vTaskStartScheduler

  xTaskCreate (Thumb, 158 bytes, Stack size 64 bytes, tasks.o(.text.xTaskCreate))
  [Stack]

  - Max Depth = 180
  - Call Chain = xTaskCreate ⇒ pvPortMalloc ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> prvAddNewTaskToReadyList
  - >> prvInitialiseNewTask
  - >> vPortFree
  - >> pvPortMalloc
  [Called By]
  - >> osThreadCreate

  xTaskCreateStatic (Thumb, 206 bytes, Stack size 72 bytes, tasks.o(.text.xTaskCreateStatic))
  [Stack]

  - Max Depth = 124
  - Call Chain = xTaskCreateStatic ⇒ prvInitialiseNewTask ⇒ pxPortInitialiseStack
  [Calls]
  - >> prvAddNewTaskToReadyList
  - >> prvInitialiseNewTask
  [Called By]
  - >> osThreadCreate
  - >> vTaskStartScheduler

  xTaskIncrementTick (Thumb, 440 bytes, Stack size 32 bytes, tasks.o(.text.xTaskIncrementTick))
  [Stack]

  - Max Depth = 44
  - Call Chain = xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> prvResetNextTaskUnblockTime
  - >> uxListRemove
  - >> vListInsertEnd
  [Called By]
  - >> SysTick_Handler
  - >> xTaskResumeAll

  xTaskResumeAll (Thumb, 376 bytes, Stack size 24 bytes, tasks.o(.text.xTaskResumeAll))
  [Stack]

  - Max Depth = 68
  - Call Chain = xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> xTaskIncrementTick
  - >> prvResetNextTaskUnblockTime
  - >> uxListRemove
  - >> vListInsertEnd
  - >> vPortExitCritical
  - >> vPortEnterCritical
  [Called By]
  - >> vTaskDelay
  - >> vPortFree
  - >> pvPortMalloc

  _fp_init (Thumb, 26 bytes, Stack size 0 bytes, fpinit.o(x$fpl$fpinit))
  [Called By]

  - >> __rt_lib_init_fp_1

  __fplib_config_fpu_vfp (Thumb, 0 bytes, Stack size unknown bytes, fpinit.o(x$fpl$fpinit), UNUSED)

  __fplib_config_pureend_doubles (Thumb, 0 bytes, Stack size unknown bytes, fpinit.o(x$fpl$fpinit), UNUSED)

  ### Local Symbols

  TIM_OC1_SetConfig (Thumb, 234 bytes, Stack size 20 bytes, stm32f4xx_hal_tim.o(.text.TIM_OC1_SetConfig))
  [Stack]

  - Max Depth = 20
  - Call Chain = TIM_OC1_SetConfig
  [Called By]
  - >> HAL_TIM_PWM_ConfigChannel

  TIM_OC3_SetConfig (Thumb, 242 bytes, Stack size 20 bytes, stm32f4xx_hal_tim.o(.text.TIM_OC3_SetConfig))
  [Stack]

  - Max Depth = 20
  - Call Chain = TIM_OC3_SetConfig
  [Called By]
  - >> HAL_TIM_PWM_ConfigChannel

  TIM_OC4_SetConfig (Thumb, 164 bytes, Stack size 20 bytes, stm32f4xx_hal_tim.o(.text.TIM_OC4_SetConfig))
  [Stack]

  - Max Depth = 20
  - Call Chain = TIM_OC4_SetConfig
  [Called By]
  - >> HAL_TIM_PWM_ConfigChannel

  TIM_TI1_ConfigInputStage (Thumb, 80 bytes, Stack size 20 bytes, stm32f4xx_hal_tim.o(.text.TIM_TI1_ConfigInputStage))
  [Stack]

  - Max Depth = 20
  - Call Chain = TIM_TI1_ConfigInputStage
  [Called By]
  - >> HAL_TIM_ConfigClockSource

  TIM_ITRx_SetConfig (Thumb, 42 bytes, Stack size 12 bytes, stm32f4xx_hal_tim.o(.text.TIM_ITRx_SetConfig))
  [Stack]

  - Max Depth = 12
  - Call Chain = TIM_ITRx_SetConfig
  [Called By]
  - >> HAL_TIM_ConfigClockSource

  TIM_TI2_ConfigInputStage (Thumb, 82 bytes, Stack size 20 bytes, stm32f4xx_hal_tim.o(.text.TIM_TI2_ConfigInputStage))
  [Stack]

  - Max Depth = 20
  - Call Chain = TIM_TI2_ConfigInputStage
  [Called By]
  - >> HAL_TIM_ConfigClockSource

  PCD_EP_OutXfrComplete_int (Thumb, 456 bytes, Stack size 40 bytes, stm32f4xx_hal_pcd.o(.text.PCD_EP_OutXfrComplete_int))
  [Stack]

  - Max Depth = 176
  - Call Chain = PCD_EP_OutXfrComplete_int ⇒ HAL_PCD_DataOutStageCallback ⇒ USBD_LL_DataOutStage ⇒ USBD_CtlSendStatus ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USB_EP0_OutStart
  - >> HAL_PCD_DataOutStageCallback
  [Called By]
  - >> HAL_PCD_IRQHandler

  PCD_EP_OutSetupPacket_int (Thumb, 138 bytes, Stack size 32 bytes, stm32f4xx_hal_pcd.o(.text.PCD_EP_OutSetupPacket_int))
  [Stack]

  - Max Depth = 200
  - Call Chain = PCD_EP_OutSetupPacket_int ⇒ HAL_PCD_SetupStageCallback ⇒ USBD_LL_SetupStage ⇒ USBD_StdDevReq ⇒ USBD_CtlSendData ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USB_EP0_OutStart
  - >> HAL_PCD_SetupStageCallback
  [Called By]
  - >> HAL_PCD_IRQHandler

  PCD_WriteEmptyTxFifo (Thumb, 306 bytes, Stack size 56 bytes, stm32f4xx_hal_pcd.o(.text.PCD_WriteEmptyTxFifo))
  [Stack]

  - Max Depth = 96
  - Call Chain = PCD_WriteEmptyTxFifo ⇒ USB_WritePacket
  [Calls]
  - >> USB_WritePacket
  [Called By]
  - >> HAL_PCD_IRQHandler

  USB_CoreReset (Thumb, 136 bytes, Stack size 12 bytes, stm32f4xx_ll_usb.o(.text.USB_CoreReset))
  [Stack]

  - Max Depth = 12
  - Call Chain = USB_CoreReset
  [Called By]
  - >> USB_CoreInit

  DMA_CheckFifoParam (Thumb, 240 bytes, Stack size 24 bytes, stm32f4xx_hal_dma.o(.text.DMA_CheckFifoParam))
  [Stack]

  - Max Depth = 24
  - Call Chain = DMA_CheckFifoParam
  [Called By]
  - >> HAL_DMA_Init

  DMA_CalcBaseAndBitshift (Thumb, 86 bytes, Stack size 8 bytes, stm32f4xx_hal_dma.o(.text.DMA_CalcBaseAndBitshift))
  [Stack]

  - Max Depth = 8
  - Call Chain = DMA_CalcBaseAndBitshift
  [Called By]
  - >> HAL_DMA_Init

  __NVIC_SetPriorityGrouping (Thumb, 60 bytes, Stack size 12 bytes, stm32f4xx_hal_cortex.o(.text.__NVIC_SetPriorityGrouping))
  [Stack]

  - Max Depth = 12
  - Call Chain = __NVIC_SetPriorityGrouping
  [Called By]
  - >> HAL_NVIC_SetPriorityGrouping

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

  - >> HAL_NVIC_SetPriority

  NVIC_EncodePriority (Thumb, 108 bytes, Stack size 32 bytes, stm32f4xx_hal_cortex.o(.text.NVIC_EncodePriority))
  [Stack]

  - Max Depth = 32
  - Call Chain = NVIC_EncodePriority
  [Called By]
  - >> HAL_NVIC_SetPriority

  __NVIC_SetPriority (Thumb, 66 bytes, Stack size 8 bytes, stm32f4xx_hal_cortex.o(.text.__NVIC_SetPriority))
  [Stack]

  - Max Depth = 8
  - Call Chain = __NVIC_SetPriority
  [Called By]
  - >> HAL_NVIC_SetPriority

  __NVIC_EnableIRQ (Thumb, 48 bytes, Stack size 4 bytes, stm32f4xx_hal_cortex.o(.text.__NVIC_EnableIRQ))
  [Stack]

  - Max Depth = 4
  - Call Chain = __NVIC_EnableIRQ
  [Called By]
  - >> HAL_NVIC_EnableIRQ

  ADC_Init (Thumb, 394 bytes, Stack size 8 bytes, stm32f4xx_hal_adc.o(.text.ADC_Init))
  [Stack]

  - Max Depth = 8
  - Call Chain = ADC_Init
  [Called By]
  - >> HAL_ADC_Init

  UART_SetConfig (Thumb, 314 bytes, Stack size 32 bytes, stm32f4xx_hal_uart.o(.text.UART_SetConfig))
  [Stack]

  - Max Depth = 80
  - Call Chain = UART_SetConfig ⇒ __aeabi_uldivmod
  [Calls]
  - >> HAL_RCC_GetPCLK2Freq
  - >> HAL_RCC_GetPCLK1Freq
  - >> __aeabi_uldivmod
  [Called By]
  - >> HAL_UART_Init

  UART_EndRxTransfer (Thumb, 148 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.UART_EndRxTransfer))
  [Stack]

  - Max Depth = 16
  - Call Chain = UART_EndRxTransfer
  [Called By]
  - >> HAL_UART_IRQHandler

  UART_Receive_IT (Thumb, 360 bytes, Stack size 32 bytes, stm32f4xx_hal_uart.o(.text.UART_Receive_IT))
  [Stack]

  - Max Depth = 40
  - Call Chain = UART_Receive_IT ⇒ HAL_UARTEx_RxEventCallback
  [Calls]
  - >> HAL_UART_RxCpltCallback
  - >> HAL_UARTEx_RxEventCallback
  [Called By]
  - >> HAL_UART_IRQHandler

  UART_DMAAbortOnError (Thumb, 28 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.UART_DMAAbortOnError))
  [Stack]

  - Max Depth = 20
  - Call Chain = UART_DMAAbortOnError ⇒ HAL_UART_ErrorCallback
  [Calls]
  - >> HAL_UART_ErrorCallback
  [Address Reference Count : 1]
  - stm32f4xx_hal_uart.o(.text.HAL_UART_IRQHandler)

  UART_Transmit_IT (Thumb, 148 bytes, Stack size 12 bytes, stm32f4xx_hal_uart.o(.text.UART_Transmit_IT))
  [Stack]

  - Max Depth = 12
  - Call Chain = UART_Transmit_IT
  [Called By]
  - >> HAL_UART_IRQHandler

  UART_EndTransmit_IT (Thumb, 38 bytes, Stack size 16 bytes, stm32f4xx_hal_uart.o(.text.UART_EndTransmit_IT))
  [Stack]

  - Max Depth = 20
  - Call Chain = UART_EndTransmit_IT ⇒ HAL_UART_TxCpltCallback
  [Calls]
  - >> HAL_UART_TxCpltCallback
  [Called By]
  - >> HAL_UART_IRQHandler

  prvInitialiseNewTask (Thumb, 276 bytes, Stack size 40 bytes, tasks.o(.text.prvInitialiseNewTask))
  [Stack]

  - Max Depth = 52
  - Call Chain = prvInitialiseNewTask ⇒ pxPortInitialiseStack
  [Calls]
  - >> pxPortInitialiseStack
  - >> vListInitialiseItem
  [Called By]
  - >> xTaskCreate
  - >> xTaskCreateStatic

  prvAddNewTaskToReadyList (Thumb, 272 bytes, Stack size 16 bytes, tasks.o(.text.prvAddNewTaskToReadyList))
  [Stack]

  - Max Depth = 44
  - Call Chain = prvAddNewTaskToReadyList ⇒ prvInitialiseTaskLists ⇒ vListInitialise
  [Calls]
  - >> prvInitialiseTaskLists
  - >> vListInsertEnd
  - >> vPortExitCritical
  - >> vPortEnterCritical
  [Called By]
  - >> xTaskCreate
  - >> xTaskCreateStatic

  prvInitialiseTaskLists (Thumb, 142 bytes, Stack size 24 bytes, tasks.o(.text.prvInitialiseTaskLists))
  [Stack]

  - Max Depth = 28
  - Call Chain = prvInitialiseTaskLists ⇒ vListInitialise
  [Calls]
  - >> vListInitialise
  [Called By]
  - >> prvAddNewTaskToReadyList

  prvDeleteTCB (Thumb, 94 bytes, Stack size 16 bytes, tasks.o(.text.prvDeleteTCB))
  [Stack]

  - Max Depth = 116
  - Call Chain = prvDeleteTCB ⇒ vPortFree ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> vPortFree
  [Called By]
  - >> prvCheckTasksWaitingTermination

  prvResetNextTaskUnblockTime (Thumb, 70 bytes, Stack size 4 bytes, tasks.o(.text.prvResetNextTaskUnblockTime))
  [Stack]

  - Max Depth = 4
  - Call Chain = prvResetNextTaskUnblockTime
  [Called By]
  - >> xTaskIncrementTick
  - >> xTaskResumeAll

  prvAddCurrentTaskToDelayedList (Thumb, 244 bytes, Stack size 24 bytes, tasks.o(.text.prvAddCurrentTaskToDelayedList))
  [Stack]

  - Max Depth = 40
  - Call Chain = prvAddCurrentTaskToDelayedList ⇒ vListInsert
  [Calls]
  - >> uxListRemove
  - >> vListInsert
  - >> vListInsertEnd
  [Called By]
  - >> vTaskDelay

  prvIdleTask (Thumb, 56 bytes, Stack size 16 bytes, tasks.o(.text.prvIdleTask))
  [Stack]

  - Max Depth = 148
  - Call Chain = prvIdleTask ⇒ prvCheckTasksWaitingTermination ⇒ prvDeleteTCB ⇒ vPortFree ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> prvCheckTasksWaitingTermination
  [Address Reference Count : 1]
  - tasks.o(.text.vTaskStartScheduler)

  prvCheckTasksWaitingTermination (Thumb, 90 bytes, Stack size 16 bytes, tasks.o(.text.prvCheckTasksWaitingTermination))
  [Stack]

  - Max Depth = 132
  - Call Chain = prvCheckTasksWaitingTermination ⇒ prvDeleteTCB ⇒ vPortFree ⇒ xTaskResumeAll ⇒ xTaskIncrementTick ⇒ vListInsertEnd
  [Calls]
  - >> prvDeleteTCB
  - >> uxListRemove
  - >> vPortExitCritical
  - >> vPortEnterCritical
  [Called By]
  - >> prvIdleTask

  makeFreeRtosPriority (Thumb, 40 bytes, Stack size 8 bytes, cmsis_os.o(.text.makeFreeRtosPriority))
  [Stack]

  - Max Depth = 8
  - Call Chain = makeFreeRtosPriority
  [Called By]
  - >> osThreadCreate

  prvHeapInit (Thumb, 188 bytes, Stack size 16 bytes, heap_4.o(.text.prvHeapInit))
  [Stack]

  - Max Depth = 16
  - Call Chain = prvHeapInit
  [Called By]
  - >> pvPortMalloc

  prvInsertBlockIntoFreeList (Thumb, 198 bytes, Stack size 12 bytes, heap_4.o(.text.prvInsertBlockIntoFreeList))
  [Stack]

  - Max Depth = 12
  - Call Chain = prvInsertBlockIntoFreeList
  [Called By]
  - >> vPortFree
  - >> pvPortMalloc

  prvTaskExitError (Thumb, 76 bytes, Stack size 12 bytes, port.o(.text.prvTaskExitError))
  [Stack]

  - Max Depth = 12
  - Call Chain = prvTaskExitError
  [Called By]
  - >> xPortStartScheduler
  [Address Reference Count : 1]
  - port.o(.text.pxPortInitialiseStack)

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

  - >> xPortStartScheduler

  prvPortStartFirstTask (Thumb, 34 bytes, Stack size 0 bytes, port.o(.text.prvPortStartFirstTask))
  [Called By]

  - >> xPortStartScheduler

  CDC_Init_FS (Thumb, 44 bytes, Stack size 8 bytes, usbd_cdc_if.o(.text.CDC_Init_FS))
  [Stack]

  - Max Depth = 8
  - Call Chain = CDC_Init_FS
  [Calls]
  - >> USBD_CDC_SetRxBuffer
  - >> USBD_CDC_SetTxBuffer
  [Address Reference Count : 1]
  - usbd_cdc_if.o(.data.USBD_Interface_fops_FS)

  CDC_DeInit_FS (Thumb, 4 bytes, Stack size 0 bytes, usbd_cdc_if.o(.text.CDC_DeInit_FS))
  [Address Reference Count : 1]

  - usbd_cdc_if.o(.data.USBD_Interface_fops_FS)

  CDC_Control_FS (Thumb, 4 bytes, Stack size 0 bytes, usbd_cdc_if.o(.text.CDC_Control_FS))
  [Address Reference Count : 1]

  - usbd_cdc_if.o(.data.USBD_Interface_fops_FS)

  CDC_Receive_FS (Thumb, 28 bytes, Stack size 8 bytes, usbd_cdc_if.o(.text.CDC_Receive_FS))
  [Stack]

  - Max Depth = 136
  - Call Chain = CDC_Receive_FS ⇒ USBD_CDC_ReceivePacket ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_CDC_ReceivePacket
  - >> USBD_CDC_SetRxBuffer
  [Address Reference Count : 1]
  - usbd_cdc_if.o(.data.USBD_Interface_fops_FS)

  CDC_TransmitCplt_FS (Thumb, 4 bytes, Stack size 0 bytes, usbd_cdc_if.o(.text.CDC_TransmitCplt_FS))
  [Address Reference Count : 1]

  - usbd_cdc_if.o(.data.USBD_Interface_fops_FS)

  USBD_CDC_Init (Thumb, 198 bytes, Stack size 24 bytes, usbd_cdc.o(.text.USBD_CDC_Init))
  [Stack]

  - Max Depth = 144 + Unknown Stack Size
  - Call Chain = USBD_CDC_Init ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> __aeabi_memclr4
  - >> USBD_static_malloc
  - >> USBD_LL_PrepareReceive
  - >> USBD_LL_OpenEP
  [Address Reference Count : 1]
  - usbd_cdc.o(.data.USBD_CDC)

  USBD_CDC_DeInit (Thumb, 96 bytes, Stack size 16 bytes, usbd_cdc.o(.text.USBD_CDC_DeInit))
  [Stack]

  - Max Depth = 64
  - Call Chain = USBD_CDC_DeInit ⇒ USBD_LL_CloseEP ⇒ HAL_PCD_EP_Close ⇒ USB_DeactivateEndpoint
  [Calls]
  - >> USBD_static_free
  - >> USBD_LL_CloseEP
  [Address Reference Count : 1]
  - usbd_cdc.o(.data.USBD_CDC)

  USBD_CDC_Setup (Thumb, 208 bytes, Stack size 24 bytes, usbd_cdc.o(.text.USBD_CDC_Setup))
  [Stack]

  - Max Depth = 152
  - Call Chain = USBD_CDC_Setup ⇒ USBD_CtlPrepareRx ⇒ USBD_LL_PrepareReceive ⇒ HAL_PCD_EP_Receive ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_CtlPrepareRx
  - >> USBD_CtlError
  - >> USBD_CtlSendData
  [Address Reference Count : 1]
  - usbd_cdc.o(.data.USBD_CDC)

  USBD_CDC_EP0_RxReady (Thumb, 54 bytes, Stack size 8 bytes, usbd_cdc.o(.text.USBD_CDC_EP0_RxReady))
  [Stack]

  - Max Depth = 8
  - Call Chain = USBD_CDC_EP0_RxReady
  [Address Reference Count : 1]
  - usbd_cdc.o(.data.USBD_CDC)

  USBD_CDC_DataIn (Thumb, 118 bytes, Stack size 16 bytes, usbd_cdc.o(.text.USBD_CDC_DataIn))
  [Stack]

  - Max Depth = 136
  - Call Chain = USBD_CDC_DataIn ⇒ USBD_LL_Transmit ⇒ HAL_PCD_EP_Transmit ⇒ USB_EPStartXfer ⇒ USB_WritePacket
  [Calls]
  - >> USBD_LL_Transmit
  [Address Reference Count : 1]
  - usbd_cdc.o(.data.USBD_CDC)

  USBD_CDC_DataOut (Thumb, 58 bytes, Stack size 16 bytes, usbd_cdc.o(.text.USBD_CDC_DataOut))
  [Stack]

  - Max Depth = 24
  - Call Chain = USBD_CDC_DataOut ⇒ USBD_LL_GetRxDataSize ⇒ HAL_PCD_EP_GetRxCount
  [Calls]
  - >> USBD_LL_GetRxDataSize
  [Address Reference Count : 1]
  - usbd_cdc.o(.data.USBD_CDC)

  USBD_CDC_GetHSCfgDesc (Thumb, 86 bytes, Stack size 24 bytes, usbd_cdc.o(.text.USBD_CDC_GetHSCfgDesc))
  [Stack]

  - Max Depth = 32
  - Call Chain = USBD_CDC_GetHSCfgDesc ⇒ USBD_GetEpDesc
  [Calls]
  - >> USBD_GetEpDesc
  [Address Reference Count : 1]
  - usbd_cdc.o(.data.USBD_CDC)

  USBD_CDC_GetFSCfgDesc (Thumb, 82 bytes, Stack size 24 bytes, usbd_cdc.o(.text.USBD_CDC_GetFSCfgDesc))
  [Stack]

  - Max Depth = 32
  - Call Chain = USBD_CDC_GetFSCfgDesc ⇒ USBD_GetEpDesc
  [Calls]
  - >> USBD_GetEpDesc
  [Address Reference Count : 1]
  - usbd_cdc.o(.data.USBD_CDC)

  USBD_CDC_GetOtherSpeedCfgDesc (Thumb, 82 bytes, Stack size 24 bytes, usbd_cdc.o(.text.USBD_CDC_GetOtherSpeedCfgDesc))
  [Stack]

  - Max Depth = 32
  - Call Chain = USBD_CDC_GetOtherSpeedCfgDesc ⇒ USBD_GetEpDesc
  [Calls]
  - >> USBD_GetEpDesc
  [Address Reference Count : 1]
  - usbd_cdc.o(.data.USBD_CDC)

  ### Undefined Global Symbols