Merge branch '4.1-fp' into mips-for-linux-next
[linux-drm-fsl-dcu.git] / arch / mips / kernel / genex.S
index 2ebaabe3af1513269e100d8bcffa9e8e9cb1f2c8..50e9db6f6cba1bd09cfd0ed73dd3a1da00db2225 100644 (file)
@@ -360,7 +360,7 @@ NESTED(nmi_handler, PT_SIZE, sp)
        .set    mips1
        SET_HARDFLOAT
        cfc1    a1, fcr31
-       li      a2, ~(0x3f << 12)
+       li      a2, ~FPU_CSR_ALL_X
        and     a2, a1
        ctc1    a2, fcr31
        .set    pop
@@ -368,6 +368,15 @@ NESTED(nmi_handler, PT_SIZE, sp)
        STI
        .endm
 
+       .macro  __build_clear_msa_fpe
+       _cfcmsa a1, MSA_CSR
+       li      a2, ~(0x3f << 12)
+       and     a1, a1, a2
+       _ctcmsa MSA_CSR, a1
+       TRACE_IRQS_ON
+       STI
+       .endm
+
        .macro  __build_clear_ade
        MFC0    t0, CP0_BADVADDR
        PTR_S   t0, PT_BVADDR(sp)
@@ -426,7 +435,7 @@ NESTED(nmi_handler, PT_SIZE, sp)
        BUILD_HANDLER cpu cpu sti silent                /* #11 */
        BUILD_HANDLER ov ov sti silent                  /* #12 */
        BUILD_HANDLER tr tr sti silent                  /* #13 */
-       BUILD_HANDLER msa_fpe msa_fpe sti silent        /* #14 */
+       BUILD_HANDLER msa_fpe msa_fpe msa_fpe silent    /* #14 */
        BUILD_HANDLER fpe fpe fpe silent                /* #15 */
        BUILD_HANDLER ftlb ftlb none silent             /* #16 */
        BUILD_HANDLER msa msa sti silent                /* #21 */