No keyboard in sysinstall in 6.0-BETA2

Maksim Yevmenkin maksim.yevmenkin at
Sun Aug 7 20:58:35 GMT 2005

Joe Marcus Clarke wrote:
> On Sun, 2005-08-07 at 09:36 -0700, Maksim Yevmenkin wrote:
>>>Joe Marcus Clarke wrote:
>>>>On Sat, 2005-08-06 at 19:08 -0400, Joe Marcus Clarke wrote:
>>>>>I'm trying to install FreeBSD 6.0-BETA2 from CD on Dell Precision 380.
>>>>>The machine has a PS/2 keyboard on it.  The keyboard works fine in the
>>>>>BIOS, and at the Booting... prompt.  However, once sysinstall comes up,
>>>>>the keyboard is dead.  Nothing I type will be accepted.  The machine
>>>>>does not appear to be panicked or hung.
>>>>>I switched from vidconsole to comconsole, and sysinstall works, so
>>>>>perhaps this has something to do with the new keyboard mux?
>>>>>Dmesg is at
>>>>More news on this.  After getting 6.0-BETA2 installed from the serial
>>>>console, I found that _any_ input on the PS/2 port causes the machine to
>>>>lock up hard.  I can break into the debugger, but as soon as I hit any
>>>>key on the PS/2 keyboard, the machine locks up. I can't type anything
>>>>(even from the serial console).  The only way out is to do a hard reset.
>>>>I've tried building a custom kernel and disabling apic and acpi.
>>>>Nothing will get 6.0 to work with any locally attached keyboard.
>>>>I also found a CD of 5.4-RC3, which boots perfectly on this machine with
>>>>working PS/2 and USB keyboards.  So, I thought maybe the kbdmux was the
>>>>problem.  I reverted the kbd code to original RELENG_6 version (kbd.c
>>>>rev. 1.43 and kbdreg.h rev. 1.17), and the keyboard works once again.
>>>>Anything else I can try to debug this problem with kbdmux further?
>>>i doubt kbdmux(4) is your problem. according to the dmesg you have 
>>>posted you dont seem to use/load kbdmux(4) driver. it is highly unlikely 
>>>that my changes in /sys/dev/kbd/ cause this. kbdmux(4) is not default 
>>>keyboard and, at this point, one must configure/load it by hand. my 
>>>guess would be that you, perhaps, have some sort of interrupt routing 
>>>problem or something like it.
>>actually, now i'm confused. as you stated you have reverted 
>>/sys/dev/kbd/kbd.c and /sys/dev/kbd/kbdreg.h. are these only files you 
>>have reverted?
> Yes, the only two.  The rest of sys is 6.0-BETA2.  I never tried loading
> the kbdmux module, and test the keyboard.  I have a 6.0 laptop, and I've
> never had problems with kbd, and I've never had to load the mux there.

hmmm... very strange. i still do not understand how these changes can 
break anything. i will install 6.0-beta2 tomorrow on spare machine and 
will try to reproduce the problem. i've been running with these changes 
for a while now and did not have any problems. also (as far as i know) 
nobody else reported similar problem so far. btw, i have dell laptop 
that runs just fine.

>>i think, i can rule out /sys/dev/kbd/kbdreg.h - this just add a 
>>prototype for kbd_find_keyboard2().
>>so this leaves only /sys/dev/kbd/kbd.c. the only change here was new 
>>kbd_find_keyboard2() function and change to the original 
>>kbd_find_keyboard() function. kbd_find_keyboard2() function is almost 
>>the same as the original kbd_find_keyboard() function. the only 
>>difference is that kbd_find_keyboard2() accepts one extra parameter that 
>>specifies starting index for search. it also checks the index to make 
>>sure it is within valid bounds. naturally, kbd_find_keyboard() can just 
>>call kbd_find_keyboard2() with starting index of 0 to emulate old 
>>behavior. unless i screwed up here, i do not see how this would break 
>>also, one thing i noticed in your dmesg output
>>atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
>>atkbd0: <AT Keyboard> flags 0x3 irq 1 on atkbdc0
>>atkbd: the current kbd controller command byte 0065
>>atkbd: keyboard ID 0xffffffff (1)
>>kbd0 at atkbd0
>>kbd0: atkbd0, AT 84 (1), config:0x3, flags:0x3d0000
>>atkbd0: [GIANT-LOCKED]
> This output is after reverting to pre-kbdmux code.  My keyboard is an
> IBM 105-key QWERTY keyboard (model KB-9910).

could you please post dmesg output *with* /sys/dev/kbd/kbd* changes?


More information about the freebsd-current mailing list