aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin/include/asm/system.h
diff options
context:
space:
mode:
authorGraf Yang <graf.yang@analog.com>2009-01-07 10:14:39 -0500
committerBryan Wu <cooloney@kernel.org>2009-01-07 10:14:39 -0500
commitdbc895f95500a73ebf1ff12fe85f2e2b3790f52f (patch)
tree8b60024a7725c559767295b2b3ef143a39111f8b /arch/blackfin/include/asm/system.h
parentf994607a2e118aedf1116a58ecd16126dbb83d28 (diff)
Blackfin arch: smp patch cleanup from LKML review
1. Use inline get_l1_... functions instead of macro 2. Fix compile issue about smp barrier functions Signed-off-by: Graf Yang <graf.yang@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org>
Diffstat (limited to 'arch/blackfin/include/asm/system.h')
-rw-r--r--arch/blackfin/include/asm/system.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/blackfin/include/asm/system.h b/arch/blackfin/include/asm/system.h
index e8bcfa4ee5c0..dea92037dff5 100644
--- a/arch/blackfin/include/asm/system.h
+++ b/arch/blackfin/include/asm/system.h
@@ -66,10 +66,13 @@ asmlinkage unsigned long __raw_cmpxchg_4_asm(volatile void *ptr,
66# define smp_mb() do { barrier(); smp_check_barrier(); smp_mark_barrier(); } while (0) 66# define smp_mb() do { barrier(); smp_check_barrier(); smp_mark_barrier(); } while (0)
67# define smp_rmb() do { barrier(); smp_check_barrier(); } while (0) 67# define smp_rmb() do { barrier(); smp_check_barrier(); } while (0)
68# define smp_wmb() do { barrier(); smp_mark_barrier(); } while (0) 68# define smp_wmb() do { barrier(); smp_mark_barrier(); } while (0)
69#define smp_read_barrier_depends() do { barrier(); smp_check_barrier(); } while (0)
70
69#else 71#else
70# define smp_mb() barrier() 72# define smp_mb() barrier()
71# define smp_rmb() barrier() 73# define smp_rmb() barrier()
72# define smp_wmb() barrier() 74# define smp_wmb() barrier()
75#define smp_read_barrier_depends() barrier()
73#endif 76#endif
74 77
75static inline unsigned long __xchg(unsigned long x, volatile void *ptr, 78static inline unsigned long __xchg(unsigned long x, volatile void *ptr,
@@ -120,8 +123,6 @@ static inline unsigned long __cmpxchg(volatile void *ptr, unsigned long old,
120 ((__typeof__(*(ptr)))__cmpxchg((ptr), (unsigned long)(o), \ 123 ((__typeof__(*(ptr)))__cmpxchg((ptr), (unsigned long)(o), \
121 (unsigned long)(n), sizeof(*(ptr)))) 124 (unsigned long)(n), sizeof(*(ptr))))
122 125
123#define smp_read_barrier_depends() smp_check_barrier()
124
125#else /* !CONFIG_SMP */ 126#else /* !CONFIG_SMP */
126 127
127#define smp_mb() barrier() 128#define smp_mb() barrier()
@@ -192,6 +193,7 @@ static inline unsigned long __xchg(unsigned long x, volatile void *ptr,
192 */ 193 */
193 194
194#include <asm/l1layout.h> 195#include <asm/l1layout.h>
196#include <asm/mem_map.h>
195 197
196asmlinkage struct task_struct *resume(struct task_struct *prev, struct task_struct *next); 198asmlinkage struct task_struct *resume(struct task_struct *prev, struct task_struct *next);
197 199