]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
cmd: ubi.c: skip part command if right partition is already attached
authorAlexandre Besnard <alexandre.besnard@softathome.com>
Mon, 4 Apr 2022 15:50:14 +0000 (17:50 +0200)
committerTom Rini <trini@konsulko.com>
Thu, 14 Apr 2022 19:39:15 +0000 (15:39 -0400)
Attaching a UBI partition may take a while, since scanning the memory is
required.
It thus makes sense to avoid a detach/scan/attach cycle when the right
partition is already attached, and let the calling process call 'detach'
beforehand if it needs it.

This commit checks for the currently attached UBI partition, and skips
reattaching if not needed, showing an information.

Signed-off-by: Alexandre Besnard <alexandre.besnard@softathome.com>
cmd/ubi.c

index fe8ac58bac085115b08a05ddb859bb2828b72bd1..fccbfdf48d93b3b9101fb0495fe14b22fa788d59 100644 (file)
--- a/cmd/ubi.c
+++ b/cmd/ubi.c
@@ -511,6 +511,11 @@ int ubi_part(char *part_name, const char *vid_header_offset)
        struct mtd_info *mtd;
        int err = 0;
 
+       if (ubi && ubi->mtd && !strcmp(ubi->mtd->name, part_name)) {
+               printf("UBI partition '%s' already selected\n", part_name);
+               return 0;
+       }
+
        ubi_detach();
 
        mtd_probe_devices();