 6aa3524c18
			
		
	
	
	6aa3524c18
	
	
	
		
			
			This is the main support code for the patch. Here we just add the code, the following patches hook it up. Signed-off-by: David Daney <ddaney@avtrex.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org> create mode 100644 arch/mips/include/asm/watch.h create mode 100644 arch/mips/kernel/watch.c
		
			
				
	
	
		
			32 lines
		
	
	
	
		
			799 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
	
		
			799 B
			
		
	
	
	
		
			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) 2008 David Daney
 | |
|  */
 | |
| #ifndef _ASM_WATCH_H
 | |
| #define _ASM_WATCH_H
 | |
| 
 | |
| #include <linux/bitops.h>
 | |
| 
 | |
| #include <asm/mipsregs.h>
 | |
| 
 | |
| void mips_install_watch_registers(void);
 | |
| void mips_read_watch_registers(void);
 | |
| void mips_clear_watch_registers(void);
 | |
| void mips_probe_watch_registers(struct cpuinfo_mips *c);
 | |
| 
 | |
| #ifdef CONFIG_HARDWARE_WATCHPOINTS
 | |
| #define __restore_watch() do {						\
 | |
| 	if (unlikely(test_bit(TIF_LOAD_WATCH,				\
 | |
| 			      ¤t_thread_info()->flags))) {	\
 | |
| 		mips_install_watch_registers();				\
 | |
| 	}								\
 | |
| } while (0)
 | |
| 
 | |
| #else
 | |
| #define __restore_watch() do {} while (0)
 | |
| #endif
 | |
| 
 | |
| #endif /* _ASM_WATCH_H */
 |