eMMC 5.1 switch bus width 8 failed with i.MX6 custom board

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

eMMC 5.1 switch bus width 8 failed with i.MX6 custom board

Jump to solution
3,810 Views
chris_lee
Contributor II

We had problem initializing eMMC 5.1 (KingSton EMMC04G-M627-A01)

The custom board boots from SD card attached on sdhc1.

Everything works except for eMMC device.

  • The eMMC is attached on sdhc3;
  • vmmc-supply and vqmmc-supply are all fixed at 3.3V
  • Linux kernel source code (version 4.1.15, based on NXP 2.0.0 version)

As you can see from the log below, eMMC (mmc2) failed at switching bus width.

Please help, thanks.

boot log:

mmc2: SDHCI controller on 2198000.usdhc [2198000.usdhc] using ADMA
mxc_vpu 2040000.vpu_fsl: VPU initialized
mxc_vdoa 21e4000.vdoa: i.MX Video Data Order Adapter(VDOA) driver probed
Galcore version 5.0.11.41671
mmcblk0: mmc0:aaaa SC32G 29.7 GiB
mmcblk0: p1 p2
mmc2: mmc_rescan_try_freq: trying to init card at 400000 Hz
mmc2: MAN_BKOPS_EN bit is not set
mmc2: switch bus width 8, err=-110       <=== the message was added for debug
mmc2: switch bus width 4, err=-110       <=== the message was added for debug
mmc2: error -110 whilst initialising MMC card
mmc2: mmc_rescan_try_freq: trying to init card at 300000 Hz
mmc2: switch signal voltage 0, err=0
mmc2: MAN_BKOPS_EN bit is not set
mmc2: switch bus width 8, err=-110
mmc2: switch bus width 4, err=-110
mmc2: error -110 whilst initialising MMC card
mmc2: mmc_rescan_try_freq: trying to init card at 200000 Hz
caam 2100000.caam: Entropy delay = 3200
mmc2: switch signal voltage 0, err=0
caam 2100000.caam: Instantiated RNG4 SH0
caam 2100000.caam: Instantiated RNG4 SH1
caam 2100000.caam: device ID = 0x0a16010000000000 (Era -524)
mmc2: MAN_BKOPS_EN bit is not set
mmc2: switch bus width 8, err=-110
mmc2: switch bus width 4, err=-110
mmc2: error -110 whilst initialising MMC card
mmc2: mmc_rescan_try_freq: trying to init card at 100000 Hz
mmc2: switch signal voltage 0, err=0
caam 2100000.caam: job rings = 2, qi = 0
caam algorithms registered in /proc/crypto
mmc2: MAN_BKOPS_EN bit is not set
mmc2: switch bus width 8, err=-110
mmc2: switch bus width 4, err=-110
mmc2: error -110 whilst initialising MMC card

Labels (3)
0 Kudos
Reply
1 Solution
2,674 Views
igorpadykov
NXP Employee
NXP Employee

Hi Chris

one can check if all 8 emmc data lines are operating fine observing them with oscilloscope

and bare metal sdk test (can be found on SMP Enable in IMX6 )

Also one can adjust drive strength emmc/imx signals as described below or try other emmc

https://community.nxp.com/thread/332110 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

View solution in original post

0 Kudos
Reply
3 Replies
2,675 Views
igorpadykov
NXP Employee
NXP Employee

Hi Chris

one can check if all 8 emmc data lines are operating fine observing them with oscilloscope

and bare metal sdk test (can be found on SMP Enable in IMX6 )

Also one can adjust drive strength emmc/imx signals as described below or try other emmc

https://community.nxp.com/thread/332110 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply
2,674 Views
chris_lee
Contributor II

Hi igor,

Thanks for the reply.

We have fixed the issue from the help of chip vendor.

It was hardware issue.

0 Kudos
Reply
2,674 Views
benjaminblanton
Contributor II

Chris, what was your solution.  I am seeing this on one of my boards.

0 Kudos
Reply