Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync the HWDB with systemd to get newer hardware supported correctly. #176

Closed
thomas-t-w opened this issue Aug 1, 2019 · 8 comments
Closed
Labels
feedback Awaits feedback

Comments

@thomas-t-w
Copy link

There has been a lot of changes to the hwdb upstream. I don't know enough about eudev to feel comfortable working on it myself but I wanted to just open an issue about this for someone who has a good understanding of how all this works.

@blueness
Copy link
Contributor

I just updated the hwdb, but didn't do a tagged release. Can you test and see if it works for you. If it does, I'll create a tagged release.

@ghost
Copy link

ghost commented Sep 1, 2019

The hwdb update fixes an issue with the touchpad of my laptop. May you please consider creating a tagged release. I think it would be a good idea to keep the hwdb in sync with the latest systemd release. Below is a diff between the results of libinput record [device] before and after the update.

--- old_record
+++ record
@@ -7,34 +7,145 @@
   kernel: "5.2.11"
 devices:
-- node: /dev/input/event8
+- node: /dev/input/event7
   evdev:
-    # Name: Apple Inc. Apple Internal Keyboard / Trackpad
-    # ID: bus 0x3 vendor 0x5ac product 0x291 version 0x171
+    # Name: bcm5974
+    # ID: bus 0x3 vendor 0x5ac product 0x291 version 0x1
+    # Size in mm: unknown, missing resolution
     # Supported Events:
     # Event type 0 (EV_SYN)
     # Event type 1 (EV_KEY)
     #   Event code 272 (BTN_LEFT)
-    #   Event code 273 (BTN_RIGHT)
-    #   Event code 274 (BTN_MIDDLE)
-    #   Event code 275 (BTN_SIDE)
-    #   Event code 276 (BTN_EXTRA)
-    # Event type 2 (EV_REL)
-    #   Event code 0 (REL_X)
-    #   Event code 1 (REL_Y)
-    #   Event code 8 (REL_WHEEL)
+    #   Event code 325 (BTN_TOOL_FINGER)
+    #   Event code 328 (BTN_TOOL_QUINTTAP)
+    #   Event code 330 (BTN_TOUCH)
+    #   Event code 333 (BTN_TOOL_DOUBLETAP)
+    #   Event code 334 (BTN_TOOL_TRIPLETAP)
+    #   Event code 335 (BTN_TOOL_QUADTAP)
+    # Event type 3 (EV_ABS)
+    #   Event code 0 (ABS_X)
+    #       Value        -419
+    #       Min         -4620
+    #       Max          5140
+    #       Fuzz            0
+    #       Flat            0
+    #       Resolution      0
+    #   Event code 1 (ABS_Y)
+    #       Value        2899
+    #       Min          -150
+    #       Max          6600
+    #       Fuzz            0
+    #       Flat            0
+    #       Resolution      0
+    #   Event code 24 (ABS_PRESSURE)
+    #       Value           0
+    #       Min             0
+    #       Max           256
+    #       Fuzz            5
+    #       Flat            0
+    #       Resolution      0
+    #   Event code 28 (ABS_TOOL_WIDTH)
+    #       Value           0
+    #       Min             0
+    #       Max            16
+    #       Fuzz            0
+    #       Flat            0
+    #       Resolution      0
+    #   Event code 47 (ABS_MT_SLOT)
+    #       Value           0
+    #       Min             0
+    #       Max            15
+    #       Fuzz            0
+    #       Flat            0
+    #       Resolution      0
+    #   Event code 48 (ABS_MT_TOUCH_MAJOR)
+    #       Value           0
+    #       Min             0
+    #       Max          2048
+    #       Fuzz           81
+    #       Flat            0
+    #       Resolution      0
+    #   Event code 49 (ABS_MT_TOUCH_MINOR)
+    #       Value           0
+    #       Min             0
+    #       Max          2048
+    #       Fuzz           81
+    #       Flat            0
+    #       Resolution      0
+    #   Event code 50 (ABS_MT_WIDTH_MAJOR)
+    #       Value           0
+    #       Min             0
+    #       Max          2048
+    #       Fuzz           81
+    #       Flat            0
+    #       Resolution      0
+    #   Event code 51 (ABS_MT_WIDTH_MINOR)
+    #       Value           0
+    #       Min             0
+    #       Max          2048
+    #       Fuzz           81
+    #       Flat            0
+    #       Resolution      0
+    #   Event code 52 (ABS_MT_ORIENTATION)
+    #       Value           0
+    #       Min        -16384
+    #       Max         16384
+    #       Fuzz         3276
+    #       Flat            0
+    #       Resolution      0
+    #   Event code 53 (ABS_MT_POSITION_X)
+    #       Value           0
+    #       Min         -4620
+    #       Max          5140
+    #       Fuzz           39
+    #       Flat            0
+    #       Resolution      0
+    #   Event code 54 (ABS_MT_POSITION_Y)
+    #       Value           0
+    #       Min          -150
+    #       Max          6600
+    #       Fuzz           27
+    #       Flat            0
+    #       Resolution      0
+    #   Event code 57 (ABS_MT_TRACKING_ID)
+    #       Value           0
+    #       Min             0
+    #       Max         65535
+    #       Fuzz            0
+    #       Flat            0
+    #       Resolution      0
     # Properties:
