I have an interesting problem with the pcchips m787cl+ motherboard: it won't do a reboot. If you use the three finger salute or issue an init 6, it hangs at the "Restarting system" message at the bottom of the shutdown cycle.
I traced the code to the machine_restart sub in arch/i386/kernel/process.c. It seems that linux tries to reset using a keyboard command (out 0xfe,0x64) and if that fails it forces a triple fault. Neither seem to work. I tried setting b0 of reg 0x46 in the ISA bridge (-d 1039:8), on the sis630e, which is labeled "Enable Keyboard Hardware Reset", but it didn't work. So I put in a patch to process.c that sets b6,7 of reg 0x46 of the ISA bridge, and this works, it causes a reset (per the data sheet). But of course that is a kernel patch and I would like to avoid that.
Anyone run into this issue before, or know if I should blame the sis630 or the via C3? Seems like a poor design if you can't reboot without a kernel patch, although it is a simple one. Hanging on a reboot is a problem for my embedded system, not sure about large clusters but it seems like that would be a problem. For my project, I can live with the patch, but would like to find a more robust solution for the linuxbios project.
The three finger salute does work with the orig BIOS and DOS, but I suspect that is because DOS makes a BIOS call that sets the correct bits in the ISA bridge. Linux with the orig BIOS hangs at the same place, though.
-Steve