diff options
author | Mikael Starvik <mikael.starvik@axis.com> | 2005-07-27 11:44:44 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-27 16:26:01 -0700 |
commit | 51533b615e605d86154ec1b4e585c8ca1b0b15b7 (patch) | |
tree | 4a6d7d8494d2017632d83624fb71b36031e0e7e5 /arch/cris/arch-v32/lib/spinlock.S | |
parent | 5d01e6ce785884a5db5792cd2e5bb36fa82fe23c (diff) | |
download | linux-51533b615e605d86154ec1b4e585c8ca1b0b15b7.tar.gz linux-51533b615e605d86154ec1b4e585c8ca1b0b15b7.tar.bz2 linux-51533b615e605d86154ec1b4e585c8ca1b0b15b7.zip |
[PATCH] CRIS update: new subarchitecture v32
New CRIS sub architecture named v32.
From: Dave Jones <davej@redhat.com>
Fix swapped kmalloc args
Signed-off-by: Mikael Starvik <starvik@axis.com>
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/cris/arch-v32/lib/spinlock.S')
-rw-r--r-- | arch/cris/arch-v32/lib/spinlock.S | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/arch/cris/arch-v32/lib/spinlock.S b/arch/cris/arch-v32/lib/spinlock.S new file mode 100644 index 000000000000..2437ae7f6ed2 --- /dev/null +++ b/arch/cris/arch-v32/lib/spinlock.S @@ -0,0 +1,33 @@ +;; Core of the spinlock implementation +;; +;; Copyright (C) 2004 Axis Communications AB. +;; +;; Author: Mikael Starvik + + + .global cris_spin_lock + .global cris_spin_trylock + + .text + +cris_spin_lock: + clearf p +1: test.d [$r10] + beq 1b + clearf p + ax + clear.d [$r10] + bcs 1b + clearf p + ret + nop + +cris_spin_trylock: + clearf p +1: move.d [$r10], $r11 + ax + clear.d [$r10] + bcs 1b + clearf p + ret + move.d $r11,$r10 |