Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 205908 Details for
Bug 287463
Kernel modifications break ondemand frequency scaling from conserving power
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
p4-clockmod.c:cpufreq_p4_cpu_init() with changes to correct problem
p4-clockmod.changes (text/plain), 1.58 KB, created by
Robert Bradbury
on 2009-10-03 09:32:20 UTC
(
hide
)
Description:
p4-clockmod.c:cpufreq_p4_cpu_init() with changes to correct problem
Filename:
MIME Type:
Creator:
Robert Bradbury
Created:
2009-10-03 09:32:20 UTC
Size:
1.58 KB
patch
obsolete
>static int cpufreq_p4_cpu_init(struct cpufreq_policy *policy) >{ > struct cpuinfo_x86 *c = &cpu_data(policy->cpu); > int cpuid = 0; > unsigned int i; > >#ifdef CONFIG_SMP > cpumask_copy(policy->cpus, cpu_sibling_mask(policy->cpu)); >#endif > > /* Errata workaround */ > cpuid = (c->x86 << 8) | (c->x86_model << 4) | c->x86_mask; > switch (cpuid) { > case 0x0f07: > case 0x0f0a: > case 0x0f11: > case 0x0f12: > has_N44_O17_errata[policy->cpu] = 1; > dprintk("has errata -- disabling low frequencies\n"); > } > > if (speedstep_detect_processor() == SPEEDSTEP_CPU_P4D && > c->x86_model < 2) { > /* switch to maximum frequency and measure result */ > cpufreq_p4_setdc(policy->cpu, DC_DISABLE); > recalibrate_cpu_khz(); > } > /* get max frequency */ > stock_freq = cpufreq_p4_get_frequency(c); > if (!stock_freq) > return -EINVAL; > > /* table init */ > 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 > p4clockmod_table[i].frequency = (stock_freq * i)/8; > } > cpufreq_frequency_table_get_attr(p4clockmod_table, policy->cpu); > > /* cpuinfo and default policy values */ >#ifdef NO_ONDEMAND /* This 2.6.30 change prevents ondemand governor from changing CPU speed */ > /* the transition latency is set to be 1 higher than the maximum > * transition latency of the ondemand governor */ > policy->cpuinfo.transition_latency = 10000001; >#else > policy->cpuinfo.transition_latency = 1000000; /* assumed */ >#endif > policy->cur = stock_freq; > > return cpufreq_frequency_table_cpuinfo(policy, &p4clockmod_table[0]); >}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 287463
: 205908 |
235403
|
249286