This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Where is spl_board_init() called?

Hi,

We have a custom board based on am3358ZCE and I just started to debug it. The board hangs up after the function spl_board_init() in the evm.c. I would like to know where is spl_board_init() called so that I can continue the debugging from there. We are using the UART to load the U-boot. Thank you.

DL

  • in u-boot,

    in arch/arm/cpu/arm926ejs/start.S, "reset" calls _board_init_r_ofs which is (board_init_r - _start)

    in arch/arm/cpu/armv7/omap-common/spl.c, board_init_r() calls spl_board_init()

    This is called only during building of SPL.

    If you aresure the board hangs "after" spl_board_init(), then check for boot devices (NAND, MMC, SPI ...)

    If the board hangs during executing this function, then i2c could be failure, PMIC setup could be failing etc ... (as seen from board file)

  • Thank you very much, Gururaja. Now I can continue.

    I think the board hangs after spl_board_init(), because I saw the following message after sending u-boot-spl.bin using TeraTerm :

    "Could not probe the EEPROM; something fundamentally
                wrong on the I2C bus"

    "read_eeprom() failure"

    I have not tried to send  the u-boot.img yet.

    It displays a single letter 'C' and hangs after these messages. We don't have an I2C EEPROM on our board. Thus, these messages are expected. I'm booting through the UART.  I thought it should continuously display 'CCCC....' after receiving u-boot-spl.bin. I have not tried sending the u-boot.img yet.

    DL