Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932967AbcCNW5R (ORCPT ); Mon, 14 Mar 2016 18:57:17 -0400 Received: from vern.gendns.com ([206.190.152.46]:59505 "EHLO vern.gendns.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753280AbcCNW42 (ORCPT ); Mon, 14 Mar 2016 18:56:28 -0400 From: David Lechner To: nsekhar@ti.com Cc: khilman@kernel.org, ulf.hansson@linaro.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mmc@vger.kernel.org, David Lechner Subject: [PATCH v2 3/5] mmc: davinci: prepare clock Date: Mon, 14 Mar 2016 17:54:39 -0500 Message-Id: <1457996081-21975-4-git-send-email-david@lechnology.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1457996081-21975-1-git-send-email-david@lechnology.com> References: <56E6BF7E.7020401@ti.com> <1457996081-21975-1-git-send-email-david@lechnology.com> X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - vern.gendns.com X-AntiAbuse: Original Domain - vger.kernel.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - lechnology.com X-Get-Message-Sender-Via: vern.gendns.com: authenticated_id: davidmain+lechnology.com/only user confirmed/virtual account not confirmed X-Authenticated-Sender: vern.gendns.com: davidmain@lechnology.com X-Source: X-Source-Args: X-Source-Dir: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1573 Lines: 52 When trying to use this driver with the common clock framework, enabling the clock fails because it was not prepared. This fixes the problem by calling clk_prepare and clk_enable in a single function. Ditto for clk_disable_unprepare. Signed-off-by: David Lechner --- v2 changes: use clk_disable_unprepare where applicable. drivers/mmc/host/davinci_mmc.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/mmc/host/davinci_mmc.c b/drivers/mmc/host/davinci_mmc.c index 6dd9562..8d10a92 100644 --- a/drivers/mmc/host/davinci_mmc.c +++ b/drivers/mmc/host/davinci_mmc.c @@ -1273,9 +1273,9 @@ static int __init davinci_mmcsd_probe(struct platform_device *pdev) ret = PTR_ERR(host->clk); goto clk_get_fail; } - ret = clk_enable(host->clk); + ret = clk_prepare_enable(host->clk); if (ret) - goto clk_enable_fail; + goto clk_prepare_enable_fail; host->mmc_input_clk = clk_get_rate(host->clk); @@ -1375,8 +1375,8 @@ mmc_add_host_fail: mmc_davinci_cpufreq_deregister(host); cpu_freq_fail: davinci_release_dma_channels(host); - clk_disable(host->clk); -clk_enable_fail: + clk_disable_unprepare(host->clk); +clk_prepare_enable_fail: clk_get_fail: ioremap_fail: mmc_free_host(mmc); @@ -1391,7 +1391,7 @@ static int __exit davinci_mmcsd_remove(struct platform_device *pdev) mmc_remove_host(host->mmc); mmc_davinci_cpufreq_deregister(host); davinci_release_dma_channels(host); - clk_disable(host->clk); + clk_disable_unprepare(host->clk); mmc_free_host(host->mmc); return 0; -- 1.9.1