aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kernel/setup_64.c20
-rw-r--r--arch/x86/kernel/vmlinux_64.lds.S1
2 files changed, 21 insertions, 0 deletions
diff --git a/arch/x86/kernel/setup_64.c b/arch/x86/kernel/setup_64.c
index 0cebf953c25a..b789ec599923 100644
--- a/arch/x86/kernel/setup_64.c
+++ b/arch/x86/kernel/setup_64.c
@@ -664,6 +664,25 @@ static void __cpuinit get_cpu_vendor(struct cpuinfo_x86 *c)
664 c->x86_vendor = X86_VENDOR_UNKNOWN; 664 c->x86_vendor = X86_VENDOR_UNKNOWN;
665} 665}
666 666
667static void __init early_cpu_support_print(void)
668{
669 int i,j;
670 struct cpu_dev *cpu_devx;
671
672 printk("KERNEL supported cpus:\n");
673 for (i = 0; i < X86_VENDOR_NUM; i++) {
674 cpu_devx = cpu_devs[i];
675 if (!cpu_devx)
676 continue;
677 for (j = 0; j < 2; j++) {
678 if (!cpu_devx->c_ident[j])
679 continue;
680 printk(" %s %s\n", cpu_devx->c_vendor,
681 cpu_devx->c_ident[j]);
682 }
683 }
684}
685
667static void __init early_cpu_init(void) 686static void __init early_cpu_init(void)
668{ 687{
669 struct cpu_vendor_dev *cvdev; 688 struct cpu_vendor_dev *cvdev;
@@ -672,6 +691,7 @@ static void __init early_cpu_init(void)
672 cvdev < __x86cpuvendor_end ; 691 cvdev < __x86cpuvendor_end ;
673 cvdev++) 692 cvdev++)
674 cpu_devs[cvdev->vendor] = cvdev->cpu_dev; 693 cpu_devs[cvdev->vendor] = cvdev->cpu_dev;
694 early_cpu_support_print();
675} 695}
676 696
677/* Do some early cpuid on the boot CPU to get some parameter that are 697/* Do some early cpuid on the boot CPU to get some parameter that are
diff --git a/arch/x86/kernel/vmlinux_64.lds.S b/arch/x86/kernel/vmlinux_64.lds.S
index fad3674b06a5..b29f63bdff5e 100644
--- a/arch/x86/kernel/vmlinux_64.lds.S
+++ b/arch/x86/kernel/vmlinux_64.lds.S
@@ -177,6 +177,7 @@ SECTIONS
177 *(.con_initcall.init) 177 *(.con_initcall.init)
178 } 178 }
179 __con_initcall_end = .; 179 __con_initcall_end = .;
180 . = ALIGN(16);
180 __x86cpuvendor_start = .; 181 __x86cpuvendor_start = .;
181 .x86cpuvendor.init : AT(ADDR(.x86cpuvendor.init) - LOAD_OFFSET) { 182 .x86cpuvendor.init : AT(ADDR(.x86cpuvendor.init) - LOAD_OFFSET) {
182 *(.x86cpuvendor.init) 183 *(.x86cpuvendor.init)