Page MenuHomeFreeBSD

evdev: several minor fixes and improvements
ClosedPublic

Authored by wulf on Oct 14 2017, 8:44 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, May 4, 5:55 PM
Unknown Object (File)
Wed, Apr 29, 4:46 PM
Unknown Object (File)
Mon, Apr 27, 1:54 PM
Unknown Object (File)
Thu, Apr 23, 4:37 AM
Unknown Object (File)
Mon, Apr 20, 4:31 AM
Unknown Object (File)
Apr 4 2026, 9:14 AM
Unknown Object (File)
Mar 23 2026, 11:50 PM
Unknown Object (File)
Mar 22 2026, 7:05 PM
Subscribers

Details

Summary

1.Hide "kern.evdev.rcpt_mask" sysctl if kernel is compiled w/o EVDEV_SUPPORT

It can be used for discovery if evdev support for hybrid devices is compiled
into kernel or not. Hide "kern.evdev.sysmouse_t_axis" sysctl as well.
  1. Lock Giant around keyboard ioctls This fixes turning ukbd(4) LEDs on/off with evdev interface as well
  2. Take driver's lock in cdev write handler if necessary
  3. Fixes to ums-style sysmouse(4) T-axis support Do not report T-axis wheel as button presses Reverse T-axis to match Linux Remove wrong comment
  4. Disable value normalization and state filtering for SND events. Some events can take sound pitch as a value so can not be represented as binary on/off events. Tracking for on/off state is left in place as it is a part of the evdev API.
  5. Do not start/stop softrepeat callout if no clients attached.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Unfortunately, phabricator hangs if I try to upload full-context diff, so standard 3-line context diff is uploaded.

This revision is now accepted and ready to land.Nov 1 2017, 7:35 PM
This revision was automatically updated to reflect the committed changes.