spi: ti-qspi: Fix getting correct address for qspi
authorAxel Lin <axel.lin@ingics.com>
Tue, 7 Jan 2014 11:04:03 +0000 (19:04 +0800)
committerMark Brown <broonie@linaro.org>
Tue, 7 Jan 2014 11:38:00 +0000 (11:38 +0000)
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>
drivers/spi/spi-ti-qspi.c

index 06ee189..286cf8d 100644 (file)
@@ -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;
 }