From patchwork Mon Oct 21 05:37:31 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wei Yongjun X-Patchwork-Id: 3078261 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id CF5599F2B8 for ; Mon, 21 Oct 2013 14:38:36 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id CD9472030E for ; Mon, 21 Oct 2013 14:38:35 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id CB79120306 for ; Mon, 21 Oct 2013 14:38:34 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 9C579E725B for ; Mon, 21 Oct 2013 07:38:34 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-bk0-f52.google.com (mail-bk0-f52.google.com [209.85.214.52]) by gabe.freedesktop.org (Postfix) with ESMTP id A993DE5EF1 for ; Sun, 20 Oct 2013 22:37:32 -0700 (PDT) Received: by mail-bk0-f52.google.com with SMTP id e11so558259bkh.11 for ; Sun, 20 Oct 2013 22:37:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:cc:content-type; bh=ZQf2NUYHPtd+qIcFMbsYCBYPthtcIt5VpNnRtT0rcaQ=; b=02dqnJm4axKruXPsojUeTnCZJnzTBT0Tm3/Q6cafmdNZfRpgpnU9RrajI4jvVv6l8H XUSoJcUlLTy7/GNCb06h2E+a/y4yJc3Uzwg6NfntlzhAljcNBazh3O4C5PfPOwP2Sl00 8c9uT8O/rRr+zp3vSScAUJoIb/s6u/QC7sQXbhQSjBbBS/iVgJi2sVgya9DplIaho1s1 Jlndk2WCu+spHhj9PaqyMBHjK9AksK9V7Kgmw+zPEMdLzVQyNbtf68LxEkmY79jc1da2 27Nzsts/A22MYMUeFRxG/n7nUN7bYmDbHCDQeXtBus8VlBugLws738gjV6Ib0d0FZZdV ncfQ== MIME-Version: 1.0 X-Received: by 10.204.227.70 with SMTP id iz6mr37486bkb.49.1382333851388; Sun, 20 Oct 2013 22:37:31 -0700 (PDT) Received: by 10.205.19.10 with HTTP; Sun, 20 Oct 2013 22:37:31 -0700 (PDT) Date: Mon, 21 Oct 2013 13:37:31 +0800 Message-ID: Subject: [PATCH -next] gpu: host1x: add missing clk_disable_unprepare() on error in host1x_probe() From: Wei Yongjun To: thierry.reding@gmail.com, tbergstrom@nvidia.com, grant.likely@linaro.org, rob.herring@calxeda.com X-Mailman-Approved-At: Mon, 21 Oct 2013 07:34:39 -0700 Cc: linux-tegra@vger.kernel.org, yongjun_wei@trendmicro.com.cn, dri-devel@lists.freedesktop.org X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+patchwork-dri-devel=patchwork.kernel.org@lists.freedesktop.org Errors-To: dri-devel-bounces+patchwork-dri-devel=patchwork.kernel.org@lists.freedesktop.org X-Spam-Status: No, score=-4.5 required=5.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Wei Yongjun Add the missing clk_disable_unprepare() before return from host1x_probe() in the error handling case. Signed-off-by: Wei Yongjun Reviewed-by: Terje Bergstrom --- drivers/gpu/host1x/dev.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/host1x/dev.c b/drivers/gpu/host1x/dev.c index 12d6333..646a333 100644 --- a/drivers/gpu/host1x/dev.c +++ b/drivers/gpu/host1x/dev.c @@ -154,7 +154,7 @@ static int host1x_probe(struct platform_device *pdev) err = host1x_syncpt_init(host); if (err) { dev_err(&pdev->dev, "failed to initialize syncpts\n"); - return err; + goto fail_unprepare_disable; } err = host1x_intr_init(host, syncpt_irq); @@ -175,6 +175,8 @@ fail_deinit_intr: host1x_intr_deinit(host); fail_deinit_syncpt: host1x_syncpt_deinit(host); +fail_unprepare_disable: + clk_disable_unprepare(host->clk); return err; }