From owner-freebsd-stable Tue May 12 15:40:08 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id PAA13442 for freebsd-stable-outgoing; Tue, 12 May 1998 15:40:08 -0700 (PDT) (envelope-from owner-freebsd-stable@FreeBSD.ORG) Received: from www.us.net (www.us.net [198.240.72.2]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id PAA13210 for ; Tue, 12 May 1998 15:39:28 -0700 (PDT) (envelope-from jjw@us.net) Received: from us.net (home.us.net [198.240.72.28]) by www.us.net (8.8.8/8.8.6) with ESMTP id SAA26415; Tue, 12 May 1998 18:39:16 -0400 (EDT) X-Provider: US Net - Advanced Internet Services - 301-361-USNET - info@us.net Where Business Connects! (tm) -- http://www.us.net/ Message-ID: <3558CE72.2300BB70@us.net> Date: Tue, 12 May 1998 18:34:26 -0400 From: John Woodruff Reply-To: jjw@us.net X-Mailer: Mozilla 4.04 [en] (Win95; I) MIME-Version: 1.0 To: "Dag-Erling Coidan Smørgrav" CC: Andrew Short , stable@FreeBSD.ORG Subject: PC Keyboard Ctrlr Chip (was: PPP hard lock in 2.2.6) References: Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk Andrew Short writes: > My (I use it at work, I am not lucky enough to OWN one!) > Sun UltraSparc has a feature that will arrest control from the > OS by doing a Stop-A on the keyboard. Dag-Erling Coidan Smørgrav wrote: > [...] There is no way to do this on a PC, unless some bright > motherboard vendor somes up with the idea of producing a motherboard > that e.g. drops to a BIOS prompt when the keyboard controller (i8042) > asserts the reset pin [...] > > I tried to find information about the 8042 on Intel's web site, but > there doesn't seem to be any (except for references to it in chipset > or motherboard datasheets). The 8042 is a general-purpose single-chip computer/controller; which has been used since the dawn of time (or at least of the IBM PC/AT) to interface between a PC keyboard and the rest of the motherboard. PC's have a hard-ROM program in it that moves data from the kbd to the I/O ports, etc. This chip also controls the real CPU "reset" pin - but only on command from the CPU itself. It's programming is not technically part of the BIOS, but the two are so close, they're often thought of together. Of course, on many modern chipsets the 8042 has been absorbed into a larger chip; but think of it the old way for a momment. Seems odd, but AFAIK the standard program has no way of triggering the CPU reset on command from the keyboard - the main CPU has to *ask* to be reset, which is why Ctrl-Alt-Del does nothing to a hard-locked (or -looping) CPU. I often wished that the 8042 program would take the Ctrl-Alt-Del combination as an explicit CPU RESET command, iff if it also had *not* been polled by the CPU in the past few seconds. This would be OS-independent, and won't break properly working real OS's 'cause if they're working they'll respond to the kbd interrupts. This would have completely eliminated the add-on reset buttons that used to be sold for boxes that didn't have'em. OK, enterprising BIOS/chipset mfrs: let's have a variant of the 8042 program that *does* yank RESET when asked under this case. I'll bet some MB's run the 8042 program out of flash ROM space; if so, all we need is a flash ROM update. -- John Woodruff, Sr. Network Engineer, US Net To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message