# Static Call Graph for image .\rvmdk\enet_io.axf

#<CALLGRAPH># ARM Linker, 4.1 [Build 561]: Last Updated: Wed Jun 21 14:08:26 2017

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

### Call chain for Maximum Stack Depth:

main ⇒ process_serial_command_2 ⇒ InsertDelTimeZone ⇒ insert_attendence_log ⇒ add_attendence_rec ⇒ SaveParam1b ⇒ add_param_1b ⇒ get_free_param_1b ⇒ defragment_param_1b ⇒ update_bankstatus_param_1b

### Functions with no stack information

- Reset_Handler

### Mutually Recursive functions

- SysCtlDelay ⇒ SysCtlDelay
- UARTConfigSetExpClk ⇒ UARTConfigSetExpClk
- EthernetPHYRead ⇒ EthernetPHYRead

  ### Function Pointers

  - BusFaultHandler from global.o(.text) referenced from startup_rvmdk.o(RESET)
  - FaultISR from global.o(.text) referenced from startup_rvmdk.o(RESET)
  - GPIObIntHandler from pheripheral.o(.text) referenced from startup_rvmdk.o(RESET)
  - GPIOcIntHandler from wiegand.o(.text) referenced from startup_rvmdk.o(RESET)
  - IntDefaultHandler from global.o(.text) referenced 40 times from startup_rvmdk.o(RESET)
  - LocatorReceive from locator.o(.text) referenced from locator.o(.text)
  - NmiSR from global.o(.text) referenced from startup_rvmdk.o(RESET)
  - Reset_Handler from startup_rvmdk.o(RESET) referenced from startup_rvmdk.o(RESET)
  - SoftwareUpdateRequestCallback from iq_pec_main.o(.text) referenced from iq_pec_main.o(.text)
  - SoftwareUpdateUDPReceive from swupdate.o(.text) referenced from swupdate.o(.text)
  - SysTickIntHandler from iq_pec_main.o(.text) referenced from startup_rvmdk.o(RESET)
  - Timer0IntHandler from global.o(.text) referenced 2 times from startup_rvmdk.o(RESET)
  - UART0IntHandler from uart0.o(.text) referenced from startup_rvmdk.o(RESET)
  - UART1IntHandler from uart1.o(.text) referenced from startup_rvmdk.o(RESET)
  - UART2IntHandler from uart2.o(.text) referenced from startup_rvmdk.o(RESET)
  - WatchdogIntHandler from global.o(.text) referenced from startup_rvmdk.o(RESET)
  - _sputc from printf6.o(i._sputc) referenced from printf6.o(i.__0sprintf$6)
  - connection_accept from tcp_func.o(.text) referenced from tcp_func.o(.text)
  - dhcp_recv from lwiplib.o(.text) referenced from lwiplib.o(.text)
  - etharp_output from lwiplib.o(.text) referenced from lwiplib.o(.text)
  - ip_input from lwiplib.o(.text) referenced from lwiplib.o(.text)
  - lwIPEthernetIntHandler from lwiplib.o(.text) referenced from startup_rvmdk.o(RESET)
  - main from iq_pec_main.o(.text) referenced from entry7.o(.ARM.Collect$$$$00000007)
  - stellarisif_init from lwiplib.o(.text) referenced from lwiplib.o(.text)
  - stellarisif_output from lwiplib.o(.text) referenced from lwiplib.o(.text)
  - tcp_accept_null from lwiplib.o(.text) referenced from lwiplib.o(.text)
  - tcp_data_receive from tcp_func.o(.text) referenced from tcp_func.o(.text)
  - tcp_recv_null from lwiplib.o(.text) referenced from lwiplib.o(.text)

  ### Global Symbols

  Reset_Handler (Thumb, 0 bytes, Stack size unknown bytes, startup_rvmdk.o(RESET))

  __main (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))

  _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_init (Thumb, 0 bytes, Stack size unknown bytes, entry7.o(.ARM.Collect$$$$00000007))

  SysCtlDelay (Thumb, 6 bytes, Stack size 0 bytes, sysctl.o(.emb_text))
  [Calls]

  - >> SysCtlDelay
  [Called By]
  - >> SysCtlDelay
  - >> mili_sec
  - >> SysCtlClockSet

  CPUcpsid (Thumb, 8 bytes, Stack size 0 bytes, cpu.o(.emb_text))
  [Called By]

  - >> IntMasterDisable

  CPUcpsie (Thumb, 8 bytes, Stack size 0 bytes, cpu.o(.emb_text))
  [Called By]

  - >> IntMasterEnable

  CPUwfi (Thumb, 4 bytes, Stack size 0 bytes, cpu.o(.emb_text), UNUSED)

  restore_defaults (Thumb, 16 bytes, Stack size 8 bytes, iq_pec_main.o(.text))
  [Stack]

  - Max Depth = 2172
  - Call Chain = restore_defaults ⇒ ConfigSave ⇒ SaveParam4b ⇒ add_param_4b ⇒ get_free_param_4b ⇒ defragment_param_4b ⇒ update_bankstatus_param_4b
  [Calls]
  - >> SysCtlReset
  - >> ConfigSave
  - >> ConfigLoadFactory
  [Called By]
  - >> main

  system_init (Thumb, 162 bytes, Stack size 24 bytes, iq_pec_main.o(.text))
  [Stack]

  - Max Depth = 2188
  - Call Chain = system_init ⇒ ConfigSave ⇒ SaveParam4b ⇒ add_param_4b ⇒ get_free_param_4b ⇒ defragment_param_4b ⇒ update_bankstatus_param_4b
  [Calls]
  - >> long_beep
  - >> init_ports
  - >> init_pheripheral
  - >> init_door_setting
  - >> init_attd_pointers
  - >> init_UART2
  - >> init_UART1
  - >> init_UART0
  - >> configure_timer
  - >> SysTickPeriodSet
  - >> SysTickIntEnable
  - >> SysTickEnable
  - >> SysCtlClockSet
  - >> SysCtlClockGet
  - >> SoftwareUpdateInit
  - >> IntMasterEnable
  - >> IntMasterDisable
  - >> I2C0_init
  - >> ConfigSave
  - >> ConfigFlash
  - >> __aeabi_memcpy4
  [Called By]
  - >> main

  main (Thumb, 184 bytes, Stack size 0 bytes, iq_pec_main.o(.text))
  [Stack]

  - Max Depth = 2308
  - Call Chain = main ⇒ process_serial_command_2 ⇒ InsertDelTimeZone ⇒ insert_attendence_log ⇒ add_attendence_rec ⇒ SaveParam1b ⇒ add_param_1b ⇒ get_free_param_1b ⇒ defragment_param_1b ⇒ update_bankstatus_param_1b
  [Calls]
  - >> smarti_change_colour_with_beep_command
  - >> process_serial_command_2
  - >> process_serial_command_0
  - >> insert_attendence_log
  - >> get_Current_Date_Time
  - >> check_onboard_inputs
  - >> SoftwareUpdateInit
  - >> SoftwareUpdateBegin
  - >> IntPrioritySet
  - >> GPIOPinRead
  - >> system_init
  - >> restore_defaults
  - >> __aeabi_memcpy
  [Address Reference Count : 1]
  - entry7.o(.ARM.Collect$$$$00000007)

  SysTickIntHandler (Thumb, 184 bytes, Stack size 8 bytes, iq_pec_main.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = SysTickIntHandler
  [Calls]
  - >> lwIPTimer
  - >> clear_uart_2_rx_buffer
  - >> clear_uart_0_rx_buffer
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

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

  - >> lwIPServiceTimers

  check_expiry_date (Thumb, 150 bytes, Stack size 12 bytes, global.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = check_expiry_date
  [Called By]
  - >> process_card_serial

  process_card_serial (Thumb, 198 bytes, Stack size 16 bytes, global.o(.text))
  [Stack]

  - Max Depth = 2268
  - Call Chain = process_card_serial ⇒ insert_attendence_log ⇒ add_attendence_rec ⇒ SaveParam1b ⇒ add_param_1b ⇒ get_free_param_1b ⇒ defragment_param_1b ⇒ update_bankstatus_param_1b
  [Calls]
  - >> turn_on_relay_1
  - >> turn_off_relay_1
  - >> check_time_zone
  - >> check_expiry_date
  - >> smarti_change_colour_with_beep_command
  - >> insert_attendence_log
  [Called By]
  - >> process_serial_command_0

  process_card_access (Thumb, 6 bytes, Stack size 8 bytes, global.o(.text), UNUSED)
  [Called By]

  - >> process_wiegand

  weekday (Thumb, 178 bytes, Stack size 48 bytes, global.o(.text), UNUSED)
  [Calls]

  - >> __aeabi_memcpy4

  mili_sec (Thumb, 24 bytes, Stack size 16 bytes, global.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = mili_sec
  [Calls]
  - >> SysCtlDelay
  [Called By]
  - >> UARTSend
  - >> led_buzzer_wiegand
  - >> process_serial_command_2
  - >> long_beep
  - >> I2C0_init
  - >> ConfigLoadFactory
  - >> smarti_halt_command
  - >> smarti_poll_command

  I2C0_init (Thumb, 62 bytes, Stack size 8 bytes, global.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = I2C0_init ⇒ mili_sec
  [Calls]
  - >> SysCtlPeripheralEnable
  - >> I2CMasterInitExpClk
  - >> GPIOPinTypeI2C
  - >> GPIOPinTypeGPIOOutput
  - >> GPIOPinConfigure
  - >> mili_sec
  - >> SysCtlClockGet
  [Called By]
  - >> TCA6424_write
  - >> get_Current_Date_Time
  - >> system_init
  - >> TCA6424_read
  - >> rtc_Write
  - >> rtc_Read

  configure_timer (Thumb, 56 bytes, Stack size 8 bytes, global.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = configure_timer ⇒ SysCtlClockGet
  [Calls]
  - >> TimerLoadSet
  - >> TimerIntEnable
  - >> TimerEnable
  - >> TimerConfigure
  - >> SysCtlPeripheralEnable
  - >> IntEnable
  - >> SysCtlClockGet
  [Called By]
  - >> system_init

  Timer0IntHandler (Thumb, 906 bytes, Stack size 8 bytes, global.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = Timer0IntHandler ⇒ turn_off_relay_2
  [Calls]
  - >> turn_off_relay_2
  - >> turn_off_output_2
  - >> turn_off_output_1
  - >> clear_uart_1_rx_buffer
  - >> TimerIntClear
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

  intialize_tcpip (Thumb, 156 bytes, Stack size 16 bytes, global.o(.text), UNUSED)
  [Calls]

  - >> tcp_port_init
  - >> lwIPInit
  - >> init_tcp_variables
  - >> SysCtlPeripheralReset
  - >> SysCtlPeripheralEnable
  - >> LocatorVersionSet
  - >> LocatorMACAddrSet
  - >> LocatorInit
  - >> LocatorAppTitleSet
  - >> GPIOPinTypeEthernetLED
  - >> FlashUserGet

  init_ports (Thumb, 50 bytes, Stack size 8 bytes, global.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = init_ports
  [Calls]
  - >> SysCtlPeripheralEnable
  [Called By]
  - >> system_init

  WatchdogIntHandler (Thumb, 12 bytes, Stack size 8 bytes, global.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = WatchdogIntHandler
  [Calls]
  - >> WatchdogIntClear
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

  wtdg_init (Thumb, 82 bytes, Stack size 8 bytes, global.o(.text), UNUSED)
  [Calls]

  - >> WatchdogUnlock
  - >> WatchdogStallEnable
  - >> WatchdogResetEnable
  - >> WatchdogReloadSet
  - >> WatchdogLockState
  - >> WatchdogIntClear
  - >> WatchdogEnable
  - >> SysCtlPeripheralEnable
  - >> IntEnable
  - >> SysCtlClockGet

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

  - Max Depth = 40
  - Call Chain = BusFaultHandler ⇒ long_beep ⇒ mili_sec
  [Calls]
  - >> long_beep
  - >> SysCtlReset
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

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

  - Max Depth = 40
  - Call Chain = NmiSR ⇒ long_beep ⇒ mili_sec
  [Calls]
  - >> long_beep
  - >> SysCtlReset
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

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

  - Max Depth = 40
  - Call Chain = FaultISR ⇒ long_beep ⇒ mili_sec
  [Calls]
  - >> long_beep
  - >> SysCtlReset
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

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

  - Max Depth = 40
  - Call Chain = IntDefaultHandler ⇒ long_beep ⇒ mili_sec
  [Calls]
  - >> long_beep
  - >> SysCtlReset
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

  bcd_to_hex (Thumb, 22 bytes, Stack size 8 bytes, global.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = bcd_to_hex
  [Called By]
  - >> get_Current_Date_Time

  hex_to_bcd (Thumb, 32 bytes, Stack size 12 bytes, global.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = hex_to_bcd
  [Called By]
  - >> set_Current_Date_Time
  - >> update_data_time

  get_checksum (Thumb, 44 bytes, Stack size 12 bytes, global.o(.text), UNUSED)

  combine_array (Thumb, 54 bytes, Stack size 8 bytes, global.o(.text), UNUSED)

  validate_datetime (Thumb, 354 bytes, Stack size 0 bytes, global.o(.text))
  [Called By]

  - >> set_Current_Date_Time

  GPIOcIntHandler (Thumb, 210 bytes, Stack size 8 bytes, wiegand.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = GPIOcIntHandler
  [Calls]
  - >> GPIOPinIntClear
  - >> GPIOPinRead
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

  set_wiegand_bit_count (Thumb, 32 bytes, Stack size 8 bytes, wiegand.o(.text), UNUSED)
  [Called By]

  - >> wiegand_init

  wiegand_init (Thumb, 84 bytes, Stack size 8 bytes, wiegand.o(.text), UNUSED)
  [Calls]

  - >> GPIOPinTypeGPIOInput
  - >> GPIOPinIntEnable
  - >> GPIOPinIntClear
  - >> GPIOPadConfigSet
  - >> GPIOIntTypeSet
  - >> set_wiegand_bit_count
  - >> IntEnable

  reset_card (Thumb, 152 bytes, Stack size 0 bytes, wiegand.o(.text), UNUSED)
  [Called By]

  - >> wiegand_check

  process_card (Thumb, 516 bytes, Stack size 0 bytes, wiegand.o(.text), UNUSED)
  [Called By]

  - >> wiegand_check

  check_parity (Thumb, 298 bytes, Stack size 20 bytes, wiegand.o(.text), UNUSED)
  [Called By]

  - >> wiegand_check

  wiegand_check (Thumb, 228 bytes, Stack size 8 bytes, wiegand.o(.text), UNUSED)
  [Calls]

  - >> GPIOPinIntEnable
  - >> GPIOPinIntDisable
  - >> check_parity
  - >> process_card
  - >> reset_card

  process_wiegand (Thumb, 314 bytes, Stack size 8 bytes, wiegand.o(.text), UNUSED)
  [Calls]

  - >> GPIOPinIntEnable
  - >> process_card_access

  led_buzzer_wiegand (Thumb, 848 bytes, Stack size 16 bytes, wiegand.o(.text), UNUSED)
  [Calls]

  - >> TCA6424_write
  - >> mili_sec

  init_UART0 (Thumb, 70 bytes, Stack size 8 bytes, uart0.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = init_UART0 ⇒ GPIOPinTypeUART
  [Calls]
  - >> UARTIntEnable
  - >> UARTFIFOLevelSet
  - >> UARTConfigSetExpClk
  - >> GPIOPinTypeUART
  - >> SysCtlPeripheralEnable
  - >> IntEnable
  - >> SysCtlClockGet
  [Called By]
  - >> system_init

  clear_uart_0_tx_buffer (Thumb, 24 bytes, Stack size 0 bytes, uart0.o(.text), UNUSED)

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

  - >> UART0IntHandler
  - >> process_serial_command_0
  - >> SysTickIntHandler

  UART0IntHandler (Thumb, 172 bytes, Stack size 24 bytes, uart0.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = UART0IntHandler
  [Calls]
  - >> UARTIntStatus
  - >> UARTIntClear
  - >> UARTCharGetNonBlocking
  - >> clear_uart_0_rx_buffer
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

  process_serial_command_0 (Thumb, 460 bytes, Stack size 16 bytes, uart0.o(.text))
  [Stack]

  - Max Depth = 2284
  - Call Chain = process_serial_command_0 ⇒ process_card_serial ⇒ insert_attendence_log ⇒ add_attendence_rec ⇒ SaveParam1b ⇒ add_param_1b ⇒ get_free_param_1b ⇒ defragment_param_1b ⇒ update_bankstatus_param_1b
  [Calls]
  - >> lcd_print_msg
  - >> ascii_to_digit
  - >> process_card_serial
  - >> smarti_change_colour_with_beep_command
  - >> clear_uart_0_rx_buffer
  [Called By]
  - >> main

  init_UART1 (Thumb, 98 bytes, Stack size 8 bytes, uart1.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = init_UART1 ⇒ GPIOPinTypeUART
  [Calls]
  - >> GPIOPinWrite
  - >> UARTIntEnable
  - >> UARTFIFOLevelSet
  - >> UARTConfigSetExpClk
  - >> GPIOPinTypeUART
  - >> GPIOPadConfigSet
  - >> SysCtlPeripheralEnable
  - >> IntEnable
  - >> GPIOPinTypeGPIOOutput
  - >> SysCtlClockGet
  [Called By]
  - >> system_init

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

  - >> UART1IntHandler
  - >> Timer0IntHandler

  UART1IntHandler (Thumb, 210 bytes, Stack size 24 bytes, uart1.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = UART1IntHandler
  [Calls]
  - >> UARTIntStatus
  - >> UARTIntClear
  - >> UARTCharGetNonBlocking
  - >> clear_uart_1_rx_buffer
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

  UARTSend (Thumb, 168 bytes, Stack size 16 bytes, uart1.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = UARTSend ⇒ mili_sec
  [Calls]
  - >> UARTCharPutNonBlocking
  - >> GPIOPinWrite
  - >> mili_sec
  [Called By]
  - >> resend_over_rs485
  - >> update_card_hold_time
  - >> update_empid
  - >> update_data_time
  - >> lcd_print_msg

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

  - >> update_card_hold_time
  - >> update_empid
  - >> update_data_time
  - >> lcd_print_msg

  update_data_time (Thumb, 330 bytes, Stack size 16 bytes, uart1.o(.text), UNUSED)
  [Calls]

  - >> get_checksum_uart1
  - >> UARTSend
  - >> hex_to_bcd

  update_empid (Thumb, 1140 bytes, Stack size 32 bytes, uart1.o(.text), UNUSED)
  [Calls]

  - >> get_checksum_uart1
  - >> UARTSend
  - >> __2sprintf

  update_card_hold_time (Thumb, 466 bytes, Stack size 16 bytes, uart1.o(.text), UNUSED)
  [Calls]

  - >> get_checksum_uart1
  - >> UARTSend

  lcd_print_msg (Thumb, 444 bytes, Stack size 16 bytes, uart1.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = lcd_print_msg ⇒ UARTSend ⇒ mili_sec
  [Calls]
  - >> get_checksum_uart1
  - >> UARTSend
  [Called By]
  - >> process_serial_command_0

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

  - >> UARTSend

  init_UART2 (Thumb, 68 bytes, Stack size 8 bytes, uart2.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = init_UART2 ⇒ GPIOPinTypeUART
  [Calls]
  - >> UARTIntEnable
  - >> UARTFIFOLevelSet
  - >> UARTConfigSetExpClk
  - >> GPIOPinTypeUART
  - >> SysCtlPeripheralEnable
  - >> IntEnable
  - >> SysCtlClockGet
  [Called By]
  - >> system_init

  clear_uart_2_tx_buffer (Thumb, 28 bytes, Stack size 0 bytes, uart2.o(.text), UNUSED)

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

  - >> UART2IntHandler
  - >> process_serial_command_2
  - >> SysTickIntHandler

  UART2IntHandler (Thumb, 298 bytes, Stack size 24 bytes, uart2.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = UART2IntHandler
  [Calls]
  - >> UARTIntStatus
  - >> UARTIntClear
  - >> UARTCharGetNonBlocking
  - >> clear_uart_2_rx_buffer
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

  process_serial_command_2 (Thumb, 792 bytes, Stack size 24 bytes, uart2.o(.text))
  [Stack]

  - Max Depth = 2308
  - Call Chain = process_serial_command_2 ⇒ InsertDelTimeZone ⇒ insert_attendence_log ⇒ add_attendence_rec ⇒ SaveParam1b ⇒ add_param_1b ⇒ get_free_param_1b ⇒ defragment_param_1b ⇒ update_bankstatus_param_1b
  [Calls]
  - >> set_Current_Date_Time
  - >> SendAllEvent
  - >> InsertDelTimeZone
  - >> UARTCharPutNonBlocking
  - >> ascii_to_digit
  - >> mili_sec
  - >> insert_attendence_log
  - >> clear_uart_2_rx_buffer
  - >> __2sprintf
  [Called By]
  - >> main

  init_tcp_variables (Thumb, 50 bytes, Stack size 0 bytes, tcp_func.o(.text), UNUSED)
  [Called By]

  - >> intialize_tcpip

  tcp_port_init (Thumb, 58 bytes, Stack size 8 bytes, tcp_func.o(.text), UNUSED)
  [Calls]

  - >> tcp_new
  - >> tcp_listen_with_backlog
  - >> tcp_bind
  - >> tcp_accept
  - >> close_conn
  [Called By]
  - >> intialize_tcpip

  process_tcp_command (Thumb, 2 bytes, Stack size 0 bytes, tcp_func.o(.text), UNUSED)

  send_tcp_acknowledgement (Thumb, 82 bytes, Stack size 16 bytes, tcp_func.o(.text), UNUSED)
  [Calls]

  - >> tcp_write
  - >> tcp_output

  LocatorInit (Thumb, 84 bytes, Stack size 16 bytes, locator.o(.text), UNUSED)
  [Calls]

  - >> udp_recv
  - >> udp_new
  - >> udp_connect
  - >> udp_bind
  [Called By]
  - >> intialize_tcpip

  LocatorBoardTypeSet (Thumb, 6 bytes, Stack size 0 bytes, locator.o(.text), UNUSED)

  LocatorBoardIDSet (Thumb, 6 bytes, Stack size 0 bytes, locator.o(.text), UNUSED)

  LocatorClientIPSet (Thumb, 18 bytes, Stack size 0 bytes, locator.o(.text), UNUSED)

  LocatorMACAddrSet (Thumb, 28 bytes, Stack size 0 bytes, locator.o(.text), UNUSED)
  [Called By]

  - >> intialize_tcpip

  LocatorVersionSet (Thumb, 18 bytes, Stack size 0 bytes, locator.o(.text), UNUSED)
  [Called By]

  - >> intialize_tcpip

  LocatorAppTitleSet (Thumb, 52 bytes, Stack size 8 bytes, locator.o(.text), UNUSED)
  [Called By]

  - >> intialize_tcpip

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

  - >> FlashErase

  update_bankstatus_param_1b (Thumb, 182 bytes, Stack size 12 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = update_bankstatus_param_1b
  [Called By]
  - >> defragment_param_1b

  defragment_param_1b (Thumb, 170 bytes, Stack size 1048 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 1060
  - Call Chain = defragment_param_1b ⇒ update_bankstatus_param_1b
  [Calls]
  - >> FlashProgram
  - >> FlashErase
  - >> update_bankstatus_param_1b
  - >> __aeabi_memset
  [Called By]
  - >> get_free_param_1b

  get_free_param_1b (Thumb, 62 bytes, Stack size 16 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 1076
  - Call Chain = get_free_param_1b ⇒ defragment_param_1b ⇒ update_bankstatus_param_1b
  [Calls]
  - >> defragment_param_1b
  [Called By]
  - >> add_param_1b

  check_param_1b (Thumb, 108 bytes, Stack size 20 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = check_param_1b
  [Called By]
  - >> ConfigLoad
  - >> add_param_1b

  add_param_1b (Thumb, 290 bytes, Stack size 1064 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 2140
  - Call Chain = add_param_1b ⇒ get_free_param_1b ⇒ defragment_param_1b ⇒ update_bankstatus_param_1b
  [Calls]
  - >> FlashProgram
  - >> FlashErase
  - >> check_param_1b
  - >> get_free_param_1b
  - >> malloc
  - >> free
  - >> memcmp
  - >> __aeabi_memcpy4
  [Called By]
  - >> SaveParam1b

  update_bankstatus_param_4b (Thumb, 202 bytes, Stack size 12 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = update_bankstatus_param_4b
  [Called By]
  - >> defragment_param_4b

  defragment_param_4b (Thumb, 168 bytes, Stack size 1048 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 1060
  - Call Chain = defragment_param_4b ⇒ update_bankstatus_param_4b
  [Calls]
  - >> FlashProgram
  - >> FlashErase
  - >> update_bankstatus_param_4b
  - >> __aeabi_memset
  [Called By]
  - >> get_free_param_4b

  get_free_param_4b (Thumb, 62 bytes, Stack size 16 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 1076
  - Call Chain = get_free_param_4b ⇒ defragment_param_4b ⇒ update_bankstatus_param_4b
  [Calls]
  - >> defragment_param_4b
  [Called By]
  - >> add_param_4b

  check_param_4b (Thumb, 108 bytes, Stack size 20 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = check_param_4b
  [Called By]
  - >> ConfigLoad
  - >> add_param_4b

  add_param_4b (Thumb, 290 bytes, Stack size 1064 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 2140
  - Call Chain = add_param_4b ⇒ get_free_param_4b ⇒ defragment_param_4b ⇒ update_bankstatus_param_4b
  [Calls]
  - >> FlashProgram
  - >> FlashErase
  - >> check_param_4b
  - >> get_free_param_4b
  - >> malloc
  - >> free
  - >> memcmp
  - >> __aeabi_memcpy4
  [Called By]
  - >> SaveParam4b

  read_attd_log_complete (Thumb, 104 bytes, Stack size 24 bytes, driver_int_flash.o(.text), UNUSED)
  [Calls]

  - >> FlashProgram
  - >> __aeabi_memset

  init_attd_pointers (Thumb, 486 bytes, Stack size 16 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = init_attd_pointers
  [Called By]
  - >> system_init
  - >> add_attendence_rec
  - >> read_attd_log

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

  - >> init_attd_pointers

  add_attendence_rec (Thumb, 386 bytes, Stack size 56 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 2212
  - Call Chain = add_attendence_rec ⇒ SaveParam1b ⇒ add_param_1b ⇒ get_free_param_1b ⇒ defragment_param_1b ⇒ update_bankstatus_param_1b
  [Calls]
  - >> init_attd_pointers
  - >> SaveParam1b
  - >> FlashProgram
  - >> FlashErase
  - >> __aeabi_memset
  [Called By]
  - >> insert_attendence_log

  update_bankstatus_time_zone (Thumb, 182 bytes, Stack size 12 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = update_bankstatus_time_zone
  [Called By]
  - >> defragment_timezone

  defragment_timezone (Thumb, 170 bytes, Stack size 1048 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 1060
  - Call Chain = defragment_timezone ⇒ update_bankstatus_time_zone
  [Calls]
  - >> FlashProgram
  - >> FlashErase
  - >> update_bankstatus_time_zone
  - >> __aeabi_memset
  - >> __aeabi_memcpy
  [Called By]
  - >> get_free_time_zone

  get_free_time_zone (Thumb, 96 bytes, Stack size 16 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 1076
  - Call Chain = get_free_time_zone ⇒ defragment_timezone ⇒ update_bankstatus_time_zone
  [Calls]
  - >> defragment_timezone
  [Called By]
  - >> add_time_zone

  check_time_zone (Thumb, 108 bytes, Stack size 20 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = check_time_zone
  [Called By]
  - >> process_card_serial
  - >> add_time_zone

  add_time_zone (Thumb, 294 bytes, Stack size 1064 bytes, driver_int_flash.o(.text))
  [Stack]

  - Max Depth = 2140
  - Call Chain = add_time_zone ⇒ get_free_time_zone ⇒ defragment_timezone ⇒ update_bankstatus_time_zone
  [Calls]
  - >> check_time_zone
  - >> FlashProgram
  - >> FlashErase
  - >> get_free_time_zone
  - >> malloc
  - >> free
  - >> memcmp
  - >> __aeabi_memcpy4
  [Called By]
  - >> InsertDelTimeZone

  update_bankstatus_access_group (Thumb, 182 bytes, Stack size 12 bytes, driver_int_flash.o(.text), UNUSED)
  [Called By]

  - >> defragment_accessgroup

  defragment_accessgroup (Thumb, 164 bytes, Stack size 1048 bytes, driver_int_flash.o(.text), UNUSED)
  [Calls]

  - >> FlashProgram
  - >> FlashErase
  - >> update_bankstatus_access_group
  - >> __aeabi_memset
  [Called By]
  - >> get_free_access_group

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

  - >> defragment_accessgroup
  [Called By]
  - >> add_access_group

  check_access_group (Thumb, 108 bytes, Stack size 20 bytes, driver_int_flash.o(.text), UNUSED)
  [Called By]

  - >> SendAccessGroup
  - >> add_access_group

  add_access_group (Thumb, 318 bytes, Stack size 1064 bytes, driver_int_flash.o(.text), UNUSED)
  [Calls]

  - >> FlashProgram
  - >> FlashErase
  - >> check_access_group
  - >> get_free_access_group
  - >> malloc
  - >> free
  - >> memcmp
  - >> __aeabi_memcpy4
  [Called By]
  - >> InsertDelAccessGroup

  update_bankstatus_holiday (Thumb, 186 bytes, Stack size 12 bytes, driver_int_flash.o(.text), UNUSED)
  [Called By]

  - >> defragment_holiday

  defragment_holiday (Thumb, 172 bytes, Stack size 1048 bytes, driver_int_flash.o(.text), UNUSED)
  [Calls]

  - >> FlashProgram
  - >> FlashErase
  - >> update_bankstatus_holiday
  - >> __aeabi_memset
  [Called By]
  - >> get_free_holiday

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

  - >> defragment_holiday
  [Called By]
  - >> add_holiday

  check_holiday (Thumb, 108 bytes, Stack size 20 bytes, driver_int_flash.o(.text), UNUSED)
  [Called By]

  - >> SendHoliday
  - >> add_holiday

  add_holiday (Thumb, 298 bytes, Stack size 1064 bytes, driver_int_flash.o(.text), UNUSED)
  [Calls]

  - >> FlashProgram
  - >> FlashErase
  - >> check_holiday
  - >> get_free_holiday
  - >> malloc
  - >> free
  - >> memcmp
  - >> __aeabi_memcpy4
  [Called By]
  - >> InsertDelHoliday

  ConfigLoad (Thumb, 1646 bytes, Stack size 24 bytes, appl_int_flash.o(.text))
  [Stack]

  - Max Depth = 44
  - Call Chain = ConfigLoad ⇒ check_param_4b
  [Calls]
  - >> check_param_4b
  - >> check_param_1b
  [Called By]
  - >> ConfigFlash

  ConfigLoadFactory (Thumb, 756 bytes, Stack size 8 bytes, appl_int_flash.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = ConfigLoadFactory ⇒ mili_sec
  [Calls]
  - >> mili_sec
  [Called By]
  - >> ConfigFlash
  - >> restore_defaults

  ConfigFlash (Thumb, 28 bytes, Stack size 8 bytes, appl_int_flash.o(.text))
  [Stack]

  - Max Depth = 52
  - Call Chain = ConfigFlash ⇒ ConfigLoad ⇒ check_param_4b
  [Calls]
  - >> SysCtlClockGet
  - >> ConfigLoadFactory
  - >> FlashUsecSet
  - >> ConfigLoad
  [Called By]
  - >> system_init

  SaveParam4b (Thumb, 102 bytes, Stack size 16 bytes, appl_int_flash.o(.text))
  [Stack]

  - Max Depth = 2156
  - Call Chain = SaveParam4b ⇒ add_param_4b ⇒ get_free_param_4b ⇒ defragment_param_4b ⇒ update_bankstatus_param_4b
  [Calls]
  - >> add_param_4b
  [Called By]
  - >> ConfigSave

  SaveParam1b (Thumb, 592 bytes, Stack size 16 bytes, appl_int_flash.o(.text))
  [Stack]

  - Max Depth = 2156
  - Call Chain = SaveParam1b ⇒ add_param_1b ⇒ get_free_param_1b ⇒ defragment_param_1b ⇒ update_bankstatus_param_1b
  [Calls]
  - >> add_param_1b
  [Called By]
  - >> ConfigSave
  - >> add_attendence_rec

  ConfigSave (Thumb, 292 bytes, Stack size 8 bytes, appl_int_flash.o(.text))
  [Stack]

  - Max Depth = 2164
  - Call Chain = ConfigSave ⇒ SaveParam4b ⇒ add_param_4b ⇒ get_free_param_4b ⇒ defragment_param_4b ⇒ update_bankstatus_param_4b
  [Calls]
  - >> SaveParam4b
  - >> SaveParam1b
  [Called By]
  - >> system_init
  - >> restore_defaults

  IsHoliday (Thumb, 100 bytes, Stack size 12 bytes, appl_int_flash.o(.text), UNUSED)

  SendTimeSet (Thumb, 4 bytes, Stack size 0 bytes, appl_int_flash.o(.text), UNUSED)

  SendAllEvent (Thumb, 170 bytes, Stack size 16 bytes, appl_int_flash.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = SendAllEvent ⇒ __2sprintf
  [Calls]
  - >> __2sprintf
  [Called By]
  - >> process_serial_command_2

  InsertDelTimeSet (Thumb, 4 bytes, Stack size 0 bytes, appl_int_flash.o(.text), UNUSED)

  DelAllTimeSet (Thumb, 38 bytes, Stack size 16 bytes, appl_int_flash.o(.text), UNUSED)
  [Calls]

  - >> FlashErase

  SendTimeZone (Thumb, 6 bytes, Stack size 0 bytes, appl_int_flash.o(.text), UNUSED)

  SendAllTimeZone (Thumb, 2 bytes, Stack size 0 bytes, appl_int_flash.o(.text), UNUSED)

  SendTimeZoneCount (Thumb, 46 bytes, Stack size 8 bytes, appl_int_flash.o(.text), UNUSED)

  insert_attendence_log (Thumb, 108 bytes, Stack size 40 bytes, appl_int_flash.o(.text))
  [Stack]

  - Max Depth = 2252
  - Call Chain = insert_attendence_log ⇒ add_attendence_rec ⇒ SaveParam1b ⇒ add_param_1b ⇒ get_free_param_1b ⇒ defragment_param_1b ⇒ update_bankstatus_param_1b
  [Calls]
  - >> add_attendence_rec
  [Called By]
  - >> InsertDelTimeZone
  - >> process_card_serial
  - >> process_serial_command_2
  - >> main

  InsertDelTimeZone (Thumb, 296 bytes, Stack size 32 bytes, appl_int_flash.o(.text))
  [Stack]

  - Max Depth = 2284
  - Call Chain = InsertDelTimeZone ⇒ insert_attendence_log ⇒ add_attendence_rec ⇒ SaveParam1b ⇒ add_param_1b ⇒ get_free_param_1b ⇒ defragment_param_1b ⇒ update_bankstatus_param_1b
  [Calls]
  - >> insert_attendence_log
  - >> add_time_zone
  [Called By]
  - >> process_serial_command_2

  DelAllTimeZone (Thumb, 38 bytes, Stack size 16 bytes, appl_int_flash.o(.text), UNUSED)
  [Calls]

  - >> FlashErase

  SendAccessGroup (Thumb, 64 bytes, Stack size 24 bytes, appl_int_flash.o(.text), UNUSED)
  [Calls]

  - >> check_access_group

  SendAllAccessGroup (Thumb, 530 bytes, Stack size 32 bytes, appl_int_flash.o(.text), UNUSED)
  [Calls]

  - >> tcp_write
  - >> tcp_output

  SendAccessGroupCount (Thumb, 46 bytes, Stack size 8 bytes, appl_int_flash.o(.text), UNUSED)

  InsertDelAccessGroup (Thumb, 92 bytes, Stack size 24 bytes, appl_int_flash.o(.text), UNUSED)
  [Calls]

  - >> add_access_group

  DelAllAccessGroup (Thumb, 38 bytes, Stack size 16 bytes, appl_int_flash.o(.text), UNUSED)
  [Calls]

  - >> FlashErase

  SendHoliday (Thumb, 66 bytes, Stack size 24 bytes, appl_int_flash.o(.text), UNUSED)
  [Calls]

  - >> check_holiday

  SendAllHoliday (Thumb, 500 bytes, Stack size 32 bytes, appl_int_flash.o(.text), UNUSED)
  [Calls]

  - >> tcp_write
  - >> tcp_output

  SendHolidayCount (Thumb, 50 bytes, Stack size 8 bytes, appl_int_flash.o(.text), UNUSED)

  InsertDelHoliday (Thumb, 102 bytes, Stack size 24 bytes, appl_int_flash.o(.text), UNUSED)
  [Calls]

  - >> add_holiday

  DelAllHoliday (Thumb, 38 bytes, Stack size 16 bytes, appl_int_flash.o(.text), UNUSED)
  [Calls]

  - >> FlashErase

  rtc_Read (Thumb, 172 bytes, Stack size 16 bytes, rtc.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = rtc_Read ⇒ long_beep ⇒ mili_sec
  [Calls]
  - >> long_beep
  - >> I2C0_init
  - >> I2CMasterSlaveAddrSet
  - >> I2CMasterDataPut
  - >> I2CMasterDataGet
  - >> I2CMasterControl
  - >> I2CMasterBusy
  [Called By]
  - >> get_Current_Date_Time

  rtc_Write (Thumb, 168 bytes, Stack size 24 bytes, rtc.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = rtc_Write ⇒ long_beep ⇒ mili_sec
  [Calls]
  - >> long_beep
  - >> I2C0_init
  - >> I2CMasterSlaveAddrSet
  - >> I2CMasterDataPut
  - >> I2CMasterControl
  - >> I2CMasterBusy
  [Called By]
  - >> set_Current_Date_Time

  get_Current_Date_Time (Thumb, 228 bytes, Stack size 8 bytes, rtc.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = get_Current_Date_Time ⇒ rtc_Read ⇒ long_beep ⇒ mili_sec
  [Calls]
  - >> bcd_to_hex
  - >> I2C0_init
  - >> rtc_Read
  [Called By]
  - >> main

  set_Current_Date_Time (Thumb, 182 bytes, Stack size 16 bytes, rtc.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = set_Current_Date_Time ⇒ rtc_Write ⇒ long_beep ⇒ mili_sec
  [Calls]
  - >> validate_datetime
  - >> hex_to_bcd
  - >> rtc_Write
  [Called By]
  - >> process_serial_command_2

  init_pheripheral (Thumb, 192 bytes, Stack size 8 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = init_pheripheral ⇒ GPIOPinTypeGPIOInput
  [Calls]
  - >> GPIOPinTypeGPIOInput
  - >> GPIOPadConfigSet
  - >> GPIOPinTypeGPIOOutput
  [Called By]
  - >> system_init

  turn_on_relay_1 (Thumb, 14 bytes, Stack size 8 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = turn_on_relay_1
  [Calls]
  - >> GPIOPinWrite
  [Called By]
  - >> process_card_serial
  - >> init_door_setting
  - >> io_expander_scan_port_2
  - >> take_action

  turn_off_relay_1 (Thumb, 14 bytes, Stack size 8 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = turn_off_relay_1
  [Calls]
  - >> GPIOPinWrite
  [Called By]
  - >> process_card_serial
  - >> init_door_setting

  turn_on_relay_2 (Thumb, 36 bytes, Stack size 8 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = turn_on_relay_2
  [Calls]
  - >> GPIOPinWrite
  [Called By]
  - >> init_door_setting
  - >> io_expander_scan_port_2
  - >> take_action

  turn_off_relay_2 (Thumb, 14 bytes, Stack size 8 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = turn_off_relay_2
  [Calls]
  - >> GPIOPinWrite
  [Called By]
  - >> Timer0IntHandler
  - >> init_door_setting

  buzzer_on (Thumb, 14 bytes, Stack size 8 bytes, pheripheral.o(.text), UNUSED)
  [Calls]

  - >> GPIOPinWrite

  buzzer_off (Thumb, 14 bytes, Stack size 8 bytes, pheripheral.o(.text), UNUSED)
  [Calls]

  - >> GPIOPinWrite

  long_beep (Thumb, 52 bytes, Stack size 16 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = long_beep ⇒ mili_sec
  [Calls]
  - >> GPIOPinWrite
  - >> mili_sec
  [Called By]
  - >> TCA6424_write
  - >> IntDefaultHandler
  - >> FaultISR
  - >> NmiSR
  - >> BusFaultHandler
  - >> system_init
  - >> TCA6424_read
  - >> rtc_Write
  - >> rtc_Read

  turn_on_output_2 (Thumb, 28 bytes, Stack size 8 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = turn_on_output_2
  [Calls]
  - >> GPIOPinWrite
  [Called By]
  - >> trigger_output_on_access_at_door_2
  - >> trigger_output_on_access_at_door_1
  - >> take_action

  turn_on_output_1 (Thumb, 28 bytes, Stack size 8 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = turn_on_output_1
  [Calls]
  - >> GPIOPinWrite
  [Called By]
  - >> trigger_output_on_access_at_door_2
  - >> trigger_output_on_access_at_door_1
  - >> take_action

  take_action (Thumb, 54 bytes, Stack size 8 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = take_action ⇒ turn_on_relay_1
  [Calls]
  - >> turn_on_relay_1
  - >> turn_on_output_1
  - >> turn_on_output_2
  - >> turn_on_relay_2
  [Called By]
  - >> check_onboard_inputs

  check_onboard_inputs (Thumb, 104 bytes, Stack size 16 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = check_onboard_inputs ⇒ take_action ⇒ turn_on_relay_1
  [Calls]
  - >> GPIOPinRead
  - >> take_action
  [Called By]
  - >> main

  turn_off_output_1 (Thumb, 16 bytes, Stack size 8 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = turn_off_output_1
  [Calls]
  - >> GPIOPinWrite
  [Called By]
  - >> Timer0IntHandler

  turn_off_output_2 (Thumb, 16 bytes, Stack size 8 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = turn_off_output_2
  [Calls]
  - >> GPIOPinWrite
  [Called By]
  - >> Timer0IntHandler

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

  - >> turn_on_output_1
  - >> turn_on_output_2

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

  - >> turn_on_output_1
  - >> turn_on_output_2

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

  - Max Depth = 8
  - Call Chain = GPIObIntHandler
  [Calls]
  - >> GPIOPinIntClear
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

  io_expander_scan_port_2 (Thumb, 570 bytes, Stack size 8 bytes, pheripheral.o(.text), UNUSED)
  [Calls]

  - >> turn_on_relay_1
  - >> TCA6424_read
  - >> turn_on_relay_2

  check_door_interlock (Thumb, 58 bytes, Stack size 0 bytes, pheripheral.o(.text), UNUSED)

  reset_wiegand_reader_led (Thumb, 154 bytes, Stack size 8 bytes, pheripheral.o(.text), UNUSED)
  [Calls]

  - >> TCA6424_write
  - >> smarti_change_colour_with_beep_command

  init_door_setting (Thumb, 108 bytes, Stack size 8 bytes, pheripheral.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = init_door_setting ⇒ turn_on_relay_1
  [Calls]
  - >> turn_on_relay_1
  - >> turn_off_relay_2
  - >> turn_off_relay_1
  - >> turn_on_relay_2
  [Called By]
  - >> system_init

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

  - >> tcp_output
  - >> inet_aton
  - >> tcp_enqueue
  - >> tcp_keepalive
  - >> tcp_rst
  - >> ntohl
  - >> autoip_bind
  - >> dhcp_handle_ack
  - >> dhcp_bind
  - >> dhcp_handle_offer
  - >> tcp_output_set_header
  - >> tcp_output_segment
  - >> dhcp_create_request
  - >> autoip_create_addr

  ntohl (Thumb, 12 bytes, Stack size 4 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 4
  - Call Chain = ntohl
  [Calls]
  - >> htonl
  [Called By]
  - >> tcp_output
  - >> etharp_output
  - >> ip_input
  - >> icmp_input
  - >> udp_input
  - >> tcp_input
  - >> tcp_rexmit
  - >> etharp_query
  - >> update_arp_entry
  - >> tcp_process
  - >> tcp_receive
  - >> dhcp_decline
  - >> dhcp_recv
  - >> dhcp_bind
  - >> dhcp_select
  - >> tcp_output_segment
  - >> autoip_create_addr

  mem_malloc (Thumb, 344 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = mem_malloc
  [Called By]
  - >> pbuf_alloc
  - >> mem_calloc
  - >> dhcp_inform
  - >> dhcp_start
  - >> autoip_start
  - >> dhcp_unfold_reply

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

  - >> autoip_stop
  - >> dhcp_release
  - >> autoip_start
  - >> dhcp_handle_nak

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

  - >> ip_input
  - >> ip_route
  - >> autoip_start

  autoip_start (Thumb, 164 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 36
  - Call Chain = autoip_start ⇒ autoip_create_addr ⇒ ntohl
  [Calls]
  - >> netif_is_up
  - >> netif_set_down
  - >> mem_malloc
  - >> autoip_create_addr
  [Called By]
  - >> autoip_arp_reply
  - >> lwIPPrivateNetworkConfigChange
  - >> lwIPPrivateInit
  - >> autoip_handle_arp_conflict
  - >> dhcp_discover

  sys_arch_unprotect (Thumb, 16 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = sys_arch_unprotect ⇒ IntMasterEnable
  [Calls]
  - >> IntMasterEnable
  [Called By]
  - >> pbuf_free
  - >> mem_realloc
  - >> memp_malloc
  - >> pbuf_ref
  - >> memp_free
  - >> mem_free
  - >> stellarisif_output
  - >> enqueue_packet
  - >> dequeue_packet

  sys_arch_protect (Thumb, 8 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> IntMasterDisable
  [Called By]
  - >> pbuf_free
  - >> mem_realloc
  - >> memp_malloc
  - >> pbuf_ref
  - >> memp_free
  - >> mem_free
  - >> stellarisif_output
  - >> enqueue_packet
  - >> dequeue_packet

  mem_free (Thumb, 122 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = mem_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> sys_arch_protect
  - >> sys_arch_unprotect
  - >> plug_holes
  [Called By]
  - >> pbuf_free
  - >> dhcp_inform
  - >> dhcp_start
  - >> dhcp_stop
  - >> dhcp_unfold_reply
  - >> dhcp_free_reply

  memp_free (Thumb, 82 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> sys_arch_protect
  - >> sys_arch_unprotect
  [Called By]
  - >> pbuf_free
  - >> tcp_listen_with_backlog
  - >> tcp_close
  - >> tcp_input
  - >> tcp_enqueue
  - >> tcp_slowtmr
  - >> raw_remove
  - >> udp_remove
  - >> tcp_abandon
  - >> tcp_seg_free
  - >> update_arp_entry
  - >> tcp_receive
  - >> free_etharp_q

  pbuf_free (Thumb, 156 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 72
  - Call Chain = pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> memp_free
  - >> mem_free
  - >> sys_arch_protect
  - >> sys_arch_unprotect
  [Called By]
  - >> pbuf_alloc
  - >> LocatorReceive
  - >> tcp_output
  - >> SoftwareUpdateUDPReceive
  - >> stellarisif_interrupt
  - >> ethernet_input
  - >> etharp_arp_input
  - >> ip_input
  - >> icmp_input
  - >> udp_input
  - >> tcp_input
  - >> tcp_enqueue
  - >> tcp_fasttmr
  - >> tcp_zero_window_probe
  - >> tcp_keepalive
  - >> raw_sendto
  - >> pbuf_coalesce
  - >> pbuf_dechain
  - >> dhcp_start
  - >> dhcp_stop
  - >> etharp_query
  - >> etharp_raw
  - >> tcp_pcb_purge
  - >> tcp_rst
  - >> pbuf_realloc
  - >> udp_sendto_if
  - >> tcp_seg_free
  - >> stellarisif_output
  - >> stellarisif_transmit
  - >> update_arp_entry
  - >> icmp_send_response
  - >> tcp_recv_null
  - >> dhcp_recv
  - >> free_etharp_q
  - >> dhcp_delete_request

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

  - >> tcp_output
  - >> ethernet_input
  - >> etharp_arp_input
  - >> ip_input
  - >> icmp_input
  - >> tcp_enqueue
  - >> etharp_raw
  - >> tcp_rst
  - >> udp_sendto_if
  - >> inet_chksum_pseudo
  - >> ip_output_if
  - >> ntohs
  - >> tcp_receive
  - >> etharp_send_ip
  - >> tcp_output_set_header
  - >> tcp_output_segment
  - >> lwip_standard_chksum

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

  - Max Depth = 36
  - Call Chain = inet_chksum ⇒ lwip_standard_chksum
  [Calls]
  - >> lwip_standard_chksum
  [Called By]
  - >> ip_input
  - >> icmp_input
  - >> ip_output_if
  - >> icmp_send_response

  ntohs (Thumb, 12 bytes, Stack size 4 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 4
  - Call Chain = ntohs
  [Calls]
  - >> htons
  [Called By]
  - >> tcp_output
  - >> ip_input
  - >> icmp_input
  - >> udp_input
  - >> tcp_input
  - >> tcp_enqueue
  - >> raw_input
  - >> tcp_rst
  - >> ip_output_if
  - >> tcp_parseopt
  - >> tcp_receive
  - >> tcp_output_set_header

  pbuf_header (Thumb, 126 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

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

  ip_output_if (Thumb, 256 bytes, Stack size 40 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 76
  - Call Chain = ip_output_if ⇒ inet_chksum ⇒ lwip_standard_chksum
  [Calls]
  - >> pbuf_header
  - >> ntohs
  - >> inet_chksum
  - >> htons
  [Called By]
  - >> icmp_input
  - >> raw_sendto
  - >> ip_output
  - >> udp_sendto_if

  inet_chksum_pseudo (Thumb, 162 bytes, Stack size 40 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 60
  - Call Chain = inet_chksum_pseudo ⇒ lwip_standard_chksum
  [Calls]
  - >> htons
  - >> lwip_standard_chksum
  [Called By]
  - >> tcp_output
  - >> udp_input
  - >> tcp_input
  - >> tcp_zero_window_probe
  - >> tcp_keepalive
  - >> tcp_rst
  - >> udp_sendto_if
  - >> tcp_output_segment

  pbuf_ref (Thumb, 26 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = pbuf_ref ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> sys_arch_protect
  - >> sys_arch_unprotect
  [Called By]
  - >> tcp_seg_copy
  - >> etharp_query
  - >> pbuf_chain
  - >> stellarisif_output

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

  - Max Depth = 8
  - Call Chain = pbuf_cat
  [Called By]
  - >> tcp_enqueue
  - >> pbuf_chain
  - >> tcp_receive

  pbuf_chain (Thumb, 22 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

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

  memp_malloc (Thumb, 184 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = memp_malloc ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> sys_arch_protect
  - >> sys_arch_unprotect
  [Called By]
  - >> udp_new
  - >> pbuf_alloc
  - >> tcp_listen_with_backlog
  - >> tcp_alloc
  - >> tcp_seg_copy
  - >> tcp_enqueue
  - >> raw_new
  - >> etharp_query
  - >> alloc_pool_pbuf

  tcp_seg_free (Thumb, 32 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> memp_free
  [Called By]
  - >> tcp_output
  - >> tcp_segs_free
  - >> tcp_process
  - >> tcp_receive

  tcp_segs_free (Thumb, 30 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 104
  - Call Chain = tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_seg_free
  [Called By]
  - >> tcp_enqueue
  - >> tcp_slowtmr
  - >> tcp_abandon
  - >> tcp_pcb_purge
  - >> alloc_pool_pbuf

  pbuf_alloc (Thumb, 434 bytes, Stack size 40 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 160
  - Call Chain = pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> memp_malloc
  - >> mem_malloc
  - >> alloc_pool_pbuf
  [Called By]
  - >> LocatorReceive
  - >> tcp_output
  - >> icmp_input
  - >> tcp_enqueue
  - >> tcp_zero_window_probe
  - >> tcp_keepalive
  - >> raw_sendto
  - >> pbuf_coalesce
  - >> etharp_query
  - >> etharp_raw
  - >> tcp_rst
  - >> udp_sendto_if
  - >> stellarisif_receive
  - >> icmp_send_response
  - >> dhcp_create_request

  udp_bind (Thumb, 106 bytes, Stack size 12 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = udp_bind
  [Called By]
  - >> udp_connect
  - >> LocatorInit
  - >> SoftwareUpdateInit
  - >> dhcp_inform
  - >> dhcp_start
  - >> udp_sendto_if

  udp_sendto_if (Thumb, 252 bytes, Stack size 64 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 224
  - Call Chain = udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> udp_bind
  - >> pbuf_free
  - >> pbuf_alloc
  - >> pbuf_chain
  - >> inet_chksum_pseudo
  - >> ip_output_if
  - >> pbuf_header
  - >> htons
  [Called By]
  - >> udp_sendto
  - >> dhcp_inform
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

  udp_connect (Thumb, 94 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 36
  - Call Chain = udp_connect ⇒ udp_bind
  [Calls]
  - >> udp_bind
  [Called By]
  - >> LocatorInit
  - >> dhcp_inform
  - >> dhcp_start
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

  mem_realloc (Thumb, 300 bytes, Stack size 40 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = mem_realloc ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> sys_arch_protect
  - >> sys_arch_unprotect
  [Called By]
  - >> pbuf_realloc

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

  - Max Depth = 96
  - Call Chain = pbuf_realloc ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> mem_realloc
  [Called By]
  - >> ip_input
  - >> dhcp_inform
  - >> dhcp_release
  - >> dhcp_renew
  - >> tcp_receive
  - >> dhcp_decline
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

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

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

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

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

  ip_route (Thumb, 82 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

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

  ip_output (Thumb, 66 bytes, Stack size 48 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 124
  - Call Chain = ip_output ⇒ ip_output_if ⇒ inet_chksum ⇒ lwip_standard_chksum
  [Calls]
  - >> ip_route
  - >> ip_output_if
  [Called By]
  - >> tcp_output
  - >> tcp_zero_window_probe
  - >> tcp_keepalive
  - >> tcp_rst
  - >> icmp_send_response
  - >> tcp_output_segment

  tcp_rst (Thumb, 196 bytes, Stack size 48 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 208
  - Call Chain = tcp_rst ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> pbuf_alloc
  - >> ip_output
  - >> inet_chksum_pseudo
  - >> ntohs
  - >> htons
  - >> htonl
  [Called By]
  - >> tcp_input
  - >> tcp_abandon
  - >> tcp_listen_input
  - >> tcp_process

  tcp_output (Thumb, 624 bytes, Stack size 56 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 216
  - Call Chain = tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> pbuf_alloc
  - >> ip_output
  - >> tcp_seg_free
  - >> inet_chksum_pseudo
  - >> ntohs
  - >> htons
  - >> ntohl
  - >> htonl
  - >> tcp_output_set_header
  - >> tcp_output_segment
  [Called By]
  - >> tcp_close
  - >> send_tcp_acknowledgement
  - >> tcp_input
  - >> tcp_rexmit
  - >> tcp_connect
  - >> tcp_recved
  - >> tcp_fasttmr
  - >> tcp_slowtmr
  - >> tcp_rexmit_rto
  - >> tcp_pcb_remove
  - >> tcp_timewait_input
  - >> tcp_listen_input
  - >> tcp_process
  - >> tcp_receive
  - >> SendAllHoliday
  - >> SendAllAccessGroup

  tcp_pcb_purge (Thumb, 76 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 112
  - Call Chain = tcp_pcb_purge ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> tcp_segs_free
  [Called By]
  - >> tcp_slowtmr
  - >> tcp_pcb_remove
  - >> tcp_process

  tcp_pcb_remove (Thumb, 172 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 232
  - Call Chain = tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_output
  - >> tcp_pcb_purge
  [Called By]
  - >> tcp_close
  - >> tcp_input
  - >> tcp_abandon

  tcp_abandon (Thumb, 156 bytes, Stack size 56 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 288
  - Call Chain = tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_pcb_remove
  - >> tcp_rst
  - >> tcp_segs_free
  - >> memp_free
  [Called By]
  - >> tcp_slowtmr
  - >> netif_set_ipaddr
  - >> tcp_listen_input
  - >> tcp_process
  - >> tcp_kill_timewait
  - >> tcp_kill_prio

  netif_set_ipaddr (Thumb, 110 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 312
  - Call Chain = netif_set_ipaddr ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_abandon
  [Called By]
  - >> netif_set_addr
  - >> dhcp_release
  - >> autoip_bind
  - >> dhcp_bind
  - >> dhcp_handle_nak

  pbuf_copy (Thumb, 182 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

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

  etharp_raw (Thumb, 222 bytes, Stack size 48 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 208
  - Call Chain = etharp_raw ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> pbuf_alloc
  - >> htons
  [Called By]
  - >> etharp_request
  - >> autoip_arp_announce

  etharp_request (Thumb, 36 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 240
  - Call Chain = etharp_request ⇒ etharp_raw ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> etharp_raw
  [Called By]
  - >> autoip_tmr
  - >> netif_set_up
  - >> etharp_query

  ip_addr_isbroadcast (Thumb, 78 bytes, Stack size 12 bytes, lwiplib.o(.text))
  [Stack]

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

  etharp_query (Thumb, 412 bytes, Stack size 40 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 280
  - Call Chain = etharp_query ⇒ etharp_request ⇒ etharp_raw ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> pbuf_alloc
  - >> ip_addr_isbroadcast
  - >> etharp_request
  - >> pbuf_copy
  - >> memp_malloc
  - >> pbuf_ref
  - >> ntohl
  - >> find_entry
  - >> etharp_send_ip
  [Called By]
  - >> etharp_output
  - >> dhcp_check

  dhcp_renew (Thumb, 158 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 248
  - Call Chain = dhcp_renew ⇒ udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> udp_connect
  - >> pbuf_realloc
  - >> udp_sendto_if
  - >> dhcp_set_state
  - >> dhcp_create_request
  - >> dhcp_option_short
  - >> dhcp_option
  - >> dhcp_option_byte
  - >> dhcp_option_trailer
  - >> dhcp_delete_request
  [Called By]
  - >> dhcp_timeout
  - >> dhcp_t1_timeout

  dhcp_coarse_tmr (Thumb, 62 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 272
  - Call Chain = dhcp_coarse_tmr ⇒ dhcp_t2_timeout ⇒ dhcp_rebind ⇒ udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> dhcp_t2_timeout
  - >> dhcp_t1_timeout
  [Called By]
  - >> lwIPServiceTimers

  dhcp_release (Thumb, 190 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 336
  - Call Chain = dhcp_release ⇒ netif_set_ipaddr ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> udp_connect
  - >> netif_set_ipaddr
  - >> netif_set_gw
  - >> netif_set_netmask
  - >> pbuf_realloc
  - >> udp_sendto_if
  - >> netif_set_down
  - >> dhcp_set_state
  - >> dhcp_create_request
  - >> dhcp_option
  - >> dhcp_option_byte
  - >> dhcp_option_trailer
  - >> dhcp_delete_request
  [Called By]
  - >> dhcp_timeout

  netif_set_up (Thumb, 56 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 248
  - Call Chain = netif_set_up ⇒ etharp_request ⇒ etharp_raw ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> etharp_request
  [Called By]
  - >> lwIPPrivateInit
  - >> autoip_bind
  - >> dhcp_bind

  autoip_stop (Thumb, 20 bytes, Stack size 4 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 4
  - Call Chain = autoip_stop
  [Calls]
  - >> netif_set_down
  [Called By]
  - >> dhcp_stop
  - >> lwIPPrivateNetworkConfigChange
  - >> dhcp_bind

  dhcp_fine_tmr (Thumb, 64 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 368
  - Call Chain = dhcp_fine_tmr ⇒ dhcp_timeout ⇒ dhcp_bind ⇒ netif_set_ipaddr ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> dhcp_timeout
  [Called By]
  - >> lwIPServiceTimers

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

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

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

  - >> pbuf_free
  - >> udp_remove
  - >> autoip_stop
  - >> mem_free
  - >> dhcp_free_reply
  [Called By]
  - >> dhcp_start
  - >> lwIPPrivateNetworkConfigChange

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

  - Max Depth = 40
  - Call Chain = pbuf_copy_partial
  [Calls]
  - >> __aeabi_memcpy
  [Called By]
  - >> dhcp_unfold_reply

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

  - >> LocatorInit
  - >> SoftwareUpdateInit
  - >> dhcp_start

  udp_new (Thumb, 28 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = udp_new ⇒ memp_malloc ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> memp_malloc
  - >> __aeabi_memclr4
  [Called By]
  - >> LocatorInit
  - >> SoftwareUpdateInit
  - >> dhcp_inform
  - >> dhcp_start

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

  - >> udp_recv
  - >> udp_new
  - >> udp_connect
  - >> udp_bind
  - >> pbuf_free
  - >> dhcp_stop
  - >> udp_remove
  - >> mem_free
  - >> mem_malloc
  - >> dhcp_discover
  - >> __aeabi_memclr4
  [Called By]
  - >> lwIPPrivateNetworkConfigChange
  - >> lwIPPrivateInit

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

  - >> udp_new
  - >> udp_connect
  - >> udp_bind
  - >> udp_remove
  - >> pbuf_realloc
  - >> udp_sendto_if
  - >> mem_free
  - >> mem_malloc
  - >> dhcp_create_request
  - >> dhcp_option_short
  - >> dhcp_option
  - >> dhcp_option_byte
  - >> dhcp_option_trailer
  - >> dhcp_delete_request
  - >> __aeabi_memclr4

  dhcp_arp_reply (Thumb, 46 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 272
  - Call Chain = dhcp_arp_reply ⇒ dhcp_decline ⇒ udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> dhcp_decline
  [Called By]
  - >> etharp_arp_input

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

  - >> lwip_init

  memp_init (Thumb, 136 bytes, Stack size 12 bytes, lwiplib.o(.text), UNUSED)
  [Called By]

  - >> lwip_init

  mem_init (Thumb, 92 bytes, Stack size 0 bytes, lwiplib.o(.text), UNUSED)
  [Called By]

  - >> lwip_init

  lwip_init (Thumb, 16 bytes, Stack size 4 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> mem_init
  - >> memp_init
  - >> autoip_init
  [Called By]
  - >> lwIPPrivateInit

  mem_calloc (Thumb, 34 bytes, Stack size 16 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> mem_malloc
  - >> __aeabi_memclr

  netif_set_addr (Thumb, 40 bytes, Stack size 24 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> netif_set_ipaddr
  - >> netif_set_gw
  - >> netif_set_netmask
  [Called By]
  - >> netif_add
  - >> lwIPPrivateNetworkConfigChange

  netif_add (Thumb, 100 bytes, Stack size 32 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> netif_set_addr
  [Called By]
  - >> lwIPPrivateInit

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

  - >> netif_remove
  - >> lwIPPrivateInit

  netif_remove (Thumb, 74 bytes, Stack size 4 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> netif_set_default

  netif_find (Thumb, 130 bytes, Stack size 8 bytes, lwiplib.o(.text), UNUSED)

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

  - >> tcp_enqueue
  - >> tcp_receive

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

  - >> pbuf_free

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

  - >> __aeabi_memcpy

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

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

  raw_input (Thumb, 100 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 36
  - Call Chain = raw_input ⇒ ntohs
  [Calls]
  - >> ntohs
  [Called By]
  - >> ip_input

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

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

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

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

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

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

  - >> raw_sendto

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

  - >> memp_free

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

  - >> memp_malloc
  - >> __aeabi_memclr4

  tcp_keepalive (Thumb, 114 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 192
  - Call Chain = tcp_keepalive ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> pbuf_alloc
  - >> ip_output
  - >> inet_chksum_pseudo
  - >> htonl
  - >> tcp_output_set_header
  [Called By]
  - >> tcp_slowtmr

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

  - Max Depth = 232
  - Call Chain = tcp_rexmit_rto ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_output
  [Called By]
  - >> tcp_slowtmr

  tcp_zero_window_probe (Thumb, 124 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 192
  - Call Chain = tcp_zero_window_probe ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> pbuf_alloc
  - >> ip_output
  - >> inet_chksum_pseudo
  - >> tcp_output_set_header
  [Called By]
  - >> tcp_slowtmr

  tcp_slowtmr (Thumb, 750 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 320
  - Call Chain = tcp_slowtmr ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_output
  - >> tcp_zero_window_probe
  - >> tcp_rexmit_rto
  - >> tcp_keepalive
  - >> tcp_abandon
  - >> tcp_pcb_purge
  - >> tcp_segs_free
  - >> memp_free
  [Called By]
  - >> tcp_tmr

  tcp_fasttmr (Thumb, 122 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 232
  - Call Chain = tcp_fasttmr ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> tcp_output
  [Called By]
  - >> tcp_tmr

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

  - Max Depth = 328
  - Call Chain = tcp_tmr ⇒ tcp_slowtmr ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_fasttmr
  - >> tcp_slowtmr
  [Called By]
  - >> lwIPServiceTimers

  tcp_enqueue (Thumb, 1056 bytes, Stack size 80 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 240
  - Call Chain = tcp_enqueue ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> pbuf_alloc
  - >> pbuf_clen
  - >> tcp_segs_free
  - >> memp_malloc
  - >> pbuf_cat
  - >> pbuf_header
  - >> ntohs
  - >> htons
  - >> memp_free
  - >> htonl
  - >> __aeabi_memcpy
  [Called By]
  - >> tcp_write
  - >> tcp_connect
  - >> tcp_send_ctrl
  - >> tcp_listen_input

  tcp_send_ctrl (Thumb, 28 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 264
  - Call Chain = tcp_send_ctrl ⇒ tcp_enqueue ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_enqueue
  [Called By]
  - >> tcp_close

  tcp_close (Thumb, 242 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 280
  - Call Chain = tcp_close ⇒ tcp_send_ctrl ⇒ tcp_enqueue ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_output
  - >> tcp_send_ctrl
  - >> tcp_pcb_remove
  - >> memp_free
  [Called By]
  - >> close_conn
  - >> tcp_recv_null

  tcp_bind (Thumb, 228 bytes, Stack size 24 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> tcp_new_port
  [Called By]
  - >> tcp_port_init

  tcp_listen_with_backlog (Thumb, 228 bytes, Stack size 16 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> memp_malloc
  - >> memp_free
  [Called By]
  - >> tcp_port_init

  tcp_update_rcv_ann_wnd (Thumb, 54 bytes, Stack size 0 bytes, lwiplib.o(.text))
  [Called By]

  - >> tcp_recved
  - >> tcp_receive

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

  - >> tcp_output
  - >> tcp_update_rcv_ann_wnd

  tcp_eff_send_mss (Thumb, 42 bytes, Stack size 20 bytes, lwiplib.o(.text))
  [Stack]

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

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

  - >> tcp_alloc
  - >> tcp_connect

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

  - >> tcp_output
  - >> tcp_next_iss
  - >> tcp_eff_send_mss
  - >> tcp_enqueue
  - >> tcp_new_port

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

  - >> connection_accept

  tcp_seg_copy (Thumb, 38 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 48
  - Call Chain = tcp_seg_copy ⇒ memp_malloc ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> memp_malloc
  - >> pbuf_ref
  - >> __aeabi_memcpy4
  [Called By]
  - >> tcp_receive

  tcp_alloc (Thumb, 186 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 328
  - Call Chain = tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_next_iss
  - >> memp_malloc
  - >> tcp_kill_timewait
  - >> tcp_kill_prio
  - >> __aeabi_memclr4
  [Called By]
  - >> tcp_new
  - >> tcp_listen_input

  tcp_new (Thumb, 10 bytes, Stack size 8 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> tcp_alloc
  [Called By]
  - >> tcp_port_init

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

  - >> close_conn

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

  - >> close_conn
  - >> connection_accept

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

  - >> close_conn

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

  - >> connection_accept

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

  - >> tcp_port_init

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

  - >> connection_accept

  tcp_rexmit (Thumb, 86 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 240
  - Call Chain = tcp_rexmit ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_output
  - >> ntohl
  [Called By]
  - >> tcp_process
  - >> tcp_receive

  tcp_input (Thumb, 1338 bytes, Stack size 48 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 400
  - Call Chain = tcp_input ⇒ tcp_listen_input ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> tcp_output
  - >> ip_addr_isbroadcast
  - >> tcp_pcb_remove
  - >> tcp_rst
  - >> inet_chksum_pseudo
  - >> pbuf_header
  - >> ntohs
  - >> memp_free
  - >> ntohl
  - >> tcp_timewait_input
  - >> tcp_listen_input
  - >> tcp_process
  [Called By]
  - >> ip_input

  tcp_write (Thumb, 70 bytes, Stack size 32 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> tcp_enqueue
  [Called By]
  - >> send_tcp_acknowledgement
  - >> SendAllHoliday
  - >> SendAllAccessGroup

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

  - Max Depth = 216
  - Call Chain = icmp_dest_unreach ⇒ icmp_send_response ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> icmp_send_response
  [Called By]
  - >> ip_input
  - >> udp_input

  udp_input (Thumb, 684 bytes, Stack size 56 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 272
  - Call Chain = udp_input ⇒ icmp_dest_unreach ⇒ icmp_send_response ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> icmp_dest_unreach
  - >> ip_addr_isbroadcast
  - >> inet_chksum_pseudo
  - >> pbuf_header
  - >> ntohs
  - >> ntohl
  [Called By]
  - >> ip_input

  udp_sendto (Thumb, 62 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 256
  - Call Chain = udp_sendto ⇒ udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> ip_route
  - >> udp_sendto_if
  [Called By]
  - >> LocatorReceive
  - >> udp_send

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

  - >> udp_sendto

  udp_disconnect (Thumb, 28 bytes, Stack size 0 bytes, lwiplib.o(.text), UNUSED)

  autoip_tmr (Thumb, 264 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 344
  - Call Chain = autoip_tmr ⇒ autoip_bind ⇒ netif_set_ipaddr ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> etharp_request
  - >> autoip_bind
  - >> autoip_arp_announce
  [Called By]
  - >> lwIPServiceTimers

  autoip_arp_reply (Thumb, 176 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 280
  - Call Chain = autoip_arp_reply ⇒ autoip_handle_arp_conflict ⇒ autoip_arp_announce ⇒ etharp_raw ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> autoip_start
  - >> autoip_handle_arp_conflict
  - >> memcmp
  [Called By]
  - >> etharp_arp_input

  inet_chksum_pbuf (Thumb, 112 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

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

  icmp_input (Thumb, 544 bytes, Stack size 56 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 216
  - Call Chain = icmp_input ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> pbuf_alloc
  - >> inet_chksum_pbuf
  - >> ip_addr_isbroadcast
  - >> pbuf_copy
  - >> ip_output_if
  - >> pbuf_header
  - >> ntohs
  - >> inet_chksum
  - >> htons
  - >> ntohl
  [Called By]
  - >> ip_input

  inet_aton (Thumb, 336 bytes, Stack size 40 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> htonl
  [Called By]
  - >> inet_addr

  inet_addr (Thumb, 24 bytes, Stack size 12 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> inet_aton

  inet_ntoa (Thumb, 120 bytes, Stack size 32 bytes, lwiplib.o(.text), UNUSED)

  ip_current_netif (Thumb, 6 bytes, Stack size 0 bytes, lwiplib.o(.text), UNUSED)

  ip_current_header (Thumb, 6 bytes, Stack size 0 bytes, lwiplib.o(.text), UNUSED)

  ip_input (Thumb, 602 bytes, Stack size 40 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 440
  - Call Chain = ip_input ⇒ tcp_input ⇒ tcp_listen_input ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> icmp_input
  - >> udp_input
  - >> icmp_dest_unreach
  - >> tcp_input
  - >> raw_input
  - >> ip_addr_isbroadcast
  - >> pbuf_realloc
  - >> ntohs
  - >> inet_chksum
  - >> htons
  - >> netif_is_up
  - >> ntohl
  [Called By]
  - >> ethernet_input
  [Address Reference Count : 1]
  - lwiplib.o(.text)

  etharp_tmr (Thumb, 154 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 96
  - Call Chain = etharp_tmr ⇒ free_etharp_q ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> free_etharp_q
  [Called By]
  - >> lwIPServiceTimers

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

  - >> find_entry

  etharp_ip_input (Thumb, 54 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 192
  - Call Chain = etharp_ip_input ⇒ update_arp_entry ⇒ find_entry ⇒ free_etharp_q ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> update_arp_entry
  [Called By]
  - >> ethernet_input

  etharp_arp_input (Thumb, 398 bytes, Stack size 40 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 320
  - Call Chain = etharp_arp_input ⇒ autoip_arp_reply ⇒ autoip_handle_arp_conflict ⇒ autoip_arp_announce ⇒ etharp_raw ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> autoip_arp_reply
  - >> dhcp_arp_reply
  - >> htons
  - >> update_arp_entry
  [Called By]
  - >> ethernet_input

  etharp_output (Thumb, 200 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 312
  - Call Chain = etharp_output ⇒ etharp_query ⇒ etharp_request ⇒ etharp_raw ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> etharp_query
  - >> ip_addr_isbroadcast
  - >> pbuf_header
  - >> ntohl
  - >> etharp_send_ip
  [Address Reference Count : 1]
  - lwiplib.o(.text)

  ethernet_input (Thumb, 126 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 456
  - Call Chain = ethernet_input ⇒ ip_input ⇒ tcp_input ⇒ tcp_listen_input ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> etharp_arp_input
  - >> etharp_ip_input
  - >> ip_input
  - >> pbuf_header
  - >> htons
  [Called By]
  - >> stellarisif_interrupt

  perf_init (Thumb, 2 bytes, Stack size 0 bytes, lwiplib.o(.text), UNUSED)

  stellarisif_init (Thumb, 62 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = stellarisif_init ⇒ stellarisif_hwinit ⇒ SysCtlClockGet
  [Calls]
  - >> stellarisif_hwinit
  [Address Reference Count : 1]
  - lwiplib.o(.text)

  stellarisif_interrupt (Thumb, 120 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 472
  - Call Chain = stellarisif_interrupt ⇒ ethernet_input ⇒ ip_input ⇒ tcp_input ⇒ tcp_listen_input ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> ethernet_input
  - >> stellarisif_receive
  - >> stellarisif_transmit
  - >> dequeue_packet
  [Called By]
  - >> lwIPEthernetIntHandler

  lwIPInit (Thumb, 58 bytes, Stack size 24 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> SysCtlPeripheralEnable
  - >> EthernetMACAddrSet
  - >> lwIPPrivateInit
  [Called By]
  - >> intialize_tcpip

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

  - >> SysTickIntHandler

  lwIPEthernetIntHandler (Thumb, 34 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 480
  - Call Chain = lwIPEthernetIntHandler ⇒ stellarisif_interrupt ⇒ ethernet_input ⇒ ip_input ⇒ tcp_input ⇒ tcp_listen_input ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> EthernetIntStatus
  - >> EthernetIntClear
  - >> stellarisif_interrupt
  - >> lwIPServiceTimers
  [Address Reference Count : 1]
  - startup_rvmdk.o(RESET)

  lwIPLocalIPAddrGet (Thumb, 6 bytes, Stack size 0 bytes, lwiplib.o(.text), UNUSED)

  lwIPLocalNetMaskGet (Thumb, 6 bytes, Stack size 0 bytes, lwiplib.o(.text), UNUSED)

  lwIPLocalGWAddrGet (Thumb, 6 bytes, Stack size 0 bytes, lwiplib.o(.text), UNUSED)

  lwIPLocalMACGet (Thumb, 14 bytes, Stack size 8 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> EthernetMACAddrGet

  lwIPNetworkConfigChange (Thumb, 34 bytes, Stack size 24 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> lwIPPrivateNetworkConfigChange

  SoftwareUpdateInit (Thumb, 84 bytes, Stack size 16 bytes, swupdate.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = SoftwareUpdateInit ⇒ udp_new ⇒ memp_malloc ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> udp_recv
  - >> udp_new
  - >> udp_bind
  - >> FlashUserGet
  [Called By]
  - >> main
  - >> system_init

  SoftwareUpdateBegin (Thumb, 30 bytes, Stack size 8 bytes, swupdate.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = SoftwareUpdateBegin
  [Calls]
  - >> SysTickIntDisable
  [Called By]
  - >> main

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

  - >> GPIOPinTypeGPIOInput
  - >> GPIOPinIntEnable
  - >> GPIOPinIntClear
  - >> GPIOPadConfigSet
  - >> GPIOIntTypeSet
  - >> IntEnable

  TCA6424_write (Thumb, 168 bytes, Stack size 24 bytes, io_expander.o(.text), UNUSED)
  [Calls]

  - >> long_beep
  - >> I2C0_init
  - >> I2CMasterSlaveAddrSet
  - >> I2CMasterDataPut
  - >> I2CMasterControl
  - >> I2CMasterBusy
  [Called By]
  - >> led_buzzer_wiegand
  - >> reset_wiegand_reader_led

  TCA6424_read (Thumb, 172 bytes, Stack size 16 bytes, io_expander.o(.text), UNUSED)
  [Calls]

  - >> long_beep
  - >> I2C0_init
  - >> I2CMasterSlaveAddrSet
  - >> I2CMasterDataPut
  - >> I2CMasterDataGet
  - >> I2CMasterControl
  - >> I2CMasterBusy
  [Called By]
  - >> io_expander_scan_port_2

  smarti_poll_command (Thumb, 80 bytes, Stack size 16 bytes, smarti_func.o(.text), UNUSED)
  [Calls]

  - >> UARTCharPutNonBlocking
  - >> mili_sec
  [Called By]
  - >> process_smarti_reader

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

  - >> smarti_poll_command

  ascii_to_digit (Thumb, 308 bytes, Stack size 16 bytes, smarti_func.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = ascii_to_digit
  [Called By]
  - >> process_serial_command_2
  - >> process_serial_command_0

  smarti_version_read (Thumb, 24 bytes, Stack size 0 bytes, smarti_func.o(.text), UNUSED)

  smarti_change_colour_with_beep_command (Thumb, 212 bytes, Stack size 24 bytes, smarti_func.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = smarti_change_colour_with_beep_command
  [Calls]
  - >> UARTCharPutNonBlocking
  [Called By]
  - >> process_card_serial
  - >> process_serial_command_0
  - >> main
  - >> reset_wiegand_reader_led

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

  - >> UARTCharPutNonBlocking
  - >> mili_sec

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

  - >> main
  - >> tcp_enqueue
  - >> pbuf_take
  - >> pbuf_copy_partial
  - >> pbuf_copy
  - >> icmp_send_response
  - >> defragment_timezone

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

  - >> weekday
  - >> system_init
  - >> tcp_seg_copy
  - >> add_holiday
  - >> add_access_group
  - >> add_time_zone
  - >> add_param_4b
  - >> add_param_1b

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

  - >> defragment_holiday
  - >> defragment_accessgroup
  - >> defragment_timezone
  - >> add_attendence_rec
  - >> read_attd_log_complete
  - >> defragment_param_4b
  - >> defragment_param_1b
  - >> _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
  [Called By]
  - >> mem_calloc

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

  - >> udp_new
  - >> tcp_alloc
  - >> raw_new
  - >> dhcp_inform
  - >> dhcp_start

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

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

  - >> __aeabi_memset

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

  - Max Depth = 12
  - Call Chain = memcmp
  [Called By]
  - >> autoip_arp_reply
  - >> add_holiday
  - >> add_access_group
  - >> add_time_zone
  - >> add_param_4b
  - >> add_param_1b

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

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

  - >> _printf_core

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

  __decompress (Thumb, 0 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)

  __decompress1 (Thumb, 92 bytes, Stack size unknown bytes, __dczerorl2.o(.text), UNUSED)

  EthernetConfigSet (Thumb, 42 bytes, Stack size 0 bytes, ethernet.o(i.EthernetConfigSet))
  [Called By]

  - >> stellarisif_hwinit

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

  - >> stellarisif_hwinit

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

  - >> stellarisif_hwinit

  EthernetIntClear (Thumb, 4 bytes, Stack size 0 bytes, ethernet.o(i.EthernetIntClear))
  [Called By]

  - >> lwIPEthernetIntHandler
  - >> stellarisif_hwinit

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

  - >> stellarisif_hwinit

  EthernetIntEnable (Thumb, 8 bytes, Stack size 0 bytes, ethernet.o(i.EthernetIntEnable))
  [Called By]

  - >> stellarisif_hwinit

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

  - >> lwIPEthernetIntHandler
  - >> stellarisif_hwinit

  EthernetMACAddrGet (Thumb, 50 bytes, Stack size 4 bytes, ethernet.o(i.EthernetMACAddrGet))
  [Stack]

  - Max Depth = 4
  - Call Chain = EthernetMACAddrGet
  [Called By]
  - >> lwIPLocalMACGet
  - >> stellarisif_hwinit

  EthernetMACAddrSet (Thumb, 54 bytes, Stack size 4 bytes, ethernet.o(i.EthernetMACAddrSet), UNUSED)
  [Called By]

  - >> lwIPInit

  EthernetPHYRead (Thumb, 34 bytes, Stack size 0 bytes, ethernet.o(i.EthernetPHYRead))
  [Calls]

  - >> EthernetPHYRead
  [Called By]
  - >> EthernetPHYRead
  - >> lwIPServiceTimers

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

  - >> DelAllHoliday
  - >> DelAllAccessGroup
  - >> DelAllTimeZone
  - >> DelAllTimeSet
  - >> add_holiday
  - >> defragment_holiday
  - >> add_access_group
  - >> defragment_accessgroup
  - >> add_time_zone
  - >> defragment_timezone
  - >> add_attendence_rec
  - >> add_param_4b
  - >> defragment_param_4b
  - >> add_param_1b
  - >> defragment_param_1b
  - >> clear_all_banks

  FlashProgram (Thumb, 142 bytes, Stack size 8 bytes, flash.o(i.FlashProgram))
  [Stack]

  - Max Depth = 8
  - Call Chain = FlashProgram
  [Called By]
  - >> add_holiday
  - >> defragment_holiday
  - >> add_access_group
  - >> defragment_accessgroup
  - >> add_time_zone
  - >> defragment_timezone
  - >> add_attendence_rec
  - >> read_attd_log_complete
  - >> add_param_4b
  - >> defragment_param_4b
  - >> add_param_1b
  - >> defragment_param_1b

  FlashUsecSet (Thumb, 8 bytes, Stack size 0 bytes, flash.o(i.FlashUsecSet))
  [Called By]

  - >> ConfigFlash

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

  - >> intialize_tcpip
  - >> SoftwareUpdateInit

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

  - >> GPIOPinTypeUART
  - >> GPIOPinTypeGPIOInput
  - >> GPIOPinTypeI2C
  - >> GPIOPinTypeGPIOOutput
  - >> GPIOPinTypeEthernetLED

  GPIOIntTypeSet (Thumb, 58 bytes, Stack size 0 bytes, gpio.o(i.GPIOIntTypeSet), UNUSED)
  [Called By]

  - >> wiegand_init
  - >> TCA6424_init

  GPIOPadConfigSet (Thumb, 176 bytes, Stack size 0 bytes, gpio.o(i.GPIOPadConfigSet))
  [Called By]

  - >> GPIOPinTypeUART
  - >> GPIOPinTypeGPIOInput
  - >> wiegand_init
  - >> GPIOPinTypeI2C
  - >> GPIOPinTypeGPIOOutput
  - >> GPIOPinTypeEthernetLED
  - >> init_pheripheral
  - >> init_UART1
  - >> TCA6424_init

  GPIOPinConfigure (Thumb, 62 bytes, Stack size 0 bytes, gpio.o(i.GPIOPinConfigure))
  [Called By]

  - >> I2C0_init

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

  - >> wiegand_init
  - >> GPIOcIntHandler
  - >> GPIObIntHandler
  - >> TCA6424_init

  GPIOPinIntDisable (Thumb, 14 bytes, Stack size 0 bytes, gpio.o(i.GPIOPinIntDisable), UNUSED)
  [Called By]

  - >> wiegand_check

  GPIOPinIntEnable (Thumb, 12 bytes, Stack size 0 bytes, gpio.o(i.GPIOPinIntEnable), UNUSED)
  [Called By]

  - >> process_wiegand
  - >> wiegand_check
  - >> wiegand_init
  - >> TCA6424_init

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

  - >> GPIOcIntHandler
  - >> check_onboard_inputs
  - >> main

  GPIOPinTypeEthernetLED (Thumb, 28 bytes, Stack size 12 bytes, gpio.o(i.GPIOPinTypeEthernetLED), UNUSED)
  [Calls]

  - >> GPIOPadConfigSet
  - >> GPIODirModeSet
  [Called By]
  - >> intialize_tcpip

  GPIOPinTypeGPIOInput (Thumb, 28 bytes, Stack size 12 bytes, gpio.o(i.GPIOPinTypeGPIOInput))
  [Stack]

  - Max Depth = 12
  - Call Chain = GPIOPinTypeGPIOInput
  [Calls]
  - >> GPIOPadConfigSet
  - >> GPIODirModeSet
  [Called By]
  - >> wiegand_init
  - >> init_pheripheral
  - >> TCA6424_init

  GPIOPinTypeGPIOOutput (Thumb, 28 bytes, Stack size 12 bytes, gpio.o(i.GPIOPinTypeGPIOOutput))
  [Stack]

  - Max Depth = 12
  - Call Chain = GPIOPinTypeGPIOOutput
  [Calls]
  - >> GPIOPadConfigSet
  - >> GPIODirModeSet
  [Called By]
  - >> init_pheripheral
  - >> init_UART1
  - >> I2C0_init

  GPIOPinTypeI2C (Thumb, 28 bytes, Stack size 12 bytes, gpio.o(i.GPIOPinTypeI2C))
  [Stack]

  - Max Depth = 12
  - Call Chain = GPIOPinTypeI2C
  [Calls]
  - >> GPIOPadConfigSet
  - >> GPIODirModeSet
  [Called By]
  - >> I2C0_init

  GPIOPinTypeUART (Thumb, 28 bytes, Stack size 12 bytes, gpio.o(i.GPIOPinTypeUART))
  [Stack]

  - Max Depth = 12
  - Call Chain = GPIOPinTypeUART
  [Calls]
  - >> GPIOPadConfigSet
  - >> GPIODirModeSet
  [Called By]
  - >> init_UART2
  - >> init_UART1
  - >> init_UART0

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

  - >> UARTSend
  - >> turn_on_relay_1
  - >> turn_off_relay_2
  - >> turn_off_relay_1
  - >> turn_off_output_2
  - >> turn_off_output_1
  - >> long_beep
  - >> init_UART1
  - >> turn_on_output_1
  - >> turn_on_output_2
  - >> buzzer_off
  - >> buzzer_on
  - >> turn_on_relay_2

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

  - >> TCA6424_write
  - >> TCA6424_read
  - >> rtc_Write
  - >> rtc_Read

  I2CMasterControl (Thumb, 4 bytes, Stack size 0 bytes, i2c.o(i.I2CMasterControl))
  [Called By]

  - >> TCA6424_write
  - >> TCA6424_read
  - >> rtc_Write
  - >> rtc_Read

  I2CMasterDataGet (Thumb, 4 bytes, Stack size 0 bytes, i2c.o(i.I2CMasterDataGet))
  [Called By]

  - >> TCA6424_read
  - >> rtc_Read

  I2CMasterDataPut (Thumb, 4 bytes, Stack size 0 bytes, i2c.o(i.I2CMasterDataPut))
  [Called By]

  - >> TCA6424_write
  - >> TCA6424_read
  - >> rtc_Write
  - >> rtc_Read

  I2CMasterInitExpClk (Thumb, 42 bytes, Stack size 0 bytes, i2c.o(i.I2CMasterInitExpClk))
  [Called By]

  - >> I2C0_init

  I2CMasterSlaveAddrSet (Thumb, 8 bytes, Stack size 0 bytes, i2c.o(i.I2CMasterSlaveAddrSet))
  [Called By]

  - >> TCA6424_write
  - >> TCA6424_read
  - >> rtc_Write
  - >> rtc_Read

  IntEnable (Thumb, 104 bytes, Stack size 0 bytes, interrupt.o(i.IntEnable))
  [Called By]

  - >> wiegand_init
  - >> wtdg_init
  - >> init_UART2
  - >> init_UART1
  - >> init_UART0
  - >> configure_timer
  - >> stellarisif_hwinit
  - >> TCA6424_init

  IntMasterDisable (Thumb, 10 bytes, Stack size 8 bytes, interrupt.o(i.IntMasterDisable))
  [Stack]

  - Max Depth = 8
  - Call Chain = IntMasterDisable
  [Calls]
  - >> CPUcpsid
  [Called By]
  - >> system_init
  - >> sys_arch_protect

  IntMasterEnable (Thumb, 10 bytes, Stack size 8 bytes, interrupt.o(i.IntMasterEnable))
  [Stack]

  - Max Depth = 8
  - Call Chain = IntMasterEnable
  [Calls]
  - >> CPUcpsie
  [Called By]
  - >> system_init
  - >> sys_arch_unprotect

  IntPrioritySet (Thumb, 36 bytes, Stack size 0 bytes, interrupt.o(i.IntPrioritySet))
  [Called By]

  - >> main

  SysCtlClockGet (Thumb, 438 bytes, Stack size 8 bytes, sysctl.o(i.SysCtlClockGet))
  [Stack]

  - Max Depth = 8
  - Call Chain = SysCtlClockGet
  [Called By]
  - >> wtdg_init
  - >> init_UART2
  - >> init_UART1
  - >> init_UART0
  - >> configure_timer
  - >> I2C0_init
  - >> ConfigFlash
  - >> system_init
  - >> stellarisif_hwinit

  SysCtlClockSet (Thumb, 288 bytes, Stack size 24 bytes, sysctl.o(i.SysCtlClockSet))
  [Stack]

  - Max Depth = 24
  - Call Chain = SysCtlClockSet
  [Calls]
  - >> SysCtlDelay
  [Called By]
  - >> system_init

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

  - >> lwIPInit
  - >> wtdg_init
  - >> intialize_tcpip
  - >> init_ports
  - >> init_UART2
  - >> init_UART1
  - >> init_UART0
  - >> configure_timer
  - >> I2C0_init

  SysCtlPeripheralReset (Thumb, 50 bytes, Stack size 4 bytes, sysctl.o(i.SysCtlPeripheralReset), UNUSED)
  [Called By]

  - >> intialize_tcpip

  SysCtlReset (Thumb, 8 bytes, Stack size 0 bytes, sysctl.o(i.SysCtlReset))
  [Called By]

  - >> IntDefaultHandler
  - >> FaultISR
  - >> NmiSR
  - >> BusFaultHandler
  - >> restore_defaults

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

  - >> system_init

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

  - >> SoftwareUpdateBegin

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

  - >> system_init

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

  - >> system_init

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

  - >> configure_timer

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

  - >> configure_timer

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

  - >> Timer0IntHandler

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

  - >> configure_timer

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

  - >> configure_timer

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

  - >> UART2IntHandler
  - >> UART1IntHandler
  - >> UART0IntHandler

  UARTCharPutNonBlocking (Thumb, 18 bytes, Stack size 0 bytes, uart.o(i.UARTCharPutNonBlocking))
  [Called By]

  - >> UARTSend
  - >> smarti_change_colour_with_beep_command
  - >> process_serial_command_2
  - >> smarti_halt_command
  - >> smarti_poll_command

  UARTConfigSetExpClk (Thumb, 110 bytes, Stack size 0 bytes, uart.o(i.UARTConfigSetExpClk))
  [Calls]

  - >> UARTConfigSetExpClk
  [Called By]
  - >> UARTConfigSetExpClk
  - >> init_UART2
  - >> init_UART1
  - >> init_UART0

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

  - >> init_UART2
  - >> init_UART1
  - >> init_UART0

  UARTIntClear (Thumb, 4 bytes, Stack size 0 bytes, uart.o(i.UARTIntClear))
  [Called By]

  - >> UART2IntHandler
  - >> UART1IntHandler
  - >> UART0IntHandler

  UARTIntEnable (Thumb, 8 bytes, Stack size 0 bytes, uart.o(i.UARTIntEnable))
  [Called By]

  - >> init_UART2
  - >> init_UART1
  - >> init_UART0

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

  - >> UART2IntHandler
  - >> UART1IntHandler
  - >> UART0IntHandler

  WatchdogEnable (Thumb, 10 bytes, Stack size 0 bytes, watchdog.o(i.WatchdogEnable), UNUSED)
  [Called By]

  - >> wtdg_init

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

  - >> wtdg_init
  - >> WatchdogIntHandler

  WatchdogLockState (Thumb, 12 bytes, Stack size 0 bytes, watchdog.o(i.WatchdogLockState), UNUSED)
  [Called By]

  - >> wtdg_init

  WatchdogReloadSet (Thumb, 4 bytes, Stack size 0 bytes, watchdog.o(i.WatchdogReloadSet), UNUSED)
  [Called By]

  - >> wtdg_init

  WatchdogResetEnable (Thumb, 10 bytes, Stack size 0 bytes, watchdog.o(i.WatchdogResetEnable), UNUSED)
  [Called By]

  - >> wtdg_init

  WatchdogStallEnable (Thumb, 14 bytes, Stack size 0 bytes, watchdog.o(i.WatchdogStallEnable), UNUSED)
  [Called By]

  - >> wtdg_init

  WatchdogUnlock (Thumb, 8 bytes, Stack size 0 bytes, watchdog.o(i.WatchdogUnlock), UNUSED)
  [Called By]

  - >> wtdg_init

  __0sprintf$6 (Thumb, 34 bytes, Stack size 24 bytes, printf6.o(i.__0sprintf$6), UNUSED)
  [Calls]

  - >> _sputc
  - >> _printf_core

  __1sprintf$6 (Thumb, 0 bytes, Stack size 24 bytes, printf6.o(i.__0sprintf$6), UNUSED)

  __2sprintf (Thumb, 0 bytes, Stack size 24 bytes, printf6.o(i.__0sprintf$6))
  [Stack]

  - Max Depth = 24
  - Call Chain = __2sprintf
  [Called By]
  - >> SendAllEvent
  - >> update_empid
  - >> process_serial_command_2

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

  free (Thumb, 76 bytes, Stack size 8 bytes, malloc.o(i.free))
  [Stack]

  - Max Depth = 8
  - Call Chain = free
  [Called By]
  - >> add_holiday
  - >> add_access_group
  - >> add_time_zone
  - >> add_param_4b
  - >> add_param_1b

  malloc (Thumb, 92 bytes, Stack size 20 bytes, malloc.o(i.malloc))
  [Stack]

  - Max Depth = 20
  - Call Chain = malloc
  [Called By]
  - >> add_holiday
  - >> add_access_group
  - >> add_time_zone
  - >> add_param_4b
  - >> add_param_1b

  ### Local Symbols

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

  - iq_pec_main.o(.text)

  tcp_data_receive (Thumb, 6 bytes, Stack size 8 bytes, tcp_func.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = tcp_data_receive
  [Address Reference Count : 1]
  - tcp_func.o(.text)

  connection_accept (Thumb, 50 bytes, Stack size 16 bytes, tcp_func.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = connection_accept
  [Calls]
  - >> tcp_setprio
  - >> tcp_recv
  - >> tcp_poll
  - >> tcp_err
  [Address Reference Count : 1]
  - tcp_func.o(.text)

  close_conn (Thumb, 36 bytes, Stack size 8 bytes, tcp_func.o(.text), UNUSED)
  [Calls]

  - >> tcp_sent
  - >> tcp_recv
  - >> tcp_close
  - >> tcp_arg
  [Called By]
  - >> tcp_port_init

  LocatorReceive (Thumb, 160 bytes, Stack size 32 bytes, locator.o(.text))
  [Stack]

  - Max Depth = 288
  - Call Chain = LocatorReceive ⇒ udp_sendto ⇒ udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> udp_sendto
  - >> pbuf_free
  - >> pbuf_alloc
  [Address Reference Count : 1]
  - locator.o(.text)

  autoip_create_addr (Thumb, 76 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = autoip_create_addr ⇒ ntohl
  [Calls]
  - >> ntohl
  - >> htonl
  [Called By]
  - >> autoip_start

  plug_holes (Thumb, 124 bytes, Stack size 12 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 12
  - Call Chain = plug_holes
  [Called By]
  - >> mem_free

  dhcp_delete_request (Thumb, 50 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = dhcp_delete_request ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  [Called By]
  - >> dhcp_inform
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

  lwip_standard_chksum (Thumb, 70 bytes, Stack size 20 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 20
  - Call Chain = lwip_standard_chksum
  [Calls]
  - >> htons
  [Called By]
  - >> inet_chksum_pbuf
  - >> inet_chksum_pseudo
  - >> inet_chksum

  alloc_pool_pbuf (Thumb, 46 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 120
  - Call Chain = alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_segs_free
  - >> memp_malloc
  [Called By]
  - >> pbuf_alloc

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

  - >> dhcp_inform
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

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

  - >> dhcp_inform
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

  dhcp_option (Thumb, 32 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = dhcp_option
  [Called By]
  - >> dhcp_inform
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

  dhcp_option_short (Thumb, 54 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = dhcp_option_short
  [Called By]
  - >> dhcp_inform
  - >> dhcp_renew
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

  dhcp_create_request (Thumb, 292 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 176
  - Call Chain = dhcp_create_request ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_alloc
  - >> htonl
  [Called By]
  - >> dhcp_inform
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_discover

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

  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_decline
  - >> dhcp_bind
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_check
  - >> dhcp_handle_nak
  - >> dhcp_discover

  dhcp_discover (Thumb, 238 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 248
  - Call Chain = dhcp_discover ⇒ udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> udp_connect
  - >> pbuf_realloc
  - >> udp_sendto_if
  - >> autoip_start
  - >> dhcp_set_state
  - >> dhcp_create_request
  - >> dhcp_option_short
  - >> dhcp_option
  - >> dhcp_option_byte
  - >> dhcp_option_trailer
  - >> dhcp_delete_request
  [Called By]
  - >> dhcp_start
  - >> dhcp_timeout
  - >> dhcp_handle_nak

  tcp_output_segment (Thumb, 264 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 156
  - Call Chain = tcp_output_segment ⇒ ip_output ⇒ ip_output_if ⇒ inet_chksum ⇒ lwip_standard_chksum
  [Calls]
  - >> ip_output
  - >> ip_route
  - >> inet_chksum_pseudo
  - >> htons
  - >> ntohl
  - >> htonl
  [Called By]
  - >> tcp_output

  tcp_output_set_header (Thumb, 132 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 36
  - Call Chain = tcp_output_set_header ⇒ ntohs
  [Calls]
  - >> ntohs
  - >> htons
  - >> htonl
  [Called By]
  - >> tcp_output
  - >> tcp_zero_window_probe
  - >> tcp_keepalive

  dhcp_handle_nak (Thumb, 52 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 328
  - Call Chain = dhcp_handle_nak ⇒ netif_set_ipaddr ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> netif_set_ipaddr
  - >> netif_set_gw
  - >> netif_set_netmask
  - >> netif_set_down
  - >> dhcp_discover
  - >> dhcp_set_state
  [Called By]
  - >> dhcp_recv

  etharp_send_ip (Thumb, 68 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = etharp_send_ip
  [Calls]
  - >> htons
  [Called By]
  - >> etharp_output
  - >> etharp_query
  - >> update_arp_entry

  free_etharp_q (Thumb, 42 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 88
  - Call Chain = free_etharp_q ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> memp_free
  [Called By]
  - >> etharp_tmr
  - >> find_entry

  find_entry (Thumb, 532 bytes, Stack size 48 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 136
  - Call Chain = find_entry ⇒ free_etharp_q ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> free_etharp_q
  [Called By]
  - >> etharp_find_addr
  - >> etharp_query
  - >> update_arp_entry

  dhcp_check (Thumb, 56 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 304
  - Call Chain = dhcp_check ⇒ etharp_query ⇒ etharp_request ⇒ etharp_raw ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> etharp_query
  - >> dhcp_set_state
  [Called By]
  - >> dhcp_recv
  - >> dhcp_timeout

  dhcp_option_long (Thumb, 66 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 8
  - Call Chain = dhcp_option_long
  [Called By]
  - >> dhcp_decline
  - >> dhcp_select

  dhcp_select (Thumb, 268 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 256
  - Call Chain = dhcp_select ⇒ udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> udp_connect
  - >> pbuf_realloc
  - >> udp_sendto_if
  - >> ntohl
  - >> dhcp_option_long
  - >> dhcp_set_state
  - >> dhcp_create_request
  - >> dhcp_option_short
  - >> dhcp_option
  - >> dhcp_option_byte
  - >> dhcp_option_trailer
  - >> dhcp_delete_request
  [Called By]
  - >> dhcp_timeout
  - >> dhcp_handle_offer

  dhcp_get_option_long (Thumb, 32 bytes, Stack size 0 bytes, lwiplib.o(.text))
  [Called By]

  - >> dhcp_handle_ack
  - >> dhcp_handle_offer

  dhcp_get_option_ptr (Thumb, 162 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 16
  - Call Chain = dhcp_get_option_ptr
  [Called By]
  - >> dhcp_recv
  - >> dhcp_handle_ack
  - >> dhcp_handle_offer

  dhcp_handle_offer (Thumb, 58 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 280
  - Call Chain = dhcp_handle_offer ⇒ dhcp_select ⇒ udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> htonl
  - >> dhcp_get_option_ptr
  - >> dhcp_get_option_long
  - >> dhcp_select
  [Called By]
  - >> dhcp_recv

  dhcp_t1_timeout (Thumb, 32 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 264
  - Call Chain = dhcp_t1_timeout ⇒ dhcp_renew ⇒ udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> dhcp_renew
  [Called By]
  - >> dhcp_coarse_tmr

  dhcp_rebind (Thumb, 154 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 248
  - Call Chain = dhcp_rebind ⇒ udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> udp_connect
  - >> pbuf_realloc
  - >> udp_sendto_if
  - >> dhcp_set_state
  - >> dhcp_create_request
  - >> dhcp_option_short
  - >> dhcp_option
  - >> dhcp_option_byte
  - >> dhcp_option_trailer
  - >> dhcp_delete_request
  [Called By]
  - >> dhcp_timeout
  - >> dhcp_t2_timeout

  dhcp_t2_timeout (Thumb, 32 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 264
  - Call Chain = dhcp_t2_timeout ⇒ dhcp_rebind ⇒ udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> dhcp_rebind
  [Called By]
  - >> dhcp_coarse_tmr

  dhcp_bind (Thumb, 264 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 344
  - Call Chain = dhcp_bind ⇒ netif_set_ipaddr ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> autoip_stop
  - >> netif_set_up
  - >> netif_set_ipaddr
  - >> netif_set_gw
  - >> netif_set_netmask
  - >> ntohl
  - >> htonl
  - >> dhcp_set_state
  [Called By]
  - >> dhcp_recv
  - >> dhcp_timeout

  dhcp_timeout (Thumb, 136 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 360
  - Call Chain = dhcp_timeout ⇒ dhcp_bind ⇒ netif_set_ipaddr ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> dhcp_release
  - >> dhcp_renew
  - >> dhcp_bind
  - >> dhcp_rebind
  - >> dhcp_select
  - >> dhcp_check
  - >> dhcp_discover
  [Called By]
  - >> dhcp_fine_tmr

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

  - >> dhcp_recv
  - >> dhcp_handle_ack

  dhcp_handle_ack (Thumb, 260 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = dhcp_handle_ack ⇒ dhcp_get_option_ptr
  [Calls]
  - >> htonl
  - >> dhcp_get_option_byte
  - >> dhcp_get_option_ptr
  - >> dhcp_get_option_long
  [Called By]
  - >> dhcp_recv

  dhcp_free_reply (Thumb, 36 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = dhcp_free_reply ⇒ mem_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> mem_free
  [Called By]
  - >> dhcp_stop
  - >> dhcp_recv
  - >> dhcp_unfold_reply

  dhcp_unfold_reply (Thumb, 152 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 56
  - Call Chain = dhcp_unfold_reply ⇒ pbuf_copy_partial
  [Calls]
  - >> pbuf_copy_partial
  - >> mem_free
  - >> mem_malloc
  - >> dhcp_free_reply
  [Called By]
  - >> dhcp_recv

  dhcp_recv (Thumb, 258 bytes, Stack size 40 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 384
  - Call Chain = dhcp_recv ⇒ dhcp_bind ⇒ netif_set_ipaddr ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> ntohl
  - >> dhcp_unfold_reply
  - >> dhcp_free_reply
  - >> dhcp_handle_ack
  - >> dhcp_get_option_byte
  - >> dhcp_bind
  - >> dhcp_handle_offer
  - >> dhcp_get_option_ptr
  - >> dhcp_check
  - >> dhcp_handle_nak
  [Address Reference Count : 1]
  - lwiplib.o(.text)

  dhcp_decline (Thumb, 150 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 256
  - Call Chain = dhcp_decline ⇒ udp_sendto_if ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> udp_connect
  - >> pbuf_realloc
  - >> udp_sendto_if
  - >> ntohl
  - >> dhcp_option_long
  - >> dhcp_set_state
  - >> dhcp_create_request
  - >> dhcp_option
  - >> dhcp_option_byte
  - >> dhcp_option_trailer
  - >> dhcp_delete_request
  [Called By]
  - >> dhcp_arp_reply

  tcp_new_port (Thumb, 104 bytes, Stack size 0 bytes, lwiplib.o(.text), UNUSED)
  [Called By]

  - >> tcp_bind
  - >> tcp_connect

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

  - lwiplib.o(.text)

  tcp_recv_null (Thumb, 40 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 304
  - Call Chain = tcp_recv_null ⇒ tcp_close ⇒ tcp_send_ctrl ⇒ tcp_enqueue ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> tcp_close
  [Address Reference Count : 1]
  - lwiplib.o(.text)

  tcp_kill_prio (Thumb, 78 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 312
  - Call Chain = tcp_kill_prio ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_abandon
  [Called By]
  - >> tcp_alloc

  tcp_kill_timewait (Thumb, 52 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 304
  - Call Chain = tcp_kill_timewait ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_abandon
  [Called By]
  - >> tcp_alloc

  tcp_receive (Thumb, 2550 bytes, Stack size 56 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 296
  - Call Chain = tcp_receive ⇒ tcp_rexmit ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_output
  - >> tcp_rexmit
  - >> tcp_seg_copy
  - >> tcp_update_rcv_ann_wnd
  - >> pbuf_clen
  - >> pbuf_realloc
  - >> tcp_seg_free
  - >> pbuf_cat
  - >> pbuf_header
  - >> ntohs
  - >> htons
  - >> memp_free
  - >> ntohl
  [Called By]
  - >> tcp_process

  tcp_parseopt (Thumb, 174 bytes, Stack size 28 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = tcp_parseopt ⇒ ntohs
  [Calls]
  - >> ntohs
  [Called By]
  - >> tcp_listen_input
  - >> tcp_process

  tcp_process (Thumb, 1356 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 328
  - Call Chain = tcp_process ⇒ tcp_receive ⇒ tcp_rexmit ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_output
  - >> tcp_rexmit
  - >> tcp_eff_send_mss
  - >> tcp_abandon
  - >> tcp_pcb_purge
  - >> tcp_rst
  - >> tcp_seg_free
  - >> ntohl
  - >> tcp_parseopt
  - >> tcp_receive
  [Called By]
  - >> tcp_input

  tcp_listen_input (Thumb, 334 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 352
  - Call Chain = tcp_listen_input ⇒ tcp_alloc ⇒ tcp_kill_prio ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_output
  - >> tcp_alloc
  - >> tcp_eff_send_mss
  - >> tcp_enqueue
  - >> tcp_abandon
  - >> tcp_rst
  - >> tcp_parseopt
  [Called By]
  - >> tcp_input

  tcp_timewait_input (Thumb, 70 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 224
  - Call Chain = tcp_timewait_input ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> tcp_output
  [Called By]
  - >> tcp_input

  icmp_send_response (Thumb, 124 bytes, Stack size 40 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 200
  - Call Chain = icmp_send_response ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> pbuf_alloc
  - >> ip_output
  - >> inet_chksum
  - >> __aeabi_memcpy
  [Called By]
  - >> icmp_dest_unreach

  autoip_arp_announce (Thumb, 36 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 232
  - Call Chain = autoip_arp_announce ⇒ etharp_raw ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> etharp_raw
  [Called By]
  - >> autoip_tmr
  - >> autoip_handle_arp_conflict

  autoip_handle_arp_conflict (Thumb, 46 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 248
  - Call Chain = autoip_handle_arp_conflict ⇒ autoip_arp_announce ⇒ etharp_raw ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> autoip_start
  - >> autoip_arp_announce
  [Called By]
  - >> autoip_arp_reply

  autoip_bind (Thumb, 56 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 336
  - Call Chain = autoip_bind ⇒ netif_set_ipaddr ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> netif_set_up
  - >> netif_set_ipaddr
  - >> netif_set_gw
  - >> netif_set_netmask
  - >> htonl
  [Called By]
  - >> autoip_tmr

  update_arp_entry (Thumb, 252 bytes, Stack size 40 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 176
  - Call Chain = update_arp_entry ⇒ find_entry ⇒ free_etharp_q ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> ip_addr_isbroadcast
  - >> memp_free
  - >> ntohl
  - >> find_entry
  - >> etharp_send_ip
  [Called By]
  - >> etharp_arp_input
  - >> etharp_ip_input

  dequeue_packet (Thumb, 62 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 32
  - Call Chain = dequeue_packet ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> sys_arch_protect
  - >> sys_arch_unprotect
  [Called By]
  - >> stellarisif_interrupt

  enqueue_packet (Thumb, 88 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 40
  - Call Chain = enqueue_packet ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> sys_arch_protect
  - >> sys_arch_unprotect
  [Called By]
  - >> stellarisif_output

  stellarisif_hwinit (Thumb, 122 bytes, Stack size 16 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 24
  - Call Chain = stellarisif_hwinit ⇒ SysCtlClockGet
  [Calls]
  - >> IntEnable
  - >> SysCtlClockGet
  - >> EthernetMACAddrGet
  - >> EthernetIntStatus
  - >> EthernetIntEnable
  - >> EthernetIntDisable
  - >> EthernetIntClear
  - >> EthernetInitExpClk
  - >> EthernetEnable
  - >> EthernetConfigSet
  [Called By]
  - >> stellarisif_init

  stellarisif_transmit (Thumb, 182 bytes, Stack size 40 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 112
  - Call Chain = stellarisif_transmit ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  [Called By]
  - >> stellarisif_interrupt
  - >> stellarisif_output

  stellarisif_output (Thumb, 98 bytes, Stack size 24 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 136
  - Call Chain = stellarisif_output ⇒ stellarisif_transmit ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  - >> pbuf_ref
  - >> sys_arch_protect
  - >> sys_arch_unprotect
  - >> stellarisif_transmit
  - >> enqueue_packet
  [Address Reference Count : 1]
  - lwiplib.o(.text)

  stellarisif_receive (Thumb, 160 bytes, Stack size 32 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 192
  - Call Chain = stellarisif_receive ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_alloc
  [Called By]
  - >> stellarisif_interrupt

  lwIPServiceTimers (Thumb, 230 bytes, Stack size 8 bytes, lwiplib.o(.text))
  [Stack]

  - Max Depth = 376
  - Call Chain = lwIPServiceTimers ⇒ dhcp_fine_tmr ⇒ dhcp_timeout ⇒ dhcp_bind ⇒ netif_set_ipaddr ⇒ tcp_abandon ⇒ tcp_pcb_remove ⇒ tcp_output ⇒ pbuf_alloc ⇒ alloc_pool_pbuf ⇒ tcp_segs_free ⇒ tcp_seg_free ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> lwIPHostTimerHandler
  - >> EthernetPHYRead
  - >> etharp_tmr
  - >> autoip_tmr
  - >> tcp_tmr
  - >> dhcp_fine_tmr
  - >> dhcp_coarse_tmr
  [Called By]
  - >> lwIPEthernetIntHandler

  lwIPPrivateInit (Thumb, 294 bytes, Stack size 32 bytes, lwiplib.o(.text), UNUSED)
  [Calls]

  - >> netif_set_default
  - >> netif_add
  - >> lwip_init
  - >> dhcp_start
  - >> netif_set_up
  - >> autoip_start
  [Called By]
  - >> lwIPInit

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

  - >> netif_set_addr
  - >> dhcp_start
  - >> dhcp_stop
  - >> autoip_stop
  - >> autoip_start
  [Called By]
  - >> lwIPNetworkConfigChange

  SoftwareUpdateUDPReceive (Thumb, 114 bytes, Stack size 40 bytes, swupdate.o(.text))
  [Stack]

  - Max Depth = 112
  - Call Chain = SoftwareUpdateUDPReceive ⇒ pbuf_free ⇒ memp_free ⇒ sys_arch_protect ⇒ IntMasterDisable
  [Calls]
  - >> pbuf_free
  [Address Reference Count : 1]
  - swupdate.o(.text)

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

  - >> _printf_pre_padding
  - >> _printf_post_padding
  - >> __aeabi_uidivmod
  [Called By]
  - >> __0sprintf$6

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

  - >> _printf_core

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

  - >> _printf_core

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

  - >> __0sprintf$6
  [Address Reference Count : 1]
  - printf6.o(i.__0sprintf$6)

  ### Undefined Global Symbols