In new kernels sunxi-mmc driver has been switched to asynchronous probe.
As a result, mmc (SD/eMMC) indexes can be shuffled breaking board boot.
Switch to GPT partitions to use partition labels instead of explicit
mmcblk device names. Note that the default GPT partition table location
conflicts with the SPL location, so move GPT table after bootloaders.
Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
setenv fdt_high ffffffff
-setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait
+setenv bootargs console=ttyS0,115200 earlyprintk root=PARTLABEL=rootfs rootwait
fatload mmc 0 $kernel_addr_r zImage
fatload mmc 0 $fdt_addr_r sun8i-h3-orangepi-pc-plus.dtb
image sdcard.img {
hdimage {
+ # for root=PARTLABEL support
+ gpt = true
+ # default GPT location conflicts with bootloaders, move it after
+ gpt-location = 1M
}
partition u-boot {
in-partition-table = "no"
image = "u-boot-sunxi-with-spl.bin"
offset = 8192
- size = 1040384 # 1MB - 8192
+ size = 1056768 # 1MB - 8K + 16K(GPT)
}
partition boot {
image = "boot.vfat"
}
+ # 'rootfs' will be used as the partition label, used
+ # with root=PARTLABEL=rootfs kernel command line
partition rootfs {
partition-type = 0x83
image = "rootfs.ext4"