diff options
author | Yinghai Lu <yhlu.kernel@gmail.com> | 2008-07-14 01:19:35 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-07-14 03:02:54 -0400 |
commit | 94a8c3c2437c8946f1b6c8e0b2c560a7db8ed3c6 (patch) | |
tree | 7bad615005b6047306336e8f688edcf1c6bb74dd /arch/x86/xen/enlighten.c | |
parent | f910a9dc7c865896815e2a95fe33363e9522f277 (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.c | 19 |
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 | ||
563 | static u64 xen_apic_icr_read(void) | 562 | static 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 | ||
578 | static u32 xen_safe_apic_wait_icr_idle(void) | ||
579 | { | ||
580 | return 0; | ||
581 | } | ||
582 | |||
579 | static struct apic_ops xen_basic_apic_ops = { | 583 | static 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 | ||
1160 | static const struct pv_apic_ops xen_apic_ops __initdata = { | 1163 | static 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 |