From patchwork Wed Jan 18 09:43:36 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yegor Yefremov X-Patchwork-Id: 716571 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 3v3MhH3xjjz9rxw for ; Wed, 18 Jan 2017 20:52:15 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=googlemail.com header.i=@googlemail.com header.b="P1JrM39S"; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752351AbdARJpM (ORCPT ); Wed, 18 Jan 2017 04:45:12 -0500 Received: from mail-wm0-f67.google.com ([74.125.82.67]:36019 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752200AbdARJnz (ORCPT ); Wed, 18 Jan 2017 04:43:55 -0500 Received: by mail-wm0-f67.google.com with SMTP id r126so2668004wmr.3; Wed, 18 Jan 2017 01:43:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=oz4v7qYTt/gOm1ZDaoSX0bdAiXX9aQ+gQymcXOAzC9Q=; b=P1JrM39SqaXyDoMETtyCYm59412XqiWxx84x8UvRb8kTwQZEbNQans1btQTQMDS13b HSCR/R9jMrbtQIgql+Rgvn2igVkxUluVUzRAOQTrthS2LonccMW8ULkIg5f0RujyHWdt CLG/FO3pe1PMVsOLcp5BmPsTT3WibmB9l3PnqAegThpLTMHYx8e18/RKgLTnjUcmaSH5 JBO34MbfMJttmiUMXTDv6W9pEaML9EPDpUIXp1ogpcXBE1jJvXTFsPAFhduihbfWtATw MqzepujImI1uNwILoL04QMA8bco5YFDcI05TwDZf2b5rbw3Vaa3vaOzm/t3T7pzexycY 26VQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=oz4v7qYTt/gOm1ZDaoSX0bdAiXX9aQ+gQymcXOAzC9Q=; b=PPHibJfNGgc1ugh50ycZPCSAn67z2w3x3zUSy0GJ2EbKsVPjccHWE7M9CZo8X6ZY0y AGDykl3Vq1VkGYaps7xSn4Gjb+i7HLrAdIloZ4acbbaPpOVklmvj8OKWmp5JwjFVMLty Z+ZUXQ0vlkB1xkVQqnLTBrtTK/jHxCNrgYBlKyMfdmqecH69xNjakzUT3P8K4mK0yK+w bfPS5kWT8AtegPk2PrnWhf+9D4ubR3/KLWVgI2loNoS3mMfzD5JPmvZ6HnJXL+KjZkTy s08z/n9kKXxKusLOxrBasflv8phn4hafdWlxjc6gSolZt3kcQGHhWYQJzSxRLk89OESg YnMQ== X-Gm-Message-State: AIkVDXJWVerMcLsOnjQpDCV+3EwDRtDlQIqFFQOQjgAQqGm1RsB2VOiNnd1q/3UMgo/mZw== X-Received: by 10.28.63.5 with SMTP id m5mr2123696wma.95.1484732634300; Wed, 18 Jan 2017 01:43:54 -0800 (PST) Received: from development1.visionsystems.de (mail.visionsystems.de. [213.209.99.202]) by smtp.gmail.com with ESMTPSA id x135sm3552604wme.23.2017.01.18.01.43.53 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 18 Jan 2017 01:43:53 -0800 (PST) From: yegorslists@googlemail.com To: linux-can@vger.kernel.org Cc: netdev@vger.kernel.org, mkl@pengutronix.de, wg@grandegger.com, Yegor Yefremov Subject: [PATCH] can: ti_hecc: add missing prepare and unprepare of the clock Date: Wed, 18 Jan 2017 10:43:36 +0100 Message-Id: <1484732616-4461-1-git-send-email-yegorslists@googlemail.com> X-Mailer: git-send-email 2.1.4 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Yegor Yefremov In order to make the driver work with the common clock framework, this patch converts the clk_enable()/clk_disable() to clk_prepare_enable()/clk_disable_unprepare(). Signed-off-by: Yegor Yefremov --- drivers/net/can/ti_hecc.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/net/can/ti_hecc.c b/drivers/net/can/ti_hecc.c index 680d1ff..0448cb5 100644 --- a/drivers/net/can/ti_hecc.c +++ b/drivers/net/can/ti_hecc.c @@ -948,7 +948,8 @@ static int ti_hecc_probe(struct platform_device *pdev) netif_napi_add(ndev, &priv->napi, ti_hecc_rx_poll, HECC_DEF_NAPI_WEIGHT); - clk_enable(priv->clk); + clk_prepare_enable(priv->clk); + err = register_candev(ndev); if (err) { dev_err(&pdev->dev, "register_candev() failed\n"); @@ -981,7 +982,7 @@ static int ti_hecc_remove(struct platform_device *pdev) struct ti_hecc_priv *priv = netdev_priv(ndev); unregister_candev(ndev); - clk_disable(priv->clk); + clk_disable_unprepare(priv->clk); clk_put(priv->clk); res = platform_get_resource(pdev, IORESOURCE_MEM, 0); iounmap(priv->base); @@ -1006,7 +1007,7 @@ static int ti_hecc_suspend(struct platform_device *pdev, pm_message_t state) hecc_set_bit(priv, HECC_CANMC, HECC_CANMC_PDR); priv->can.state = CAN_STATE_SLEEPING; - clk_disable(priv->clk); + clk_disable_unprepare(priv->clk); return 0; } @@ -1016,7 +1017,7 @@ static int ti_hecc_resume(struct platform_device *pdev) struct net_device *dev = platform_get_drvdata(pdev); struct ti_hecc_priv *priv = netdev_priv(dev); - clk_enable(priv->clk); + clk_prepare_enable(priv->clk); hecc_clear_bit(priv, HECC_CANMC, HECC_CANMC_PDR); priv->can.state = CAN_STATE_ERROR_ACTIVE;