From: Daniel Golle Date: Tue, 18 Oct 2022 19:01:23 +0000 (+0100) Subject: uboot-envtools: mediatek_filogic: fix BPi-R3 when no OS is installed X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=f46355b4d7d42bcd365bc642048ac3614b76cce9;p=openwrt%2Fstaging%2Fnbd.git uboot-envtools: mediatek_filogic: fix BPi-R3 when no OS is installed Fix accessing the environment in case no OS is installed on the flash media selected for boot as this is possible when booting initramfs. In case of relying on the device specified to be mounted as rootfs to be present, rather just use the kernel cmdline 'root' variable as a hint to decide where to read/write the U-Boot environment. Signed-off-by: Daniel Golle --- diff --git a/package/boot/uboot-envtools/files/mediatek_filogic b/package/boot/uboot-envtools/files/mediatek_filogic index a82f140a6e..a29ec7d0ee 100644 --- a/package/boot/uboot-envtools/files/mediatek_filogic +++ b/package/boot/uboot-envtools/files/mediatek_filogic @@ -13,21 +13,18 @@ board=$(board_name) case "$board" in bananapi,bpi-r3) - . /lib/upgrade/common.sh - export_bootdevice - export_partdevice rootdev 0 - case "$rootdev" in - mmc*) + case "$(cmdline_get_var root)" in + /dev/mmc*) local envdev=$(find_mmc_part "ubootenv" $rootdev) ubootenv_add_uci_config "$envdev" "0x0" "0x40000" "0x40000" "1" ubootenv_add_uci_config "$envdev" "0x40000" "0x40000" "0x40000" "1" ;; - mtd*) + /dev/mtd*) local envdev=/dev/mtd$(find_mtd_index "u-boot-env") ubootenv_add_uci_config "$envdev" "0x0" "0x20000" "0x20000" "1" ubootenv_add_uci_config "$envdev" "0x20000" "0x20000" "0x20000" "1" ;; - *) + /dev/ubi*) . /lib/upgrade/nand.sh local envubi=$(nand_find_ubi ubi) local envdev=/dev/$(nand_find_volume $envubi ubootenv)