# Static Call Graph for image .\Objects\bl210x_demo.axf

#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Wed Jul 07 21:23:02 2021

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

### Call chain for Maximum Stack Depth:

main ⇒ uart_init ⇒ UART_Init ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ __aeabi_llsr

### Mutually Recursive functions

- NMI_Handler ⇒ NMI_Handler
- HardFault_Handler ⇒ HardFault_Handler
- SVC_Handler ⇒ SVC_Handler
- PendSV_Handler ⇒ PendSV_Handler
- SysTick_Handler ⇒ SysTick_Handler
- UART1_Handler ⇒ UART1_Handler
- UART2_Handler ⇒ UART2_Handler
- PWM_Handler ⇒ PWM_Handler
- RTC_Handler ⇒ RTC_Handler
- IIC_Handler ⇒ IIC_Handler
- SPI_Handler ⇒ SPI_Handler
- AES_Handler ⇒ AES_Handler
- WDT_Handler ⇒ WDT_Handler
- GPIOA0_Handler ⇒ GPIOA0_Handler
- GPIOA1_Handler ⇒ GPIOA1_Handler
- GPIOA4_Handler ⇒ GPIOA4_Handler
- GPIOA5_Handler ⇒ GPIOA5_Handler
- GPIOB0_Handler ⇒ GPIOB0_Handler
- GPIOB1_Handler ⇒ GPIOB1_Handler
- GPIOA14_Handler ⇒ GPIOA14_Handler
- GPIOA15_Handler ⇒ GPIOA15_Handler
- GPIOA_Handler ⇒ GPIOA_Handler
- GPIOB_Handler ⇒ GPIOB_Handler
- IRQ21_Handler ⇒ IRQ21_Handler
- IRQ22_Handler ⇒ IRQ22_Handler
- IRQ23_Handler ⇒ IRQ23_Handler
- IRQ24_Handler ⇒ IRQ24_Handler
- IRQ25_Handler ⇒ IRQ25_Handler
- IRQ26_Handler ⇒ IRQ26_Handler
- IRQ27_Handler ⇒ IRQ27_Handler
- IRQ28_Handler ⇒ IRQ28_Handler
- IRQ29_Handler ⇒ IRQ29_Handler
- IRQ30_Handler ⇒ IRQ30_Handler
- IRQ31_Handler ⇒ IRQ31_Handler

  ### Function Pointers

  - ADC_Handler from bl2101x_test.o(i.ADC_Handler) referenced from startup_bl2101.o(RESET)
  - AES_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - GPIOA0_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - GPIOA14_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - GPIOA15_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - GPIOA1_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - GPIOA4_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - GPIOA5_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - GPIOA_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - GPIOB0_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - GPIOB1_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - GPIOB_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - HardFault_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - IIC_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - IRQ21_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - IRQ22_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - IRQ23_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - IRQ24_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - IRQ25_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - IRQ26_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - IRQ27_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - IRQ28_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - IRQ29_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - IRQ30_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - IRQ31_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - NMI_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - PWM_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - PendSV_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - RTC_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - Reset_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - SPI_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - SVC_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - SysTick_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - TIMER_Handler from bl2101x_test.o(i.TIMER_Handler) referenced from startup_bl2101.o(RESET)
  - UART0_Handler from bl2101x_test.o(i.UART0_Handler) referenced from startup_bl2101.o(RESET)
  - UART1_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - UART2_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - WDT_Handler from startup_bl2101.o(.text) referenced from startup_bl2101.o(RESET)
  - __main from entry.o(.ARM.Collect$$$$00000000) referenced from startup_bl2101.o(.text)
  - main from main.o(i.main) referenced from entry9a.o(.ARM.Collect$$$$0000000B)

  ### Global Symbols

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

  - startup_bl2101.o(.text)

  _main_stk (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))

  _main_scatterload (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
  [Calls]

  - >> __scatterload

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

  - >> __scatterload

  _main_clock (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))

  _main_cpp_init (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))

  _main_init (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))

  __rt_final_cpp (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))

  __rt_final_exit (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F))

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

  - startup_bl2101.o(RESET)

  NMI_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  HardFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

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

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

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

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

  SysTick_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  UART1_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  UART2_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  PWM_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  RTC_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  IIC_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  SPI_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  AES_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  WDT_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  GPIOA0_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  GPIOA1_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  GPIOA4_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  GPIOA5_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  GPIOB0_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  GPIOB1_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  GPIOA14_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  GPIOA15_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  GPIOA_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  GPIOB_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  IRQ21_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  IRQ22_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  IRQ23_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  IRQ24_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  IRQ25_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  IRQ26_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  IRQ27_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  IRQ28_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  IRQ29_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  IRQ30_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  IRQ31_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_bl2101.o(.text))
  [Calls]

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

  __aeabi_uidiv (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)

  __aeabi_uidivmod (Thumb, 44 bytes, Stack size 12 bytes, uidiv.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = __aeabi_uidivmod
  [Called By]
  - >> UART_Init
  - >> SystemCoreClockUpdate

  __aeabi_memset (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
  [Called By]

  - >> _memset$wrapper
  - >> __aeabi_memclr

  __aeabi_memset4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)

  __aeabi_memset8 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)

  __aeabi_memclr (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_memset

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

  - >> ADC_Handler

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

  _memset$wrapper (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_memset

  __aeabi_dmul (Thumb, 202 bytes, Stack size 72 bytes, dmul.o(.text))
  [Stack]

  - Max Depth = 128
  - Call Chain = __aeabi_dmul ⇒ _double_epilogue ⇒ __aeabi_llsr
  [Calls]
  - >> _double_epilogue
  [Called By]
  - >> UART_Init

  __aeabi_ddiv (Thumb, 234 bytes, Stack size 40 bytes, ddiv.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = __aeabi_ddiv ⇒ _double_round
  [Calls]
  - >> _double_round
  [Called By]
  - >> UART_Init

  __aeabi_ui2d (Thumb, 24 bytes, Stack size 16 bytes, dfltui.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = __aeabi_ui2d ⇒ _double_epilogue ⇒ __aeabi_llsr
  [Calls]
  - >> _double_epilogue
  [Called By]
  - >> UART_Init

  __aeabi_cdrcmple (Thumb, 38 bytes, Stack size 0 bytes, cdrcmple.o(.text))
  [Called By]

  - >> UART_Init

  __I$use$fp (Thumb, 0 bytes, Stack size 8 bytes, iusefp.o(.text), UNUSED)

  _double_round (Thumb, 26 bytes, Stack size 8 bytes, depilogue.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = _double_round
  [Called By]
  - >> __aeabi_ddiv
  - >> _double_epilogue

  _double_epilogue (Thumb, 164 bytes, Stack size 48 bytes, depilogue.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = _double_epilogue ⇒ __aeabi_llsr
  [Calls]
  - >> __aeabi_llsr
  - >> __aeabi_llsl
  - >> __ARM_clz
  - >> _double_round
  [Called By]
  - >> __aeabi_ui2d
  - >> __aeabi_dmul

  __scatterload (Thumb, 28 bytes, Stack size 0 bytes, init.o(.text))
  [Calls]

  - >> __main_after_scatterload
  [Called By]
  - >> _main_scatterload

  __scatterload_rt2 (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)

  __aeabi_llsl (Thumb, 32 bytes, Stack size 8 bytes, llshl.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = __aeabi_llsl
  [Called By]
  - >> _double_epilogue

  _ll_shift_l (Thumb, 0 bytes, Stack size 8 bytes, llshl.o(.text), UNUSED)

  __aeabi_llsr (Thumb, 34 bytes, Stack size 8 bytes, llushr.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = __aeabi_llsr
  [Called By]
  - >> _double_epilogue

  _ll_ushift_r (Thumb, 0 bytes, Stack size 8 bytes, llushr.o(.text), UNUSED)

  ADC_Handler (Thumb, 738 bytes, Stack size 32 bytes, bl2101x_test.o(i.ADC_Handler))
  [Stack]

  - Max Depth = 48
  - Call Chain = ADC_Handler ⇒ ADC_Read
  [Calls]
  - >> ADC_Stop
  - >> ADC_Start
  - >> ADC_Read_FIFO
  - >> ADC_Read
  - >> ADC_IntOVFStat
  - >> ADC_IntOVFClr
  - >> ADC_IntHALFFULLStat
  - >> ADC_IntHALFFULLClr
  - >> ADC_IntFULLStat
  - >> ADC_IntFULLClr
  - >> __aeabi_memclr4
  [Address Reference Count : 1]
  - startup_bl2101.o(RESET)

  ADC_IntFULLClr (Thumb, 10 bytes, Stack size 0 bytes, bl2101_adc.o(i.ADC_IntFULLClr))
  [Called By]

  - >> ADC_Handler

  ADC_IntFULLStat (Thumb, 14 bytes, Stack size 0 bytes, bl2101_adc.o(i.ADC_IntFULLStat))
  [Called By]

  - >> ADC_Handler

  ADC_IntHALFFULLClr (Thumb, 10 bytes, Stack size 0 bytes, bl2101_adc.o(i.ADC_IntHALFFULLClr))
  [Called By]

  - >> ADC_Handler

  ADC_IntHALFFULLStat (Thumb, 14 bytes, Stack size 0 bytes, bl2101_adc.o(i.ADC_IntHALFFULLStat))
  [Called By]

  - >> ADC_Handler

  ADC_IntOVFClr (Thumb, 10 bytes, Stack size 0 bytes, bl2101_adc.o(i.ADC_IntOVFClr))
  [Called By]

  - >> ADC_Handler

  ADC_IntOVFStat (Thumb, 14 bytes, Stack size 0 bytes, bl2101_adc.o(i.ADC_IntOVFStat))
  [Called By]

  - >> ADC_Handler

  ADC_Read (Thumb, 40 bytes, Stack size 16 bytes, bl2101_adc.o(i.ADC_Read))
  [Stack]

  - Max Depth = 16
  - Call Chain = ADC_Read
  [Calls]
  - >> chn2idx
  [Called By]
  - >> ADC_Handler

  ADC_Read_FIFO (Thumb, 28 bytes, Stack size 8 bytes, bl2101_adc.o(i.ADC_Read_FIFO))
  [Stack]

  - Max Depth = 8
  - Call Chain = ADC_Read_FIFO
  [Called By]
  - >> ADC_Handler

  ADC_Start (Thumb, 14 bytes, Stack size 0 bytes, bl2101_adc.o(i.ADC_Start))
  [Called By]

  - >> ADC_Handler

  ADC_Stop (Thumb, 14 bytes, Stack size 0 bytes, bl2101_adc.o(i.ADC_Stop))
  [Called By]

  - >> ADC_Handler

  Delay1ms (Thumb, 42 bytes, Stack size 8 bytes, uti.o(i.Delay1ms))
  [Stack]

  - Max Depth = 8
  - Call Chain = Delay1ms
  [Called By]
  - >> main

  GPIO_ClrBit (Thumb, 12 bytes, Stack size 0 bytes, bl2101_gpio.o(i.GPIO_ClrBit))
  [Called By]

  - >> main
  - >> led_init

  GPIO_Init (Thumb, 946 bytes, Stack size 8 bytes, bl2101_gpio.o(i.GPIO_Init))
  [Stack]

  - Max Depth = 8
  - Call Chain = GPIO_Init
  [Called By]
  - >> led_init

  GPIO_SetBit (Thumb, 12 bytes, Stack size 0 bytes, bl2101_gpio.o(i.GPIO_SetBit))
  [Called By]

  - >> main
  - >> led_init

  OTP_Read_2 (Thumb, 16 bytes, Stack size 0 bytes, bl2101_otp.o(i.OTP_Read_2))
  [Called By]

  - >> SystemInit

  PORT_Init (Thumb, 174 bytes, Stack size 0 bytes, bl2101_port.o(i.PORT_Init))
  [Called By]

  - >> uart_init

  Switch_CLK_32KHZ (Thumb, 74 bytes, Stack size 4 bytes, system_bl2101.o(i.Switch_CLK_32KHZ))
  [Stack]

  - Max Depth = 4
  - Call Chain = Switch_CLK_32KHZ
  [Calls]
  - >> Switch_CLK_48MHZ
  [Called By]
  - >> SystemInit

  Switch_CLK_48MHZ (Thumb, 30 bytes, Stack size 0 bytes, system_bl2101.o(i.Switch_CLK_48MHZ))
  [Called By]

  - >> SystemInit
  - >> Switch_CLK_XTAL_DIV4
  - >> Switch_CLK_XTAL_DIV2
  - >> Switch_CLK_XTAL
  - >> Switch_CLK_48MHZ_DIV4
  - >> Switch_CLK_48MHZ_DIV2
  - >> Switch_CLK_32KHZ

  Switch_CLK_48MHZ_DIV2 (Thumb, 74 bytes, Stack size 4 bytes, system_bl2101.o(i.Switch_CLK_48MHZ_DIV2))
  [Stack]

  - Max Depth = 4
  - Call Chain = Switch_CLK_48MHZ_DIV2
  [Calls]
  - >> Switch_CLK_48MHZ
  [Called By]
  - >> SystemInit

  Switch_CLK_48MHZ_DIV4 (Thumb, 74 bytes, Stack size 4 bytes, system_bl2101.o(i.Switch_CLK_48MHZ_DIV4))
  [Stack]

  - Max Depth = 4
  - Call Chain = Switch_CLK_48MHZ_DIV4
  [Calls]
  - >> Switch_CLK_48MHZ
  [Called By]
  - >> SystemInit

  Switch_CLK_XTAL (Thumb, 98 bytes, Stack size 4 bytes, system_bl2101.o(i.Switch_CLK_XTAL))
  [Stack]

  - Max Depth = 4
  - Call Chain = Switch_CLK_XTAL
  [Calls]
  - >> Switch_CLK_48MHZ
  [Called By]
  - >> SystemInit

  Switch_CLK_XTAL_DIV2 (Thumb, 110 bytes, Stack size 4 bytes, system_bl2101.o(i.Switch_CLK_XTAL_DIV2))
  [Stack]

  - Max Depth = 4
  - Call Chain = Switch_CLK_XTAL_DIV2
  [Calls]
  - >> Switch_CLK_48MHZ
  [Called By]
  - >> SystemInit

  Switch_CLK_XTAL_DIV4 (Thumb, 110 bytes, Stack size 4 bytes, system_bl2101.o(i.Switch_CLK_XTAL_DIV4))
  [Stack]

  - Max Depth = 4
  - Call Chain = Switch_CLK_XTAL_DIV4
  [Calls]
  - >> Switch_CLK_48MHZ
  [Called By]
  - >> SystemInit

  SystemCoreClockUpdate (Thumb, 146 bytes, Stack size 8 bytes, system_bl2101.o(i.SystemCoreClockUpdate))
  [Stack]

  - Max Depth = 20
  - Call Chain = SystemCoreClockUpdate ⇒ __aeabi_uidivmod
  [Calls]
  - >> __aeabi_uidivmod
  [Called By]
  - >> SystemInit

  SystemInit (Thumb, 136 bytes, Stack size 24 bytes, system_bl2101.o(i.SystemInit))
  [Stack]

  - Max Depth = 44
  - Call Chain = SystemInit ⇒ SystemCoreClockUpdate ⇒ __aeabi_uidivmod
  [Calls]
  - >> OTP_Read_2
  - >> __ARM_common_switch8
  - >> SystemCoreClockUpdate
  - >> Switch_CLK_XTAL_DIV4
  - >> Switch_CLK_XTAL_DIV2
  - >> Switch_CLK_XTAL
  - >> Switch_CLK_48MHZ_DIV4
  - >> Switch_CLK_48MHZ_DIV2
  - >> Switch_CLK_48MHZ
  - >> Switch_CLK_32KHZ
  [Called By]
  - >> main

  TIMER_Handler (Thumb, 82 bytes, Stack size 8 bytes, bl2101x_test.o(i.TIMER_Handler))
  [Stack]

  - Max Depth = 8
  - Call Chain = TIMER_Handler
  [Calls]
  - >> TIMER_INTStat
  - >> TIMER_INTClr
  [Address Reference Count : 1]
  - startup_bl2101.o(RESET)

  TIMER_INTClr (Thumb, 10 bytes, Stack size 0 bytes, bl2101_timer.o(i.TIMER_INTClr))
  [Called By]

  - >> TIMER_Handler

  TIMER_INTStat (Thumb, 24 bytes, Stack size 0 bytes, bl2101_timer.o(i.TIMER_INTStat))
  [Called By]

  - >> TIMER_Handler

  TIMER_Init (Thumb, 184 bytes, Stack size 12 bytes, bl2101_timer.o(i.TIMER_Init))
  [Stack]

  - Max Depth = 12
  - Call Chain = TIMER_Init
  [Calls]
  - >> TIMER_Stop
  [Called By]
  - >> TIMER_L16_Init

  TIMER_L16_Init (Thumb, 16 bytes, Stack size 8 bytes, bl2101x_test.o(i.TIMER_L16_Init))
  [Stack]

  - Max Depth = 20
  - Call Chain = TIMER_L16_Init ⇒ TIMER_Init
  [Calls]
  - >> TIMER_Init
  [Called By]
  - >> main

  TIMER_Stop (Thumb, 40 bytes, Stack size 0 bytes, bl2101_timer.o(i.TIMER_Stop))
  [Called By]

  - >> TIMER_Init

  UART0_Handler (Thumb, 48 bytes, Stack size 0 bytes, bl2101x_test.o(i.UART0_Handler))
  [Address Reference Count : 1]

  - startup_bl2101.o(RESET)

  UART_Init (Thumb, 350 bytes, Stack size 56 bytes, bl2101_uart.o(i.UART_Init))
  [Stack]

  - Max Depth = 184
  - Call Chain = UART_Init ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ __aeabi_llsr
  [Calls]
  - >> __aeabi_ui2d
  - >> __aeabi_dmul
  - >> __aeabi_ddiv
  - >> __aeabi_cdrcmple
  - >> NVIC_EnableIRQ
  - >> NVIC_DisableIRQ
  - >> __aeabi_uidivmod
  [Called By]
  - >> uart_init

  UART_SendData (Thumb, 16 bytes, Stack size 0 bytes, bl2101_uart.o(i.UART_SendData))
  [Called By]

  - >> uart_test

  __ARM_clz (Thumb, 46 bytes, Stack size 0 bytes, depilogue.o(i.__ARM_clz))
  [Called By]

  - >> _double_epilogue

  __ARM_common_switch8 (Thumb, 28 bytes, Stack size 8 bytes, system_bl2101.o(i.__ARM_common_switch8))
  [Stack]

  - Max Depth = 8
  - Call Chain = __ARM_common_switch8
  [Called By]
  - >> SystemInit
  - >> main

  __scatterload_copy (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)

  __scatterload_null (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)

  __scatterload_zeroinit (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)

  led_init (Thumb, 82 bytes, Stack size 8 bytes, bl2101x_test.o(i.led_init))
  [Stack]

  - Max Depth = 16
  - Call Chain = led_init ⇒ GPIO_Init
  [Calls]
  - >> GPIO_SetBit
  - >> GPIO_Init
  - >> GPIO_ClrBit
  [Called By]
  - >> main

  main (Thumb, 230 bytes, Stack size 0 bytes, main.o(i.main))
  [Stack]

  - Max Depth = 200
  - Call Chain = main ⇒ uart_init ⇒ UART_Init ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ __aeabi_llsr
  [Calls]
  - >> GPIO_SetBit
  - >> GPIO_ClrBit
  - >> __ARM_common_switch8
  - >> SystemInit
  - >> Delay1ms
  - >> uart_test
  - >> uart_init
  - >> led_init
  - >> TIMER_L16_Init
  [Address Reference Count : 1]
  - entry9a.o(.ARM.Collect$$$$0000000B)

  uart_init (Thumb, 70 bytes, Stack size 16 bytes, bl2101x_test.o(i.uart_init))
  [Stack]

  - Max Depth = 200
  - Call Chain = uart_init ⇒ UART_Init ⇒ __aeabi_dmul ⇒ _double_epilogue ⇒ __aeabi_llsr
  [Calls]
  - >> UART_Init
  - >> PORT_Init
  [Called By]
  - >> main

  uart_test (Thumb, 14 bytes, Stack size 8 bytes, bl2101x_test.o(i.uart_test))
  [Stack]

  - Max Depth = 8
  - Call Chain = uart_test
  [Calls]
  - >> UART_SendData
  [Called By]
  - >> main

  ### Local Symbols

  NVIC_DisableIRQ (Thumb, 14 bytes, Stack size 0 bytes, bl2101_uart.o(i.NVIC_DisableIRQ))
  [Called By]

  - >> UART_Init

  NVIC_EnableIRQ (Thumb, 14 bytes, Stack size 0 bytes, bl2101_uart.o(i.NVIC_EnableIRQ))
  [Called By]

  - >> UART_Init

  chn2idx (Thumb, 92 bytes, Stack size 0 bytes, bl2101_adc.o(i.chn2idx))
  [Called By]

  - >> ADC_Read

  ### Undefined Global Symbols