linux/drivers/staging/line6
Arnd Bergmann 9f61360148 staging: line6: avoid __sync_fetch_and_{and,or}
__sync_fetch_and_and and __sync_fetch_and_or are functions that are provided
by gcc and depending on the target architecture may be implemented in libgcc,
which is not always available in the kernel. This leads to a build failure
on ARMv5:

drivers/built-in.o: In function `line6_pcm_release':
:(.text+0x3bfe80): undefined reference to `__sync_fetch_and_and_4'
drivers/built-in.o: In function `line6_pcm_acquire':
:(.text+0x3bff30): undefined reference to `__sync_fetch_and_or_4'

To work around this, we can use the kernel-provided cmpxchg macro.

Build-tested only.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Markus Grabner <grabner@icg.tugraz.at>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-06-24 15:56:09 -07:00
..
Kconfig
Makefile
audio.c
audio.h
capture.c
capture.h
driver.c
driver.h
midi.c
midi.h
midibuf.c
midibuf.h
pcm.c
pcm.h
playback.c
playback.h
pod.c
pod.h
podhd.c
podhd.h
revision.h
toneport.c
toneport.h
usbdefs.h
variax.c
variax.h