[PATCH 00/13] MSA fixes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux