board/orangepi-zero-plus2: switch to GPT for PARTLABEL support

Patch that pins mmc indexes was not accepted to mainline kernel. Drop that
patch and switch to GPT to use partition labels. For GPT the name of the
partition in genimage.cfg is used as the label for that partition. 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: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
Sergey Matyukevich 2021-02-03 22:57:19 +03:00 committed by Yann E. MORIN
parent f1d268cf7d
commit 194dbbfc92
4 changed files with 9 additions and 36 deletions

View File

@ -1,4 +1,4 @@
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 Image
fatload mmc 0 $fdt_addr_r sun50i-h5-orangepi-zero-plus2.dtb

View File

@ -11,6 +11,10 @@ image boot.vfat {
image sdcard.img {
hdimage {
# for root=PARTLABEL support
gpt = true
# default GPT location conflicts with bootloaders, move it after
gpt-location = 1M
}
partition spl {
@ -23,7 +27,7 @@ image sdcard.img {
in-partition-table = "no"
image = "u-boot.itb"
offset = 40K
size = 1M # 1MB - 40K
size = 1024000 # 1MB - 40K + 16K(GPT)
}
partition boot {
@ -32,8 +36,11 @@ image sdcard.img {
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"
size = 256M
}
}

View File

@ -1,33 +0,0 @@
From f780fee2dc7d4a7bcfb2297342f7bfec2c0d1c28 Mon Sep 17 00:00:00 2001
From: Sergey Matyukevich <geomatsi@gmail.com>
Date: Tue, 26 Jan 2021 23:19:13 +0300
Subject: [PATCH 1/1] ARM: dts: orange-pi-zero-plus2: use fixed mmc indexes
Driver sunxi-mmc has recently been switched to asynchronous probe.
As a result, mmc indexes can be shuffled breaking existing setups
where UUIDs are not used for boot devices. Pin mmc indexes to keep
running the systems where fixed MMC or eMMC are specified,
e.g. root=/dev/mmcblk0p2.
Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
---
.../arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts | 3 +++
1 file changed, 3 insertions(+)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
index de19e68eb84e..c4854d3ba524 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-zero-plus2.dts
@@ -13,6 +13,9 @@ / {
aliases {
serial0 = &uart0;
+ mmc0 = &mmc0;
+ mmc1 = &mmc1;
+ mmc2 = &mmc2;
};
chosen {
--
2.30.0

View File

@ -5,7 +5,6 @@ BR2_ARM_FPU_VFPV4=y
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y
BR2_ROOTFS_OVERLAY="board/orangepi/orangepi-zero-plus2/rootfs_overlay"
BR2_GLOBAL_PATCH_DIR="board/orangepi/orangepi-zero-plus2/patches"
# Firmware
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y