Static Call Graph for image .\Obj\ethernet_bootloader.axf



#<CALLGRAPH># ARM Linker, RVCT4.0 [Build 728]: Last Updated: Tue Aug 03 11:28:13 2010

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

Call chain for Maximum Stack Depth:

sbl_main ⇒ enter_isp ⇒ isp_cmd_loop ⇒ exec_isp_cmd ⇒ read ⇒ getline ⇒ emac_getline ⇒ filter_pass ⇒ same_mac

Functions with no stack information

Mutually Recursive functions

  • Undef_Handler   ⇒   Undef_Handler
  • SWI_Handler   ⇒   SWI_Handler
  • PAbt_Handler   ⇒   PAbt_Handler
  • DAbt_Handler   ⇒   DAbt_Handler
  • IRQ_Handler   ⇒   IRQ_Handler
  • FIQ_Handler   ⇒   FIQ_Handler

    Function Pointers

    Global Symbols

    Reset_Handler (ARM, 0 bytes, Stack size unknown bytes, lpc2300.o(RESET))
    [Address Reference Count : 1]

    init_PLL (Thumb, 116 bytes, Stack size 12 bytes, board_init.o(.text))

    [Stack]


    [Called By]

    init_MAM (Thumb, 18 bytes, Stack size 0 bytes, board_init.o(.text))

    [Called By]

    init_PCB (Thumb, 18 bytes, Stack size 0 bytes, board_init.o(.text))

    [Called By]

    VectorsRemap (Thumb, 2 bytes, Stack size 0 bytes, board_init.o(.text), UNUSED)

    board_init (Thumb, 30 bytes, Stack size 8 bytes, board_init.o(.text))

    [Stack]


    [Calls]
    [Called By]

    enter_isp (Thumb, 20 bytes, Stack size 8 bytes, sbl_main.o(.text))

    [Stack]


    [Calls]
    [Called By]

    sbl_main (Thumb, 38 bytes, Stack size 8 bytes, sbl_main.o(.text))

    [Stack]


    [Calls]
    [Address Reference Count : 1]

    init_comms (Thumb, 12 bytes, Stack size 8 bytes, comms.o(.text))

    [Stack]


    [Calls]
    [Called By]

    getline (Thumb, 8 bytes, Stack size 8 bytes, comms.o(.text))

    [Stack]


    [Calls]
    [Called By]

    sendline_crlf (Thumb, 8 bytes, Stack size 8 bytes, comms.o(.text))

    [Stack]


    [Calls]
    [Called By]

    comm_handshake (Thumb, 8 bytes, Stack size 8 bytes, comms.o(.text))

    [Stack]


    [Calls]
    [Called By]

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

    __aeabi_uidivmod (ARM, 28 bytes, Stack size 0 bytes, aeabi_sdiv.o(.text_udiv))

    [Calls]


    [Called By]

    __ARM_common_call_via_r0 (Thumb, 2 bytes, Stack size 0 bytes, isp_iap.o(i.__ARM_common_call_via_r0))

    [Called By]

    __ARM_common_call_via_r2 (Thumb, 2 bytes, Stack size 0 bytes, isp_iap.o(i.__ARM_common_call_via_r2))

    [Called By]

    is_div (Thumb, 10 bytes, Stack size 0 bytes, isp_iap.o(.text))

    [Called By]

    __rt_div0 (Thumb, 2 bytes, Stack size 0 bytes, isp_iap.o(.text), UNUSED)

    str_cmp (Thumb, 34 bytes, Stack size 4 bytes, isp_iap.o(.text))

    [Stack]


    [Called By]

    a_to_i (Thumb, 44 bytes, Stack size 8 bytes, isp_iap.o(.text))

    [Stack]


    [Called By]

    i_to_a (Thumb, 60 bytes, Stack size 16 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    run_isp (Thumb, 42 bytes, Stack size 8 bytes, isp_iap.o(.text), UNUSED)

    [Calls]

    param_check (Thumb, 156 bytes, Stack size 20 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    iap_entry (Thumb, 4 bytes, Stack size 0 bytes, isp_iap.o(.text), UNUSED)

    decode (Thumb, 16 bytes, Stack size 0 bytes, isp_iap.o(.text))

    [Called By]

    uudecode (Thumb, 180 bytes, Stack size 20 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    encode (Thumb, 16 bytes, Stack size 0 bytes, isp_iap.o(.text))

    [Called By]

    uuencode (Thumb, 124 bytes, Stack size 20 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    write_to_ram (Thumb, 232 bytes, Stack size 40 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    read (Thumb, 186 bytes, Stack size 40 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    go_cmd (Thumb, 118 bytes, Stack size 16 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    unlock (Thumb, 52 bytes, Stack size 16 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    prepare_sector (Thumb, 80 bytes, Stack size 16 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    copy (Thumb, 156 bytes, Stack size 24 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    erase (Thumb, 178 bytes, Stack size 24 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    blank_check (Thumb, 142 bytes, Stack size 16 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    compare_mem (Thumb, 120 bytes, Stack size 16 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    tokenize (Thumb, 100 bytes, Stack size 36 bytes, isp_iap.o(.text))

    [Stack]


    [Called By]

    enable_interrupts (Thumb, 6 bytes, Stack size 0 bytes, isp_iap.o(.text), UNUSED)

    disable_interrupts (Thumb, 6 bytes, Stack size 0 bytes, isp_iap.o(.text), UNUSED)

    execute_user_code (Thumb, 6 bytes, Stack size 0 bytes, isp_iap.o(.text))

    [Called By]

    user_code_present (Thumb, 44 bytes, Stack size 8 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    check_isp_entry_pin (Thumb, 16 bytes, Stack size 0 bytes, isp_iap.o(.text))

    [Called By]

    exec_isp_cmd (Thumb, 258 bytes, Stack size 16 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    isp_cmd_loop (Thumb, 198 bytes, Stack size 32 bytes, isp_iap.o(.text))

    [Stack]


    [Calls]
    [Called By]

    write_PHY (Thumb, 32 bytes, Stack size 0 bytes, emac.o(.text))

    [Called By]

    read_PHY (Thumb, 42 bytes, Stack size 0 bytes, emac.o(.text))

    [Called By]

    ReadFrame_EMAC (Thumb, 12 bytes, Stack size 0 bytes, emac.o(.text))

    [Called By]

    CopyFromFrame_EMAC (Thumb, 42 bytes, Stack size 8 bytes, emac.o(.text))

    [Stack]


    [Calls]
    [Called By]

    same_mac (Thumb, 28 bytes, Stack size 4 bytes, emac.o(.text))

    [Stack]


    [Called By]

    filter_pass (Thumb, 54 bytes, Stack size 12 bytes, emac.o(.text))

    [Stack]


    [Calls]
    [Called By]

    WriteFrame_EMAC (Thumb, 12 bytes, Stack size 0 bytes, emac.o(.text))

    [Called By]

    CopyToFrame_EMAC (Thumb, 30 bytes, Stack size 12 bytes, emac.o(.text))

    [Stack]


    [Calls]
    [Called By]

    chksum16 (Thumb, 54 bytes, Stack size 4 bytes, emac.o(.text))

    [Stack]


    [Called By]

    init_emac (Thumb, 504 bytes, Stack size 20 bytes, emac.o(.text))

    [Stack]


    [Calls]
    [Called By]

    emac_getline (Thumb, 346 bytes, Stack size 32 bytes, emac.o(.text))

    [Stack]


    [Calls]
    [Called By]

    emac_sendline_crlf (Thumb, 230 bytes, Stack size 24 bytes, emac.o(.text))

    [Stack]


    [Calls]
    [Called By]

    emac_handshake (Thumb, 110 bytes, Stack size 48 bytes, emac.o(.text))

    [Stack]


    [Calls]
    [Called By]

    Timer_init (Thumb, 22 bytes, Stack size 0 bytes, timer.o(.text))

    [Called By]

    Timer_DeInit (Thumb, 22 bytes, Stack size 0 bytes, timer.o(.text))

    [Called By]

    Timer_GetTimestamp (Thumb, 8 bytes, Stack size 0 bytes, timer.o(.text))

    [Called By]

    Timer_HasTimestampExpired (Thumb, 36 bytes, Stack size 0 bytes, timer.o(.text))

    [Called By]

    Timer_Delay (Thumb, 24 bytes, Stack size 4 bytes, timer.o(.text))

    [Stack]


    [Calls]
    [Called By]

    __aeabi_memcpy (ARM, 0 bytes, Stack size 0 bytes, rt_memcpy.o(.text))

    [Called By]

    __rt_memcpy (ARM, 212 bytes, Stack size 0 bytes, rt_memcpy.o(.text), UNUSED)

    [Calls]

    _memcpy_lastbytes (ARM, 0 bytes, Stack size unknown bytes, rt_memcpy.o(.text), UNUSED)

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

    __aeabi_memcpy4 (ARM, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)

    [Called By]

    __aeabi_memcpy8 (ARM, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)

    __rt_memcpy_w (ARM, 100 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)

    _memcpy_lastbytes_aligned (ARM, 0 bytes, Stack size unknown bytes, rt_memcpy_w.o(.text), UNUSED)

    __ARM_common_switch8 (ARM, 24 bytes, Stack size 0 bytes, isp_iap.o(i.__ARM_common_switch8))

    [Called By]

    Local Symbols

    Undef_Handler (ARM, 4 bytes, Stack size unknown bytes, lpc2300.o(RESET))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    SWI_Handler (ARM, 4 bytes, Stack size unknown bytes, lpc2300.o(RESET))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    PAbt_Handler (ARM, 4 bytes, Stack size unknown bytes, lpc2300.o(RESET))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    DAbt_Handler (ARM, 4 bytes, Stack size unknown bytes, lpc2300.o(RESET))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    IRQ_Handler (ARM, 4 bytes, Stack size unknown bytes, lpc2300.o(RESET))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    FIQ_Handler (ARM, 4 bytes, Stack size unknown bytes, lpc2300.o(RESET))

    [Calls]


    [Called By]
    [Address Reference Count : 1]

    __arm_div8 (ARM, 0 bytes, Stack size unknown bytes, aeabi_sdiv.o(.text))

    [Called By]

    __arm_div4 (ARM, 0 bytes, Stack size unknown bytes, aeabi_sdiv.o(.text))

    [Called By]

    __arm_div_large (ARM, 0 bytes, Stack size unknown bytes, aeabi_sdiv.o(.text))

    [Called By]

    Undefined Global Symbols