Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
9643e13c
Commit
9643e13c
authored
Mar 11, 2003
by
Dave Jones
Browse files
Options
Browse Files
Download
Plain Diff
Merge tetrachloride.(none):/mnt/raid/src/kernel/2.5/bk-linus
into tetrachloride.(none):/mnt/raid/src/kernel/2.5/cpufreq
parents
b84ba662
a31d5068
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
19 additions
and
13 deletions
+19
-13
Documentation/cpu-freq/cpu-drivers.txt
Documentation/cpu-freq/cpu-drivers.txt
+4
-4
Documentation/cpu-freq/governors.txt
Documentation/cpu-freq/governors.txt
+1
-1
Documentation/cpu-freq/user-guide.txt
Documentation/cpu-freq/user-guide.txt
+5
-4
arch/i386/kernel/cpu/cpufreq/powernow-k7.c
arch/i386/kernel/cpu/cpufreq/powernow-k7.c
+9
-4
No files found.
Documentation/cpu-freq/cpu-drivers.txt
View file @
9643e13c
...
...
@@ -35,7 +35,7 @@ Contents:
So, you just got a brand-new CPU / chipset with datasheets and want to
add cpufreq support for this CPU / chipset? Great. Here are some hints
on what is nec
c
essary:
on what is necessary:
1.1 Initialization
...
...
@@ -54,7 +54,7 @@ cpufreq_driver.name - The name of this driver.
cpufreq_driver.init - A pointer to the per-CPU initialization
function.
cpufreq_driver.verify - A pointer to a "verfication" funciton.
cpufreq_driver.verify - A pointer to a "ver
i
fication" funciton.
cpufreq_driver.setpolicy _or_
cpufreq_driver.target - See below on the differences.
...
...
@@ -72,7 +72,7 @@ cpufreq_driver.attr - A pointer to a NULL-terminated list of
--------------------------
Whenever a new CPU is registered with the device model, or after the
cpufreq driver registers itself, the per-CPU initialization fu
cn
tion
cpufreq driver registers itself, the per-CPU initialization fu
nc
tion
cpufreq_driver.init is called. It takes a struct cpufreq_policy
*policy as argument. What to do now?
...
...
@@ -94,7 +94,7 @@ policy->cur The current operating frequency of
this CPU (if appropriate)
policy->min,
policy->max,
policy->policy and, if nec
c
essary,
policy->policy and, if necessary,
policy->governor must contain the "default policy" for
this CPU. A few moments later,
cpufreq_driver.verify and either
...
...
Documentation/cpu-freq/governors.txt
View file @
9643e13c
...
...
@@ -98,7 +98,7 @@ scaling_max_freq.
-------------
The CPUfreq governor "userspace" allows the user, or any userspace
program running with UID "root", to set the CPU to a specifc frequency
program running with UID "root", to set the CPU to a specif
i
c frequency
by making a sysfs file "scaling_setspeed" available in the CPU-device
directory.
...
...
Documentation/cpu-freq/user-guide.txt
View file @
9643e13c
...
...
@@ -58,7 +58,8 @@ Intel mobile PIII [*] and Intel mobile PIII-M on certain chipsets
Intel Pentium 4, Intel Xeon
National Semiconductors Geode GX
Transmeta Crusoe
varios processors on some ACPI 2.0-compatible systems [**]
VIA Cyrix 3 / C3
various processors on some ACPI 2.0-compatible systems [**]
[*] only certain Intel mobile PIII processors are supported. If you
know that you own a speedstep-capable processor, pass the option
...
...
@@ -81,9 +82,9 @@ UltraSPARC-III
2. "Policy" / "Governor" ?
==========================
Some CPU frequency scaling-capable processor switch between varios
Some CPU frequency scaling-capable processor switch between vario
u
s
frequencies and operating voltages "on the fly" without any kernel or
user involvement. This guarant
u
ees very fast switching to a frequency
user involvement. This guarantees very fast switching to a frequency
which is high enough to serve the user's needs, but low enough to save
power.
...
...
@@ -93,7 +94,7 @@ power.
On these systems, all you can do is select the lower and upper
frequency limit as well as whether you want more aggressive
power-saving or more instantly avai
al
ble processing power.
power-saving or more instantly avai
la
ble processing power.
2.2 Governor
...
...
arch/i386/kernel/cpu/cpufreq/powernow-k7.c
View file @
9643e13c
...
...
@@ -239,12 +239,17 @@ static void change_speed (unsigned int index)
__asm__
(
"
\t
cli
\n
"
);
rdmsrl
(
MSR_K7_FID_VID_CTL
,
fidvidctl
.
val
);
fidvidctl
.
bits
.
SGTC
=
latency
;
/* Stop grant timeout counter */
fidvidctl
.
bits
.
FID
=
fid
;
fidvidctl
.
bits
.
VID
=
vid
;
/* Note, we could set these lazily. Ie, only do voltage transition
if its changed since last time (Some speeds have the same voltage) */
fidvidctl
.
bits
.
FIDC
=
1
;
fidvidctl
.
bits
.
VIDC
=
1
;
/* Set the voltage lazily. Ie, only do voltage transition
if its changed since last time (Some speeds have the same voltage) */
if
(
fidvidctl
.
bits
.
VID
!=
vid
)
{
fidvidctl
.
bits
.
VID
=
vid
;
fidvidctl
.
bits
.
VIDC
=
1
;
}
wrmsrl
(
MSR_K7_FID_VID_CTL
,
fidvidctl
.
val
);
if
(
have_a0
==
1
)
__asm__
(
"
\t
sti
\n
"
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment