# Static Call Graph for image .\at91sam7s64-flash\at91sam7s64-flash.axf

#<CALLGRAPH># ARM Linker, 4.1 [Build 894]: Last Updated: Wed May 21 13:54:11 2014

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

### Call chain for Maximum Stack Depth:

main ⇒ SD_Init ⇒ SD_SPI_Init ⇒ Acmd41 ⇒ Cmd55 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

### Functions with no stack information

- resetHandler
- label

### Function Pointers

- LowLevelInit from board_lowlevel.o(.text) referenced from board_cstartup_keil.o(cstartup)
- __main from __main.o(!!!main) referenced from board_cstartup_keil.o(cstartup)
- _printf_input_char from _printf_char_common.o(.text) referenced from _printf_char_common.o(.text)
- defaultFiqHandler from board_lowlevel.o(.text) referenced from board_lowlevel.o(.text)
- defaultIrqHandler from board_lowlevel.o(.text) referenced from board_lowlevel.o(.text)
- fputc from retarget.o(.text) referenced from _printf_char_file.o(.text)
- label from board_cstartup_keil.o(cstartup) referenced from board_cstartup_keil.o(cstartup)
- main from main.o(.text) referenced from rtentry2.o(.ARM.Collect$$rtentry$$0000000D)
- resetHandler from board_cstartup_keil.o(cstartup) referenced from board_cstartup_keil.o(VECTOR)

### Global Symbols

resetHandler (ARM, 0 bytes, Stack size unknown bytes, board_cstartup_keil.o(cstartup))

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

- >> __rt_entry
- >> __scatterload

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

- >> __main

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

- >> __rt_entry

__scatterload_null (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

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

- >> __scatterload_copy

[Called By]

- >> __scatterload_copy

__scatterload_zeroinit (ARM, 44 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)

_printf_d (ARM, 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

[Calls]

- >> _printf_int_dec (via Veneer)

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

- >> __printf (via Veneer)

_printf_u (ARM, 0 bytes, Stack size unknown bytes, _printf_u.o(.ARM.Collect$$_printf_percent$$0000000A))
[Stack]

- Max Depth = 72 + Unknown Stack Size
- Call Chain = _printf_u ⇒ _printf_int_dec ⇒ _printf_int_common

[Calls]

- >> _printf_int_dec (via Veneer)

_printf_s (ARM, 0 bytes, Stack size unknown bytes, _printf_s.o(.ARM.Collect$$_printf_percent$$00000014))
[Stack]

- Max Depth = 24 + Unknown Stack Size
- Call Chain = _printf_s ⇒ _printf_string ⇒ _printf_cs_common ⇒ _printf_str

[Calls]

- >> _printf_string (via Veneer)

_printf_percent_end (ARM, 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]

- >> _fp_init (via Veneer)

[Called By]

- >> __rt_entry_li (via Veneer)

__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_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_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_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_heap_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000006))

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

__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_rand_1 (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000A))

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

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

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

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

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

- >> __rt_exit_ls (via Veneer)

__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 (ARM, 0 bytes, Stack size unknown bytes, rtentry.o(.ARM.Collect$$rtentry$$00000000))
[Called By]

- >> __main
- >> __scatterload_rt2

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

__rt_entry_sh (ARM, 0 bytes, Stack size unknown bytes, rtentry7.o(.ARM.Collect$$rtentry$$00000007))

