From patchwork Thu May 5 11:51:07 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adrian Hunter X-Patchwork-Id: 756702 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter2.kernel.org (8.14.4/8.14.3) with ESMTP id p45BqSN8021182 for ; Thu, 5 May 2011 11:52:28 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753178Ab1EELw0 (ORCPT ); Thu, 5 May 2011 07:52:26 -0400 Received: from smtp.nokia.com ([147.243.128.24]:62848 "EHLO mgw-da01.nokia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753397Ab1EELwZ (ORCPT ); Thu, 5 May 2011 07:52:25 -0400 Received: from nokia.com (localhost [127.0.0.1]) by mgw-da01.nokia.com (Switch-3.4.4/Switch-3.4.3) with ESMTP id p45BqGAQ024978; Thu, 5 May 2011 14:52:16 +0300 Received: from localhost.localdomain ([[172.21.24.109]]) by mgw-da01.nokia.com with RELAY id p45BpO6v023786 ; Thu, 5 May 2011 14:51:50 +0300 From: Adrian Hunter To: Tony Lindgren Cc: Madhusudhan Chikkature , linux-omap Mailing List , linux-mmc Mailing List , linux-arm Mailing List , Sudhir Bera , Adrian Hunter Subject: [PATCH 07/22] mmc: omap_hsmmc: fix missing mmc_release_host() in no_off case Date: Thu, 5 May 2011 14:51:07 +0300 Message-Id: <1304596282-4095-8-git-send-email-adrian.hunter@nokia.com> X-Mailer: git-send-email 1.7.0.4 In-Reply-To: <1304596282-4095-1-git-send-email-adrian.hunter@nokia.com> References: <1304596282-4095-1-git-send-email-adrian.hunter@nokia.com> X-Nokia-AV: Clean Sender: linux-mmc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-mmc@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter2.kernel.org [140.211.167.43]); Thu, 05 May 2011 11:52:28 +0000 (UTC) From: Sudhir Bera In fact the no_off check here will not be hit because 'omap_hsmmc_disabled_to_sleep()' won't schedule a deeper disable in the no_off case. Signed-off-by: Sudhir Bera Signed-off-by: Adrian Hunter --- drivers/mmc/host/omap_hsmmc.c | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c index bab25ff..bd52849 100644 --- a/drivers/mmc/host/omap_hsmmc.c +++ b/drivers/mmc/host/omap_hsmmc.c @@ -1852,14 +1852,13 @@ static int omap_hsmmc_sleep_to_off(struct omap_hsmmc_host *host) return 0; if (mmc_slot(host).no_off) - return 0; + goto out; if (!((host->mmc->caps & MMC_CAP_NONREMOVABLE) || mmc_slot(host).card_detect || (mmc_slot(host).get_cover_state && mmc_slot(host).get_cover_state(host->dev, host->slot_id)))) { - mmc_release_host(host->mmc); - return 0; + goto out; } mmc_slot(host).set_power(host->dev, host->slot_id, 0, 0); @@ -1870,7 +1869,7 @@ static int omap_hsmmc_sleep_to_off(struct omap_hsmmc_host *host) host->dpm_state == CARDSLEEP ? "CARDSLEEP" : "REGSLEEP"); host->dpm_state = OFF; - +out: mmc_release_host(host->mmc); return 0;