Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 20 Feb 2016 00:12:54 +0000
From:      "Luis P. Mendes" <luislupe@gmx.com>
To:        freebsd-hackers@freebsd.org
Subject:   kbdmux disabled - error -> keyboard is not useable
Message-ID:  <20160220001254.GD73442@hp.tbl>

next in thread | raw e-mail | index | archive | help
Hi,

--------------------------
My FreeBSD version is:
# uname -a
FreeBSD leao 10.3-BETA1 FreeBSD 10.3-BETA1 #0 r295321: Fri Feb  5
17:02:27 WET 2016 

I'm using stock kernel.
--------------------------


I'm setting up a multiseat workstation, where two users, with two
monitors, two keyboards, two mice and two X sessions can be
connected to the same computer at the same time.

For this to happen, one of the things that is necessary to do is to
disable kbdmux in order for the two keyboards to be considered
independent.

In the past, I've accomplished this with syscon, which had other
problems.  But now with vt, when I disable kbdmux either on
/boot/device.hints or in /boot/loader.conf with:
  hint.kbdmux.0.disabled="1"

No keys are recognized by the OS, although /var/log/messages seems to
know about the existence of the USB keyboard, although it shows an
error.


The steps I've taken:
1. Have an USB keyboard attached to the motherboard.
The keyboard is a Logitech K120 with no multimedia keys, just a 105
key with PT layout.  The keyboard works fine when kbdmux is not
disabled, and works fine in every other computer/OS.
No AT keyboard used.


2. In /boot/loader.conf, have these lines added:
    ukbd_load="YES"
    hint.kbdmux.0.disabled="1"
    hint.atkbd.0.disabled="1"
    hint.atkbdc.0.disabled="1"

    I tried it with both *atkbd* lines commented in and out and the
    result is the same.


3. In /etc/rc.conf
    kbdcontrol -k /dev/ukbd0 < /dev/console


4. After commenting the two atk lines in /boot/loader.conf, what I got
 from:
# ll /dev/*kbd*
crw-------  1 root  wheel  0x34 18 Fev 14:34 /dev/atkbd0
lrwxr-xr-x  1 root  wheel     6 18 Fev 14:34 /dev/kbd0@ -> atkbd0
lrwxr-xr-x  1 root  wheel     5 18 Fev 14:34 /dev/kbd1@ -> ukbd0
crw-------  1 root  wheel  0x81 18 Fev 14:34 /dev/ukbd0


5. In /var/log/messages, there are these lines:
# egrep -i -e 'kbd|keyb' messages
Feb 18 14:34:58 leao kernel: module_register_init: MOD_LOAD (kbdmux,
0xffffffff805d4070, 0) error 6
Feb 18 14:34:58 leao kernel: atkbdc0: <Keyboard controller (i8042)>
at port 0x60,0x64 on isa0
Feb 18 14:34:58 leao kernel: atkbd0: <AT Keyboard> irq 1 on atkbdc0
Feb 18 14:34:58 leao kernel: kbd0 at atkbd0
Feb 18 14:34:58 leao kernel: atkbd0: [GIANT-LOCKED]
Feb 18 14:34:58 leao kernel: ukbd0: <USB Keyboard> on usbus0
Feb 18 14:34:58 leao kernel: kbd1 at ukbd0
Feb 18 14:34:58 leao kernel: uhid0: <USB Keyboard> on usbus0

It seems there's an error 6 regarding kbdmux...


6. # dmesg | grep kbd
module_register_init: MOD_LOAD (kbdmux, 0xffffffff805d4070, 0) error 6
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
ukbd0: <USB Keyboard> on usbus0
kbd1 at ukbd0


This is the only thing keeping me from using my workstation the way I
 need.  I hope there's some fix to this.


How to correct this problem?  Is this a bug?


-- 


Luis Mendes



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160220001254.GD73442>