My problem is the following :
I have successfully built an image using Buildroot ( u-boot.imx at offset 0x400 + vfat partition containing the kernel and a .dtb + ext2 partition containing the file system ) then flashed the image to an SDCard using dd. So far everything work as expected : i have set the i.MX6Q boot mode to internal and the appropriate GPIO to select the boot device - that is the SdCard slot. U-Boot runs and load the kernel as expected.
Now, as my BSP is ready, i would like the flash it to the eMMC and this is what i have tried, unsuccessfully :
- copy the image to an USB mass storage
- boot the board from the SD Card and dd the image from the USB mass storage to the /dev/mmcblk3 ( eMMC )
- double check the GPIO so that the internal boot mode select the eMMC boot.
- power up the board -> u-boot runs but all its environment variables (mmcroot, mmcdev, bootargs, ..) are not those that were saved in the BSP image so the kernel does not boot.
Is this related to the CRC32 protection of the u-boot environment variables or something else ?
Is there a better way to achieve this ?