diff options
author | bde <bde@FreeBSD.org> | 2001-10-21 05:18:30 +0000 |
---|---|---|
committer | bde <bde@FreeBSD.org> | 2001-10-21 05:18:30 +0000 |
commit | 529d5f38582025336f818a7aa014c33c46b929d3 (patch) | |
tree | 5259abeeefa5c8fbef7ab758a990bd66fa8597cf /sys/i386/isa/npx.c | |
parent | 056df3921e6a81ac17c0abdb9a0a5cc2199c9044 (diff) | |
download | FreeBSD-src-529d5f38582025336f818a7aa014c33c46b929d3.zip FreeBSD-src-529d5f38582025336f818a7aa014c33c46b929d3.tar.gz |
MFpc98: all changes in sys/pc98/pc98/npx.c related to FPU_ERROR_BROKEN.
- 1.58 (2000/09/01; author: kato)
Fixed FPU_ERROR_BROKEN code. It had old-isa code.
- 1.33 (1998/03/09; author: kato)
Make FPU_ERROR_BROKEN a new-style option.
- 1.7 (1996/10/09; author: asami)
Make sure FPU is recognized for non-Intel CPUs.
The log for rev.1.7 should have said something like:
Added FPU_ERROR_BROKEN option. This forces a successful probe for
exception 16, so that hardware with a broken FPU error signal can sort
of work.
Diffstat (limited to 'sys/i386/isa/npx.c')
-rw-r--r-- | sys/i386/isa/npx.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/i386/isa/npx.c b/sys/i386/isa/npx.c index b742f50..620356d 100644 --- a/sys/i386/isa/npx.c +++ b/sys/i386/isa/npx.c @@ -38,6 +38,7 @@ #include "opt_cpu.h" #include "opt_debug_npx.h" #include "opt_math_emulate.h" +#include "opt_npx.h" #include <sys/param.h> #include <sys/systm.h> @@ -363,6 +364,14 @@ npx_probe(dev) */ control &= ~(1 << 2); /* enable divide by 0 trap */ fldcw(&control); +#ifdef FPU_ERROR_BROKEN + /* + * FPU error signal doesn't work on some CPU + * accelerator board. + */ + npx_ex16 = 1; + return (0); +#endif npx_traps_while_probing = npx_intrs_while_probing = 0; fp_divide_by_0(); if (npx_traps_while_probing != 0) { |