Loading u-boot from emmc on custom i.mx6q board

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

Loading u-boot from emmc on custom i.mx6q board

1,508 Views
alexandernovik2
Contributor II

Hi, all!

I am trying to load u-boot from emmc on custom i.mx6 board. There are 2 used USDHC controllers on this board: USDHC2 for sd card and USDHC3 for emmc. I have 2 partitions on sd card (mmcblk0p1 (FAT, boot), mmcblk0p2 (ext4, root_fs)) and 4 partitions on emmc (mmcblk1, mmcblk2boot0, mmcblk3boot1, mmcblk4rpmb).

First of all, I used low-level copying to move data from sd card to the mmc first partition:

dd if=/dev/mmcblk0 of=/dev/mmcblk1 bs=512

I've got two partitions on mmcblk1: mmcblk1p1 and mmcblk1p2

After changing u-boot arguments I had successfully load Linux from emmc. When I tried to change bootstrap options to load from USDHC3 nothing happened.

After looking for some information about this promblem I did this steps:

root@192:/sys/devices/soc0/soc.1/2100000.aips-bus/2198000.usdhc/mmc_host/mmc1/mmc1:0001# echo 8 > boot_config

root@192:/sys/devices/soc0/soc.1/2100000.aips-bus/2198000.usdhc/mmc_host/mmc1/mmc1:0001# cat boot_info
[ 1445.436201] mmc1: BKOPS_EN bit is not set
boot_info:0x07;
ALT_BOOT_MODE:1 - Supports alternate boot method
DDR_BOOT_MODE:1 - Supports alternate dual data rate during boot
HS_BOOTMODE:1 - Supports high speed timing during boot
boot_size:16384KB
boot_partition:0x48;
BOOT_ACK:1 - Boot acknowledge sent during boot operation
BOOT_PARTITION-ENABLE: 1 - Boot partition 1 enabled

root@192:/usr/tmp# dd if=u-boot.bin of=/dev/mmcblk2boot0 bs=512 seek=2 skip=2

I tried to dd u-boot.bin and u-boot.imx when I found out information about IVT, but nothing changed. U-boot still doesn't start from any of partitions on the emmc.

Thanks in advance!

Labels (2)
Tags (3)
0 Kudos
2 Replies

645 Views
jimmychan
NXP TechSupport
NXP TechSupport

The mmcblk# number is the device number, not the partition.

For example, mmcblk0 is the SD card, the partition on the SD card should be mmcblk0p1 (partition 1), mmcblk0p2 (partition 2)....

mmcblk1 is the emmc, the partition on the emmc should be mmcblk1p1 (partition 1), mmcblk1p2 (partition 2) ....

0 Kudos

645 Views
alexandernovik2
Contributor II

Exactly mmcblk1, mmcblk2boot0, mmcblk3boot1, mmcblk4rpmb appeared in /dev after I changed .dts and recompiled the kernel for emmc on usdhc3 support.

0 Kudos