Added "BROKEN_KEYBOARD_RESET" option to disable using the keyboard reset

in cpu_reset(). Some MBs don't deal with this properly.

Submitted by:	Rod Grimes
This commit is contained in:
dg 1995-05-18 09:17:07 +00:00
parent 80cbe837d7
commit e096e4002b
5 changed files with 23 additions and 5 deletions

View File

@ -38,7 +38,7 @@
*
* from: @(#)vm_machdep.c 7.3 (Berkeley) 5/13/91
* Utah $Hdr: vm_machdep.c 1.16.1.1 89/06/23$
* $Id: vm_machdep.c,v 1.36 1995/04/26 07:38:35 rgrimes Exp $
* $Id: vm_machdep.c,v 1.37 1995/05/01 23:32:30 dyson Exp $
*/
#include "npx.h"
@ -794,10 +794,13 @@ cpu_reset() {
* do not turn of the GateA20, as any machine that fails
* to do the reset here would then end up in no man's land.
*/
#ifndef BROKEN_KEYBOARD_RESET
outb(IO_KBD + 4, 0xFE);
DELAY(500000); /* wait 0.5 sec to see if that did it */
printf("Keyboard reset did not work, attempting CPU shutdown\n");
DELAY(1000000); /* wait 1 sec for printf to complete */
#endif
/* force a shutdown by unmapping entire address space ! */
bzero((caddr_t) PTD, NBPG);

View File

@ -2,7 +2,7 @@
# LINT -- config file for checking all the sources, tries to pull in
# as much of the source tree as it can.
#
# $Id: LINT,v 1.180 1995/05/12 15:17:55 ache Exp $
# $Id: LINT,v 1.181 1995/05/14 02:59:45 davidg Exp $
#
# NB: You probably don't want to try running a kernel built from this
# file. Instead, you should start from GENERIC, and add options from
@ -383,11 +383,15 @@ controller isa0
# TUNE_1542 enables the automatic ISA bus speed selection for the
# Adaptec 1542 boards. Does not work for all boards, use it with caution.
#
# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
# reset the CPU for reboot. This is needed on some systems with broken
# keyboard controllers.
options "AUTO_EOI_1"
#options "AUTO_EOI_2"
options BOUNCE_BUFFERS
#options DUMMY_NOPS
#options "TUNE_1542"
#options "BROKEN_KEYBOARD_RESET"
# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
#device vt0 at isa? port "IO_KBD" tty irq 1 vector pcrint

View File

@ -2,7 +2,7 @@
# LINT -- config file for checking all the sources, tries to pull in
# as much of the source tree as it can.
#
# $Id: LINT,v 1.180 1995/05/12 15:17:55 ache Exp $
# $Id: LINT,v 1.181 1995/05/14 02:59:45 davidg Exp $
#
# NB: You probably don't want to try running a kernel built from this
# file. Instead, you should start from GENERIC, and add options from
@ -383,11 +383,15 @@ controller isa0
# TUNE_1542 enables the automatic ISA bus speed selection for the
# Adaptec 1542 boards. Does not work for all boards, use it with caution.
#
# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
# reset the CPU for reboot. This is needed on some systems with broken
# keyboard controllers.
options "AUTO_EOI_1"
#options "AUTO_EOI_2"
options BOUNCE_BUFFERS
#options DUMMY_NOPS
#options "TUNE_1542"
#options "BROKEN_KEYBOARD_RESET"
# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
#device vt0 at isa? port "IO_KBD" tty irq 1 vector pcrint

View File

@ -2,7 +2,7 @@
# LINT -- config file for checking all the sources, tries to pull in
# as much of the source tree as it can.
#
# $Id: LINT,v 1.180 1995/05/12 15:17:55 ache Exp $
# $Id: LINT,v 1.181 1995/05/14 02:59:45 davidg Exp $
#
# NB: You probably don't want to try running a kernel built from this
# file. Instead, you should start from GENERIC, and add options from
@ -383,11 +383,15 @@ controller isa0
# TUNE_1542 enables the automatic ISA bus speed selection for the
# Adaptec 1542 boards. Does not work for all boards, use it with caution.
#
# BROKEN_KEYBOARD_RESET disables the use of the keyboard controller to
# reset the CPU for reboot. This is needed on some systems with broken
# keyboard controllers.
options "AUTO_EOI_1"
#options "AUTO_EOI_2"
options BOUNCE_BUFFERS
#options DUMMY_NOPS
#options "TUNE_1542"
#options "BROKEN_KEYBOARD_RESET"
# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
#device vt0 at isa? port "IO_KBD" tty irq 1 vector pcrint

View File

@ -38,7 +38,7 @@
*
* from: @(#)vm_machdep.c 7.3 (Berkeley) 5/13/91
* Utah $Hdr: vm_machdep.c 1.16.1.1 89/06/23$
* $Id: vm_machdep.c,v 1.36 1995/04/26 07:38:35 rgrimes Exp $
* $Id: vm_machdep.c,v 1.37 1995/05/01 23:32:30 dyson Exp $
*/
#include "npx.h"
@ -794,10 +794,13 @@ cpu_reset() {
* do not turn of the GateA20, as any machine that fails
* to do the reset here would then end up in no man's land.
*/
#ifndef BROKEN_KEYBOARD_RESET
outb(IO_KBD + 4, 0xFE);
DELAY(500000); /* wait 0.5 sec to see if that did it */
printf("Keyboard reset did not work, attempting CPU shutdown\n");
DELAY(1000000); /* wait 1 sec for printf to complete */
#endif
/* force a shutdown by unmapping entire address space ! */
bzero((caddr_t) PTD, NBPG);