]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
Qualcommax: IPQ807x: update preinit factory partition mount script
authorjonathan brophy <professor_jonny@hotmail.com>
Wed, 2 Apr 2025 10:36:50 +0000 (23:36 +1300)
committerRobert Marko <robimarko@gmail.com>
Tue, 22 Apr 2025 11:25:40 +0000 (13:25 +0200)
Patch script used for mounting of factory data partitions to not assume devices names or use hardcoded identifiers.

Signed-off-by: jonathan brophy <professor_jonny@hotmail.com>
Link: https://github.com/openwrt/openwrt/pull/16329
Signed-off-by: Robert Marko <robimarko@gmail.com>
target/linux/qualcommax/ipq807x/base-files/lib/preinit/09_mount_factory_data

index 2563202a1a2c2a078a6d8b01020320561e0b31a1..f29362dbcef81529f5e4a49dfadc1bfe65bdf037 100644 (file)
@@ -1,20 +1,28 @@
 #!/bin/sh
 
+. /lib/functions.sh
+. /lib/functions/system.sh
+
 preinit_mount_factory_data() {
+       local part_name="$1"
        local mtd_path
+       local ubi_num
+
+               mtd_path=$(find_mtd_chardev "$part_name")
+               ubi_num=$(grep $part_name /proc/mtd | cut -c 1-5 | grep -o '[0-9]*')
+               ubiattach --dev-path="$mtd_path" --devn=$ubi_num
+               mkdir /tmp/$part_name
+               mount -o ro,noatime -t ubifs ubi$ubi_num:ubi_$part_name /tmp/$part_name
+}
 
-       . /lib/functions.sh
-       . /lib/functions/system.sh
+preinit_mount_factory_partitions() {
 
        case $(board_name) in
        tplink,eap620hd-v1|\
        tplink,eap660hd-v1)
-               mtd_path=$(find_mtd_chardev "factory_data")
-               ubiattach --dev-path="$mtd_path" --devn=1
-               mkdir /tmp/factory_data
-               mount -o ro,noatime -t ubifs ubi1:ubi_factory_data /tmp/factory_data
+               preinit_mount_factory_data "tp_data"
                ;;
        esac
 }
 
-boot_hook_add preinit_main preinit_mount_factory_data
+boot_hook_add preinit_main preinit_mount_factory_partitions