diff options
-rw-r--r-- | arch/mips/Makefile | 2 | ||||
-rw-r--r-- | arch/mips/kernel/proc.c | 1 | ||||
-rw-r--r-- | arch/mips/kernel/traps.c | 1 | ||||
-rw-r--r-- | arch/mips/lib-32/Makefile | 5 | ||||
-rw-r--r-- | arch/mips/lib-32/watch.S | 60 | ||||
-rw-r--r-- | arch/mips/lib-64/Makefile | 5 | ||||
-rw-r--r-- | arch/mips/lib-64/watch.S | 57 | ||||
-rw-r--r-- | include/asm-mips/watch.h | 35 |
8 files changed, 0 insertions, 166 deletions
diff --git a/arch/mips/Makefile b/arch/mips/Makefile index 077eb0bd1c78..12e24146a06c 100644 --- a/arch/mips/Makefile +++ b/arch/mips/Makefile | |||
@@ -633,8 +633,6 @@ CPPFLAGS_vmlinux.lds := \ | |||
633 | head-y := arch/mips/kernel/head.o arch/mips/kernel/init_task.o | 633 | head-y := arch/mips/kernel/head.o arch/mips/kernel/init_task.o |
634 | 634 | ||
635 | libs-y += arch/mips/lib/ | 635 | libs-y += arch/mips/lib/ |
636 | libs-$(CONFIG_32BIT) += arch/mips/lib-32/ | ||
637 | libs-$(CONFIG_64BIT) += arch/mips/lib-64/ | ||
638 | 636 | ||
639 | core-y += arch/mips/kernel/ arch/mips/mm/ arch/mips/math-emu/ | 637 | core-y += arch/mips/kernel/ arch/mips/mm/ arch/mips/math-emu/ |
640 | 638 | ||
diff --git a/arch/mips/kernel/proc.c b/arch/mips/kernel/proc.c index 5ddc2e9deecf..eb7730d67934 100644 --- a/arch/mips/kernel/proc.c +++ b/arch/mips/kernel/proc.c | |||
@@ -14,7 +14,6 @@ | |||
14 | #include <asm/cpu-features.h> | 14 | #include <asm/cpu-features.h> |
15 | #include <asm/mipsregs.h> | 15 | #include <asm/mipsregs.h> |
16 | #include <asm/processor.h> | 16 | #include <asm/processor.h> |
17 | #include <asm/watch.h> | ||
18 | 17 | ||
19 | unsigned int vced_count, vcei_count; | 18 | unsigned int vced_count, vcei_count; |
20 | 19 | ||
diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c index 20bdbe48839b..7e9cb5b1b4a7 100644 --- a/arch/mips/kernel/traps.c +++ b/arch/mips/kernel/traps.c | |||
@@ -39,7 +39,6 @@ | |||
39 | #include <asm/traps.h> | 39 | #include <asm/traps.h> |
40 | #include <asm/uaccess.h> | 40 | #include <asm/uaccess.h> |
41 | #include <asm/mmu_context.h> | 41 | #include <asm/mmu_context.h> |
42 | #include <asm/watch.h> | ||
43 | #include <asm/types.h> | 42 | #include <asm/types.h> |
44 | #include <asm/stacktrace.h> | 43 | #include <asm/stacktrace.h> |
45 | 44 | ||
diff --git a/arch/mips/lib-32/Makefile b/arch/mips/lib-32/Makefile deleted file mode 100644 index 7bae849e544a..000000000000 --- a/arch/mips/lib-32/Makefile +++ /dev/null | |||
@@ -1,5 +0,0 @@ | |||
1 | # | ||
2 | # Makefile for MIPS-specific library files.. | ||
3 | # | ||
4 | |||
5 | lib-y += watch.o | ||
diff --git a/arch/mips/lib-32/watch.S b/arch/mips/lib-32/watch.S deleted file mode 100644 index 808b3af1a605..000000000000 --- a/arch/mips/lib-32/watch.S +++ /dev/null | |||
@@ -1,60 +0,0 @@ | |||
1 | /* | ||
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Kernel debug stuff to use the Watch registers. | ||
7 | * Useful to find stack overflows, dangling pointers etc. | ||
8 | * | ||
9 | * Copyright (C) 1995, 1996, 1999 by Ralf Baechle | ||
10 | */ | ||
11 | #include <asm/asm.h> | ||
12 | #include <asm/mipsregs.h> | ||
13 | #include <asm/regdef.h> | ||
14 | |||
15 | .set noreorder | ||
16 | /* | ||
17 | * Parameter: a0 - logic address to watch | ||
18 | * Currently only KSEG0 addresses are allowed! | ||
19 | * a1 - set bit #1 to trap on load references | ||
20 | * bit #0 to trap on store references | ||
21 | * Results : none | ||
22 | */ | ||
23 | LEAF(__watch_set) | ||
24 | li t0, 0x80000000 | ||
25 | subu a0, t0 | ||
26 | ori a0, 7 | ||
27 | xori a0, 7 | ||
28 | or a0, a1 | ||
29 | mtc0 a0, CP0_WATCHLO | ||
30 | sw a0, watch_savelo | ||
31 | |||
32 | jr ra | ||
33 | mtc0 zero, CP0_WATCHHI | ||
34 | END(__watch_set) | ||
35 | |||
36 | /* | ||
37 | * Parameter: none | ||
38 | * Results : none | ||
39 | */ | ||
40 | LEAF(__watch_clear) | ||
41 | jr ra | ||
42 | mtc0 zero, CP0_WATCHLO | ||
43 | END(__watch_clear) | ||
44 | |||
45 | /* | ||
46 | * Parameter: none | ||
47 | * Results : none | ||
48 | */ | ||
49 | LEAF(__watch_reenable) | ||
50 | lw t0, watch_savelo | ||
51 | jr ra | ||
52 | mtc0 t0, CP0_WATCHLO | ||
53 | END(__watch_reenable) | ||
54 | |||
55 | /* | ||
56 | * Saved value of the c0_watchlo register for watch_reenable() | ||
57 | */ | ||
58 | .data | ||
59 | watch_savelo: .word 0 | ||
60 | .text | ||
diff --git a/arch/mips/lib-64/Makefile b/arch/mips/lib-64/Makefile deleted file mode 100644 index 7bae849e544a..000000000000 --- a/arch/mips/lib-64/Makefile +++ /dev/null | |||
@@ -1,5 +0,0 @@ | |||
1 | # | ||
2 | # Makefile for MIPS-specific library files.. | ||
3 | # | ||
4 | |||
5 | lib-y += watch.o | ||
diff --git a/arch/mips/lib-64/watch.S b/arch/mips/lib-64/watch.S deleted file mode 100644 index f91434013695..000000000000 --- a/arch/mips/lib-64/watch.S +++ /dev/null | |||
@@ -1,57 +0,0 @@ | |||
1 | /* | ||
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Kernel debug stuff to use the Watch registers. | ||
7 | * Useful to find stack overflows, dangling pointers etc. | ||
8 | * | ||
9 | * Copyright (C) 1995, 1996, 1999, 2001 by Ralf Baechle | ||
10 | */ | ||
11 | #include <asm/asm.h> | ||
12 | #include <asm/mipsregs.h> | ||
13 | #include <asm/regdef.h> | ||
14 | |||
15 | .set noreorder | ||
16 | /* | ||
17 | * Parameter: a0 - physical address to watch | ||
18 | * a1 - set bit #1 to trap on load references | ||
19 | * bit #0 to trap on store references | ||
20 | * Results : none | ||
21 | */ | ||
22 | LEAF(__watch_set) | ||
23 | ori a0, 7 | ||
24 | xori a0, 7 | ||
25 | or a0, a1 | ||
26 | mtc0 a0, CP0_WATCHLO | ||
27 | sd a0, watch_savelo | ||
28 | dsrl32 a0, a0, 0 | ||
29 | |||
30 | jr ra | ||
31 | mtc0 zero, CP0_WATCHHI | ||
32 | END(__watch_set) | ||
33 | |||
34 | /* | ||
35 | * Parameter: none | ||
36 | * Results : none | ||
37 | */ | ||
38 | LEAF(__watch_clear) | ||
39 | jr ra | ||
40 | mtc0 zero, CP0_WATCHLO | ||
41 | END(__watch_clear) | ||
42 | |||
43 | /* | ||
44 | * Parameter: none | ||
45 | * Results : none | ||
46 | */ | ||
47 | LEAF(__watch_reenable) | ||
48 | ld t0, watch_savelo | ||
49 | jr ra | ||
50 | mtc0 t0, CP0_WATCHLO | ||
51 | END(__watch_reenable) | ||
52 | |||
53 | /* | ||
54 | * Saved value of the c0_watchlo register for watch_reenable() | ||
55 | */ | ||
56 | .local watch_savelo | ||
57 | .comm watch_savelo, 8, 8 | ||
diff --git a/include/asm-mips/watch.h b/include/asm-mips/watch.h deleted file mode 100644 index 6aa90cae1114..000000000000 --- a/include/asm-mips/watch.h +++ /dev/null | |||
@@ -1,35 +0,0 @@ | |||
1 | /* | ||
2 | * This file is subject to the terms and conditions of the GNU General Public | ||
3 | * License. See the file "COPYING" in the main directory of this archive | ||
4 | * for more details. | ||
5 | * | ||
6 | * Copyright (C) 1996, 1997, 1998, 2000, 2001 by Ralf Baechle | ||
7 | */ | ||
8 | #ifndef _ASM_WATCH_H | ||
9 | #define _ASM_WATCH_H | ||
10 | |||
11 | #include <linux/linkage.h> | ||
12 | |||
13 | /* | ||
14 | * Types of reference for watch_set() | ||
15 | */ | ||
16 | enum wref_type { | ||
17 | wr_save = 1, | ||
18 | wr_load = 2 | ||
19 | }; | ||
20 | |||
21 | extern asmlinkage void __watch_set(unsigned long addr, enum wref_type ref); | ||
22 | extern asmlinkage void __watch_clear(void); | ||
23 | extern asmlinkage void __watch_reenable(void); | ||
24 | |||
25 | #define watch_set(addr, ref) \ | ||
26 | if (cpu_has_watch) \ | ||
27 | __watch_set(addr, ref) | ||
28 | #define watch_clear() \ | ||
29 | if (cpu_has_watch) \ | ||
30 | __watch_clear() | ||
31 | #define watch_reenable() \ | ||
32 | if (cpu_has_watch) \ | ||
33 | __watch_reenable() | ||
34 | |||
35 | #endif /* _ASM_WATCH_H */ | ||