Re: rebooting

Jared Roberts (Jared@isysg.com)
Sat, 28 Sep 1996 20:10:45 -0700


Martin Mares wrote:
>
> Hi,
>
> > I've seen this problem before.. what I think is wrong with your computer
> > is your keyboard. Don't laugh, from what I've heard Linux does the reboot
> > stuff by praying to the keyboard controller to issue an interrupt(or
> > something like that) - some keyboards just won't do it. Try with another one.
>
> AFAIK the keyboard controller in question is _not_ the chip in the keyboard,
> but another one on the motherboard which communicates with the keyboard
> (usually an 8042 microcontroller).
>
> Martin

This same problem showed up on my friend's computer. We fixed it by
changing the reboot code (I believe it's hard_reset_now(); )to:

xor %esp,%esp
inc %esp
push %esp

That works on every x86 machine we've tested it on, including his with
the wacko keyboard controller, it's about as non-portable as it gets
though, so I doubt its suitable for the actual kernel, you should try it
in your machine, tho.

-- 
+-------------+----------------------+
| | | ||  ||| |Email: Jared@isysg.com|
| |||||||=| | |    "Orion" at IRC    |
|Jared Roberts|     Redmond,  WA     |
+-------------+----------------------+