Commit graph

849 commits

Author SHA1 Message Date
Peter Hutterer
d05736765c doc: drop the HTML_TIMESTAMP
Allows for reproducible builds. Debian carries a patch for this, and the
timestamp doesn't really add much since the doc is either in sync with master
or represents the release tag. Might as well drop it.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-08-29 08:00:49 +10:00
Peter Hutterer
0f346f3090 libevdev 1.5.4
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-08-26 12:01:34 +10:00
Peter Hutterer
240ba34ebd tools: fix the touchpad resolution calculation
Previous ones used the absinfo from the kernel but since we never updated that
from within the tool, the output was always the same.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-08-26 11:43:54 +10:00
Peter Hutterer
0a5f884c58 libevdev 1.5.3
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-08-22 07:36:13 +10:00
Peter Hutterer
df5ca55609 Don't bother sanitizing disabled event codes
Filter them immediately instead of passing them on and relying on the actual
event handling code to filter them.

Reproducer: if EV_ABS is disabled on an Apple MagicMouse we still get events
passed into sanitize_event(). But the code handling EV_ABS events doesn't
update the state, so we end up complaining about double tracking IDs, even
though that is not actually correct.

https://bugzilla.redhat.com/show_bug.cgi?id=1361325

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2016-08-17 17:43:32 +10:00
Peter Hutterer
761687e995 tools: require a minimum size for touchpads
This mostly aims to catch users trying to specify the size in inches.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-08-01 07:47:46 +10:00
Peter Hutterer
911106230a tools: change touchpad-edge-detector to require physical size
Almost no-one does the calculations for me to update the udev rules (and some
rules were submitted with the <x resolution> placeholders left in).
Require the user to specify the physical size so we just copy/paste the actual
udev rule.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Acked-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2016-08-01 06:48:04 +10:00
Peter Hutterer
4dd93f0108 libevdev 1.5.2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-06-15 16:11:41 +10:00
Peter Hutterer
7f2fffc0d9 include: update to v4.6 linux/input.h header
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-05-16 09:51:55 +10:00
Peter Hutterer
98fd794693 libevdev 1.5.1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-05-16 09:01:35 +10:00
Armin K
e628bb938b libevdev: Properly distribute uinput.h
Signed-off-by: Armin K <krejzi@email.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-05-16 08:12:05 +10:00
Peter Hutterer
52d52f320c libevdev 1.5
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-05-13 13:50:44 +10:00
Peter Hutterer
4943f2895f tools: allow numeric axis values in tweak-device
Not all axes a device may have are assigned a semantic name.

https://bugs.freedesktop.org/show_bug.cgi?id=95029

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-04-22 10:10:39 +10:00
Peter Hutterer
a95ca2c821 tools: fix tweak-device option parsing
https://bugs.freedesktop.org/show_bug.cgi?id=92880

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-04-22 09:45:22 +10:00
Peter Hutterer
e11662ac72 doc: reduce doxygen file to the non-default settings
Makes it easier to check what we changed from the defaults.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-04-22 08:32:10 +10:00
Peter Hutterer
60188f1c4d Fix typo in doc string
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-04-20 11:31:38 +10:00
Peter Hutterer
0b92e1ae5e uinput: support the new UI_DEV_SETUP/UI_ABS_SETUP ioctls
Available in kernel 4.5 and later (uinput version 5), these ioctls allow us to
set the absinfo correctly, i.e. including the resolution.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2016-04-07 11:06:19 +10:00
Peter Hutterer
7989eef759 uinput: split uinput device creation into a helper function
No functional changes. This is prep work for supporting the new
UIDEV_DEV_SETUP ioctl.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2016-04-07 11:05:00 +10:00
Peter Hutterer
345a1589a5 uinput: drop an unused argument
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2016-04-07 11:04:59 +10:00
Peter Hutterer
97fb972e41 include: update to v4.5 linux/uinput.h
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2016-04-07 10:43:11 +10:00
Peter Hutterer
5ea0a27ba6 Add parsing linux/input-event-codes.h, update to kernel v4.5
The kernel has split most of the event codes out to a new header but the FF_
bits are missing from that header. Until this is fixed upstream, change the
event code parsing so it can take two files (using cat and stdin) so we can
update the kernel headers again.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2016-03-30 15:45:58 +10:00
Peter Hutterer
46b8381f0c test: ignore a failure to UI_DEV_DESTROY the device
Coverity complains about it.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2016-03-04 07:26:53 +10:00
Peter Hutterer
2a27abf824 test: drop unnecessary return value
We abort if anything goes wrong anyway, so we never returned anything but
success.

Found by coverity.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2016-03-04 07:10:33 +10:00
Peter Hutterer
bf8e6b2982 libevdev 1.4.6
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-01-05 12:41:59 +10:00
Peter Hutterer
006f10cfcb uinput: fix race condition in uinput syspath check
In theory, the device could change between stat() call and open(), resulting
in us opening the new device. Change to open() first, then fstat() on the fd.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: David Herrmann <dh.herrmann@gmail.com>
2016-01-04 07:39:24 +10:00
Peter Hutterer
3c85fcb62f tools: shut up coverity about a potential close(-1)
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-01-04 07:39:24 +10:00
Peter Hutterer
5b13ffb78f tools: fix coverty "may be used uninitialized" warnings
tools/libevdev-tweak-device.c:390: uninit_use_in_call: Using uninitialized
value "changes" when calling "parse_options_abs".

tools/libevdev-tweak-device.c:376: warning: 'led' may be used uninitialized in
this function

