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.

AM437x eMMC boot query

Other Parts Discussed in Thread: AM4378

Hello,

I am developing a board based on the TI AM4378 processor. I would like to put the operating system on eMMC and the board should boot from eMMC.
I have the AM437x GP EVM developed by TI and supplied by Mistral. I understand that on this board, eMMC boot is not possible. I got this information from the following link on the e2e forum :  e2e.ti.com/.../1378982
On checking the technical reference manual, I find that for MMC1 boot, the GPMC_AD[8:11] pins must be connected as data pins and GMPC_CSn1 and GPMC_CSn2 should be used as clk and cmd. Since this is not the connection in the GP EVM, eMMC boot is not possible. Is my understanding correct?
This is where my confusion starts. The forum says that the ROM code has a bug in Si Revision A of the processor chip.  So does this mean that Revision A can never boot from MMC1?
The technical reference manual does not give information specifically for Revision A or B. So, are the pin connections that are mentioned for A or B or both?
I have an AM4378 chip with me with the following part number : AM4378BZDNA100. This means that the chip is Si Revision B. Now, the question is: Is the schematic (attached) correct for booting from eMMC. The eMMC chip used is Micron with part number MTFC4GLDDQ-4M-IT and datasheet attached.
If this schematic is correct, how do I configure in the pinmux tool. Do I select "All pins of peripheral" under GPMC and then individually select only the relevant pins? And then set the SYSBOOT pins such that the order of boot is MMC0 (SD card) followed by MMC1 (eMMC)?
Please help me resolve this.
Thank You,
Rajat Rao
  • Hi,

    The pin connections for MMC1 boot given in the TRM are valid for all silicon revisions. Pinmux selection is not relevant for booting, as it's done by the ROM code. The external device must be connected to the pins named in the TRM, and SYSBOOT pins must be set as required. Note that the pin names used in the TRM are the same as the pin names used in Table 4-10 of the device datasheet, pins are named after their function for mode 0.

  • Hello,

    Thank you for your quick reply.
    Those are the pins I have connected in my schematic. Could you please go one extra step and explicitly confirm the correctness of the schematic. Namely, is the schematic attached correct for eMMC boot.

    Also, in the EVM itself if the connections had been done this way, would eMMC boot have worked?

    And, what exactly is the problem in Revision A that has been corrected in Revision B?

    Thank You,
    Rajat Rao
  • I would suggest that you connect all 8 bits of the eMMC, as the kernel driver can use 8-bit mode. Also, the level translator is unnecessary as you have the same voltage on both sides. As for revision differences, the AM437X Errata document describes the issues and for which revision they apply.