From e73037faf4c1e4ac589575498cbba572847051b6 Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Mon, 29 Oct 2018 13:58:44 +0000 Subject: [PATCH 1/3] Amlogic/update.sh: cosmetic --- projects/Amlogic/bootloader/update.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/projects/Amlogic/bootloader/update.sh b/projects/Amlogic/bootloader/update.sh index b32b47cfab..6cf0025df1 100755 --- a/projects/Amlogic/bootloader/update.sh +++ b/projects/Amlogic/bootloader/update.sh @@ -6,8 +6,10 @@ [ -z "$SYSTEM_ROOT" ] && SYSTEM_ROOT="" [ -z "$BOOT_ROOT" ] && BOOT_ROOT="/flash" [ -z "$UPDATE_DIR" ] && UPDATE_DIR="/storage/.update" + UPDATE_DTB_IMG="$UPDATE_DIR/dtb.img" -UPDATE_DTB=`ls -1 "$UPDATE_DIR"/*.dtb 2>/dev/null | head -n 1` +UPDATE_DTB="$(ls -1 "$UPDATE_DIR"/*.dtb 2>/dev/null | head -n 1)" + [ -z "$BOOT_PART" ] && BOOT_PART=$(df "$BOOT_ROOT" | tail -1 | awk {' print $1 '}) if [ -z "$BOOT_DISK" ]; then case $BOOT_PART in From d7872430ee56e528d63f2361bd51e41e1545e8cc Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Mon, 29 Oct 2018 14:46:53 +0000 Subject: [PATCH 2/3] Amlogic/update.sh: fix arch binary incompatibility; switch to uuids --- projects/Amlogic/bootloader/mkimage | 6 +++++- projects/Amlogic/bootloader/update.sh | 19 +++++++++++-------- .../Amlogic/devices/KVIM/bootloader/boot.ini | 2 +- .../Amlogic/devices/KVIM2/bootloader/boot.ini | 2 +- .../devices/LePotato/bootloader/boot.ini | 2 +- .../devices/Odroid_C2/bootloader/boot.ini | 2 +- projects/Amlogic/packages/u-boot/package.mk | 14 -------------- 7 files changed, 20 insertions(+), 27 deletions(-) diff --git a/projects/Amlogic/bootloader/mkimage b/projects/Amlogic/bootloader/mkimage index 6c2a5d30b1..48b9652109 100644 --- a/projects/Amlogic/bootloader/mkimage +++ b/projects/Amlogic/bootloader/mkimage @@ -18,7 +18,11 @@ if [ -f "$RELEASE_DIR/3rdparty/bootloader/u-boot" ]; then fi if [ -f "$RELEASE_DIR/3rdparty/bootloader/boot.ini" ]; then - mcopy $RELEASE_DIR/3rdparty/bootloader/boot.ini :: + cp -p "$RELEASE_DIR/3rdparty/bootloader/boot.ini" "$LE_TMP/boot.ini" + sed -e "s/@BOOT_UUID@/$UUID_SYSTEM/" \ + -e "s/@DISK_UUID@/$UUID_STORAGE/" \ + -i "$LE_TMP/boot.ini" + mcopy "$LE_TMP/boot.ini" :: fi if [ -f "$RELEASE_DIR/3rdparty/bootloader/config.ini" ]; then diff --git a/projects/Amlogic/bootloader/update.sh b/projects/Amlogic/bootloader/update.sh index 6cf0025df1..db13979f8f 100755 --- a/projects/Amlogic/bootloader/update.sh +++ b/projects/Amlogic/bootloader/update.sh @@ -27,14 +27,13 @@ mount -o rw,remount $BOOT_ROOT for arg in $(cat /proc/cmdline); do case $arg in boot=*) - echo "Updating BOOT partition label..." boot="${arg#*=}" case $boot in /dev/mmc*) - LD_LIBRARY_PATH="$SYSTEM_ROOT/lib" $SYSTEM_ROOT/usr/sbin/fatlabel $boot "@BOOT_LABEL@" + BOOT_UUID="$(blkid $boot | sed 's/.* UUID="//;s/".*//g')" ;; - LABEL=*) - LD_LIBRARY_PATH="$SYSTEM_ROOT/lib" $SYSTEM_ROOT/usr/sbin/fatlabel $($SYSTEM_ROOT/usr/sbin/findfs $boot) "@BOOT_LABEL@" + UUID=*|LABEL=*) + BOOT_UUID="$(blkid | sed 's/"//g' | grep -m 1 -i " $boot " | sed 's/.* UUID=//;s/ .*//g')" ;; esac @@ -73,15 +72,15 @@ for arg in $(cat /proc/cmdline); do fi done ;; + disk=*) - echo "Updating DISK partition label..." disk="${arg#*=}" case $disk in /dev/mmc*) - LD_LIBRARY_PATH="$SYSTEM_ROOT/lib" $SYSTEM_ROOT/usr/sbin/e2label $disk "@DISK_LABEL@" + DISK_UUID="$(blkid $disk | sed 's/.* UUID="//;s/".*//g')" ;; - LABEL=*) - LD_LIBRARY_PATH="$SYSTEM_ROOT/lib" $SYSTEM_ROOT/usr/sbin/e2label $($SYSTEM_ROOT/usr/sbin/findfs $disk) "@DISK_LABEL@" + UUID=*|LABEL=*) + DISK_UUID="$(blkid | sed 's/"//g' | grep -m 1 -i " $disk " | sed 's/.* UUID=//;s/ .*//g')" ;; esac ;; @@ -96,6 +95,10 @@ fi if [ -f $SYSTEM_ROOT/usr/share/bootloader/boot.ini ]; then echo "Updating boot.ini..." cp -p $SYSTEM_ROOT/usr/share/bootloader/boot.ini $BOOT_ROOT/boot.ini + sed -e "s/@BOOT_UUID@/$BOOT_UUID/" \ + -e "s/@DISK_UUID@/$DISK_UUID/" \ + -i $BOOT_ROOT/boot.ini + if [ -f $SYSTEM_ROOT/usr/share/bootloader/config.ini ]; then if [ ! -f $BOOT_ROOT/config.ini ]; then echo "Creating config.ini..." diff --git a/projects/Amlogic/devices/KVIM/bootloader/boot.ini b/projects/Amlogic/devices/KVIM/bootloader/boot.ini index a11d85d5da..d0a86674e9 100644 --- a/projects/Amlogic/devices/KVIM/bootloader/boot.ini +++ b/projects/Amlogic/devices/KVIM/bootloader/boot.ini @@ -8,7 +8,7 @@ #------------------------------------------------------------------------------------------------------ KHADAS-UBOOT-CONFIG -setenv bootrootfs "BOOT_IMAGE=kernel.img boot=LABEL=@BOOT_LABEL@ disk=LABEL=@DISK_LABEL@" +setenv bootrootfs "BOOT_IMAGE=kernel.img boot=UUID=@BOOT_UUID@ disk=UUID=@DISK_UUID@" setenv condev "ttyS0,115200" setenv hdmimode "1080p60hz" setenv hdmioutput "1" diff --git a/projects/Amlogic/devices/KVIM2/bootloader/boot.ini b/projects/Amlogic/devices/KVIM2/bootloader/boot.ini index a11d85d5da..d0a86674e9 100644 --- a/projects/Amlogic/devices/KVIM2/bootloader/boot.ini +++ b/projects/Amlogic/devices/KVIM2/bootloader/boot.ini @@ -8,7 +8,7 @@ #------------------------------------------------------------------------------------------------------ KHADAS-UBOOT-CONFIG -setenv bootrootfs "BOOT_IMAGE=kernel.img boot=LABEL=@BOOT_LABEL@ disk=LABEL=@DISK_LABEL@" +setenv bootrootfs "BOOT_IMAGE=kernel.img boot=UUID=@BOOT_UUID@ disk=UUID=@DISK_UUID@" setenv condev "ttyS0,115200" setenv hdmimode "1080p60hz" setenv hdmioutput "1" diff --git a/projects/Amlogic/devices/LePotato/bootloader/boot.ini b/projects/Amlogic/devices/LePotato/bootloader/boot.ini index 91c080a013..2f3ffdb6d0 100644 --- a/projects/Amlogic/devices/LePotato/bootloader/boot.ini +++ b/projects/Amlogic/devices/LePotato/bootloader/boot.ini @@ -8,7 +8,7 @@ #------------------------------------------------------------------------------------------------------ LIBRETECH-UBOOT-CONFIG -setenv bootrootfs "BOOT_IMAGE=kernel.img boot=LABEL=@BOOT_LABEL@ disk=LABEL=@DISK_LABEL@" +setenv bootrootfs "BOOT_IMAGE=kernel.img boot=UUID=@BOOT_UUID@ disk=UUID=@DISK_UUID@" setenv condev "ttyS0,115200" setenv hdmimode "1080p60hz" setenv hdmioutput "1" diff --git a/projects/Amlogic/devices/Odroid_C2/bootloader/boot.ini b/projects/Amlogic/devices/Odroid_C2/bootloader/boot.ini index a96615c33e..3e2689282e 100644 --- a/projects/Amlogic/devices/Odroid_C2/bootloader/boot.ini +++ b/projects/Amlogic/devices/Odroid_C2/bootloader/boot.ini @@ -8,7 +8,7 @@ #------------------------------------------------------------------------------------------------------ ODROIDC2-UBOOT-CONFIG -setenv bootrootfs "BOOT_IMAGE=KERNEL boot=LABEL=@BOOT_LABEL@ disk=LABEL=@DISK_LABEL@" +setenv bootrootfs "BOOT_IMAGE=KERNEL boot=UUID=@BOOT_UUID@ disk=UUID=@DISK_UUID@" setenv condev "ttyS0,115200" setenv hdmimode "1080p60hz" setenv hdmioutput "1" diff --git a/projects/Amlogic/packages/u-boot/package.mk b/projects/Amlogic/packages/u-boot/package.mk index e191b5b4d2..6a876179d8 100644 --- a/projects/Amlogic/packages/u-boot/package.mk +++ b/projects/Amlogic/packages/u-boot/package.mk @@ -73,18 +73,4 @@ makeinstall_target() { cp -av $PKG_BUILD/fip/u-boot.bin.sd.bin $INSTALL/usr/share/bootloader/u-boot ;; esac - - # Replace partition names in update.sh - if [ -f "$INSTALL/usr/share/bootloader/update.sh" ] ; then - sed -e "s/@BOOT_LABEL@/$DISTRO_BOOTLABEL/g" \ - -e "s/@DISK_LABEL@/$DISTRO_DISKLABEL/g" \ - -i $INSTALL/usr/share/bootloader/update.sh - fi - - # Replace labels in boot.ini - if [ -f "$INSTALL/usr/share/bootloader/boot.ini" ] ; then - sed -e "s/@BOOT_LABEL@/$DISTRO_BOOTLABEL/g" \ - -e "s/@DISK_LABEL@/$DISTRO_DISKLABEL/g" \ - -i $INSTALL/usr/share/bootloader/boot.ini - fi } From 01f9b5e139b2e447972f8a7dbcc99dc2732a1931 Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Wed, 31 Oct 2018 07:54:39 +0000 Subject: [PATCH 3/3] u-boot: remove unecessary substitutions --- packages/tools/u-boot/package.mk | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/packages/tools/u-boot/package.mk b/packages/tools/u-boot/package.mk index 74ccfd6a83..2d52f135be 100644 --- a/packages/tools/u-boot/package.mk +++ b/packages/tools/u-boot/package.mk @@ -52,20 +52,6 @@ makeinstall_target() { # Always install the update script find_file_path bootloader/update.sh && cp -av ${FOUND_PATH} $INSTALL/usr/share/bootloader - # Replace partition names in update.sh - if [ -f "$INSTALL/usr/share/bootloader/update.sh" ] ; then - sed -e "s/@BOOT_LABEL@/$DISTRO_BOOTLABEL/g" \ - -e "s/@DISK_LABEL@/$DISTRO_DISKLABEL/g" \ - -i $INSTALL/usr/share/bootloader/update.sh - fi - - # Replace labels in boot.ini - if [ -f "$INSTALL/usr/share/bootloader/boot.ini" ] ; then - sed -e "s/@BOOT_LABEL@/$DISTRO_BOOTLABEL/g" \ - -e "s/@DISK_LABEL@/$DISTRO_DISKLABEL/g" \ - -i $INSTALL/usr/share/bootloader/boot.ini - fi - # Always install the canupdate script if find_file_path bootloader/canupdate.sh; then cp -av ${FOUND_PATH} $INSTALL/usr/share/bootloader