Merge branch '3.16-fixes' into mips-for-linux-next
[cascardo/linux.git] / arch / mips / kernel / r4k_switch.S
index 81ca3f7..4c4ec18 100644 (file)
        /* Check whether we're saving scalar or vector context. */
        bgtz    a3, 1f
 
-       /* Save 128b MSA vector context. */
+       /* Save 128b MSA vector context + scalar FP control & status. */
+       cfc1    t1, fcr31
        msa_save_all    a0
+       sw      t1, THREAD_FCR31(a0)
        b       2f
 
 1:     /* Save 32b/64b scalar FP context. */
@@ -142,6 +144,11 @@ LEAF(_restore_msa)
        jr      ra
        END(_restore_msa)
 
+LEAF(_init_msa_upper)
+       msa_init_all_upper
+       jr      ra
+       END(_init_msa_upper)
+
 #endif
 
 /*