summaryrefslogtreecommitdiff
path: root/target/linux/generic/patches-3.12/400-mtd-add-rootfs-split-support.patch
diff options
context:
space:
mode:
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-11-04 18:37:05 +0000
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-11-04 18:37:05 +0000
commit9bc9e717aebcdfb505c0678f0995f7d121184012 (patch)
treec62f30861c8da40a9ae791e91d07e71fe8cdcd6b /target/linux/generic/patches-3.12/400-mtd-add-rootfs-split-support.patch
parentd1fe8bacb2e62f09486d701b7ca2404e3ed79521 (diff)
kernel/3.1[02]: move MTD root device setup code to mtdcore
The current code only allows to automatically set root device on MTD partitions. Move the code to MTD core to allow to use it with all MTD devices. Signed-off-by: Gabor Juhos <juhosg@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38643 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic/patches-3.12/400-mtd-add-rootfs-split-support.patch')
-rw-r--r--target/linux/generic/patches-3.12/400-mtd-add-rootfs-split-support.patch22
1 files changed, 7 insertions, 15 deletions
diff --git a/target/linux/generic/patches-3.12/400-mtd-add-rootfs-split-support.patch b/target/linux/generic/patches-3.12/400-mtd-add-rootfs-split-support.patch
index 215aef14de..ce91d7ba5e 100644
--- a/target/linux/generic/patches-3.12/400-mtd-add-rootfs-split-support.patch
+++ b/target/linux/generic/patches-3.12/400-mtd-add-rootfs-split-support.patch
@@ -35,16 +35,15 @@
depends on m
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -29,6 +29,8 @@
+@@ -29,6 +29,7 @@
#include <linux/kmod.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/partitions.h>
-+#include <linux/root_dev.h>
+#include <linux/magic.h>
#include <linux/err.h>
#include "mtdcore.h"
-@@ -45,13 +47,14 @@ struct mtd_part {
+@@ -45,13 +46,14 @@ struct mtd_part {
struct list_head list;
};
@@ -60,7 +59,7 @@
/*
* MTD methods which simply translate the effective address and pass through
* to the _real_ device.
-@@ -534,8 +537,10 @@ out_register:
+@@ -534,8 +536,10 @@ out_register:
return slave;
}
@@ -73,7 +72,7 @@
{
struct mtd_partition part;
struct mtd_part *p, *new;
-@@ -567,21 +572,24 @@ int mtd_add_partition(struct mtd_info *m
+@@ -567,21 +571,24 @@ int mtd_add_partition(struct mtd_info *m
end = offset + length;
mutex_lock(&mtd_partitions_mutex);
@@ -108,7 +107,7 @@
return ret;
err_inv:
-@@ -591,6 +599,12 @@ err_inv:
+@@ -591,6 +598,12 @@ err_inv:
}
EXPORT_SYMBOL_GPL(mtd_add_partition);
@@ -121,7 +120,7 @@
int mtd_del_partition(struct mtd_info *master, int partno)
{
struct mtd_part *slave, *next;
-@@ -614,6 +628,151 @@ int mtd_del_partition(struct mtd_info *m
+@@ -614,6 +627,144 @@ int mtd_del_partition(struct mtd_info *m
}
EXPORT_SYMBOL_GPL(mtd_del_partition);
@@ -252,13 +251,6 @@
+ if (!strcmp(part->mtd.name, "rootfs")) {
+ rootfs_found = 1;
+
-+ if (config_enabled(CONFIG_MTD_ROOTFS_ROOT_DEV) &&
-+ ROOT_DEV == 0) {
-+ printk(KERN_NOTICE "mtd: partition \"rootfs\" "
-+ "set to be root filesystem\n");
-+ ROOT_DEV = MKDEV(MTD_BLOCK_MAJOR, part->mtd.index);
-+ }
-+
+ if (config_enabled(CONFIG_MTD_ROOTFS_SPLIT))
+ split_rootfs_data(master, part);
+ }
@@ -273,7 +265,7 @@
/*
* This function, given a master MTD object and a partition table, creates
* and registers slave MTD objects which are bound to the master according to
-@@ -643,6 +802,7 @@ int add_mtd_partitions(struct mtd_info *
+@@ -643,6 +794,7 @@ int add_mtd_partitions(struct mtd_info *
mutex_unlock(&mtd_partitions_mutex);
add_mtd_device(&slave->mtd);