[PATCH v2] [2.6.22] pasemi: cpufreq driver

Johannes Berg johannes at sipsolutions.net
Thu Apr 26 20:26:00 EST 2007


On Thu, 2007-04-26 at 00:37 -0500, Olof Johansson wrote:
> 
> +       policy->cur = pas_freqs[cur_astate].frequency;
> +       policy->cpus = cpu_possible_map; 

That doesn't seem right.

Either, all your processors scale along each other in which case you
should use cpu_online_map here, or they scale each on their own in which
case you just set a single bit here.

The generic code works like this:
CPU 0 is brought online and cpufreq initialised for it
CPU 1 is brought online and cpufreq initialised for it. if cpus includes
more than a single bit, cpufreq is linked to the first other CPU in
policy->cpus and then cpufreq for CPU1 is deinitialised again.

We have the same bug on powermac but for some reason the patch to fix it
that I posted a long time ago (look for "powermac: fix G5-cpufreq for
cpu on/offline") wasn't applied yet. Look at it though, it includes a
comment on what needs to be done.

johannes
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/20070426/e835a8c6/attachment.pgp>


More information about the Linuxppc-dev mailing list