lkml.org 
[lkml]   [2000]   [Sep]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patches in this message
/
Date
From
Subject[PATCH] K6-2+ MTRR fix
Hello

This patch enables the MTRR support for K6-2+ processors. Thanks to
Bennett Feitell for alerting me to this problem.

Also, it has the fix that enabled memory write-allocate in the cache, a
patch I posted a month or so back but Linus still hasn't merged in
[despite repeated e-mails].

Before the patch /proc/mtrr wouldn't even exist, and mtrr was not listed
in /proc/cpuinfo.

Now, while running X, I get a normal:

hal:/usr/src/linux$ cat /proc/mtrr
reg00: base=0xe2000000 (3616MB), size= 32MB: write-combining, count=2

The patch is against kernel 2.4.0-test8 but it applies against most recent
kernels as setup.c hasn't changed much recently.

Vince

____________
\ /\ /\ / Vince Weaver
\/__\/__\/ weave@eng.umd.edu http://www.glue.umd.edu/~weave


--- ./arch/i386/kernel/setup.c.old Fri Sep 22 20:03:37 2000
+++ ./arch/i386/kernel/setup.c Fri Sep 22 19:55:03 2000
@@ -875,7 +875,8 @@
* Set MTRR capability flag if appropriate
*/
if(boot_cpu_data.x86 == 5) {
- if((boot_cpu_data.x86_model == 9) ||
+ if((boot_cpu_data.x86_model == 13) ||
+ (boot_cpu_data.x86_model == 9) ||
((boot_cpu_data.x86_model == 8) &&
(boot_cpu_data.x86_mask >= 8)))
c->x86_capability |= X86_FEATURE_MTRR;
@@ -916,7 +917,7 @@
}
break;
}
- if (c->x86_model == 8 || c->x86_model == 9)
+ if (c->x86_model == 8 || c->x86_model == 9 || c->x86_model == 13)
{
/* The more serious chips .. */
--- ./arch/i386/kernel/setup.c.old Fri Sep 22 20:03:37 2000
+++ ./arch/i386/kernel/setup.c Fri Sep 22 19:55:03 2000
@@ -875,7 +875,8 @@
* Set MTRR capability flag if appropriate
*/
if(boot_cpu_data.x86 == 5) {
- if((boot_cpu_data.x86_model == 9) ||
+ if((boot_cpu_data.x86_model == 13) ||
+ (boot_cpu_data.x86_model == 9) ||
((boot_cpu_data.x86_model == 8) &&
(boot_cpu_data.x86_mask >= 8)))
c->x86_capability |= X86_FEATURE_MTRR;
@@ -916,7 +917,7 @@
}
break;
}
- if (c->x86_model == 8 || c->x86_model == 9)
+ if (c->x86_model == 8 || c->x86_model == 9 || c->x86_model == 13)
{
/* The more serious chips .. */
\
 
 \ /
  Last update: 2005-03-22 12:38    [W:0.031 / U:2.420 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site