summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hwdb.d/70-analyzers.hwdb33
-rw-r--r--hwdb.d/meson.build1
-rwxr-xr-xhwdb.d/parse_hwdb.py1
-rw-r--r--src/login/70-uaccess.rules.in3
4 files changed, 38 insertions, 0 deletions
diff --git a/hwdb.d/70-analyzers.hwdb b/hwdb.d/70-analyzers.hwdb
new file mode 100644
index 0000000000..4865f0b669
--- /dev/null
+++ b/hwdb.d/70-analyzers.hwdb
@@ -0,0 +1,33 @@
+# This file is part of systemd.
+#
+# Database for signal analyzers (protocol analyzers, logic analyzers,
+# oscilloscopes, multimeters, bench power supplies, etc.) that should
+# be accessible to the seat owner.
+#
+# Permitted keys:
+# Specify if a device is a signal analyzer
+# ID_SIGNAL_ANALYZER=1|0
+
+###########################################################
+# Total Phase
+###########################################################
+# Aarvark I2C/SPI Host Adapter
+usb:v0403pe0d0*
+ ID_SIGNAL_ANALYZER=1
+
+# Beagle Protocol Analyzers
+usb:v1679p2001*
+ ID_SIGNAL_ANALYZER=1
+
+# Cheetah SPI Host Adapter
+usb:v1679p2002*
+ ID_SIGNAL_ANALYZER=1
+
+# Komodo CAN Duo Interface
+usb:v1679p3001*
+ ID_SIGNAL_ANALYZER=1
+
+# Power Delivery Analyzers
+usb:v1679p6003*
+usb:v0483pdf11*
+ ID_SIGNAL_ANALYZER=1
diff --git a/hwdb.d/meson.build b/hwdb.d/meson.build
index 4f3560e37f..fc6ee7c649 100644
--- a/hwdb.d/meson.build
+++ b/hwdb.d/meson.build
@@ -27,6 +27,7 @@ hwdb_files_test = files('''
60-keyboard.hwdb
60-seat.hwdb
60-sensor.hwdb
+ 70-analyzers.hwdb
70-joystick.hwdb
70-mouse.hwdb
70-pointingstick.hwdb
diff --git a/hwdb.d/parse_hwdb.py b/hwdb.d/parse_hwdb.py
index 3cd4b486a6..dea71acfe9 100755
--- a/hwdb.d/parse_hwdb.py
+++ b/hwdb.d/parse_hwdb.py
@@ -147,6 +147,7 @@ def property_grammar():
('ID_INPUT_TOUCHPAD', Or((Literal('0'), Literal('1')))),
('ID_INPUT_TOUCHSCREEN', Or((Literal('0'), Literal('1')))),
('ID_INPUT_TRACKBALL', Or((Literal('0'), Literal('1')))),
+ ('ID_SIGNAL_ANALYZER', Or((Literal('0'), Literal('1')))),
('POINTINGSTICK_SENSITIVITY', INTEGER),
('POINTINGSTICK_CONST_ACCEL', REAL),
('ID_INPUT_JOYSTICK_INTEGRATION', Or(('internal', 'external'))),
diff --git a/src/login/70-uaccess.rules.in b/src/login/70-uaccess.rules.in
index 56e1087fef..28740ea647 100644
--- a/src/login/70-uaccess.rules.in
+++ b/src/login/70-uaccess.rules.in
@@ -80,4 +80,7 @@ ENV{ID_SOFTWARE_RADIO}=="?*", TAG+="uaccess"
# 3D printers, CNC machines, laser cutters, 3D scanners, etc.
ENV{ID_MAKER_TOOL}=="?*", TAG+="uaccess"
+# Protocol analyzers
+ENV{ID_SIGNAL_ANALYZER}=="?*", ENV{DEVTYPE}=="usb_device", TAG+="uaccess"
+
LABEL="uaccess_end"