[RFC PATCH 05/20] cmd: ubi: export ubi_find_volume()
Simon Glass
sjg at chromium.org
Thu Feb 19 14:09:24 CET 2026
Hi Daniel,
On Mon, 16 Feb 2026 at 14:22, Daniel Golle <daniel at makrotopia.org> wrote:
>
> Remove the static qualifier from ubi_find_volume() and add a
> declaration to include/ubi_uboot.h so that other translation units
> can look up a UBI volume by name.
>
> The function now refers to ubi_devices[0] directly instead of the
> file-local 'ubi' pointer, and takes a const char * for the volume
> name.
>
> Signed-off-by: Daniel Golle <daniel at makrotopia.org>
> ---
> cmd/ubi.c | 10 +++++++---
> include/ubi_uboot.h | 1 +
> 2 files changed, 8 insertions(+), 3 deletions(-)
>
> diff --git a/cmd/ubi.c b/cmd/ubi.c
> index 93de6f3aea2..ca7d657aa07 100644
> --- a/cmd/ubi.c
> +++ b/cmd/ubi.c
> @@ -247,13 +247,17 @@ static int ubi_create_vol(char *volume, int64_t size, int dynamic, int vol_id,
> return ubi_create_volume(ubi, &req);
> }
>
> -static struct ubi_volume *ubi_find_volume(char *volume)
> +struct ubi_volume *ubi_find_volume(const char *volume)
> {
> + struct ubi_device *dev = ubi_devices[0];
> struct ubi_volume *vol;
> int i;
>
> - for (i = 0; i < ubi->vtbl_slots; i++) {
> - vol = ubi->volumes[i];
> + if (!dev)
> + return NULL;
> +
> + for (i = 0; i < dev->vtbl_slots; i++) {
> + vol = dev->volumes[i];
> if (vol && !strcmp(vol->name, volume))
> return vol;
> }
> diff --git a/include/ubi_uboot.h b/include/ubi_uboot.h
> index ea0db69c72a..92892704d0a 100644
> --- a/include/ubi_uboot.h
> +++ b/include/ubi_uboot.h
> @@ -50,6 +50,7 @@ extern void ubi_exit(void);
> extern int ubi_part(char *part_name, const char *vid_header_offset);
> extern int ubi_volume_write(char *volume, void *buf, loff_t offset, size_t size);
> extern int ubi_volume_read(char *volume, char *buf, loff_t offset, size_t size);
> +struct ubi_volume *ubi_find_volume(const char *volume);
Needs a full comment.
>
> extern struct ubi_device *ubi_devices[];
> int cmd_ubifs_mount(char *vol_name);
> --
> 2.53.0
Regards,
Simon
More information about the U-Boot
mailing list