Re: p4-clockmod not working in 2.6.16

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tuesday 04 Apr 2006 11:47, Tim Phipps wrote:
> On Wed, 2006-03-22 at 06:20, Mike Galbraith wrote:
> > On Wed, 2006-03-22 at 06:57 +0100, Edgar Toernig wrote:
> > > | N60.         Processor May Hang under Certain Frequencies and 12.5%
> > > |              STPCLK# Duty Cycle
> > > |
> > > | Problem:     If a system de-asserts STPCLK# at a 12.5% duty cycle,
> > > | the processor is running below 2 GHz, and the processor thermal
> > > | control circuit (TCC) on-demand clock modulation is active, the
> > > | processor may hang. This erratum does not occur under the automatic
> > > | mode of the TCC.
>
Here's a patch to 2.6.17-rc1 that disables the 12.5% DC on any CPU that has 
N60. The frequencies in the errata are a bit vague so this is the safe bet 
and it only disables one of the eight frequencies rather than the current 
behaviour which disables all of mine!

Cheers,
Tim.
--- linux-2.6.17-rc1/arch/i386/kernel/cpu/cpufreq/p4-clockmod.c.orig	2006-04-04 14:54:49.000000000 +0100
+++ linux-2.6.17-rc1/arch/i386/kernel/cpu/cpufreq/p4-clockmod.c	2006-04-04 15:19:02.000000000 +0100
@@ -244,7 +244,7 @@
 	for (i=1; (p4clockmod_table[i].frequency != CPUFREQ_TABLE_END); i++) {
 		if ((i<2) && (has_N44_O17_errata[policy->cpu]))
 			p4clockmod_table[i].frequency = CPUFREQ_ENTRY_INVALID;
-		else if (has_N60_errata[policy->cpu] && ((stock_freq * i)/8) < 2000000)
+		else if ((i<2) && (has_N60_errata[policy->cpu]))
 			p4clockmod_table[i].frequency = CPUFREQ_ENTRY_INVALID;
 		else
 			p4clockmod_table[i].frequency = (stock_freq * i)/8;

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux