Commit graph

389 commits

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek 8d9d1e3af0 hwdb_parse: adjust indentation and imports following pylint advice
(This commit is separate to make it easy to export to libinput.)
2016-12-01 19:10:01 -05:00
Zbigniew Jędrzejewski-Szmek 644d7e7610 acpi-update.py: there is no "Error" class
Evidently this code path was never hit, because we'd crash with NameError.
The exception message also seems bogus. So just replace the whole thing
with the standard exception for invalid input.
2016-12-01 18:52:57 -05:00
Peter Hutterer 086c001e29 hwdb: add XKB_FIXED_LAYOUT/VARIANT to the keyboard hwdb
Yubikeys and other pseudo keyboards require that they are in the US layout,
otherwise the data they send is invalid. Add two new keys to signal this to
processes that handles (XKB) layouts.
2016-12-01 20:11:54 +10:00
Peter Hutterer cde43c455b hwdb: fix comment referring to rules file
60-keyboard.rules was renamed to 60-evdev.rules in 51c0c2869

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2016-12-01 10:54:40 +10:00
Martin Pitt aeceb3901a hwdb/parse_hwdb.py: open files with UTF-8 mode
pyparsing uses the system locale by default, which in the case of 'C' (in lots
of build environment) will fail with a UnicodeDecodeError. Explicitly open it
with UTF-8 encoding to guard against this.
2016-11-30 09:25:09 +01:00
Martin Pitt f644a6da7a parse_hwdb: fix to work with pyparsing 2.1.10
pyparsing 2.1.10 fixed the handling of LineStart to really just apply to line
starts and not ignore whitespace and comments any more. Adjust EMPTYLINE to
this.

Many thanks to Paul McGuire for pointing this out!
2016-11-30 09:20:15 +01:00
Martin Pitt 2f08ccc32e Revert "hwdb/parse_hwdb.py: open files with UTF-8 mode"
"encoding" is not a valid Python 2 keyword, and despite the hashbang this
script can be called with Python 2.

