diff options
author | Jeremy Fitzhardinge <jeremy@goop.org> | 2009-02-09 15:05:47 -0500 |
---|---|---|
committer | Jeremy Fitzhardinge <jeremy@goop.org> | 2009-02-09 17:04:14 -0500 |
commit | 3c552ac8a747d6c26d13302c54d71dae9f56f4ac (patch) | |
tree | 6c2f48e7712704890c16092439adc915bd6b29ec /arch/x86/include/asm/apic.h | |
parent | 90af9514ac99f51e81682c7bec8f9fb88a17a95c (diff) |
x86: make apic_* operations inline functions
Mainly to get proper type-checking and consistency.
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Diffstat (limited to 'arch/x86/include/asm/apic.h')
-rw-r--r-- | arch/x86/include/asm/apic.h | 35 |
1 files changed, 29 insertions, 6 deletions
diff --git a/arch/x86/include/asm/apic.h b/arch/x86/include/asm/apic.h index b03711d7990b..f4835a1be360 100644 --- a/arch/x86/include/asm/apic.h +++ b/arch/x86/include/asm/apic.h | |||
@@ -139,12 +139,35 @@ struct apic_ops { | |||
139 | 139 | ||
140 | extern struct apic_ops *apic_ops; | 140 | extern struct apic_ops *apic_ops; |
141 | 141 | ||
142 | #define apic_read (apic_ops->read) | 142 | static inline u32 apic_read(u32 reg) |
143 | #define apic_write (apic_ops->write) | 143 | { |
144 | #define apic_icr_read (apic_ops->icr_read) | 144 | return apic_ops->read(reg); |
145 | #define apic_icr_write (apic_ops->icr_write) | 145 | } |
146 | #define apic_wait_icr_idle (apic_ops->wait_icr_idle) | 146 | |
147 | #define safe_apic_wait_icr_idle (apic_ops->safe_wait_icr_idle) | 147 | static inline void apic_write(u32 reg, u32 val) |
148 | { | ||
149 | apic_ops->write(reg, val); | ||
150 | } | ||
151 | |||
152 | static inline u64 apic_icr_read(void) | ||
153 | { | ||
154 | return apic_ops->icr_read(); | ||
155 | } | ||
156 | |||
157 | static inline void apic_icr_write(u32 low, u32 high) | ||
158 | { | ||
159 | apic_ops->icr_write(low, high); | ||
160 | } | ||
161 | |||
162 | static inline void apic_wait_icr_idle(void) | ||
163 | { | ||
164 | apic_ops->wait_icr_idle(); | ||
165 | } | ||
166 | |||
167 | static inline u32 safe_apic_wait_icr_idle(void) | ||
168 | { | ||
169 | return apic_ops->safe_wait_icr_idle(); | ||
170 | } | ||
148 | 171 | ||
149 | extern int get_physical_broadcast(void); | 172 | extern int get_physical_broadcast(void); |
150 | 173 | ||