This series fixes a bunch of issues with MSA support the have been discovered as it has been tested against the P5600 implementation of MSA, and in light of the recent revert of saving MSA context around signals it marks the support as experimental. This is not really a change given that the only hardware implementation is the 32bit P5600 which requires the experimental CONFIG_MIPS_O32_FP64_SUPPORT Kconfig option be enabled before MSA can actually be used. A replacement for the signal handling has been written but needs further discussion, so will be submitted later. Paul Burton (13): MIPS: allow msa.h to be included in assembly files MIPS: save/restore MSACSR register on context switch MIPS: preserve scalar FP CSR when switching vector context MIPS: save/disable MSA in lose_fpu MIPS: clear upper 64b of vector registers when MSA is first used MIPS: fix MSA context for tasks which don't use FP first MIPS: fix read_msa_* & write_msa_* functions on non-MSA toolchains MIPS: ensure MSA gets disabled during boot MIPS: disable preemption whilst initialising MSA MIPS: 16 byte align MSA vector context MIPS: consistently clear MSA flags when starting & copying threads MIPS: don't build MSA support unless it can be used MIPS: mark MSA experimental arch/mips/Kconfig | 4 ++-- arch/mips/include/asm/asmmacro.h | 31 +++++++++++++++++++++++++++++++ arch/mips/include/asm/fpu.h | 19 ++++++++++++------- arch/mips/include/asm/msa.h | 31 ++++++++++++++++++------------- arch/mips/include/asm/processor.h | 10 ++++++++-- arch/mips/kernel/asm-offsets.c | 1 + arch/mips/kernel/cpu-probe.c | 5 ++--- arch/mips/kernel/process.c | 3 +++ arch/mips/kernel/r4k_switch.S | 9 ++++++++- arch/mips/kernel/traps.c | 29 +++++++++++++++++++++++------ 10 files changed, 108 insertions(+), 34 deletions(-) -- 2.0.1