diff options
Diffstat (limited to 'drivers/spi/spi-qup.c')
| -rw-r--r-- | drivers/spi/spi-qup.c | 11 | 
1 files changed, 7 insertions, 4 deletions
| diff --git a/drivers/spi/spi-qup.c b/drivers/spi/spi-qup.c index dd3434a407ea..a364b99497e2 100644 --- a/drivers/spi/spi-qup.c +++ b/drivers/spi/spi-qup.c @@ -1217,6 +1217,11 @@ static int spi_qup_suspend(struct device *device)  	struct spi_qup *controller = spi_master_get_devdata(master);  	int ret; +	if (pm_runtime_suspended(device)) { +		ret = spi_qup_pm_resume_runtime(device); +		if (ret) +			return ret; +	}  	ret = spi_master_suspend(master);  	if (ret)  		return ret; @@ -1225,10 +1230,8 @@ static int spi_qup_suspend(struct device *device)  	if (ret)  		return ret; -	if (!pm_runtime_suspended(device)) { -		clk_disable_unprepare(controller->cclk); -		clk_disable_unprepare(controller->iclk); -	} +	clk_disable_unprepare(controller->cclk); +	clk_disable_unprepare(controller->iclk);  	return 0;  } |