svn commit: r360126 - head/sys/dev/evdev

Niclas Zeising zeising at freebsd.org
Mon Apr 20 16:57:29 UTC 2020


On 2020-04-20 18:39, Justin Hibbits wrote:
> On Mon, 20 Apr 2020 16:17:17 +0000 (UTC)
> Niclas Zeising <zeising at FreeBSD.org> wrote:
> 
>> Author: zeising (doc,ports committer)
>> Date: Mon Apr 20 16:17:16 2020
>> New Revision: 360126
>> URL: https://svnweb.freebsd.org/changeset/base/360126
>>
>> Log:
>>    Change kern.evdev.rcpt_mask to 12 by default
>>    
>>    Change kern.evdev.rcpt_mask from 3 to 12 by default.  This makes us
>> much more evdev-friendly, and will prevent everyone using xorg and
>> wayland with evdev devices (the default) from needing to change this
>> locally.
>>    powerpc32 still uses the old value for the keyboard part, becaues
>> the adb keyboard driver used there is not evdev compatible.
>>    
>>    Reviewed by:	wulf
>>    Approved by:	wulf
>>    MFC after:	2 weeks
>>    X-MFC-Note:	12 only
>>    Relnotes:	yes
>>    Differential Revision:	https://reviews.freebsd.org/D24370
>>
>> Modified:
>>    head/sys/dev/evdev/evdev.c
>>
>> Modified: head/sys/dev/evdev/evdev.c
>> ==============================================================================
>> --- head/sys/dev/evdev/evdev.c	Mon Apr 20 16:14:44 2020
>> (r360125) +++ head/sys/dev/evdev/evdev.c	Mon Apr 20 16:17:16
>> 2020	(r360126) @@ -66,7 +66,12 @@ enum evdev_sparse_result
>>   
>>   MALLOC_DEFINE(M_EVDEV, "evdev", "evdev memory");
>>   
>> -int evdev_rcpt_mask = EVDEV_RCPT_SYSMOUSE | EVDEV_RCPT_KBDMUX;
>> +/* adb keyboard driver used on powerpc does not support evdev yet */
>> +#ifdef __powerpc__
> 
> This affects *all* powerpc, not just powerpc32.  For just powerpc32,
> you should have:
> 
> #if defined(__powerpc__) && !defined(__powerpc64__)

Ok, I wasn't aware of that, I'll fix it.

> 
> But I'm curious, why not attach to sysmouse(4) and kbdmux(4)?  What
> breakage does that cause?  I could maybe see not attaching to
> sysmouse(4) by default, if the protocol isn't expressive enough, but
> kbdmux(4) should be sufficient.

Sysmouse hides features from evdev, so it's better to let xorg or 
wayland access the device directly.

If both are enabled, you'll get double events, meaning double key 
presses when using USB devices: https://reviews.freebsd.org/D24370#538523

Regards
-- 
Niclas Zeising


More information about the svn-src-head mailing list