summaryrefslogtreecommitdiffstats
path: root/include/asm-x86/paravirt.h
diff options
context:
space:
mode:
authorSuresh Siddha2008-07-11 22:11:56 +0200
committerIngo Molnar2008-07-12 08:45:10 +0200
commitad66dd340f561bdde2285992314d9e4fd9b6191e (patch)
treea5335c6762964731603f49ea59b53fffdb2b0325 /include/asm-x86/paravirt.h
parentx2apic: uninline uv_init_apic_ldr() (diff)
downloadkernel-qcow2-linux-ad66dd340f561bdde2285992314d9e4fd9b6191e.tar.gz
kernel-qcow2-linux-ad66dd340f561bdde2285992314d9e4fd9b6191e.tar.xz
kernel-qcow2-linux-ad66dd340f561bdde2285992314d9e4fd9b6191e.zip
x2apic: xen64 paravirt basic apic ops
Define the Xen specific basic apic ops, in additon to paravirt apic ops, with some misc warning fixes. Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com> Cc: Jeremy Fitzhardinge <jeremy@goop.org> Cc: akpm@linux-foundation.org Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/asm-x86/paravirt.h')
-rw-r--r--include/asm-x86/paravirt.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/include/asm-x86/paravirt.h b/include/asm-x86/paravirt.h
index 10adac02e6db..5e34d26aa3b5 100644
--- a/include/asm-x86/paravirt.h
+++ b/include/asm-x86/paravirt.h
@@ -200,13 +200,15 @@ struct pv_irq_ops {
struct pv_apic_ops {
#ifdef CONFIG_X86_LOCAL_APIC
+#ifndef CONFIG_X86_64
/*
* Direct APIC operations, principally for VMI. Ideally
* these shouldn't be in this interface.
*/
- void (*apic_write)(unsigned long reg, u32 v);
- void (*apic_write_atomic)(unsigned long reg, u32 v);
- u32 (*apic_read)(unsigned long reg);
+ void (*apic_write)(u32 reg, u32 v);
+ void (*apic_write_atomic)(u32 reg, u32 v);
+ u32 (*apic_read)(u32 reg);
+#endif
void (*setup_boot_clock)(void);
void (*setup_secondary_clock)(void);
@@ -892,17 +894,17 @@ static inline void slow_down_io(void)
* Basic functions accessing APICs.
*/
#ifndef CONFIG_X86_64
-static inline void apic_write(unsigned long reg, u32 v)
+static inline void apic_write(u32 reg, u32 v)
{
PVOP_VCALL2(pv_apic_ops.apic_write, reg, v);
}
-static inline void apic_write_atomic(unsigned long reg, u32 v)
+static inline void apic_write_atomic(u32 reg, u32 v)
{
PVOP_VCALL2(pv_apic_ops.apic_write_atomic, reg, v);
}
-static inline u32 apic_read(unsigned long reg)
+static inline u32 apic_read(u32 reg)
{
return PVOP_CALL1(unsigned long, pv_apic_ops.apic_read, reg);
}