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
Kirill Smelkov
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
Show 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
;
/* 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