x86, apic: clean up ->ioapic_phys_id_map()
- separate the namespace - remove macros Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Родитель
a5c4329622
Коммит
d190cb87c4
|
@ -94,7 +94,7 @@ static inline int cpu_to_logical_apicid(int cpu)
|
||||||
return cpu_physical_id(cpu);
|
return cpu_physical_id(cpu);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline physid_mask_t ioapic_phys_id_map(physid_mask_t phys_map)
|
static inline physid_mask_t bigsmp_ioapic_phys_id_map(physid_mask_t phys_map)
|
||||||
{
|
{
|
||||||
/* For clustered we don't have a good way to do this yet - hack */
|
/* For clustered we don't have a good way to do this yet - hack */
|
||||||
return physids_promote(0xFFL);
|
return physids_promote(0xFFL);
|
||||||
|
|
|
@ -125,7 +125,7 @@ static inline int cpu_to_logical_apicid(int cpu)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline physid_mask_t ioapic_phys_id_map(physid_mask_t phys_map)
|
static inline physid_mask_t es7000_ioapic_phys_id_map(physid_mask_t phys_map)
|
||||||
{
|
{
|
||||||
/* For clustered we don't have a good way to do this yet - hack */
|
/* For clustered we don't have a good way to do this yet - hack */
|
||||||
return physids_promote(0xff);
|
return physids_promote(0xff);
|
||||||
|
|
|
@ -99,7 +99,7 @@ static inline unsigned long default_check_apicid_present(int bit)
|
||||||
return physid_isset(bit, phys_cpu_present_map);
|
return physid_isset(bit, phys_cpu_present_map);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline physid_mask_t ioapic_phys_id_map(physid_mask_t phys_map)
|
static inline physid_mask_t default_ioapic_phys_id_map(physid_mask_t phys_map)
|
||||||
{
|
{
|
||||||
return phys_map;
|
return phys_map;
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
|
|
||||||
#include <asm/genapic.h>
|
#include <asm/genapic.h>
|
||||||
|
|
||||||
#define ioapic_phys_id_map (apic->ioapic_phys_id_map)
|
|
||||||
#define setup_apic_routing (apic->setup_apic_routing)
|
#define setup_apic_routing (apic->setup_apic_routing)
|
||||||
#define multi_timer_check (apic->multi_timer_check)
|
#define multi_timer_check (apic->multi_timer_check)
|
||||||
#define apicid_to_node (apic->apicid_to_node)
|
#define apicid_to_node (apic->apicid_to_node)
|
||||||
|
|
|
@ -48,7 +48,7 @@ static inline int multi_timer_check(int apic, int irq)
|
||||||
return apic != 0 && irq == 0;
|
return apic != 0 && irq == 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline physid_mask_t ioapic_phys_id_map(physid_mask_t phys_map)
|
static inline physid_mask_t numaq_ioapic_phys_id_map(physid_mask_t phys_map)
|
||||||
{
|
{
|
||||||
/* We don't have a good way to do this yet - hack */
|
/* We don't have a good way to do this yet - hack */
|
||||||
return physids_promote(0xFUL);
|
return physids_promote(0xFUL);
|
||||||
|
|
|
@ -109,7 +109,8 @@ static inline int cpu_present_to_apicid(int mps_cpu)
|
||||||
return BAD_APICID;
|
return BAD_APICID;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline physid_mask_t ioapic_phys_id_map(physid_mask_t phys_id_map)
|
static inline physid_mask_t
|
||||||
|
summit_ioapic_phys_id_map(physid_mask_t phys_id_map)
|
||||||
{
|
{
|
||||||
/* For clustered we don't have a good way to do this yet - hack */
|
/* For clustered we don't have a good way to do this yet - hack */
|
||||||
return physids_promote(0x0F);
|
return physids_promote(0x0F);
|
||||||
|
|
|
@ -2108,7 +2108,7 @@ static void __init setup_ioapic_ids_from_mpc(void)
|
||||||
* This is broken; anything with a real cpu count has to
|
* This is broken; anything with a real cpu count has to
|
||||||
* circumvent this idiocy regardless.
|
* circumvent this idiocy regardless.
|
||||||
*/
|
*/
|
||||||
phys_id_present_map = ioapic_phys_id_map(phys_cpu_present_map);
|
phys_id_present_map = apic->ioapic_phys_id_map(phys_cpu_present_map);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Set the IOAPIC ID to the value stored in the MPC table.
|
* Set the IOAPIC ID to the value stored in the MPC table.
|
||||||
|
@ -3862,7 +3862,7 @@ int __init io_apic_get_unique_id(int ioapic, int apic_id)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (physids_empty(apic_id_map))
|
if (physids_empty(apic_id_map))
|
||||||
apic_id_map = ioapic_phys_id_map(phys_cpu_present_map);
|
apic_id_map = apic->ioapic_phys_id_map(phys_cpu_present_map);
|
||||||
|
|
||||||
spin_lock_irqsave(&ioapic_lock, flags);
|
spin_lock_irqsave(&ioapic_lock, flags);
|
||||||
reg_00.raw = io_apic_read(ioapic, 0);
|
reg_00.raw = io_apic_read(ioapic, 0);
|
||||||
|
|
|
@ -77,7 +77,7 @@ struct genapic apic_bigsmp = {
|
||||||
.vector_allocation_domain = bigsmp_vector_allocation_domain,
|
.vector_allocation_domain = bigsmp_vector_allocation_domain,
|
||||||
.init_apic_ldr = bigsmp_init_apic_ldr,
|
.init_apic_ldr = bigsmp_init_apic_ldr,
|
||||||
|
|
||||||
.ioapic_phys_id_map = ioapic_phys_id_map,
|
.ioapic_phys_id_map = bigsmp_ioapic_phys_id_map,
|
||||||
.setup_apic_routing = setup_apic_routing,
|
.setup_apic_routing = setup_apic_routing,
|
||||||
.multi_timer_check = multi_timer_check,
|
.multi_timer_check = multi_timer_check,
|
||||||
.apicid_to_node = apicid_to_node,
|
.apicid_to_node = apicid_to_node,
|
||||||
|
|
|
@ -58,7 +58,7 @@ struct genapic apic_default = {
|
||||||
.vector_allocation_domain = default_vector_allocation_domain,
|
.vector_allocation_domain = default_vector_allocation_domain,
|
||||||
.init_apic_ldr = default_init_apic_ldr,
|
.init_apic_ldr = default_init_apic_ldr,
|
||||||
|
|
||||||
.ioapic_phys_id_map = ioapic_phys_id_map,
|
.ioapic_phys_id_map = default_ioapic_phys_id_map,
|
||||||
.setup_apic_routing = setup_apic_routing,
|
.setup_apic_routing = setup_apic_routing,
|
||||||
.multi_timer_check = multi_timer_check,
|
.multi_timer_check = multi_timer_check,
|
||||||
.apicid_to_node = apicid_to_node,
|
.apicid_to_node = apicid_to_node,
|
||||||
|
|
|
@ -119,7 +119,7 @@ struct genapic apic_es7000 = {
|
||||||
.vector_allocation_domain = es7000_vector_allocation_domain,
|
.vector_allocation_domain = es7000_vector_allocation_domain,
|
||||||
.init_apic_ldr = es7000_init_apic_ldr,
|
.init_apic_ldr = es7000_init_apic_ldr,
|
||||||
|
|
||||||
.ioapic_phys_id_map = ioapic_phys_id_map,
|
.ioapic_phys_id_map = es7000_ioapic_phys_id_map,
|
||||||
.setup_apic_routing = setup_apic_routing,
|
.setup_apic_routing = setup_apic_routing,
|
||||||
.multi_timer_check = multi_timer_check,
|
.multi_timer_check = multi_timer_check,
|
||||||
.apicid_to_node = apicid_to_node,
|
.apicid_to_node = apicid_to_node,
|
||||||
|
|
|
@ -64,7 +64,7 @@ struct genapic apic_numaq = {
|
||||||
.vector_allocation_domain = numaq_vector_allocation_domain,
|
.vector_allocation_domain = numaq_vector_allocation_domain,
|
||||||
.init_apic_ldr = numaq_init_apic_ldr,
|
.init_apic_ldr = numaq_init_apic_ldr,
|
||||||
|
|
||||||
.ioapic_phys_id_map = ioapic_phys_id_map,
|
.ioapic_phys_id_map = numaq_ioapic_phys_id_map,
|
||||||
.setup_apic_routing = setup_apic_routing,
|
.setup_apic_routing = setup_apic_routing,
|
||||||
.multi_timer_check = multi_timer_check,
|
.multi_timer_check = multi_timer_check,
|
||||||
.apicid_to_node = apicid_to_node,
|
.apicid_to_node = apicid_to_node,
|
||||||
|
|
|
@ -57,7 +57,7 @@ struct genapic apic_summit = {
|
||||||
.vector_allocation_domain = summit_vector_allocation_domain,
|
.vector_allocation_domain = summit_vector_allocation_domain,
|
||||||
.init_apic_ldr = summit_init_apic_ldr,
|
.init_apic_ldr = summit_init_apic_ldr,
|
||||||
|
|
||||||
.ioapic_phys_id_map = ioapic_phys_id_map,
|
.ioapic_phys_id_map = summit_ioapic_phys_id_map,
|
||||||
.setup_apic_routing = setup_apic_routing,
|
.setup_apic_routing = setup_apic_routing,
|
||||||
.multi_timer_check = multi_timer_check,
|
.multi_timer_check = multi_timer_check,
|
||||||
.apicid_to_node = apicid_to_node,
|
.apicid_to_node = apicid_to_node,
|
||||||
|
|
Загрузка…
Ссылка в новой задаче