 e90e75b12c
			
		
	
	e90e75b12c
	
	
	
		
			
			It's meant to provide upstream support for mtd & NVMEM. It's required e.g. for reading MAC address from mtd partition content. It seems to be in a final shape so it's worth testing. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
		
			
				
	
	
		
			39 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From: Gabor Juhos <juhosg@openwrt.org>
 | |
| Subject: 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>
 | |
| ---
 | |
|  drivers/mtd/mtdcore.c | 10 ++++++++++
 | |
|  1 file changed, 10 insertions(+)
 | |
| 
 | |
| --- a/drivers/mtd/mtdcore.c
 | |
| +++ b/drivers/mtd/mtdcore.c
 | |
| @@ -27,6 +27,7 @@
 | |
|  #include <linux/reboot.h>
 | |
|  #include <linux/leds.h>
 | |
|  #include <linux/debugfs.h>
 | |
| +#include <linux/root_dev.h>
 | |
|  #include <linux/nvmem-provider.h>
 | |
|  
 | |
|  #include <linux/mtd/mtd.h>
 | |
| @@ -699,6 +700,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_nvmem_add:
 |