Date: Tue, 12 May 1998 18:34:26 -0400 From: John Woodruff <jjw@us.net> To: "Dag-Erling Coidan Smørgrav" <dag-erli@ifi.uio.no> Cc: Andrew Short <Ashort@concentric.net>, stable@FreeBSD.ORG Subject: PC Keyboard Ctrlr Chip (was: PPP hard lock in 2.2.6) Message-ID: <3558CE72.2300BB70@us.net> References: <Pine.SUN.3.96.980512135132.23087D-100000@galileo.cris.com> <xzplns76zlv.fsf@hrotti.ifi.uio.no>
next in thread | previous in thread | raw e-mail | index | archive | help
Andrew Short <Ashort@concentric.net> 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3558CE72.2300BB70>