OSDN Git Service

spi: bcm-qspi: Make PM suspend/resume work with SCMI clock management
authorKamal Dasu <kdasu.kdev@gmail.com>
Mon, 20 Apr 2020 19:08:50 +0000 (15:08 -0400)
committerMark Brown <broonie@kernel.org>
Tue, 21 Apr 2020 15:05:55 +0000 (16:05 +0100)
SCMI only passes clk_prepare_enable() and clk_disable_unprepare(), made
changes to suspend/resume ops to use the appropriate calls so that PM
works for ARM and ARM64 platforms.

Signed-off-by: Kamal Dasu <kdasu.kdev@gmail.com>
Link: https://lore.kernel.org/r/20200420190853.45614-7-kdasu.kdev@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-bcm-qspi.c

index a4c70ac..22f9fe1 100644 (file)
@@ -1411,7 +1411,7 @@ static int __maybe_unused bcm_qspi_suspend(struct device *dev)
                        bcm_qspi_read(qspi, BSPI, BSPI_STRAP_OVERRIDE_CTRL);
 
        spi_master_suspend(qspi->master);
-       clk_disable(qspi->clk);
+       clk_disable_unprepare(qspi->clk);
        bcm_qspi_hw_uninit(qspi);
 
        return 0;
@@ -1429,7 +1429,7 @@ static int __maybe_unused bcm_qspi_resume(struct device *dev)
                qspi->soc_intc->bcm_qspi_int_set(qspi->soc_intc, MSPI_DONE,
                                                 true);
 
-       ret = clk_enable(qspi->clk);
+       ret = clk_prepare_enable(qspi->clk);
        if (!ret)
                spi_master_resume(qspi->master);