eMMC initialization fails on a custom iMX8MM board based on iMX8MM EVK DDR4

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

eMMC initialization fails on a custom iMX8MM board based on iMX8MM EVK DDR4

Jump to solution
2,174 Views
nishadkamdar
Contributor III

We have a custom IMX8MM board with a 4GB eMMC chip connected.

The eMMC does not initialize in u-boot and fails at CMD8.

Can you suggest a possible solution ?

Following is the error log with eMMC debug messages enabled:

 

u-boot=> 
u-boot=> 
u-boot=> 
u-boot=> mmc dev 2
.....
.....
.....
mmc_power_cycle [2785] ret 0

mmc_power_cycle [2790] ret 0

mmc_power_on [2760] Cannot control power
CMD_SEND:8
		ARG			 0x00000000
esdhc_send_cmd_common - 487 USDHC 

		RET			 -70
mmc_init: -70, time 268
u-boot=> 
u-boot=> 
u-boot=> 

 

Thanks for your support,

Thanks and regards,

Nishad

0 Kudos
1 Solution
2,082 Views
nishadkamdar
Contributor III

Hello Igor,

The issue has been resolved. There was a mismatch between processor and eMMC power supplies. After connecting compatible power supplies, the eMMC gets initialized.

Thanks for your continued support.

Regards,

Nishad

View solution in original post

0 Kudos
4 Replies
2,158 Views
igorpadykov
NXP Employee
NXP Employee

Hi nishadkamdar

 

from log :

"mmc_power_cycle [2785] ret 0
mmc_power_on [2760] Cannot control power"

 

issue may be related to swtiching emmc to some high speed mode, like HS200

which requires power cycling and 1.8v signalling. One can try this emmc with some

board with emmc, like i.MX8M EVK and check signals on both cases.

 

Best regards
igor

2,134 Views
nishadkamdar
Contributor III

@igorpadykov 

Thanks for the reply, but as per the log and our observation, the CMD8 fails when invoked for the 1st time.

At this point the host frequency is 25MHz that is not high speed mode. This error is seen before a command to switch to the high speed mode is sent to the eMMC device.

0 Kudos
2,111 Views
igorpadykov
NXP Employee
NXP Employee

Hi nishadkamdar

 

you can attach logic analyzer and check where error happens, use eMMC

specification as reference. Per sect.A.6.2 Switching to high-speed mode :

for switching to HS200 mode .. these steps after the bus is initialized :

- Send CMD7 with the Device’s RCA to place the Device in tran state
- Send CMD8, SEND_EXT_CSD. From the EXT_CSD the host can learn the
power class of the Device, and choose to work with a wider data bus

Also BSP version might be the problem as reported on

https://community.nxp.com/t5/i-MX-Processors/iMX6-eMMC-device-timeout-on-first-CMD8-SEND-EXT-CSD/m-p...

 

Best regards
igor

0 Kudos
2,083 Views
nishadkamdar
Contributor III

Hello Igor,

The issue has been resolved. There was a mismatch between processor and eMMC power supplies. After connecting compatible power supplies, the eMMC gets initialized.

Thanks for your continued support.

Regards,

Nishad

0 Kudos