patch-2.3.10 linux/arch/i386/boot/setup.S
Next file: linux/arch/i386/config.in
Previous file: linux/arch/arm/nwfpe/fpmodule.c
Back to the patch index
Back to the overall index
- Lines: 34
- Date:
Mon Jul 5 20:04:47 1999
- Orig file:
v2.3.9/linux/arch/i386/boot/setup.S
- Orig date:
Sat Nov 28 17:18:54 1998
diff -u --recursive --new-file v2.3.9/linux/arch/i386/boot/setup.S linux/arch/i386/boot/setup.S
@@ -753,19 +753,29 @@
! This routine checks that the keyboard command queue is empty
! (after emptying the output buffers)
!
-! No timeout is used - if this hangs there is something wrong with
-! the machine, and we probably couldn't proceed anyway.
+! Some machines have delusions that the keyboard buffer is always full
+! with no keyboard attached...
+
empty_8042:
+ push ecx
+ mov ecx,#0xFFFFFF
+
+empty_8042_loop:
+ dec ecx
+ jz empty_8042_end_loop
+
call delay
in al,#0x64 ! 8042 status port
test al,#1 ! output buffer?
jz no_output
call delay
in al,#0x60 ! read it
- jmp empty_8042
+ jmp empty_8042_loop
no_output:
test al,#2 ! is input buffer full?
- jnz empty_8042 ! yes - loop
+ jnz empty_8042_loop ! yes - loop
+empty_8042_end_loop:
+ pop ecx
ret
!
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)