#<CALLGRAPH># ARM Linker, RVCT4.0 [Build 728]: Last Updated: Tue Apr 13 11:50:28 2010
_sys_exit ⇒ _sys_exit
Function Pointers
Global Symbols
__main (Thumb, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
[Calls]
- >> __rt_entry
- >> __scatterload
__scatterload (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
[Called By]
__scatterload_rt2 (Thumb, 44 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
[Calls]
__scatterload_rt2_thumb_only (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
__scatterload_null (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
__scatterload_copy (Thumb, 26 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
[Calls]
[Called By]
__scatterload_zeroinit (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
_printf_n (Thumb, 0 bytes, Stack size unknown bytes, _printf_n.o(.ARM.Collect$$_printf_percent$$00000001))
[Calls]
_printf_percent (Thumb, 0 bytes, Stack size unknown bytes, _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000))
[Called By]
_printf_p (Thumb, 0 bytes, Stack size unknown bytes, _printf_p.o(.ARM.Collect$$_printf_percent$$00000002))
[Stack]
- Max Depth = 64 + Unknown Stack Size
- Call Chain = _printf_p ⇒ _printf_hex_ptr ⇒ _printf_int_common ⇒ _printf_post_padding
[Calls]
_printf_d (Thumb, 0 bytes, Stack size unknown bytes, _printf_d.o(.ARM.Collect$$_printf_percent$$00000009))
[Stack]
- Max Depth = 72 + Unknown Stack Size
- Call Chain = _printf_d ⇒ _printf_int_dec ⇒ _printf_int_common ⇒ _printf_post_padding
[Calls]
_printf_s (Thumb, 0 bytes, Stack size unknown bytes, _printf_s.o(.ARM.Collect$$_printf_percent$$00000014))
[Stack]
- Max Depth = 40 + Unknown Stack Size
- Call Chain = _printf_s ⇒ _printf_string ⇒ _printf_cs_common ⇒ _printf_str ⇒ _printf_post_padding
[Calls]
_printf_percent_end (Thumb, 0 bytes, Stack size unknown bytes, _printf_percent_end.o(.ARM.Collect$$_printf_percent$$00000017))
__rt_lib_init (Thumb, 0 bytes, Stack size unknown bytes, libinit.o(.ARM.Collect$$libinit$$00000000))
[Stack]
- Max Depth = 8 + Unknown Stack Size
- Call Chain = __rt_lib_init ⇒ _fp_init
[Calls]
[Called By]
__rt_lib_init_heap_2 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000001))
[Stack]
- Max Depth = 56 + Unknown Stack Size
- Call Chain = __rt_lib_init_heap_2 ⇒ _init_alloc ⇒ __rt_SIGRTMEM ⇒ __rt_SIGRTMEM_inner ⇒ __default_signal_display
[Calls]
__rt_lib_init_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000006))
__rt_lib_init_lc_common (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000B))
[Calls]
__rt_lib_init_rand_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000A))
__rt_lib_init_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000008))
__rt_lib_init_lc_collate_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000D))
__rt_lib_init_lc_ctype_2 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000E))
[Stack]
- Max Depth = 8 + Unknown Stack Size
- Call Chain = __rt_lib_init_lc_ctype_2 ⇒ _get_lc_ctype
[Calls]
__rt_lib_init_atexit_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017))
__rt_lib_init_clock_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D))
__rt_lib_init_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B))
__rt_lib_init_getenv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F))
__rt_lib_init_lc_ctype_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000F))
__rt_lib_init_lc_monetary_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000011))
__rt_lib_init_lc_numeric_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013))
__rt_lib_init_lc_time_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015))
__rt_lib_init_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019))
__rt_lib_init_stdio_2 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000020))
[Stack]
- Max Depth = 440 + Unknown Stack Size
- Call Chain = __rt_lib_init_stdio_2 ⇒ _initio ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
__rt_lib_init_alloca_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002A))
__rt_lib_init_argv_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000028))
__rt_lib_init_cpp_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E))
__rt_lib_init_exceptions_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002C))
__rt_lib_init_return (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002F))
__rt_lib_init_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021))
__rt_lib_shutdown (Thumb, 0 bytes, Stack size unknown bytes, libshutdown.o(.ARM.Collect$$libshutdown$$00000000))
[Called By]
__rt_lib_shutdown_stdio_2 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000002))
[Stack]
- Max Depth = 320 + Unknown Stack Size
- Call Chain = __rt_lib_shutdown_stdio_2 ⇒ _terminateio ⇒ _fclose_internal ⇒ _fflush ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
__rt_lib_shutdown_fp_trap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000006))
__rt_lib_shutdown_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E))
__rt_lib_shutdown_return (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F))
__rt_lib_shutdown_signal_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000009))
__rt_lib_shutdown_stdio_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000003))
__rt_lib_shutdown_user_alloc_1 (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000B))
__rt_entry (Thumb, 0 bytes, Stack size unknown bytes, rtentry.o(.ARM.Collect$$rtentry$$00000000))
[Called By]
- >> __main
- >> __scatterload_rt2
__rt_entry_presh_1 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$00000002))
__rt_entry_sh (Thumb, 0 bytes, Stack size unknown bytes, rtentry4.o(.ARM.Collect$$rtentry$$00000004))
[Stack]
- Max Depth = 8 + Unknown Stack Size
- Call Chain = __rt_entry_sh ⇒ __user_setup_stackheap
[Calls]- >> __user_setup_stackheap
__rt_entry_li (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000A))
[Stack]
- Max Depth = 8 + Unknown Stack Size
- Call Chain = __rt_entry_li ⇒ __rt_lib_init ⇒ _fp_init
[Calls]
__rt_entry_postsh_1 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$00000009))
__rt_entry_main (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000D))
[Stack]
- Max Depth = 560 + Unknown Stack Size
- Call Chain = __rt_entry_main ⇒ main ⇒ main_TcpNet ⇒ run_system ⇒ run_http_server ⇒ http_kill_session ⇒ cgi_process_data ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
__rt_entry_postli_1 (Thumb, 0 bytes, Stack size unknown bytes, rtentry2.o(.ARM.Collect$$rtentry$$0000000C))
__rt_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit.o(.ARM.Collect$$rtexit$$00000000))
[Called By]
__rt_exit_ls (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000003))
[Calls]
__rt_exit_prels_1 (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))
__rt_exit_exit (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000004))
[Calls]
wait (Thumb, 4 bytes, Stack size 0 bytes, glcd_lpc1700.o(.emb_text))
[Called By]
- >> wr_dat_only
- >> wr_dat
- >> wr_cmd
_maybe_terminate_alloc (Thumb, 0 bytes, Stack size 0 bytes, maybetermalloc1.o(.emb_text), UNUSED)
sys_error (Thumb, 2 bytes, Stack size 0 bytes, net_config.o(.text))
[Calls]
[Called By]- >> udp_get_socket
- >> tcp_get_socket
- >> process_tcp
- >> sys_error
- >> free_mem
- >> alloc_mem
init_system (Thumb, 30 bytes, Stack size 8 bytes, net_config.o(.text))
[Stack]
- Max Depth = 80
- Call Chain = init_system ⇒ init_eth_link ⇒ init_ethernet ⇒ write_PHY ⇒ output_MDIO
[Calls]- >> init_udp
- >> init_tcp
- >> init_nbns
- >> init_http
- >> init_eth_link
- >> init_dhcp
[Called By]
run_system (Thumb, 22 bytes, Stack size 8 bytes, net_config.o(.text))
[Stack]
- Max Depth = 544 + Unknown Stack Size
- Call Chain = run_system ⇒ run_http_server ⇒ http_kill_session ⇒ cgi_process_data ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> tcp_poll_sockets
- >> run_http_server
- >> run_eth_link
- >> run_dhcp_client
[Called By]
process_hl_udp (Thumb, 4 bytes, Stack size 0 bytes, net_config.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = process_hl_udp ⇒ process_udp
[Calls]
[Called By]
process_hl_tcp (Thumb, 4 bytes, Stack size 0 bytes, net_config.o(.text))
[Stack]
- Max Depth = 216
- Call Chain = process_hl_tcp ⇒ process_tcp ⇒ tcp_send_reset ⇒ tcp_send_ctrl ⇒ tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]
[Called By]
dispatch_frame (Thumb, 10 bytes, Stack size 0 bytes, net_config.o(.text))
[Stack]
- Max Depth = 88
- Call Chain = dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]
[Called By]
igmp_is_member (Thumb, 4 bytes, Stack size 0 bytes, net_config.o(.text))
[Called By]
http_fopen (Thumb, 6 bytes, Stack size 0 bytes, http_uif.o(.text))
[Stack]
- Max Depth = 456
- Call Chain = http_fopen ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
http_fclose (Thumb, 4 bytes, Stack size 0 bytes, http_uif.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = http_fclose ⇒ fclose
[Calls]
[Called By]- >> run_http_server
- >> http_kill_session
http_fread (Thumb, 18 bytes, Stack size 8 bytes, http_uif.o(.text))
[Stack]
- Max Depth = 264
- Call Chain = http_fread ⇒ fread ⇒ _readbuf ⇒ _sys_read ⇒ __read ⇒ fat_read ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
http_fgets (Thumb, 22 bytes, Stack size 8 bytes, http_uif.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = http_fgets ⇒ fgets ⇒ fgetc ⇒ __filbuf_byte
[Calls]
[Called By]
http_finfo (Thumb, 52 bytes, Stack size 16 bytes, http_uif.o(.text))
[Stack]
- Max Depth = 408
- Call Chain = http_finfo ⇒ ffind ⇒ fat_ffind ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> http_date
- >> free_mem
- >> ffind
- >> alloc_mem
[Called By]
Reset_Handler (Thumb, 4 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
NMI_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]
HardFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]
MemManage_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]
BusFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]
UsageFault_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]
SVC_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]
DebugMon_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]
PendSV_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]
SysTick_Handler (Thumb, 2 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]
ADC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Calls]
[Called By]
[Address Reference Count : 1]
BOD_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
CANActivity_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
CAN_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
DMA_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
EINT0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
EINT1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
EINT2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
EINT3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
I2C0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
I2C1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
I2C2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
I2S_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
MCPWM_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
PLL0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
PLL1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
PWM1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
QEI_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
RIT_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
RTC_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
SPI_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
SSP0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
SSP1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
TIMER0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
TIMER1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
TIMER2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
TIMER3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
UART0_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
UART1_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
UART2_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
UART3_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
USBActivity_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
USB_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
WDT_IRQHandler (Thumb, 0 bytes, Stack size 0 bytes, startup_lpc17xx.o(.text))
[Address Reference Count : 1]
__user_initial_stackheap (Thumb, 0 bytes, Stack size unknown bytes, startup_lpc17xx.o(.text))
[Called By]
- >> __user_setup_stackheap
__semihosting$guard (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
__use_no_semihosting_swi (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
toupper (Thumb, 30 bytes, Stack size 8 bytes, toupper.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = toupper ⇒ __rt_ctype_table
[Calls]
[Called By]
__2sprintf (Thumb, 38 bytes, Stack size 32 bytes, __2sprintf.o(.text))
[Stack]
- Max Depth = 144 + Unknown Stack Size
- Call Chain = __2sprintf ⇒ _printf_char_common ⇒ __printf
[Calls]- >> _sputc
- >> _printf_char_common
[Called By]- >> cgi_func
- >> dot_format
- >> dhcp_check
- >> utc_to_http
__aeabi_memset (Thumb, 16 bytes, Stack size 0 bytes, aeabi_memset.o(.text))
[Calls]
[Called By]
__use_no_heap (Thumb, 2 bytes, Stack size 0 bytes, hguard.o(.text), UNUSED)
__heap$guard (Thumb, 2 bytes, Stack size 0 bytes, hguard.o(.text), UNUSED)
sendchar (Thumb, 2 bytes, Stack size 0 bytes, http_upload.o(.text))
[Called By]
- >> _sys_write
- >> _ttywrch
getkey (Thumb, 4 bytes, Stack size 0 bytes, http_upload.o(.text))
[Called By]
LED_out (Thumb, 46 bytes, Stack size 24 bytes, http_upload.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = LED_out
[Called By]
main (Thumb, 46 bytes, Stack size 16 bytes, http_upload.o(.text))
[Stack]
- Max Depth = 560 + Unknown Stack Size
- Call Chain = main ⇒ main_TcpNet ⇒ run_system ⇒ run_http_server ⇒ http_kill_session ⇒ cgi_process_data ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> timer_tick
- >> main_TcpNet
- >> blink_led
- >> init
- >> dhcp_check
[Called By]
cgi_process_var (Thumb, 2 bytes, Stack size 0 bytes, http_cgi.o(.text))
[Called By]
cgi_process_data (Thumb, 258 bytes, Stack size 24 bytes, http_cgi.o(.text))
[Stack]
- Max Depth = 480 + Unknown Stack Size
- Call Chain = cgi_process_data ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> str_scomp
- >> str_copy
- >> http_get_var
- >> free_mem
- >> fformat
- >> alloc_mem
- >> finit
- >> fwrite
- >> fclose
- >> fopen
- >> toupper
[Called By]- >> http_proc_post
- >> http_proc_multipart
- >> http_kill_session
cgi_func (Thumb, 142 bytes, Stack size 72 bytes, http_cgi.o(.text))
[Stack]
- Max Depth = 464 + Unknown Stack Size
- Call Chain = cgi_func ⇒ ffind ⇒ fat_ffind ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> ffind
- >> dot_format
- >> finit
- >> __2sprintf
[Called By]
_ttywrch (Thumb, 4 bytes, Stack size 0 bytes, retarget.o(.text))
[Calls]
[Called By]- >> __default_signal_display
_sys_open (Thumb, 64 bytes, Stack size 16 bytes, retarget.o(.text))
[Stack]
- Max Depth = 408
- Call Chain = _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
_sys_close (Thumb, 14 bytes, Stack size 0 bytes, retarget.o(.text))
[Stack]
- Max Depth = 176
- Call Chain = _sys_close ⇒ __fclose ⇒ fat_close_write ⇒ write_fat_link ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
_sys_write (Thumb, 56 bytes, Stack size 16 bytes, retarget.o(.text))
[Stack]
- Max Depth = 224
- Call Chain = _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
_sys_read (Thumb, 56 bytes, Stack size 16 bytes, retarget.o(.text))
[Stack]
- Max Depth = 184
- Call Chain = _sys_read ⇒ __read ⇒ fat_read ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
_sys_istty (Thumb, 14 bytes, Stack size 0 bytes, retarget.o(.text))
[Called By]
_sys_seek (Thumb, 16 bytes, Stack size 0 bytes, retarget.o(.text))
[Stack]
- Max Depth = 176
- Call Chain = _sys_seek ⇒ __setfpos ⇒ fat_set_fpos ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
_sys_ensure (Thumb, 16 bytes, Stack size 0 bytes, retarget.o(.text), UNUSED)
[Calls]
[Called By]
_sys_flen (Thumb, 30 bytes, Stack size 0 bytes, retarget.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = _sys_flen ⇒ __getfsize ⇒ fs_rd_sig
[Calls]
[Called By]
_sys_tmpnam (Thumb, 4 bytes, Stack size 0 bytes, retarget.o(.text), UNUSED)
_sys_command_string (Thumb, 2 bytes, Stack size 0 bytes, retarget.o(.text), UNUSED)
_sys_exit (Thumb, 2 bytes, Stack size 0 bytes, retarget.o(.text))
[Calls]
[Called By]- >> _sys_exit
- >> __rt_exit_exit
- >> __sig_exit
init_ethernet (Thumb, 498 bytes, Stack size 40 bytes, emac_lpc17xx.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = init_ethernet ⇒ write_PHY ⇒ output_MDIO
[Calls]
[Called By]
int_enable_eth (Thumb, 10 bytes, Stack size 0 bytes, emac_lpc17xx.o(.text))
[Called By]
- >> resize_mem
- >> init_eth_link
- >> free_mem
- >> alloc_mem
int_disable_eth (Thumb, 10 bytes, Stack size 0 bytes, emac_lpc17xx.o(.text))
[Called By]
- >> resize_mem
- >> init_eth_link
- >> free_mem
- >> alloc_mem
- >> init_TcpNet
send_frame (Thumb, 68 bytes, Stack size 20 bytes, emac_lpc17xx.o(.text))
[Stack]
- Max Depth = 20
- Call Chain = send_frame
[Called By]- >> eth_send_frame
- >> arp_send_req
- >> arp_send_reply
ENET_IRQHandler (Thumb, 188 bytes, Stack size 24 bytes, emac_lpc17xx.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = ENET_IRQHandler ⇒ put_in_queue ⇒ free_mem
[Calls]- >> put_in_queue
- >> alloc_mem
[Address Reference Count : 1]
spi_init (Thumb, 124 bytes, Stack size 0 bytes, spi_lpc17xx.o(.text))
[Called By]
spi_hi_speed (Thumb, 16 bytes, Stack size 0 bytes, spi_lpc17xx.o(.text))
[Called By]
spi_ss (Thumb, 22 bytes, Stack size 0 bytes, spi_lpc17xx.o(.text))
[Called By]
- >> mmc_write_sect
- >> mmc_read_sect
- >> mmc_read_config
- >> mmc_init
spi_send (Thumb, 16 bytes, Stack size 0 bytes, spi_lpc17xx.o(.text))
[Called By]
- >> mmc_write_block
- >> mmc_read_bytes
- >> mmc_read_block
- >> mmc_command
- >> mmc_write_sect
- >> mmc_read_sect
- >> mmc_init
SystemInit (Thumb, 288 bytes, Stack size 12 bytes, system_lpc17xx.o(.text))
[Stack]
- Max Depth = 12
- Call Chain = SystemInit
[Called By]
wait_delay (Thumb, 6 bytes, Stack size 0 bytes, glcd_lpc1700.o(.text), UNUSED)
[Calls]
[Called By]
GLCD_Init (Thumb, 880 bytes, Stack size 32 bytes, glcd_lpc1700.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = GLCD_Init ⇒ rd_reg ⇒ wr_cmd
[Calls]
[Called By]
GLCD_WindowMax (Thumb, 40 bytes, Stack size 8 bytes, glcd_lpc1700.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = GLCD_WindowMax ⇒ wr_reg ⇒ wr_dat
[Calls]
[Called By]- >> GLCD_DisplayString
- >> GLCD_ClearLn
- >> GLCD_Clear
GLCD_PutPixel (Thumb, 62 bytes, Stack size 16 bytes, glcd_lpc1700.o(.text), UNUSED)
[Calls]
GLCD_SetTextColor (Thumb, 6 bytes, Stack size 0 bytes, glcd_lpc1700.o(.text))
[Called By]
GLCD_SetBackColor (Thumb, 6 bytes, Stack size 0 bytes, glcd_lpc1700.o(.text), UNUSED)
GLCD_Clear (Thumb, 68 bytes, Stack size 24 bytes, glcd_lpc1700.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = GLCD_Clear ⇒ GLCD_WindowMax ⇒ wr_reg ⇒ wr_dat
[Calls]- >> GLCD_WindowMax
- >> wr_reg
- >> wr_dat_only
- >> wr_cmd
[Called By]
GLCD_DrawChar (Thumb, 150 bytes, Stack size 40 bytes, glcd_lpc1700.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = GLCD_DrawChar ⇒ wr_reg ⇒ wr_dat
[Calls]- >> wr_reg
- >> wr_dat_only
- >> wr_cmd
[Called By]
GLCD_DisplayChar (Thumb, 26 bytes, Stack size 0 bytes, glcd_lpc1700.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = GLCD_DisplayChar ⇒ GLCD_DrawChar ⇒ wr_reg ⇒ wr_dat
[Calls]
[Called By]
GLCD_DisplayString (Thumb, 34 bytes, Stack size 16 bytes, glcd_lpc1700.o(.text))
[Stack]
- Max Depth = 88
- Call Chain = GLCD_DisplayString ⇒ GLCD_DisplayChar ⇒ GLCD_DrawChar ⇒ wr_reg ⇒ wr_dat
[Calls]- >> GLCD_DisplayChar
- >> GLCD_WindowMax
[Called By]- >> GLCD_ClearLn
- >> init
- >> upd_display
GLCD_ClearLn (Thumb, 20 bytes, Stack size 8 bytes, glcd_lpc1700.o(.text))
[Stack]
- Max Depth = 96
- Call Chain = GLCD_ClearLn ⇒ GLCD_DisplayString ⇒ GLCD_DisplayChar ⇒ GLCD_DrawChar ⇒ wr_reg ⇒ wr_dat
[Calls]- >> GLCD_WindowMax
- >> GLCD_DisplayString
[Called By]
GLCD_Bargraph (Thumb, 152 bytes, Stack size 40 bytes, glcd_lpc1700.o(.text), UNUSED)
[Calls]
- >> wr_reg
- >> wr_dat_only
- >> wr_cmd
GLCD_Bitmap (Thumb, 156 bytes, Stack size 32 bytes, glcd_lpc1700.o(.text), UNUSED)
[Calls]
- >> wr_reg
- >> wr_dat_only
- >> wr_cmd
GLCD_Bmp (Thumb, 152 bytes, Stack size 32 bytes, glcd_lpc1700.o(.text), UNUSED)
[Calls]
- >> wr_reg
- >> wr_dat_only
- >> wr_cmd
_printf_pre_padding (Thumb, 44 bytes, Stack size 16 bytes, _printf_pad.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = _printf_pre_padding
[Called By]- >> _printf_int_common
- >> _printf_str
_printf_post_padding (Thumb, 36 bytes, Stack size 16 bytes, _printf_pad.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = _printf_post_padding
[Called By]- >> _printf_int_common
- >> _printf_str
_printf_str (Thumb, 82 bytes, Stack size 16 bytes, _printf_str.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = _printf_str ⇒ _printf_post_padding
[Calls]- >> _printf_post_padding
- >> _printf_pre_padding
[Called By]
_printf_int_dec (Thumb, 98 bytes, Stack size 24 bytes, _printf_dec.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = _printf_int_dec ⇒ _printf_int_common ⇒ _printf_post_padding
[Calls]- >> __rt_udiv10
- >> _printf_int_common
[Called By]
_printf_charcount (Thumb, 40 bytes, Stack size 0 bytes, _printf_charcount.o(.text))
[Called By]
_printf_hex_ptr (Thumb, 82 bytes, Stack size 16 bytes, _printf_hex_ptr.o(.text))
[Stack]
- Max Depth = 64
- Call Chain = _printf_hex_ptr ⇒ _printf_int_common ⇒ _printf_post_padding
[Calls]
[Called By]
_printf_longlong_hex (Thumb, 0 bytes, Stack size 16 bytes, _printf_hex_ptr.o(.text), UNUSED)
__printf (Thumb, 412 bytes, Stack size 40 bytes, __printf_flags_ss_wp.o(.text))
[Stack]
- Max Depth = 40 + Unknown Stack Size
- Call Chain = __printf
[Calls]
[Called By]
atoi (Thumb, 26 bytes, Stack size 16 bytes, atoi.o(.text))
[Stack]
- Max Depth = 88
- Call Chain = atoi ⇒ strtol ⇒ _strtoul
[Calls]- >> strtol
- >> __aeabi_errno_addr
[Called By]- >> http_to_utc
- >> chk_post_rq
fgets (Thumb, 72 bytes, Stack size 24 bytes, fgets.o(.text))
[Stack]
- Max Depth = 56
- Call Chain = fgets ⇒ fgetc ⇒ __filbuf_byte
[Calls]
[Called By]
freopen (Thumb, 154 bytes, Stack size 24 bytes, fopen.o(.text))
[Stack]
- Max Depth = 432
- Call Chain = freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> _sys_open
- >> _fseek
- >> _fclose_internal
[Called By]
fopen (Thumb, 68 bytes, Stack size 24 bytes, fopen.o(.text))
[Stack]
- Max Depth = 456
- Call Chain = fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> malloc
- >> __aeabi_memclr4
- >> freopen
[Called By]- >> http_fopen
- >> cgi_process_data
_fclose_internal (Thumb, 76 bytes, Stack size 32 bytes, fclose.o(.text))
[Stack]
- Max Depth = 304
- Call Chain = _fclose_internal ⇒ _fflush ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> _sys_close
- >> _fflush
- >> free
- >> __aeabi_memclr4
[Called By]- >> _terminateio
- >> freopen
fclose (Thumb, 0 bytes, Stack size 32 bytes, fclose.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = fclose
[Called By]- >> http_fclose
- >> cgi_process_data
strlen (Thumb, 62 bytes, Stack size 8 bytes, strlen.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = strlen
[Called By]- >> ffind
- >> write_entries
- >> search_for_name
- >> alloc_name
- >> read_script_line
- >> http_proc_header
__aeabi_memcpy (Thumb, 0 bytes, Stack size 0 bytes, rt_memcpy_v6.o(.text))
[Called By]
- >> fat_write
- >> fat_read
- >> fs_WriteData
- >> fs_ReadData
- >> write_cache
- >> write_br
- >> read_sector
- >> read_cache
- >> fwrite
- >> fread
__rt_memcpy (Thumb, 140 bytes, Stack size 0 bytes, rt_memcpy_v6.o(.text), UNUSED)
[Calls]
_memcpy_lastbytes (Thumb, 0 bytes, Stack size unknown bytes, rt_memcpy_v6.o(.text), UNUSED)
__aeabi_memclr (Thumb, 0 bytes, Stack size 0 bytes, rt_memclr.o(.text))
[Called By]
- >> fat_format
- >> write_mbr
- >> write_dot_entries
- >> write_br
- >> clear_clus
__rt_memclr (Thumb, 68 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
[Calls]
_memset (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr.o(.text))
[Called By]
__aeabi_memcpy4 (Thumb, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = __aeabi_memcpy4
[Called By]- >> fat_close_write
- >> write_dot_entries
- >> read_last_entry
- >> __rt_memcpy
__aeabi_memcpy8 (Thumb, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)
__rt_memcpy_w (Thumb, 100 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)
_memcpy_lastbytes_aligned (Thumb, 0 bytes, Stack size unknown bytes, rt_memcpy_w.o(.text), UNUSED)
__aeabi_memclr4 (Thumb, 0 bytes, Stack size 4 bytes, rt_memclr_w.o(.text))
[Stack]
- Max Depth = 4
- Call Chain = __aeabi_memclr4
[Called By]- >> fs_find_iob
- >> write_label
- >> init_dev
- >> _initio
- >> _fclose_internal
- >> fopen
__aeabi_memclr8 (Thumb, 0 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED)
__rt_memclr_w (Thumb, 78 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED)
_memset_w (Thumb, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED)
[Called By]
strcmp (Thumb, 128 bytes, Stack size 0 bytes, strcmpv7m.o(.text))
[Called By]
- >> _sys_open
- >> ffind
- >> chk_dir_empty
- >> http_proc_header
- >> _get_lc_ctype
__use_two_region_memory (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__rt_heap_escrow (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__rt_heap_expand (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
__rt_ctype_table (Thumb, 16 bytes, Stack size 8 bytes, rt_ctype_table.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = __rt_ctype_table
[Calls]
[Called By]
__aeabi_errno_addr (Thumb, 12 bytes, Stack size 0 bytes, rt_errno_addr_intlibspace.o(.text))
[Called By]
- >> _ftell_internal
- >> _strtoul
- >> strtol
- >> atoi
__errno$intlibspace (Thumb, 0 bytes, Stack size 0 bytes, rt_errno_addr_intlibspace.o(.text), UNUSED)
__rt_errno_addr$intlibspace (Thumb, 0 bytes, Stack size 0 bytes, rt_errno_addr_intlibspace.o(.text), UNUSED)
malloc (Thumb, 98 bytes, Stack size 16 bytes, h1_alloc.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = malloc ⇒ __Heap_Full ⇒ __Heap_ProvideMemory ⇒ free
[Calls]- >> __Heap_Full
- >> __rt_heap_descriptor
[Called By]- >> __flsbuf
- >> __filbuf
- >> fopen
free (Thumb, 78 bytes, Stack size 16 bytes, h1_free.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = free
[Calls]
[Called By]- >> __Heap_ProvideMemory
- >> _terminateio
- >> _fclose_internal
_printf_int_common (Thumb, 180 bytes, Stack size 32 bytes, _printf_intcommon.o(.text))
[Stack]
- Max Depth = 48
- Call Chain = _printf_int_common ⇒ _printf_post_padding
[Calls]- >> _printf_post_padding
- >> _printf_pre_padding
[Called By]- >> _printf_hex_ptr
- >> _printf_int_dec
_printf_char_common (Thumb, 34 bytes, Stack size 72 bytes, _printf_char_common.o(.text))
[Stack]
- Max Depth = 112 + Unknown Stack Size
- Call Chain = _printf_char_common ⇒ __printf
[Calls]
[Called By]
_sputc (Thumb, 10 bytes, Stack size 0 bytes, _sputc.o(.text))
[Called By]
[Address Reference Count : 1]
_printf_cs_common (Thumb, 20 bytes, Stack size 8 bytes, _printf_char.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = _printf_cs_common ⇒ _printf_str ⇒ _printf_post_padding
[Calls]
[Called By]- >> _printf_string
- >> _printf_char
_printf_char (Thumb, 16 bytes, Stack size 0 bytes, _printf_char.o(.text), UNUSED)
[Calls]
_printf_string (Thumb, 8 bytes, Stack size 0 bytes, _printf_char.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = _printf_string ⇒ _printf_cs_common ⇒ _printf_str ⇒ _printf_post_padding
[Calls]
[Called By]
strtol (Thumb, 112 bytes, Stack size 32 bytes, strtol.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = strtol ⇒ _strtoul
[Calls]- >> _strtoul
- >> __aeabi_errno_addr
- >> __rt_ctype_table
[Called By]
ferror (Thumb, 8 bytes, Stack size 0 bytes, ferror.o(.text))
[Called By]
_fseek (Thumb, 242 bytes, Stack size 24 bytes, fseek.o(.text))
[Stack]
- Max Depth = 72
- Call Chain = _fseek ⇒ _sys_flen ⇒ __getfsize ⇒ fs_rd_sig
[Calls]- >> _sys_flen
- >> _sys_istty
- >> _ftell_internal
- >> _seterr
[Called By]
fseek (Thumb, 0 bytes, Stack size 24 bytes, fseek.o(.text), UNUSED)
_seterr (Thumb, 20 bytes, Stack size 0 bytes, stdio.o(.text))
[Called By]
- >> __flsbuf
- >> __filbuf
- >> _readbuf
- >> _writebuf
- >> _fseek
_writebuf (Thumb, 92 bytes, Stack size 32 bytes, stdio.o(.text))
[Stack]
- Max Depth = 256
- Call Chain = _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> _sys_seek
- >> _sys_write
- >> _seterr
[Called By]- >> fwrite
- >> __flsbuf
- >> _fflush
_fflush (Thumb, 70 bytes, Stack size 16 bytes, stdio.o(.text))
[Stack]
- Max Depth = 272
- Call Chain = _fflush ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]- >> __filbuf
- >> _deferredlazyseek
- >> _fclose_internal
- >> _do_fflush
_deferredlazyseek (Thumb, 60 bytes, Stack size 8 bytes, stdio.o(.text), UNUSED)
[Calls]
[Called By]
__rt_udiv10 (Thumb, 16 bytes, Stack size 0 bytes, rtudiv10.o(.text))
[Called By]
__user_libspace (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
__user_perproc_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text))
[Called By]
- >> __user_setup_stackheap
__user_perthread_libspace (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
__rt_heap_descriptor (Thumb, 12 bytes, Stack size 0 bytes, rt_heap_descriptor_intlibspace.o(.text))
[Called By]
- >> _init_alloc
- >> free
- >> malloc
__rt_locale (Thumb, 12 bytes, Stack size 0 bytes, rt_locale_intlibspace.o(.text))
[Called By]
- >> __rt_lib_init_lc_common
- >> __rt_ctype_table
_terminate_user_alloc (Thumb, 2 bytes, Stack size 0 bytes, init_alloc.o(.text), UNUSED)
_init_user_alloc (Thumb, 2 bytes, Stack size 0 bytes, init_alloc.o(.text), UNUSED)
__Heap_Full (Thumb, 34 bytes, Stack size 16 bytes, init_alloc.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = __Heap_Full ⇒ __Heap_ProvideMemory ⇒ free
[Calls]
[Called By]
__Heap_Broken (Thumb, 6 bytes, Stack size 0 bytes, init_alloc.o(.text), UNUSED)
[Calls]
_init_alloc (Thumb, 94 bytes, Stack size 24 bytes, init_alloc.o(.text))
[Stack]
- Max Depth = 56
- Call Chain = _init_alloc ⇒ __rt_SIGRTMEM ⇒ __rt_SIGRTMEM_inner ⇒ __default_signal_display
[Calls]- >> __rt_SIGRTMEM
- >> __Heap_ProvideMemory
- >> __Heap_Initialize
- >> __rt_heap_descriptor
[Called By]
__Heap_Initialize (Thumb, 10 bytes, Stack size 0 bytes, h1_init.o(.text))
[Called By]
__Heap_DescSize (Thumb, 4 bytes, Stack size 0 bytes, h1_init.o(.text), UNUSED)
_strtoul (Thumb, 152 bytes, Stack size 40 bytes, _strtoul.o(.text))
[Stack]
- Max Depth = 40
- Call Chain = _strtoul
[Calls]- >> _chval
- >> __aeabi_errno_addr
[Called By]
_readbuf (Thumb, 62 bytes, Stack size 16 bytes, filbuf.o(.text))
[Stack]
- Max Depth = 200
- Call Chain = _readbuf ⇒ _sys_read ⇒ __read ⇒ fat_read ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
_seteof (Thumb, 40 bytes, Stack size 0 bytes, filbuf.o(.text))
[Called By]
__filbuf (Thumb, 496 bytes, Stack size 32 bytes, filbuf.o(.text), UNUSED)
[Calls]
- >> _sys_ensure
- >> _sys_seek
- >> _flushlinebuffered
- >> _seteof
- >> _readbuf
- >> _deferredlazyseek
- >> _fflush
- >> _seterr
- >> malloc
__filbuf_byte (Thumb, 0 bytes, Stack size 32 bytes, filbuf.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = __filbuf_byte
[Called By]
__filbuf_wide (Thumb, 0 bytes, Stack size 32 bytes, filbuf.o(.text), UNUSED)
__flsbuf (Thumb, 462 bytes, Stack size 32 bytes, flsbuf.o(.text), UNUSED)
[Calls]
- >> _sys_flen
- >> _sys_istty
- >> _deferredlazyseek
- >> _writebuf
- >> _seterr
- >> malloc
__flsbuf_byte (Thumb, 0 bytes, Stack size 32 bytes, flsbuf.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = __flsbuf_byte
[Called By]
__flsbuf_wide (Thumb, 0 bytes, Stack size 32 bytes, flsbuf.o(.text), UNUSED)
_ftell_internal (Thumb, 70 bytes, Stack size 8 bytes, ftell.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = _ftell_internal
[Calls]
[Called By]
ftell (Thumb, 0 bytes, Stack size 8 bytes, ftell.o(.text), UNUSED)
_initio (Thumb, 210 bytes, Stack size 8 bytes, initio.o(.text))
[Stack]
- Max Depth = 440
- Call Chain = _initio ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> __rt_SIGRTRED
- >> setvbuf
- >> __aeabi_memclr4
- >> freopen
[Called By]
_terminateio (Thumb, 56 bytes, Stack size 16 bytes, initio.o(.text))
[Stack]
- Max Depth = 320
- Call Chain = _terminateio ⇒ _fclose_internal ⇒ _fflush ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> free
- >> _fclose_internal
[Called By]- >> __rt_lib_shutdown_stdio_2
__user_setup_stackheap (Thumb, 74 bytes, Stack size 8 bytes, sys_stackheap_outer.o(.text))
[Stack]
- Max Depth = 8 + Unknown Stack Size
- Call Chain = __user_setup_stackheap
[Calls]- >> __user_initial_stackheap
- >> __user_perproc_libspace
[Called By]
__Heap_ProvideMemory (Thumb, 52 bytes, Stack size 0 bytes, h1_extend.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = __Heap_ProvideMemory ⇒ free
[Calls]
[Called By]- >> _init_alloc
- >> __Heap_Full
_chval (Thumb, 32 bytes, Stack size 0 bytes, _chval.o(.text))
[Called By]
setvbuf (Thumb, 70 bytes, Stack size 16 bytes, setvbuf.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = setvbuf
[Called By]
fread (Thumb, 282 bytes, Stack size 56 bytes, freadfast.o(.text))
[Stack]
- Max Depth = 256
- Call Chain = fread ⇒ _readbuf ⇒ _sys_read ⇒ __read ⇒ fat_read ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> __filbuf_byte
- >> _seteof
- >> _readbuf
- >> __aeabi_memcpy
[Called By]
fwrite (Thumb, 192 bytes, Stack size 32 bytes, fwritefast.o(.text))
[Stack]
- Max Depth = 288
- Call Chain = fwrite ⇒ _writebuf ⇒ _sys_write ⇒ __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> __flsbuf_byte
- >> _writebuf
- >> __aeabi_memcpy
[Called By]
_flushlinebuffered (Thumb, 48 bytes, Stack size 16 bytes, flushlinebuffered.o(.text), UNUSED)
[Calls]
[Called By]
exit (Thumb, 12 bytes, Stack size 0 bytes, exit.o(.text))
[Calls]
[Called By]
__rt_SIGRTRED (Thumb, 14 bytes, Stack size 8 bytes, defsig_rtred_outer.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = __rt_SIGRTRED ⇒ __rt_SIGRTRED_inner ⇒ __default_signal_display
[Calls]- >> __rt_SIGRTRED_inner
- >> __sig_exit
[Called By]
__rt_SIGRTMEM (Thumb, 14 bytes, Stack size 8 bytes, defsig_rtmem_outer.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = __rt_SIGRTMEM ⇒ __rt_SIGRTMEM_inner ⇒ __default_signal_display
[Calls]- >> __rt_SIGRTMEM_inner
- >> __sig_exit
[Called By]- >> _init_alloc
- >> __Heap_Broken
_do_fflush (Thumb, 54 bytes, Stack size 16 bytes, fflush.o(.text), UNUSED)
[Calls]
[Called By]- >> _flushlinebuffered
- >> fflush
fflush (Thumb, 42 bytes, Stack size 16 bytes, fflush.o(.text), UNUSED)
[Calls]
__sig_exit (Thumb, 10 bytes, Stack size 0 bytes, defsig_exit.o(.text))
[Calls]
[Called By]- >> __rt_SIGRTMEM
- >> __rt_SIGRTRED
__rt_SIGRTRED_inner (Thumb, 14 bytes, Stack size 8 bytes, defsig_rtred_inner.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = __rt_SIGRTRED_inner ⇒ __default_signal_display
[Calls]- >> __default_signal_display
[Called By]
__rt_SIGRTMEM_inner (Thumb, 20 bytes, Stack size 8 bytes, defsig_rtmem_inner.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = __rt_SIGRTMEM_inner ⇒ __default_signal_display
[Calls]- >> __default_signal_display
[Called By]
__rt_fp_status_addr (Thumb, 12 bytes, Stack size 0 bytes, rt_fp_status_addr_intlibspace.o(.text))
[Called By]
__default_signal_display (Thumb, 50 bytes, Stack size 16 bytes, defsig_general.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = __default_signal_display
[Calls]
[Called By]- >> __rt_SIGRTMEM_inner
- >> __rt_SIGRTRED_inner
CalcChksum (Thumb, 22 bytes, Stack size 4 bytes, at_lib.o(i.CalcChksum))
[Stack]
- Max Depth = 4
- Call Chain = CalcChksum
[Calls]
[Called By]- >> ip_get_chksum
- >> process_icmp
CalcChksumBuf (Thumb, 40 bytes, Stack size 0 bytes, at_lib.o(i.CalcChksumBuf))
[Called By]
- >> udp_send
- >> tcp_send_frame
- >> process_udp
- >> process_tcp
- >> CalcChksum
CalcChksumVal (Thumb, 10 bytes, Stack size 0 bytes, at_lib.o(i.CalcChksumVal))
[Called By]
- >> udp_send
- >> tcp_send_frame
- >> process_udp
- >> process_tcp
SwapB (Thumb, 10 bytes, Stack size 0 bytes, at_lib.o(i.SwapB))
[Called By]
- >> udp_send
- >> ip_send_frame
- >> tcp_send_reset
- >> tcp_send_frame
- >> tcp_map_socket
- >> process_udp
- >> ip_chk_frame
- >> dhcp_send_message
__fclose (Thumb, 116 bytes, Stack size 24 bytes, _fs_fclose.o(i.__fclose))
[Stack]
- Max Depth = 176
- Call Chain = __fclose ⇒ fat_close_write ⇒ write_fat_link ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_WriteBlock
- >> fat_close_write
[Called By]
__flushbuf (Thumb, 130 bytes, Stack size 16 bytes, _fs_flushbuf.o(i.__flushbuf), UNUSED)
[Calls]
[Called By]
__fopen (Thumb, 364 bytes, Stack size 40 bytes, _fs_fopen.o(i.__fopen))
[Stack]
- Max Depth = 392
- Call Chain = __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_get_freeID
- >> fs_Find_File
- >> fat_find_file
- >> fat_delete
- >> fat_create
- >> _fdelete
- >> _fcreate
- >> fs_set_params
- >> fs_get_drive
- >> fs_find_iob
- >> __getfsize
[Called By]
__getfsize (Thumb, 166 bytes, Stack size 40 bytes, _fs_getfsize.o(i.__getfsize))
[Stack]
- Max Depth = 48
- Call Chain = __getfsize ⇒ fs_rd_sig
[Calls]- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_adr_sig
[Called By]- >> __fopen
- >> _sys_flen
- >> ffind
__read (Thumb, 160 bytes, Stack size 32 bytes, _fs_read.o(i.__read))
[Stack]
- Max Depth = 168
- Call Chain = __read ⇒ fat_read ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_mark_fileMem
- >> fs_ReadBlock
- >> fat_read
[Called By]
__setfpos (Thumb, 228 bytes, Stack size 48 bytes, _fs_setfpos.o(i.__setfpos))
[Stack]
- Max Depth = 176
- Call Chain = __setfpos ⇒ fat_set_fpos ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_adr_sig
- >> fat_set_fpos
- >> fs_AllocBlock
[Called By]
__write (Thumb, 244 bytes, Stack size 40 bytes, _fs_write.o(i.__write))
[Stack]
- Max Depth = 208
- Call Chain = __write ⇒ fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_BlockFull
- >> fs_AllocBlock
- >> fat_write
- >> fs_WriteBlock
[Called By]
_fcreate (Thumb, 280 bytes, Stack size 64 bytes, _fs_fcreate.o(i._fcreate))
[Stack]
- Max Depth = 96
- Call Chain = _fcreate ⇒ fs_mark_freeMem ⇒ fs_rd_alloc
[Calls]- >> fs_rd_sig
- >> fs_adr_sig
- >> fs_WriteBlock
- >> fs_mark_freeMem
- >> fs_get_freeMem
- >> fs_check_fwopen
[Called By]
_fdelete (Thumb, 130 bytes, Stack size 32 bytes, _fs_fdelete.o(i._fdelete))
[Stack]
- Max Depth = 64
- Call Chain = _fdelete ⇒ fs_BlockInvalid ⇒ fs_rd_alloc
[Calls]- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_adr_sig
- >> fs_WriteBlock
- >> fs_InitBlock
- >> fs_BlockInvalid
[Called By]
_ffind (Thumb, 182 bytes, Stack size 40 bytes, _fs_ffind.o(i._ffind))
[Stack]
- Max Depth = 48
- Call Chain = _ffind ⇒ fs_rd_sig
[Calls]- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_adr_sig
- >> fs_spi_ReadData
- >> fs_ReadData
[Called By]
alloc_mem (Thumb, 144 bytes, Stack size 24 bytes, at_mem.o(i.alloc_mem))
[Stack]
- Max Depth = 24
- Call Chain = alloc_mem
[Calls]- >> int_disable_eth
- >> int_enable_eth
- >> sys_error
[Called By]- >> udp_get_buf
- >> tcp_send
- >> tcp_get_buf
- >> tcp_send_ctrl
- >> ENET_IRQHandler
- >> http_finfo
- >> cgi_process_data
- >> arp_send_req
- >> arp_send_reply
- >> process_icmp
- >> nbns_listener
- >> http_proc_post
- >> http_open_file
- >> http_listener
- >> chk_post_rq
arp_cache_add (Thumb, 174 bytes, Stack size 32 bytes, at_arp.o(i.arp_cache_add))
[Stack]
- Max Depth = 56
- Call Chain = arp_cache_add ⇒ is_subnet ⇒ mem_copy
[Calls]- >> mem_copy
- >> mem_comp
- >> mem_test
- >> arp_cache_alloc
- >> is_subnet
[Called By]- >> run_eth_link
- >> arp_send_reply
arp_cache_find (Thumb, 252 bytes, Stack size 32 bytes, at_arp.o(i.arp_cache_find))
[Stack]
- Max Depth = 72
- Call Chain = arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> mem_copy
- >> mem_comp
- >> mem_test
- >> arp_send_req
- >> arp_cache_alloc
- >> is_subnet
[Called By]
arp_cache_update (Thumb, 218 bytes, Stack size 32 bytes, at_arp.o(i.arp_cache_update))
[Stack]
- Max Depth = 72
- Call Chain = arp_cache_update ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> mem_comp
- >> arp_send_req
[Called By]
b64_to_asc (Thumb, 116 bytes, Stack size 20 bytes, at_lib.o(i.b64_to_asc))
[Stack]
- Max Depth = 20
- Call Chain = b64_to_asc
[Called By]
cgx_content_type (Thumb, 4 bytes, Stack size 0 bytes, at_http.o(i.cgx_content_type))
[Called By]
dhcp_disable (Thumb, 28 bytes, Stack size 8 bytes, at_dhcp.o(i.dhcp_disable))
[Stack]
- Max Depth = 20
- Call Chain = dhcp_disable ⇒ mem_copy
[Calls]
[Called By]
eth_chk_adr (Thumb, 10 bytes, Stack size 0 bytes, at_ethernet.o(i.eth_chk_adr))
[Stack]
- Max Depth = 8
- Call Chain = eth_chk_adr ⇒ mem_comp
[Calls]
[Called By]
eth_send_frame (Thumb, 136 bytes, Stack size 16 bytes, at_ethernet.o(i.eth_send_frame))
[Stack]
- Max Depth = 88
- Call Chain = eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> mem_copy
- >> mem_comp
- >> send_frame
- >> mem_test
- >> is_subnet_bcast
- >> arp_cache_find
[Called By]
fat_close_write (Thumb, 140 bytes, Stack size 48 bytes, fs_fat.o(i.fat_close_write))
[Stack]
- Max Depth = 152
- Call Chain = fat_close_write ⇒ write_fat_link ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_sector
- >> write_fat_link
- >> write_cache
- >> read_sector
- >> read_last_entry
- >> get_dir_sect
- >> get_EOC
- >> cache_fat
- >> __aeabi_memcpy4
[Called By]
fat_create (Thumb, 72 bytes, Stack size 8 bytes, fs_fat.o(i.fat_create))
[Stack]
- Max Depth = 344
- Call Chain = fat_create ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_entries
- >> fat_find_dir
- >> alloc_name
[Called By]
fat_delete (Thumb, 84 bytes, Stack size 8 bytes, fs_fat.o(i.fat_delete))
[Stack]
- Max Depth = 344
- Call Chain = fat_delete ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> find_name
- >> fat_find_dir
- >> delete_entries
- >> chk_dir_empty
[Called By]
fat_ffind (Thumb, 56 bytes, Stack size 16 bytes, fs_fat.o(i.fat_ffind))
[Stack]
- Max Depth = 352
- Call Chain = fat_ffind ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> get_next_info
- >> fat_find_dir
[Called By]
fat_find_file (Thumb, 66 bytes, Stack size 16 bytes, fs_fat.o(i.fat_find_file))
[Stack]
- Max Depth = 352
- Call Chain = fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> find_name
- >> fat_find_dir
[Called By]
fat_format (Thumb, 606 bytes, Stack size 56 bytes, fs_fat.o(i.fat_format))
[Stack]
- Max Depth = 168 + Unknown Stack Size
- Call Chain = fat_format ⇒ write_br ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> mmc_write_sect
- >> mmc_read_config
- >> write_mbr
- >> write_label
- >> write_cache
- >> write_br
- >> set_u32
- >> chk_param
- >> __aeabi_memclr
- >> __aeabi_memset
[Called By]
fat_init (Thumb, 20 bytes, Stack size 8 bytes, fs_fat.o(i.fat_init))
[Stack]
- Max Depth = 144
- Call Chain = fat_init ⇒ init_dev ⇒ count_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
fat_read (Thumb, 174 bytes, Stack size 32 bytes, fs_fat.o(i.fat_read))
[Stack]
- Max Depth = 136
- Call Chain = fat_read ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_next_clus
- >> read_cache
- >> clus_to_sect
- >> __aeabi_memcpy
[Called By]
fat_set_fpos (Thumb, 72 bytes, Stack size 24 bytes, fs_fat.o(i.fat_set_fpos))
[Stack]
- Max Depth = 128
- Call Chain = fat_set_fpos ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
fat_write (Thumb, 208 bytes, Stack size 56 bytes, fs_fat.o(i.fat_write))
[Stack]
- Max Depth = 168
- Call Chain = fat_write ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_fat_link
- >> write_cache
- >> read_sector
- >> get_free_clus
- >> clus_to_sect
- >> __aeabi_memcpy
[Called By]
ffind (Thumb, 458 bytes, Stack size 40 bytes, fs_ffind.o(i.ffind))
[Stack]
- Max Depth = 392
- Call Chain = ffind ⇒ fat_ffind ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_strpos
- >> fat_ffind
- >> _ffind
- >> fs_set_params
- >> fs_get_drive
- >> fs_find_iob
- >> __getfsize
- >> strcmp
- >> strlen
[Called By]- >> http_finfo
- >> cgi_func
fformat (Thumb, 158 bytes, Stack size 16 bytes, fs_fformat.o(i.fformat))
[Stack]
- Max Depth = 184 + Unknown Stack Size
- Call Chain = fformat ⇒ fat_format ⇒ write_br ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_set_params
- >> fs_get_drive
- >> fs_find_iob
- >> fs_InitBlock
- >> fat_format
[Called By]
fgetc (Thumb, 24 bytes, Stack size 0 bytes, fgetc.o(i.fgetc))
[Stack]
- Max Depth = 32
- Call Chain = fgetc ⇒ __filbuf_byte
[Calls]
[Called By]
finit (Thumb, 48 bytes, Stack size 16 bytes, fs_finit.o(i.finit))
[Stack]
- Max Depth = 160
- Call Chain = finit ⇒ fat_init ⇒ init_dev ⇒ count_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> fs_spi_Init
- >> fs_Init
- >> fat_init
[Called By]- >> cgi_func
- >> cgi_process_data
- >> init
fn_cmp (Thumb, 30 bytes, Stack size 0 bytes, fs_lib.o(i.fn_cmp))
[Called By]
- >> fs_Find_File
- >> chk_param
free_mem (Thumb, 94 bytes, Stack size 16 bytes, at_mem.o(i.free_mem))
[Stack]
- Max Depth = 16
- Call Chain = free_mem
[Calls]- >> int_disable_eth
- >> int_enable_eth
- >> sys_error
[Called By]- >> udp_send
- >> tcp_send
- >> tcp_set_retransmit
- >> tcp_send_ctrl
- >> put_in_queue
- >> http_finfo
- >> run_eth_link
- >> cgi_process_data
- >> arp_send_req
- >> arp_send_reply
- >> process_icmp
- >> nbns_listener
- >> http_proc_post
- >> http_open_file
- >> http_kill_session
fs_AllocBlock (Thumb, 162 bytes, Stack size 24 bytes, _fs_flashio.o(i.fs_AllocBlock))
[Stack]
- Max Depth = 56
- Call Chain = fs_AllocBlock ⇒ fs_mark_freeMem ⇒ fs_rd_alloc
[Calls]- >> fs_rd_sig
- >> fs_adr_sig
- >> fs_WriteBlock
- >> fs_mark_freeMem
- >> fs_get_freeMem
- >> fs_check_fwopen
[Called By]
fs_BlockFull (Thumb, 92 bytes, Stack size 16 bytes, _fs_flashio.o(i.fs_BlockFull))
[Stack]
- Max Depth = 32
- Call Chain = fs_BlockFull ⇒ fs_WriteBlock ⇒ fs_WriteData
[Calls]
[Called By]
fs_BlockInvalid (Thumb, 48 bytes, Stack size 24 bytes, _fs_flashio.o(i.fs_BlockInvalid))
[Stack]
- Max Depth = 32
- Call Chain = fs_BlockInvalid ⇒ fs_rd_alloc
[Calls]- >> fs_rd_alloc
- >> fs_adr_sig
[Called By]
fs_EraseSector (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_EraseSector))
[Called By]
fs_Find_File (Thumb, 172 bytes, Stack size 88 bytes, _fs_flashio.o(i.fs_Find_File))
[Stack]
- Max Depth = 96
- Call Chain = fs_Find_File ⇒ fs_rd_sig
[Calls]- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_adr_sig
- >> fs_spi_ReadData
- >> fs_ReadData
- >> fn_cmp
[Called By]
fs_Init (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_Init))
[Called By]
fs_InitBlock (Thumb, 66 bytes, Stack size 8 bytes, _fs_flashio.o(i.fs_InitBlock))
[Stack]
- Max Depth = 8
- Call Chain = fs_InitBlock
[Calls]- >> fs_spi_EraseSector
- >> fs_EraseSector
[Called By]
fs_ProgramPage (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_ProgramPage))
[Called By]
fs_ReadBlock (Thumb, 28 bytes, Stack size 8 bytes, _fs_flashio.o(i.fs_ReadBlock))
[Stack]
- Max Depth = 16
- Call Chain = fs_ReadBlock ⇒ fs_ReadData
[Calls]- >> fs_spi_ReadData
- >> fs_ReadData
[Called By]
fs_ReadData (Thumb, 18 bytes, Stack size 8 bytes, fs_lib.o(i.fs_ReadData))
[Stack]
- Max Depth = 8
- Call Chain = fs_ReadData
[Calls]
[Called By]- >> fs_ReadBlock
- >> fs_Find_File
- >> _ffind
fs_WriteBlock (Thumb, 56 bytes, Stack size 8 bytes, _fs_flashio.o(i.fs_WriteBlock))
[Stack]
- Max Depth = 16
- Call Chain = fs_WriteBlock ⇒ fs_WriteData
[Calls]- >> fs_spi_ProgramPage
- >> fs_ProgramPage
- >> fs_WriteData
[Called By]- >> fs_BlockFull
- >> fs_AllocBlock
- >> _fdelete
- >> _fcreate
- >> __write
- >> __flushbuf
- >> __fclose
fs_WriteData (Thumb, 16 bytes, Stack size 8 bytes, fs_lib.o(i.fs_WriteData))
[Stack]
- Max Depth = 8
- Call Chain = fs_WriteData
[Calls]
[Called By]
fs_adr_sig (Thumb, 22 bytes, Stack size 0 bytes, _fs_flashio.o(i.fs_adr_sig))
[Called By]
- >> fs_AllocBlock
- >> fs_mark_fileMem
- >> fs_get_freeID
- >> fs_Find_File
- >> _fdelete
- >> _fcreate
- >> _ffind
- >> __setfpos
- >> __getfsize
- >> fs_BlockInvalid
- >> fs_mark_freeMem
- >> fs_get_freeMem
fs_check_fwopen (Thumb, 56 bytes, Stack size 16 bytes, _fs_flashio.o(i.fs_check_fwopen))
[Stack]
- Max Depth = 16
- Call Chain = fs_check_fwopen
[Called By]- >> fs_AllocBlock
- >> _fcreate
fs_find_iob (Thumb, 42 bytes, Stack size 8 bytes, fs_lib.o(i.fs_find_iob))
[Stack]
- Max Depth = 12
- Call Chain = fs_find_iob ⇒ __aeabi_memclr4
[Calls]
[Called By]- >> __fopen
- >> fformat
- >> ffind
fs_get_date (Thumb, 4 bytes, Stack size 0 bytes, fs_time.o(i.fs_get_date))
[Called By]
fs_get_drive (Thumb, 64 bytes, Stack size 0 bytes, fs_lib.o(i.fs_get_drive))
[Called By]
- >> __fopen
- >> fformat
- >> ffind
fs_get_freeID (Thumb, 82 bytes, Stack size 32 bytes, _fs_flashio.o(i.fs_get_freeID))
[Stack]
- Max Depth = 40
- Call Chain = fs_get_freeID ⇒ fs_rd_alloc
[Calls]- >> fs_rd_alloc
- >> fs_adr_sig
[Called By]
fs_get_freeMem (Thumb, 56 bytes, Stack size 24 bytes, _fs_flashio.o(i.fs_get_freeMem))
[Stack]
- Max Depth = 32
- Call Chain = fs_get_freeMem ⇒ fs_rd_alloc
[Calls]- >> fs_rd_alloc
- >> fs_adr_sig
[Called By]- >> fs_AllocBlock
- >> _fcreate
fs_get_time (Thumb, 6 bytes, Stack size 0 bytes, fs_time.o(i.fs_get_time))
[Called By]
fs_mark_fileMem (Thumb, 122 bytes, Stack size 32 bytes, _fs_flashio.o(i.fs_mark_fileMem))
[Stack]
- Max Depth = 40
- Call Chain = fs_mark_fileMem ⇒ fs_rd_sig
[Calls]- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_adr_sig
[Called By]
fs_mark_freeMem (Thumb, 62 bytes, Stack size 24 bytes, _fs_flashio.o(i.fs_mark_freeMem))
[Stack]
- Max Depth = 32
- Call Chain = fs_mark_freeMem ⇒ fs_rd_alloc
[Calls]- >> fs_rd_alloc
- >> fs_adr_sig
[Called By]- >> fs_AllocBlock
- >> _fcreate
fs_rd_alloc (Thumb, 36 bytes, Stack size 8 bytes, _fs_flashio.o(i.fs_rd_alloc))
[Stack]
- Max Depth = 8
- Call Chain = fs_rd_alloc
[Calls]
[Called By]- >> fs_mark_fileMem
- >> fs_get_freeID
- >> fs_Find_File
- >> _fdelete
- >> _ffind
- >> __setfpos
- >> __getfsize
- >> fs_BlockInvalid
- >> fs_mark_freeMem
- >> fs_get_freeMem
fs_rd_sig (Thumb, 32 bytes, Stack size 8 bytes, _fs_flashio.o(i.fs_rd_sig))
[Stack]
- Max Depth = 8
- Call Chain = fs_rd_sig
[Calls]
[Called By]- >> fs_AllocBlock
- >> fs_mark_fileMem
- >> fs_Find_File
- >> _fdelete
- >> _fcreate
- >> _ffind
- >> __setfpos
- >> __getfsize
fs_set_params (Thumb, 68 bytes, Stack size 0 bytes, fs_lib.o(i.fs_set_params))
[Called By]
- >> __fopen
- >> fformat
- >> ffind
fs_spi_EraseSector (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_spi_EraseSector))
[Called By]
fs_spi_Init (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_spi_Init))
[Called By]
fs_spi_ProgramPage (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_spi_ProgramPage))
[Called By]
fs_spi_ReadData (Thumb, 4 bytes, Stack size 0 bytes, fs_flashprg.o(i.fs_spi_ReadData))
[Called By]
- >> fs_rd_sig
- >> fs_rd_alloc
- >> fs_ReadBlock
- >> fs_Find_File
- >> _ffind
fs_strpos (Thumb, 26 bytes, Stack size 0 bytes, fs_lib.o(i.fs_strpos))
[Called By]
get_crc (Thumb, 36 bytes, Stack size 8 bytes, at_lib.o(i.get_crc))
[Stack]
- Max Depth = 8
- Call Chain = get_crc
[Called By]- >> init_dhcp
- >> dhcp_send_message
- >> str_crc
get_u32 (Thumb, 22 bytes, Stack size 0 bytes, at_lib.o(i.get_u32))
[Called By]
- >> tcp_send_reset
- >> process_tcp
- >> proc_opt_req
- >> proc_opt_renew
- >> dhcp_listener
http_accept_host (Thumb, 4 bytes, Stack size 0 bytes, at_http.o(i.http_accept_host))
[Called By]
http_date (Thumb, 112 bytes, Stack size 20 bytes, at_http.o(i.http_date))
[Stack]
- Max Depth = 20
- Call Chain = http_date
[Called By]
http_get_var (Thumb, 108 bytes, Stack size 24 bytes, at_http.o(i.http_get_var))
[Stack]
- Max Depth = 24
- Call Chain = http_get_var
[Calls]
[Called By]
init_TcpNet (Thumb, 40 bytes, Stack size 8 bytes, at_system.o(i.init_TcpNet))
[Stack]
- Max Depth = 88
- Call Chain = init_TcpNet ⇒ init_system ⇒ init_eth_link ⇒ init_ethernet ⇒ write_PHY ⇒ output_MDIO
[Calls]- >> mem_copy
- >> int_disable_eth
- >> init_system
- >> init_mem
[Called By]
init_arp (Thumb, 30 bytes, Stack size 12 bytes, at_arp.o(i.init_arp))
[Stack]
- Max Depth = 12
- Call Chain = init_arp
[Called By]
init_dhcp (Thumb, 88 bytes, Stack size 16 bytes, at_dhcp.o(i.init_dhcp))
[Stack]
- Max Depth = 36
- Call Chain = init_dhcp ⇒ udp_open
[Calls]- >> udp_open
- >> udp_get_socket
- >> mem_set
- >> mem_copy
- >> get_crc
[Called By]
init_eth_link (Thumb, 30 bytes, Stack size 8 bytes, at_ethernet.o(i.init_eth_link))
[Stack]
- Max Depth = 72
- Call Chain = init_eth_link ⇒ init_ethernet ⇒ write_PHY ⇒ output_MDIO
[Calls]- >> int_disable_eth
- >> int_enable_eth
- >> init_ethernet
- >> init_arp
[Called By]
init_http (Thumb, 78 bytes, Stack size 24 bytes, at_http.o(i.init_http))
[Stack]
- Max Depth = 48
- Call Chain = init_http ⇒ tcp_get_socket
[Calls]- >> tcp_listen
- >> tcp_get_socket
[Called By]
init_mem (Thumb, 24 bytes, Stack size 0 bytes, at_mem.o(i.init_mem))
[Called By]
init_nbns (Thumb, 34 bytes, Stack size 8 bytes, at_nbns.o(i.init_nbns))
[Stack]
- Max Depth = 28
- Call Chain = init_nbns ⇒ udp_open
[Calls]- >> udp_open
- >> udp_get_socket
[Called By]
init_tcp (Thumb, 16 bytes, Stack size 0 bytes, at_tcp.o(i.init_tcp))
[Calls]
[Called By]
init_udp (Thumb, 18 bytes, Stack size 0 bytes, at_udp.o(i.init_udp))
[Calls]
[Called By]
ip_chk_frame (Thumb, 184 bytes, Stack size 32 bytes, at_ip.o(i.ip_chk_frame))
[Stack]
- Max Depth = 44
- Call Chain = ip_chk_frame ⇒ mem_copy
[Calls]- >> mem_copy
- >> mem_comp
- >> SwapB
- >> igmp_is_member
- >> ip_get_chksum
- >> eth_chk_adr
[Called By]
ip_get_locadr (Thumb, 140 bytes, Stack size 24 bytes, at_ip.o(i.ip_get_locadr))
[Stack]
- Max Depth = 48
- Call Chain = ip_get_locadr ⇒ is_subnet ⇒ mem_copy
[Calls]
[Called By]- >> udp_send
- >> ip_send_frame
- >> tcp_send_frame
ip_send_frame (Thumb, 136 bytes, Stack size 24 bytes, at_ip.o(i.ip_send_frame))
[Stack]
- Max Depth = 112
- Call Chain = ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> mem_copy
- >> ip_get_locadr
- >> SwapB
- >> dispatch_frame
- >> ip_get_chksum
- >> is_EOC
[Called By]- >> udp_send
- >> tcp_send_frame
- >> process_icmp
is_subnet (Thumb, 34 bytes, Stack size 12 bytes, at_lib.o(i.is_subnet))
[Stack]
- Max Depth = 24
- Call Chain = is_subnet ⇒ mem_copy
[Calls]
[Called By]- >> ip_get_locadr
- >> is_subnet_bcast
- >> arp_cache_find
- >> arp_cache_add
is_subnet_bcast (Thumb, 40 bytes, Stack size 16 bytes, at_arp.o(i.is_subnet_bcast))
[Stack]
- Max Depth = 40
- Call Chain = is_subnet_bcast ⇒ is_subnet ⇒ mem_copy
[Calls]
[Called By]
main_TcpNet (Thumb, 50 bytes, Stack size 0 bytes, at_system.o(i.main_TcpNet))
[Stack]
- Max Depth = 544 + Unknown Stack Size
- Call Chain = main_TcpNet ⇒ run_system ⇒ run_http_server ⇒ http_kill_session ⇒ cgi_process_data ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
mem_comp (Thumb, 30 bytes, Stack size 8 bytes, at_lib.o(i.mem_comp))
[Stack]
- Max Depth = 8
- Call Chain = mem_comp
[Called By]- >> tcp_map_socket
- >> eth_send_frame
- >> arp_get_response
- >> process_arp
- >> ip_chk_frame
- >> arp_cache_update
- >> arp_cache_find
- >> arp_cache_add
- >> eth_chk_adr
- >> dhcp_listener
- >> nbns_listener
mem_copy (Thumb, 30 bytes, Stack size 12 bytes, at_lib.o(i.mem_copy))
[Stack]
- Max Depth = 12
- Call Chain = mem_copy
[Called By]- >> ip_send_frame
- >> tcp_send
- >> tcp_send_reset
- >> tcp_map_socket
- >> run_http_server
- >> run_dhcp_client
- >> process_tcp
- >> init_dhcp
- >> eth_send_frame
- >> init_TcpNet
- >> dhcp_disable
- >> arp_send_req
- >> arp_send_reply
- >> arp_get_response
- >> is_subnet
- >> process_icmp
- >> is_subnet_bcast
- >> ip_chk_frame
- >> arp_cache_find
- >> arp_cache_add
- >> proc_opt_sel
- >> proc_opt_req
- >> dhcp_send_message
- >> dhcp_listener
- >> nbns_listener
- >> http_proc_post
mem_set (Thumb, 16 bytes, Stack size 0 bytes, at_lib.o(i.mem_set))
[Called By]
- >> tcp_listen
- >> run_dhcp_client
- >> init_udp
- >> init_tcp
- >> init_dhcp
- >> arp_send_req
- >> proc_opt_req
- >> dhcp_send_message
- >> dhcp_listener
mem_test (Thumb, 22 bytes, Stack size 0 bytes, at_lib.o(i.mem_test))
[Calls]
[Called By]- >> udp_send
- >> ip_get_locadr
- >> run_eth_link
- >> run_dhcp_client
- >> eth_send_frame
- >> mem_test
- >> dhcp_check
- >> arp_cache_find
- >> arp_cache_add
- >> dhcp_listener
mmc_init (Thumb, 268 bytes, Stack size 24 bytes, fs_mmc.o(i.mmc_init))
[Stack]
- Max Depth = 40
- Call Chain = mmc_init ⇒ mmc_command
[Calls]- >> spi_send
- >> spi_ss
- >> spi_hi_speed
- >> spi_init
- >> mmc_command
[Called By]
mmc_read_config (Thumb, 172 bytes, Stack size 32 bytes, fs_mmc.o(i.mmc_read_config))
[Stack]
- Max Depth = 64
- Call Chain = mmc_read_config ⇒ mmc_read_bytes ⇒ mmc_command
[Calls]- >> spi_ss
- >> mmc_read_bytes
[Called By]
mmc_read_sect (Thumb, 82 bytes, Stack size 16 bytes, fs_mmc.o(i.mmc_read_sect))
[Stack]
- Max Depth = 56
- Call Chain = mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> spi_send
- >> spi_ss
- >> mmc_read_block
- >> mmc_command
[Called By]- >> read_sector
- >> read_cache
- >> cache_fat
mmc_write_sect (Thumb, 82 bytes, Stack size 16 bytes, fs_mmc.o(i.mmc_write_sect))
[Stack]
- Max Depth = 64
- Call Chain = mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> spi_send
- >> spi_ss
- >> mmc_write_block
- >> mmc_command
[Called By]- >> fat_format
- >> write_sector
- >> write_cache
- >> cache_fat
poll_ethernet (Thumb, 2 bytes, Stack size 0 bytes, at_ethernet.o(i.poll_ethernet))
[Called By]
process_arp (Thumb, 142 bytes, Stack size 16 bytes, at_arp.o(i.process_arp))
[Stack]
- Max Depth = 96
- Call Chain = process_arp ⇒ arp_send_reply ⇒ arp_cache_add ⇒ is_subnet ⇒ mem_copy
[Calls]- >> mem_comp
- >> arp_send_reply
- >> arp_get_response
[Called By]
process_hl_igmp (Thumb, 2 bytes, Stack size 0 bytes, at_ethernet.o(i.process_hl_igmp))
[Called By]
process_icmp (Thumb, 116 bytes, Stack size 32 bytes, at_icmp.o(i.process_icmp))
[Stack]
- Max Depth = 144
- Call Chain = process_icmp ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> mem_copy
- >> ip_send_frame
- >> free_mem
- >> alloc_mem
- >> CalcChksum
[Called By]
process_tcp (Thumb, 1056 bytes, Stack size 40 bytes, at_tcp.o(i.process_tcp))
[Stack]
- Max Depth = 216
- Call Chain = process_tcp ⇒ tcp_send_reset ⇒ tcp_send_ctrl ⇒ tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> resize_mem
- >> mem_copy
- >> get_u32
- >> CalcChksumVal
- >> CalcChksumBuf
- >> tcp_transit
- >> tcp_set_retransmit
- >> tcp_send_reset
- >> tcp_send_ctrl
- >> tcp_process_opt
- >> tcp_map_socket
- >> tcp_init_seq
- >> sys_error
[Called By]
process_udp (Thumb, 196 bytes, Stack size 32 bytes, at_udp.o(i.process_udp))
[Stack]
- Max Depth = 32
- Call Chain = process_udp
[Calls]- >> SwapB
- >> CalcChksumVal
- >> CalcChksumBuf
[Called By]
put_in_queue (Thumb, 36 bytes, Stack size 8 bytes, at_ethernet.o(i.put_in_queue))
[Stack]
- Max Depth = 24
- Call Chain = put_in_queue ⇒ free_mem
[Calls]
[Called By]
resize_mem (Thumb, 48 bytes, Stack size 16 bytes, at_mem.o(i.resize_mem))
[Stack]
- Max Depth = 16
- Call Chain = resize_mem
[Calls]- >> int_disable_eth
- >> int_enable_eth
[Called By]- >> tcp_send
- >> process_tcp
run_dhcp_client (Thumb, 272 bytes, Stack size 32 bytes, at_dhcp.o(i.run_dhcp_client))
[Stack]
- Max Depth = 216
- Call Chain = run_dhcp_client ⇒ dhcp_send_message ⇒ udp_send ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> mem_set
- >> mem_copy
- >> mem_test
- >> dhcp_send_message
[Called By]
run_eth_link (Thumb, 160 bytes, Stack size 16 bytes, at_ethernet.o(i.run_eth_link))
[Stack]
- Max Depth = 232
- Call Chain = run_eth_link ⇒ process_hl_tcp ⇒ process_tcp ⇒ tcp_send_reset ⇒ tcp_send_ctrl ⇒ tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> process_hl_tcp
- >> process_hl_udp
- >> free_mem
- >> mem_test
- >> process_hl_igmp
- >> poll_ethernet
- >> process_icmp
- >> process_arp
- >> ip_chk_frame
- >> arp_cache_update
- >> arp_cache_add
[Called By]
run_http_server (Thumb, 724 bytes, Stack size 40 bytes, at_http.o(i.run_http_server))
[Stack]
- Max Depth = 536 + Unknown Stack Size
- Call Chain = run_http_server ⇒ http_kill_session ⇒ cgi_process_data ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> mem_copy
- >> tcp_send
- >> tcp_max_dsize
- >> tcp_listen
- >> tcp_get_state
- >> tcp_get_buf
- >> tcp_close
- >> tcp_abort
- >> http_fread
- >> http_fclose
- >> cgi_func
- >> read_script_line
- >> http_strcpy
- >> http_open_file
- >> http_kill_session
- >> http_error_msg
- >> http_add_header
[Called By]
set_u32 (Thumb, 16 bytes, Stack size 0 bytes, at_lib.o(i.set_u32))
[Called By]
- >> tcp_send_frame
- >> dhcp_send_message
str_copy (Thumb, 22 bytes, Stack size 0 bytes, at_lib.o(i.str_copy))
[Called By]
- >> cgi_process_data
- >> dhcp_send_message
- >> http_error_msg
- >> http_add_header
str_crc (Thumb, 26 bytes, Stack size 8 bytes, at_lib.o(i.str_crc))
[Stack]
- Max Depth = 16
- Call Chain = str_crc ⇒ get_crc
[Calls]
[Called By]
str_scomp (Thumb, 26 bytes, Stack size 0 bytes, at_lib.o(i.str_scomp))
[Called By]
- >> cgi_process_data
- >> search_delim
- >> http_to_utc
- >> http_proc_multipart
- >> http_proc_header
- >> http_listener
- >> http_file_type
- >> chk_post_rq
str_up_case (Thumb, 26 bytes, Stack size 0 bytes, at_lib.o(i.str_up_case))
[Calls]
[Called By]- >> str_up_case
- >> nbns_listener
tcp_abort (Thumb, 78 bytes, Stack size 8 bytes, at_tcp.o(i.tcp_abort))
[Stack]
- Max Depth = 168
- Call Chain = tcp_abort ⇒ tcp_send_ctrl ⇒ tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> tcp_transit
- >> tcp_send_ctrl
[Called By]
tcp_close (Thumb, 120 bytes, Stack size 8 bytes, at_tcp.o(i.tcp_close))
[Stack]
- Max Depth = 168
- Call Chain = tcp_close ⇒ tcp_send_ctrl ⇒ tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> tcp_transit
- >> tcp_send_ctrl
[Called By]
tcp_get_buf (Thumb, 16 bytes, Stack size 8 bytes, at_tcp.o(i.tcp_get_buf))
[Stack]
- Max Depth = 32
- Call Chain = tcp_get_buf ⇒ alloc_mem
[Calls]
[Called By]
tcp_get_socket (Thumb, 62 bytes, Stack size 24 bytes, at_tcp.o(i.tcp_get_socket))
[Stack]
- Max Depth = 24
- Call Chain = tcp_get_socket
[Calls]
[Called By]
tcp_get_state (Thumb, 34 bytes, Stack size 0 bytes, at_tcp.o(i.tcp_get_state))
[Called By]
tcp_listen (Thumb, 114 bytes, Stack size 8 bytes, at_tcp.o(i.tcp_listen))
[Stack]
- Max Depth = 8
- Call Chain = tcp_listen
[Calls]
[Called By]- >> run_http_server
- >> init_http
tcp_max_dsize (Thumb, 32 bytes, Stack size 0 bytes, at_tcp.o(i.tcp_max_dsize))
[Called By]
tcp_poll_sockets (Thumb, 466 bytes, Stack size 32 bytes, at_tcp.o(i.tcp_poll_sockets))
[Stack]
- Max Depth = 192
- Call Chain = tcp_poll_sockets ⇒ tcp_send_ctrl ⇒ tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> tcp_transit
- >> tcp_set_retransmit
- >> tcp_send_frame
- >> tcp_send_ctrl
[Called By]
tcp_send (Thumb, 240 bytes, Stack size 32 bytes, at_tcp.o(i.tcp_send))
[Stack]
- Max Depth = 176
- Call Chain = tcp_send ⇒ tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> resize_mem
- >> mem_copy
- >> tcp_set_retransmit
- >> tcp_send_frame
- >> free_mem
- >> alloc_mem
[Called By]
timer_tick (Thumb, 8 bytes, Stack size 0 bytes, at_system.o(i.timer_tick))
[Called By]
udp_close (Thumb, 34 bytes, Stack size 0 bytes, at_udp.o(i.udp_close))
[Called By]
udp_get_buf (Thumb, 16 bytes, Stack size 8 bytes, at_udp.o(i.udp_get_buf))
[Stack]
- Max Depth = 32
- Call Chain = udp_get_buf ⇒ alloc_mem
[Calls]
[Called By]- >> dhcp_send_message
- >> nbns_listener
udp_get_socket (Thumb, 62 bytes, Stack size 16 bytes, at_udp.o(i.udp_get_socket))
[Stack]
- Max Depth = 16
- Call Chain = udp_get_socket
[Calls]
[Called By]- >> init_nbns
- >> init_dhcp
udp_open (Thumb, 112 bytes, Stack size 20 bytes, at_udp.o(i.udp_open))
[Stack]
- Max Depth = 20
- Call Chain = udp_open
[Called By]- >> init_nbns
- >> init_dhcp
udp_send (Thumb, 250 bytes, Stack size 32 bytes, at_udp.o(i.udp_send))
[Stack]
- Max Depth = 144
- Call Chain = udp_send ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> ip_send_frame
- >> ip_get_locadr
- >> SwapB
- >> CalcChksumVal
- >> CalcChksumBuf
- >> free_mem
- >> mem_test
[Called By]- >> dhcp_send_message
- >> nbns_listener
_get_lc_ctype (Thumb, 44 bytes, Stack size 8 bytes, lc_ctype_c.o(locale$$code))
[Stack]
- Max Depth = 8
- Call Chain = _get_lc_ctype
[Calls]
[Called By]- >> __rt_lib_init_lc_ctype_2
[Address Reference Count : 1]
_fp_init (Thumb, 14 bytes, Stack size 8 bytes, fpinit.o(x$fpl$fpinit))
[Stack]
- Max Depth = 8
- Call Chain = _fp_init
[Calls]
[Called By]
__fplib_config_pureend_doubles (Thumb, 0 bytes, Stack size unknown bytes, fpinit.o(x$fpl$fpinit), UNUSED)
Local Symbols
upd_display (Thumb, 46 bytes, Stack size 8 bytes, http_upload.o(.text))
[Stack]
- Max Depth = 104
- Call Chain = upd_display ⇒ GLCD_ClearLn ⇒ GLCD_DisplayString ⇒ GLCD_DisplayChar ⇒ GLCD_DrawChar ⇒ wr_reg ⇒ wr_dat
[Calls]- >> GLCD_DisplayString
- >> GLCD_ClearLn
[Called By]
dhcp_check (Thumb, 122 bytes, Stack size 32 bytes, http_upload.o(.text))
[Stack]
- Max Depth = 176 + Unknown Stack Size
- Call Chain = dhcp_check ⇒ __2sprintf ⇒ _printf_char_common ⇒ __printf
[Calls]- >> mem_test
- >> dhcp_disable
- >> __2sprintf
[Called By]
init (Thumb, 90 bytes, Stack size 8 bytes, http_upload.o(.text))
[Stack]
- Max Depth = 168
- Call Chain = init ⇒ finit ⇒ fat_init ⇒ init_dev ⇒ count_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> init_TcpNet
- >> finit
- >> SystemInit
- >> GLCD_SetTextColor
- >> GLCD_Init
- >> GLCD_DisplayString
- >> GLCD_Clear
- >> upd_display
[Called By]
blink_led (Thumb, 60 bytes, Stack size 32 bytes, http_upload.o(.text))
[Stack]
- Max Depth = 136
- Call Chain = blink_led ⇒ upd_display ⇒ GLCD_ClearLn ⇒ GLCD_DisplayString ⇒ GLCD_DisplayChar ⇒ GLCD_DrawChar ⇒ wr_reg ⇒ wr_dat
[Calls]- >> LED_out
- >> upd_display
[Called By]
dot_format (Thumb, 134 bytes, Stack size 32 bytes, http_cgi.o(.text))
[Stack]
- Max Depth = 176 + Unknown Stack Size
- Call Chain = dot_format ⇒ __2sprintf ⇒ _printf_char_common ⇒ __printf
[Calls]
[Called By]
output_MDIO (Thumb, 42 bytes, Stack size 8 bytes, emac_lpc17xx.o(.text))
[Stack]
- Max Depth = 8
- Call Chain = output_MDIO
[Called By]
read_PHY (Thumb, 136 bytes, Stack size 16 bytes, emac_lpc17xx.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = read_PHY ⇒ output_MDIO
[Calls]- >> turnaround_MDIO
- >> output_MDIO
[Called By]
write_PHY (Thumb, 112 bytes, Stack size 16 bytes, emac_lpc17xx.o(.text))
[Stack]
- Max Depth = 24
- Call Chain = write_PHY ⇒ output_MDIO
[Calls]- >> turnaround_MDIO
- >> output_MDIO
[Called By]
turnaround_MDIO (Thumb, 18 bytes, Stack size 0 bytes, emac_lpc17xx.o(.text))
[Called By]
lcd_send (Thumb, 36 bytes, Stack size 0 bytes, glcd_lpc1700.o(.text))
[Called By]
- >> wr_dat_only
- >> wr_dat
- >> wr_cmd
delay (Thumb, 8 bytes, Stack size 0 bytes, glcd_lpc1700.o(.text))
[Called By]
wr_cmd (Thumb, 32 bytes, Stack size 16 bytes, glcd_lpc1700.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = wr_cmd
[Calls]
[Called By]- >> GLCD_Bmp
- >> GLCD_Bitmap
- >> GLCD_Bargraph
- >> GLCD_DrawChar
- >> GLCD_PutPixel
- >> rd_reg
- >> wr_reg
- >> GLCD_Clear
wr_dat (Thumb, 32 bytes, Stack size 16 bytes, glcd_lpc1700.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = wr_dat
[Calls]
[Called By]- >> GLCD_PutPixel
- >> wr_reg
wr_dat_only (Thumb, 22 bytes, Stack size 16 bytes, glcd_lpc1700.o(.text))
[Stack]
- Max Depth = 16
- Call Chain = wr_dat_only
[Calls]
[Called By]- >> GLCD_Bmp
- >> GLCD_Bitmap
- >> GLCD_Bargraph
- >> GLCD_DrawChar
- >> GLCD_Clear
wr_reg (Thumb, 26 bytes, Stack size 16 bytes, glcd_lpc1700.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = wr_reg ⇒ wr_dat
[Calls]
[Called By]- >> GLCD_Bmp
- >> GLCD_Bitmap
- >> GLCD_Bargraph
- >> GLCD_DrawChar
- >> GLCD_PutPixel
- >> GLCD_WindowMax
- >> GLCD_Init
- >> GLCD_Clear
rd_reg (Thumb, 78 bytes, Stack size 16 bytes, glcd_lpc1700.o(.text))
[Stack]
- Max Depth = 32
- Call Chain = rd_reg ⇒ wr_cmd
[Calls]
[Called By]
tcp_init_seq (Thumb, 14 bytes, Stack size 0 bytes, at_tcp.o(i.tcp_init_seq))
[Called By]
tcp_map_socket (Thumb, 148 bytes, Stack size 24 bytes, at_tcp.o(i.tcp_map_socket))
[Stack]
- Max Depth = 36
- Call Chain = tcp_map_socket ⇒ mem_copy
[Calls]- >> mem_copy
- >> mem_comp
- >> SwapB
[Called By]
tcp_process_opt (Thumb, 104 bytes, Stack size 20 bytes, at_tcp.o(i.tcp_process_opt))
[Stack]
- Max Depth = 20
- Call Chain = tcp_process_opt
[Called By]
tcp_send_ctrl (Thumb, 34 bytes, Stack size 16 bytes, at_tcp.o(i.tcp_send_ctrl))
[Stack]
- Max Depth = 160
- Call Chain = tcp_send_ctrl ⇒ tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> tcp_send_frame
- >> free_mem
- >> alloc_mem
[Called By]- >> tcp_close
- >> tcp_abort
- >> tcp_send_reset
- >> tcp_poll_sockets
- >> process_tcp
tcp_send_frame (Thumb, 236 bytes, Stack size 32 bytes, at_tcp.o(i.tcp_send_frame))
[Stack]
- Max Depth = 144
- Call Chain = tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> set_u32
- >> ip_send_frame
- >> ip_get_locadr
- >> SwapB
- >> CalcChksumVal
- >> CalcChksumBuf
[Called By]- >> tcp_send
- >> tcp_send_ctrl
- >> tcp_poll_sockets
tcp_send_reset (Thumb, 120 bytes, Stack size 16 bytes, at_tcp.o(i.tcp_send_reset))
[Stack]
- Max Depth = 176
- Call Chain = tcp_send_reset ⇒ tcp_send_ctrl ⇒ tcp_send_frame ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> mem_copy
- >> get_u32
- >> SwapB
- >> tcp_send_ctrl
[Called By]
tcp_set_retransmit (Thumb, 18 bytes, Stack size 16 bytes, at_tcp.o(i.tcp_set_retransmit))
[Stack]
- Max Depth = 32
- Call Chain = tcp_set_retransmit ⇒ free_mem
[Calls]
[Called By]- >> tcp_send
- >> tcp_transit
- >> tcp_poll_sockets
- >> process_tcp
tcp_transit (Thumb, 98 bytes, Stack size 16 bytes, at_tcp.o(i.tcp_transit))
[Stack]
- Max Depth = 48
- Call Chain = tcp_transit ⇒ tcp_set_retransmit ⇒ free_mem
[Calls]
[Called By]- >> tcp_close
- >> tcp_abort
- >> tcp_poll_sockets
- >> process_tcp
chk_post_rq (Thumb, 340 bytes, Stack size 32 bytes, at_http.o(i.chk_post_rq))
[Stack]
- Max Depth = 120
- Call Chain = chk_post_rq ⇒ atoi ⇒ strtol ⇒ _strtoul
[Calls]- >> str_scomp
- >> alloc_mem
- >> http_strcpy
- >> get_next_par
- >> get_next_field
- >> cmp_header
- >> atoi
[Called By]
cmp_header (Thumb, 40 bytes, Stack size 8 bytes, at_http.o(i.cmp_header))
[Stack]
- Max Depth = 8
- Call Chain = cmp_header
[Called By]- >> http_proc_multipart
- >> http_proc_header
- >> chk_post_rq
get_next_field (Thumb, 40 bytes, Stack size 0 bytes, at_http.o(i.get_next_field))
[Called By]
- >> http_proc_multipart
- >> http_proc_header
- >> chk_post_rq
get_next_par (Thumb, 50 bytes, Stack size 0 bytes, at_http.o(i.get_next_par))
[Called By]
- >> http_proc_multipart
- >> chk_post_rq
hex2byte (Thumb, 18 bytes, Stack size 0 bytes, at_http.o(i.hex2byte))
[Called By]
http_add_header (Thumb, 180 bytes, Stack size 24 bytes, at_http.o(i.http_add_header))
[Stack]
- Max Depth = 208 + Unknown Stack Size
- Call Chain = http_add_header ⇒ utc_to_http ⇒ __2sprintf ⇒ _printf_char_common ⇒ __printf
[Calls]- >> str_copy
- >> cgx_content_type
- >> utc_to_http
[Called By]
http_error_msg (Thumb, 186 bytes, Stack size 24 bytes, at_http.o(i.http_error_msg))
[Stack]
- Max Depth = 24
- Call Chain = http_error_msg
[Calls]
[Called By]
http_file_type (Thumb, 74 bytes, Stack size 16 bytes, at_http.o(i.http_file_type))
[Stack]
- Max Depth = 16
- Call Chain = http_file_type
[Calls]
[Called By]
http_kill_session (Thumb, 94 bytes, Stack size 16 bytes, at_http.o(i.http_kill_session))
[Stack]
- Max Depth = 496 + Unknown Stack Size
- Call Chain = http_kill_session ⇒ cgi_process_data ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> http_fclose
- >> free_mem
- >> cgi_process_data
[Called By]- >> run_http_server
- >> http_listener
http_listener (Thumb, 556 bytes, Stack size 40 bytes, at_http.o(i.http_listener))
[Stack]
- Max Depth = 544 + Unknown Stack Size
- Call Chain = http_listener ⇒ http_proc_post ⇒ cgi_process_data ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> str_scomp
- >> alloc_mem
- >> cgi_process_var
- >> http_accept_host
- >> read_script_line
- >> http_strchr
- >> http_proc_post
- >> http_proc_multipart
- >> http_proc_header
- >> http_open_file
- >> http_kill_session
- >> http_file_type
- >> chk_post_rq
[Address Reference Count : 1]
http_open_file (Thumb, 274 bytes, Stack size 24 bytes, at_http.o(i.http_open_file))
[Stack]
- Max Depth = 480
- Call Chain = http_open_file ⇒ http_fopen ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> http_finfo
- >> http_fopen
- >> free_mem
- >> alloc_mem
- >> str_crc
[Called By]- >> run_http_server
- >> http_listener
http_proc_header (Thumb, 236 bytes, Stack size 32 bytes, at_http.o(i.http_proc_header))
[Stack]
- Max Depth = 152
- Call Chain = http_proc_header ⇒ http_to_utc ⇒ atoi ⇒ strtol ⇒ _strtoul
[Calls]- >> str_scomp
- >> b64_to_asc
- >> http_to_utc
- >> get_next_field
- >> cmp_header
- >> strcmp
- >> strlen
[Called By]
http_proc_multipart (Thumb, 302 bytes, Stack size 24 bytes, at_http.o(i.http_proc_multipart))
[Stack]
- Max Depth = 504 + Unknown Stack Size
- Call Chain = http_proc_multipart ⇒ cgi_process_data ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> str_scomp
- >> cgi_process_data
- >> search_delim
- >> http_strchr
- >> get_next_par
- >> get_next_field
- >> cmp_header
[Called By]
http_proc_post (Thumb, 226 bytes, Stack size 24 bytes, at_http.o(i.http_proc_post))
[Stack]
- Max Depth = 504 + Unknown Stack Size
- Call Chain = http_proc_post ⇒ cgi_process_data ⇒ fopen ⇒ freopen ⇒ _sys_open ⇒ __fopen ⇒ fat_find_file ⇒ fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> mem_copy
- >> free_mem
- >> alloc_mem
- >> cgi_process_data
[Called By]
http_strchr (Thumb, 26 bytes, Stack size 0 bytes, at_http.o(i.http_strchr))
[Called By]
- >> http_proc_multipart
- >> http_listener
http_strcpy (Thumb, 30 bytes, Stack size 8 bytes, at_http.o(i.http_strcpy))
[Stack]
- Max Depth = 8
- Call Chain = http_strcpy
[Called By]- >> run_http_server
- >> chk_post_rq
http_to_utc (Thumb, 162 bytes, Stack size 32 bytes, at_http.o(i.http_to_utc))
[Stack]
- Max Depth = 120
- Call Chain = http_to_utc ⇒ atoi ⇒ strtol ⇒ _strtoul
[Calls]
[Called By]
read_script_line (Thumb, 166 bytes, Stack size 16 bytes, at_http.o(i.read_script_line))
[Stack]
- Max Depth = 80
- Call Chain = read_script_line ⇒ http_fgets ⇒ fgets ⇒ fgetc ⇒ __filbuf_byte
[Calls]
[Called By]- >> run_http_server
- >> http_listener
search_delim (Thumb, 74 bytes, Stack size 16 bytes, at_http.o(i.search_delim))
[Stack]
- Max Depth = 16
- Call Chain = search_delim
[Calls]
[Called By]
utc_to_http (Thumb, 182 bytes, Stack size 40 bytes, at_http.o(i.utc_to_http))
[Stack]
- Max Depth = 184 + Unknown Stack Size
- Call Chain = utc_to_http ⇒ __2sprintf ⇒ _printf_char_common ⇒ __printf
[Calls]
[Called By]
nbns_listener (Thumb, 286 bytes, Stack size 56 bytes, at_nbns.o(i.nbns_listener))
[Stack]
- Max Depth = 200
- Call Chain = nbns_listener ⇒ udp_send ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> udp_send
- >> udp_get_buf
- >> mem_copy
- >> mem_comp
- >> free_mem
- >> alloc_mem
- >> str_up_case
[Address Reference Count : 1]
dhcp_listener (Thumb, 488 bytes, Stack size 40 bytes, at_dhcp.o(i.dhcp_listener))
[Stack]
- Max Depth = 224
- Call Chain = dhcp_listener ⇒ dhcp_send_message ⇒ udp_send ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> mem_set
- >> mem_copy
- >> mem_comp
- >> get_u32
- >> mem_test
- >> proc_opt_sel
- >> proc_opt_req
- >> proc_opt_renew
- >> dhcp_send_message
[Address Reference Count : 1]
dhcp_send_message (Thumb, 400 bytes, Stack size 40 bytes, at_dhcp.o(i.dhcp_send_message))
[Stack]
- Max Depth = 184
- Call Chain = dhcp_send_message ⇒ udp_send ⇒ ip_send_frame ⇒ dispatch_frame ⇒ eth_send_frame ⇒ arp_cache_find ⇒ arp_send_req ⇒ alloc_mem
[Calls]- >> udp_send
- >> udp_get_buf
- >> set_u32
- >> mem_set
- >> mem_copy
- >> SwapB
- >> str_copy
- >> get_crc
[Called By]- >> run_dhcp_client
- >> dhcp_listener
proc_opt_renew (Thumb, 92 bytes, Stack size 16 bytes, at_dhcp.o(i.proc_opt_renew))
[Stack]
- Max Depth = 16
- Call Chain = proc_opt_renew
[Calls]
[Called By]
proc_opt_req (Thumb, 154 bytes, Stack size 16 bytes, at_dhcp.o(i.proc_opt_req))
[Stack]
- Max Depth = 28
- Call Chain = proc_opt_req ⇒ mem_copy
[Calls]- >> mem_set
- >> mem_copy
- >> get_u32
[Called By]
proc_opt_sel (Thumb, 48 bytes, Stack size 16 bytes, at_dhcp.o(i.proc_opt_sel))
[Stack]
- Max Depth = 28
- Call Chain = proc_opt_sel ⇒ mem_copy
[Calls]
[Called By]
alloc_name (Thumb, 248 bytes, Stack size 40 bytes, fs_fat.o(i.alloc_name))
[Stack]
- Max Depth = 168
- Call Chain = alloc_name ⇒ alloc_new_clus ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_next_clus
- >> read_sector
- >> is_EOC
- >> get_dir_sect
- >> clus_to_sect
- >> clear_clus
- >> check_lfn
- >> alloc_new_clus
- >> strlen
[Called By]- >> fat_create
- >> fat_find_dir
alloc_new_clus (Thumb, 58 bytes, Stack size 16 bytes, fs_fat.o(i.alloc_new_clus))
[Stack]
- Max Depth = 128
- Call Chain = alloc_new_clus ⇒ get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_fat_link
- >> get_free_clus
- >> get_EOC
- >> cache_fat
[Called By]- >> write_entries
- >> alloc_name
cache_fat (Thumb, 68 bytes, Stack size 16 bytes, fs_fat.o(i.cache_fat))
[Stack]
- Max Depth = 80
- Call Chain = cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> mmc_write_sect
- >> mmc_read_sect
[Called By]- >> fat_close_write
- >> write_fat_link
- >> unlink_clus_chain
- >> set_next_clus
- >> get_free_clus
- >> count_free_clus
- >> alloc_new_clus
check_lfn (Thumb, 120 bytes, Stack size 24 bytes, fs_fat.o(i.check_lfn))
[Stack]
- Max Depth = 24
- Call Chain = check_lfn
[Calls]
[Called By]- >> write_entries
- >> search_for_name
- >> alloc_name
check_name (Thumb, 6 bytes, Stack size 0 bytes, fs_fat.o(i.check_name))
[Stack]
- Max Depth = 200
- Call Chain = check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]
chk_dir_empty (Thumb, 128 bytes, Stack size 24 bytes, fs_fat.o(i.chk_dir_empty))
[Stack]
- Max Depth = 128
- Call Chain = chk_dir_empty ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_next_clus
- >> read_sector
- >> is_EOC
- >> clus_to_sect
- >> strcmp
[Called By]
chk_param (Thumb, 34 bytes, Stack size 16 bytes, fs_fat.o(i.chk_param))
[Stack]
- Max Depth = 16
- Call Chain = chk_param
[Calls]
[Called By]
clear_clus (Thumb, 60 bytes, Stack size 16 bytes, fs_fat.o(i.clear_clus))
[Stack]
- Max Depth = 120
- Call Chain = clear_clus ⇒ write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_cache
- >> clus_to_sect
- >> __aeabi_memclr
[Called By]- >> write_entries
- >> alloc_name
clus_to_sect (Thumb, 30 bytes, Stack size 8 bytes, fs_fat.o(i.clus_to_sect))
[Stack]
- Max Depth = 8
- Call Chain = clus_to_sect
[Called By]- >> fat_write
- >> fat_read
- >> write_entries
- >> write_dot_entries
- >> search_for_name
- >> get_next_info
- >> get_dir_sect
- >> delete_entries
- >> clear_clus
- >> chk_dir_empty
- >> alloc_name
count_free_clus (Thumb, 264 bytes, Stack size 32 bytes, fs_fat.o(i.count_free_clus))
[Stack]
- Max Depth = 112
- Call Chain = count_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> get_fat_sect
- >> cache_fat
[Called By]
cvt_fatname (Thumb, 164 bytes, Stack size 24 bytes, fs_fat.o(i.cvt_fatname))
[Stack]
- Max Depth = 32
- Call Chain = cvt_fatname ⇒ val_char
[Calls]
[Called By]- >> write_entries
- >> search_for_name
delete_entries (Thumb, 162 bytes, Stack size 40 bytes, fs_fat.o(i.delete_entries))
[Stack]
- Max Depth = 160
- Call Chain = delete_entries ⇒ unlink_clus_chain ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_sector
- >> unlink_clus_chain
- >> set_next_clus
- >> read_sector
- >> get_dir_sect
- >> clus_to_sect
[Called By]
fat_find_dir (Thumb, 122 bytes, Stack size 32 bytes, fs_fat.o(i.fat_find_dir))
[Stack]
- Max Depth = 336
- Call Chain = fat_find_dir ⇒ write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_entries
- >> write_dot_entries
- >> find_name
- >> alloc_name
[Called By]- >> fat_find_file
- >> fat_delete
- >> fat_create
- >> fat_ffind
find_name (Thumb, 6 bytes, Stack size 0 bytes, fs_fat.o(i.find_name))
[Stack]
- Max Depth = 200
- Call Chain = find_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]- >> fat_find_file
- >> fat_delete
- >> fat_find_dir
get_EOC (Thumb, 38 bytes, Stack size 0 bytes, fs_fat.o(i.get_EOC))
[Called By]
- >> fat_close_write
- >> alloc_new_clus
get_bootrec (Thumb, 128 bytes, Stack size 16 bytes, fs_fat.o(i.get_bootrec))
[Stack]
- Max Depth = 88
- Call Chain = get_bootrec ⇒ read_sector ⇒ mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> read_sector
- >> get_u32
[Called By]
get_date (Thumb, 44 bytes, Stack size 8 bytes, fs_fat.o(i.get_date))
[Stack]
- Max Depth = 8
- Call Chain = get_date
[Calls]
[Called By]- >> write_label
- >> write_entries
- >> write_dot_entries
get_dir_sect (Thumb, 36 bytes, Stack size 0 bytes, fs_fat.o(i.get_dir_sect))
[Stack]
- Max Depth = 8
- Call Chain = get_dir_sect ⇒ clus_to_sect
[Calls]
[Called By]- >> fat_close_write
- >> write_entries
- >> search_for_name
- >> read_last_entry
- >> get_next_info
- >> delete_entries
- >> alloc_name
get_fat_sect (Thumb, 50 bytes, Stack size 0 bytes, fs_fat.o(i.get_fat_sect))
[Called By]
- >> write_fat_link
- >> unlink_clus_chain
- >> set_next_clus
- >> get_free_clus
- >> count_free_clus
get_free_clus (Thumb, 202 bytes, Stack size 32 bytes, fs_fat.o(i.get_free_clus))
[Stack]
- Max Depth = 112
- Call Chain = get_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> get_u32
- >> get_fat_sect
- >> cache_fat
[Called By]- >> fat_write
- >> alloc_new_clus
get_mbrec (Thumb, 68 bytes, Stack size 8 bytes, fs_fat.o(i.get_mbrec))
[Stack]
- Max Depth = 80
- Call Chain = get_mbrec ⇒ read_sector ⇒ mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> read_sector
- >> get_u32
[Called By]
get_next_info (Thumb, 408 bytes, Stack size 48 bytes, fs_fat.o(i.get_next_info))
[Stack]
- Max Depth = 152
- Call Chain = get_next_info ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_next_clus
- >> read_sector
- >> lfn_calc_chksum
- >> is_EOC
- >> get_dir_sect
- >> clus_to_sect
[Called By]
get_nt_name (Thumb, 382 bytes, Stack size 40 bytes, fs_fat.o(i.get_nt_name))
[Stack]
- Max Depth = 48
- Call Chain = get_nt_name ⇒ val_char
[Calls]
[Called By]
get_time (Thumb, 48 bytes, Stack size 8 bytes, fs_fat.o(i.get_time))
[Stack]
- Max Depth = 8
- Call Chain = get_time
[Calls]
[Called By]- >> write_label
- >> write_entries
- >> write_dot_entries
get_u32 (Thumb, 12 bytes, Stack size 0 bytes, fs_fat.o(i.get_u32))
[Called By]
- >> write_fat_link
- >> unlink_clus_chain
- >> get_mbrec
- >> get_free_clus
- >> get_bootrec
init_dev (Thumb, 204 bytes, Stack size 24 bytes, fs_fat.o(i.init_dev))
[Stack]
- Max Depth = 136
- Call Chain = init_dev ⇒ count_free_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> is_fat_valid
- >> get_mbrec
- >> get_bootrec
- >> count_free_clus
- >> __aeabi_memclr4
[Called By]
is_EOC (Thumb, 46 bytes, Stack size 0 bytes, fs_fat.o(i.is_EOC))
[Called By]
- >> ip_send_frame
- >> unlink_clus_chain
- >> search_for_name
- >> get_next_info
- >> chk_dir_empty
- >> alloc_name
is_fat_valid (Thumb, 78 bytes, Stack size 0 bytes, fs_fat.o(i.is_fat_valid))
[Called By]
lfn_calc_chksum (Thumb, 30 bytes, Stack size 0 bytes, fs_fat.o(i.lfn_calc_chksum))
[Called By]
- >> write_entries
- >> search_for_name
- >> get_next_info
read_cache (Thumb, 116 bytes, Stack size 16 bytes, fs_fat.o(i.read_cache))
[Stack]
- Max Depth = 88
- Call Chain = read_cache ⇒ read_sector ⇒ mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> mmc_read_sect
- >> read_sector
- >> __aeabi_memcpy
[Called By]
read_last_entry (Thumb, 50 bytes, Stack size 16 bytes, fs_fat.o(i.read_last_entry))
[Stack]
- Max Depth = 88
- Call Chain = read_last_entry ⇒ read_sector ⇒ mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> read_sector
- >> get_dir_sect
- >> __aeabi_memcpy4
[Called By]
read_sector (Thumb, 80 bytes, Stack size 16 bytes, fs_fat.o(i.read_sector))
[Stack]
- Max Depth = 72
- Call Chain = read_sector ⇒ mmc_read_sect ⇒ mmc_read_block ⇒ mmc_command
[Calls]- >> mmc_read_sect
- >> __aeabi_memcpy
[Called By]- >> fat_write
- >> fat_close_write
- >> write_label
- >> write_entries
- >> search_for_name
- >> read_last_entry
- >> read_cache
- >> get_next_info
- >> get_mbrec
- >> get_bootrec
- >> delete_entries
- >> chk_dir_empty
- >> alloc_name
search_for_name (Thumb, 518 bytes, Stack size 96 bytes, fs_fat.o(i.search_for_name))
[Stack]
- Max Depth = 200
- Call Chain = search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_next_clus
- >> read_sector
- >> lfn_calc_chksum
- >> is_EOC
- >> get_dir_sect
- >> cvt_fatname
- >> clus_to_sect
- >> check_lfn
- >> strlen
[Called By]- >> find_name
- >> check_name
set_next_clus (Thumb, 134 bytes, Stack size 24 bytes, fs_fat.o(i.set_next_clus))
[Stack]
- Max Depth = 104
- Call Chain = set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> get_fat_sect
- >> cache_fat
[Called By]- >> fat_set_fpos
- >> fat_read
- >> search_for_name
- >> get_next_info
- >> delete_entries
- >> chk_dir_empty
- >> alloc_name
set_u16 (Thumb, 8 bytes, Stack size 0 bytes, fs_fat.o(i.set_u16))
[Called By]
- >> write_mbr
- >> write_label
- >> write_fat_link
- >> write_entries
- >> write_dot_entries
- >> write_br
- >> unlink_clus_chain
set_u32 (Thumb, 16 bytes, Stack size 0 bytes, fs_fat.o(i.set_u32))
[Called By]
- >> fat_format
- >> write_mbr
- >> write_fat_link
- >> write_br
unlink_clus_chain (Thumb, 286 bytes, Stack size 40 bytes, fs_fat.o(i.unlink_clus_chain))
[Stack]
- Max Depth = 120
- Call Chain = unlink_clus_chain ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_u16
- >> is_EOC
- >> get_u32
- >> get_fat_sect
- >> cache_fat
[Called By]
val_char (Thumb, 18 bytes, Stack size 8 bytes, fs_fat.o(i.val_char))
[Stack]
- Max Depth = 8
- Call Chain = val_char
[Calls]
[Called By]- >> get_nt_name
- >> cvt_fatname
val_char_sn (Thumb, 60 bytes, Stack size 0 bytes, fs_fat.o(i.val_char_sn))
[Called By]
write_br (Thumb, 288 bytes, Stack size 32 bytes, fs_fat.o(i.write_br))
[Stack]
- Max Depth = 112
- Call Chain = write_br ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_sector
- >> set_u32
- >> set_u16
- >> __aeabi_memclr
- >> __aeabi_memcpy
[Called By]
write_cache (Thumb, 124 bytes, Stack size 24 bytes, fs_fat.o(i.write_cache))
[Stack]
- Max Depth = 104
- Call Chain = write_cache ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> mmc_write_sect
- >> write_sector
- >> __aeabi_memcpy
[Called By]- >> fat_write
- >> fat_close_write
- >> fat_format
- >> clear_clus
write_dot_entries (Thumb, 212 bytes, Stack size 32 bytes, fs_fat.o(i.write_dot_entries))
[Stack]
- Max Depth = 112
- Call Chain = write_dot_entries ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_sector
- >> set_u16
- >> get_time
- >> get_date
- >> clus_to_sect
- >> __aeabi_memcpy4
- >> __aeabi_memclr
[Called By]
write_entries (Thumb, 706 bytes, Stack size 104 bytes, fs_fat.o(i.write_entries))
[Stack]
- Max Depth = 304
- Call Chain = write_entries ⇒ check_name ⇒ search_for_name ⇒ set_next_clus ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_sector
- >> set_u16
- >> read_sector
- >> lfn_calc_chksum
- >> get_time
- >> get_nt_name
- >> get_dir_sect
- >> get_date
- >> cvt_fatname
- >> clus_to_sect
- >> clear_clus
- >> check_name
- >> check_lfn
- >> alloc_new_clus
- >> strlen
[Called By]- >> fat_create
- >> fat_find_dir
write_fat_link (Thumb, 216 bytes, Stack size 24 bytes, fs_fat.o(i.write_fat_link))
[Stack]
- Max Depth = 104
- Call Chain = write_fat_link ⇒ cache_fat ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> set_u32
- >> set_u16
- >> get_u32
- >> get_fat_sect
- >> cache_fat
[Called By]- >> fat_write
- >> fat_close_write
- >> alloc_new_clus
write_label (Thumb, 148 bytes, Stack size 16 bytes, fs_fat.o(i.write_label))
[Stack]
- Max Depth = 96
- Call Chain = write_label ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_sector
- >> set_u16
- >> read_sector
- >> get_time
- >> get_date
- >> __aeabi_memclr4
[Called By]
write_mbr (Thumb, 174 bytes, Stack size 16 bytes, fs_fat.o(i.write_mbr))
[Stack]
- Max Depth = 96
- Call Chain = write_mbr ⇒ write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]- >> write_sector
- >> set_u32
- >> set_u16
- >> __aeabi_memclr
[Called By]
write_sector (Thumb, 26 bytes, Stack size 16 bytes, fs_fat.o(i.write_sector))
[Stack]
- Max Depth = 80
- Call Chain = write_sector ⇒ mmc_write_sect ⇒ mmc_write_block ⇒ mmc_command
[Calls]
[Called By]- >> fat_close_write
- >> write_mbr
- >> write_label
- >> write_entries
- >> write_dot_entries
- >> write_cache
- >> write_br
- >> delete_entries
arp_cache_alloc (Thumb, 90 bytes, Stack size 20 bytes, at_arp.o(i.arp_cache_alloc))
[Stack]
- Max Depth = 20
- Call Chain = arp_cache_alloc
[Called By]- >> arp_cache_find
- >> arp_cache_add
arp_get_response (Thumb, 86 bytes, Stack size 24 bytes, at_arp.o(i.arp_get_response))
[Stack]
- Max Depth = 36
- Call Chain = arp_get_response ⇒ mem_copy
[Calls]
[Called By]
arp_send_reply (Thumb, 148 bytes, Stack size 24 bytes, at_arp.o(i.arp_send_reply))
[Stack]
- Max Depth = 80
- Call Chain = arp_send_reply ⇒ arp_cache_add ⇒ is_subnet ⇒ mem_copy
[Calls]- >> mem_copy
- >> send_frame
- >> free_mem
- >> alloc_mem
- >> arp_cache_add
[Called By]
arp_send_req (Thumb, 134 bytes, Stack size 16 bytes, at_arp.o(i.arp_send_req))
[Stack]
- Max Depth = 40
- Call Chain = arp_send_req ⇒ alloc_mem
[Calls]- >> mem_set
- >> mem_copy
- >> send_frame
- >> free_mem
- >> alloc_mem
[Called By]- >> arp_cache_update
- >> arp_cache_find
ip_get_chksum (Thumb, 10 bytes, Stack size 0 bytes, at_ip.o(i.ip_get_chksum))
[Stack]
- Max Depth = 4
- Call Chain = ip_get_chksum ⇒ CalcChksum
[Calls]
[Called By]- >> ip_send_frame
- >> ip_chk_frame
mmc_command (Thumb, 74 bytes, Stack size 16 bytes, fs_mmc.o(i.mmc_command))
[Stack]
- Max Depth = 16
- Call Chain = mmc_command
[Calls]
[Called By]- >> mmc_write_block
- >> mmc_read_bytes
- >> mmc_read_block
- >> mmc_write_sect
- >> mmc_read_sect
- >> mmc_init
mmc_read_block (Thumb, 94 bytes, Stack size 24 bytes, fs_mmc.o(i.mmc_read_block))
[Stack]
- Max Depth = 40
- Call Chain = mmc_read_block ⇒ mmc_command
[Calls]- >> spi_send
- >> mmc_command
[Called By]
mmc_read_bytes (Thumb, 72 bytes, Stack size 16 bytes, fs_mmc.o(i.mmc_read_bytes))
[Stack]
- Max Depth = 32
- Call Chain = mmc_read_bytes ⇒ mmc_command
[Calls]- >> spi_send
- >> mmc_command
[Called By]
mmc_write_block (Thumb, 122 bytes, Stack size 32 bytes, fs_mmc.o(i.mmc_write_block))
[Stack]
- Max Depth = 48
- Call Chain = mmc_write_block ⇒ mmc_command
[Calls]- >> spi_send
- >> mmc_command
[Called By]
_printf_input_char (Thumb, 10 bytes, Stack size 0 bytes, _printf_char_common.o(.text))
[Address Reference Count : 1]
- _printf_char_common.o(.text)
Undefined Global Symbols