From patchwork Thu Feb 11 21:19:10 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Turquette X-Patchwork-Id: 61810 Delivered-To: patch@linaro.org Received: by 10.112.43.199 with SMTP id y7csp448415lbl; Thu, 11 Feb 2016 13:21:06 -0800 (PST) X-Received: by 10.98.69.78 with SMTP id s75mr70205409pfa.102.1455225666221; Thu, 11 Feb 2016 13:21:06 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 70si14815593pfk.205.2016.02.11.13.21.05; Thu, 11 Feb 2016 13:21:06 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dkim=pass header.i=@baylibre-com.20150623.gappssmtp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751472AbcBKVVE (ORCPT + 30 others); Thu, 11 Feb 2016 16:21:04 -0500 Received: from mail-pa0-f49.google.com ([209.85.220.49]:33925 "EHLO mail-pa0-f49.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751598AbcBKVTl (ORCPT ); Thu, 11 Feb 2016 16:19:41 -0500 Received: by mail-pa0-f49.google.com with SMTP id p5so4476510paw.1 for ; Thu, 11 Feb 2016 13:19:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=diyK5VUFXHlxqqcpQtTxQzIZrdqneM8qQlU9bnpJJug=; b=SWSvOkVu5cj8M7CvjLY6SvyKP/3xTy4WCuxzvPBAJe+4IX0IlFw1vBHZrvPAataIqj PCKb4tkWX4yA9T8HYkqO+7rsYHiL5j6bAm66xjPijGWkvjcyiTsffE0vMA7cLcKXdJoy 3d5fZ5/MOG+zvKwtcQIcH9UPwY2vvkM6FxGfrbKy5Op34DiwMhweP3liUmMu9pDbiWU4 lfVVdsZwan65SHpu4juJ+XoVDB7Z4adOuOq3V5d33YnEuBfJ4RP5bfmQoF4egFaxknLC AJHVTbYH6fxR5dFqN0+67iBRILUiZrgP7roWTcUv9Hh7kuPr08FY4ppRuUJ+AoyBwRhF vMDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=diyK5VUFXHlxqqcpQtTxQzIZrdqneM8qQlU9bnpJJug=; b=GjZtxVk2W4COOMBajpYJI2KqCsYCMSzqkFitLym3fh0wBU4mALMuuAV37Kep6IbfgG hSSQKqknocdZ4h0bgv4oHgJERuNT+vXUUL6Hzs28YA52ZhTKEXydN9QdBGpgHfekH7nK s6TCaE5hdnMm15AoqwdDnFGJirH/klCD+UdIiKhGc5hDunCqDJ35QV9x48kf/gaC45Vx tnd/EleGWnnHN4xUmbURjIcZ3xSbo8nDquc/qTWn4DixIRfnwiHj1Qslr4aYVo0pMofx 57VhQS54Cl6zRffPoOCIMv7cTtJrHKFUE7hYLwOSZpcqCd00xOvKOQW32yJyf10Ehv2P vC8g== X-Gm-Message-State: AG10YOTkfwUHWMp8VBZq4Fp3jHkNQSdy/mJrthQWRHy8He/W8oxGGDLIqHTxbmx9CtM8sk/+ X-Received: by 10.66.118.198 with SMTP id ko6mr69508541pab.122.1455225580656; Thu, 11 Feb 2016 13:19:40 -0800 (PST) Received: from localhost (cpe-172-248-200-249.socal.res.rr.com. [172.248.200.249]) by smtp.gmail.com with ESMTPSA id 67sm12719834pfi.2.2016.02.11.13.19.39 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 11 Feb 2016 13:19:39 -0800 (PST) From: Michael Turquette To: linux-clk@vger.kernel.org Cc: lee.jones@linaro.org, sboyd@codeaurora.org, maxime.ripard@free-electrons.com, maxime.coquelin@st.com, geert@linux-m68k.org, heiko@sntech.de, andre.przywara@arm.com, rklein@nvidia.com, linux-kernel@vger.kernel.org, Michael Turquette Subject: [PATCH v42 2/6] clk: WARN_ON about to disable a critical clock Date: Thu, 11 Feb 2016 13:19:10 -0800 Message-Id: <1455225554-13267-3-git-send-email-mturquette@baylibre.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1455225554-13267-1-git-send-email-mturquette@baylibre.com> References: <1455225554-13267-1-git-send-email-mturquette@baylibre.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Lee Jones Signed-off-by: Lee Jones Signed-off-by: Michael Turquette --- drivers/clk/clk.c | 6 ++++++ 1 file changed, 6 insertions(+) -- 2.1.4 diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c index 993f775..39f9527 100644 --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@ -575,6 +575,9 @@ static void clk_core_unprepare(struct clk_core *core) if (WARN_ON(core->prepare_count == 0)) return; + if (WARN_ON(core->prepare_count == 1 && core->flags & CLK_IS_CRITICAL)) + return; + if (--core->prepare_count > 0) return; @@ -680,6 +683,9 @@ static void clk_core_disable(struct clk_core *core) if (WARN_ON(core->enable_count == 0)) return; + if (WARN_ON(core->enable_count == 1 && core->flags & CLK_IS_CRITICAL)) + return; + if (--core->enable_count > 0) return;