Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp1798803ybz; Thu, 30 Apr 2020 05:49:05 -0700 (PDT) X-Google-Smtp-Source: APiQypJqFP95fDGlmxWg+9hE27ANxbxSOb/dMxAlAT7v0AWZiW4Kp7pK4Ial/lkt5PW8VMcJ9U/q X-Received: by 2002:a17:907:43c2:: with SMTP id i2mr2482807ejs.185.1588250945462; Thu, 30 Apr 2020 05:49:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588250945; cv=none; d=google.com; s=arc-20160816; b=VfIv+CmOP55oZXQtuhQ+sYzEdtNTyf/J9rooEV8v2GwzOaDjQR+R8sxVd+kRCIYgDO 5gKqebCrj+VudfVATyAI1XlXbMxdsFyAaI05oW9RFA3lHpCyKRX5ZkKjhp/Zcerobe20 3BNaJLt1GKVoWFHDcKyu8yCrhY6TADQvBWhFB06GHrxCUXIXuBOQ95Ztp9zjq1nS+L/F mUPHIHXmLovdkby5OEZvFI/21wPViK3Jz3sCSarY49MXQohyt01IJ1tMyxOrJ2J9A9/J p/6OjUViJPtO5AitSnnyfecsxAUB5Z4S57HTEgnqMBsYtE0S+179VprxsGVfEANcHKPl 7N7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:cc:to:from; bh=JUluJ5oAyisVOd82MSVqoo344hyAhx4iUf2Od0Yy7Aw=; b=qC+6bsN84vHf8JqiWINY/2/Ild9yDbk2unVDItUR6wJr5SmVcuumGZPsMQDUOMmHqA Bee+szRI7aqPrf08YQ6NHHKPdBINGHA6AOJW7p7sjH7vHQc+9r3L0JTKfWNlu1z8flCY QA1YHfg6BHoI4CFDTPvBSC3Ibbzaa3nEFVI6bVx3KAwgN0U4dH69kCPkhE8AjLZT03xT vu4GjI3P2/kT5QZ68yatme9cCdEZt3QQlHTfreCMvgH51YPBD93eAkay5e3LXcj2KCPu TcsTwXwTmVUgRjL1Vwp/8hmKU+ndd+ad48AOxctc5crl8sZ5Ws8nleWeF/+Ptmgo0/ro Jc7w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id x25si6106535ejs.434.2020.04.30.05.48.42; Thu, 30 Apr 2020 05:49:05 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727052AbgD3MqR convert rfc822-to-8bit (ORCPT + 99 others); Thu, 30 Apr 2020 08:46:17 -0400 Received: from skedge03.snt-world.com ([91.208.41.68]:54820 "EHLO skedge03.snt-world.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727030AbgD3MqO (ORCPT ); Thu, 30 Apr 2020 08:46:14 -0400 Received: from sntmail12r.snt-is.com (unknown [10.203.32.182]) by skedge03.snt-world.com (Postfix) with ESMTP id 59DFA67A902; Thu, 30 Apr 2020 14:46:11 +0200 (CEST) Received: from sntmail12r.snt-is.com (10.203.32.182) by sntmail12r.snt-is.com (10.203.32.182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1913.5; Thu, 30 Apr 2020 14:46:10 +0200 Received: from sntmail12r.snt-is.com ([fe80::e551:8750:7bba:3305]) by sntmail12r.snt-is.com ([fe80::e551:8750:7bba:3305%3]) with mapi id 15.01.1913.007; Thu, 30 Apr 2020 14:46:10 +0200 From: Schrempf Frieder To: Adam Ford , Anson Huang , Christian Gmeiner , Daniel Baluta , Fabio Estevam , Schrempf Frieder , Leonard Crestez , "Li Jun" , Lucas Stach , NXP Linux Team , Peng Fan , Pengutronix Kernel Team , Russell King , "Sascha Hauer" , Shawn Guo , "S.j. Wang" CC: "devicetree@vger.kernel.org" , "dri-devel@lists.freedesktop.org" , "etnaviv@lists.freedesktop.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" Subject: [RFC PATCH 2/4] drm/etnaviv: Fix error path in etnaviv_gpu_clk_enable() Thread-Topic: [RFC PATCH 2/4] drm/etnaviv: Fix error path in etnaviv_gpu_clk_enable() Thread-Index: AQHWHu1TJbmsdbRrokKu6860tWMz5w== Date: Thu, 30 Apr 2020 12:46:10 +0000 Message-ID: <20200430124602.14463-3-frieder.schrempf@kontron.de> References: <20200430124602.14463-1-frieder.schrempf@kontron.de> In-Reply-To: <20200430124602.14463-1-frieder.schrempf@kontron.de> Accept-Language: de-DE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.17.1 x-originating-ip: [172.25.9.193] x-c2processedorg: 51b406b7-48a2-4d03-b652-521f56ac89f3 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8BIT MIME-Version: 1.0 X-SnT-MailScanner-Information: Please contact the ISP for more information X-SnT-MailScanner-ID: 59DFA67A902.A03A6 X-SnT-MailScanner: Not scanned: please contact your Internet E-Mail Service Provider for details X-SnT-MailScanner-SpamCheck: X-SnT-MailScanner-From: frieder.schrempf@kontron.de X-SnT-MailScanner-To: aford173@gmail.com, anson.huang@nxp.com, christian.gmeiner@gmail.com, daniel.baluta@nxp.com, devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, etnaviv@lists.freedesktop.org, festevam@gmail.com, jun.li@nxp.com, kernel@pengutronix.de, l.stach@pengutronix.de, leonard.crestez@nxp.com, linux+etnaviv@armlinux.org.uk, linux-arm-kernel@lists.infradead.org, linux-imx@nxp.com, linux-kernel@vger.kernel.org, peng.fan@nxp.com, s.hauer@pengutronix.de, shawnguo@kernel.org, shengjiu.wang@nxp.com X-Spam-Status: No Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Frieder Schrempf In case enabling of the bus clock fails etnaviv_gpu_clk_enable() returns without disabling the already enabled reg clock. Fix this. Fixes: 65f037e8e908 ("drm/etnaviv: add support for slave interface clock") Signed-off-by: Frieder Schrempf --- drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c index 23877c1f150a..7b138d4dd068 100644 --- a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c +++ b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c @@ -1496,7 +1496,7 @@ static int etnaviv_gpu_clk_enable(struct etnaviv_gpu *gpu) if (gpu->clk_bus) { ret = clk_prepare_enable(gpu->clk_bus); if (ret) - return ret; + goto disable_clk_reg; } if (gpu->clk_core) { @@ -1519,6 +1519,9 @@ static int etnaviv_gpu_clk_enable(struct etnaviv_gpu *gpu) disable_clk_bus: if (gpu->clk_bus) clk_disable_unprepare(gpu->clk_bus); +disable_clk_reg: + if (gpu->clk_reg) + clk_disable_unprepare(gpu->clk_reg); return ret; } -- 2.17.1