Hi,
I am having issue on booting my MCIMX6Q-SDB/SabreSD board from the on-board eMMC (uSDHC4). I have used the MfgTool to flash u-boot, linux kernel, dtb, and rootfs into the eMMC, and it seems to work without error. However setting the SW6 to 010xxx11 (msb->lsb), I can't see the board booting at all. I can see u-boot working when using SD Card attached to SD3(J507)/SD2(J500) on the board by setting SW6 to 010xxx01/010xxx10 and even boot the linux kernel from SD card attached SD2.
After the system boots from SD2, I tried to examine the attached devices, I can see that the eMMC is listed under /dev and event mounted by the system:
root@imx6qdlsolo:~# ls -l /dev/mmcblk*
brw-rw---- 1 root disk 179, 0 Apr 5 00:15 /dev/mmcblk0
brw-rw---- 1 root disk 179, 1 Apr 5 00:15 /dev/mmcblk0p1
brw-rw---- 1 root disk 179, 2 Apr 5 00:15 /dev/mmcblk0p2
brw-rw---- 1 root disk 179, 8 Apr 5 00:15 /dev/mmcblk1
brw-rw---- 1 root disk 179, 16 Apr 5 00:15 /dev/mmcblk1boot0
brw-rw---- 1 root disk 179, 24 Apr 5 00:15 /dev/mmcblk1boot1
brw-rw---- 1 root disk 179, 9 Apr 5 00:15 /dev/mmcblk1p1
brw-rw---- 1 root disk 179, 10 Apr 5 00:15 /dev/mmcblk1p2
brw-rw---- 1 root disk 179, 32 Apr 5 00:15 /dev/mmcblk1rpmb
root@imx6qdlsolo:~# mount
rootfs on / type rootfs (rw)
/dev/root on / type ext3 (rw,relatime,errors=continue,user_xattr,acl,barrier=1,data=ordered)
devtmpfs on /dev type devtmpfs (rw,relatime,size=348840k,nr_inodes=87210,mode=755)
proc on /proc type proc (rw,relatime)
tmpfs on /mnt/.psplash type tmpfs (rw,relatime,size=40k)
sysfs on /sys type sysfs (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)
tmpfs on /var/volatile type tmpfs (rw,relatime)
devpts on /dev/pts type devpts (rw,relatime,gid=5,mode=620)
/dev/mmcblk1p2 on /media/mmcblk1p2 type ext4 (rw,relatime,data=ordered)
/dev/mmcblk1p1 on /media/mmcblk1p1 type vfat (rw,relatime,gid=6,fmask=0007,dmask=0007,allow_utime=0020,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
/dev/mmcblk0p1 on /media/mmcblk0p1 type vfat (rw,relatime,gid=6,fmask=0007,dmask=0007,allow_utime=0020,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
its partitions even seems to contain correct files (FAT first partition containing kernel image and DTB, ext4 second partition containing rootfs):
root@imx6qdlsolo:~# ls -l /media/mmcblk1p1
-rwxrwx--- 1 root disk 47179 Jan 1 1980 imx6dl-sabresd.dtb
-rwxrwx--- 1 root disk 47179 Jan 1 1980 imx6q-sabresd.dtb
-rwxrwx--- 1 root disk 5260936 Jan 1 1980 uImage
root@imx6qdlsolo:~# ls -l /media/mmcblk1p2
drwxr-xr-x 2 root root 4096 Jan 1 1970 bin
drwxr-xr-x 2 root root 4096 Jan 1 1970 boot
drwxr-xr-x 2 root root 4096 Jan 1 1970 dev
drwxr-xr-x 44 root root 4096 Jan 1 1970 etc
drwxr-sr-x 4 root root 4096 Jan 1 1970 home
drwxr-xr-x 7 root root 4096 Jan 1 1970 lib
drwx------ 2 root root 16384 Jan 1 1970 lost+found
drwxr-xr-x 2 root root 4096 Apr 4 22:42 media
drwxr-xr-x 3 root root 4096 Jan 1 1970 mnt
drwxr-xr-x 6 root root 4096 Jan 1 1970 opt
drwxr-xr-x 2 root root 4096 Apr 4 22:42 proc
drwxr-xr-x 2 root root 4096 Apr 4 22:42 run
drwxr-xr-x 2 root root 4096 Jan 1 1970 sbin
drwxr-xr-x 2 root root 4096 Apr 4 22:42 sys
drwxrwxrwt 2 root root 4096 Apr 4 22:42 tmp
drwxr-xr-x 2 root root 4096 Jan 1 1970 unit_tests
drwxr-xr-x 11 root root 4096 Jan 1 1970 usr
drwxr-xr-x 8 root root 4096 Jan 1 1970 var
I event checked whether the IVT is correctly installed:
root@imx6qdlsolo:~# hexdump -C -n 32 -s 1024 /dev/mmcblk1
00000400 d1 00 20 40 00 00 80 17 00 00 00 00 2c b0 7f 17 |.. @........,...|
00000410 20 b0 7f 17 00 b0 7f 17 00 00 00 00 00 00 00 00 | ...............|
Everything seems to look fine. So the question is what can I do to debug why booting from the eMMC is not working.
Thanks.
Hi Leo
please try with Demo Images
and MFG Tools
use mfgtool2-yocto-mx-sabresd-emmc.vbs script
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Igor,
thanks for the reply. As mentioned above, I actually did use the mfgtool2 to download the demo image, and it seems to work also as I can see the eMMC contains the image files and rootfs.
Is there anything I can debug further to know whether it is a hardware fault or not?
Thanks.
Hi Leo
one can attach jtag debugger and dump 0x907400 (ROM uses 0x907000 as starting address),
one should see IVT header here if the emmc access is ok. Similar procedure is described on
https://community.freescale.com/thread/307723
Best regards
igor