Re: [PATCH 2/2] spi: atmel: add PM support to SAMA5D2
From: Nicolas Ferre
Date: Wed Apr 12 2017 - 05:08:51 EST
Le 12/04/2017 à 09:05, Quentin Schulz a écrit :
> This adds PM support to the ATMEL SAMA5D2 Xplained.
Well not only for this board. The Backup+Self-Refresh PM state is
available for all boards using the SAMA5D2 SoC (and beyond)...
> When suspending, VDDCore is shut down and the SPI registers are lost.
Yes, but only on sama5d2 and only if the Backup+Self-Refresh (or deepest
PM state on sama5d2).
> Thus, the SPI controller needs to be re-initialized after resuming from
> a system suspend.
>
> Signed-off-by: Quentin Schulz <quentin.schulz@xxxxxxxxxxxxxxxxxx>
I'm okay with the core of the patch but would prefer a modified commit
message.
Best regards,
> ---
> drivers/spi/spi-atmel.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/drivers/spi/spi-atmel.c b/drivers/spi/spi-atmel.c
> index 247d920..1eb83c9 100644
> --- a/drivers/spi/spi-atmel.c
> +++ b/drivers/spi/spi-atmel.c
> @@ -1702,8 +1702,17 @@ static int atmel_spi_suspend(struct device *dev)
> static int atmel_spi_resume(struct device *dev)
> {
> struct spi_master *master = dev_get_drvdata(dev);
> + struct atmel_spi *as = spi_master_get_devdata(master);
> int ret;
>
> + ret = clk_prepare_enable(as->clk);
> + if (ret)
> + return ret;
> +
> + atmel_spi_init(as);
> +
> + clk_disable_unprepare(as->clk);
> +
> if (!pm_runtime_suspended(dev)) {
> ret = atmel_spi_runtime_resume(dev);
> if (ret)
>
--
Nicolas Ferre