51 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From 42e9401bd1467d22c4dc4d2c637347b874e6a80b Mon Sep 17 00:00:00 2001
 | 
						|
From: Sascha Hauer <s.hauer@pengutronix.de>
 | 
						|
Date: Thu, 9 Feb 2017 11:50:24 +0100
 | 
						|
Subject: [PATCH] mtd: Add partition device node to mtd partition devices
 | 
						|
MIME-Version: 1.0
 | 
						|
Content-Type: text/plain; charset=UTF-8
 | 
						|
Content-Transfer-Encoding: 8bit
 | 
						|
 | 
						|
The user visible change here is that mtd partitions get an of_node link
 | 
						|
in sysfs.
 | 
						|
 | 
						|
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
 | 
						|
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
 | 
						|
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
 | 
						|
---
 | 
						|
 drivers/mtd/mtdpart.c          | 1 +
 | 
						|
 drivers/mtd/ofpart.c           | 1 +
 | 
						|
 include/linux/mtd/partitions.h | 1 +
 | 
						|
 3 files changed, 3 insertions(+)
 | 
						|
 | 
						|
--- a/drivers/mtd/mtdpart.c
 | 
						|
+++ b/drivers/mtd/mtdpart.c
 | 
						|
@@ -432,6 +432,7 @@ static struct mtd_part *allocate_partiti
 | 
						|
 	slave->mtd.dev.parent = IS_ENABLED(CONFIG_MTD_PARTITIONED_MASTER) ?
 | 
						|
 				&master->dev :
 | 
						|
 				master->dev.parent;
 | 
						|
+	slave->mtd.dev.of_node = part->of_node;
 | 
						|
 
 | 
						|
 	slave->mtd._read = part_read;
 | 
						|
 	slave->mtd._write = part_write;
 | 
						|
--- a/drivers/mtd/ofpart.c
 | 
						|
+++ b/drivers/mtd/ofpart.c
 | 
						|
@@ -108,6 +108,7 @@ static int parse_ofpart_partitions(struc
 | 
						|
 
 | 
						|
 		parts[i].offset = of_read_number(reg, a_cells);
 | 
						|
 		parts[i].size = of_read_number(reg + a_cells, s_cells);
 | 
						|
+		parts[i].of_node = pp;
 | 
						|
 
 | 
						|
 		partname = of_get_property(pp, "label", &len);
 | 
						|
 		if (!partname)
 | 
						|
--- a/include/linux/mtd/partitions.h
 | 
						|
+++ b/include/linux/mtd/partitions.h
 | 
						|
@@ -41,6 +41,7 @@ struct mtd_partition {
 | 
						|
 	uint64_t size;			/* partition size */
 | 
						|
 	uint64_t offset;		/* offset within the master MTD space */
 | 
						|
 	uint32_t mask_flags;		/* master MTD flags to mask out for this partition */
 | 
						|
+	struct device_node *of_node;
 | 
						|
 };
 | 
						|
 
 | 
						|
 #define MTDPART_OFS_RETAIN	(-3)
 |