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
00bc5c33
Commit
00bc5c33
authored
Apr 28, 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
a58e4d1d
d837eca1
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
35 additions
and
7 deletions
+35
-7
arch/i386/kernel/cpu/cpufreq/powernow-k7.c
arch/i386/kernel/cpu/cpufreq/powernow-k7.c
+15
-7
arch/i386/kernel/dmi_scan.c
arch/i386/kernel/dmi_scan.c
+19
-0
include/asm-i386/system.h
include/asm-i386/system.h
+1
-0
No files found.
arch/i386/kernel/cpu/cpufreq/powernow-k7.c
View file @
00bc5c33
...
...
@@ -236,20 +236,24 @@ static void change_speed (unsigned int index)
if
(
have_a0
==
1
)
/* A0 errata 5 */
__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
.
FIDC
=
1
;
/* First change the frequency. */
if
(
fidvidctl
.
bits
.
FID
!=
fid
)
{
rdmsrl
(
MSR_K7_FID_VID_CTL
,
fidvidctl
.
val
);
fidvidctl
.
bits
.
SGTC
=
latency
;
/* Stop grant timeout counter */
fidvidctl
.
bits
.
FID
=
fid
;
fidvidctl
.
bits
.
FIDC
=
1
;
wrmsrl
(
MSR_K7_FID_VID_CTL
,
fidvidctl
.
val
);
}
/* Set the voltage lazily. Ie, only do voltage transition
if its changed since last time (Some speeds have the same voltage) */
/* Now change voltage. */
if
(
fidvidctl
.
bits
.
VID
!=
vid
)
{
rdmsrl
(
MSR_K7_FID_VID_CTL
,
fidvidctl
.
val
);
fidvidctl
.
bits
.
VID
=
vid
;
fidvidctl
.
bits
.
VIDC
=
1
;
wrmsrl
(
MSR_K7_FID_VID_CTL
,
fidvidctl
.
val
);
}
wrmsrl
(
MSR_K7_FID_VID_CTL
,
fidvidctl
.
val
);
if
(
have_a0
==
1
)
__asm__
(
"
\t
sti
\n
"
);
...
...
@@ -386,6 +390,10 @@ static struct cpufreq_driver powernow_driver = {
static
int
__init
powernow_init
(
void
)
{
if
(
dmi_broken
&
BROKEN_CPUFREQ
)
{
printk
(
KERN_INFO
PFX
"Disabled at boot time by DMI,
\n
"
);
return
-
ENODEV
;
}
if
(
check_powernow
()
==
0
)
return
-
ENODEV
;
return
cpufreq_register_driver
(
&
powernow_driver
);
...
...
arch/i386/kernel/dmi_scan.c
View file @
00bc5c33
...
...
@@ -511,6 +511,14 @@ static __init int exploding_pnp_bios(struct dmi_blacklist *d)
return
0
;
}
static
__init
int
acer_cpufreq_pst
(
struct
dmi_blacklist
*
d
)
{
printk
(
KERN_WARNING
"%s laptop with broken PST tables in BIOS detected.
\n
"
,
d
->
ident
);
printk
(
KERN_WARNING
"You need to downgrade to 3A21 (09/09/2002), or try a newer BIOS than 3A71 (01/20/2003)
\n
"
);
printk
(
KERN_WARNING
"cpufreq scaling has been disabled as a result of this.
\n
"
);
dmi_broken
|=
BROKEN_CPUFREQ
;
return
0
;
}
/*
...
...
@@ -825,6 +833,17 @@ static __initdata struct dmi_blacklist dmi_blacklist[]={
NO_MATCH
,
NO_MATCH
,
NO_MATCH
}
},
/*
* Some Athlon laptops have really fucked PST tables.
* A BIOS update is all that can save them.
* Mention this, and disable cpufreq.
*/
{
acer_cpufreq_pst
,
"Acer Aspire"
,
{
MATCH
(
DMI_SYS_VENDOR
,
"Insyde Software"
),
MATCH
(
DMI_BIOS_VERSION
,
"3A71"
),
NO_MATCH
,
NO_MATCH
,
NO_MATCH
}
},
{
NULL
,
}
};
...
...
include/asm-i386/system.h
View file @
00bc5c33
...
...
@@ -444,5 +444,6 @@ extern int is_sony_vaio_laptop;
#define BROKEN_ACPI_Sx 0x0001
#define BROKEN_INIT_AFTER_S1 0x0002
#define BROKEN_PNP_BIOS 0x0004
#define BROKEN_CPUFREQ 0x0008
#endif
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