1b9a1ef14SRodney W. Grimes.\" 2b9a1ef14SRodney W. Grimes.\" Copyright (c) 1993 Christopher G. Demetriou 3b9a1ef14SRodney W. Grimes.\" All rights reserved. 4b9a1ef14SRodney W. Grimes.\" 5b9a1ef14SRodney W. Grimes.\" Redistribution and use in source and binary forms, with or without 6b9a1ef14SRodney W. Grimes.\" modification, are permitted provided that the following conditions 7b9a1ef14SRodney W. Grimes.\" are met: 8b9a1ef14SRodney W. Grimes.\" 1. Redistributions of source code must retain the above copyright 9b9a1ef14SRodney W. Grimes.\" notice, this list of conditions and the following disclaimer. 10b9a1ef14SRodney W. Grimes.\" 2. Redistributions in binary form must reproduce the above copyright 11b9a1ef14SRodney W. Grimes.\" notice, this list of conditions and the following disclaimer in the 12b9a1ef14SRodney W. Grimes.\" documentation and/or other materials provided with the distribution. 13b9a1ef14SRodney W. Grimes.\" 3. All advertising materials mentioning features or use of this software 14b9a1ef14SRodney W. Grimes.\" must display the following acknowledgement: 15b9a1ef14SRodney W. Grimes.\" This product includes software developed by Christopher G. Demetriou. 16b9a1ef14SRodney W. Grimes.\" 3. The name of the author may not be used to endorse or promote products 175ecd6127SMike Pritchard.\" derived from this software without specific prior written permission 18b9a1ef14SRodney W. Grimes.\" 19b9a1ef14SRodney W. Grimes.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 20b9a1ef14SRodney W. Grimes.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 21b9a1ef14SRodney W. Grimes.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 22b9a1ef14SRodney W. Grimes.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 23b9a1ef14SRodney W. Grimes.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 24b9a1ef14SRodney W. Grimes.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25b9a1ef14SRodney W. Grimes.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26b9a1ef14SRodney W. Grimes.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27b9a1ef14SRodney W. Grimes.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 28b9a1ef14SRodney W. Grimes.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29b9a1ef14SRodney W. Grimes.\" 30708d714eSRuslan Ermilov.\" $Id: npx.4,v 1.1 1993/08/06 10:58:03 cgd Exp $ 31b9a1ef14SRodney W. Grimes.\" 32b9a1ef14SRodney W. Grimes.Dd August 28, 1993 33b9a1ef14SRodney W. Grimes.Dt NPX 4 i386 343d45e180SRuslan Ermilov.Os 35b9a1ef14SRodney W. Grimes.Sh NAME 36b9a1ef14SRodney W. Grimes.Nm npx 3722907f2dSPeter Wemm.Nd Numeric Processing Extension coprocessor 38b9a1ef14SRodney W. Grimes.Sh SYNOPSIS 3904e38906SMark Murray.Cd "device npx" 4004e38906SMark Murray.Cd hint.npx.0.at="nexus" 4104e38906SMark Murray.Cd hint.npx.0.port="0x0F0" 4204e38906SMark Murray.Cd hint.npx.0.flags="0x0" 4304e38906SMark Murray.Cd hint.npx.0.irq="13" 44b9a1ef14SRodney W. Grimes.Sh DESCRIPTION 45b9a1ef14SRodney W. GrimesThe 464b66483fSRuslan Ermilov.Nm 47b9a1ef14SRodney W. Grimesdriver enables the use of the system's Numeric Processing Extension 4822907f2dSPeter Wemmcoprocessor. 49708d714eSRuslan ErmilovNumeric processing extensions are present in 50b9a1ef14SRodney W. Grimessystems with 51708d714eSRuslan Ermilov.Tn 486DX 52b9a1ef14SRodney W. GrimesCPUs and in systems with 53708d714eSRuslan Ermilov.Tn 387 54b9a1ef14SRodney W. Grimesor 55708d714eSRuslan Ermilov.Tn 487SX 56708d714eSRuslan Ermilovcoprocessors. 57708d714eSRuslan ErmilovThe 584b66483fSRuslan Ermilov.Nm 5922907f2dSPeter Wemmdriver is required for proper system functioning. 6022907f2dSPeter WemmIf there is no NPX in the system, the system will not boot. 616d8fbb6cSJeroen Ruigrok van der Werven.Pp 62708d714eSRuslan ErmilovThe flags for 63708d714eSRuslan Ermilov.Pa npx0 64708d714eSRuslan Ermilovare: 65708d714eSRuslan Ermilov.Pp 66708d714eSRuslan Ermilov.Bl -tag -width indent -compact 6704e38906SMark Murray.It 0x01 68708d714eSRuslan Ermilovdo not use the NPX registers to optimize bcopy. 6904e38906SMark Murray.It 0x02 70708d714eSRuslan Ermilovdo not use the NPX registers to optimize bzero. 7104e38906SMark Murray.It 0x04 72708d714eSRuslan Ermilovdo not use the NPX registers to optimize copyin or copyout. 7304e38906SMark Murray.El 7404e38906SMark Murray.Pp 75708d714eSRuslan ErmilovThe NPX registers are normally used 7604e38906SMark Murrayto optimize copying and zeroing 7704e38906SMark Murraywhen all of the following conditions are satisfied: 78708d714eSRuslan Ermilov.Pp 7904e38906SMark Murray.Bl -enum -compact 8004e38906SMark Murray.It 81708d714eSRuslan Ermilov.Cd "cpu I586_CPU" 82708d714eSRuslan Ermilovis an option 8304e38906SMark Murray.It 84708d714eSRuslan Ermilovthe CPU is an i586 (perhaps not a Pentium) 8504e38906SMark Murray.It 86708d714eSRuslan Ermilovthe probe for 87708d714eSRuslan Ermilov.Pa npx0 88708d714eSRuslan Ermilovsucceeds 8904e38906SMark Murray.It 9004e38906SMark MurrayINT 16 exception handling works. 9104e38906SMark Murray.El 92708d714eSRuslan Ermilov.Pp 9304e38906SMark MurrayThen copying and zeroing 94708d714eSRuslan Ermilovusing the NPX registers 9504e38906SMark Murrayis normally 30-100% faster. 9604e38906SMark Murray.Pp 9704e38906SMark MurrayThe flags can be used 9804e38906SMark Murrayto control cases 99708d714eSRuslan Ermilovwhere it does not work or is slower. 10004e38906SMark MurraySetting them at boot time 101*51790eb8SGavin Atkinsonusing hints works correctly 10204e38906SMark Murray(the optimizations are not used 10304e38906SMark Murrayuntil later in the bootstrap 104708d714eSRuslan Ermilovwhen 105708d714eSRuslan Ermilov.Pa npx0 106708d714eSRuslan Ermilovis attached). 10725aa5b84SMartin Cracauer.Sh BUGS 10825aa5b84SMartin CracauerThere are lots of them, especially on old cheap motherboards. 10925aa5b84SMartin CracauerIn particular, some motherboards do not have the interrupt lines from 11025aa5b84SMartin Cracauerthe NPX to the CPU wired properly. 111