[lkml]   [2012]   [Apr]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH 01/13] clk: Add non CONFIG_HAVE_CLK routines
On 4/21/12, Russell King - ARM Linux <> wrote:
> 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
>> 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.

I tried to take care of these issues, but unfortunately
i couldn't.

Patch numbers 6, 12 & 13 will actually break drivers. Will ask Andrew
to drop them.

> 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.

Will leave these macros as is for mentioned patches.


 \ /
  Last update: 2012-04-21 15:49    [from the cache]
©2003-2014 Jasper Spaans. hosted at Digital Ocean