mirror of
https://github.com/systemd/systemd
synced 2024-07-23 19:25:39 +00:00
3a7771c9c4
This reverts commit c0443b97b7
.
I got various cases wrong:
"usb:v04F3p2B7Cd5912dc00dsc00dp00ic03isc00ip00in00"
"usb:v0627p0001:QEMU USB Tablet"
"input:b0003v0627p0001e0001-e0,1,2,4,k110,111,112,r0,1,8,B,am4,lsfw"
OTOH:
-evdev:name:ETPS/2 Elantech Touchpad:dmi:*svnASUSTeKComputerInc.:pnN53SV:*
+evdev:name:ETPS/2 Elantech Touchpad:dmi:*svnASUSTeKComputerInc.:pnN53SV*
is OK. Other parts follow after 'pn'.
-mouse:*:name:*Trackball*:*
-mouse:*:name:*trackball*:*
-mouse:*:name:*TrackBall*:*
+mouse:*:name:*Trackball*:
+mouse:*:name:*trackball*:
+mouse:*:name:*TrackBall*:
... and anything else with :name should be OK too, because our imports always
include ":" at the end:
IMPORT{builtin}="hwdb 'joystick:$env{ID_BUS}:v$attr{id/vendor}p$attr{id/product}:name:$attr{name}:'"
Including '*' at the end makes the pattern work even if we decide to add
something to the match string later.
Fixes #17499.
25 lines
939 B
Python
Executable file
25 lines
939 B
Python
Executable file
#!/usr/bin/env python3
|
|
# SPDX-License-Identifier: LGPL-2.1+
|
|
|
|
# Generate autosuspend rules for devices that have been tested to work properly
|
|
# with autosuspend by the Chromium OS team. Based on
|
|
# https://chromium.googlesource.com/chromiumos/platform2/+/master/power_manager/udev/gen_autosuspend_rules.py
|
|
|
|
import chromiumos.gen_autosuspend_rules
|
|
|
|
print('# pci:v<00VENDOR>d<00DEVICE> (8 uppercase hexadecimal digits twice)')
|
|
for entry in chromiumos.gen_autosuspend_rules.PCI_IDS:
|
|
vendor, device = entry.split(':')
|
|
vendor = int(vendor, 16)
|
|
device = int(device, 16)
|
|
print('pci:v{:08X}d{:08X}*'.format(vendor, device))
|
|
|
|
print('# usb:v<VEND>p<PROD> (4 uppercase hexadecimal digits twice)')
|
|
for entry in chromiumos.gen_autosuspend_rules.USB_IDS:
|
|
vendor, product = entry.split(':')
|
|
vendor = int(vendor, 16)
|
|
product = int(product, 16)
|
|
print('usb:v{:04X}p{:04X}*'.format(vendor, product))
|
|
|
|
print(' ID_AUTOSUSPEND=1')
|