sparc32/leon: FPU-FSR only available when FPU present
authorDaniel Hellstrom <daniel@gaisler.com>
Wed, 26 Jan 2011 06:37:05 +0000 (06:37 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 17 Mar 2011 01:19:05 +0000 (18:19 -0700)
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc/kernel/cpu.c

index 0dc714f..7925c54 100644 (file)
@@ -324,7 +324,7 @@ void __cpuinit cpu_probe(void)
        psr = get_psr();
        put_psr(psr | PSR_EF);
 #ifdef CONFIG_SPARC_LEON
-       fpu_vers = 7;
+       fpu_vers = get_psr() & PSR_EF ? ((get_fsr() >> 17) & 0x7) : 7;
 #else
        fpu_vers = ((get_fsr() >> 17) & 0x7);
 #endif