aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/xen/enlighten.c
diff options
context:
space:
mode:
authorYinghai Lu <yhlu.kernel@gmail.com>2008-07-14 01:19:35 -0400
committerIngo Molnar <mingo@elte.hu>2008-07-14 03:02:54 -0400
commit94a8c3c2437c8946f1b6c8e0b2c560a7db8ed3c6 (patch)
tree7bad615005b6047306336e8f688edcf1c6bb74dd /arch/x86/xen/enlighten.c
parentf910a9dc7c865896815e2a95fe33363e9522f277 (diff)
x86: let 32bit use apic_ops too - fix
fix for pv - clean up the namespace there too. Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com> Cc: Suresh Siddha <suresh.b.siddha@intel.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/xen/enlighten.c')
-rw-r--r--arch/x86/xen/enlighten.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
index 54e255667530..d11dda7ebd7a 100644
--- a/arch/x86/xen/enlighten.c
+++ b/arch/x86/xen/enlighten.c
@@ -559,7 +559,6 @@ static void xen_apic_write(u32 reg, u32 val)
559 WARN_ON(1); 559 WARN_ON(1);
560} 560}
561 561
562#ifdef CONFIG_X86_64
563static u64 xen_apic_icr_read(void) 562static u64 xen_apic_icr_read(void)
564{ 563{
565 return 0; 564 return 0;
@@ -576,6 +575,11 @@ static void xen_apic_wait_icr_idle(void)
576 return; 575 return;
577} 576}
578 577
578static u32 xen_safe_apic_wait_icr_idle(void)
579{
580 return 0;
581}
582
579static struct apic_ops xen_basic_apic_ops = { 583static struct apic_ops xen_basic_apic_ops = {
580 .read = xen_apic_read, 584 .read = xen_apic_read,
581 .write = xen_apic_write, 585 .write = xen_apic_write,
@@ -583,9 +587,8 @@ static struct apic_ops xen_basic_apic_ops = {
583 .icr_read = xen_apic_icr_read, 587 .icr_read = xen_apic_icr_read,
584 .icr_write = xen_apic_icr_write, 588 .icr_write = xen_apic_icr_write,
585 .wait_icr_idle = xen_apic_wait_icr_idle, 589 .wait_icr_idle = xen_apic_wait_icr_idle,
586 .safe_wait_icr_idle = xen_apic_wait_icr_idle, 590 .safe_wait_icr_idle = xen_safe_apic_wait_icr_idle,
587}; 591};
588#endif
589 592
590#endif 593#endif
591 594
@@ -1159,11 +1162,6 @@ static const struct pv_irq_ops xen_irq_ops __initdata = {
1159 1162
1160static const struct pv_apic_ops xen_apic_ops __initdata = { 1163static const struct pv_apic_ops xen_apic_ops __initdata = {
1161#ifdef CONFIG_X86_LOCAL_APIC 1164#ifdef CONFIG_X86_LOCAL_APIC
1162#ifndef CONFIG_X86_64
1163 .apic_write = xen_apic_write,
1164 .apic_write_atomic = xen_apic_write,
1165 .apic_read = xen_apic_read,
1166#endif
1167 .setup_boot_clock = paravirt_nop, 1165 .setup_boot_clock = paravirt_nop,
1168 .setup_secondary_clock = paravirt_nop, 1166 .setup_secondary_clock = paravirt_nop,
1169 .startup_ipi_hook = paravirt_nop, 1167 .startup_ipi_hook = paravirt_nop,
@@ -1322,9 +1320,10 @@ asmlinkage void __init xen_start_kernel(void)
1322 pv_irq_ops = xen_irq_ops; 1320 pv_irq_ops = xen_irq_ops;
1323 pv_apic_ops = xen_apic_ops; 1321 pv_apic_ops = xen_apic_ops;
1324 pv_mmu_ops = xen_mmu_ops; 1322 pv_mmu_ops = xen_mmu_ops;
1325#ifdef CONFIG_X86_64 1323
1324#ifdef CONFIG_X86_LOCAL_APIC
1326 /* 1325 /*
1327 * for 64bit, set up the basic apic ops aswell. 1326 * set up the basic apic ops.
1328 */ 1327 */
1329 apic_ops = &xen_basic_apic_ops; 1328 apic_ops = &xen_basic_apic_ops;
1330#endif 1329#endif