74d00a8c38
* properly format/comment all patches * merge debloat patches * merge Kconfig patches * merge swconfig patches * merge hotplug patches * drop 200-fix_localversion.patch - upstream * drop 222-arm_zimage_none.patch - unused * drop 252-mv_cesa_depends.patch - no longer required * drop 410-mtd-move-forward-declaration-of-struct-mtd_info.patch - unused * drop 661-fq_codel_keep_dropped_stats.patch - outdated * drop 702-phy_add_aneg_done_function.patch - upstream * drop 840-rtc7301.patch - unused * drop 841-rtc_pt7c4338.patch - upstream * drop 921-use_preinit_as_init.patch - unused * drop spio-gpio-old and gpio-mmc - unused Signed-off-by: John Crispin <john@phrozen.org>
39 lines
1,004 B
Diff
39 lines
1,004 B
Diff
--- a/drivers/mtd/devices/m25p80.c
|
|
+++ b/drivers/mtd/devices/m25p80.c
|
|
@@ -310,11 +310,21 @@ static const struct spi_device_id m25p_i
|
|
};
|
|
MODULE_DEVICE_TABLE(spi, m25p_ids);
|
|
|
|
+static const struct of_device_id m25p_of_table[] = {
|
|
+ /*
|
|
+ * Generic compatibility for SPI NOR that can be identified by the
|
|
+ * JEDEC READ ID opcode (0x9F). Use this, if possible.
|
|
+ */
|
|
+ { .compatible = "jedec,spi-nor" },
|
|
+ {}
|
|
+};
|
|
+MODULE_DEVICE_TABLE(of, m25p_of_table);
|
|
|
|
static struct spi_driver m25p80_driver = {
|
|
.driver = {
|
|
.name = "m25p80",
|
|
.owner = THIS_MODULE,
|
|
+ .of_match_table = m25p_of_table,
|
|
},
|
|
.id_table = m25p_ids,
|
|
.probe = m25p_probe,
|
|
--- a/drivers/mtd/spi-nor/spi-nor.c
|
|
+++ b/drivers/mtd/spi-nor/spi-nor.c
|
|
@@ -927,8 +927,11 @@ int spi_nor_scan(struct spi_nor *nor, co
|
|
if (ret)
|
|
return ret;
|
|
|
|
- id = spi_nor_match_id(name);
|
|
+ if (name)
|
|
+ id = spi_nor_match_id(name);
|
|
if (!id)
|
|
+ id = nor->read_id(nor);
|
|
+ if (IS_ERR_OR_NULL(id))
|
|
return -ENOENT;
|
|
|
|
info = (void *)id->driver_data;
|