iMX6 UBOOT emmc trouble

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

iMX6 UBOOT emmc trouble

286 Views
mariosan
Contributor II

Hello all : I work on a custom iMX6 board (Dual/Quad) and I use U-Boot 2015.04 :
recently we have changed the emmc with a SanDisk SDINBDG4-16G type
(interface 5.1 HS400) My problem is that UBOOT is correctly started but it refuse
to recognize the emmc and fails to boot OS (SD4).
I use an external microSD card to boot an OS and I can access also to the eMMC,
format it and load a new UBOOT.

The UBOOT emmc command sequence seems to be correct, but always fails on CMD2
(CMD_ALL_SEND_CID) with a CRC FAILURE, so it is not able to read any data.

This is the emmc UBOOT sequence:
CMD_SEND:0 ARG= 0x00000000 MMC_RSP_NONE OK (RESET)
CMD_SEND:8 ARG= 0x000001AA MMC_RSP_R1,5,6,7= ??? TIMEOUT
CMD_SEND:55 ARG= 0x00000000 MMC_RSP_R1,5,6,7= ??? TIMEOUT

CMD_SEND:0 ARG= 0x00000000 MMC_RSP_NONE OK (reset)
CMD_SEND:1 ARG= 0x00000000 MMC_RSP_R3,4 = 0x007F8000 OK (op cond)
CMD_SEND:1 ARG= 0x40300000 MMC_RSP_R3,4 = 0x007F8000 OK
CMD_SEND:1 ARG= 0x40300000 MMC_RSP_R3,4 = 0x007F8000 OK
CMD_SEND:1 ARG= 0x40300000 MMC_RSP_R3,4 = 0x007F8000 OK
CMD_SEND:1 ARG= 0x40300000 MMC_RSP_R3,4 = 0x007F8000 OK
CMD_SEND:1 ARG= 0x40300000 MMC_RSP_R3,4 = 0xC07F8000 OK (READY)

CMD_SEND:2 ARG= 0x00000000 MMC_RSP_R2 = ??? CRC FAILURE: IRQSTAT=20001

Clock is set to 400Khz, and bus width is set to 1bit
Using a ISSI emmc model with a 5.0 interface works fine.
It seems a bug into UBOOT :
Do you have an idea of where could be the problem ?
Best regards
Mario

 

0 Kudos
2 Replies

273 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello,

Can follow the below steps to build U-boot for eMMC(refer  Linux user guide).

  • Add  UBOOT_CONFIG = "emmc" in <yocto_build>/conf/local.conf file.
  • $ MACHINE=<machine name> bitbake -c deploy u-boot-imx
    • eg. MACHINE=imx6qevk bitbake -c deploy u-boot-imx           

Erase the  eMMC and burn again with just uboot to see if the problem is uboot.

 

Regards

0 Kudos

266 Views
mariosan
Contributor II

Hello, Thank for the answer, and Yes, the problem is in UBOOT: also with a scratch
device the problem is the same: CRC FAULT when execute CMD2 (CID) to identify
the device.
I've checked the pin MUXING , added delay but nothing has worked...
(BTW I do not use Yocto to build the UBOOT, but that can't be the problem)
Any other idea?
Maybe the emmc will requires some other settings ?

Thanks again
Mario

 

 

0 Kudos