aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAlexey Starikovskiy <astarikovskiy@suse.de>2008-04-04 15:42:15 -0400
committerIngo Molnar <mingo@elte.hu>2008-04-17 11:41:35 -0400
commit746f2244065ddfbe0c5d339e309db4d2b48f185b (patch)
tree1e44cdefca464e981421dfc6e2e2f261a9302215 /arch
parent888032cd23f0244fdefdcbe265952e7831a9cacc (diff)
x86: unify arch/x86/kernel/mpparse_64.c
Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kernel/mpparse_32.c56
-rw-r--r--arch/x86/kernel/mpparse_64.c8
2 files changed, 10 insertions, 54 deletions
diff --git a/arch/x86/kernel/mpparse_32.c b/arch/x86/kernel/mpparse_32.c
index 6c9c29621900..9a9819b2c5f5 100644
--- a/arch/x86/kernel/mpparse_32.c
+++ b/arch/x86/kernel/mpparse_32.c
@@ -82,6 +82,7 @@ static struct mpc_config_translation *translation_table[MAX_MPC_ENTRY]
82static void __cpuinit MP_processor_info(struct mpc_config_processor *m) 82static void __cpuinit MP_processor_info(struct mpc_config_processor *m)
83{ 83{
84 int apicid; 84 int apicid;
85 char *bootup_cpu = "";
85 86
86 if (!(m->mpc_cpuflag & CPU_ENABLED)) { 87 if (!(m->mpc_cpuflag & CPU_ENABLED)) {
87 disabled_cpus++; 88 disabled_cpus++;
@@ -90,65 +91,14 @@ static void __cpuinit MP_processor_info(struct mpc_config_processor *m)
90#ifdef CONFIG_X86_NUMAQ 91#ifdef CONFIG_X86_NUMAQ
91 apicid = mpc_apic_id(m, translation_table[mpc_record]); 92 apicid = mpc_apic_id(m, translation_table[mpc_record]);
92#else 93#else
93 Dprintk("Processor #%d %u:%u APIC version %d\n",
94 m->mpc_apicid,
95 (m->mpc_cpufeature & CPU_FAMILY_MASK) >> 8,
96 (m->mpc_cpufeature & CPU_MODEL_MASK) >> 4, m->mpc_apicver);
97 apicid = m->mpc_apicid; 94 apicid = m->mpc_apicid;
98#endif 95#endif
99
100 if (m->mpc_featureflag & (1 << 0))
101 Dprintk(" Floating point unit present.\n");
102 if (m->mpc_featureflag & (1 << 7))
103 Dprintk(" Machine Exception supported.\n");
104 if (m->mpc_featureflag & (1 << 8))
105 Dprintk(" 64 bit compare & exchange supported.\n");
106 if (m->mpc_featureflag & (1 << 9))
107 Dprintk(" Internal APIC present.\n");
108 if (m->mpc_featureflag & (1 << 11))
109 Dprintk(" SEP present.\n");
110 if (m->mpc_featureflag & (1 << 12))
111 Dprintk(" MTRR present.\n");
112 if (m->mpc_featureflag & (1 << 13))
113 Dprintk(" PGE present.\n");
114 if (m->mpc_featureflag & (1 << 14))
115 Dprintk(" MCA present.\n");
116 if (m->mpc_featureflag & (1 << 15))
117 Dprintk(" CMOV present.\n");
118 if (m->mpc_featureflag & (1 << 16))
119 Dprintk(" PAT present.\n");
120 if (m->mpc_featureflag & (1 << 17))
121 Dprintk(" PSE present.\n");
122 if (m->mpc_featureflag & (1 << 18))
123 Dprintk(" PSN present.\n");
124 if (m->mpc_featureflag & (1 << 19))
125 Dprintk(" Cache Line Flush Instruction present.\n");
126 /* 20 Reserved */
127 if (m->mpc_featureflag & (1 << 21))
128 Dprintk(" Debug Trace and EMON Store present.\n");
129 if (m->mpc_featureflag & (1 << 22))
130 Dprintk(" ACPI Thermal Throttle Registers present.\n");
131 if (m->mpc_featureflag & (1 << 23))
132 Dprintk(" MMX present.\n");
133 if (m->mpc_featureflag & (1 << 24))
134 Dprintk(" FXSR present.\n");
135 if (m->mpc_featureflag & (1 << 25))
136 Dprintk(" XMM present.\n");
137 if (m->mpc_featureflag & (1 << 26))
138 Dprintk(" Willamette New Instructions present.\n");
139 if (m->mpc_featureflag & (1 << 27))
140 Dprintk(" Self Snoop present.\n");
141 if (m->mpc_featureflag & (1 << 28))
142 Dprintk(" HT present.\n");
143 if (m->mpc_featureflag & (1 << 29))
144 Dprintk(" Thermal Monitor present.\n");
145 /* 30, 31 Reserved */
146
147 if (m->mpc_cpuflag & CPU_BOOTPROCESSOR) { 96 if (m->mpc_cpuflag & CPU_BOOTPROCESSOR) {
148 Dprintk(" Bootup CPU\n"); 97 bootup_cpu = " (Bootup-CPU)";
149 boot_cpu_physical_apicid = m->mpc_apicid; 98 boot_cpu_physical_apicid = m->mpc_apicid;
150 } 99 }
151 100
101 printk(KERN_INFO "Processor #%d%s\n", m->mpc_apicid, bootup_cpu);
152 generic_processor_info(apicid, m->mpc_apicver); 102 generic_processor_info(apicid, m->mpc_apicver);
153} 103}
154 104
diff --git a/arch/x86/kernel/mpparse_64.c b/arch/x86/kernel/mpparse_64.c
index 1c3bf80b3ba6..5c916383bb71 100644
--- a/arch/x86/kernel/mpparse_64.c
+++ b/arch/x86/kernel/mpparse_64.c
@@ -65,19 +65,25 @@ static int __init mpf_checksum(unsigned char *mp, int len)
65 65
66static void __cpuinit MP_processor_info(struct mpc_config_processor *m) 66static void __cpuinit MP_processor_info(struct mpc_config_processor *m)
67{ 67{
68 int apicid;
68 char *bootup_cpu = ""; 69 char *bootup_cpu = "";
69 70
70 if (!(m->mpc_cpuflag & CPU_ENABLED)) { 71 if (!(m->mpc_cpuflag & CPU_ENABLED)) {
71 disabled_cpus++; 72 disabled_cpus++;
72 return; 73 return;
73 } 74 }
75#ifdef CONFIG_X86_NUMAQ
76 apicid = mpc_apic_id(m, translation_table[mpc_record]);
77#else
78 apicid = m->mpc_apicid;
79#endif
74 if (m->mpc_cpuflag & CPU_BOOTPROCESSOR) { 80 if (m->mpc_cpuflag & CPU_BOOTPROCESSOR) {
75 bootup_cpu = " (Bootup-CPU)"; 81 bootup_cpu = " (Bootup-CPU)";
76 boot_cpu_physical_apicid = m->mpc_apicid; 82 boot_cpu_physical_apicid = m->mpc_apicid;
77 } 83 }
78 84
79 printk(KERN_INFO "Processor #%d%s\n", m->mpc_apicid, bootup_cpu); 85 printk(KERN_INFO "Processor #%d%s\n", m->mpc_apicid, bootup_cpu);
80 generic_processor_info(m->mpc_apicid, 0); 86 generic_processor_info(apicid, m->mpc_apicver);
81} 87}
82 88
83static void __init MP_bus_info(struct mpc_config_bus *m) 89static void __init MP_bus_info(struct mpc_config_bus *m)