summaryrefslogtreecommitdiff
path: root/src/cpu
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu')
-rw-r--r--src/cpu/k7/Config.lb1
-rw-r--r--src/cpu/k8/Config.lb2
-rw-r--r--src/cpu/k8/cpufixup.c27
-rw-r--r--src/cpu/p6/Config.lb1
4 files changed, 31 insertions, 0 deletions
diff --git a/src/cpu/k7/Config.lb b/src/cpu/k7/Config.lb
index d631c6fd49..3c45a215b7 100644
--- a/src/cpu/k7/Config.lb
+++ b/src/cpu/k7/Config.lb
@@ -1,3 +1,4 @@
uses k7
uses CPU_FIXUP
+dir /cpu/p6
#object cpufixup.o
diff --git a/src/cpu/k8/Config.lb b/src/cpu/k8/Config.lb
index f1f63e263e..c44659517a 100644
--- a/src/cpu/k8/Config.lb
+++ b/src/cpu/k8/Config.lb
@@ -1,4 +1,6 @@
uses CPU_FIXUP
+dir /cpu/k7
+config chip.h
if CPU_FIXUP
object cpufixup.o
object apic_timer.o
diff --git a/src/cpu/k8/cpufixup.c b/src/cpu/k8/cpufixup.c
index fa9c1d2a52..4976bee578 100644
--- a/src/cpu/k8/cpufixup.c
+++ b/src/cpu/k8/cpufixup.c
@@ -4,6 +4,9 @@
#include <cpu/p6/msr.h>
#include <cpu/k8/mtrr.h>
#include <device/device.h>
+#include <device/chip.h>
+
+#include "chip.h"
void k8_cpufixup(struct mem_range *mem)
{
@@ -51,3 +54,27 @@ void k8_cpufixup(struct mem_range *mem)
msr.lo |= SYSCFG_MSR_MtrrVarDramEn | SYSCFG_MSR_TOM2En;
wrmsr(SYSCFG_MSR, msr);
}
+
+static
+void k8_enable(struct chip *chip, enum chip_pass pass)
+{
+
+ struct cpu_k8_config *conf = (struct cpu_k8_config *)chip->chip_info;
+
+ switch (pass) {
+ case CONF_PASS_PRE_CONSOLE:
+ break;
+ default:
+ /* nothing yet */
+ break;
+ }
+}
+
+struct chip_control cpu_k8_control = {
+ enable: k8_enable,
+ name: "AMD K8"
+};
+
+
+
+
diff --git a/src/cpu/p6/Config.lb b/src/cpu/p6/Config.lb
index fb6d9ab996..fb02707c7e 100644
--- a/src/cpu/p6/Config.lb
+++ b/src/cpu/p6/Config.lb
@@ -1,5 +1,6 @@
uses i686
uses INTEL_PPRO_MTRR
+dir /cpu/p5
#object microcode.o
object mtrr.o
#object l2_cache.o