* [PATCH 158] M68k 68060 errata I14
@ 2004-07-21 15:36 Geert Uytterhoeven
0 siblings, 0 replies; only message in thread
From: Geert Uytterhoeven @ 2004-07-21 15:36 UTC (permalink / raw)
To: Marcelo Tosatti; +Cc: Linux Kernel Development, Geert Uytterhoeven
M68k: gcc lately manages to generate the code sequence described in the 060
errata I14, so use the described workaround (from Roman Zippel)
Signed-off-by: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
--- linux-2.4.27-rc3/arch/m68k/kernel/setup.c 2004-04-30 16:35:25.000000000 +0200
+++ linux-m68k-2.4.27-rc3/arch/m68k/kernel/setup.c 2004-07-04 21:55:44.000000000 +0200
@@ -249,6 +249,18 @@
else if (CPU_IS_060)
m68k_is040or060 = 6;
+ if (CPU_IS_060) {
+ u32 pcr;
+
+ asm (".chip 68060; movec %%pcr,%0; .chip 68k"
+ : "=d" (pcr));
+ if (((pcr >> 8) & 0xff) <= 5) {
+ printk("Enabling workaround for errata I14\n");
+ asm (".chip 68060; movec %0,%%pcr; .chip 68k"
+ : : "d" (pcr | 0x20));
+ }
+ }
+
/* FIXME: m68k_fputype is passed in by Penguin booter, which can
* be confused by software FPU emulation. BEWARE.
* We should really do our own FPU check at startup.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2004-07-21 15:36 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-07-21 15:36 [PATCH 158] M68k 68060 errata I14 Geert Uytterhoeven
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®