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.

Is this a ROM_BOOT bug?

Hi,

I set the boot sequence of am335x board to boot[4..0]=00100, which means first UART, then MMC, and then NAND flash. But I can NOT start the board if I run reboot in the shell. It displays CCCCCCC and halt. after about 4 minute, it will restart again, and this time, the board can boot up. If I cut off the power directly, the board will boot up normally.

I inserted a MMC card trying to boot from it, the same thing happened, so it halted after it tried the UART.

Is this a bug of Boot Rom? Is there a solution or workaround?

Acturally I don't want to boot from UART, I want to try MMC first, if failed, then boot from NAND. but I can only find this boot configure that try MMC first and then NAND.

  • anyone knows about this?

    Thanks

  • Zhu,

    Please read the AM335x TRM chapter 26 carefully. 00100b boot sequence is UART0, XIP,  MMC0 NAND. Also there is another bootmode where MMC0 is the first boot device-> 10111b. Have you tried this boot mode?

  • Hi Renjith,

    Thank you for the reply. Yes, you are correct, my boot wequence is UART0, XIP, MMC0, NAND, We don't have a XIP device in out board, so I omitted it. What puzzled me is why the board can boot up by power on but can't boot up by reboot from shell.

    I read the chapter, 10111 can NOT boot from NAND, that don't match my requirement. What I need is: if there is NOT a MMC card inserted, then boot from NAND (normal operation), else boot from MMC card ( recovery operation).

    Any other ideals? Thank you very much.

    Lihua

  • Lihua, after a reboot, can you read the CONTROL_STATUS register (0x44e10040) with JTAG to see what the sysboot bits are.  It seems that the boot sequence is not what you are expecting.  Also, after a reboot, can you probe the MMC_CLK signal to see if the processor is attempting to boot from the SD card.

    Is this a custom board?

    Regards,

    James

  • Hi James,

    I don't have a usable JTAG tool against Cortex A8 by now. I can't observe any clock on MMC_CLK after I reboot.

    Yes, this is a custom board. And I also tested with a board provided by a TI agency, It shows the same problem.

    Do you have a TI's evm board? Could you please set the boot sequence to 0b00100 and test for me?

    Thank you very much for your help and suggestion.

    Best regards,

    Lihua

  • Lihua, i am not able to reproduce this on the TI EVM.  I have set the boot mode to 00100b, and it successfully reboots each time i issue the 'reboot' command in linux kernel.

    Regards,

    James

  • Hi James,

    Thank you for the valuable information. Maybe it's a board specific problem.

    Regards,

    Lihua