[PATCH] cmd: ubi.c: skip part command if right partition is already attached

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 | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/cmd/ubi.c b/cmd/ubi.c index fe8ac58bac..fccbfdf48d 100644 --- 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();

On Mon, Apr 04, 2022 at 05:50:14PM +0200, Alexandre Besnard wrote:
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
Applied to u-boot/master, thanks!
participants (2)
-
Alexandre Besnard
-
Tom Rini