From 2f1f5669da73f733f6263dcfd1b438a8d4ce52ed Mon Sep 17 00:00:00 2001 From: suyuan168 <175338101@qq.com> Date: Thu, 23 Jun 2022 10:40:08 +0800 Subject: [PATCH] fix --- .../hack-5.4/999-stop-promiscuous-info.patch | 0 .../base-files/lib/upgrade/platform.sh | 89 ++++++++++++++++++- 2 files changed, 85 insertions(+), 4 deletions(-) mode change 100755 => 100644 root/target/linux/generic/hack-5.4/999-stop-promiscuous-info.patch diff --git a/root/target/linux/generic/hack-5.4/999-stop-promiscuous-info.patch b/root/target/linux/generic/hack-5.4/999-stop-promiscuous-info.patch old mode 100755 new mode 100644 diff --git a/root/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh b/root/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh index 3ca49cbd..a7fc337d 100644 --- a/root/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh +++ b/root/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh @@ -6,8 +6,8 @@ RAMFS_COPY_DATA='/etc/fw_env.config /var/lock/fw_printenv.lock' platform_check_image() { case "$(board_name)" in + asus,rt-ac42u |\ asus,rt-ac58u) - CI_UBIPART="UBI_DEV" local ubidev=$(nand_find_ubi $CI_UBIPART) local asus_root=$(nand_find_volume $ubidev jffs2) @@ -21,6 +21,32 @@ to install the filesystem. You need to delete the jffs2 partition first: # ubirmvol /dev/ubi0 --name=jffs2 +Once this is done. Retry. +EOF + return 1 + ;; + teltonika,rutx) + platform_check_image_ipq "$1" + ;; + zte,mf286d) + CI_UBIPART="rootfs" + local mtdnum="$( find_mtd_index $CI_UBIPART )" + [ ! "$mtdnum" ] && return 1 + ubiattach -m "$mtdnum" || true + local ubidev="$( nand_find_ubi $CI_UBIPART )" + local ubi_rootfs=$(nand_find_volume $ubidev ubi_rootfs) + local ubi_rootfs_data=$(nand_find_volume $ubidev ubi_rootfs_data) + + [ -n "$ubi_rootfs" ] || [ -n "$ubi_rootfs_data" ] || return 0 + + cat << EOF +ubi_rootfs partition is still present. + +You need to delete the stock partition first: +# ubirmvol /dev/ubi0 -N ubi_rootfs +Please also delete ubi_rootfs_data, if exist: +# ubirmvol /dev/ubi0 -N ubi_rootfs_data + Once this is done. Retry. EOF return 1 @@ -55,13 +81,29 @@ zyxel_do_upgrade() { fi } +platform_do_upgrade_mikrotik_nand() { + local fw_mtd=$(find_mtd_part kernel) + fw_mtd="${fw_mtd/block/}" + [ -n "$fw_mtd" ] || return + + local board_dir=$(tar tf "$1" | grep -m 1 '^sysupgrade-.*/$') + board_dir=${board_dir%/} + [ -n "$board_dir" ] || return + + local kernel_len=$(tar xf "$1" ${board_dir}/kernel -O | wc -c) + [ -n "$kernel_len" ] || return + + tar xf "$1" ${board_dir}/kernel -O | ubiformat "$fw_mtd" -y -S $kernel_len -f - + + CI_KERNPART="none" + nand_do_upgrade "$1" +} + platform_do_upgrade() { case "$(board_name)" in 8dev,jalapeno |\ aruba,ap-303 |\ aruba,ap-303h |\ - pangu,l1000 |\ - zbt,z4019 |\ aruba,ap-365 |\ avm,fritzbox-7530 |\ avm,fritzrepeater-1200 |\ @@ -74,9 +116,18 @@ platform_do_upgrade() { glinet,gl-ap1300 |\ luma,wrtq-329acn |\ mobipromo,cm520-79f |\ + netgear,wac510 |\ + p2w,r619ac-64m |\ + p2w,r619ac-128m |\ qxwlan,e2600ac-c2) nand_do_upgrade "$1" ;; + glinet,gl-b2200) + CI_KERNPART="0:HLOS" + CI_ROOTPART="rootfs" + CI_DATAPART="rootfs_data" + emmc_do_upgrade "$1" + ;; alfa-network,ap120c-ac) part="$(awk -F 'ubi.mtd=' '{printf $2}' /proc/cmdline | sed -e 's/ .*$//')" if [ "$part" = "rootfs1" ]; then @@ -92,8 +143,8 @@ platform_do_upgrade() { CI_KERNPART="linux" nand_do_upgrade "$1" ;; + asus,rt-ac42u |\ asus,rt-ac58u) - CI_UBIPART="UBI_DEV" CI_KERNPART="linux" nand_do_upgrade "$1" ;; @@ -113,11 +164,22 @@ platform_do_upgrade() { CI_KERNPART="part.safe" nand_do_upgrade "$1" ;; + mikrotik,cap-ac|\ mikrotik,hap-ac2|\ + mikrotik,lhgg-60ad|\ mikrotik,sxtsq-5-ac) [ "$(rootfs_type)" = "tmpfs" ] && mtd erase firmware default_do_upgrade "$1" ;; + mikrotik,hap-ac3) + platform_do_upgrade_mikrotik_nand "$1" + ;; + netgear,rbr50 |\ + netgear,rbs50 |\ + netgear,srr60 |\ + netgear,srs60) + platform_do_upgrade_netgear_orbi_upgrade "$1" + ;; openmesh,a42 |\ openmesh,a62 |\ plasmacloud,pa1200 |\ @@ -125,6 +187,13 @@ platform_do_upgrade() { PART_NAME="inactive" platform_do_upgrade_dualboot_datachk "$1" ;; + teltonika,rutx) + platform_do_upgrade_ipq "$1" + ;; + zte,mf286d) + CI_UBIPART="rootfs" + nand_do_upgrade "$1" + ;; zyxel,nbg6617) zyxel_do_upgrade "$1" ;; @@ -133,3 +202,15 @@ platform_do_upgrade() { ;; esac } + +platform_copy_config() { + case "$(board_name)" in + glinet,gl-b2200) + emmc_copy_config + ;; + teltonika,rutx) + platform_copy_config_ipq + ;; + esac + return 0; +}