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.

TMDSEVM437X: How to enable eMMC in u-boot

Part Number: TMDSEVM437X

Hello,

I am trying to access eMMC on this EVK in u-boot and followed instructions as per the thread

$/support/processors/f/791/t/518624?AM437x-eMMC-support-in-U-boot

Modified mux.c, am43xx_evm_defconfig, am437x-gp-evm.dts, am437x-gp-evm-u-boot.dtsi files.

However, it is reporting an error that "Card did not respond to voltage select".

=> mmc rescan
=> mmc list
OMAP SD/MMC: 0 (SD)
OMAP SD/MMC: 1
=> mmc dev 1
Card did not respond to voltage select!

mux.c has the following settings,

static struct module_pin_mux emmc_pin_mux[] = {
{OFFSET(gpmc_ad0), (MODE(1) | PULLUP_EN | RXACTIVE)}, /* AD0 */
{OFFSET(gpmc_ad1), (MODE(1) | PULLUP_EN | RXACTIVE)}, /* AD1 */
{OFFSET(gpmc_ad2), (MODE(1) | PULLUP_EN | RXACTIVE)}, /* AD2 */
{OFFSET(gpmc_ad3), (MODE(1) | PULLUP_EN | RXACTIVE)}, /* AD3 */
{OFFSET(gpmc_ad4), (MODE(1) | PULLUP_EN | RXACTIVE)}, /* AD4 */
{OFFSET(gpmc_ad5), (MODE(1) | PULLUP_EN | RXACTIVE)}, /* AD5 */
{OFFSET(gpmc_ad6), (MODE(1) | PULLUP_EN | RXACTIVE)}, /* AD6 */
{OFFSET(gpmc_ad7), (MODE(1) | PULLUP_EN | RXACTIVE)}, /* AD7 */

{OFFSET(gpmc_csn1), (MODE(2) | PULLUP_EN)}, /* gpmc_csn1.mmc1_clk */
{OFFSET(gpmc_csn2), (MODE(2) | PULLUP_EN)}, /* gpmc_csn2.mmc1_cmd */

{OFFSET(spi2_cs0), (MODE(7) | PULLUP_EN)}, /* spi2_cs0.gpio0_23 SEL_eMMCorNANDn */
{-1},
};

Similar changes to kernel is working fine and able to see the eMMC after the kernel boots.

Is there any other changes needed on the u-boot side to properly enable eMMC?

Looking forward for your support,

Thanks