| From 27ae9a1b684cd183ccf6881d32710b8890113d20 Mon Sep 17 00:00:00 2001 |
| From: Sam Shih <sam.shih@mediatek.com> |
| Date: Fri, 2 Jun 2023 13:06:14 +0800 |
| Subject: [PATCH] |
| [spi-and-storage][999-2329-ubi-add-configurable-rootdev.patch] |
| |
| --- |
| drivers/mtd/ubi/block.c | 11 +++++++++-- |
| 1 file changed, 9 insertions(+), 2 deletions(-) |
| |
| diff --git a/drivers/mtd/ubi/block.c b/drivers/mtd/ubi/block.c |
| index 873f9cb24..33e969fd3 100644 |
| --- a/drivers/mtd/ubi/block.c |
| +++ b/drivers/mtd/ubi/block.c |
| @@ -97,6 +97,12 @@ static DEFINE_IDR(ubiblock_minor_idr); |
| static DEFINE_MUTEX(devices_mutex); |
| static int ubiblock_major; |
| |
| +static char rootfs_volume[256] = "rootfs"; |
| +module_param_string(rootfs_volume, rootfs_volume, sizeof(rootfs_volume), 0444); |
| + |
| +static bool no_default_rootdev; |
| +module_param(no_default_rootdev, bool, 0444); |
| + |
| static int __init ubiblock_set_param(const char *val, |
| const struct kernel_param *kp) |
| { |
| @@ -460,8 +466,9 @@ int ubiblock_create(struct ubi_volume_info *vi) |
| dev->ubi_num, dev->vol_id, vi->name); |
| mutex_unlock(&devices_mutex); |
| |
| - if (!strcmp(vi->name, "rootfs") && |
| + if (!strcmp(vi->name, rootfs_volume) && |
| IS_ENABLED(CONFIG_MTD_ROOTFS_ROOT_DEV) && |
| + !no_default_rootdev && |
| ROOT_DEV == 0) { |
| pr_notice("ubiblock: device ubiblock%d_%d (%s) set to be root filesystem\n", |
| dev->ubi_num, dev->vol_id, vi->name); |
| @@ -681,7 +688,7 @@ static void __init ubiblock_create_auto_rootfs(void) |
| struct ubi_volume_info vi; |
| |
| for (ubi_num = 0; ubi_num < UBI_MAX_DEVICES; ubi_num++) { |
| - desc = ubi_open_volume_nm(ubi_num, "rootfs", UBI_READONLY); |
| + desc = ubi_open_volume_nm(ubi_num, rootfs_volume, UBI_READONLY); |
| if (IS_ERR(desc)) |
| continue; |
| |
| -- |
| 2.34.1 |
| |