From a6d2bcd7e04d374232291a3fe233d30f914958fa Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Mon, 23 Nov 2020 21:28:05 +0100 Subject: [PATCH 1/5] bcm2835-bootloader: move (distro)config.txt to files Signed-off-by: Matthias Reichl --- .../files/{3rdparty/bootloader => }/config.txt | 0 .../files/{3rdparty/bootloader => }/distroconfig.txt | 0 packages/tools/bcm2835-bootloader/package.mk | 4 ++-- 3 files changed, 2 insertions(+), 2 deletions(-) rename packages/tools/bcm2835-bootloader/files/{3rdparty/bootloader => }/config.txt (100%) rename packages/tools/bcm2835-bootloader/files/{3rdparty/bootloader => }/distroconfig.txt (100%) diff --git a/packages/tools/bcm2835-bootloader/files/3rdparty/bootloader/config.txt b/packages/tools/bcm2835-bootloader/files/config.txt similarity index 100% rename from packages/tools/bcm2835-bootloader/files/3rdparty/bootloader/config.txt rename to packages/tools/bcm2835-bootloader/files/config.txt diff --git a/packages/tools/bcm2835-bootloader/files/3rdparty/bootloader/distroconfig.txt b/packages/tools/bcm2835-bootloader/files/distroconfig.txt similarity index 100% rename from packages/tools/bcm2835-bootloader/files/3rdparty/bootloader/distroconfig.txt rename to packages/tools/bcm2835-bootloader/files/distroconfig.txt diff --git a/packages/tools/bcm2835-bootloader/package.mk b/packages/tools/bcm2835-bootloader/package.mk index f4bd83a027..0a7fe075cb 100644 --- a/packages/tools/bcm2835-bootloader/package.mk +++ b/packages/tools/bcm2835-bootloader/package.mk @@ -28,6 +28,6 @@ makeinstall_target() { find_file_path bootloader/update.sh && cp -PRv $FOUND_PATH $INSTALL/usr/share/bootloader find_file_path bootloader/canupdate.sh && cp -PRv $FOUND_PATH $INSTALL/usr/share/bootloader - find_file_path config/distroconfig.txt $PKG_DIR/files/3rdparty/bootloader/distroconfig.txt && cp -PRv ${FOUND_PATH} $INSTALL/usr/share/bootloader - find_file_path config/config.txt $PKG_DIR/files/3rdparty/bootloader/config.txt && cp -PRv ${FOUND_PATH} $INSTALL/usr/share/bootloader + find_file_path config/distroconfig.txt $PKG_DIR/files/distroconfig.txt && cp -PRv ${FOUND_PATH} $INSTALL/usr/share/bootloader + find_file_path config/config.txt $PKG_DIR/files/config.txt && cp -PRv ${FOUND_PATH} $INSTALL/usr/share/bootloader } From 6534c52c99cb323c3a64f003b7a960fb8583e520 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Mon, 23 Nov 2020 21:29:58 +0100 Subject: [PATCH 2/5] bcm2835-bootloader: move update.sh from RPi project to files Signed-off-by: Matthias Reichl --- .../tools/bcm2835-bootloader/files}/update.sh | 0 packages/tools/bcm2835-bootloader/package.mk | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename {projects/RPi/bootloader => packages/tools/bcm2835-bootloader/files}/update.sh (100%) diff --git a/projects/RPi/bootloader/update.sh b/packages/tools/bcm2835-bootloader/files/update.sh similarity index 100% rename from projects/RPi/bootloader/update.sh rename to packages/tools/bcm2835-bootloader/files/update.sh diff --git a/packages/tools/bcm2835-bootloader/package.mk b/packages/tools/bcm2835-bootloader/package.mk index 0a7fe075cb..44b58e35bf 100644 --- a/packages/tools/bcm2835-bootloader/package.mk +++ b/packages/tools/bcm2835-bootloader/package.mk @@ -25,7 +25,7 @@ makeinstall_target() { cp -PRv start_x.elf $INSTALL/usr/share/bootloader/start.elf fi - find_file_path bootloader/update.sh && cp -PRv $FOUND_PATH $INSTALL/usr/share/bootloader + find_file_path bootloader/update.sh $PKG_DIR/files/update.sh && cp -PRv $FOUND_PATH $INSTALL/usr/share/bootloader find_file_path bootloader/canupdate.sh && cp -PRv $FOUND_PATH $INSTALL/usr/share/bootloader find_file_path config/distroconfig.txt $PKG_DIR/files/distroconfig.txt && cp -PRv ${FOUND_PATH} $INSTALL/usr/share/bootloader From 475052cc02086a830f577c32a442357e76a878f7 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Mon, 23 Nov 2020 21:33:31 +0100 Subject: [PATCH 3/5] bcm2835-bootloader: add version info to config.txt Signed-off-by: Matthias Reichl --- packages/tools/bcm2835-bootloader/files/config.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/tools/bcm2835-bootloader/files/config.txt b/packages/tools/bcm2835-bootloader/files/config.txt index f6d03777a6..552b552d36 100644 --- a/packages/tools/bcm2835-bootloader/files/config.txt +++ b/packages/tools/bcm2835-bootloader/files/config.txt @@ -2,7 +2,8 @@ # Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv) # Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) ################################################################################ -# Bootloader configuration - config.txt +# Bootloader configuration +# config.txt version v1 (do not remove or change this line!) ################################################################################ ################################################################################ From 73704db1f55f9928108a02b10d3eeb71cc1f541b Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Tue, 24 Nov 2020 11:27:30 +0100 Subject: [PATCH 4/5] bcm2835-bootloader: cleanup config.txt Drop commented-out hdmi_force_hotplug option which won't work anymore with KMS and force_turbo=0 which is already the default. Fix URL to config.txt documentation (aligned with shorturl from RPiOS). Cleanup comments, fix typos. Signed-off-by: Matthias Reichl --- .../tools/bcm2835-bootloader/files/config.txt | 23 ++++--------------- 1 file changed, 4 insertions(+), 19 deletions(-) diff --git a/packages/tools/bcm2835-bootloader/files/config.txt b/packages/tools/bcm2835-bootloader/files/config.txt index 552b552d36..7f434e317e 100644 --- a/packages/tools/bcm2835-bootloader/files/config.txt +++ b/packages/tools/bcm2835-bootloader/files/config.txt @@ -5,33 +5,18 @@ # Bootloader configuration # config.txt version v1 (do not remove or change this line!) ################################################################################ - -################################################################################ -# Memory (System/GPU configuration ) +# For more options and information see +# http://rpf.io/configtxt ################################################################################ -# Default GPU memory split +# Default GPU memory split, 76MB are needed for H264 decoder gpu_mem=76 -################################################################################ -# For overclocking and various other settings, see: -# https://www.raspberrypi.org/documentation/configuration/config-txt.md -################################################################################ -# Set 'force_turbo=1' to disable dynamic overclocking and enable overclocking always. -force_turbo=0 - -# Force HDMI even if unplugged or powered off -# hdmi_force_hotplug=1 - -# Doesn't sent initial active source message. +# Don't send initial active source message. # Avoids bringing CEC (enabled TV) out of standby and channel switch when # rebooting. hdmi_ignore_cec_init=1 -################################################################################ -# End of default configuration -################################################################################ - ################################################################################ # Include distribution specific config file if it exists. ################################################################################ From c88a508544616af093d0e2d6bc541b5bc7d61ec1 Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Tue, 24 Nov 2020 11:35:43 +0100 Subject: [PATCH 5/5] bcm2835-bootloader: check config.txt version in update.sh Replace current config.txt with default version if the version info is missing or below the required minimum version. This is needed to roll out required changes if users update from LibreELEC 9.x Signed-off-by: Matthias Reichl --- .../tools/bcm2835-bootloader/files/update.sh | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/packages/tools/bcm2835-bootloader/files/update.sh b/packages/tools/bcm2835-bootloader/files/update.sh index ad6ddd2fa0..cf645523a8 100755 --- a/packages/tools/bcm2835-bootloader/files/update.sh +++ b/packages/tools/bcm2835-bootloader/files/update.sh @@ -2,10 +2,13 @@ # SPDX-License-Identifier: GPL-2.0-or-later # Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv) +# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) [ -z "$BOOT_ROOT" ] && BOOT_ROOT="/flash" [ -z "$SYSTEM_ROOT" ] && SYSTEM_ROOT="" +MIN_CONFIG_TXT_VERSION=1 + # mount $BOOT_ROOT r/w mount -o remount,rw $BOOT_ROOT @@ -30,10 +33,18 @@ rm -rf $BOOT_ROOT/start_x.elf # some config.txt magic if [ ! -f $BOOT_ROOT/config.txt ]; then cp -p $SYSTEM_ROOT/usr/share/bootloader/config.txt $BOOT_ROOT -elif [ -z "`grep "^[ ]*gpu_mem.*" $BOOT_ROOT/config.txt`" ]; then - mv $BOOT_ROOT/config.txt $BOOT_ROOT/config.txt.bk - cat $SYSTEM_ROOT/usr/share/bootloader/config.txt \ - $BOOT_ROOT/config.txt.bk > $BOOT_ROOT/config.txt +else + CONFIG_TXT_VERSION=$( \ + grep "^# config.txt version v[0-9]\+" $BOOT_ROOT/config.txt | \ + head -n 1 | \ + sed 's/^# config.txt version v\([0-9]\+\) .*$/\1/' \ + ) + if [ ${CONFIG_TXT_VERSION:-0} -lt $MIN_CONFIG_TXT_VERSION ]; then + mv -f $BOOT_ROOT/config.txt $BOOT_ROOT/config.txt.old + cp -p $SYSTEM_ROOT/usr/share/bootloader/config.txt $BOOT_ROOT/config.txt + echo "WARNING incompatible config.txt detected, replacing with default." + echo "Previous config.txt has been moved to config.txt.old" + fi fi # Add distro config file