Laptop keyboard does not work

Michael Neumann mneumann at ntecs.de
Sat Apr 20 23:04:01 PDT 2024


On Sun, Apr 21, 2024 at 08:56:04AM +0300, Martin Ivanov wrote:
> Hello, Michael,
> Thank you for clarifying this. Actually, the value is 12 by default already
> in the latest dfly release, 6.4.0.
> 
>  Is there somewhere official documentation on these rcpt mask values?

Unfortunately, no. It can be found in the source code.

/usr/src/sys/dev/misc/evdev/evdev.h:

    /*
     * Keyboard and mouse events recipient mask.
     * evdev_rcpt_mask variable should be respected by keyboard and mouse drivers
     * that are able to send events through both evdev and sysmouse/kbdmux
     * interfaces so user can choose preferred one to not receive one event twice.
     */
    #define	EVDEV_RCPT_SYSMOUSE	(1<<0)
    #define	EVDEV_RCPT_KBDMUX	(1<<1)
    #define	EVDEV_RCPT_HW_MOUSE	(1<<2)
    #define	EVDEV_RCPT_HW_KBD	(1<<3)

/usr/src/sys/dev/misc/evdev/evdev.c:

    int evdev_rcpt_mask = EVDEV_RCPT_HW_MOUSE | EVDEV_RCPT_HW_KBD;

We really should have a FAQ that has an entry for these kinds of issues.

Regards,

  Michael

