From: Daniel Golle Date: Mon, 1 Nov 2021 13:58:20 +0000 (+0000) Subject: base-files: allow specifiying rootdev for find_mmc_part X-Git-Tag: mikrotik~883 X-Git-Url: http://git.openwrt.org/?a=commitdiff_plain;h=9f223a20bd5f0cbec9f34427588b645ae38433ff;p=openwrt%2Fstaging%2Fchunkeey.git base-files: allow specifiying rootdev for find_mmc_part Some devices got more than one mmc device. Allow specifying the root device as 2nd parameter of find_mmc_part so scripts can avoid matching irrelevant partitions on wrong mmc device. Signed-off-by: Daniel Golle --- diff --git a/package/base-files/files/lib/functions.sh b/package/base-files/files/lib/functions.sh index e56e4637f0..ee0c33845c 100644 --- a/package/base-files/files/lib/functions.sh +++ b/package/base-files/files/lib/functions.sh @@ -331,13 +331,19 @@ find_mtd_part() { } find_mmc_part() { - local DEVNAME PARTNAME + local DEVNAME PARTNAME ROOTDEV if grep -q "$1" /proc/mtd; then echo "" && return 0 fi - for DEVNAME in /sys/block/mmcblk*/mmcblk*p*; do + if [ -n "$2" ]; then + ROOTDEV="$2" + else + ROOTDEV="mmcblk*" + fi + + for DEVNAME in /sys/block/$ROOTDEV/mmcblk*p*; do PARTNAME="$(grep PARTNAME ${DEVNAME}/uevent | cut -f2 -d'=')" [ "$PARTNAME" = "$1" ] && echo "/dev/$(basename $DEVNAME)" && return 0 done