 c9034c3a1d
			
		
	
	
	c9034c3a1d
	
	
	
		
			
			Disintegrate asm/system.h for M32R. Signed-off-by: David Howells <dhowells@redhat.com> cc: linux-m32r@ml.linux-m32r.org
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			1 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			1 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * This file is subject to the terms and conditions of the GNU General Public
 | |
|  * License.  See the file "COPYING" in the main directory of this archive
 | |
|  * for more details.
 | |
|  *
 | |
|  * Copyright (C) 2001  Hiroyuki Kondo, Hirokazu Takata, and Hitoshi Yamamoto
 | |
|  * Copyright (C) 2004, 2006  Hirokazu Takata <takata at linux-m32r.org>
 | |
|  */
 | |
| #ifndef _ASM_M32R_DCACHE_CLEAR_H
 | |
| #define _ASM_M32R_DCACHE_CLEAR_H
 | |
| 
 | |
| #ifdef CONFIG_CHIP_M32700_TS1
 | |
| #define DCACHE_CLEAR(reg0, reg1, addr)				\
 | |
| 	"seth	"reg1", #high(dcache_dummy);		\n\t"	\
 | |
| 	"or3	"reg1", "reg1", #low(dcache_dummy);	\n\t"	\
 | |
| 	"lock	"reg0", @"reg1";			\n\t"	\
 | |
| 	"add3	"reg0", "addr", #0x1000;		\n\t"	\
 | |
| 	"ld	"reg0", @"reg0";			\n\t"	\
 | |
| 	"add3	"reg0", "addr", #0x2000;		\n\t"	\
 | |
| 	"ld	"reg0", @"reg0";			\n\t"	\
 | |
| 	"unlock	"reg0", @"reg1";			\n\t"
 | |
| 	/* FIXME: This workaround code cannot handle kernel modules
 | |
| 	 * correctly under SMP environment.
 | |
| 	 */
 | |
| #else	/* CONFIG_CHIP_M32700_TS1 */
 | |
| #define DCACHE_CLEAR(reg0, reg1, addr)
 | |
| #endif	/* CONFIG_CHIP_M32700_TS1 */
 | |
| 
 | |
| #endif /* _ASM_M32R_DCACHE_CLEAR_H */
 |