tools/libevdev-tweak-device.c:375: warning: 'axis' may be used uninitialized
in this function

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-01-04 07:39:24 +10:00
Peter Hutterer
cabe03d8fe Document that the fd should be drained before libevdev_set_fd
This is the caller's responsibility, for two reasons:
* we don't know if O_NONBLOCK is set, so draining the fd isn't a simple matter
  of read() until EAGAIN. A select() + read() could work around this of
  course.
* for stateless information, keys and relative data, it is not a problem when
  there are events waiting on the fd already, they are processed correctly,
  albeit with a delay.

So punt this decision to the caller, they openend the fd, they know if they
care about delayed events, they can drain the fd before handing it to us.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Acked-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
Acked-by: David Herrmann <dh.herrmann@gmail.com>
2015-12-17 10:46:31 +10:00
Peter Hutterer
de23fa00e7 libevdev 1.4.5
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-11-11 12:11:48 +10:00
Peter Hutterer
33d51dbaa4 tools: fix touchpad-edge-detector udev rule output
off-by-one error on the ABS_ axes printed. ABS_X/Y are 0 and 1.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-11-10 13:07:10 +10:00
Peter Hutterer
100448ae8e Add some more files to gitignore
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-11-10 13:07:10 +10:00
Peter Hutterer
ece0b7bedc libevdev 1.4.4
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-09-01 10:26:21 +10:00
Andreas Pokorny
0028174c0b Fix invalid absinfo range values reported by certain mtk soc
This change will only affect certain touch screens, for which the driver
integration code does not provide meaningful values for the allowed range
of ABS_MT_TRACKING_IDs. The reported range [0, 0] will be overwritten with
[-1, 0xFFFF]

Signed-off-by: Andreas Pokorny <andreas.pokorny@canonical.com>

[Changed from INT_MAX to 0xFFFF to match the kernel, add device name to log
message]

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-08-24 16:26:00 +10:00
Peter Hutterer
fa3c5622de tools: print out evdev override udev rule from touchpad edge detector
We're starting to collect overrides for custom devices, making this easier for
users and saves us time. Once we measured everything, print out a
guesstimated udev rule and instructions on how to calculate the resolution.
Extra output now is:

	Touchpad size as listed by the kernel: 132x111mm
	Calculate resolution as:
		x axis: 6076/<width in mm>
		y axis: 5021/<height in mm>

	Suggested udev rule:
	# <Laptop model description goes here>
	evdev:input:b0005v05ACp030E*
	 EVDEV_ABS_01=-2694:2862:<x resolution>
	 EVDEV_ABS_02=-20:121:<y resolution>
	 EVDEV_ABS_35=-2694:2862:<x resolution>
	 EVDEV_ABS_36=-20:121:<y resolution>

The ABS_MT_ axes are only printed if the device have them, if the device isn't
bluetooth/usb we print the dmi modalias instead.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-08-24 08:16:09 +10:00
Peter Hutterer
8b9c47a7cb tools - tweak-device: add a --resolution command
So far, 100% of the usages for tweak-tool was to set the x/y resolution of a
device. Make --resolution a shortcut for this.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-07-01 11:59:20 +10:00
Peter Hutterer
4d058bc2b0 tools - tweak-device: revamp to reduce use of globals
Make the code base a bit more modular so it's easier to add new commands.
Main change here is: options are parsed twice now, first time for the mode
(abs/led) and the device path, then again for the mode-specific options.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-07-01 11:59:04 +10:00
Peter Hutterer
743deafb95 Note that libevdev_free() does not close the fd
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-06-29 12:23:34 +10:00
Peter Hutterer
c8a557fc9b tools - tweak-device: fix wrong error message if the LED doesn't exist
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-06-29 12:12:39 +10:00
Peter Hutterer
269584b1b5 tools - tweak-device: close the fd on exit
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-06-29 12:12:39 +10:00
Peter Hutterer
d43413fb3d libevdev 1.4.3
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-06-22 16:57:35 +10:00
Peter Hutterer
66dfaeb999 include: update to 4.1 header
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-06-22 15:53:48 +10:00
Peter Hutterer
f54656ecc1 tools: complain about devices that don't have abs x/y axes in the edge detector
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-06-10 14:53:40 +10:00
Peter Hutterer
e1d87fa6df tools: widen frequency resolution to µs in the DPI tool
The Microsoft Arc Touch Mouse claims 8000fps which is higher than we can
measure in the current milliseconds resolution.
http://www.cnet.com/products/microsoft-arc-touch-mouse-black-series/specs/

https://bugs.freedesktop.org/show_bug.cgi?id=90540

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-05-21 11:52:40 +10:00
Peter Hutterer
6f03fd49fb libevdev 1.4.2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-04-24 11:52:54 +10:00
Peter Hutterer
d26973216c tools: fix help string for manual DPI calculation
https://bugs.freedesktop.org/show_bug.cgi?id=90143

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-04-23 10:36:55 +10:00
Peter Hutterer
01356bc5f2 include: update to 4.0 header
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-04-13 10:06:03 +10:00
Peter Hutterer
74f8f5388f libevdev 1.4.1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-04-08 12:48:47 +10:00
Peter Hutterer
97da13c3c4 Accept LIBEVDEV_READ_FLAG_BLOCKING as valid flag
https://bugs.freedesktop.org/show_bug.cgi?id=89798

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-04-08 12:48:43 +10:00
Peter Hutterer
635c07ee98 ABS_MAX counts as MT axis for the event queue
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-03-23 14:02:15 +10:00
Peter Hutterer
5e49ce5630 cosmetic: fix a comment
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-03-23 14:01:58 +10:00