Re: [PATCH v3 1/2] SPI: Add driver for Cadence SPI controller
From: Mark Brown
Date: Thu Apr 10 2014 - 18:49:05 EST
On Thu, Apr 10, 2014 at 05:43:49PM +0530, Harini Katakam wrote:
> Add driver for Cadence SPI controller. This is used in Xilinx Zynq.
This looks mostly good, the issues below are very small.
> +static int __maybe_unused cdns_spi_suspend(struct device *dev)
> +{
> + struct platform_device *pdev = container_of(dev,
> + struct platform_device, dev);
> + struct spi_master *master = platform_get_drvdata(pdev);
> + struct cdns_spi *xspi = spi_master_get_devdata(master);
> +
> + spi_master_suspend(master);
> +
> + clk_disable(xspi->ref_clk);
> +
> + clk_disable(xspi->pclk);
You're only doing clk_disable() here, I would expect the clocks to also
be unprepared over suspend - there is no value in leaving them prepared
that I can see. Just use clk_unprepare_disable().
It would also be good (though not essential) to implement runtime PM and
disable the clocks while there are no transfers in progress for a small
power saving. The auto_runtime_pm feature in the core will do the
runtime PM calls for you.
Otherwise this looks good.
Attachment:
signature.asc
Description: Digital signature