]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
mediatek: allow mounting ubifs by its device and partition name
authorYonghyu Ban <yhban@silicon.moe>
Wed, 19 Mar 2025 08:11:54 +0000 (17:11 +0900)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 12 Jul 2025 18:21:43 +0000 (20:21 +0200)
Since not every device sets an ubifs partition name as the same as their
parent mtd partition, this change allows mount_ubi_part to usable in
other devices

Signed-off-by: Yonghyu Ban <yhban@silicon.moe>
Link: https://github.com/openwrt/openwrt/pull/19203
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
target/linux/mediatek/filogic/base-files/lib/preinit/09_mount_cfg_part

index 87e51a4429470f546a8d7747d6158fd080a84e09..ddbb1d129370d919147d326eb79907b769d29fcc 100644 (file)
@@ -1,13 +1,14 @@
 . /lib/functions/system.sh
 
 mount_ubi_part() {
-       local part_name="$1"
-       local mtd_num=$(grep $part_name /proc/mtd | cut -c4)
+       local mtd_name="$1"
+       local part_name="$2"
+       local mtd_num=$(grep \"$mtd_name\" /proc/mtd | cut -d: -f1 | sed 's/mtd//g')
        local ubi_num=$(ubiattach -m $mtd_num | \
                awk -F',' '/UBI device number [0-9]{1,}/{print $1}' | \
                awk '{print $4}')
-       mkdir /tmp/$part_name
-       mount -r -t ubifs ubi$ubi_num:$part_name /tmp/$part_name
+       mkdir /tmp/$mtd_name
+       mount -r -t ubifs ubi$ubi_num:$part_name /tmp/$mtd_name
 }
 
 preinit_mount_cfg_part() {
@@ -16,7 +17,7 @@ preinit_mount_cfg_part() {
        mercusys,mr90x-v1|\
        tplink,archer-ax80-v1|\
        tplink,re6000xd)
-               mount_ubi_part "tp_data"
+               mount_ubi_part "tp_data" "tp_data"
                ;;
        *)
                ;;