From patchwork Mon Jan 2 11:56:04 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johan Hovold X-Patchwork-Id: 710166 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3tsbDK6pmrz9t0v for ; Mon, 2 Jan 2017 22:57:37 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="I0WNduF/"; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755686AbdABL5P (ORCPT ); Mon, 2 Jan 2017 06:57:15 -0500 Received: from mail-lf0-f67.google.com ([209.85.215.67]:35527 "EHLO mail-lf0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755538AbdABL4d (ORCPT ); Mon, 2 Jan 2017 06:56:33 -0500 Received: by mail-lf0-f67.google.com with SMTP id x140so25611616lfa.2; Mon, 02 Jan 2017 03:56:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=atPcyFsL6ylI+uJ2SC46xe1vYsAfBAENBF0l7tdN15E=; b=I0WNduF/uCZqWcimA8pbvOgSyFHkkgj9kc5e7kZz484/LvwZtcWe2RXnFCA1fEmfp1 KKniR3NQiSXcZwCwKCGdJYtRwufFmU60++H0Ha9FUVeHjCKOHKzYcjb/9IBxPNyu3U9N 9OSZoRv4W3gjJjRab1yNAYYO/xkuOC7JQRiDul+zOxdbl8NIMbELUS0xiu/w1nbWMfMW SFLDlBeqmc8Lauq+tOA8TTy1wK9Jjrhk7v0LD6H0E7B9SIgFDPCqOnWOvLv6dC98Uduy xrYAhcW3nTM+xWaxIXYP/6TMX2yKJ3K8eMNZho1GxjUs2hBTzOdw/WAn71R1AHob2nTZ sYVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=atPcyFsL6ylI+uJ2SC46xe1vYsAfBAENBF0l7tdN15E=; b=A1pVi5tQmoVojOqCFltdDOEtM5y6IHyhSwG5e2AVICLDjt7VALBfCJDniZD/zY82jP 5Y+EhZdFXkfWoukIad26bEzu4ULFA7oOkN0w5aBZ0qn4+WVmv05zsXE/iYK309likl/I c6kJCFaW3yRiadqEI1C+JV1knIZH6Qq7iQO9aOT4I7Pu6FWpNXRHryOXlAoyEagKNfDf r6AEfWdsX4xlrPH6L+Km7tjncqtjziM70V2+YoG/yUpQksDIkKwKIRdvDTEbp/jcE1nw g09PGngC0YsctDF7MjvNxynk/jgEMUqNy1sgF7dBqLMZdkRFjxijWnfhdH6IKzntitOD fzHw== X-Gm-Message-State: AIkVDXLtN209/e+aHksbUrhmQ9uDnTShY+9mnS+2ulHYXJON64lHWmN2P4hkxVjAY145ew== X-Received: by 10.25.160.20 with SMTP id j20mr9763642lfe.66.1483358191976; Mon, 02 Jan 2017 03:56:31 -0800 (PST) Received: from xi.terra (c-04aadb54.07-184-6d6c6d4.cust.bredbandsbolaget.se. [84.219.170.4]) by smtp.gmail.com with ESMTPSA id 32sm8330042lfv.21.2017.01.02.03.56.29 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 02 Jan 2017 03:56:30 -0800 (PST) Received: from johan by xi.terra with local (Exim 4.88) (envelope-from ) id 1cO1E5-0008Ss-Aw; Mon, 02 Jan 2017 12:56:29 +0100 From: Johan Hovold To: "David S. Miller" Cc: Giuseppe Cavallaro , Alexandre Torgue , Neil Armstrong , netdev@vger.kernel.org, linux-oxnas@lists.tuxfamily.org, linux-kernel@vger.kernel.org, Johan Hovold Subject: [PATCH net 3/3] net: stmmac: dwmac-oxnas: use generic pm implementation Date: Mon, 2 Jan 2017 12:56:04 +0100 Message-Id: <20170102115604.32482-4-johan@kernel.org> X-Mailer: git-send-email 2.10.2 In-Reply-To: <20170102115604.32482-1-johan@kernel.org> References: <20170102115604.32482-1-johan@kernel.org> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Now that we have an exit callback in place, add init as well and get rid of the custom PM callbacks in favour of the generic ones. Signed-off-by: Johan Hovold --- drivers/net/ethernet/stmicro/stmmac/dwmac-oxnas.c | 38 +++-------------------- 1 file changed, 5 insertions(+), 33 deletions(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-oxnas.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-oxnas.c index 3efd110613df..3dc7d279f805 100644 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-oxnas.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-oxnas.c @@ -60,8 +60,9 @@ struct oxnas_dwmac { struct regmap *regmap; }; -static int oxnas_dwmac_init(struct oxnas_dwmac *dwmac) +static int oxnas_dwmac_init(struct platform_device *pdev, void *priv) { + struct oxnas_dwmac *dwmac = priv; unsigned int value; int ret; @@ -135,6 +136,7 @@ static int oxnas_dwmac_probe(struct platform_device *pdev) dwmac->dev = &pdev->dev; plat_dat->bsp_priv = dwmac; + plat_dat->init = oxnas_dwmac_init; plat_dat->exit = oxnas_dwmac_exit; dwmac->regmap = syscon_regmap_lookup_by_phandle(pdev->dev.of_node, @@ -151,7 +153,7 @@ static int oxnas_dwmac_probe(struct platform_device *pdev) goto err_remove_config_dt; } - ret = oxnas_dwmac_init(dwmac); + ret = oxnas_dwmac_init(pdev, plat_dat->bsp_priv); if (ret) goto err_remove_config_dt; @@ -170,36 +172,6 @@ static int oxnas_dwmac_probe(struct platform_device *pdev) return ret; } -#ifdef CONFIG_PM_SLEEP -static int oxnas_dwmac_suspend(struct device *dev) -{ - struct oxnas_dwmac *dwmac = get_stmmac_bsp_priv(dev); - int ret; - - ret = stmmac_suspend(dev); - clk_disable_unprepare(dwmac->clk); - - return ret; -} - -static int oxnas_dwmac_resume(struct device *dev) -{ - struct oxnas_dwmac *dwmac = get_stmmac_bsp_priv(dev); - int ret; - - ret = oxnas_dwmac_init(dwmac); - if (ret) - return ret; - - ret = stmmac_resume(dev); - - return ret; -} -#endif /* CONFIG_PM_SLEEP */ - -static SIMPLE_DEV_PM_OPS(oxnas_dwmac_pm_ops, - oxnas_dwmac_suspend, oxnas_dwmac_resume); - static const struct of_device_id oxnas_dwmac_match[] = { { .compatible = "oxsemi,ox820-dwmac" }, { } @@ -211,7 +183,7 @@ static struct platform_driver oxnas_dwmac_driver = { .remove = stmmac_pltfr_remove, .driver = { .name = "oxnas-dwmac", - .pm = &oxnas_dwmac_pm_ops, + .pm = &stmmac_pltfr_pm_ops, .of_match_table = oxnas_dwmac_match, }, };