diff options
Diffstat (limited to 'target/linux/ar71xx/patches-4.14/407-mtd-m25p80-allow-to-pass-probe-types-via-platform-data.patch')
-rw-r--r-- | target/linux/ar71xx/patches-4.14/407-mtd-m25p80-allow-to-pass-probe-types-via-platform-data.patch | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/target/linux/ar71xx/patches-4.14/407-mtd-m25p80-allow-to-pass-probe-types-via-platform-data.patch b/target/linux/ar71xx/patches-4.14/407-mtd-m25p80-allow-to-pass-probe-types-via-platform-data.patch new file mode 100644 index 0000000000..cfc84c4afa --- /dev/null +++ b/target/linux/ar71xx/patches-4.14/407-mtd-m25p80-allow-to-pass-probe-types-via-platform-data.patch @@ -0,0 +1,34 @@ +--- a/drivers/mtd/devices/m25p80.c ++++ b/drivers/mtd/devices/m25p80.c +@@ -195,6 +195,7 @@ static ssize_t m25p80_read(struct spi_no + */ + static int m25p_probe(struct spi_device *spi) + { ++ struct mtd_part_parser_data ppdata = {0,}; + struct flash_platform_data *data; + struct m25p *flash; + struct spi_nor *nor; +@@ -247,8 +248,11 @@ static int m25p_probe(struct spi_device + if (ret) + return ret; + +- return mtd_device_register(&nor->mtd, data ? data->parts : NULL, +- data ? data->nr_parts : 0); ++ return mtd_device_parse_register(&nor->mtd, ++ data ? data->part_probes : NULL, ++ &ppdata, ++ data ? data->parts : NULL, ++ data ? data->nr_parts : 0); + } + + +--- a/include/linux/spi/flash.h ++++ b/include/linux/spi/flash.h +@@ -24,6 +24,7 @@ struct flash_platform_data { + unsigned int nr_parts; + + char *type; ++ const char **part_probes; + + /* we'll likely add more ... use JEDEC IDs, etc */ + }; |