aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh/include/asm/atomic-irq.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2009-06-18 17:07:35 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2009-06-18 17:07:35 -0400
commit15fc204afc6feb915c400159546f646eca8ba1d9 (patch)
tree51bec0710be2a0cb0bedbccbea7813f17fbc61ea /arch/sh/include/asm/atomic-irq.h
parentd2aa4550379f92e929af7ed1dd4f55e6a1e331f8 (diff)
parent944557116908cbe835be41bfbd39d9706da9fd71 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (56 commits) sh: Fix declaration of __kernel_sigreturn and __kernel_rt_sigreturn sh: Enable soc-camera in ap325rxa/migor/se7724 defconfigs. sh: remove stray markers. sh: defconfig updates. sh: pci: Initial PCI-Express support for SH7786 Urquell board. sh: Generic HAVE_PERF_COUNTER support. SH: convert migor to soc-camera as platform-device SH: convert ap325rxa to soc-camera as platform-device soc-camera: unify i2c camera device platform data sh: add platform data for r8a66597-hcd in setup-sh7723 sh: add platform data for r8a66597-hcd in setup-sh7366 sh: x3proto: add platform data for r8a66597-hcd sh: highlander: add platform data for r8a66597-hcd sh: sh7785lcr: add platform data for r8a66597-hcd sh: turn off irqs when disabling CMT/TMU timers sh: use kzalloc() for cpg clocks sh: unbreak WARN_ON() sh: Use generic atomic64_t implementation. sh: Revised clock function in highlander sh: Update r7780mp defconfig ...
Diffstat (limited to 'arch/sh/include/asm/atomic-irq.h')
-rw-r--r--arch/sh/include/asm/atomic-irq.h24
1 files changed, 12 insertions, 12 deletions
diff --git a/arch/sh/include/asm/atomic-irq.h b/arch/sh/include/asm/atomic-irq.h
index a0b348068cae..467d9415a32e 100644
--- a/arch/sh/include/asm/atomic-irq.h
+++ b/arch/sh/include/asm/atomic-irq.h
@@ -10,29 +10,29 @@ static inline void atomic_add(int i, atomic_t *v)
10{ 10{
11 unsigned long flags; 11 unsigned long flags;
12 12
13 local_irq_save(flags); 13 raw_local_irq_save(flags);
14 v->counter += i; 14 v->counter += i;
15 local_irq_restore(flags); 15 raw_local_irq_restore(flags);
16} 16}
17 17
18static inline void atomic_sub(int i, atomic_t *v) 18static inline void atomic_sub(int i, atomic_t *v)
19{ 19{
20 unsigned long flags; 20 unsigned long flags;
21 21
22 local_irq_save(flags); 22 raw_local_irq_save(flags);
23 v->counter -= i; 23 v->counter -= i;
24 local_irq_restore(flags); 24 raw_local_irq_restore(flags);
25} 25}
26 26
27static inline int atomic_add_return(int i, atomic_t *v) 27static inline int atomic_add_return(int i, atomic_t *v)
28{ 28{
29 unsigned long temp, flags; 29 unsigned long temp, flags;
30 30
31 local_irq_save(flags); 31 raw_local_irq_save(flags);
32 temp = v->counter; 32 temp = v->counter;
33 temp += i; 33 temp += i;
34 v->counter = temp; 34 v->counter = temp;
35 local_irq_restore(flags); 35 raw_local_irq_restore(flags);
36 36
37 return temp; 37 return temp;
38} 38}
@@ -41,11 +41,11 @@ static inline int atomic_sub_return(int i, atomic_t *v)
41{ 41{
42 unsigned long temp, flags; 42 unsigned long temp, flags;
43 43
44 local_irq_save(flags); 44 raw_local_irq_save(flags);
45 temp = v->counter; 45 temp = v->counter;
46 temp -= i; 46 temp -= i;
47 v->counter = temp; 47 v->counter = temp;
48 local_irq_restore(flags); 48 raw_local_irq_restore(flags);
49 49
50 return temp; 50 return temp;
51} 51}
@@ -54,18 +54,18 @@ static inline void atomic_clear_mask(unsigned int mask, atomic_t *v)
54{ 54{
55 unsigned long flags; 55 unsigned long flags;
56 56
57 local_irq_save(flags); 57 raw_local_irq_save(flags);
58 v->counter &= ~mask; 58 v->counter &= ~mask;
59 local_irq_restore(flags); 59 raw_local_irq_restore(flags);
60} 60}
61 61
62static inline void atomic_set_mask(unsigned int mask, atomic_t *v) 62static inline void atomic_set_mask(unsigned int mask, atomic_t *v)
63{ 63{
64 unsigned long flags; 64 unsigned long flags;
65 65
66 local_irq_save(flags); 66 raw_local_irq_save(flags);
67 v->counter |= mask; 67 v->counter |= mask;
68 local_irq_restore(flags); 68 raw_local_irq_restore(flags);
69} 69}
70 70
71#endif /* __ASM_SH_ATOMIC_IRQ_H */ 71#endif /* __ASM_SH_ATOMIC_IRQ_H */