This reverts commit 115a10c58d.
2016-11-25 07:59:37 +01:00
Peter Hutterer 2502c8137f hwdb: add axis overrides for HP Pavilion dv7
Fixes #4731
2016-11-25 07:53:18 +10:00
Martin Pitt 54abf90a0b hwdb: fix syntax error in 60-keyboard.hwdb
Fixes #4728
2016-11-24 11:45:55 +01:00
Martin Pitt 115a10c58d hwdb/parse_hwdb.py: open files with UTF-8 mode
pyparsing uses the system locale by default, which in the case of 'C' (in lots
of build environment) will fail with a UnicodeDecodeError. Explicitly open it
with UTF-8 encoding to guard against this.
2016-11-24 10:38:01 +01:00
Michael Biebl 331d6a201b hwdb: use systemd-hwdb instead of obsolete udevadm hwdb (#4722)
Fixes: #4721
2016-11-23 19:21:56 +01:00
Hans de Goede 3f59367e6f hwdb: keyboard: Ignore brightness hotkey presses on MSI VR420 (model MS-1422) (#4696)
Add MSI VR420 (model MS-1422) to the list of MSI models which need to
ignore brightness hotkey presses, as these are already reported through
the acpi-video interface.

Bug-link: https://bugzilla.redhat.com/show_bug.cgi?id=1270124
Reported-by: David Dreggors <dadreggors@gmail.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-11-19 10:07:41 -05:00
Francesco Brozzu c4027307a2 hwdb: fix airplane mode trigger when switching from laptop to desktop on HP Pavilion x360 13 (#4680) 2016-11-16 22:57:20 +01:00
Lennart Poettering c14eff367c hwdb update for 232 (#4557) 2016-11-03 13:16:01 -04:00
Zbigniew Jędrzejewski-Szmek 1258f08898 parse_hwdb: add import fallback for python2 2016-11-02 22:48:43 -04:00
Peter Hutterer 9107a33777 hwdb: add MOUSE_WHEEL_CLICK_COUNT for non-integer click angles (#4440)
MOUSE_WHEEL_CLICK_ANGLE has been an integer, and at least libinput (probably
the only user) parses it as strict integer. For backwards compatibility, we
cannot change it to a decimal number now.

Add a new property to list the number of clicks for a full 360 degree
rotation, to be specified in addition to the old click angle property. Clients
can prefer the new one where available and calculate the decimal value to
whatever precision they want.
2016-10-21 12:31:32 +02:00
Marcel Holtmann 697f494216 hwdb: Update database of Bluetooth company identifiers 2016-10-20 10:24:18 +02:00
Ben Gamari 579a2ab3d6 hwdb: Add sensitivity for Dell Latitude E7470 pointingstick 2016-10-15 12:11:03 -04:00
Ben Harris 63b0a24b56 hwdb: Treat Latitude 2110 brightness keys like on Inspiron 1520 (#4355)
Like the Inspiron 1520, the Dell Latitude 2110 emits brightness-control
key events both through atkbd and acpi-video.  This suppresses them on
the atkbd side.
2016-10-12 15:41:56 +02:00
Marcel Holtmann 390e020735 hwdb: Update database of Bluetooth company identifiers 2016-09-15 22:09:35 +02:00
Peter Hutterer bbe7cdeb8f hwdb: add Lenovo *40 series resolution fixes (#4149) 2016-09-15 08:16:05 +02:00
Zbigniew Jędrzejewski-Szmek acb986015d Relicense hwdb/parse_hwdb.py as MIT (#4129)
This parser will also be used in libinput, which uses the MIT license, so
relicense this file to the more permissive license to make bidirectional code
flow easier. parse_hwdb.py is only useful during building of the project, and
is not part of the installation, so effectively both licenses are very similar.
In particular, the licensing of binary packages produced by systemd is not
influenced in any way, because the MIT licensed part is not installed.
2016-09-13 08:18:13 +02:00
dwassenberg f5b15d1b94 hwdb: add Lenovo X1 Tablet pointing stick speed fix (#4128)
Like many other recent thinkpads the factory default pointingstick
sensitivity on these devices is quite low, making the pointingstick
very slow in moving the cursor.

This extends the existing hwdb rules for tweaking the sensitivity to
also apply to the X1 Tablet models.

Signed-off-by: Dennis Wassenberg <dennis.wassenberg@secunet.com>
2016-09-12 13:29:55 +01:00
Peter Hutterer e5e0cffce7 Merge pull request #4075 from Noeljunior/master
hwdb: add axis corrections for the Lenovo Yoga 500-14ISK touchpad
2016-09-01 19:07:49 +10:00
Peter Hutterer 3ba320560a hwdb: add axis range corrections for Lenovo L430 (#4074)
https://bugs.freedesktop.org/show_bug.cgi?id=96220
2016-09-01 08:29:13 +02:00
Noeljunior 4ad6f2133a hwdb: add axis corrections for the Lenovo Yoga 500-14ISK touchpad 2016-09-01 03:02:10 +01:00
Lennart Poettering d16a6c39f6 hwdb: 60-keyboard: remove line causing a syntax error (#3999) 2016-08-31 12:29:51 +02:00
Mantas Mikulėnas d9e76d1433
hwdb: 60-keyboard: remove line causing a syntax error 2016-08-27 19:12:44 +03:00
Erik Karlsson 67684ba665 hwdb: add axis range corrections for Lenovo Ideapad 500S-13ISK 2016-08-26 19:48:52 +02:00
Peter Hutterer 769c29d5d1 hwdb: add axis ranges for the MacBook 4,1 (#4030)
https://bugzilla.redhat.com/show_bug.cgi?id=1357990
2016-08-24 12:11:48 +02:00
Peter Hutterer df35bfaa25 hwdb: provide axis ranges for the Dell XPS M1530 (#4016)
https://bugs.freedesktop.org/show_bug.cgi?id=97433
2016-08-21 19:31:25 -04:00
Lennart Poettering a6a8e60bd3 hwdb: let's no abbreivate HORIZONTAL as HORIZ (#3994)
I think I am developing OCD... Let's fix this before this actually gets used in
the wild.

A follow-up for #3986 (5fc9e4abb4).
2016-08-19 15:31:36 +02:00
Peter Hutterer 8249c5722d hwdb: add resolution for the Dell Precision 5510 (#3989)
https://bugs.freedesktop.org/show_bug.cgi?id=97347
2016-08-19 10:25:53 +02:00
Peter Hutterer 5fc9e4abb4 hwdb: add a udev property for a wheel click angle on horiz wheels
The Logitech MX Master has a horizontal scroll wheel with a different click
angle than the vertical one. Add a new property for this case, we can't add
values to the normal one without risking upsetting existing parsers.

Fixes #3947
2016-08-19 11:57:36 +10:00
Zbigniew Jędrzejewski-Szmek 2d891284c7 hwdb: normalize spacing in 60-keyboard.hwdb (#3954) 2016-08-13 17:14:58 +02:00
Lennart Poettering ff0bb1ed93 Merge pull request #3933 from keszybz/hwdb-parser
Add hwdb parser to check for inconsistencies
2016-08-11 10:49:57 +02:00
romanstingler ac741b47dc added Zelotes gaming mouse (#3925) 2016-08-09 00:51:38 -04:00
Zbigniew Jędrzejewski-Szmek c3f6a561e2 build-sys: hook up the hwdb parser to check 2016-08-09 00:42:52 -04:00
Zbigniew Jędrzejewski-Szmek 2abd461344 hwdb: comment out a duplicated key for the XO
It's hard to say which one of the two mappings should stay. But the later
one would win (when both very present), and nobody complained, so let's
assume that that's the one.
2016-08-09 00:42:52 -04:00
Zbigniew Jędrzejewski-Szmek 3ab7794757 hwdb: use lowercase hex for key numbers
It seems awkward to have both cases mixes. Note that the real parser
accepts both cases, and this only standarizes the usage in the systemd
database.
2016-08-09 00:42:52 -04:00
Zbigniew Jędrzejewski-Szmek 704c3aa9e8 hwdb: remove duplicated matches for old Logitech unifying receiver
Quoting https://github.com/systemd/systemd/pull/3906#discussion_r73828368:
> According to
> http://support.logitech.com/en_us/product/v220-cordless-optical-mouse-for-notebooks
> it seems the mouse is using a pre-version of the small unifying receiver we
> know now. If there are 2 mice with the same receiver, that means that the
> values should both be dropped IMO.
2016-08-09 00:42:52 -04:00
Zbigniew Jędrzejewski-Szmek 0c9836c0cf tests: add python parser for hwdb grammar
This works for hwdb/[67]0-*.hwdb. I also added code to parse hwdb/20-*, but those
files are huge, and parsing them using this parser is annoyingly slow (about one
minute for the biggest files). So I removed the support for hwdb/20-*, a much simpler
hand-generated parser should suffice for those.

Current output:

hwdb/60-evdev.hwdb: 24 match groups, 35 matches, 88 properties, 0.19323015213012695s to parse
Match 'evdev:input:b0003v05ACp0259*' is duplicated
Match 'evdev:input:b0003v05ACp025A*' is duplicated
Match 'evdev:input:b0003v05ACp025B*' is duplicated
hwdb/60-keyboard.hwdb: 122 match groups, 188 matches, 638 properties, 1.0906572341918945s to parse
Failed to parse: 'KEYBOARD_KEY_8F=switchvideomode'
Failed to parse: 'KEYBOARD_KEY_C0183=media'
Failed to parse: 'KEYBOARD_KEY_C0201=new'
Failed to parse: 'KEYBOARD_KEY_C0289=reply'
Failed to parse: 'KEYBOARD_KEY_C028B=forwardmail'
Failed to parse: 'KEYBOARD_KEY_C028C=send'
Failed to parse: 'KEYBOARD_KEY_C021A=undo'
Failed to parse: 'KEYBOARD_KEY_C0279=redo'
Failed to parse: 'KEYBOARD_KEY_C0208=print'
Failed to parse: 'KEYBOARD_KEY_C0207=save'
Failed to parse: 'KEYBOARD_KEY_C0194=file'
Failed to parse: 'KEYBOARD_KEY_C01A7=documents'
Failed to parse: 'KEYBOARD_KEY_C01B6=images'
Failed to parse: 'KEYBOARD_KEY_C01B7=sound'
Property KEYBOARD_KEY_c7 is duplicated
Failed to parse: 'KEYBOARD_KEY_cF=end'
hwdb/70-mouse.hwdb: 62 match groups, 93 matches, 68 properties, 0.34186625480651855s to parse
Match 'mouse:usb:v046dpc51b:name:Logitech USB Receiver:' is duplicated
hwdb/70-pointingstick.hwdb: 5 match groups, 14 matches, 7 properties, 0.06518816947937012s to parse
hwdb/70-touchpad.hwdb: 3 match groups, 5 matches, 3 properties, 0.039690494537353516s to parse

Subsequest commits will clean those issues up.
2016-08-09 00:42:52 -04:00
Zbigniew Jędrzejewski-Szmek 40e7518b03 hwdb: indent commented properties
This way it's clear that the property block does not end at the comment.
The python checker will complain if this is not the case.
We had a few bugs before where two match blocks were merged by mistake,
and this change should help avoid that.
2016-08-09 00:42:52 -04:00
Zbigniew Jędrzejewski-Szmek 3d431503b3 hwdb: remove extra spaces 2016-08-09 00:42:52 -04:00
Peter Hutterer 9c067923cb hwdb: fix duplicate entry for Apple touchpads (#3921)
Copy-paste error, correct IDs from the kernel's drivers/input/mouse/bcm5974.c

Fixes: https://github.com/systemd/systemd/pull/3906/
2016-08-09 00:58:19 +02:00
romanstingler 3f193af880 hwdb: add multimedia keys for Medion Akoya series (#3918) 2016-08-07 11:45:44 -04:00
Peter Hutterer d26d41f36c hwdb: fix hwdb entry for numeric-only Lenovo *40, *50 and *60 series
Commit e5bc3f4fdc matches on e.g. a T440s, but not a T440 (i.e. the one
without a suffix).
2016-08-04 09:57:36 +10:00
Peter Hutterer e5bc3f4fdc hwdb: compress the various Lenovo *40, *50 and *60 series (#3877)
Each series has identical hardware, let's use a glob instead of listing them
one by one.
2016-08-03 13:12:37 +02:00
Peter Hutterer d5c3b228f0 hwdb: add ID_INPUT_TRACKBALL as additional identifier (#3872)
Whether a device is a trackball or not is a physical property so we should
store this globally, in one place. The new property must be set in addition to
ID_INPUT_MOUSE, otherwise existing clients won't detect the device.

No actual code changes required, the default match rule is simply checking for
"Trackball" in the name (in a few versions), other entries need to be added
manually.
2016-08-03 12:34:56 +02:00
Dennis Wassenberg 57b8b16237 hwdb: add Lenovo X260 pointing stick speed fix
Like many other recent thinkpads the factory default pointingstick
sensitivity on these devices is quite low, making the pointingstick
very slow in moving the cursor.

This extends the existing hwdb rules for tweaking the sensitivity to
also apply to the X260 models.
2016-07-27 11:01:27 +02:00