MIPS: Warn if vector register partitioning is implemented
authorPaul Burton <paul.burton@imgtec.com>
Tue, 28 Jan 2014 14:28:43 +0000 (14:28 +0000)
committerRalf Baechle <ralf@linux-mips.org>
Wed, 26 Mar 2014 22:09:11 +0000 (23:09 +0100)
No current systems implementing MSA include support for vector register
partitioning which makes it somewhat difficult to implement support for
it in the kernel. Thus for the moment the kernel includes no such
support. However if the kernel were to be run on a system which
implemented register partitioning then it would not function correctly,
mishandling MSA disabled exceptions. Print a warning if run on a system
with vector register partitioning implemented to indicate this problem
should it occur.

Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/6494/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/cpu-probe.c

index 420d2fc595d028563c27f93143b1f1fac300f700..dec20f580ceae1dc47404614b9afafe94b59c657 100644 (file)
@@ -1195,8 +1195,11 @@ void cpu_probe(void)
        else
                c->srsets = 1;
 
-       if (cpu_has_msa)
+       if (cpu_has_msa) {
                c->msa_id = cpu_get_msa_id();
+               WARN(c->msa_id & MSA_IR_WRPF,
+                    "Vector register partitioning unimplemented!");
+       }
 
        cpu_probe_vmbits(c);