summaryrefslogtreecommitdiffstats
path: root/arch/m68k/boot
diff options
context:
space:
mode:
Diffstat (limited to 'arch/m68k/boot')
-rw-r--r--arch/m68k/boot/amiga/linuxboot.c17
-rw-r--r--arch/m68k/boot/amiga/linuxboot.h2
2 files changed, 11 insertions, 8 deletions
diff --git a/arch/m68k/boot/amiga/linuxboot.c b/arch/m68k/boot/amiga/linuxboot.c
index d35966686..23b7fa9d0 100644
--- a/arch/m68k/boot/amiga/linuxboot.c
+++ b/arch/m68k/boot/amiga/linuxboot.c
@@ -22,6 +22,8 @@
* for more details.
*
* History:
+ * 27 Mar 1997 FPU-less machines couldn't boot kernels that use bootinfo
+ * interface version 1.0 (Geert)
* 03 Feb 1997 Implemented kernel decompression (Geert, based on Roman's
* code for ataboot)
* 30 Dec 1996 Reverted the CPU detection to the old scheme
@@ -791,6 +793,7 @@ static u_long get_chipset(void)
static void get_processor(u_long *cpu, u_long *fpu, u_long *mmu)
{
*cpu = *fpu = 0;
+
if (SysBase->AttnFlags & AFF_68060)
*cpu = CPU_68060;
else if (SysBase->AttnFlags & AFF_68040)
@@ -799,15 +802,15 @@ static void get_processor(u_long *cpu, u_long *fpu, u_long *mmu)
*cpu = CPU_68030;
else if (SysBase->AttnFlags & AFF_68020)
*cpu = CPU_68020;
+
if (*cpu == CPU_68040 || *cpu == CPU_68060) {
if (SysBase->AttnFlags & AFF_FPU40)
*fpu = *cpu;
- } else {
- if (SysBase->AttnFlags & AFF_68882)
- *fpu = FPU_68882;
- else if (SysBase->AttnFlags & AFF_68881)
- *fpu = FPU_68881;
- }
+ } else if (SysBase->AttnFlags & AFF_68882)
+ *fpu = FPU_68882;
+ else if (SysBase->AttnFlags & AFF_68881)
+ *fpu = FPU_68881;
+
*mmu = *cpu;
}
@@ -1047,7 +1050,7 @@ static int create_compat_bootinfo(void)
compat_bootinfo.cputype |= COMPAT_FPU_68040;
else if (bi.fputype & FPU_68060)
compat_bootinfo.cputype |= COMPAT_FPU_68060;
- else {
+ else if (bi.fputype) {
Printf("FPU type 0x%08lx not supported by kernel\n", bi.fputype);
return(0);
}
diff --git a/arch/m68k/boot/amiga/linuxboot.h b/arch/m68k/boot/amiga/linuxboot.h
index 8ebfe63b4..e04425a3a 100644
--- a/arch/m68k/boot/amiga/linuxboot.h
+++ b/arch/m68k/boot/amiga/linuxboot.h
@@ -31,7 +31,7 @@
* Amiboot Version
*/
-#define AMIBOOT_VERSION "5.4"
+#define AMIBOOT_VERSION "5.5"
/*