]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
mtd: devices: m25p80: Use spi_mem_set_drvdata() instead of spi_set_drvdata()
authorBoris Brezillon <boris.brezillon@bootlin.com>
Tue, 22 May 2018 10:55:14 +0000 (12:55 +0200)
committerMark Brown <broonie@kernel.org>
Tue, 22 May 2018 10:56:34 +0000 (11:56 +0100)
SPI mem drivers should use spi_mem_set_drvdata() not spi_set_drvdata()
to store their private data. Using spi_set_drvdata() will mess the
spi -> spi-mem link up and cause a kernel panic at shutdown or
device removal time.

Fixes: 4120f8d158ef ("mtd: spi-nor: Use the spi_mem_xx() API")
Reported-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
Tested-by: Geert Uytterhoeven <geert+renesas@glider.be>
Tested-by: Marek Vasut <marek.vasut+renesas@gmail.com> on R8A7791 Porter
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/mtd/devices/m25p80.c

index 3dc022d3b53e396bc15b4482116317e3ac72b5a3..e84563d2067f4fe28c1f0ed21defda049323dd36 100644 (file)
@@ -182,7 +182,7 @@ static int m25p_probe(struct spi_mem *spimem)
        spi_nor_set_flash_node(nor, spi->dev.of_node);
        nor->priv = flash;
 
-       spi_set_drvdata(spi, flash);
+       spi_mem_set_drvdata(spimem, flash);
        flash->spimem = spimem;
 
        if (spi->mode & SPI_RX_QUAD) {