[PATCH v13 12/15] mtd: spi-nor: core: disable Octal DTR mode on suspend.
Tudor.Ambarus at microchip.com
Tudor.Ambarus at microchip.com
Wed Sep 30 03:40:55 EDT 2020
On 9/16/20 3:44 PM, Pratyush Yadav wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>
> On resume, the init procedure will be run that will re-enable it.
>
> Signed-off-by: Pratyush Yadav <p.yadav at ti.com>
> ---
> drivers/mtd/spi-nor/core.c | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/drivers/mtd/spi-nor/core.c b/drivers/mtd/spi-nor/core.c
> index 853dfa02f0de..d5c92c9c7307 100644
> --- a/drivers/mtd/spi-nor/core.c
> +++ b/drivers/mtd/spi-nor/core.c
> @@ -3212,6 +3212,23 @@ static void spi_nor_soft_reset(struct spi_nor *nor)
> usleep_range(SPI_NOR_SRST_SLEEP_MIN, SPI_NOR_SRST_SLEEP_MAX);
> }
>
> +/* mtd suspend handler */
> +static int spi_nor_suspend(struct mtd_info *mtd)
> +{
> + struct spi_nor *nor = mtd_to_spi_nor(mtd);
> + struct device *dev = nor->dev;
> + int ret;
> +
> + /* Disable octal DTR mode if we enabled it. */
> + ret = spi_nor_octal_dtr_enable(nor, false);
> + if (ret) {
> + dev_err(dev, "suspend() failed\n");
we can get rid of dev local variable as it is used only once. you can use
nor->dev directly
> + return ret;
> + }
and maybe just return ret; directly. spi_nor_octal_dtr_enable() returns 0 on
success.
Looks good.
> +
> + return 0;
> +}
> +
> /* mtd resume handler */
> static void spi_nor_resume(struct mtd_info *mtd)
> {
> @@ -3406,6 +3423,7 @@ int spi_nor_scan(struct spi_nor *nor, const char *name,
> mtd->size = nor->params->size;
> mtd->_erase = spi_nor_erase;
> mtd->_read = spi_nor_read;
> + mtd->_suspend = spi_nor_suspend;
> mtd->_resume = spi_nor_resume;
>
> if (nor->params->locking_ops) {
> --
> 2.28.0
>
More information about the linux-mtd
mailing list