Add cmpxchg_local to avr32
commit5e86c11d3eb4662000f3ced7344352b2ca319d03
authorMathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Thu, 7 Feb 2008 08:16:12 +0000 (7 00:16 -0800)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Thu, 7 Feb 2008 16:42:31 +0000 (7 08:42 -0800)
tree30332e5df3105622e2b5443aa346c739a89f37f6
parent176393d4232a89aaf8745b0726f4d212a20103f1
Add cmpxchg_local to avr32

Use the new generic cmpxchg_local (disables interrupt) for 8, 16 and 64 bits
cmpxchg_local. Use the __cmpxchg_u32 primitive for 32 bits cmpxchg_local.

Note that cmpxchg only uses the __cmpxchg_u32 or __cmpxchg_u64 and will cause
a linker error if called with 8 or 16 bits argument.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Acked-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Cc: Haavard Skinnemoen <hskinnemoen@atmel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/asm-avr32/system.h