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> SVN-Revision: 38643
		
			
				
	
	
		
			27 lines
		
	
	
		
			704 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			704 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
--- a/drivers/mtd/mtdcore.c
 | 
						|
+++ b/drivers/mtd/mtdcore.c
 | 
						|
@@ -37,6 +37,7 @@
 | 
						|
 #include <linux/backing-dev.h>
 | 
						|
 #include <linux/gfp.h>
 | 
						|
 #include <linux/slab.h>
 | 
						|
+#include <linux/root_dev.h>
 | 
						|
 
 | 
						|
 #include <linux/mtd/mtd.h>
 | 
						|
 #include <linux/mtd/partitions.h>
 | 
						|
@@ -408,6 +409,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") &&
 | 
						|
+	    config_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:
 |