[OpenBIOS] Current States of LinuxBios on SiS 630
Ronald G Minnich
rminnich at lanl.gov
Wed May 31 13:31:46 CEST 2000
keyboard issues: the following code hangs right now:
void
pc_keyboard_reset()
{
volatile unsigned char regval;
/* reset any keyboard interrupts ... */
(void) inb(0x60);
/* test loop ... delete this when things seem to work ... */
regval = inb(0x64);
display("regval from kb is "); printint(regval); display("\n");
regval &= 4;
outb(0xaa, 0x64);
while ((inb(0x64) & 1) == 0)
;
display("0x60 has "); printint(inb(0x60)); display("\n");
outb(0x60, 0x64);
/* this test was 2, but it never worked, try 1 */
while((inb(0x64) & 1) == 0)
;
outb(0x61 | regval, 0x60);
/* this test was 2, but it never worked, try 1 */
while((inb(0x64) & 1) == 0)
;
}
#ifdef SIS630_KEYBOARD
void
intel_keyboard_on()
{
unsigned char regval;
regval = intel_conf_readb(0x80000847);
regval |= 8;
intel_conf_writeb(0x80000847, regval);
pc_keyboard_reset();
}
#endif
The intel_keyboard_on seems to go ok, but the keyboard reset loops hang on
testing the low-order bit. Any ideas here would sure help.
ron
-
To unsubscribe: send mail to majordomo at freiburg.linux.de
with 'unsubscribe openbios' in the body of the message
More information about the openbios
mailing list