devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Lee Jones <lee.jones@linaro.org>
To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org
Cc: kernel@stlinux.com, mturquette@linaro.org, sboyd@codeaurora.org,
	devicetree@vger.kernel.org
Subject: Re: [PATCH 3/4] clk: Provide always-on clock support
Date: Fri, 27 Feb 2015 21:51:20 +0000	[thread overview]
Message-ID: <20150227215120.GC12821@x1> (raw)
In-Reply-To: <1425071674-16995-4-git-send-email-lee.jones@linaro.org>

On Fri, 27 Feb 2015, Lee Jones wrote:

> Lots of platforms contain clocks which if turned off would prove fatal.
> The only way to recover from these catastrophic failures is to restart
> the board(s).  Now, when a clock is registered with the framework it is
> compared against a list of provided always-on clock names which must be
> kept ungated.  If it matches, we enable the existing CLK_IGNORE_UNUSED
> flag, which will prevent the common clk framework from attempting to
> gate it during the clk_disable_unused() procedure.
> 
> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> ---
>  drivers/clk/clk.c | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
> index 61c3fc5..3aab75e 100644
> --- a/drivers/clk/clk.c
> +++ b/drivers/clk/clk.c
> @@ -2856,6 +2856,9 @@ int of_clk_add_provider(struct device_node *np,
>  			void *data)
>  {
>  	struct of_clk_provider *cp;
> +	struct property *prop;
> +	struct clk *clk;
> +	const char *clkname;
>  	int ret;
>  
>  	cp = kzalloc(sizeof(struct of_clk_provider), GFP_KERNEL);
> @@ -2875,6 +2878,14 @@ int of_clk_add_provider(struct device_node *np,
>  	if (ret < 0)
>  		of_clk_del_provider(np);
>  
> +	of_property_for_each_string(np, "clock-always-on", prop, clkname) {
> +		clk = __clk_lookup(clkname);
> +		if (!clk)
> +			continue;
> +
> +		clk->core->flags |= CLK_IGNORE_UNUSED;

Might save a few cycles by breaking here.

> +	}
> +
>  	return ret;
>  }
>  EXPORT_SYMBOL_GPL(of_clk_add_provider);

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

  reply	other threads:[~2015-02-27 21:51 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-27 21:14 [PATCH 0/4] clk: Provide support for always-on clocks Lee Jones
2015-02-27 21:14 ` [PATCH 1/4] ARM: sti: stih407-family: Supply defines for CLOCKGEN A0 Lee Jones
2015-02-27 21:14 ` [PATCH 2/4] ARM: sti: stih410-clocks: Identify critical clocks as always-on Lee Jones
     [not found]   ` <1425071674-16995-3-git-send-email-lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-04-02  8:00     ` [STLinux Kernel] " Peter Griffin
2015-02-27 21:14 ` [PATCH 3/4] clk: Provide always-on clock support Lee Jones
2015-02-27 21:51   ` Lee Jones [this message]
     [not found]   ` <1425071674-16995-4-git-send-email-lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-02-28  7:52     ` [STLinux Kernel] " Maxime Coquelin
     [not found]       ` <54F173B7.9030305-qxv4g6HH51o@public.gmane.org>
2015-03-02  8:16         ` Lee Jones
2015-04-01  1:13           ` Michael Turquette
2015-02-28  9:21     ` Jassi Brar
     [not found]       ` <CAJe_Zhf=GBb8AfnTLaGxGcZkVSm9TtdnTsmpH_MBmbMT8ViMDg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-02  8:36         ` Lee Jones
2015-03-02 10:08           ` Jassi Brar
2015-03-02 10:18             ` Lee Jones
2015-03-02 10:25               ` [STLinux Kernel] " Maxime Coquelin
2015-03-02 10:32                 ` Lee Jones
2015-03-02 10:28               ` Jassi Brar
2015-03-02 10:40                 ` Lee Jones
     [not found]                 ` <CAJe_Zhc-94afeWegEeOoL3X13y35MDJvqME1x7XMy3vVVXYedg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-01  1:42                   ` Michael Turquette
2015-04-02  4:39                     ` Jassi Brar
2015-04-02  7:10                       ` Lee Jones
2015-02-27 21:14 ` [PATCH 4/4] clk: dt: Introduce binding for " Lee Jones
     [not found] ` <1425071674-16995-1-git-send-email-lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-04-02  8:12   ` [STLinux Kernel] [PATCH 0/4] clk: Provide support for always-on clocks Peter Griffin
2015-04-02  9:45     ` Gabriel Fernandez
2015-04-02 10:53       ` Lee Jones
2015-04-02 10:58       ` Lee Jones
2015-04-02 10:52     ` Lee Jones

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150227215120.GC12821@x1 \
    --to=lee.jones@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=kernel@stlinux.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mturquette@linaro.org \
    --cc=sboyd@codeaurora.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).