summaryrefslogtreecommitdiff
path: root/target/linux/lantiq/patches-3.8/0001-MTD-m25p80-allow-loading-mtd-name-from-OF.patch
blob: 6df2beb1cad2a7190a40ac0d9419ea939579465c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
From e65ecb8f256b5839690a240d9b14e303686f9ede Mon Sep 17 00:00:00 2001
From: John Crispin <blogic@openwrt.org>
Date: Tue, 29 Jan 2013 21:11:55 +0100
Subject: [PATCH 01/40] MTD: m25p80: allow loading mtd name from OF

In accordance with the physmap flash we should honour the linux,mtd-name
property when deciding what name the mtd device has.

Signed-off-by: Thomas Langer <thomas.langer@lantiq.com>
Signed-off-by: John Crispin <blogic@openwrt.org>
---
 drivers/mtd/devices/m25p80.c |    5 +++++
 1 file changed, 5 insertions(+)

--- a/drivers/mtd/devices/m25p80.c
+++ b/drivers/mtd/devices/m25p80.c
@@ -828,10 +828,13 @@ static int m25p_probe(struct spi_device
 	unsigned			i;
 	struct mtd_part_parser_data	ppdata;
 	struct device_node __maybe_unused *np = spi->dev.of_node;
+	const char __maybe_unused	*of_mtd_name = NULL;
 
 #ifdef CONFIG_MTD_OF_PARTS
 	if (!of_device_is_available(np))
 		return -ENODEV;
+	of_property_read_string(spi->dev.of_node,
+					"linux,mtd-name", &of_mtd_name);
 #endif
 
 	/* Platform data helps sort out which chip type we have, as
@@ -907,6 +910,8 @@ static int m25p_probe(struct spi_device
 
 	if (data && data->name)
 		flash->mtd.name = data->name;
+	else if (of_mtd_name)
+		flash->mtd.name = of_mtd_name;
 	else
 		flash->mtd.name = dev_name(&spi->dev);