summaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/cpu/intel_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/intel_64.c
parent3a27dd1ce5de08e21e0266ddf00e6f1f843bfe8b (diff)
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/intel_64.c')
-rw-r--r--arch/x86/kernel/cpu/intel_64.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/arch/x86/kernel/cpu/intel_64.c b/arch/x86/kernel/cpu/intel_64.c
index b3391219948..fcb1cc9d75c 100644
--- a/arch/x86/kernel/cpu/intel_64.c
+++ b/arch/x86/kernel/cpu/intel_64.c
@@ -5,7 +5,9 @@
#include <asm/topology.h>
#include <asm/numa_64.h>
-void __cpuinit early_init_intel(struct cpuinfo_x86 *c)
+#include "cpu.h"
+
+static void __cpuinit early_init_intel(struct cpuinfo_x86 *c)
{
if ((c->x86 == 0xf && c->x86_model >= 0x03) ||
(c->x86 == 0x6 && c->x86_model >= 0x0e))
@@ -48,7 +50,7 @@ static void __cpuinit srat_detect_node(void)
#endif
}
-void __cpuinit init_intel(struct cpuinfo_x86 *c)
+static void __cpuinit init_intel(struct cpuinfo_x86 *c)
{
/* Cache sizes */
unsigned n;
@@ -90,3 +92,12 @@ void __cpuinit init_intel(struct cpuinfo_x86 *c)
srat_detect_node();
}
+
+static struct cpu_dev intel_cpu_dev __cpuinitdata = {
+ .c_vendor = "Intel",
+ .c_ident = { "GenuineIntel" },
+ .c_early_init = early_init_intel,
+ .c_init = init_intel,
+};
+cpu_vendor_dev_register(X86_VENDOR_INTEL, &intel_cpu_dev);
+