Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp3342841imm; Mon, 4 Jun 2018 01:47:58 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKQNh7Iu3G2IJHIfQIPb7zo8Qo3XeOMjhDKIh5f0rBNWMVlwSAh/VXkv7OBRBJVtOoe7tr1 X-Received: by 2002:a62:121a:: with SMTP id a26-v6mr16489673pfj.104.1528102078384; Mon, 04 Jun 2018 01:47:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1528102078; cv=none; d=google.com; s=arc-20160816; b=V2L/ATLEHhNcaFroba3x4Fuxl9M5MBi9xCCvtaaxnjqI7xSM16F/AU2Mp0UGyFmNvy vU4dds9yZoe4hX74h6ZCMIvSUoKuGgUJpRbhS3mXEmH8VXJhEiMr8Nmg75N1/Y1eE4i/ inkDu32R0BPGTwEsKF9OTpcdK/sKXfPsrwQejK5syBR4XUlvey84ARg+ITTZDHkj1UbC +/ipya36MMpTghx5CvM18s12DQbgD7Js5c2eD/S7YUFuP534dMh5Gixd/gAT50wJjadd bptM65qSp8RFg/DULl77KqzQh84Avqbzr0hjHD/K7Qs+a8PtZCXrZY4sqk8pRO2v+Um8 AduQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:date:subject:cc :to:from:arc-authentication-results; bh=UPNYj3X8UwR5K1S/A9u9UpsDw/GMwRdlGqnbWv6JolA=; b=sxlPzXAMFmMudXP6w0GmsasWtZi9EBDLArx6l8PiFGtucXLknlfWhkyB4usHQxo9jI gPT6bPnz9EqEh1hPcVCp2POIrbHglpqnQ3HX6ZTZPw49BjZntiD3UXz8InzyTXeHu7hQ uuktoEBNwsuP3Q2f3jYYXm1ZHC+Wpm6GT/ji8LetoZn+BWy+GUKI6gKdxiBK0390sbNo DSQl/B9mEcjkUujHL6iNJBbT6vWzR4bVbbYMc2YrHSPOjFYv1dTHmNviWw6okEiXKBOt BSg5XlDWWsU1TE6Bi8Y8GjUP3raOrs9jJHPapxvmdgWR+jRx0KssG//xn27jf9r9jRyD a54g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c88-v6si8272349pfe.29.2018.06.04.01.47.43; Mon, 04 Jun 2018 01:47:58 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752123AbeFDIqq (ORCPT + 99 others); Mon, 4 Jun 2018 04:46:46 -0400 Received: from esa2.microchip.iphmx.com ([68.232.149.84]:35696 "EHLO esa2.microchip.iphmx.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751626AbeFDIqo (ORCPT ); Mon, 4 Jun 2018 04:46:44 -0400 X-IronPort-AV: E=Sophos;i="5.49,476,1520924400"; d="scan'208";a="14820780" Received: from smtpout.microchip.com (HELO email.microchip.com) ([198.175.253.82]) by esa2.microchip.iphmx.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 04 Jun 2018 01:46:44 -0700 Received: from m18063-ThinkPad-T460p.microchip.com (10.10.76.4) by chn-sv-exch07.mchp-main.com (10.10.76.108) with Microsoft SMTP Server id 14.3.352.0; Mon, 4 Jun 2018 01:46:43 -0700 From: Claudiu Beznea To: , , , , , , CC: , , , Claudiu Beznea Subject: [PATCH v2] mtd: atmel-quadspi: add suspend/resume hooks Date: Mon, 4 Jun 2018 11:46:33 +0300 Message-ID: <1528101993-4772-1-git-send-email-claudiu.beznea@microchip.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Implement suspend/resume hooks. Signed-off-by: Claudiu Beznea --- Changes in v2: - use __maybe_unused instead of #ifdef CONFIG_PM_SLEEP drivers/mtd/spi-nor/atmel-quadspi.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/drivers/mtd/spi-nor/atmel-quadspi.c b/drivers/mtd/spi-nor/atmel-quadspi.c index 6c5708bacad8..ceaaef47f02e 100644 --- a/drivers/mtd/spi-nor/atmel-quadspi.c +++ b/drivers/mtd/spi-nor/atmel-quadspi.c @@ -737,6 +737,26 @@ static int atmel_qspi_remove(struct platform_device *pdev) return 0; } +static int __maybe_unused atmel_qspi_suspend(struct device *dev) +{ + struct atmel_qspi *aq = dev_get_drvdata(dev); + + clk_disable_unprepare(aq->clk); + + return 0; +} + +static int __maybe_unused atmel_qspi_resume(struct device *dev) +{ + struct atmel_qspi *aq = dev_get_drvdata(dev); + + clk_prepare_enable(aq->clk); + + return atmel_qspi_init(aq); +} + +static SIMPLE_DEV_PM_OPS(atmel_qspi_pm_ops, atmel_qspi_suspend, + atmel_qspi_resume); static const struct of_device_id atmel_qspi_dt_ids[] = { { .compatible = "atmel,sama5d2-qspi" }, @@ -749,6 +769,7 @@ static struct platform_driver atmel_qspi_driver = { .driver = { .name = "atmel_qspi", .of_match_table = atmel_qspi_dt_ids, + .pm = &atmel_qspi_pm_ops, }, .probe = atmel_qspi_probe, .remove = atmel_qspi_remove, -- 2.7.4