diff options
-rw-r--r-- | arch/x86_64/kernel/head64.c | 19 | ||||
-rw-r--r-- | arch/x86_64/kernel/setup.c | 4 |
2 files changed, 2 insertions, 21 deletions
diff --git a/arch/x86_64/kernel/head64.c b/arch/x86_64/kernel/head64.c index bacbd75c63ad..f2461fde9f8f 100644 --- a/arch/x86_64/kernel/head64.c +++ b/arch/x86_64/kernel/head64.c | |||
@@ -56,24 +56,6 @@ static void __init copy_bootdata(char *real_mode_data) | |||
56 | printk("Bootdata ok (command line is %s)\n", saved_command_line); | 56 | printk("Bootdata ok (command line is %s)\n", saved_command_line); |
57 | } | 57 | } |
58 | 58 | ||
59 | static void __init setup_boot_cpu_data(void) | ||
60 | { | ||
61 | unsigned int dummy, eax; | ||
62 | |||
63 | /* get vendor info */ | ||
64 | cpuid(0, (unsigned int *)&boot_cpu_data.cpuid_level, | ||
65 | (unsigned int *)&boot_cpu_data.x86_vendor_id[0], | ||
66 | (unsigned int *)&boot_cpu_data.x86_vendor_id[8], | ||
67 | (unsigned int *)&boot_cpu_data.x86_vendor_id[4]); | ||
68 | |||
69 | /* get cpu type */ | ||
70 | cpuid(1, &eax, &dummy, &dummy, | ||
71 | (unsigned int *) &boot_cpu_data.x86_capability); | ||
72 | boot_cpu_data.x86 = (eax >> 8) & 0xf; | ||
73 | boot_cpu_data.x86_model = (eax >> 4) & 0xf; | ||
74 | boot_cpu_data.x86_mask = eax & 0xf; | ||
75 | } | ||
76 | |||
77 | void __init x86_64_start_kernel(char * real_mode_data) | 59 | void __init x86_64_start_kernel(char * real_mode_data) |
78 | { | 60 | { |
79 | char *s; | 61 | char *s; |
@@ -117,6 +99,5 @@ void __init x86_64_start_kernel(char * real_mode_data) | |||
117 | if (__pa_symbol(&_end) >= KERNEL_TEXT_SIZE) | 99 | if (__pa_symbol(&_end) >= KERNEL_TEXT_SIZE) |
118 | panic("Kernel too big for kernel mapping\n"); | 100 | panic("Kernel too big for kernel mapping\n"); |
119 | 101 | ||
120 | setup_boot_cpu_data(); | ||
121 | start_kernel(); | 102 | start_kernel(); |
122 | } | 103 | } |
diff --git a/arch/x86_64/kernel/setup.c b/arch/x86_64/kernel/setup.c index ddc3b2d9a165..73f1cdd140fe 100644 --- a/arch/x86_64/kernel/setup.c +++ b/arch/x86_64/kernel/setup.c | |||
@@ -545,10 +545,10 @@ void __init setup_arch(char **cmdline_p) | |||
545 | data_resource.start = virt_to_phys(&_etext); | 545 | data_resource.start = virt_to_phys(&_etext); |
546 | data_resource.end = virt_to_phys(&_edata)-1; | 546 | data_resource.end = virt_to_phys(&_edata)-1; |
547 | 547 | ||
548 | parse_cmdline_early(cmdline_p); | ||
549 | |||
550 | early_identify_cpu(&boot_cpu_data); | 548 | early_identify_cpu(&boot_cpu_data); |
551 | 549 | ||
550 | parse_cmdline_early(cmdline_p); | ||
551 | |||
552 | /* | 552 | /* |
553 | * partially used pages are not usable - thus | 553 | * partially used pages are not usable - thus |
554 | * we are rounding upwards: | 554 | * we are rounding upwards: |