From 5f949137952020214cd167093dd7be448f21c079 Mon Sep 17 00:00:00 2001 From: Shaohui Xie Date: Fri, 14 Oct 2011 15:49:00 +0800 Subject: [PATCH] mtd: m25p80: don't probe device which has status of 'disabled' On some platforms such as P3060QDS, has multiple spi flashes, but they are not available at same time, so if their status is 'disabled', which is set by u-boot, will not be probed. Signed-off-by: Shaohui Xie Signed-off-by: Artem Bityutskiy --- drivers/mtd/devices/m25p80.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/mtd/devices/m25p80.c b/drivers/mtd/devices/m25p80.c index 02aecac..884904d 100644 --- a/drivers/mtd/devices/m25p80.c +++ b/drivers/mtd/devices/m25p80.c @@ -30,6 +30,7 @@ #include #include #include +#include #include #include @@ -823,6 +824,11 @@ static int __devinit m25p_probe(struct spi_device *spi) unsigned i; struct mtd_part_parser_data ppdata; +#ifdef CONFIG_MTD_OF_PARTS + if (!of_device_is_available(spi->dev.of_node)) + return -ENODEV; +#endif + /* Platform data helps sort out which chip type we have, as * well as how this board partitions it. If we don't have * a chip ID, try the JEDEC id commands; they'll work for most -- 2.7.4