diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2005-12-05 08:47:25 -0500 |
---|---|---|
committer | <ralf@denk.linux-mips.net> | 2006-01-10 08:39:04 -0500 |
commit | 6c35585273b26a580b2e2ad3d6a7db282308eec5 (patch) | |
tree | ae81213a06a1f2728050319b47f51308d9d197ca | |
parent | da2c9ed55b0c7e8107f23530bde293239a0b5091 (diff) |
MIPS: DSP: eleminate used_dsp.
used_dsp was meant to be used like used_math - but since the FPU context
is small and lazy context switching is a stupid idea on multiprocessors
this idea only got halfway implemented and those bits are were now
breaking ptrace.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r-- | arch/mips/kernel/ptrace.c | 8 | ||||
-rw-r--r-- | arch/mips/kernel/ptrace32.c | 8 | ||||
-rw-r--r-- | include/asm-mips/processor.h | 1 |
3 files changed, 4 insertions, 13 deletions
diff --git a/arch/mips/kernel/ptrace.c b/arch/mips/kernel/ptrace.c index 510da5fda567..8d2549335304 100644 --- a/arch/mips/kernel/ptrace.c +++ b/arch/mips/kernel/ptrace.c | |||
@@ -280,12 +280,8 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
280 | ret = -EIO; | 280 | ret = -EIO; |
281 | goto out; | 281 | goto out; |
282 | } | 282 | } |
283 | if (child->thread.dsp.used_dsp) { | 283 | dregs = __get_dsp_regs(child); |
284 | dregs = __get_dsp_regs(child); | 284 | tmp = (unsigned long) (dregs[addr - DSP_BASE]); |
285 | tmp = (unsigned long) (dregs[addr - DSP_BASE]); | ||
286 | } else { | ||
287 | tmp = -1; /* DSP registers yet used */ | ||
288 | } | ||
289 | break; | 285 | break; |
290 | } | 286 | } |
291 | case DSP_CONTROL: | 287 | case DSP_CONTROL: |
diff --git a/arch/mips/kernel/ptrace32.c b/arch/mips/kernel/ptrace32.c index 7e55457a491f..1f998bfde165 100644 --- a/arch/mips/kernel/ptrace32.c +++ b/arch/mips/kernel/ptrace32.c | |||
@@ -201,12 +201,8 @@ asmlinkage int sys32_ptrace(int request, int pid, int addr, int data) | |||
201 | ret = -EIO; | 201 | ret = -EIO; |
202 | goto out_tsk; | 202 | goto out_tsk; |
203 | } | 203 | } |
204 | if (child->thread.dsp.used_dsp) { | 204 | dspreg_t *dregs = __get_dsp_regs(child); |
205 | dspreg_t *dregs = __get_dsp_regs(child); | 205 | tmp = (unsigned long) (dregs[addr - DSP_BASE]); |
206 | tmp = (unsigned long) (dregs[addr - DSP_BASE]); | ||
207 | } else { | ||
208 | tmp = -1; /* DSP registers yet used */ | ||
209 | } | ||
210 | break; | 206 | break; |
211 | case DSP_CONTROL: | 207 | case DSP_CONTROL: |
212 | if (!cpu_has_dsp) { | 208 | if (!cpu_has_dsp) { |
diff --git a/include/asm-mips/processor.h b/include/asm-mips/processor.h index f1980c6c3bcc..de53055a62ae 100644 --- a/include/asm-mips/processor.h +++ b/include/asm-mips/processor.h | |||
@@ -103,7 +103,6 @@ typedef __u32 dspreg_t; | |||
103 | struct mips_dsp_state { | 103 | struct mips_dsp_state { |
104 | dspreg_t dspr[NUM_DSP_REGS]; | 104 | dspreg_t dspr[NUM_DSP_REGS]; |
105 | unsigned int dspcontrol; | 105 | unsigned int dspcontrol; |
106 | unsigned short used_dsp; | ||
107 | }; | 106 | }; |
108 | 107 | ||
109 | #define INIT_DSP {{0,},} | 108 | #define INIT_DSP {{0,},} |