1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-18 10:35:55 +00:00

Sync with sys/i386/isa/npx.c revision 1.60.

This commit is contained in:
KATO Takenori 1998-04-20 13:50:21 +00:00
parent 6738ac4ff3
commit 1a373dbe8a
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=35335

View File

@ -32,7 +32,7 @@
* SUCH DAMAGE.
*
* from: @(#)npx.c 7.2 (Berkeley) 5/12/91
* $Id: npx.c,v 1.34 1998/04/07 09:09:41 kato Exp $
* $Id: npx.c,v 1.35 1998/04/16 16:34:46 kato Exp $
*/
#include "npx.h"
@ -168,43 +168,40 @@ static volatile u_int npx_traps_while_probing;
* latch stuff in probeintr() can be moved to npxprobe().
*/
inthand_t probeintr;
__asm
("
.text
.p2align 2,0x90
" __XSTRING(CNAME(probeintr)) ":
ss
incl " __XSTRING(CNAME(npx_intrs_while_probing)) "
pushl %eax
movb $0x20,%al # EOI (asm in strings loses cpp features)
__asm(" \n\
.text \n\
.p2align 2,0x90 \n\
" __XSTRING(CNAME(probeintr)) ": \n\
ss \n\
incl " __XSTRING(CNAME(npx_intrs_while_probing)) " \n\
pushl %eax \n\
movb $0x20,%al # EOI (asm in strings loses cpp features) \n\
#ifdef PC98
outb %al,$0x08 # IO_ICU2
outb %al,$0x0 # IO_ICU1
outb %al,$0x08 # IO_ICU2 \n\
outb %al,$0x00 # IO_ICU1 \n\
#else
outb %al,$0xa0 # IO_ICU2
outb %al,$0x20 # IO_ICU1
outb %al,$0xa0 # IO_ICU2 \n\
outb %al,$0x20 # IO_ICU1 \n\
#endif
movb $0,%al
movb $0,%al \n\
#ifdef PC98
outb %al,$0xf8 # clear BUSY# latch
outb %al,$0xf8 # clear BUSY# latch \n\
#else
outb %al,$0xf0 # clear BUSY# latch
outb %al,$0xf0 # clear BUSY# latch \n\
#endif
popl %eax
iret
popl %eax \n\
iret \n\
");
inthand_t probetrap;
__asm
("
.text
.p2align 2,0x90
" __XSTRING(CNAME(probetrap)) ":
ss
incl " __XSTRING(CNAME(npx_traps_while_probing)) "
fnclex
iret
__asm(" \n\
.text \n\
.p2align 2,0x90 \n\
" __XSTRING(CNAME(probetrap)) ": \n\
ss \n\
incl " __XSTRING(CNAME(npx_traps_while_probing)) " \n\
fnclex \n\
iret \n\
");
#endif /* SMP */
@ -753,7 +750,7 @@ timezero(funcname, func)
usec = 1;
if (bootverbose)
printf("%s bandwidth = %ld bytes/sec\n",
funcname, (long)(BUFSIZE * 1000000ll / usec));
funcname, (long)(BUFSIZE * (int64_t)1000000 / usec));
free(buf, M_TEMP);
return (usec);
}