mtd: spi-nor: assign mtd->priv in spi_nor_scan()
Linux-MTD Mailing List
linux-mtd at lists.infradead.org
Fri Nov 6 10:59:01 PST 2015
Gitweb: http://git.infradead.org/?p=mtd-2.6.git;a=commit;h=c9ec3900abf279d9276a0661c9bed2550c1f0bb5
Commit: c9ec3900abf279d9276a0661c9bed2550c1f0bb5
Parent: 0f12a27b47284e86eaa4a5ad3877ec3018463178
Author: Brian Norris <computersforpeace at gmail.com>
AuthorDate: Thu Aug 13 15:46:03 2015 -0700
Committer: Brian Norris <computersforpeace at gmail.com>
CommitDate: Wed Sep 2 14:11:40 2015 -0700
mtd: spi-nor: assign mtd->priv in spi_nor_scan()
Layering suggests that the SPI NOR layer (not the hardware driver)
should be initializing the MTD layer.
Signed-off-by: Brian Norris <computersforpeace at gmail.com>
Tested-by: Joachim Eastwood <manabian at gmail.com>
---
drivers/mtd/devices/m25p80.c | 1 -
drivers/mtd/spi-nor/fsl-quadspi.c | 1 -
drivers/mtd/spi-nor/nxp-spifi.c | 1 -
drivers/mtd/spi-nor/spi-nor.c | 1 +
4 files changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/mtd/devices/m25p80.c b/drivers/mtd/devices/m25p80.c
index 9cd3631..24965ae 100644
--- a/drivers/mtd/devices/m25p80.c
+++ b/drivers/mtd/devices/m25p80.c
@@ -205,7 +205,6 @@ static int m25p_probe(struct spi_device *spi)
nor->priv = flash;
spi_set_drvdata(spi, flash);
- flash->mtd.priv = nor;
flash->spi = spi;
if (spi->mode & SPI_RX_QUAD)
diff --git a/drivers/mtd/spi-nor/fsl-quadspi.c b/drivers/mtd/spi-nor/fsl-quadspi.c
index d32b7e0..ad9f73a 100644
--- a/drivers/mtd/spi-nor/fsl-quadspi.c
+++ b/drivers/mtd/spi-nor/fsl-quadspi.c
@@ -1018,7 +1018,6 @@ static int fsl_qspi_probe(struct platform_device *pdev)
nor->mtd = mtd;
nor->dev = dev;
nor->priv = q;
- mtd->priv = nor;
/* fill the hooks */
nor->read_reg = fsl_qspi_read_reg;
diff --git a/drivers/mtd/spi-nor/nxp-spifi.c b/drivers/mtd/spi-nor/nxp-spifi.c
index 9ad1dd0..ce6a478 100644
--- a/drivers/mtd/spi-nor/nxp-spifi.c
+++ b/drivers/mtd/spi-nor/nxp-spifi.c
@@ -331,7 +331,6 @@ static int nxp_spifi_setup_flash(struct nxp_spifi *spifi,
writel(ctrl, spifi->io_base + SPIFI_CTRL);
- spifi->mtd.priv = &spifi->nor;
spifi->nor.mtd = &spifi->mtd;
spifi->nor.dev = spifi->dev;
spifi->nor.priv = spifi;
diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c
index 25372f9..d98180e 100644
--- a/drivers/mtd/spi-nor/spi-nor.c
+++ b/drivers/mtd/spi-nor/spi-nor.c
@@ -1061,6 +1061,7 @@ int spi_nor_scan(struct spi_nor *nor, const char *name, enum read_mode mode)
if (!mtd->name)
mtd->name = dev_name(dev);
+ mtd->priv = nor;
mtd->type = MTD_NORFLASH;
mtd->writesize = 1;
mtd->flags = MTD_CAP_NORFLASH;
More information about the linux-mtd-cvs
mailing list