Linux 3.6-rc7
[linux-3.10.git] / arch / c6x / include / asm / barrier.h
1 /*
2  *  Port on Texas Instruments TMS320C6x architecture
3  *
4  *  Copyright (C) 2004, 2009, 2010, 2011 Texas Instruments Incorporated
5  *  Author: Aurelien Jacquiot (aurelien.jacquiot@jaluna.com)
6  *
7  *  This program is free software; you can redistribute it and/or modify
8  *  it under the terms of the GNU General Public License version 2 as
9  *  published by the Free Software Foundation.
10  */
11 #ifndef _ASM_C6X_BARRIER_H
12 #define _ASM_C6X_BARRIER_H
13
14 #define nop()                    asm("NOP\n");
15
16 #define mb()                     barrier()
17 #define rmb()                    barrier()
18 #define wmb()                    barrier()
19 #define set_mb(var, value)       do { var = value;  mb(); } while (0)
20 #define set_wmb(var, value)      do { var = value; wmb(); } while (0)
21
22 #define smp_mb()                 barrier()
23 #define smp_rmb()                barrier()
24 #define smp_wmb()                barrier()
25 #define smp_read_barrier_depends()      do { } while (0)
26
27 #endif /* _ASM_C6X_BARRIER_H */