| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* | 
 | 2 |  * Header file for using the wbflush routine | 
 | 3 |  * | 
 | 4 |  * This file is subject to the terms and conditions of the GNU General Public | 
 | 5 |  * License.  See the file "COPYING" in the main directory of this archive | 
 | 6 |  * for more details. | 
 | 7 |  * | 
 | 8 |  * Copyright (c) 1998 Harald Koerfgen | 
 | 9 |  * Copyright (C) 2002 Maciej W. Rozycki | 
 | 10 |  */ | 
 | 11 | #ifndef _ASM_WBFLUSH_H | 
 | 12 | #define _ASM_WBFLUSH_H | 
 | 13 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 14 |  | 
 | 15 | #ifdef CONFIG_CPU_HAS_WB | 
 | 16 |  | 
 | 17 | extern void (*__wbflush)(void); | 
 | 18 | extern void wbflush_setup(void); | 
 | 19 |  | 
 | 20 | #define wbflush()			\ | 
 | 21 | 	do {				\ | 
 | 22 | 		__sync();		\ | 
 | 23 | 		__wbflush();		\ | 
 | 24 | 	} while (0) | 
 | 25 |  | 
 | 26 | #else /* !CONFIG_CPU_HAS_WB */ | 
 | 27 |  | 
 | 28 | #define wbflush_setup() do { } while (0) | 
 | 29 |  | 
 | 30 | #define wbflush() fast_iob() | 
 | 31 |  | 
 | 32 | #endif /* !CONFIG_CPU_HAS_WB */ | 
 | 33 |  | 
 | 34 | #endif /* _ASM_WBFLUSH_H */ |