Signed-off-by: Paul Mundt <lethal@linux-sh.org>
 
 config CPU_SH5
        bool "SH-5"
+       select CPU_HAS_FPU
 
 endchoice
 
 
 obj-y := entry.o switchto.o
 
 obj-$(CONFIG_KALLSYMS)         += unwind.o
+obj-$(CONFIG_SH_FPU)           += fpu.o
 
        if (last_task_used_math == current)
                return;
 
-       grab_fpu();
+       enable_fpu();
        if (last_task_used_math != NULL) {
                /* Other processes fpu state, save away */
                fpsave(&last_task_used_math->thread.fpu.hard);
                fpload(&init_fpuregs.hard);
                 set_used_math();
         }
-       release_fpu();
+       disable_fpu();
 }
 
 
        fpvalid = !!tsk_used_math(tsk);
        if (fpvalid) {
                if (current == last_task_used_math) {
-                       grab_fpu();
+                       enable_fpu();
                        fpsave(&tsk->thread.fpu.hard);
-                       release_fpu();
+                       disable_fpu();
                        last_task_used_math = 0;
                        regs->sr |= SR_FD;
                }
 
 #ifdef CONFIG_SH_FPU
        if(last_task_used_math == current) {
-               grab_fpu();
+               enable_fpu();
                fpsave(¤t->thread.fpu.hard);
-               release_fpu();
+               disable_fpu();
                last_task_used_math = NULL;
                regs->sr |= SR_FD;
        }
 
                return err;
 
        if (current == last_task_used_math) {
-               grab_fpu();
+               enable_fpu();
                fpsave(¤t->thread.fpu.hard);
-               release_fpu();
+               disable_fpu();
                last_task_used_math = NULL;
                regs->sr |= SR_FD;
        }