> 
> Best regards,
> Martin
> 
> Michael Neumann <mneumann at ntecs.de> schrieb am So., 21. Apr. 2024, 08:15:
> 
> > On Sun, Apr 21, 2024 at 07:15:17AM +0300, Martin Ivanov wrote:
> > > Hello, Michael,
> > > thank you very much for your reply. Sorry for not replying to you
> > earlier.
> > > Actuall, yesterday we solved the problem in the irc chat. Pierre-Alain
> > > TORET (daftaupe) told me to set kern.evdev.rcpt_mask=3. I now have this
> > > added to /etc/sysctl.conf and my laptop keyboard works. No need for an
> > > external USB keyboard any more.
> >
> > Glad to hear!
> >
> > > I am not sure if trying the master branch would make this configuration
> > > unnecessary? So far everything works all right, I finally have a fully
> > > working DragonflyBSD XFCE desktop.
> >
> > With the next version of DragonFly, the default will be
> > kern.evdev.rcpt_mask=12.
> >
> > To explain, the rcpt_mask is a bit pattern:
> >
> > * 1: Enable Sysmouse protocol (psm via moused)
> > * 2: Kbdmux (keyboard multiplexer)
> > * 4: Hardware mouse (psm directly via evdev)
> > * 8: Hardware keyboard (atkbd directly via evdev)
> >
> > So a value of 12 ("4 bit-or 8") means, that only the evdev events from
> > the Hardware mouse and Hardware keyboard are passed through.
> >
> > The value 3 ("1 bit-or 2") means, you use sysmouse protocol and kbdmux.
> >
> > Another "common" value would be 6 ("2 bit-or 4"), which uses the
> > keyboard multiplexer with the hardware mouse.
> >
> > Keep in mind that when you upgrade to the next version, you might have
> > to tweak the rcpt_mask value and maybe your Xorg conf.
> >
> > Regards,
> >
> >   Michael
> >
> > >
> > > Best regards,
> > > Martin
> > > On Sat, Apr 20, 2024 at 7:09???PM Michael Neumann <mneumann at ntecs.de>
> > wrote:
> > >
> > > ???
> > > ???
> > > Michael Neumann, karu.pruun, users at dragonflybsd.org
> > > Hello, Michael,
> > > thank you very much for your reply. Sorry for not replying to you
> > earlier.
> > > Actuall, yesterday we solved the problem in the irc chat. Pierre-Alain
> > > TORET (daftaupe) told me to set
> > > On Sat, Apr 20, 2024 at 7:09???PM Michael Neumann <mneumann at ntecs.de>
> > wrote:
> > > Hi Martin,
> > >
> > > My experience with evdev was that X11 does not recognize it as of 6.4, as
> > > kern.features.evdev sysctl is missing. Still, your keyboard *should* work
> > > without evdev - I really believe this is a configuration issue. Can you
> > > please again attach the full xorg.conf file that you are currently using?
> > > As Peeter mentioned,  you have a typo in your xorg.conf.
> > >
> > > As for evdev: Can you somehow try out the current HEAD revision from git?
> > > You'd have to recompile the world and kernel :)
> > >
> > > Regards,
> > >
> > > Michael
> > >
> > >
> > > Am 20. April 2024 20:18:13 GMT+07:00 schrieb Martin Ivanov <
> > > marto1980 at gmail.com>:
> > > Hello, Peter,
> > >
> > > thank you very much for your reply. I did that, but the keyboard still
> > > doesn't work.
> > > So long as I see, the libinput and evdev drivers are loaded but that does
> > > not help, unfortunately.
> > > I am attaching my current xorg.conf as well as the Xorg.0. log file.
> > >
> > > Any suggestions will be appreciated.
> > >
> > > Best regards,
> > > Martin
> > >
> > >
> > >
> > > On Sat, Apr 20, 2024 at 9:30???AM karu.pruun <karu.pruun at gmail.com>
> > wrote:
> > > Hello
> > >
> > > The standard and preferred way now is to use the evdev input system.
> > > This means you should use the libinput driver for both keyboard and
> > > mouse. See the xorg.conf I attached to the previous email thread as an
> > > example, it has both filled in with the libinput driver; you can just
> > > copy them over into your xorg.conf. Also ensure you have the following
> > > packages installed:
> > >
> > > - libinput
> > > - xf86-input-libinput
> > > - libevdev
> > > - py39-evdev
> > >
> > > Note that you have a syntax error ("Keeyboard0" v "Keyboard0") in your
> > > xorg.conf.
> > >
> > > Best
> > >
> > > Peeter
> > >
> > > --
> > >
> > > On Sat, Apr 20, 2024 at 7:58???AM Martin Ivanov <marto1980 at gmail.com>
> > wrote:
> > > >
> > > > Hello,
> > > > After I installing  Dragonflybsd 6.4.0, my laptop keyboard does not
> > work
> > > in X, I am using XFCE. dmesg recognizes my keyboard as:
> > > >
> > > > atkbdc0: Keyboard controller i8042 port 0x64,0x60 irq 1 on acpi0
> > > > atkbd0: AT Keyboard irq 1 on atkbdc0
> > > >
> > > > In my xorg.conf, I have:
> > > >
> > > > Section "ServerLayout"
> > > > InputDevice "Keeyboard0" "CoreKeyboard"
> > > > EndSection
> > > >
> > > > Section "InputDevice"
> > > > Identifier "Keyboard0"
> > > > Driver "kbd"
> > > > EndSection
> > > >
> > > >
> > > > Any suggestions will be appreciated.
> > > >
> > > > Best regards,
> > > >
> > > > Martin
> > > >
> > > >
> > > Sans Serif
> > > Send
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > > Hi Martin,
> > > >
> > > > My experience with evdev was that X11 does not recognize it as of 6.4,
> > as
> > > > kern.features.evdev sysctl is missing. Still, your keyboard *should*
> > work
> > > > without evdev - I really believe this is a configuration issue. Can you
> > > > please again attach the full xorg.conf file that you are currently
> > using?
> > > > As Peeter mentioned,  you have a typo in your xorg.conf.
> > > >
> > > > As for evdev: Can you somehow try out the current HEAD revision from
> > git?
> > > > You'd have to recompile the world and kernel :)
> > > >
> > > > Regards,
> > > >
> > > > Michael
> > > >
> > > >
> > > > Am 20. April 2024 20:18:13 GMT+07:00 schrieb Martin Ivanov <
> > > > marto1980 at gmail.com>:
> > > >
> > > >> Hello, Peter,
> > > >>
> > > >> thank you very much for your reply. I did that, but the keyboard still
> > > >> doesn't work.
> > > >> So long as I see, the libinput and evdev drivers are loaded but that
> > does
> > > >> not help, unfortunately.
> > > >> I am attaching my current xorg.conf as well as the Xorg.0. log file.
> > > >>
> > > >> Any suggestions will be appreciated.
> > > >>
> > > >> Best regards,
> > > >> Martin
> > > >>
> > > >>
> > > >>
> > > >> On Sat, Apr 20, 2024 at 9:30???AM karu.pruun <karu.pruun at gmail.com>
> > wrote:
> > > >>
> > > >>> Hello
> > > >>>
> > > >>> The standard and preferred way now is to use the evdev input system.
> > > >>> This means you should use the libinput driver for both keyboard and
> > > >>> mouse. See the xorg.conf I attached to the previous email thread as
> > an
> > > >>> example, it has both filled in with the libinput driver; you can just
> > > >>> copy them over into your xorg.conf. Also ensure you have the
> > following
> > > >>> packages installed:
> > > >>>
> > > >>> - libinput
> > > >>> - xf86-input-libinput
> > > >>> - libevdev
> > > >>> - py39-evdev
> > > >>>
> > > >>> Note that you have a syntax error ("Keeyboard0" v "Keyboard0") in
> > your
> > > >>> xorg.conf.
> > > >>>
> > > >>> Best
> > > >>>
> > > >>> Peeter
> > > >>>
> > > >>> --
> > > >>>
> > > >>> On Sat, Apr 20, 2024 at 7:58???AM Martin Ivanov <marto1980 at gmail.com
> > >
> > > >>> wrote:
> > > >>> >
> > > >>> > Hello,
> > > >>> > After I installing  Dragonflybsd 6.4.0, my laptop keyboard does not
> > > >>> work in X, I am using XFCE. dmesg recognizes my keyboard as:
> > > >>> >
> > > >>> > atkbdc0: Keyboard controller i8042 port 0x64,0x60 irq 1 on acpi0
> > > >>> > atkbd0: AT Keyboard irq 1 on atkbdc0
> > > >>> >
> > > >>> > In my xorg.conf, I have:
> > > >>> >
> > > >>> > Section "ServerLayout"
> > > >>> > InputDevice "Keeyboard0" "CoreKeyboard"
> > > >>> > EndSection
> > > >>> >
> > > >>> > Section "InputDevice"
> > > >>> > Identifier "Keyboard0"
> > > >>> > Driver "kbd"
> > > >>> > EndSection
> > > >>> >
> > > >>> >
> > > >>> > Any suggestions will be appreciated.
> > > >>> >
> > > >>> > Best regards,
> > > >>> >
> > > >>> > Martin
> > > >>> >
> > > >>> >
> > > >>>
> > > >>
> >
> > --
> > Michael Neumann
> > NTECS Consulting
> > www.ntecs.de
> >

-- 
Michael Neumann
NTECS Consulting
www.ntecs.de


More information about the Users mailing list