diff options
| -rw-r--r-- | arch/x86/include/asm/uv/uv_hub.h | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/arch/x86/include/asm/uv/uv_hub.h b/arch/x86/include/asm/uv/uv_hub.h index 03a0cbdb3050..04eb6c958b9d 100644 --- a/arch/x86/include/asm/uv/uv_hub.h +++ b/arch/x86/include/asm/uv/uv_hub.h | |||
| @@ -15,6 +15,7 @@ | |||
| 15 | #include <linux/numa.h> | 15 | #include <linux/numa.h> |
| 16 | #include <linux/percpu.h> | 16 | #include <linux/percpu.h> |
| 17 | #include <linux/timer.h> | 17 | #include <linux/timer.h> |
| 18 | #include <linux/io.h> | ||
| 18 | #include <asm/types.h> | 19 | #include <asm/types.h> |
| 19 | #include <asm/percpu.h> | 20 | #include <asm/percpu.h> |
| 20 | #include <asm/uv/uv_mmrs.h> | 21 | #include <asm/uv/uv_mmrs.h> |
| @@ -258,13 +259,13 @@ static inline unsigned long *uv_global_mmr32_address(int pnode, | |||
| 258 | static inline void uv_write_global_mmr32(int pnode, unsigned long offset, | 259 | static inline void uv_write_global_mmr32(int pnode, unsigned long offset, |
| 259 | unsigned long val) | 260 | unsigned long val) |
| 260 | { | 261 | { |
| 261 | *uv_global_mmr32_address(pnode, offset) = val; | 262 | writeq(val, uv_global_mmr32_address(pnode, offset)); |
| 262 | } | 263 | } |
| 263 | 264 | ||
| 264 | static inline unsigned long uv_read_global_mmr32(int pnode, | 265 | static inline unsigned long uv_read_global_mmr32(int pnode, |
| 265 | unsigned long offset) | 266 | unsigned long offset) |
| 266 | { | 267 | { |
| 267 | return *uv_global_mmr32_address(pnode, offset); | 268 | return readq(uv_global_mmr32_address(pnode, offset)); |
| 268 | } | 269 | } |
| 269 | 270 | ||
| 270 | /* | 271 | /* |
| @@ -281,13 +282,13 @@ static inline unsigned long *uv_global_mmr64_address(int pnode, | |||
| 281 | static inline void uv_write_global_mmr64(int pnode, unsigned long offset, | 282 | static inline void uv_write_global_mmr64(int pnode, unsigned long offset, |
| 282 | unsigned long val) | 283 | unsigned long val) |
| 283 | { | 284 | { |
| 284 | *uv_global_mmr64_address(pnode, offset) = val; | 285 | writeq(val, uv_global_mmr64_address(pnode, offset)); |
| 285 | } | 286 | } |
| 286 | 287 | ||
| 287 | static inline unsigned long uv_read_global_mmr64(int pnode, | 288 | static inline unsigned long uv_read_global_mmr64(int pnode, |
| 288 | unsigned long offset) | 289 | unsigned long offset) |
| 289 | { | 290 | { |
| 290 | return *uv_global_mmr64_address(pnode, offset); | 291 | return readq(uv_global_mmr64_address(pnode, offset)); |
| 291 | } | 292 | } |
| 292 | 293 | ||
| 293 | /* | 294 | /* |
| @@ -301,22 +302,22 @@ static inline unsigned long *uv_local_mmr_address(unsigned long offset) | |||
| 301 | 302 | ||
| 302 | static inline unsigned long uv_read_local_mmr(unsigned long offset) | 303 | static inline unsigned long uv_read_local_mmr(unsigned long offset) |
| 303 | { | 304 | { |
| 304 | return *uv_local_mmr_address(offset); | 305 | return readq(uv_local_mmr_address(offset)); |
| 305 | } | 306 | } |
| 306 | 307 | ||
| 307 | static inline void uv_write_local_mmr(unsigned long offset, unsigned long val) | 308 | static inline void uv_write_local_mmr(unsigned long offset, unsigned long val) |
| 308 | { | 309 | { |
| 309 | *uv_local_mmr_address(offset) = val; | 310 | writeq(val, uv_local_mmr_address(offset)); |
| 310 | } | 311 | } |
| 311 | 312 | ||
| 312 | static inline unsigned char uv_read_local_mmr8(unsigned long offset) | 313 | static inline unsigned char uv_read_local_mmr8(unsigned long offset) |
| 313 | { | 314 | { |
| 314 | return *((unsigned char *)uv_local_mmr_address(offset)); | 315 | return readb(uv_local_mmr_address(offset)); |
| 315 | } | 316 | } |
| 316 | 317 | ||
| 317 | static inline void uv_write_local_mmr8(unsigned long offset, unsigned char val) | 318 | static inline void uv_write_local_mmr8(unsigned long offset, unsigned char val) |
| 318 | { | 319 | { |
| 319 | *((unsigned char *)uv_local_mmr_address(offset)) = val; | 320 | writeb(val, uv_local_mmr_address(offset)); |
| 320 | } | 321 | } |
| 321 | 322 | ||
| 322 | /* | 323 | /* |
