lkml.org 
[lkml]   [2009]   [Jan]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch 2.6.28-rc7] regulator: catch some registration errors
On Mon, Jan 05, 2009 at 03:45:24PM -0800, David Brownell wrote:

> Last time I looked, no cpufreq driver tried to use <linux/clk.h>

There's at least these ones kicking about at the minute:

arch/arm/mach-imx/cpufreq.c
arch/avr32/mach-at32ap/cpufreq.c
arch/sh/kernel/cpufreq.c

as well as several out of tree ones I'm aware of (the i.MX31 example I
posted, some other i.MX BSPs and one for the s3c24xx). There's an
opportunity for generalisation here since they're pretty much all very
similar adaption layers with the actual work in the clock framework.

> calls. The reason was simple: the clock framework code sits in
> DRAM, so it can't be executed while changing DRAM clocks.

> Those bits of cpufreq had to live in on-chip SRAM (there's usually
> a few pages of it) and directly update PLL and other clock config
> registers ... then wait for things to stabilize before they returned
> and the CPU executed from DRAM again.

That's a fairly system-specific concern, though, and there's no reason
why the code that does that dance has to live in the cpufreq driver
rather than the clock framework. On some systems the clock framework
will need to know about what the CPU clock is doing anyway.


\
 
 \ /
  Last update: 2009-01-06 11:37    [from the cache]
©2003-2011 Jasper Spaans