All of lore.kernel.org
 help / color / mirror / Atom feed
From: Russell King - ARM Linux <linux@arm.linux.org.uk>
To: Viresh Kumar <viresh.linux@gmail.com>
Cc: akpm@linux-foundation.org, mturquette@linaro.org,
	sshtylyov@mvista.com, spear-devel@list.st.com,
	linux-kernel@vger.kernel.org, jgarzik@redhat.com,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 01/13] clk: Add non CONFIG_HAVE_CLK routines
Date: Sat, 21 Apr 2012 13:42:19 +0100	[thread overview]
Message-ID: <20120421124219.GH24211@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <f48165b92f52e9a879cedacaddc548ac885bf73d.1335008617.git.viresh.kumar@st.com>

On Sat, Apr 21, 2012 at 05:17:28PM +0530, Viresh Kumar wrote:
> Many drivers are shared between architectures that may or may not have HAVE_CLK
> selected for them. To remove compilation errors for them we enclose clk_*()
> calls in these drivers within #ifdef CONFIG_HAVE_CLK, #endif.

All you're doing is making drivers buildable.  Drivers will not be usable
with this (they'll error out because clk_get() will fail.)

For example:

-#ifndef CONFIG_HAVE_CLK
-/* Dummy stub for clk framework */
-#define clk_get(dev, id)       NULL
-#define clk_put(clock)         do {} while (0)
-#define clk_enable(clock)      do {} while (0)
-#define clk_disable(clock)     do {} while (0)
-#endif
-

along with your change in this patch changes the drivers behaviour.

A better solution would be to assume that if HAVE_CLK is not set, then
that means there's no control over clocks, and therefore the clk API
should become totally transparent and non-failure inducing.  So, having
clk_get() return NULL, and having all the other clk API functions ignore
their argument (just like the macros above) is the right solution here.

WARNING: multiple messages have this Message-ID (diff)
From: linux@arm.linux.org.uk (Russell King - ARM Linux)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 01/13] clk: Add non CONFIG_HAVE_CLK routines
Date: Sat, 21 Apr 2012 13:42:19 +0100	[thread overview]
Message-ID: <20120421124219.GH24211@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <f48165b92f52e9a879cedacaddc548ac885bf73d.1335008617.git.viresh.kumar@st.com>

On Sat, Apr 21, 2012 at 05:17:28PM +0530, Viresh Kumar wrote:
> Many drivers are shared between architectures that may or may not have HAVE_CLK
> selected for them. To remove compilation errors for them we enclose clk_*()
> calls in these drivers within #ifdef CONFIG_HAVE_CLK, #endif.

All you're doing is making drivers buildable.  Drivers will not be usable
with this (they'll error out because clk_get() will fail.)

For example:

-#ifndef CONFIG_HAVE_CLK
-/* Dummy stub for clk framework */
-#define clk_get(dev, id)       NULL
-#define clk_put(clock)         do {} while (0)
-#define clk_enable(clock)      do {} while (0)
-#define clk_disable(clock)     do {} while (0)
-#endif
-

along with your change in this patch changes the drivers behaviour.

A better solution would be to assume that if HAVE_CLK is not set, then
that means there's no control over clocks, and therefore the clk API
should become totally transparent and non-failure inducing.  So, having
clk_get() return NULL, and having all the other clk API functions ignore
their argument (just like the macros above) is the right solution here.

  reply	other threads:[~2012-04-21 12:42 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-21 11:47 [PATCH 00/13] clk: Add non CONFIG_HAVE_CLK routines Viresh Kumar
2012-04-21 11:47 ` Viresh Kumar
2012-04-21 11:47 ` [PATCH 01/13] " Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 12:42   ` Russell King - ARM Linux [this message]
2012-04-21 12:42     ` Russell King - ARM Linux
2012-04-21 13:47     ` viresh kumar
2012-04-21 13:47       ` viresh kumar
2012-04-21 11:47 ` [PATCH 02/13] clk: Remove redundant depends on from drivers/Kconfig Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 11:47 ` [PATCH 03/13] clk: CLK_PREPARE must depend on HAVE_CLK Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 12:40   ` Russell King - ARM Linux
2012-04-21 12:40     ` Russell King - ARM Linux
2012-04-21 11:47 ` [PATCH 04/13] ata/pata_arasan: Remove conditional compilation of clk code Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 11:47 ` [PATCH 05/13] ata/sata_mv: " Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 11:47 ` [PATCH 06/13] i2c/i2c-pxa: " Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 11:47 ` [PATCH 07/13] net/c_can: " Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 11:47 ` [PATCH 08/13] net/stmmac: " Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-24  5:56   ` Giuseppe CAVALLARO
2012-04-24  5:56     ` Giuseppe CAVALLARO
2012-04-24  5:57     ` Giuseppe CAVALLARO
2012-04-24  5:57       ` Giuseppe CAVALLARO
2012-04-24  5:57       ` Giuseppe CAVALLARO
2012-04-24  6:09     ` Viresh Kumar
2012-04-24  6:09       ` Viresh Kumar
2012-04-21 11:47 ` [PATCH 09/13] gadget/m66592: " Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 11:47 ` [PATCH 10/13] gadget/r8a66597: " Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 11:47 ` [PATCH 11/13] usb/host/r8a66597: " Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 11:47 ` [PATCH 12/13] usb/marvell: " Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 11:47 ` [PATCH 13/13] usb/musb: " Viresh Kumar
2012-04-21 11:47   ` Viresh Kumar
2012-04-21 13:48 ` [PATCH 00/13] clk: Add non CONFIG_HAVE_CLK routines viresh kumar
2012-04-21 13:48   ` viresh kumar

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=20120421124219.GH24211@n2100.arm.linux.org.uk \
    --to=linux@arm.linux.org.uk \
    --cc=akpm@linux-foundation.org \
    --cc=jgarzik@redhat.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mturquette@linaro.org \
    --cc=spear-devel@list.st.com \
    --cc=sshtylyov@mvista.com \
    --cc=viresh.linux@gmail.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.