xref: /freebsd/share/man/man4/man4.i386/npx.4 (revision a64729f5077d77e13b9497cb33ecb3c82e606ee8)
1.\"
2.\" Copyright (c) 1993 Christopher G. Demetriou
3.\" All rights reserved.
4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\"    notice, this list of conditions and the following disclaimer.
10.\" 2. Redistributions in binary form must reproduce the above copyright
11.\"    notice, this list of conditions and the following disclaimer in the
12.\"    documentation and/or other materials provided with the distribution.
13.\" 3. All advertising materials mentioning features or use of this software
14.\"    must display the following acknowledgement:
15.\"      This product includes software developed by Christopher G. Demetriou.
16.\" 3. The name of the author may not be used to endorse or promote products
17.\"    derived from this software without specific prior written permission
18.\"
19.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
20.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
21.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
22.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
23.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
24.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
28.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29.\"
30.\"	$Id: npx.4,v 1.1 1993/08/06 10:58:03 cgd Exp $
31.\"
32.Dd August 28, 1993
33.Dt NPX 4 i386
34.Os
35.Sh NAME
36.Nm npx
37.Nd Numeric Processing Extension coprocessor
38.Sh SYNOPSIS
39.Cd "device npx"
40.Cd hint.npx.0.at="nexus"
41.Cd hint.npx.0.port="0x0F0"
42.Cd hint.npx.0.flags="0x0"
43.Cd hint.npx.0.irq="13"
44.Sh DESCRIPTION
45The
46.Nm
47driver enables the use of the system's Numeric Processing Extension
48coprocessor.
49Numeric processing extensions are present in
50systems with
51.Tn 486DX
52CPUs and in systems with
53.Tn 387
54or
55.Tn 487SX
56coprocessors.
57The
58.Nm
59driver is required for proper system functioning.
60If there is no NPX in the system, the system will not boot.
61.Pp
62The flags for
63.Pa npx0
64are:
65.Pp
66.Bl -tag -width indent -compact
67.It 0x01
68do not use the NPX registers to optimize bcopy.
69.It 0x02
70do not use the NPX registers to optimize bzero.
71.It 0x04
72do not use the NPX registers to optimize copyin or copyout.
73.El
74.Pp
75The NPX registers are normally used
76to optimize copying and zeroing
77when all of the following conditions are satisfied:
78.Pp
79.Bl -enum -compact
80.It
81.Cd "cpu I586_CPU"
82is an option
83.It
84the CPU is an i586 (perhaps not a Pentium)
85.It
86the probe for
87.Pa npx0
88succeeds
89.It
90INT 16 exception handling works.
91.El
92.Pp
93Then copying and zeroing
94using the NPX registers
95is normally 30-100% faster.
96.Pp
97The flags can be used
98to control cases
99where it does not work or is slower.
100Setting them at boot time
101using hints works correctly
102(the optimizations are not used
103until later in the bootstrap
104when
105.Pa npx0
106is attached).
107.Sh BUGS
108There are lots of them, especially on old cheap motherboards.
109In particular, some motherboards do not have the interrupt lines from
110the NPX to the CPU wired properly.
111