f791fb4af4
Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Tim Harvey <tharvey@gateworks.com> [fixes]
26 lines
696 B
Diff
26 lines
696 B
Diff
--- a/drivers/mtd/mtdcore.c
|
|
+++ b/drivers/mtd/mtdcore.c
|
|
@@ -40,6 +40,7 @@
|
|
#include <linux/slab.h>
|
|
#include <linux/reboot.h>
|
|
#include <linux/leds.h>
|
|
+#include <linux/root_dev.h>
|
|
|
|
#include <linux/mtd/mtd.h>
|
|
#include <linux/mtd/partitions.h>
|
|
@@ -570,6 +571,15 @@ int add_mtd_device(struct mtd_info *mtd)
|
|
of this try_ nonsense, and no bitching about it
|
|
either. :) */
|
|
__module_get(THIS_MODULE);
|
|
+
|
|
+ if (!strcmp(mtd->name, "rootfs") &&
|
|
+ IS_ENABLED(CONFIG_MTD_ROOTFS_ROOT_DEV) &&
|
|
+ ROOT_DEV == 0) {
|
|
+ pr_notice("mtd: device %d (%s) set to be root filesystem\n",
|
|
+ mtd->index, mtd->name);
|
|
+ ROOT_DEV = MKDEV(MTD_BLOCK_MAJOR, mtd->index);
|
|
+ }
|
|
+
|
|
return 0;
|
|
|
|
fail_added:
|