diff options
author | Axel Lin <axel.lin@ingics.com> | 2014-01-07 19:04:03 +0800 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2014-01-07 11:38:00 +0000 |
commit | e3d8bee38543b1f3e6731916c4f11bea4d9f760f (patch) | |
tree | 8cc2d2fc15e5bff0dfacdd320bb9f5cf1d3cb333 /drivers/spi/spi-ti-qspi.c | |
parent | f17414c4fcf138740dbbd463171101026b6f78de (diff) | |
download | op-kernel-dev-e3d8bee38543b1f3e6731916c4f11bea4d9f760f.zip op-kernel-dev-e3d8bee38543b1f3e6731916c4f11bea4d9f760f.tar.gz |
spi: ti-qspi: Fix getting correct address for qspi
Now platform_get_drvdata() returns the address of qspi rather than master.
Also drop unneeded spi_unregister_master() call in ti_qspi_remove() because
we use devm_spi_register_master() in probe.
commit cbcabb7a300b "spi/qspi: Fix qspi remove path" assumes
platform_get_drvdata() returns address of master. However,
commit 160a061301c7 "spi/qspi: set correct platform drvdata in ti_qspi_probe()"
pass qspi to platform_set_drvdata().
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Reviewed-by: Sourav Poddar <sourav.poddar@ti.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'drivers/spi/spi-ti-qspi.c')
-rw-r--r-- | drivers/spi/spi-ti-qspi.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/drivers/spi/spi-ti-qspi.c b/drivers/spi/spi-ti-qspi.c index 06ee189..286cf8d 100644 --- a/drivers/spi/spi-ti-qspi.c +++ b/drivers/spi/spi-ti-qspi.c @@ -514,13 +514,9 @@ free_master: static int ti_qspi_remove(struct platform_device *pdev) { - struct spi_master *master; - struct ti_qspi *qspi; + struct ti_qspi *qspi = platform_get_drvdata(pdev); int ret; - master = platform_get_drvdata(pdev); - qspi = spi_master_get_devdata(master); - ret = pm_runtime_get_sync(qspi->dev); if (ret < 0) { dev_err(qspi->dev, "pm_runtime_get_sync() failed\n"); @@ -532,8 +528,6 @@ static int ti_qspi_remove(struct platform_device *pdev) pm_runtime_put(qspi->dev); pm_runtime_disable(&pdev->dev); - spi_unregister_master(master); - return 0; } |