__rt_entry_li (ARM, 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_lib_init (via Veneer)

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

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

- >> exit (via BX)

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

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

- >> exit (via Veneer)

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

- >> __rt_lib_shutdown (via Veneer)

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

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

- >> _sys_exit

DecodeR1 (ARM, 4 bytes, Stack size 0 bytes, sdmmc_spi.o(.text))
[Called By]

- >> SD_SPI_R2
- >> SD_SPI_R1b
- >> SD_SPI_R1

DecodeR2 (ARM, 4 bytes, Stack size 0 bytes, sdmmc_spi.o(.text))
[Called By]

- >> SD_SPI_R2

SD_ReadBlock (ARM, 272 bytes, Stack size 32 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 320 + Unknown Stack Size
- Call Chain = SD_ReadBlock ⇒ MoveToTransferState ⇒ Cmd25 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)
- >> MoveToTransferState
- >> ContinuousRead

[Called By]

- >> main

SD_WriteBlock (ARM, 388 bytes, Stack size 32 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 320 + Unknown Stack Size
- Call Chain = SD_WriteBlock ⇒ MoveToTransferState ⇒ Cmd25 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)
- >> MoveToTransferState
- >> ContinuousWrite

[Called By]

- >> main

SD_SPI_Init (ARM, 808 bytes, Stack size 32 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 304 + Unknown Stack Size
- Call Chain = SD_SPI_Init ⇒ Acmd41 ⇒ Cmd55 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)
- >> Acmd41
- >> Cmd59
- >> Cmd58
- >> Cmd9
- >> Cmd8
- >> Cmd1
- >> Cmd0

[Called By]

- >> SD_Init

SD_Init (ARM, 512 bytes, Stack size 16 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 320 + Unknown Stack Size
- Call Chain = SD_Init ⇒ SD_SPI_Init ⇒ Acmd41 ⇒ Cmd55 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> __2printf (via Veneer)
- >> SD_SPI_Init
- >> Cmd16
- >> Pon

[Called By]

- >> main

SD_Stop (ARM, 224 bytes, Stack size 24 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 264 + Unknown Stack Size
- Call Chain = SD_Stop ⇒ Cmd12 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)
- >> SDSPI_Close
- >> Cmd12

[Called By]

- >> main

SDSPI_Configure (ARM, 96 bytes, Stack size 0 bytes, sdspi.o(.text))
[Called By]

- >> main

SDSPI_ConfigureCS (ARM, 92 bytes, Stack size 8 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 8
- Call Chain = SDSPI_ConfigureCS

[Called By]

- >> main

SDSPI_PDC (ARM, 120 bytes, Stack size 8 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 8
- Call Chain = SDSPI_PDC

[Called By]

- >> SDSPI_Write
- >> SDSPI_Read

SDSPI_IsBusy (ARM, 32 bytes, Stack size 0 bytes, sdspi.o(.text))
[Called By]

- >> SDSPI_Write
- >> SDSPI_Read

SDSPI_Read (ARM, 100 bytes, Stack size 24 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 32 + Unknown Stack Size
- Call Chain = SDSPI_Read ⇒ SDSPI_PDC

[Calls]

- >> __aeabi_memset
- >> SDSPI_IsBusy
- >> SDSPI_PDC

[Called By]

- >> SDSPI_GetDataResp
- >> SDSPI_GetCmdResp
- >> SDSPI_WaitDataBusy
- >> SDSPI_Wait
- >> SDSPI_SendCommand

SDSPI_Write (ARM, 84 bytes, Stack size 20 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 28
- Call Chain = SDSPI_Write ⇒ SDSPI_PDC

[Calls]

- >> SDSPI_IsBusy
- >> SDSPI_PDC

[Called By]

- >> SDSPI_StopTranToken
- >> SDSPI_SendCommand
- >> SDSPI_NCS

SDSPI_WaitDataBusy (ARM, 56 bytes, Stack size 16 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 48 + Unknown Stack Size
- Call Chain = SDSPI_WaitDataBusy ⇒ SDSPI_Read ⇒ SDSPI_PDC

[Calls]

- >> SDSPI_Read

[Called By]

- >> SDSPI_SendCommand
- >> MoveToTransferState
- >> SendCommand

SDSPI_MakeCmd (ARM, 112 bytes, Stack size 24 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 32
- Call Chain = SDSPI_MakeCmd ⇒ crc7

[Calls]

- >> crc7

[Called By]

- >> SDSPI_SendCommand

SDSPI_GetCmdResp (ARM, 432 bytes, Stack size 32 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 64 + Unknown Stack Size
- Call Chain = SDSPI_GetCmdResp ⇒ SDSPI_Read ⇒ SDSPI_PDC

[Calls]

- >> SDSPI_Read

[Called By]

- >> SDSPI_SendCommand

SDSPI_GetDataResp (ARM, 124 bytes, Stack size 24 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 56 + Unknown Stack Size
- Call Chain = SDSPI_GetDataResp ⇒ SDSPI_Read ⇒ SDSPI_PDC

[Calls]

- >> SDSPI_Read

[Called By]

- >> SDSPI_SendCommand

SDSPI_NCS (ARM, 80 bytes, Stack size 16 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 44
- Call Chain = SDSPI_NCS ⇒ SDSPI_Write ⇒ SDSPI_PDC

[Calls]

- >> SDSPI_Write

[Called By]

- >> SDSPI_SendCommand
- >> SendCommand

SDSPI_Wait (ARM, 84 bytes, Stack size 24 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 56 + Unknown Stack Size
- Call Chain = SDSPI_Wait ⇒ SDSPI_Read ⇒ SDSPI_PDC

[Calls]

- >> SDSPI_Read

[Called By]

- >> SDSPI_SendCommand
- >> SendCommand

SDSPI_SendCommand (ARM, 1016 bytes, Stack size 64 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 192 + Unknown Stack Size
- Call Chain = SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)
- >> crc_itu_t
- >> SDSPI_GetDataResp
- >> SDSPI_GetCmdResp
- >> SDSPI_MakeCmd
- >> SDSPI_Write
- >> SDSPI_Read
- >> SDSPI_WaitDataBusy
- >> SDSPI_Wait
- >> SDSPI_NCS

[Called By]

- >> SendCommand

SDSPI_Handler (ARM, 144 bytes, Stack size 24 bytes, sdspi.o(.text), UNUSED)
[Called By]

- >> ISR_Spi0

SDSPI_IsTxComplete (ARM, 36 bytes, Stack size 0 bytes, sdspi.o(.text))
[Called By]

- >> SendCommand

SDSPI_Close (ARM, 164 bytes, Stack size 16 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 144 + Unknown Stack Size
- Call Chain = SDSPI_Close ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)

[Called By]

- >> SD_Stop

SDSPI_StopTranToken (ARM, 40 bytes, Stack size 12 bytes, sdspi.o(.text))
[Stack]

- Max Depth = 40
- Call Chain = SDSPI_StopTranToken ⇒ SDSPI_Write ⇒ SDSPI_PDC

[Calls]

- >> SDSPI_Write

[Called By]

- >> MoveToTransferState

AIC_ConfigureIT (ARM, 48 bytes, Stack size 0 bytes, aic.o(.text))
[Called By]

- >> main

AIC_EnableIT (ARM, 20 bytes, Stack size 0 bytes, aic.o(.text))
[Called By]

- >> main

AIC_DisableIT (ARM, 20 bytes, Stack size 0 bytes, aic.o(.text), UNUSED)

DBGU_Configure (ARM, 88 bytes, Stack size 16 bytes, dbgu.o(.text))
[Stack]

- Max Depth = 16 + Unknown Stack Size
- Call Chain = DBGU_Configure

[Calls]

- >> __aeabi_uidivmod

[Called By]

- >> main

DBGU_PutChar (ARM, 52 bytes, Stack size 0 bytes, dbgu.o(.text))
[Called By]

- >> _ttywrch
- >> fputc

DBGU_IsRxReady (ARM, 16 bytes, Stack size 0 bytes, dbgu.o(.text), UNUSED)

DBGU_GetChar (ARM, 36 bytes, Stack size 0 bytes, dbgu.o(.text))
[Called By]

- >> main

PIO_Configure (ARM, 288 bytes, Stack size 16 bytes, pio.o(.text))
[Stack]

- Max Depth = 16
- Call Chain = PIO_Configure

[Calls]

- >> PIO_SetOutput
- >> PIO_SetInput
- >> PIO_SetPeripheralB
- >> PIO_SetPeripheralA

[Called By]

- >> main

PIO_Set (ARM, 12 bytes, Stack size 0 bytes, pio.o(.text))
[Called By]

- >> main

PIO_Clear (ARM, 12 bytes, Stack size 0 bytes, pio.o(.text))
[Called By]

- >> main

PIO_Get (ARM, 76 bytes, Stack size 0 bytes, pio.o(.text))
[Called By]

- >> main

PIO_GetOutputDataStatus (ARM, 40 bytes, Stack size 0 bytes, pio.o(.text), UNUSED)

PIO_GetISR (ARM, 16 bytes, Stack size 0 bytes, pio.o(.text), UNUSED)

defaultSpuriousHandler (ARM, 8 bytes, Stack size 0 bytes, board_lowlevel.o(.text), UNUSED)

defaultFiqHandler (ARM, 8 bytes, Stack size 0 bytes, board_lowlevel.o(.text))
[Address Reference Count : 1]

- board_lowlevel.o(.text)

defaultIrqHandler (ARM, 8 bytes, Stack size 0 bytes, board_lowlevel.o(.text))
[Address Reference Count : 1]

- board_lowlevel.o(.text)

LowLevelInit (ARM, 336 bytes, Stack size 8 bytes, board_lowlevel.o(.text))
[Stack]

- Max Depth = 16
- Call Chain = LowLevelInit ⇒ BOARD_RemapRam

[Calls]

- >> BOARD_RemapRam

[Address Reference Count : 1]

- board_cstartup_keil.o(cstartup)

BOARD_RemapFlash (ARM, 36 bytes, Stack size 8 bytes, board_memories.o(.text), UNUSED)
[Calls]

- >> BOARD_GetRemap

BOARD_RemapRam (ARM, 36 bytes, Stack size 8 bytes, board_memories.o(.text))
[Stack]

- Max Depth = 8
- Call Chain = BOARD_RemapRam

[Calls]

- >> BOARD_GetRemap

[Called By]

- >> LowLevelInit

fputc (ARM, 64 bytes, Stack size 16 bytes, retarget.o(.text))
[Stack]

- Max Depth = 16
- Call Chain = fputc

[Calls]

- >> DBGU_PutChar

[Address Reference Count : 1]

- _printf_char_file.o(.text)

ferror (ARM, 12 bytes, Stack size 0 bytes, retarget.o(.text))
[Called By]

- >> _printf_char_file (via Veneer)

_ttywrch (ARM, 24 bytes, Stack size 8 bytes, retarget.o(.text), UNUSED)
[Calls]

- >> DBGU_PutChar

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

- >> __rt_exit_exit

ADC_SoftReset (ARM, 12 bytes, Stack size 0 bytes, adc.o(.text))
[Called By]

- >> ADC_Initialize

ADC_Initialize (ARM, 624 bytes, Stack size 56 bytes, adc.o(.text))
[Stack]

- Max Depth = 200 + Unknown Stack Size
- Call Chain = ADC_Initialize ⇒ ADC_CfgModeReg ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_uidivmod
- >> __2printf (via Veneer)
- >> ADC_SoftReset
- >> ADC_CfgModeReg

[Called By]

- >> main

ADC_GetModeReg (ARM, 12 bytes, Stack size 0 bytes, adc.o(.text), UNUSED)

ADC_EnableChannel (ARM, 64 bytes, Stack size 16 bytes, adc.o(.text))
[Stack]

- Max Depth = 144 + Unknown Stack Size
- Call Chain = ADC_EnableChannel ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)

[Called By]

- >> ADCConv

ADC_DisableChannel (ARM, 64 bytes, Stack size 16 bytes, adc.o(.text))
[Stack]

- Max Depth = 144 + Unknown Stack Size
- Call Chain = ADC_DisableChannel ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)

[Called By]

- >> ADCConv

ADC_GetChannelStatus (ARM, 12 bytes, Stack size 0 bytes, adc.o(.text), UNUSED)

ADC_StartConversion (ARM, 12 bytes, Stack size 0 bytes, adc.o(.text))
[Called By]

- >> ADCConv

ADC_GetLastConvertedData (ARM, 12 bytes, Stack size 0 bytes, adc.o(.text), UNUSED)

ADC_GetConvertedData (ARM, 204 bytes, Stack size 16 bytes, adc.o(.text))
[Stack]

- Max Depth = 144 + Unknown Stack Size
- Call Chain = ADC_GetConvertedData ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)

[Called By]

- >> ADCConv

ADC_EnableIt (ARM, 108 bytes, Stack size 16 bytes, adc.o(.text), UNUSED)
[Calls]

- >> __2printf (via Veneer)

ADC_EnableDataReadyIt (ARM, 12 bytes, Stack size 0 bytes, adc.o(.text), UNUSED)

ADC_DisableIt (ARM, 204 bytes, Stack size 16 bytes, adc.o(.text), UNUSED)
[Calls]

- >> __2printf (via Veneer)

ADC_GetStatus (ARM, 12 bytes, Stack size 0 bytes, adc.o(.text), UNUSED)
[Called By]

- >> ADC_IsStatusSet

ADC_GetInterruptMaskStatus (ARM, 12 bytes, Stack size 0 bytes, adc.o(.text), UNUSED)
[Called By]

- >> ADC_IsInterruptMasked

ADC_IsInterruptMasked (ARM, 32 bytes, Stack size 4 bytes, adc.o(.text), UNUSED)
[Calls]

- >> ADC_GetInterruptMaskStatus

ADC_IsStatusSet (ARM, 32 bytes, Stack size 4 bytes, adc.o(.text), UNUSED)
[Calls]

- >> ADC_GetStatus

ADC_IsChannelInterruptStatusSet (ARM, 44 bytes, Stack size 0 bytes, adc.o(.text), UNUSED)

RTT_SetPrescaler (ARM, 12 bytes, Stack size 0 bytes, rtt.o(.text))
[Called By]

- >> ConfigureRtt

RTT_GetTime (ARM, 12 bytes, Stack size 0 bytes, rtt.o(.text))
[Called By]

- >> main
- >> ConfigureRtt

RTT_EnableIT (ARM, 68 bytes, Stack size 16 bytes, rtt.o(.text), UNUSED)
[Calls]

- >> __2printf (via Veneer)

RTT_GetStatus (ARM, 12 bytes, Stack size 0 bytes, rtt.o(.text), UNUSED)

RTT_SetAlarm (ARM, 68 bytes, Stack size 16 bytes, rtt.o(.text), UNUSED)
[Calls]

- >> __2printf (via Veneer)

crc_itu_t (ARM, 72 bytes, Stack size 8 bytes, crc-itu-t.o(.text))
[Stack]

- Max Depth = 8
- Call Chain = crc_itu_t

[Called By]

- >> SDSPI_SendCommand

crc7 (ARM, 52 bytes, Stack size 8 bytes, crc7.o(.text))
[Stack]

- Max Depth = 8
- Call Chain = crc7

[Called By]

- >> SDSPI_MakeCmd

ADCConv (ARM, 92 bytes, Stack size 16 bytes, main.o(.text))
[Stack]

- Max Depth = 160 + Unknown Stack Size
- Call Chain = ADCConv ⇒ ADC_GetConvertedData ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> ADC_GetConvertedData
- >> ADC_StartConversion
- >> ADC_DisableChannel
- >> ADC_EnableChannel

[Called By]

- >> main

ISR_Spi0 (ARM, 20 bytes, Stack size 8 bytes, main.o(.text), UNUSED)
[Calls]

- >> SDSPI_Handler

ConfigureRtt (ARM, 56 bytes, Stack size 8 bytes, main.o(.text))
[Stack]

- Max Depth = 8
- Call Chain = ConfigureRtt

[Calls]

- >> RTT_GetTime
- >> RTT_SetPrescaler

[Called By]

- >> main

WaitSdConn (ARM, 20 bytes, Stack size 8 bytes, main.o(.text), UNUSED)
[Calls]

- >> __2printf (via Veneer)

CheckProtection (ARM, 20 bytes, Stack size 8 bytes, main.o(.text), UNUSED)
[Calls]

- >> __2printf (via Veneer)

tDelay (ARM, 24 bytes, Stack size 0 bytes, main.o(.text))
[Called By]

- >> main

logTime (ARM, 156 bytes, Stack size 0 bytes, main.o(.text))
[Called By]

- >> main

perTime (ARM, 312 bytes, Stack size 0 bytes, main.o(.text))
[Called By]

- >> main

totTime (ARM, 136 bytes, Stack size 0 bytes, main.o(.text))
[Called By]

- >> main

main (ARM, 2872 bytes, Stack size 6336 bytes, main.o(.text))
[Stack]

- Max Depth = 6656 + Unknown Stack Size
- Call Chain = main ⇒ SD_Init ⇒ SD_SPI_Init ⇒ Acmd41 ⇒ Cmd55 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> __2printf (via Veneer)
- >> totTime
- >> perTime
- >> logTime
- >> tDelay
- >> ConfigureRtt
- >> ADCConv
- >> timeCounter
- >> RTT_GetTime
- >> ADC_Initialize
- >> PIO_Get
- >> PIO_Clear
- >> PIO_Set
- >> PIO_Configure
- >> DBGU_GetChar
- >> DBGU_Configure
- >> AIC_EnableIT
- >> AIC_ConfigureIT
- >> SDSPI_ConfigureCS
- >> SDSPI_Configure
- >> SD_Stop
- >> SD_Init
- >> SD_WriteBlock
- >> SD_ReadBlock

[Address Reference Count : 1]

- rtentry2.o(.ARM.Collect$$rtentry$$0000000D)

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

__use_no_semihosting_swi (ARM, 4 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)

__2printf (Thumb, 22 bytes, Stack size 24 bytes, noretval__2printf.o(.text))
[Stack]

- Max Depth = 128 + Unknown Stack Size
- Call Chain = __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> _printf_char_file

[Called By]

- >> main (via Veneer)
- >> CheckProtection (via Veneer)
- >> WaitSdConn (via Veneer)
- >> timeCounter (via Veneer)
- >> RTT_SetAlarm (via Veneer)
- >> RTT_EnableIT (via Veneer)
- >> ADC_DisableIt (via Veneer)
- >> ADC_EnableIt (via Veneer)
- >> ADC_GetConvertedData (via Veneer)
- >> ADC_DisableChannel (via Veneer)
- >> ADC_EnableChannel (via Veneer)
- >> ADC_Initialize (via Veneer)
- >> ADC_CfgModeReg (via Veneer)
- >> SDSPI_SendCommand (via Veneer)
- >> SDSPI_Close (via Veneer)
- >> SD_Stop (via Veneer)
- >> SD_Init (via Veneer)
- >> SD_SPI_Init (via Veneer)
- >> SD_WriteBlock (via Veneer)
- >> SD_ReadBlock (via Veneer)
- >> SD_SPI_R1b (via Veneer)
- >> SendCommand (via Veneer)

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

- Max Depth = 24 + Unknown Stack Size
- Call Chain = __printf

[Calls]

- >> _printf_percent (via Veneer)
- >> __ARM_common_call_via_r2
- >> __ARM_common_call_via_r1

[Called By]

- >> _printf_char_common

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

- Max Depth = 16
- Call Chain = _printf_str

[Calls]

- >> _printf_pre_padding (Weak Reference)
- >> _printf_post_padding (Weak Reference)
- >> __ARM_common_call_via_r2

[Called By]

- >> _printf_cs_common

_printf_int_dec (Thumb, 94 bytes, Stack size 32 bytes, _printf_dec.o(.text))
[Stack]

- Max Depth = 72
- Call Chain = _printf_int_dec ⇒ _printf_int_common

[Calls]

- >> __rt_udiv10 (via Veneer)
- >> _printf_int_common
- >> _printf_truncate_unsigned (Weak Reference)
- >> _printf_truncate_signed (Weak Reference)

[Called By]

- >> _printf_u (via Veneer)
- >> _printf_d (via Veneer)

__aeabi_memset (ARM, 16 bytes, Stack size 0 bytes, aeabi_memset.o(.text))
[Calls]

- >> _memset

[Called By]

- >> SDSPI_Read

__aeabi_memclr4 (ARM, 0 bytes, Stack size 4 bytes, rt_memclr_w.o(.text))
[Stack]

- Max Depth = 4
- Call Chain = __aeabi_memclr4

[Called By]

- >> main
- >> SD_Init
- >> ContinuousWrite
- >> ContinuousRead
- >> Acmd41
- >> Cmd59
- >> Cmd58
- >> Cmd55
- >> Cmd25
- >> Cmd18
- >> Cmd16
- >> Cmd13
- >> Cmd12
- >> Cmd9
- >> Cmd8
- >> Cmd1
- >> Cmd0
- >> Pon

__aeabi_memclr8 (ARM, 0 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED)

__rt_memclr_w (ARM, 84 bytes, Stack size 4 bytes, rt_memclr_w.o(.text), UNUSED)

_memset_w (ARM, 0 bytes, Stack size unknown bytes, rt_memclr_w.o(.text), UNUSED)
[Called By]

- >> __rt_memclr

__aeabi_idiv (ARM, 0 bytes, Stack size 8 bytes, aeabi_sdiv.o(.text), UNUSED)

__aeabi_idivmod (ARM, 384 bytes, Stack size 8 bytes, aeabi_sdiv.o(.text), UNUSED)

_printf_int_common (Thumb, 186 bytes, Stack size 40 bytes, _printf_intcommon.o(.text))
[Stack]

- Max Depth = 40
- Call Chain = _printf_int_common

[Calls]

- >> _printf_pre_padding (Weak Reference)
- >> _printf_post_padding (Weak Reference)
- >> __ARM_common_call_via_r2

[Called By]

- >> _printf_int_dec

_printf_cs_common (Thumb, 26 bytes, Stack size 8 bytes, _printf_char.o(.text))
[Stack]

- Max Depth = 24
- Call Chain = _printf_cs_common ⇒ _printf_str

[Calls]

- >> _printf_mbtowc (Weak Reference)
- >> _printf_str

[Called By]

- >> _printf_string
- >> _printf_char

_printf_char (Thumb, 16 bytes, Stack size 0 bytes, _printf_char.o(.text), UNUSED)
[Calls]

- >> _printf_cs_common

_printf_string (Thumb, 8 bytes, Stack size 0 bytes, _printf_char.o(.text))
[Stack]

- Max Depth = 24
- Call Chain = _printf_string ⇒ _printf_cs_common ⇒ _printf_str

[Calls]

- >> _printf_cs_common

[Called By]

- >> _printf_s (via Veneer)

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

- Max Depth = 104 + Unknown Stack Size
- Call Chain = _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> ferror (via Veneer)
- >> _printf_char_common

[Called By]

- >> __2printf

__aeabi_memclr (ARM, 0 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)

__rt_memclr (ARM, 64 bytes, Stack size 0 bytes, rt_memclr.o(.text), UNUSED)
[Calls]

- >> _memset_w

_memset (ARM, 0 bytes, Stack size unknown bytes, rt_memclr.o(.text))
[Called By]

- >> __aeabi_memset

__rt_udiv10 (ARM, 44 bytes, Stack size 0 bytes, rtudiv10.o(.text))
[Called By]

- >> _printf_int_dec (via Veneer)

_printf_char_common (Thumb, 34 bytes, Stack size 64 bytes, _printf_char_common.o(.text))
[Stack]

- Max Depth = 88 + Unknown Stack Size
- Call Chain = _printf_char_common ⇒ __printf

[Calls]

- >> __printf

[Called By]

- >> _printf_char_file

exit (Thumb, 12 bytes, Stack size 0 bytes, exit.o(.text))
[Calls]

- >> __rt_exit (via Veneer)
- >> _call_atexit_fns (Weak Reference)

[Called By]

- >> __rt_entry_main

__rt_fp_status_addr (ARM, 12 bytes, Stack size 0 bytes, rt_fp_status_addr_intlibspace.o(.text))
[Called By]

- >> _fp_init

__aeabi_uidiv (ARM, 0 bytes, Stack size 0 bytes, aeabi_sdiv.o(.text_udiv), UNUSED)

__aeabi_uidivmod (ARM, 36 bytes, Stack size 0 bytes, aeabi_sdiv.o(.text_udiv))
[Calls]

- >> __arm_div_large
- >> __arm_div2
- >> __arm_div5
- >> __arm_div8

[Called By]

- >> ConvHex2mV
- >> ADC_Initialize
- >> DBGU_Configure

__ARM_common_call_via_r1 (Thumb, 2 bytes, Stack size 0 bytes, __printf.o(i.__ARM_common_call_via_r1))
[Called By]

- >> __printf

__ARM_common_call_via_r2 (Thumb, 2 bytes, Stack size 0 bytes, __printf.o(i.__ARM_common_call_via_r2))
[Called By]

- >> _printf_int_common
- >> _printf_str
- >> __printf

_fp_init (ARM, 24 bytes, Stack size 8 bytes, fpinit.o(x$fpl$fpinit))
[Stack]

- Max Depth = 8
- Call Chain = _fp_init

[Calls]

- >> __rt_fp_status_addr

[Called By]

- >> __rt_lib_init (via Veneer)

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

### Local Symbols

SendCommand (ARM, 208 bytes, Stack size 24 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 216 + Unknown Stack Size
- Call Chain = SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)
- >> SDSPI_WaitDataBusy
- >> SDSPI_Wait
- >> SDSPI_SendCommand
- >> SDSPI_NCS
- >> SDSPI_IsTxComplete

[Called By]

- >> ContinuousWrite
- >> ContinuousRead
- >> Acmd41
- >> Cmd59
- >> Cmd58
- >> Cmd55
- >> Cmd25
- >> Cmd18
- >> Cmd16
- >> Cmd13
- >> Cmd12
- >> Cmd9
- >> Cmd8
- >> Cmd1
- >> Cmd0
- >> Pon

SD_SPI_R1 (ARM, 48 bytes, Stack size 4 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 4
- Call Chain = SD_SPI_R1

[Calls]

- >> DecodeR1

[Called By]

- >> Acmd41
- >> Cmd59
- >> Cmd55
- >> Cmd25
- >> Cmd18
- >> Cmd16
- >> Cmd9
- >> Cmd1
- >> Cmd0
- >> Pon

SD_SPI_R1b (ARM, 68 bytes, Stack size 8 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 136 + Unknown Stack Size
- Call Chain = SD_SPI_R1b ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)
- >> DecodeR1

[Called By]

- >> Cmd12

SD_SPI_R2 (ARM, 68 bytes, Stack size 4 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 4
- Call Chain = SD_SPI_R2

[Calls]

- >> DecodeR2
- >> DecodeR1

[Called By]

- >> Cmd13

SD_SPI_R3 (ARM, 68 bytes, Stack size 0 bytes, sdmmc_spi.o(.text))
[Called By]

- >> Cmd58

SD_SPI_R7 (ARM, 84 bytes, Stack size 0 bytes, sdmmc_spi.o(.text))
[Called By]

- >> Cmd8

Pon (ARM, 132 bytes, Stack size 24 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 240 + Unknown Stack Size
- Call Chain = Pon ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R1
- >> SendCommand

[Called By]

- >> SD_Init

Cmd0 (ARM, 88 bytes, Stack size 24 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 240 + Unknown Stack Size
- Call Chain = Cmd0 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R1
- >> SendCommand

[Called By]

- >> SD_SPI_Init

Cmd1 (ARM, 112 bytes, Stack size 24 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 240 + Unknown Stack Size
- Call Chain = Cmd1 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R1
- >> SendCommand

[Called By]

- >> SD_SPI_Init

Cmd8 (ARM, 148 bytes, Stack size 32 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 248 + Unknown Stack Size
- Call Chain = Cmd8 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R7
- >> SendCommand

[Called By]

- >> SD_SPI_Init

Cmd9 (ARM, 212 bytes, Stack size 40 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 256 + Unknown Stack Size
- Call Chain = Cmd9 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R1
- >> SendCommand

[Called By]

- >> SD_SPI_Init

Cmd12 (ARM, 96 bytes, Stack size 24 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 240 + Unknown Stack Size
- Call Chain = Cmd12 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R1b
- >> SendCommand

[Called By]

- >> SD_Stop
- >> MoveToTransferState

Cmd13 (ARM, 92 bytes, Stack size 24 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 240 + Unknown Stack Size
- Call Chain = Cmd13 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R2
- >> SendCommand

[Called By]

- >> MoveToTransferState

Cmd16 (ARM, 96 bytes, Stack size 24 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 240 + Unknown Stack Size
- Call Chain = Cmd16 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R1
- >> SendCommand

[Called By]

- >> SD_Init

Cmd18 (ARM, 132 bytes, Stack size 32 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 248 + Unknown Stack Size
- Call Chain = Cmd18 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R1
- >> SendCommand

[Called By]

- >> MoveToTransferState

Cmd25 (ARM, 128 bytes, Stack size 32 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 248 + Unknown Stack Size
- Call Chain = Cmd25 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R1
- >> SendCommand

[Called By]

- >> MoveToTransferState

Cmd55 (ARM, 88 bytes, Stack size 24 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 240 + Unknown Stack Size
- Call Chain = Cmd55 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R1
- >> SendCommand

[Called By]

- >> Acmd41

Cmd58 (ARM, 96 bytes, Stack size 32 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 248 + Unknown Stack Size
- Call Chain = Cmd58 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R3
- >> SendCommand

[Called By]

- >> SD_SPI_Init

Cmd59 (ARM, 100 bytes, Stack size 24 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 240 + Unknown Stack Size
- Call Chain = Cmd59 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SD_SPI_R1
- >> SendCommand

[Called By]

- >> SD_SPI_Init

Acmd41 (ARM, 248 bytes, Stack size 32 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 272 + Unknown Stack Size
- Call Chain = Acmd41 ⇒ Cmd55 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> Cmd55
- >> SD_SPI_R1
- >> SendCommand

[Called By]

- >> SD_SPI_Init

ContinuousRead (ARM, 84 bytes, Stack size 24 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 240 + Unknown Stack Size
- Call Chain = ContinuousRead ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SendCommand

[Called By]

- >> SD_ReadBlock

ContinuousWrite (ARM, 92 bytes, Stack size 24 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 240 + Unknown Stack Size
- Call Chain = ContinuousWrite ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __aeabi_memclr4
- >> SendCommand

[Called By]

- >> SD_WriteBlock

MoveToTransferState (ARM, 392 bytes, Stack size 40 bytes, sdmmc_spi.o(.text))
[Stack]

- Max Depth = 288 + Unknown Stack Size
- Call Chain = MoveToTransferState ⇒ Cmd25 ⇒ SendCommand ⇒ SDSPI_SendCommand ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> SDSPI_WaitDataBusy
- >> SDSPI_StopTranToken
- >> Cmd25
- >> Cmd18
- >> Cmd13
- >> Cmd12

[Called By]

- >> SD_WriteBlock
- >> SD_ReadBlock

PIO_SetPeripheralA (ARM, 36 bytes, Stack size 0 bytes, pio.o(.text))
[Called By]

- >> PIO_Configure

PIO_SetPeripheralB (ARM, 36 bytes, Stack size 0 bytes, pio.o(.text))
[Called By]

- >> PIO_Configure

PIO_SetInput (ARM, 56 bytes, Stack size 0 bytes, pio.o(.text))
[Called By]

- >> PIO_Configure

PIO_SetOutput (ARM, 80 bytes, Stack size 0 bytes, pio.o(.text))
[Called By]

- >> PIO_Configure

BOARD_GetRemap (ARM, 60 bytes, Stack size 0 bytes, board_memories.o(.text))
[Called By]

- >> BOARD_RemapFlash
- >> BOARD_RemapRam

label (ARM, 0 bytes, Stack size unknown bytes, board_cstartup_keil.o(cstartup))
[Address Reference Count : 1]

- board_cstartup_keil.o(cstartup)

ADC_CfgModeReg (ARM, 68 bytes, Stack size 16 bytes, adc.o(.text))
[Stack]

- Max Depth = 144 + Unknown Stack Size
- Call Chain = ADC_CfgModeReg ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)

[Called By]

- >> ADC_Initialize

ConvHex2mV (ARM, 32 bytes, Stack size 8 bytes, main.o(.text), UNUSED)
[Calls]

- >> __aeabi_uidivmod

timeCounter (ARM, 52 bytes, Stack size 24 bytes, main.o(.text))
[Stack]

- Max Depth = 152 + Unknown Stack Size
- Call Chain = timeCounter ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf

[Calls]

- >> __2printf (via Veneer)

[Called By]

- >> main

__arm_div8 (ARM, 0 bytes, Stack size unknown bytes, aeabi_sdiv.o(.text))
[Called By]

- >> __aeabi_uidivmod

__arm_div5 (ARM, 0 bytes, Stack size unknown bytes, aeabi_sdiv.o(.text))
[Called By]

- >> __aeabi_uidivmod

__arm_div2 (ARM, 0 bytes, Stack size unknown bytes, aeabi_sdiv.o(.text))
[Called By]

- >> __aeabi_uidivmod

__arm_div_large (ARM, 0 bytes, Stack size unknown bytes, aeabi_sdiv.o(.text))
[Called By]

- >> __aeabi_uidivmod

_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

_call_atexit_fns (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]

- >> exit

_printf_mbtowc (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]

- >> _printf_cs_common

_printf_post_padding (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]

- >> _printf_int_common
- >> _printf_str

_printf_pre_padding (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]

- >> _printf_int_common
- >> _printf_str

_printf_truncate_signed (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]

- >> _printf_int_dec

_printf_truncate_unsigned (ARM, 0 bytes, Stack size 0 bytes, UNDEFINED)
[Called By]

- >> _printf_int_dec