linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: skannan@codeaurora.org (Saravana Kannan)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] clk: provide prepare/unprepare functions
Date: Thu, 22 Sep 2011 10:39:14 -0700	[thread overview]
Message-ID: <4E7B72C2.3060402@codeaurora.org> (raw)
In-Reply-To: <20110922101024.GK17169@n2100.arm.linux.org.uk>

On 09/22/2011 03:10 AM, Russell King - ARM Linux wrote:
> As discussed previously, there's the need on some platforms to run some
> parts of clk_enable() in contexts which can schedule.  The solution
> which was agreed upon was to provide clk_prepare() and clk_unprepare()
> to contain this parts, while clk_enable() and clk_disable() perform
> the atomic part.
>
> This patch provides a common definition for clk_prepare() and
> clk_unprepare() in linux/clk.h, and provides an upgrade path for
> existing implementation and drivers: drivers can start using
> clk_prepare() and clk_unprepare() once this patch is merged without
> having to wait for platform support.  Platforms can then start to
> provide these additional functions.
>
> Eventually, HAVE_CLK_PREPARE will be removed from the kernel, and
> everyone will have to provide these new APIs.

Glad to see this. Now the drivers and individual arch's can start moving 
to these new APIs before we settle on the common infrastructure. Once 
the common infrastructure is in, it should hopefully be trivial to move 
each arch to it.

> Signed-off-by: Russell King<rmk+kernel@arm.linux.org.uk>
> ---
>   include/linux/clk.h |   38 ++++++++++++++++++++++++++++++++++++++
>   1 file changed, 38 insertions(+)
>
> diff --git a/include/linux/clk.h b/include/linux/clk.h
> index 1d37f42..c7eb17d 100644
> --- a/include/linux/clk.h
> +++ b/include/linux/clk.h
> @@ -11,6 +11,8 @@
>   #ifndef __LINUX_CLK_H
>   #define __LINUX_CLK_H
>
> +#include<linux/kernel.h>
> +
>   struct device;
>
>   /*
> @@ -41,11 +43,29 @@ struct clk;
>   struct clk *clk_get(struct device *dev, const char *id);
>
>   /**
> + * clk_prepare - prepare a clock source
> + * @clk: clock source
> + *
> + * This prepares the clock source for use.

Do you want to add a "May NOT be called from atomic context"? Yeah, the 
stub makes it obvious, but I think it would be consistent to add the 
comment in. No strong opinion though.

Not sure if you care, but LGTM/Ack.

Thanks,
Saravana
-- 
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

  reply	other threads:[~2011-09-22 17:39 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-22 10:10 [PATCH] clk: provide prepare/unprepare functions Russell King - ARM Linux
2011-09-22 17:39 ` Saravana Kannan [this message]
2011-09-27  8:26   ` Russell King - ARM Linux

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=4E7B72C2.3060402@codeaurora.org \
    --to=skannan@codeaurora.org \
    --cc=linux-arm-kernel@lists.infradead.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).