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.

AM3359: SPL booting from NAND Flash failed intermittently

Part Number: AM3359


Dear Experts,

We have a custom board with AM3359 running with SDK6.1, so far booting well from NAND Flash. We observed an intermittent issue that booting got failed all of sudden.

Working U-Boot SPL prints:

Load U-Boot image...
NAND Initialization done.
Waiting to load U-Boot...

and booting the U-Boot image further.

Whereas, the non working case prints got stuck at:

Load U-Boot image...

No prints observed after that.

After further debug it is understood that SPL getting stuck while configuring the GPMC registers for NAND Flash.

Please help on how to resolve this.

Thanks!

  • You may want to check SPL/u-boot NAND configurations vs the NAND device on-board.
    Some relevant SPL/u-boot files are listed below for your reference.
    - "am335x_evm.h under /include/configs/"
    - "am335x-evm.dts, am335x.dtsi under /arch/arm/dts"

    Do you have another board to check to see if the intermittent issue is correlated with HW?

  • Dear Hong,

    Thanks for your inputs.

    The U-Boot configurations are matching as per the NAND device.

    Yes, the same image is working on other HW boards. Identifying what's wrong in this HW board to be debugged. We probed the NRESETIN_OUT pin it is as expected in working and non-working boards.

    One more interesting observation is that RBL booting SPL from NAND Flash gives a confirmation of the HW NAND device is proper. 

    Any other inputs are much appreciated.

    Thanks.

  • Hi Mani,

    ti_user said:
    Yes, the same image is working on other HW boards. Identifying what's wrong in this HW board to be debugged.

    I'd agree with you the intermittent issue on the non-working board needs to be debugged.
    I uploaded a note on SPL boot flow in attachment for your reference.
    You may want to add "DEBUG" for debug print from serial terminal, or use JTAG debugger if there's JTAG connection on your board.
    Best,
    -Hong

    2158.spl_boot_flow_v1.pdf