-    name: "Apple Inc. Apple Internal Keyboard / Trackpad"
-    id: [3, 1452, 657, 369]
+    #    Property 0 (INPUT_PROP_POINTER)
+    #    Property 2 (INPUT_PROP_BUTTONPAD)
+    name: "bcm5974"
+    id: [3, 1452, 657, 1]
     codes:
       0: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15] # EV_SYN
-      1: [272, 273, 274, 275, 276] # EV_KEY
-      2: [0, 1, 8] # EV_REL
-    properties: []
+      1: [272, 325, 328, 330, 333, 334, 335] # EV_KEY
+      3: [0, 1, 24, 28, 47, 48, 49, 50, 51, 52, 53, 54, 57] # EV_ABS
+    absinfo:
+      0: [-4620, 5140, 0, 0, 0]
+      1: [-150, 6600, 0, 0, 0]
+      24: [0, 256, 5, 0, 0]
+      28: [0, 16, 0, 0, 0]
+      47: [0, 15, 0, 0, 0]
+      48: [0, 2048, 81, 0, 0]
+      49: [0, 2048, 81, 0, 0]
+      50: [0, 2048, 81, 0, 0]
+      51: [0, 2048, 81, 0, 0]
+      52: [-16384, 16384, 3276, 0, 0]
+      53: [-4620, 5140, 39, 0, 0]
+      54: [-150, 6600, 27, 0, 0]
+      57: [0, 65535, 0, 0, 0]
+    properties: [0, 2]
   udev:
     properties:
     - ID_INPUT=1
-    - ID_INPUT_MOUSE=1
+    - ID_INPUT_TOUCHPAD=1
+    - ID_INPUT_TOUCHPAD_INTEGRATION=internal
   quirks:
-  - AttrKeyboardIntegration=internal
+  - ModelAppleTouchpad=1
+  - AttrSizeHint=104x75
+  - AttrTouchSizeRange=150:130
+  - AttrPalmSizeThreshold=800
   events:

@ghost
Copy link

ghost commented Sep 2, 2019

Sorry, but with the hwdb update the touchpad works erratically after a cold boot; however, a reboot solves the problem. I fixed it permanently blacklisting the usbmouse module. Please notice that before the update the touchpad worked properly just sporadically, otherwise with the same erratic behavior.

Pardon for the chatter, but I hope this will be useful if someone has the same issue. My laptop is a MacBook Air 7,2.

@bbonev
Copy link
Member

bbonev commented Oct 3, 2023

Can you please confirm if that is still the case with the latest release?

@bbonev bbonev added the feedback Awaits feedback label Oct 3, 2023
@vicencb
Copy link

vicencb commented May 22, 2024

Hi, i've got a .hwdb file that works on systemd (arch) but doesn't with eudev (alpine):

evdev:input:b0003v047Dp2041*
 KEYBOARD_KEY_0xff000002=btn_middle
 KEYBOARD_KEY_0xff000001=btn_left

The .hwdb file is compiled with udevadm hwdb --update and applied with udevadm trigger. Also tried regenerating the initrd and rebooting, but the trackball buttons are not remapped.

I also tested with mouse:*:name:*Trackball*:* as the match pattern as described in the man page. The command udevadm info -a -n /dev/input/event8 indeed reports that the name contains the word Trackball.

How can i debug the issue?

@vicencb
Copy link

vicencb commented May 28, 2024

I've done some research and found a bug that explains why my case does not work. I'll open a bug report for it.

@bbonev: This bug can be closed, the feedback label is awaiting for an account that has been deleted.

@bbonev
Copy link
Member

bbonev commented May 29, 2024

Thanks! Please describe the bug or file a PR

@bbonev bbonev closed this as completed May 29, 2024
@vicencb
Copy link

vicencb commented May 29, 2024

The bug report is #283 and the associated PR is #284.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feedback Awaits feedback
Projects
None yet
Development

No branches or pull requests

4 participants