Static Call Graph - [WH-LR30-H10\WH-LR30-H10.axf]

# Static Call Graph for image WH-LR30-H10\WH-LR30-H10.axf

#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Fri Oct 15 07:54:49 2021

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

### Call chain for Maximum Stack Depth:

RadioIsChannelFree ⇒ RadioSetRxConfig ⇒ SX126xSetLoRaSymbNumTimeout ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout

### Mutually Recursive functions

- ADC1_2_IRQHandler ⇒ ADC1_2_IRQHandler
- BusFault_Handler ⇒ BusFault_Handler
- HardFault_Handler ⇒ HardFault_Handler
- MemManage_Handler ⇒ MemManage_Handler
- NMI_Handler ⇒ NMI_Handler
- RadioSetPublicNetwork ⇒ RadioSetModem
- UsageFault_Handler ⇒ UsageFault_Handler

  ### Function Pointers

  - ADC1_2_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - ADC3_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - BusFault_Handler from stm32f1xx_it.o(i.BusFault_Handler) referenced from startup_stm32f103xe.o(RESET)
  - CAN1_RX1_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - CAN1_SCE_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - DMA1_Channel1_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - DMA1_Channel2_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - DMA1_Channel3_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - DMA1_Channel4_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - DMA1_Channel5_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - DMA1_Channel6_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - DMA1_Channel7_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - DMA2_Channel1_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - DMA2_Channel2_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - DMA2_Channel3_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - DMA2_Channel4_5_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - DebugMon_Handler from stm32f1xx_it.o(i.DebugMon_Handler) referenced from startup_stm32f103xe.o(RESET)
  - EXTI0_IRQHandler from stm32f1xx_it.o(i.EXTI0_IRQHandler) referenced from startup_stm32f103xe.o(RESET)
  - EXTI15_10_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - EXTI1_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - EXTI2_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - EXTI3_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - EXTI4_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - EXTI9_5_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - FLASH_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - FSMC_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - HardFault_Handler from stm32f1xx_it.o(i.HardFault_Handler) referenced from startup_stm32f103xe.o(RESET)
  - I2C1_ER_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - I2C1_EV_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - I2C2_ER_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - I2C2_EV_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - LoRa_Test_Handle from test.o(i.LoRa_Test_Handle) referenced from test.o(i.LoRa_Test_Main)
  - MemManage_Handler from stm32f1xx_it.o(i.MemManage_Handler) referenced from startup_stm32f103xe.o(RESET)
  - NMI_Handler from stm32f1xx_it.o(i.NMI_Handler) referenced from startup_stm32f103xe.o(RESET)
  - OnRxDone from test.o(i.OnRxDone) referenced from test.o(i.LoRa_Init)
  - OnRxError from test.o(i.OnRxError) referenced from test.o(i.LoRa_Init)
  - OnRxTimeout from test.o(i.OnRxTimeout) referenced from test.o(i.LoRa_Init)
  - OnTxDone from test.o(i.OnTxDone) referenced from test.o(i.LoRa_Init)
  - OnTxTimeout from test.o(i.OnTxTimeout) referenced from test.o(i.LoRa_Init)
  - PVD_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - PendSV_Handler from stm32f1xx_it.o(i.PendSV_Handler) referenced from startup_stm32f103xe.o(RESET)
  - RCC_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - RTC_Alarm_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - RTC_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - RadioCheckRfFrequency from radio.o(i.RadioCheckRfFrequency) referenced from radio.o(.constdata)
  - RadioGetStatus from radio.o(i.RadioGetStatus) referenced from radio.o(.constdata)
  - RadioGetWakeupTime from radio.o(i.RadioGetWakeupTime) referenced from radio.o(.constdata)
  - RadioInit from radio.o(i.RadioInit) referenced from radio.o(.constdata)
  - RadioIrqProcess from radio.o(i.RadioIrqProcess) referenced from radio.o(.constdata)
  - RadioIsChannelFree from radio.o(i.RadioIsChannelFree) referenced from radio.o(.constdata)
  - RadioOnDioIrq from radio.o(i.RadioOnDioIrq) referenced from radio.o(i.RadioInit)
  - RadioOnRxTimeoutIrq from radio.o(i.RadioOnRxTimeoutIrq) referenced from radio.o(i.RadioInit)
  - RadioOnTxTimeoutIrq from radio.o(i.RadioOnTxTimeoutIrq) referenced from radio.o(i.RadioInit)
  - RadioRandom from radio.o(i.RadioRandom) referenced from radio.o(.constdata)
  - RadioRead from radio.o(i.RadioRead) referenced from radio.o(.constdata)
  - RadioReadBuffer from radio.o(i.RadioReadBuffer) referenced from radio.o(.constdata)
  - RadioRssi from radio.o(i.RadioRssi) referenced from radio.o(.constdata)
  - RadioRx from radio.o(i.RadioRx) referenced from radio.o(.constdata)
  - RadioRxBoosted from radio.o(i.RadioRxBoosted) referenced from radio.o(.constdata)
  - RadioSend from radio.o(i.RadioSend) referenced from radio.o(.constdata)
  - RadioSetChannel from radio.o(i.RadioSetChannel) referenced from radio.o(.constdata)
  - RadioSetMaxPayloadLength from radio.o(i.RadioSetMaxPayloadLength) referenced from radio.o(.constdata)
  - RadioSetModem from radio.o(i.RadioSetModem) referenced from radio.o(.constdata)
  - RadioSetPublicNetwork from radio.o(i.RadioSetPublicNetwork) referenced from radio.o(.constdata)
  - RadioSetRxConfig from radio.o(i.RadioSetRxConfig) referenced from radio.o(.constdata)
  - RadioSetRxDutyCycle from radio.o(i.RadioSetRxDutyCycle) referenced from radio.o(.constdata)
  - RadioSetTxConfig from radio.o(i.RadioSetTxConfig) referenced from radio.o(.constdata)
  - RadioSetTxContinuousWave from radio.o(i.RadioSetTxContinuousWave) referenced from radio.o(.constdata)
  - RadioSleep from radio.o(i.RadioSleep) referenced from radio.o(.constdata)
  - RadioStandby from radio.o(i.RadioStandby) referenced from radio.o(.constdata)
  - RadioStartCad from radio.o(i.RadioStartCad) referenced from radio.o(.constdata)
  - RadioTimeOnAir from radio.o(i.RadioTimeOnAir) referenced from radio.o(.constdata)
  - RadioWrite from radio.o(i.RadioWrite) referenced from radio.o(.constdata)
  - RadioWriteBuffer from radio.o(i.RadioWriteBuffer) referenced from radio.o(.constdata)
  - Reset_Handler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - SDIO_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - SPI1_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - SPI2_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - SPI3_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - SVC_Handler from stm32f1xx_it.o(i.SVC_Handler) referenced from startup_stm32f103xe.o(RESET)
  - SysTick_Handler from stm32f1xx_it.o(i.SysTick_Handler) referenced from startup_stm32f103xe.o(RESET)
  - SystemInit from system_stm32f1xx.o(i.SystemInit) referenced from startup_stm32f103xe.o(.text)
  - TAMPER_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM1_BRK_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM1_CC_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM1_TRG_COM_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM1_UP_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM2_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM3_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM4_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM5_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM6_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM7_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM8_BRK_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM8_CC_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM8_TRG_COM_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - TIM8_UP_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - UART4_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - UART5_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - USART1_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - USART2_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - USART3_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - USBWakeUp_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - USB_HP_CAN1_TX_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - USB_LP_CAN1_RX0_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - UsageFault_Handler from stm32f1xx_it.o(i.UsageFault_Handler) referenced from startup_stm32f103xe.o(RESET)
  - WWDG_IRQHandler from startup_stm32f103xe.o(.text) referenced from startup_stm32f103xe.o(RESET)
  - __main from entry.o(.ARM.Collect$$$$00000000) referenced from startup_stm32f103xe.o(.text)
  - fputc from main.o(i.fputc) referenced from printf8.o(i.__0printf$8)
  - 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_stm32f103xe.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, 8 bytes, Stack size 0 bytes, startup_stm32f103xe.o(.text))
  [Address Reference Count : 1]

  - startup_stm32f103xe.o(RESET)

  ADC1_2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f103xe.o(.text))
  [Calls]

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

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

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

  - startup_stm32f103xe.o(RESET)

  __aeabi_llsr (Thumb, 32 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)
  [Called By]

  - >> __aeabi_uldivmod

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

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

  - >> SX126xWriteRegisters
  - >> SX126xWriteCommand
  - >> SX126xWriteBuffer
  - >> SX126xReadRegisters
  - >> SX126xReadCommand
  - >> SX126xReadBuffer
  - >> OnRxDone

  __aeabi_memcpy4 (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text), UNUSED)

  __aeabi_memcpy8 (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text), UNUSED)

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

  - >> _memset$wrapper
  - >> __aeabi_memclr

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

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

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

  - >> __aeabi_memset
  [Called By]
  - >> SX126xReadRegisters
  - >> SX126xReadCommand
  - >> SX126xReadBuffer

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

  - >> SystemClock_Config
  - >> SX126xGetPacketStatus

  __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_uldivmod (Thumb, 98 bytes, Stack size 40 bytes, uldiv.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_llsr
  - >> __aeabi_llsl
  [Called By]
  - >> _printf_core

  __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, 30 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)
  [Called By]

  - >> __aeabi_uldivmod

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

  BusFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(i.BusFault_Handler))
  [Calls]

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

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

  - startup_stm32f103xe.o(RESET)

  DelayMs (Thumb, 24 bytes, Stack size 16 bytes, timer.o(i.DelayMs))
  [Stack]

  - Max Depth = 16
  - Call Chain = DelayMs
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> LoRa_Init
  - >> SX126xReset
  - >> RadioSleep
  - >> RadioIsChannelFree

  EXTI0_IRQHandler (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_it.o(i.EXTI0_IRQHandler))
  [Stack]

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

  HAL_GPIO_EXTI_Callback (Thumb, 24 bytes, Stack size 0 bytes, sx126x-board.o(i.HAL_GPIO_EXTI_Callback))
  [Called By]

  - >> HAL_GPIO_EXTI_IRQHandler

  HAL_GPIO_EXTI_IRQHandler (Thumb, 18 bytes, Stack size 8 bytes, stm32f1xx_hal_gpio.o(i.HAL_GPIO_EXTI_IRQHandler))
  [Stack]

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

  HAL_GPIO_Init (Thumb, 462 bytes, Stack size 40 bytes, stm32f1xx_hal_gpio.o(i.HAL_GPIO_Init))
  [Stack]

  - Max Depth = 40
  - Call Chain = HAL_GPIO_Init
  [Called By]
  - >> HAL_UART_MspInit
  - >> HAL_SPI_MspInit
  - >> MX_GPIO_Init
  - >> SX126xIoInit

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

  - >> SX126xWaitOnBusy
  - >> SX126xGetDio1PinState

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

  - >> MX_GPIO_Init
  - >> SX126xWriteRegisters
  - >> SX126xWriteCommand
  - >> SX126xWriteBuffer
  - >> SX126xWakeup
  - >> SX126xReset
  - >> SX126xReadRegisters
  - >> SX126xReadCommand
  - >> SX126xReadBuffer
  - >> SX126xIoInit
  - >> SX126xDbgPinTxWrite
  - >> SX126xDbgPinRxWrite

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

  - >> HAL_SPI_TransmitReceive
  - >> HAL_SPI_Transmit
  - >> SPI_WaitFlagStateUntilTimeout
  - >> HAL_UART_Transmit
  - >> HAL_RCC_OscConfig
  - >> HAL_RCC_ClockConfig
  - >> TimerStart
  - >> TimerService
  - >> TimerGetElapsedTime
  - >> TimerGetCurrentTime
  - >> DelayMs
  - >> UART_WaitOnFlagUntilTimeout

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

  - >> SysTick_Handler

  HAL_Init (Thumb, 32 bytes, Stack size 8 bytes, stm32f1xx_hal.o(i.HAL_Init))
  [Stack]

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

  HAL_InitTick (Thumb, 54 bytes, Stack size 16 bytes, stm32f1xx_hal.o(i.HAL_InitTick))
  [Stack]

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

  HAL_MspInit (Thumb, 52 bytes, Stack size 8 bytes, stm32f1xx_hal_msp.o(i.HAL_MspInit))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_MspInit
  [Called By]
  - >> HAL_Init

  HAL_NVIC_DisableIRQ (Thumb, 34 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(i.HAL_NVIC_DisableIRQ))
  [Called By]

  - >> SX126xIoIrqInit

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

  - >> MX_GPIO_Init
  - >> SX126xIoIrqInit

  HAL_NVIC_SetPriority (Thumb, 60 bytes, Stack size 16 bytes, stm32f1xx_hal_cortex.o(i.HAL_NVIC_SetPriority))
  [Stack]

  - Max Depth = 16
  - Call Chain = HAL_NVIC_SetPriority
  [Calls]
  - >> __NVIC_SetPriority
  [Called By]
  - >> MX_GPIO_Init
  - >> HAL_InitTick
  - >> SX126xIoIrqInit

  HAL_NVIC_SetPriorityGrouping (Thumb, 26 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(i.HAL_NVIC_SetPriorityGrouping))
  [Called By]

  - >> HAL_Init

  HAL_RCC_ClockConfig (Thumb, 280 bytes, Stack size 32 bytes, stm32f1xx_hal_rcc.o(i.HAL_RCC_ClockConfig))
  [Stack]

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

  HAL_RCC_GetPCLK1Freq (Thumb, 20 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(i.HAL_RCC_GetPCLK1Freq))
  [Called By]

  - >> UART_SetConfig

  HAL_RCC_GetPCLK2Freq (Thumb, 20 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(i.HAL_RCC_GetPCLK2Freq))
  [Called By]

  - >> UART_SetConfig

  HAL_RCC_GetSysClockFreq (Thumb, 74 bytes, Stack size 20 bytes, stm32f1xx_hal_rcc.o(i.HAL_RCC_GetSysClockFreq))
  [Stack]

  - Max Depth = 20
  - Call Chain = HAL_RCC_GetSysClockFreq
  [Called By]
  - >> HAL_RCC_ClockConfig

  HAL_RCC_OscConfig (Thumb, 778 bytes, Stack size 40 bytes, stm32f1xx_hal_rcc.o(i.HAL_RCC_OscConfig))
  [Stack]

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

  HAL_SPI_Init (Thumb, 178 bytes, Stack size 16 bytes, stm32f1xx_hal_spi.o(i.HAL_SPI_Init))
  [Stack]

  - Max Depth = 88
  - Call Chain = HAL_SPI_Init ⇒ HAL_SPI_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_SPI_MspInit
  [Called By]
  - >> MX_SPI1_Init

  HAL_SPI_MspInit (Thumb, 98 bytes, Stack size 32 bytes, stm32f1xx_hal_msp.o(i.HAL_SPI_MspInit))
  [Stack]

  - Max Depth = 72
  - Call Chain = HAL_SPI_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_GPIO_Init
  [Called By]
  - >> HAL_SPI_Init

  HAL_SPI_Transmit (Thumb, 358 bytes, Stack size 40 bytes, stm32f1xx_hal_spi.o(i.HAL_SPI_Transmit))
  [Stack]

  - Max Depth = 88
  - Call Chain = HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GetTick
  - >> SPI_EndRxTxTransaction
  [Called By]
  - >> SX126xWriteRegisters
  - >> SX126xWriteCommand
  - >> SX126xWriteBuffer
  - >> SX126xWakeup

  HAL_SPI_TransmitReceive (Thumb, 482 bytes, Stack size 40 bytes, stm32f1xx_hal_spi.o(i.HAL_SPI_TransmitReceive))
  [Stack]

  - Max Depth = 88
  - Call Chain = HAL_SPI_TransmitReceive ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GetTick
  - >> SPI_EndRxTxTransaction
  [Called By]
  - >> SX126xReadRegisters
  - >> SX126xReadCommand
  - >> SX126xReadBuffer

  HAL_SYSTICK_Config (Thumb, 40 bytes, Stack size 8 bytes, stm32f1xx_hal_cortex.o(i.HAL_SYSTICK_Config))
  [Stack]

  - Max Depth = 8
  - Call Chain = HAL_SYSTICK_Config
  [Calls]
  - >> __NVIC_SetPriority
  [Called By]
  - >> HAL_InitTick

  HAL_UART_Init (Thumb, 98 bytes, Stack size 16 bytes, stm32f1xx_hal_uart.o(i.HAL_UART_Init))
  [Stack]

  - Max Depth = 88
  - Call Chain = HAL_UART_Init ⇒ HAL_UART_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_UART_MspInit
  - >> UART_SetConfig
  [Called By]
  - >> main

  HAL_UART_MspInit (Thumb, 100 bytes, Stack size 32 bytes, stm32f1xx_hal_msp.o(i.HAL_UART_MspInit))
  [Stack]

  - Max Depth = 72
  - Call Chain = HAL_UART_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_GPIO_Init
  [Called By]
  - >> HAL_UART_Init

  HAL_UART_Transmit (Thumb, 178 bytes, Stack size 32 bytes, stm32f1xx_hal_uart.o(i.HAL_UART_Transmit))
  [Stack]

  - Max Depth = 56
  - Call Chain = HAL_UART_Transmit ⇒ UART_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_GetTick
  - >> UART_WaitOnFlagUntilTimeout
  [Called By]
  - >> fputc

  HardFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(i.HardFault_Handler))
  [Calls]

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

  LoRa_Init (Thumb, 202 bytes, Stack size 64 bytes, test.o(i.LoRa_Init))
  [Stack]

  - Max Depth = 88
  - Call Chain = LoRa_Init ⇒ __2printf
  [Calls]
  - >> DelayMs
  - >> __2printf
  [Called By]
  - >> main

  LoRa_Test_Handle (Thumb, 144 bytes, Stack size 8 bytes, test.o(i.LoRa_Test_Handle))
  [Stack]

  - Max Depth = 32
  - Call Chain = LoRa_Test_Handle ⇒ __2printf
  [Calls]
  - >> TimerStart
  - >> __2printf
  [Address Reference Count : 1]
  - test.o(i.LoRa_Test_Main)

  LoRa_Test_Main (Thumb, 36 bytes, Stack size 0 bytes, test.o(i.LoRa_Test_Main))
  [Stack]

  - Max Depth = 16
  - Call Chain = LoRa_Test_Main ⇒ TimerService
  [Calls]
  - >> TimerStart
  - >> TimerSetValue
  - >> TimerService
  - >> TimerInit
  [Called By]
  - >> main

  MemManage_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(i.MemManage_Handler))
  [Calls]

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

  NMI_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(i.NMI_Handler))
  [Calls]

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

  OnRxDone (Thumb, 72 bytes, Stack size 24 bytes, test.o(i.OnRxDone))
  [Stack]

  - Max Depth = 48
  - Call Chain = OnRxDone ⇒ __2printf
  [Calls]
  - >> __aeabi_memcpy
  - >> __2printf
  [Address Reference Count : 1]
  - test.o(i.LoRa_Init)

  OnRxError (Thumb, 20 bytes, Stack size 8 bytes, test.o(i.OnRxError))
  [Stack]

  - Max Depth = 32
  - Call Chain = OnRxError ⇒ __2printf
  [Calls]
  - >> __2printf
  [Address Reference Count : 1]
  - test.o(i.LoRa_Init)

  OnRxTimeout (Thumb, 20 bytes, Stack size 8 bytes, test.o(i.OnRxTimeout))
  [Stack]

  - Max Depth = 32
  - Call Chain = OnRxTimeout ⇒ __2printf
  [Calls]
  - >> __2printf
  [Address Reference Count : 1]
  - test.o(i.LoRa_Init)

  OnTxDone (Thumb, 20 bytes, Stack size 8 bytes, test.o(i.OnTxDone))
  [Stack]

  - Max Depth = 32
  - Call Chain = OnTxDone ⇒ __2printf
  [Calls]
  - >> __2printf
  [Address Reference Count : 1]
  - test.o(i.LoRa_Init)

  OnTxTimeout (Thumb, 20 bytes, Stack size 8 bytes, test.o(i.OnTxTimeout))
  [Stack]

  - Max Depth = 32
  - Call Chain = OnTxTimeout ⇒ __2printf
  [Calls]
  - >> __2printf
  [Address Reference Count : 1]
  - test.o(i.LoRa_Init)

  PendSV_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(i.PendSV_Handler))
  [Address Reference Count : 1]

  - startup_stm32f103xe.o(RESET)

  RadioAddRegisterToRetentionList (Thumb, 92 bytes, Stack size 32 bytes, radio.o(i.RadioAddRegisterToRetentionList))
  [Stack]

  - Max Depth = 160
  - Call Chain = RadioAddRegisterToRetentionList ⇒ SX126xReadRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegisters
  - >> SX126xReadRegisters
  [Called By]
  - >> RadioInit

  RadioCheckRfFrequency (Thumb, 4 bytes, Stack size 0 bytes, radio.o(i.RadioCheckRfFrequency))
  [Address Reference Count : 1]

  - radio.o(.constdata)

  RadioGetStatus (Thumb, 34 bytes, Stack size 8 bytes, radio.o(i.RadioGetStatus))
  [Stack]

  - Max Depth = 8
  - Call Chain = RadioGetStatus
  [Calls]
  - >> SX126xGetOperatingMode
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioGetWakeupTime (Thumb, 10 bytes, Stack size 8 bytes, radio.o(i.RadioGetWakeupTime))
  [Stack]

  - Max Depth = 8
  - Call Chain = RadioGetWakeupTime
  [Calls]
  - >> SX126xGetBoardTcxoWakeupTime
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioInit (Thumb, 94 bytes, Stack size 8 bytes, radio.o(i.RadioInit))
  [Stack]

  - Max Depth = 168
  - Call Chain = RadioInit ⇒ SX126xSetTxParams ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TimerInit
  - >> SX126xSetTxParams
  - >> SX126xSetStandby
  - >> SX126xSetRegulatorMode
  - >> SX126xSetDioIrqParams
  - >> SX126xSetBufferBaseAddress
  - >> SX126xInit
  - >> RadioAddRegisterToRetentionList
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioIrqProcess (Thumb, 322 bytes, Stack size 24 bytes, radio.o(i.RadioIrqProcess))
  [Stack]

  - Max Depth = 200
  - Call Chain = RadioIrqProcess ⇒ SX126xGetPayload ⇒ SX126xGetRxBufferStatus ⇒ SX126xReadRegister ⇒ SX126xReadRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TimerStop
  - >> SX126xWriteRegister
  - >> SX126xSetOperatingMode
  - >> SX126xReadRegister
  - >> SX126xGetOperatingMode
  - >> SX126xGetDio1PinState
  - >> SX126xGetPayload
  - >> SX126xGetPacketStatus
  - >> SX126xGetIrqStatus
  - >> SX126xClearIrqStatus
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioIsChannelFree (Thumb, 122 bytes, Stack size 64 bytes, radio.o(i.RadioIsChannelFree))
  [Stack]

  - Max Depth = 288
  - Call Chain = RadioIsChannelFree ⇒ RadioSetRxConfig ⇒ SX126xSetLoRaSymbNumTimeout ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TimerGetElapsedTime
  - >> TimerGetCurrentTime
  - >> DelayMs
  - >> SX126xSetRfFrequency
  - >> SX126xGetRssiInst
  - >> RadioSleep
  - >> RadioSetRxConfig
  - >> RadioSetModem
  - >> RadioRx
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioOnDioIrq (Thumb, 8 bytes, Stack size 0 bytes, radio.o(i.RadioOnDioIrq))
  [Address Reference Count : 1]

  - radio.o(i.RadioInit)

  RadioOnRxTimeoutIrq (Thumb, 18 bytes, Stack size 0 bytes, radio.o(i.RadioOnRxTimeoutIrq))
  [Address Reference Count : 1]

  - radio.o(i.RadioInit)

  RadioOnTxTimeoutIrq (Thumb, 18 bytes, Stack size 0 bytes, radio.o(i.RadioOnTxTimeoutIrq))
  [Address Reference Count : 1]

  - radio.o(i.RadioInit)

  RadioRandom (Thumb, 28 bytes, Stack size 8 bytes, radio.o(i.RadioRandom))
  [Stack]

  - Max Depth = 184
  - Call Chain = RadioRandom ⇒ SX126xGetRandom ⇒ SX126xSetRx ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xSetDioIrqParams
  - >> SX126xGetRandom
  - >> RadioSetModem
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioRead (Thumb, 6 bytes, Stack size 0 bytes, radio.o(i.RadioRead))
  [Stack]

  - Max Depth = 136
  - Call Chain = RadioRead ⇒ SX126xReadRegister ⇒ SX126xReadRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xReadRegister
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioReadBuffer (Thumb, 6 bytes, Stack size 0 bytes, radio.o(i.RadioReadBuffer))
  [Stack]

  - Max Depth = 128
  - Call Chain = RadioReadBuffer ⇒ SX126xReadRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xReadRegisters
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioRssi (Thumb, 4 bytes, Stack size 0 bytes, radio.o(i.RadioRssi))
  [Stack]

  - Max Depth = 136
  - Call Chain = RadioRssi ⇒ SX126xGetRssiInst ⇒ SX126xReadCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xGetRssiInst
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioRx (Thumb, 58 bytes, Stack size 8 bytes, radio.o(i.RadioRx))
  [Stack]

  - Max Depth = 160
  - Call Chain = RadioRx ⇒ SX126xSetRx ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TimerStart
  - >> TimerSetValue
  - >> SX126xSetRx
  - >> SX126xSetDioIrqParams
  [Called By]
  - >> RadioIsChannelFree
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioRxBoosted (Thumb, 58 bytes, Stack size 8 bytes, radio.o(i.RadioRxBoosted))
  [Stack]

  - Max Depth = 160
  - Call Chain = RadioRxBoosted ⇒ SX126xSetRxBoosted ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TimerStart
  - >> TimerSetValue
  - >> SX126xSetRxBoosted
  - >> SX126xSetDioIrqParams
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioSend (Thumb, 78 bytes, Stack size 16 bytes, radio.o(i.RadioSend))
  [Stack]

  - Max Depth = 168
  - Call Chain = RadioSend ⇒ SX126xSetPacketParams ⇒ SX126xSetCrcSeed ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TimerStart
  - >> TimerSetValue
  - >> SX126xSetPacketParams
  - >> SX126xSetDioIrqParams
  - >> SX126xSendPayload
  - >> SX126xGetPacketType
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioSetChannel (Thumb, 4 bytes, Stack size 0 bytes, radio.o(i.RadioSetChannel))
  [Stack]

  - Max Depth = 144
  - Call Chain = RadioSetChannel ⇒ SX126xSetRfFrequency ⇒ SX126xCalibrateImage ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xSetRfFrequency
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioSetMaxPayloadLength (Thumb, 32 bytes, Stack size 0 bytes, radio.o(i.RadioSetMaxPayloadLength))
  [Stack]

  - Max Depth = 152
  - Call Chain = RadioSetMaxPayloadLength ⇒ SX126xSetPacketParams ⇒ SX126xSetCrcSeed ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xSetPacketParams
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioSetModem (Thumb, 44 bytes, Stack size 8 bytes, radio.o(i.RadioSetModem))
  [Stack]

  - Max Depth = 160
  - Call Chain = RadioSetModem ⇒ RadioSetPublicNetwork ⇒ RadioSetModem (Cycle)
  [Calls]
  - >> SX126xSetPacketType
  - >> RadioSetPublicNetwork
  [Called By]
  - >> RadioSetTxConfig
  - >> RadioSetRxConfig
  - >> RadioSetPublicNetwork
  - >> RadioRandom
  - >> RadioIsChannelFree
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioSetPublicNetwork (Thumb, 52 bytes, Stack size 16 bytes, radio.o(i.RadioSetPublicNetwork))
  [Stack]

  - Max Depth = 176 + In Cycle
  - Call Chain = RadioSetPublicNetwork ⇒ RadioSetModem (Cycle)
  [Calls]
  - >> SX126xWriteRegister
  - >> RadioSetModem
  [Called By]
  - >> RadioSetModem
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioSetRxConfig (Thumb, 416 bytes, Stack size 64 bytes, radio.o(i.RadioSetRxConfig))
  [Stack]

  - Max Depth = 224
  - Call Chain = RadioSetRxConfig ⇒ SX126xSetLoRaSymbNumTimeout ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> RadioGetFskBandwidthRegValue
  - >> SX126xWriteRegister
  - >> SX126xReadRegister
  - >> SX126xSetWhiteningSeed
  - >> SX126xSetSyncWord
  - >> SX126xSetStopRxTimerOnPreambleDetect
  - >> SX126xSetStandby
  - >> SX126xSetPacketParams
  - >> SX126xSetModulationParams
  - >> SX126xSetLoRaSymbNumTimeout
  - >> RadioSetModem
  [Called By]
  - >> RadioIsChannelFree
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioSetRxDutyCycle (Thumb, 4 bytes, Stack size 0 bytes, radio.o(i.RadioSetRxDutyCycle))
  [Stack]

  - Max Depth = 136
  - Call Chain = RadioSetRxDutyCycle ⇒ SX126xSetRxDutyCycle ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xSetRxDutyCycle
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioSetTxConfig (Thumb, 348 bytes, Stack size 64 bytes, radio.o(i.RadioSetTxConfig))
  [Stack]

  - Max Depth = 224
  - Call Chain = RadioSetTxConfig ⇒ SX126xSetRfTxPower ⇒ SX126xSetTxParams ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> RadioGetFskBandwidthRegValue
  - >> SX126xWriteRegister
  - >> SX126xSetRfTxPower
  - >> SX126xReadRegister
  - >> SX126xSetWhiteningSeed
  - >> SX126xSetSyncWord
  - >> SX126xSetStandby
  - >> SX126xSetPacketParams
  - >> SX126xSetModulationParams
  - >> RadioSetModem
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioSetTxContinuousWave (Thumb, 44 bytes, Stack size 16 bytes, radio.o(i.RadioSetTxContinuousWave))
  [Stack]

  - Max Depth = 176
  - Call Chain = RadioSetTxContinuousWave ⇒ SX126xSetRfTxPower ⇒ SX126xSetTxParams ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> TimerStart
  - >> TimerSetValue
  - >> SX126xSetRfTxPower
  - >> SX126xSetTxContinuousWave
  - >> SX126xSetRfFrequency
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioSleep (Thumb, 18 bytes, Stack size 8 bytes, radio.o(i.RadioSleep))
  [Stack]

  - Max Depth = 144
  - Call Chain = RadioSleep ⇒ SX126xSetSleep ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> DelayMs
  - >> SX126xSetSleep
  [Called By]
  - >> RadioIsChannelFree
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioStandby (Thumb, 6 bytes, Stack size 0 bytes, radio.o(i.RadioStandby))
  [Stack]

  - Max Depth = 128
  - Call Chain = RadioStandby ⇒ SX126xSetStandby ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xSetStandby
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioStartCad (Thumb, 24 bytes, Stack size 8 bytes, radio.o(i.RadioStartCad))
  [Stack]

  - Max Depth = 144
  - Call Chain = RadioStartCad ⇒ SX126xSetDioIrqParams ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xSetDioIrqParams
  - >> SX126xSetCad
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioTimeOnAir (Thumb, 186 bytes, Stack size 32 bytes, radio.o(i.RadioTimeOnAir))
  [Stack]

  - Max Depth = 52
  - Call Chain = RadioTimeOnAir ⇒ RadioGetLoRaTimeOnAirNumerator
  [Calls]
  - >> RadioGetLoRaTimeOnAirNumerator
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioWrite (Thumb, 6 bytes, Stack size 0 bytes, radio.o(i.RadioWrite))
  [Stack]

  - Max Depth = 136
  - Call Chain = RadioWrite ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegister
  [Address Reference Count : 1]
  - radio.o(.constdata)

  RadioWriteBuffer (Thumb, 6 bytes, Stack size 0 bytes, radio.o(i.RadioWriteBuffer))
  [Stack]

  - Max Depth = 120
  - Call Chain = RadioWriteBuffer ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegisters
  [Address Reference Count : 1]
  - radio.o(.constdata)

  SVC_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(i.SVC_Handler))
  [Address Reference Count : 1]

  - startup_stm32f103xe.o(RESET)

  SX126xAntSwOff (Thumb, 2 bytes, Stack size 0 bytes, sx126x-board.o(i.SX126xAntSwOff))
  [Called By]

  - >> SX126xSetSleep

  SX126xAntSwOn (Thumb, 2 bytes, Stack size 0 bytes, sx126x-board.o(i.SX126xAntSwOn))
  [Called By]

  - >> SX126xCheckDeviceReady

  SX126xCalibrateImage (Thumb, 96 bytes, Stack size 8 bytes, sx126x.o(i.SX126xCalibrateImage))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xCalibrateImage ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  [Called By]
  - >> SX126xSetRfFrequency

  SX126xCheckDeviceReady (Thumb, 32 bytes, Stack size 8 bytes, sx126x.o(i.SX126xCheckDeviceReady))
  [Stack]

  - Max Depth = 104
  - Call Chain = SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWakeup
  - >> SX126xWaitOnBusy
  - >> SX126xGetOperatingMode
  - >> SX126xAntSwOn
  [Called By]
  - >> SX126xWriteRegisters
  - >> SX126xWriteCommand
  - >> SX126xWriteBuffer
  - >> SX126xReadRegisters
  - >> SX126xReadCommand
  - >> SX126xReadBuffer

  SX126xClearIrqStatus (Thumb, 24 bytes, Stack size 8 bytes, sx126x.o(i.SX126xClearIrqStatus))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xClearIrqStatus ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  [Called By]
  - >> RadioIrqProcess

  SX126xGetBoardTcxoWakeupTime (Thumb, 4 bytes, Stack size 0 bytes, sx126x-board.o(i.SX126xGetBoardTcxoWakeupTime))
  [Called By]

  - >> RadioGetWakeupTime

  SX126xGetDeviceId (Thumb, 4 bytes, Stack size 0 bytes, sx126x-board.o(i.SX126xGetDeviceId))
  [Called By]

  - >> SX126xSetTxParams

  SX126xGetDio1PinState (Thumb, 18 bytes, Stack size 8 bytes, sx126x-board.o(i.SX126xGetDio1PinState))
  [Stack]

  - Max Depth = 8
  - Call Chain = SX126xGetDio1PinState
  [Calls]
  - >> HAL_GPIO_ReadPin
  [Called By]
  - >> RadioIrqProcess

  SX126xGetIrqStatus (Thumb, 20 bytes, Stack size 8 bytes, sx126x.o(i.SX126xGetIrqStatus))
  [Stack]

  - Max Depth = 136
  - Call Chain = SX126xGetIrqStatus ⇒ SX126xReadCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xReadCommand
  [Called By]
  - >> RadioIrqProcess

  SX126xGetOperatingMode (Thumb, 6 bytes, Stack size 0 bytes, sx126x-board.o(i.SX126xGetOperatingMode))
  [Called By]

  - >> SX126xCheckDeviceReady
  - >> RadioIrqProcess
  - >> RadioGetStatus

  SX126xGetPacketStatus (Thumb, 108 bytes, Stack size 16 bytes, sx126x.o(i.SX126xGetPacketStatus))
  [Stack]

  - Max Depth = 144
  - Call Chain = SX126xGetPacketStatus ⇒ SX126xReadCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xReadCommand
  - >> __aeabi_memclr4
  [Called By]
  - >> RadioIrqProcess

  SX126xGetPacketType (Thumb, 6 bytes, Stack size 0 bytes, sx126x.o(i.SX126xGetPacketType))
  [Called By]

  - >> RadioSend

  SX126xGetPayload (Thumb, 46 bytes, Stack size 24 bytes, sx126x.o(i.SX126xGetPayload))
  [Stack]

  - Max Depth = 176
  - Call Chain = SX126xGetPayload ⇒ SX126xGetRxBufferStatus ⇒ SX126xReadRegister ⇒ SX126xReadRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xReadBuffer
  - >> SX126xGetRxBufferStatus
  [Called By]
  - >> RadioIrqProcess

  SX126xGetRandom (Thumb, 94 bytes, Stack size 24 bytes, sx126x.o(i.SX126xGetRandom))
  [Stack]

  - Max Depth = 176
  - Call Chain = SX126xGetRandom ⇒ SX126xSetRx ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegister
  - >> SX126xReadRegisters
  - >> SX126xReadRegister
  - >> SX126xSetStandby
  - >> SX126xSetRx
  [Called By]
  - >> RadioRandom

  SX126xGetRssiInst (Thumb, 24 bytes, Stack size 8 bytes, sx126x.o(i.SX126xGetRssiInst))
  [Stack]

  - Max Depth = 136
  - Call Chain = SX126xGetRssiInst ⇒ SX126xReadCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xReadCommand
  [Called By]
  - >> RadioRssi
  - >> RadioIsChannelFree

  SX126xGetRxBufferStatus (Thumb, 54 bytes, Stack size 16 bytes, sx126x.o(i.SX126xGetRxBufferStatus))
  [Stack]

  - Max Depth = 152
  - Call Chain = SX126xGetRxBufferStatus ⇒ SX126xReadRegister ⇒ SX126xReadRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xReadRegister
  - >> SX126xReadCommand
  [Called By]
  - >> SX126xGetPayload

  SX126xInit (Thumb, 52 bytes, Stack size 8 bytes, sx126x.o(i.SX126xInit))
  [Stack]

  - Max Depth = 136
  - Call Chain = SX126xInit ⇒ SX126xIoRfSwitchInit ⇒ SX126xSetDio2AsRfSwitchCtrl ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWakeup
  - >> SX126xSetOperatingMode
  - >> SX126xReset
  - >> SX126xIoTcxoInit
  - >> SX126xIoRfSwitchInit
  - >> SX126xIoIrqInit
  - >> SX126xIoInit
  - >> SX126xSetStandby
  [Called By]
  - >> RadioInit

  SX126xIoInit (Thumb, 154 bytes, Stack size 48 bytes, sx126x-board.o(i.SX126xIoInit))
  [Stack]

  - Max Depth = 88
  - Call Chain = SX126xIoInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_GPIO_WritePin
  - >> HAL_GPIO_Init
  [Called By]
  - >> SX126xInit

  SX126xIoIrqInit (Thumb, 38 bytes, Stack size 8 bytes, sx126x-board.o(i.SX126xIoIrqInit))
  [Stack]

  - Max Depth = 24
  - Call Chain = SX126xIoIrqInit ⇒ HAL_NVIC_SetPriority
  [Calls]
  - >> HAL_NVIC_SetPriority
  - >> HAL_NVIC_EnableIRQ
  - >> HAL_NVIC_DisableIRQ
  [Called By]
  - >> SX126xInit

  SX126xIoRfSwitchInit (Thumb, 6 bytes, Stack size 0 bytes, sx126x-board.o(i.SX126xIoRfSwitchInit))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xIoRfSwitchInit ⇒ SX126xSetDio2AsRfSwitchCtrl ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xSetDio2AsRfSwitchCtrl
  [Called By]
  - >> SX126xInit

  SX126xIoTcxoInit (Thumb, 2 bytes, Stack size 0 bytes, sx126x-board.o(i.SX126xIoTcxoInit))
  [Called By]

  - >> SX126xInit

  SX126xReadBuffer (Thumb, 90 bytes, Stack size 24 bytes, sx126x-board.o(i.SX126xReadBuffer))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xReadBuffer ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_SPI_TransmitReceive
  - >> HAL_GPIO_WritePin
  - >> SX126xCheckDeviceReady
  - >> SX126xWaitOnBusy
  - >> __aeabi_memclr
  - >> __aeabi_memcpy
  [Called By]
  - >> SX126xGetPayload

  SX126xReadCommand (Thumb, 88 bytes, Stack size 24 bytes, sx126x-board.o(i.SX126xReadCommand))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xReadCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_SPI_TransmitReceive
  - >> HAL_GPIO_WritePin
  - >> SX126xCheckDeviceReady
  - >> SX126xWaitOnBusy
  - >> __aeabi_memclr
  - >> __aeabi_memcpy
  [Called By]
  - >> SX126xGetRxBufferStatus
  - >> SX126xGetRssiInst
  - >> SX126xGetPacketStatus
  - >> SX126xGetIrqStatus

  SX126xReadRegister (Thumb, 16 bytes, Stack size 8 bytes, sx126x-board.o(i.SX126xReadRegister))
  [Stack]

  - Max Depth = 136
  - Call Chain = SX126xReadRegister ⇒ SX126xReadRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xReadRegisters
  [Called By]
  - >> SX126xSetTxParams
  - >> SX126xGetRxBufferStatus
  - >> SX126xSetWhiteningSeed
  - >> SX126xGetRandom
  - >> RadioSetTxConfig
  - >> RadioSetRxConfig
  - >> RadioRead
  - >> RadioIrqProcess

  SX126xReadRegisters (Thumb, 98 bytes, Stack size 24 bytes, sx126x-board.o(i.SX126xReadRegisters))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xReadRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_SPI_TransmitReceive
  - >> HAL_GPIO_WritePin
  - >> SX126xCheckDeviceReady
  - >> SX126xWaitOnBusy
  - >> __aeabi_memclr
  - >> __aeabi_memcpy
  [Called By]
  - >> SX126xReadRegister
  - >> SX126xGetRandom
  - >> RadioReadBuffer
  - >> RadioAddRegisterToRetentionList

  SX126xReset (Thumb, 46 bytes, Stack size 8 bytes, sx126x-board.o(i.SX126xReset))
  [Stack]

  - Max Depth = 24
  - Call Chain = SX126xReset ⇒ DelayMs
  [Calls]
  - >> HAL_GPIO_WritePin
  - >> DelayMs
  [Called By]
  - >> SX126xInit

  SX126xSendPayload (Thumb, 18 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSendPayload))
  [Stack]

  - Max Depth = 144
  - Call Chain = SX126xSendPayload ⇒ SX126xSetTx ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xSetTx
  - >> SX126xSetPayload
  [Called By]
  - >> RadioSend

  SX126xSetBufferBaseAddress (Thumb, 22 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSetBufferBaseAddress))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xSetBufferBaseAddress ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  [Called By]
  - >> RadioInit

  SX126xSetCad (Thumb, 22 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSetCad))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xSetCad ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  - >> SX126xSetOperatingMode
  [Called By]
  - >> RadioStartCad

  SX126xSetCrcPolynomial (Thumb, 34 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSetCrcPolynomial))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xSetCrcPolynomial ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegisters
  [Called By]
  - >> SX126xSetPacketParams

  SX126xSetCrcSeed (Thumb, 34 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSetCrcSeed))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xSetCrcSeed ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegisters
  [Called By]
  - >> SX126xSetPacketParams

  SX126xSetDio2AsRfSwitchCtrl (Thumb, 14 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSetDio2AsRfSwitchCtrl))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xSetDio2AsRfSwitchCtrl ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  [Called By]
  - >> SX126xIoRfSwitchInit

  SX126xSetDioIrqParams (Thumb, 54 bytes, Stack size 16 bytes, sx126x.o(i.SX126xSetDioIrqParams))
  [Stack]

  - Max Depth = 136
  - Call Chain = SX126xSetDioIrqParams ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  [Called By]
  - >> RadioStartCad
  - >> RadioSend
  - >> RadioRxBoosted
  - >> RadioRx
  - >> RadioRandom
  - >> RadioInit

  SX126xSetLoRaSymbNumTimeout (Thumb, 82 bytes, Stack size 24 bytes, sx126x.o(i.SX126xSetLoRaSymbNumTimeout))
  [Stack]

  - Max Depth = 160
  - Call Chain = SX126xSetLoRaSymbNumTimeout ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegister
  - >> SX126xWriteCommand
  [Called By]
  - >> RadioSetRxConfig

  SX126xSetModulationParams (Thumb, 132 bytes, Stack size 24 bytes, sx126x.o(i.SX126xSetModulationParams))
  [Stack]

  - Max Depth = 152
  - Call Chain = SX126xSetModulationParams ⇒ SX126xSetPacketType ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  - >> SX126xConvertFreqInHzToPllStep
  - >> SX126xSetPacketType
  [Called By]
  - >> RadioSetTxConfig
  - >> RadioSetRxConfig

  SX126xSetOperatingMode (Thumb, 52 bytes, Stack size 8 bytes, sx126x-board.o(i.SX126xSetOperatingMode))
  [Stack]

  - Max Depth = 8
  - Call Chain = SX126xSetOperatingMode
  [Calls]
  - >> SX126xDbgPinTxWrite
  - >> SX126xDbgPinRxWrite
  [Called By]
  - >> SX126xWakeup
  - >> SX126xSetTx
  - >> SX126xSetTxContinuousWave
  - >> SX126xSetStandby
  - >> SX126xSetSleep
  - >> SX126xSetRxDutyCycle
  - >> SX126xSetRxBoosted
  - >> SX126xSetRx
  - >> SX126xSetCad
  - >> SX126xInit
  - >> RadioIrqProcess

  SX126xSetPaConfig (Thumb, 30 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSetPaConfig))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xSetPaConfig ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  [Called By]
  - >> SX126xSetTxParams

  SX126xSetPacketParams (Thumb, 192 bytes, Stack size 24 bytes, sx126x.o(i.SX126xSetPacketParams))
  [Stack]

  - Max Depth = 152
  - Call Chain = SX126xSetPacketParams ⇒ SX126xSetCrcSeed ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  - >> SX126xSetCrcSeed
  - >> SX126xSetCrcPolynomial
  - >> SX126xSetPacketType
  [Called By]
  - >> RadioSetTxConfig
  - >> RadioSetRxConfig
  - >> RadioSetMaxPayloadLength
  - >> RadioSend

  SX126xSetPacketType (Thumb, 22 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSetPacketType))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xSetPacketType ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  [Called By]
  - >> SX126xSetPacketParams
  - >> SX126xSetModulationParams
  - >> RadioSetModem

  SX126xSetPayload (Thumb, 10 bytes, Stack size 0 bytes, sx126x.o(i.SX126xSetPayload))
  [Stack]

  - Max Depth = 120
  - Call Chain = SX126xSetPayload ⇒ SX126xWriteBuffer ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteBuffer
  [Called By]
  - >> SX126xSendPayload

  SX126xSetRegulatorMode (Thumb, 14 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSetRegulatorMode))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xSetRegulatorMode ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  [Called By]
  - >> RadioInit

  SX126xSetRfFrequency (Thumb, 60 bytes, Stack size 16 bytes, sx126x.o(i.SX126xSetRfFrequency))
  [Stack]

  - Max Depth = 144
  - Call Chain = SX126xSetRfFrequency ⇒ SX126xCalibrateImage ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  - >> SX126xCalibrateImage
  - >> SX126xConvertFreqInHzToPllStep
  [Called By]
  - >> RadioSetTxContinuousWave
  - >> RadioSetChannel
  - >> RadioIsChannelFree

  SX126xSetRfTxPower (Thumb, 6 bytes, Stack size 0 bytes, sx126x-board.o(i.SX126xSetRfTxPower))
  [Stack]

  - Max Depth = 160
  - Call Chain = SX126xSetRfTxPower ⇒ SX126xSetTxParams ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xSetTxParams
  [Called By]
  - >> RadioSetTxContinuousWave
  - >> RadioSetTxConfig

  SX126xSetRx (Thumb, 48 bytes, Stack size 16 bytes, sx126x.o(i.SX126xSetRx))
  [Stack]

  - Max Depth = 152
  - Call Chain = SX126xSetRx ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegister
  - >> SX126xWriteCommand
  - >> SX126xSetOperatingMode
  [Called By]
  - >> SX126xGetRandom
  - >> RadioRx

  SX126xSetRxBoosted (Thumb, 48 bytes, Stack size 16 bytes, sx126x.o(i.SX126xSetRxBoosted))
  [Stack]

  - Max Depth = 152
  - Call Chain = SX126xSetRxBoosted ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegister
  - >> SX126xWriteCommand
  - >> SX126xSetOperatingMode
  [Called By]
  - >> RadioRxBoosted

  SX126xSetRxDutyCycle (Thumb, 52 bytes, Stack size 16 bytes, sx126x.o(i.SX126xSetRxDutyCycle))
  [Stack]

  - Max Depth = 136
  - Call Chain = SX126xSetRxDutyCycle ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  - >> SX126xSetOperatingMode
  [Called By]
  - >> RadioSetRxDutyCycle

  SX126xSetSleep (Thumb, 60 bytes, Stack size 16 bytes, sx126x.o(i.SX126xSetSleep))
  [Stack]

  - Max Depth = 136
  - Call Chain = SX126xSetSleep ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  - >> SX126xSetOperatingMode
  - >> SX126xAntSwOff
  [Called By]
  - >> RadioSleep

  SX126xSetStandby (Thumb, 30 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSetStandby))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xSetStandby ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  - >> SX126xSetOperatingMode
  [Called By]
  - >> SX126xInit
  - >> SX126xGetRandom
  - >> RadioStandby
  - >> RadioSetTxConfig
  - >> RadioSetRxConfig
  - >> RadioInit

  SX126xSetStopRxTimerOnPreambleDetect (Thumb, 14 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSetStopRxTimerOnPreambleDetect))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xSetStopRxTimerOnPreambleDetect ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  [Called By]
  - >> RadioSetRxConfig

  SX126xSetSyncWord (Thumb, 18 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSetSyncWord))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xSetSyncWord ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegisters
  [Called By]
  - >> RadioSetTxConfig
  - >> RadioSetRxConfig

  SX126xSetTx (Thumb, 38 bytes, Stack size 16 bytes, sx126x.o(i.SX126xSetTx))
  [Stack]

  - Max Depth = 136
  - Call Chain = SX126xSetTx ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  - >> SX126xSetOperatingMode
  [Called By]
  - >> SX126xSendPayload

  SX126xSetTxContinuousWave (Thumb, 22 bytes, Stack size 8 bytes, sx126x.o(i.SX126xSetTxContinuousWave))
  [Stack]

  - Max Depth = 128
  - Call Chain = SX126xSetTxContinuousWave ⇒ SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteCommand
  - >> SX126xSetOperatingMode
  [Called By]
  - >> RadioSetTxContinuousWave

  SX126xSetTxParams (Thumb, 126 bytes, Stack size 24 bytes, sx126x.o(i.SX126xSetTxParams))
  [Stack]

  - Max Depth = 160
  - Call Chain = SX126xSetTxParams ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegister
  - >> SX126xWriteCommand
  - >> SX126xReadRegister
  - >> SX126xGetDeviceId
  - >> SX126xSetPaConfig
  [Called By]
  - >> SX126xSetRfTxPower
  - >> RadioInit

  SX126xSetWhiteningSeed (Thumb, 52 bytes, Stack size 16 bytes, sx126x.o(i.SX126xSetWhiteningSeed))
  [Stack]

  - Max Depth = 152
  - Call Chain = SX126xSetWhiteningSeed ⇒ SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegister
  - >> SX126xReadRegister
  [Called By]
  - >> RadioSetTxConfig
  - >> RadioSetRxConfig

  SX126xWaitOnBusy (Thumb, 18 bytes, Stack size 8 bytes, sx126x-board.o(i.SX126xWaitOnBusy))
  [Stack]

  - Max Depth = 8
  - Call Chain = SX126xWaitOnBusy
  [Calls]
  - >> HAL_GPIO_ReadPin
  [Called By]
  - >> SX126xCheckDeviceReady
  - >> SX126xWriteRegisters
  - >> SX126xWriteCommand
  - >> SX126xWriteBuffer
  - >> SX126xWakeup
  - >> SX126xReadRegisters
  - >> SX126xReadCommand
  - >> SX126xReadBuffer

  SX126xWakeup (Thumb, 62 bytes, Stack size 8 bytes, sx126x-board.o(i.SX126xWakeup))
  [Stack]

  - Max Depth = 96
  - Call Chain = SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_SPI_Transmit
  - >> HAL_GPIO_WritePin
  - >> SX126xWaitOnBusy
  - >> SX126xSetOperatingMode
  [Called By]
  - >> SX126xCheckDeviceReady
  - >> SX126xInit

  SX126xWriteBuffer (Thumb, 76 bytes, Stack size 16 bytes, sx126x-board.o(i.SX126xWriteBuffer))
  [Stack]

  - Max Depth = 120
  - Call Chain = SX126xWriteBuffer ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_SPI_Transmit
  - >> HAL_GPIO_WritePin
  - >> SX126xCheckDeviceReady
  - >> SX126xWaitOnBusy
  - >> __aeabi_memcpy
  [Called By]
  - >> SX126xSetPayload

  SX126xWriteCommand (Thumb, 78 bytes, Stack size 16 bytes, sx126x-board.o(i.SX126xWriteCommand))
  [Stack]

  - Max Depth = 120
  - Call Chain = SX126xWriteCommand ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_SPI_Transmit
  - >> HAL_GPIO_WritePin
  - >> SX126xCheckDeviceReady
  - >> SX126xWaitOnBusy
  - >> __aeabi_memcpy
  [Called By]
  - >> SX126xSetTxParams
  - >> SX126xSetDio2AsRfSwitchCtrl
  - >> SX126xSetTx
  - >> SX126xSetPaConfig
  - >> SX126xCalibrateImage
  - >> SX126xSetTxContinuousWave
  - >> SX126xSetStopRxTimerOnPreambleDetect
  - >> SX126xSetStandby
  - >> SX126xSetSleep
  - >> SX126xSetRxDutyCycle
  - >> SX126xSetRxBoosted
  - >> SX126xSetRx
  - >> SX126xSetRfFrequency
  - >> SX126xSetRegulatorMode
  - >> SX126xSetPacketType
  - >> SX126xSetPacketParams
  - >> SX126xSetModulationParams
  - >> SX126xSetLoRaSymbNumTimeout
  - >> SX126xSetDioIrqParams
  - >> SX126xSetCad
  - >> SX126xSetBufferBaseAddress
  - >> SX126xClearIrqStatus

  SX126xWriteRegister (Thumb, 12 bytes, Stack size 16 bytes, sx126x-board.o(i.SX126xWriteRegister))
  [Stack]

  - Max Depth = 136
  - Call Chain = SX126xWriteRegister ⇒ SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SX126xWriteRegisters
  [Called By]
  - >> SX126xSetTxParams
  - >> SX126xSetWhiteningSeed
  - >> SX126xSetRxBoosted
  - >> SX126xSetRx
  - >> SX126xSetLoRaSymbNumTimeout
  - >> SX126xGetRandom
  - >> RadioWrite
  - >> RadioSetTxConfig
  - >> RadioSetRxConfig
  - >> RadioSetPublicNetwork
  - >> RadioIrqProcess

  SX126xWriteRegisters (Thumb, 84 bytes, Stack size 16 bytes, sx126x-board.o(i.SX126xWriteRegisters))
  [Stack]

  - Max Depth = 120
  - Call Chain = SX126xWriteRegisters ⇒ SX126xCheckDeviceReady ⇒ SX126xWakeup ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_SPI_Transmit
  - >> HAL_GPIO_WritePin
  - >> SX126xCheckDeviceReady
  - >> SX126xWaitOnBusy
  - >> __aeabi_memcpy
  [Called By]
  - >> SX126xWriteRegister
  - >> SX126xSetCrcSeed
  - >> SX126xSetCrcPolynomial
  - >> SX126xSetSyncWord
  - >> RadioWriteBuffer
  - >> RadioAddRegisterToRetentionList

  SysTick_Handler (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_it.o(i.SysTick_Handler))
  [Calls]

  - >> HAL_IncTick
  [Address Reference Count : 1]
  - startup_stm32f103xe.o(RESET)

  SystemClock_Config (Thumb, 92 bytes, Stack size 72 bytes, main.o(i.SystemClock_Config))
  [Stack]

  - Max Depth = 136
  - Call Chain = SystemClock_Config ⇒ HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_NVIC_SetPriority
  [Calls]
  - >> HAL_RCC_OscConfig
  - >> HAL_RCC_ClockConfig
  - >> __aeabi_memclr4
  [Called By]
  - >> main

  SystemInit (Thumb, 2 bytes, Stack size 0 bytes, system_stm32f1xx.o(i.SystemInit))
  [Address Reference Count : 1]

  - startup_stm32f103xe.o(.text)

  TimerGetCurrentTime (Thumb, 4 bytes, Stack size 0 bytes, timer.o(i.TimerGetCurrentTime))
  [Calls]

  - >> HAL_GetTick
  [Called By]
  - >> RadioIsChannelFree

  TimerGetElapsedTime (Thumb, 12 bytes, Stack size 8 bytes, timer.o(i.TimerGetElapsedTime))
  [Stack]

  - Max Depth = 8
  - Call Chain = TimerGetElapsedTime
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> RadioIsChannelFree

  TimerInit (Thumb, 38 bytes, Stack size 0 bytes, timer.o(i.TimerInit))
  [Called By]

  - >> LoRa_Test_Main
  - >> RadioInit

  TimerService (Thumb, 70 bytes, Stack size 16 bytes, timer.o(i.TimerService))
  [Stack]

  - Max Depth = 16
  - Call Chain = TimerService
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> LoRa_Test_Main

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

  - >> LoRa_Test_Main
  - >> RadioSetTxContinuousWave
  - >> RadioSend
  - >> RadioRxBoosted
  - >> RadioRx

  TimerStart (Thumb, 24 bytes, Stack size 8 bytes, timer.o(i.TimerStart))
  [Stack]

  - Max Depth = 8
  - Call Chain = TimerStart
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> LoRa_Test_Main
  - >> LoRa_Test_Handle
  - >> RadioSetTxContinuousWave
  - >> RadioSend
  - >> RadioRxBoosted
  - >> RadioRx

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

  - >> RadioIrqProcess

  UsageFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_it.o(i.UsageFault_Handler))
  [Calls]

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

  __0printf$8 (Thumb, 22 bytes, Stack size 24 bytes, printf8.o(i.__0printf$8), UNUSED)
  [Calls]

  - >> _printf_core

  __1printf$8 (Thumb, 0 bytes, Stack size 24 bytes, printf8.o(i.__0printf$8), UNUSED)

  __2printf (Thumb, 0 bytes, Stack size 24 bytes, printf8.o(i.__0printf$8))
  [Stack]

  - Max Depth = 24
  - Call Chain = __2printf
  [Called By]
  - >> LoRa_Init
  - >> main
  - >> OnTxTimeout
  - >> OnTxDone
  - >> OnRxTimeout
  - >> OnRxError
  - >> OnRxDone
  - >> LoRa_Test_Handle

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

  fputc (Thumb, 24 bytes, Stack size 16 bytes, main.o(i.fputc))
  [Stack]

  - Max Depth = 72
  - Call Chain = fputc ⇒ HAL_UART_Transmit ⇒ UART_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_UART_Transmit
  [Address Reference Count : 1]
  - printf8.o(i.__0printf$8)

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

  - Max Depth = 136
  - Call Chain = main ⇒ SystemClock_Config ⇒ HAL_RCC_ClockConfig ⇒ HAL_InitTick ⇒ HAL_NVIC_SetPriority
  [Calls]
  - >> LoRa_Test_Main
  - >> LoRa_Init
  - >> HAL_UART_Init
  - >> HAL_Init
  - >> SystemClock_Config
  - >> MX_SPI1_Init
  - >> MX_GPIO_Init
  - >> __2printf
  [Address Reference Count : 1]
  - entry9a.o(.ARM.Collect$$$$0000000B)

  ### Local Symbols

  MX_GPIO_Init (Thumb, 196 bytes, Stack size 48 bytes, main.o(i.MX_GPIO_Init))
  [Stack]

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

  MX_SPI1_Init (Thumb, 58 bytes, Stack size 8 bytes, main.o(i.MX_SPI1_Init))
  [Stack]

  - Max Depth = 96
  - Call Chain = MX_SPI1_Init ⇒ HAL_SPI_Init ⇒ HAL_SPI_MspInit ⇒ HAL_GPIO_Init
  [Calls]
  - >> HAL_SPI_Init
  [Called By]
  - >> main

  SPI_EndRxTxTransaction (Thumb, 32 bytes, Stack size 16 bytes, stm32f1xx_hal_spi.o(i.SPI_EndRxTxTransaction))
  [Stack]

  - Max Depth = 48
  - Call Chain = SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> SPI_WaitFlagStateUntilTimeout
  [Called By]
  - >> HAL_SPI_TransmitReceive
  - >> HAL_SPI_Transmit

  SPI_WaitFlagStateUntilTimeout (Thumb, 180 bytes, Stack size 32 bytes, stm32f1xx_hal_spi.o(i.SPI_WaitFlagStateUntilTimeout))
  [Stack]

  - Max Depth = 32
  - Call Chain = SPI_WaitFlagStateUntilTimeout
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> SPI_EndRxTxTransaction

  __NVIC_SetPriority (Thumb, 32 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(i.__NVIC_SetPriority))
  [Called By]

  - >> HAL_NVIC_SetPriority
  - >> HAL_SYSTICK_Config

  UART_SetConfig (Thumb, 178 bytes, Stack size 16 bytes, stm32f1xx_hal_uart.o(i.UART_SetConfig))
  [Stack]

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

  UART_WaitOnFlagUntilTimeout (Thumb, 100 bytes, Stack size 24 bytes, stm32f1xx_hal_uart.o(i.UART_WaitOnFlagUntilTimeout))
  [Stack]

  - Max Depth = 24
  - Call Chain = UART_WaitOnFlagUntilTimeout
  [Calls]
  - >> HAL_GetTick
  [Called By]
  - >> HAL_UART_Transmit

  SX126xDbgPinRxWrite (Thumb, 18 bytes, Stack size 0 bytes, sx126x-board.o(i.SX126xDbgPinRxWrite))
  [Calls]

  - >> HAL_GPIO_WritePin
  [Called By]
  - >> SX126xSetOperatingMode

  SX126xDbgPinTxWrite (Thumb, 18 bytes, Stack size 0 bytes, sx126x-board.o(i.SX126xDbgPinTxWrite))
  [Calls]

  - >> HAL_GPIO_WritePin
  [Called By]
  - >> SX126xSetOperatingMode

  RadioGetFskBandwidthRegValue (Thumb, 48 bytes, Stack size 0 bytes, radio.o(i.RadioGetFskBandwidthRegValue))
  [Called By]

  - >> RadioSetTxConfig
  - >> RadioSetRxConfig

  RadioGetLoRaTimeOnAirNumerator (Thumb, 122 bytes, Stack size 20 bytes, radio.o(i.RadioGetLoRaTimeOnAirNumerator))
  [Stack]

  - Max Depth = 20
  - Call Chain = RadioGetLoRaTimeOnAirNumerator
  [Called By]
  - >> RadioTimeOnAir

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

  - >> SX126xSetRfFrequency
  - >> SX126xSetModulationParams

  _printf_core (Thumb, 996 bytes, Stack size 104 bytes, printf8.o(i._printf_core), UNUSED)
  [Calls]

  - >> __aeabi_uldivmod
  - >> _printf_pre_padding
  - >> _printf_post_padding
  [Called By]
  - >> __0printf$8

  _printf_post_padding (Thumb, 36 bytes, Stack size 24 bytes, printf8.o(i._printf_post_padding), UNUSED)
  [Called By]

  - >> _printf_core

  _printf_pre_padding (Thumb, 46 bytes, Stack size 24 bytes, printf8.o(i._printf_pre_padding), UNUSED)
  [Called By]

  - >> _printf_core

  ### Undefined Global Symbols