ea68fc474f1917820cfb9d93fa3e31760402422d
[librecmc/librecmc.git] /
1 From 42e9401bd1467d22c4dc4d2c637347b874e6a80b Mon Sep 17 00:00:00 2001
2 From: Sascha Hauer <s.hauer@pengutronix.de>
3 Date: Thu, 9 Feb 2017 11:50:24 +0100
4 Subject: [PATCH] mtd: Add partition device node to mtd partition devices
5 MIME-Version: 1.0
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
8
9 The user visible change here is that mtd partitions get an of_node link
10 in sysfs.
11
12 Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
13 Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
14 Signed-off-by: Brian Norris <computersforpeace@gmail.com>
15 ---
16  drivers/mtd/mtdpart.c          | 1 +
17  drivers/mtd/ofpart.c           | 1 +
18  include/linux/mtd/partitions.h | 1 +
19  3 files changed, 3 insertions(+)
20
21 --- a/drivers/mtd/mtdpart.c
22 +++ b/drivers/mtd/mtdpart.c
23 @@ -432,6 +432,7 @@ static struct mtd_part *allocate_partiti
24         slave->mtd.dev.parent = IS_ENABLED(CONFIG_MTD_PARTITIONED_MASTER) ?
25                                 &master->dev :
26                                 master->dev.parent;
27 +       slave->mtd.dev.of_node = part->of_node;
28  
29         slave->mtd._read = part_read;
30         slave->mtd._write = part_write;
31 --- a/drivers/mtd/ofpart.c
32 +++ b/drivers/mtd/ofpart.c
33 @@ -108,6 +108,7 @@ static int parse_ofpart_partitions(struc
34  
35                 parts[i].offset = of_read_number(reg, a_cells);
36                 parts[i].size = of_read_number(reg + a_cells, s_cells);
37 +               parts[i].of_node = pp;
38  
39                 partname = of_get_property(pp, "label", &len);
40                 if (!partname)
41 --- a/include/linux/mtd/partitions.h
42 +++ b/include/linux/mtd/partitions.h
43 @@ -41,6 +41,7 @@ struct mtd_partition {
44         uint64_t size;                  /* partition size */
45         uint64_t offset;                /* offset within the master MTD space */
46         uint32_t mask_flags;            /* master MTD flags to mask out for this partition */
47 +       struct device_node *of_node;
48  };
49  
50  #define MTDPART_OFS_RETAIN     (-3)