Browse Source

arm64: Define cmpxchg64 and cmpxchg64_local for outside use

Drivers use cmpxchg64, cmpxchg64_local to perform 64-bit operation, so
they can cross 32-bit and 64-bit platforms (it is a standard way).

Signed-off-by: Chen Gang <gang.chen@asianux.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Chen Gang 12 years ago
parent
commit
a84b086b87
1 changed files with 3 additions and 0 deletions
  1. 3 0
      arch/arm64/include/asm/cmpxchg.h

+ 3 - 0
arch/arm64/include/asm/cmpxchg.h

@@ -170,4 +170,7 @@ static inline unsigned long __cmpxchg_mb(volatile void *ptr, unsigned long old,
 				       (unsigned long)(n),		\
 				       sizeof(*(ptr))))
 
+#define cmpxchg64(ptr,o,n)		cmpxchg((ptr),(o),(n))
+#define cmpxchg64_local(ptr,o,n)	cmpxchg_local((ptr),(o),(n))
+
 #endif	/* __ASM_CMPXCHG_H */