x86: make struct mpc_config_translation NUMAQ-only
Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Родитель
0ec153af4d
Коммит
864205062f
|
@ -98,6 +98,7 @@ static int __init mpf_checksum(unsigned char *mp, int len)
|
||||||
return sum & 0xFF;
|
return sum & 0xFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_X86_NUMAQ
|
||||||
/*
|
/*
|
||||||
* Have to match translation table entries to main table entries by counter
|
* Have to match translation table entries to main table entries by counter
|
||||||
* hence the mpc_record variable .... can't see a less disgusting way of
|
* hence the mpc_record variable .... can't see a less disgusting way of
|
||||||
|
@ -106,6 +107,7 @@ static int __init mpf_checksum(unsigned char *mp, int len)
|
||||||
|
|
||||||
static int mpc_record;
|
static int mpc_record;
|
||||||
static struct mpc_config_translation *translation_table[MAX_MPC_ENTRY] __cpuinitdata;
|
static struct mpc_config_translation *translation_table[MAX_MPC_ENTRY] __cpuinitdata;
|
||||||
|
#endif
|
||||||
|
|
||||||
static void __cpuinit MP_processor_info (struct mpc_config_processor *m)
|
static void __cpuinit MP_processor_info (struct mpc_config_processor *m)
|
||||||
{
|
{
|
||||||
|
@ -475,7 +477,9 @@ static int __init smp_read_mpc(struct mp_config_table *mpc)
|
||||||
/*
|
/*
|
||||||
* Now process the configuration blocks.
|
* Now process the configuration blocks.
|
||||||
*/
|
*/
|
||||||
|
#ifdef CONFIG_X86_NUMAQ
|
||||||
mpc_record = 0;
|
mpc_record = 0;
|
||||||
|
#endif
|
||||||
while (count < mpc->mpc_length) {
|
while (count < mpc->mpc_length) {
|
||||||
switch(*mpt) {
|
switch(*mpt) {
|
||||||
case MP_PROCESSOR:
|
case MP_PROCESSOR:
|
||||||
|
@ -532,7 +536,9 @@ static int __init smp_read_mpc(struct mp_config_table *mpc)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#ifdef CONFIG_X86_NUMAQ
|
||||||
++mpc_record;
|
++mpc_record;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
setup_apic_routing();
|
setup_apic_routing();
|
||||||
if (!num_processors)
|
if (!num_processors)
|
||||||
|
|
|
@ -14,7 +14,6 @@
|
||||||
* Copyright 2003 Andi Kleen, SuSE Labs.
|
* Copyright 2003 Andi Kleen, SuSE Labs.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct mpc_config_translation;
|
|
||||||
struct mpc_config_bus;
|
struct mpc_config_bus;
|
||||||
struct mp_config_table;
|
struct mp_config_table;
|
||||||
struct mpc_config_processor;
|
struct mpc_config_processor;
|
||||||
|
|
|
@ -95,6 +95,16 @@ static inline physid_mask_t apicid_to_cpu_present(int logical_apicid)
|
||||||
return physid_mask_of_physid(cpu + 4*node);
|
return physid_mask_of_physid(cpu + 4*node);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
struct mpc_config_translation {
|
||||||
|
unsigned char mpc_type;
|
||||||
|
unsigned char trans_len;
|
||||||
|
unsigned char trans_type;
|
||||||
|
unsigned char trans_quad;
|
||||||
|
unsigned char trans_global;
|
||||||
|
unsigned char trans_local;
|
||||||
|
unsigned short trans_reserved;
|
||||||
|
};
|
||||||
|
|
||||||
static inline int mpc_apic_id(struct mpc_config_processor *m,
|
static inline int mpc_apic_id(struct mpc_config_processor *m,
|
||||||
struct mpc_config_translation *translation_record)
|
struct mpc_config_translation *translation_record)
|
||||||
{
|
{
|
||||||
|
|
|
@ -166,17 +166,6 @@ struct mp_config_oemtable
|
||||||
char mpc_oem[8];
|
char mpc_oem[8];
|
||||||
};
|
};
|
||||||
|
|
||||||
struct mpc_config_translation
|
|
||||||
{
|
|
||||||
unsigned char mpc_type;
|
|
||||||
unsigned char trans_len;
|
|
||||||
unsigned char trans_type;
|
|
||||||
unsigned char trans_quad;
|
|
||||||
unsigned char trans_global;
|
|
||||||
unsigned char trans_local;
|
|
||||||
unsigned short trans_reserved;
|
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Default configurations
|
* Default configurations
|
||||||
*
|
*
|
||||||
|
|
Загрузка…
Ссылка в новой задаче