summaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/cpu/centaur_64.c
diff options
context:
space:
mode:
authorYinghai Lu <yhlu.kernel@gmail.com>2008-06-20 08:18:09 +0200
committerIngo Molnar <mingo@elte.hu>2008-07-08 07:47:39 +0200
commitdcd32b6a1ffe6c040f8346f7fbaf4318bb8ae41c (patch)
tree51b06c0bf8bc80dd2a6f9155a4a295f5b0ccdccb /arch/x86/kernel/cpu/centaur_64.c
parent3a27dd1ce5de08e21e0266ddf00e6f1f843bfe8b (diff)
downloadop-kernel-dev-dcd32b6a1ffe6c040f8346f7fbaf4318bb8ae41c.zip
op-kernel-dev-dcd32b6a1ffe6c040f8346f7fbaf4318bb8ae41c.tar.gz
x86: make 64-bit identify_cpu use cpu_dev
we may need to move some functions to common.c later Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/cpu/centaur_64.c')
-rw-r--r--arch/x86/kernel/cpu/centaur_64.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/arch/x86/kernel/cpu/centaur_64.c b/arch/x86/kernel/cpu/centaur_64.c
index bac96d1..13526fd 100644
--- a/arch/x86/kernel/cpu/centaur_64.c
+++ b/arch/x86/kernel/cpu/centaur_64.c
@@ -4,13 +4,15 @@
#include <asm/cpufeature.h>
#include <asm/processor.h>
-void __cpuinit early_init_centaur(struct cpuinfo_x86 *c)
+#include "cpu.h"
+
+static void __cpuinit early_init_centaur(struct cpuinfo_x86 *c)
{
if (c->x86 == 0x6 && c->x86_model >= 0xf)
set_cpu_cap(c, X86_FEATURE_CONSTANT_TSC);
}
-void __cpuinit init_centaur(struct cpuinfo_x86 *c)
+static void __cpuinit init_centaur(struct cpuinfo_x86 *c)
{
/* Cache sizes */
unsigned n;
@@ -29,3 +31,13 @@ void __cpuinit init_centaur(struct cpuinfo_x86 *c)
}
set_cpu_cap(c, X86_FEATURE_LFENCE_RDTSC);
}
+
+static struct cpu_dev centaur_cpu_dev __cpuinitdata = {
+ .c_vendor = "Centaur",
+ .c_ident = { "CentaurHauls" },
+ .c_early_init = early_init_centaur,
+ .c_init = init_centaur,
+};
+
+cpu_vendor_dev_register(X86_VENDOR_CENTAUR, &centaur_cpu_dev);
+
OpenPOWER on IntegriCloud