mirror of
https://github.com/clearlinux/clr-init.git
synced 2026-08-19 04:07:31 +00:00
clr-init: adding load modules and emergency mode support
if something fails the initrd will provide a shell to see what was wrong also now load kernel modules from an additional cpio file is posible this cpio file just must have the path /usr/lib/modules/$(uname -r)/ with the common kernel modules tree and module.* files to be loaded. Signed-off-by: Josue David Hernandez <josue.d.hernandez.gutierrez@intel.com>
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
BINFILES=`cat bin_files`
|
||||
|
||||
all:
|
||||
@mkdir -p initramfs/{sys,dev,proc,tmp,var,sysroot,usr/bin,usr/lib/systemd/system-generators,usr/lib64,run,root} && \
|
||||
@mkdir -p initramfs/{sys,dev,proc,tmp,var,sysroot,usr/sbin,usr/bin,usr/lib/systemd/system-generators,usr/lib64,usr/lib64/multipath,run,root} && \
|
||||
for file in $(BINFILES); \
|
||||
do \
|
||||
cp -f $$file initramfs/$$file;\
|
||||
@@ -20,5 +20,5 @@ clean:
|
||||
do \
|
||||
rm -f initramfs/$$file; \
|
||||
done && \
|
||||
rm -rf initramfs/{sys,dev,proc,tmp,var,sysroot,usr/bin,usr/lib/systemd/system-generators,usr/lib64,run,root} && \
|
||||
rm -rf initramfs/{sys,dev,proc,tmp,var,sysroot,usr/sbin,usr/bin,usr/lib/systemd/system-generators,usr/lib64,usr/lib64/multipath,run,root} && \
|
||||
rm clr-init.cpio.gz
|
||||
|
||||
@@ -1,72 +1,145 @@
|
||||
/usr/bin/bash
|
||||
/usr/bin/blkid
|
||||
/usr/bin/btrfs
|
||||
/usr/bin/coreutils
|
||||
/usr/bin/dmesg
|
||||
/usr/bin/kmod
|
||||
/usr/bin/lsmod
|
||||
/usr/bin/dmsetup
|
||||
/usr/bin/dmeventd
|
||||
/usr/bin/dmsetup
|
||||
/usr/bin/dmstats
|
||||
/usr/bin/systemd-resolve
|
||||
/usr/bin/systemd-escape
|
||||
/usr/bin/systemd-cgtop
|
||||
/usr/bin/systemd-tmpfiles
|
||||
/usr/bin/systemd-machine-id-setup
|
||||
/usr/bin/systemd-hwdb
|
||||
/usr/bin/systemd-detect-virt
|
||||
/usr/bin/systemd-run
|
||||
/usr/bin/systemd-mount
|
||||
/usr/bin/e2fsck
|
||||
/usr/bin/findmnt
|
||||
/usr/bin/flock
|
||||
/usr/bin/fsck
|
||||
/usr/bin/fsck.btrfs
|
||||
/usr/bin/fsck.cramfs
|
||||
/usr/bin/fsck.ext2
|
||||
/usr/bin/fsck.ext3
|
||||
/usr/bin/fsck.ext4
|
||||
/usr/bin/fsck.fat
|
||||
/usr/bin/fsck.xfs
|
||||
/usr/bin/journalctl
|
||||
/usr/bin/kbd_mode
|
||||
/usr/bin/keyctl
|
||||
/usr/bin/kmod
|
||||
/usr/bin/kpartx
|
||||
/usr/bin/less
|
||||
/usr/bin/loadkeys
|
||||
/usr/bin/losetup
|
||||
/usr/bin/lvm
|
||||
/usr/bin/mdadm
|
||||
/usr/bin/mdmon
|
||||
/usr/bin/mount
|
||||
/usr/bin/umount
|
||||
/usr/bin/systemd-notify
|
||||
/usr/bin/systemd-tty-ask-password-agent
|
||||
/usr/bin/systemd-cgls
|
||||
/usr/bin/systemd-cat
|
||||
/usr/bin/systemd-analyze
|
||||
/usr/bin/systemd-nspawn
|
||||
/usr/bin/systemd-delta
|
||||
/usr/bin/systemd-umount
|
||||
/usr/bin/systemd-ask-password
|
||||
/usr/bin/systemd-stdio-bridge
|
||||
/usr/bin/udevadm
|
||||
/usr/bin/mpathpersist
|
||||
/usr/bin/multipath
|
||||
/usr/bin/multipathd
|
||||
/usr/bin/nologin
|
||||
/usr/bin/partx
|
||||
/usr/bin/pdata_tools
|
||||
/usr/bin/pigz
|
||||
/usr/bin/rm
|
||||
/usr/bin/sed
|
||||
/usr/bin/setfont
|
||||
/usr/bin/setsid
|
||||
/usr/bin/swapoff
|
||||
/usr/bin/systemctl
|
||||
/usr/bin/systemd-analyze
|
||||
/usr/bin/systemd-ask-password
|
||||
/usr/bin/systemd-cat
|
||||
/usr/bin/systemd-cgls
|
||||
/usr/bin/systemd-cgtop
|
||||
/usr/bin/systemd-delta
|
||||
/usr/bin/systemd-detect-virt
|
||||
/usr/bin/systemd-escape
|
||||
/usr/bin/systemd-hwdb
|
||||
/usr/bin/systemd-inhibit
|
||||
/usr/bin/systemd-machine-id-setup
|
||||
/usr/bin/systemd-mount
|
||||
/usr/bin/systemd-notify
|
||||
/usr/bin/systemd-nspawn
|
||||
/usr/bin/systemd-path
|
||||
/usr/bin/systemd-resolve
|
||||
/usr/bin/systemd-run
|
||||
/usr/bin/systemd-socket-activate
|
||||
/usr/lib/udev/scsi_id
|
||||
/usr/lib/udev/ata_id
|
||||
/usr/lib/systemd/systemd-udevd
|
||||
/usr/lib/systemd/systemd-binfmt
|
||||
/usr/lib/systemd/systemd-volatile-root
|
||||
/usr/lib/systemd/systemd-localed
|
||||
/usr/lib/systemd/systemd-initctl
|
||||
/usr/lib/systemd/systemd-dissect
|
||||
/usr/lib/systemd/systemd-networkd-wait-online
|
||||
/usr/lib/systemd/systemd-user-sessions
|
||||
/usr/lib/systemd/systemd-timedated
|
||||
/usr/lib/systemd/systemd-remount-fs
|
||||
/usr/lib/systemd/systemd-hibernate-resume
|
||||
/usr/lib/systemd/systemd-journald
|
||||
/usr/lib/systemd/systemd-timesyncd
|
||||
/usr/lib/systemd/systemd-machined
|
||||
/usr/lib/systemd/systemd-socket-proxyd
|
||||
/usr/lib/systemd/systemd-sleep
|
||||
/usr/lib/systemd/systemd-cryptsetup
|
||||
/usr/lib/systemd/systemd-rfkill
|
||||
/usr/lib/systemd/systemd-ac-power
|
||||
/usr/lib/systemd/systemd-logind
|
||||
/usr/lib/systemd/systemd-resolved
|
||||
/usr/lib/systemd/systemd-update-utmp
|
||||
/usr/bin/systemd-stdio-bridge
|
||||
/usr/bin/systemd-tmpfiles
|
||||
/usr/bin/systemd-tty-ask-password-agent
|
||||
/usr/bin/systemd-umount
|
||||
/usr/bin/udevadm
|
||||
/usr/bin/umount
|
||||
/usr/bin/xfs_db
|
||||
/usr/bin/xfs_metadump
|
||||
/usr/bin/xfs_repair
|
||||
/usr/lib/systemd/libsystemd-shared-*.so
|
||||
/usr/lib/systemd/systemd-random-seed
|
||||
/usr/lib/systemd/systemd-networkd
|
||||
/usr/lib/systemd/systemd
|
||||
/usr/lib/systemd/systemd-fsck
|
||||
/usr/lib/systemd/systemd-sysctl
|
||||
/usr/lib/systemd/systemd-vconsole-setup
|
||||
/usr/lib/systemd/systemd-modules-load
|
||||
/usr/lib/systemd/systemd-reply-password
|
||||
/usr/lib/systemd/systemd-shutdown
|
||||
/usr/lib/systemd/systemd-sulogin-shell
|
||||
/usr/lib/systemd/systemd-ac-power
|
||||
/usr/lib/systemd/systemd-backlight
|
||||
/usr/lib/systemd/system-generators/systemd-debug-generator
|
||||
/usr/lib/systemd/system-generators/systemd-gpt-auto-generator
|
||||
/usr/lib/systemd/system-generators/systemd-getty-generator
|
||||
/usr/lib/systemd/systemd-binfmt
|
||||
/usr/lib/systemd/systemd-cgroups-agent
|
||||
/usr/lib/systemd/systemd-cryptsetup
|
||||
/usr/lib/systemd/systemd-dissect
|
||||
/usr/lib/systemd/systemd-fsck
|
||||
/usr/lib/systemd/systemd-hibernate-resume
|
||||
/usr/lib/systemd/systemd-hostnamed
|
||||
/usr/lib/systemd/systemd-initctl
|
||||
/usr/lib/systemd/systemd-journald
|
||||
/usr/lib/systemd/systemd-localed
|
||||
/usr/lib/systemd/systemd-logind
|
||||
/usr/lib/systemd/systemd-machined
|
||||
/usr/lib/systemd/systemd-modules-load
|
||||
/usr/lib/systemd/systemd-networkd
|
||||
/usr/lib/systemd/systemd-networkd-wait-online
|
||||
/usr/lib/systemd/systemd-random-seed
|
||||
/usr/lib/systemd/systemd-remount-fs
|
||||
/usr/lib/systemd/systemd-reply-password
|
||||
/usr/lib/systemd/systemd-resolved
|
||||
/usr/lib/systemd/systemd-rfkill
|
||||
/usr/lib/systemd/systemd-shutdown
|
||||
/usr/lib/systemd/systemd-sleep
|
||||
/usr/lib/systemd/systemd-socket-proxyd
|
||||
/usr/lib/systemd/systemd-sulogin-shell
|
||||
/usr/lib/systemd/systemd-sysctl
|
||||
/usr/lib/systemd/systemd-timedated
|
||||
/usr/lib/systemd/systemd-timesyncd
|
||||
/usr/lib/systemd/systemd-udevd
|
||||
/usr/lib/systemd/systemd-update-utmp
|
||||
/usr/lib/systemd/systemd-user-sessions
|
||||
/usr/lib/systemd/systemd-vconsole-setup
|
||||
/usr/lib/systemd/systemd-volatile-root
|
||||
/usr/lib/systemd/system-generators/systemd-cryptsetup-generator
|
||||
/usr/lib/systemd/system-generators/systemd-debug-generator
|
||||
/usr/lib/systemd/system-generators/systemd-fstab-generator
|
||||
/usr/lib/systemd/system-generators/systemd-getty-generator
|
||||
/usr/lib/systemd/system-generators/systemd-gpt-auto-generator
|
||||
/usr/lib/udev/ata_id
|
||||
/usr/lib/udev/scsi_id
|
||||
/usr/lib64/libnss_files-*.so
|
||||
/usr/lib/systemd/systemd-cgroups-agent
|
||||
/usr/lib/systemd/systemd-hostnamed
|
||||
/usr/lib/systemd/systemd-sulogin-shell
|
||||
/usr/bin/sulogin
|
||||
/usr/lib64/libnss_altfiles.so.*
|
||||
/usr/lib64/libnss_files.so.*
|
||||
/usr/bin/sh
|
||||
/usr/bin/bash
|
||||
/usr/bin/ls
|
||||
/usr/bin/cat
|
||||
/usr/sbin/multipath
|
||||
/usr/bin/modprobe
|
||||
/usr/lib/udev/ata_id
|
||||
/usr/lib/udev/cdrom_id
|
||||
/usr/lib/udev/collect
|
||||
/usr/lib/udev/hid2hci
|
||||
/usr/lib/udev/kpartx_id
|
||||
/usr/lib/udev/libinput-device-group
|
||||
/usr/lib/udev/libinput-model-quirks
|
||||
/usr/lib/udev/mtd_probe
|
||||
/usr/lib/udev/mtp-probe
|
||||
/usr/lib/udev/scsi_id
|
||||
/usr/lib/udev/tbtacl
|
||||
/usr/lib/udev/tbtacl-write
|
||||
/usr/lib/udev/tbtxdomain
|
||||
/usr/lib/udev/v4l_id
|
||||
/usr/lib64/multipath/*
|
||||
|
||||
Symlink
+1
@@ -0,0 +1 @@
|
||||
usr/sbin
|
||||
@@ -0,0 +1,30 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
[Unit]
|
||||
Description=Emergency Shell
|
||||
Documentation=man:sulogin(8)
|
||||
DefaultDependencies=no
|
||||
Conflicts=shutdown.target
|
||||
Conflicts=rescue.service
|
||||
Before=shutdown.target
|
||||
Before=rescue.service
|
||||
|
||||
[Service]
|
||||
Environment=HOME=/root
|
||||
WorkingDirectory=-/root
|
||||
ExecStartPre=-/bin/plymouth --wait quit
|
||||
ExecStart=-/usr/lib/systemd/systemd-sulogin-shell emergency
|
||||
Type=idle
|
||||
StandardInput=tty-force
|
||||
StandardOutput=inherit
|
||||
StandardError=inherit
|
||||
KillMode=process
|
||||
IgnoreSIGPIPE=no
|
||||
SendSIGHUP=yes
|
||||
+1
@@ -0,0 +1 @@
|
||||
../systemd-vconsole-setup.service
|
||||
@@ -0,0 +1 @@
|
||||
../getty@.service
|
||||
@@ -0,0 +1,20 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
[Unit]
|
||||
Description=Create list of required static device nodes for the current kernel
|
||||
DefaultDependencies=no
|
||||
Before=sysinit.target systemd-tmpfiles-setup-dev.service
|
||||
ConditionCapability=CAP_SYS_MODULE
|
||||
ConditionFileNotEmpty=/lib/modules/%v/modules.devname
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
RemainAfterExit=yes
|
||||
ExecStart=/usr/bin/kmod static-nodes --format=tmpfiles --output=/run/tmpfiles.d/kmod.conf
|
||||
+1
@@ -0,0 +1 @@
|
||||
../systemd-journald-audit.socket
|
||||
+1
@@ -0,0 +1 @@
|
||||
../systemd-journald-dev-log.socket
|
||||
@@ -0,0 +1 @@
|
||||
../systemd-journald.socket
|
||||
+1
@@ -0,0 +1 @@
|
||||
../systemd-journal-flush-msft.service
|
||||
+1
@@ -0,0 +1 @@
|
||||
../systemd-journal-flush.service
|
||||
@@ -0,0 +1 @@
|
||||
../systemd-journald.service
|
||||
@@ -0,0 +1,47 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
[Unit]
|
||||
Description=Syslog Socket
|
||||
Documentation=man:systemd.special(7)
|
||||
Documentation=https://www.freedesktop.org/wiki/Software/systemd/syslog
|
||||
DefaultDependencies=no
|
||||
Before=sockets.target
|
||||
|
||||
# Don't allow logging until the very end
|
||||
Conflicts=shutdown.target
|
||||
Before=shutdown.target
|
||||
|
||||
# Don't try to activate syslog.service if sysinit.target has failed.
|
||||
Conflicts=emergency.service
|
||||
Before=emergency.service
|
||||
|
||||
[Socket]
|
||||
ListenDatagram=/run/systemd/journal/syslog
|
||||
SocketMode=0666
|
||||
PassCredentials=yes
|
||||
PassSecurity=yes
|
||||
ReceiveBuffer=8M
|
||||
|
||||
# The default syslog implementation should make syslog.service a
|
||||
# symlink to itself, so that this socket activates the right actual
|
||||
# syslog service.
|
||||
#
|
||||
# Examples:
|
||||
#
|
||||
# /etc/systemd/system/syslog.service -> /lib/systemd/system/rsyslog.service
|
||||
# /etc/systemd/system/syslog.service -> /lib/systemd/system/syslog-ng.service
|
||||
#
|
||||
# Best way to achieve that is by adding this to your unit file
|
||||
# (i.e. to rsyslog.service or syslog-ng.service):
|
||||
#
|
||||
# [Install]
|
||||
# Alias=syslog.service
|
||||
#
|
||||
# See https://www.freedesktop.org/wiki/Software/systemd/syslog for details.
|
||||
@@ -0,0 +1,22 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
[Unit]
|
||||
Description=Flush Journal to Persistent Storage
|
||||
Documentation=man:systemd-journald.service(8) man:journald.conf(5)
|
||||
DefaultDependencies=no
|
||||
Requires=systemd-journald.service
|
||||
After=systemd-journald.service
|
||||
After=systemd-remount-fs.service
|
||||
RequiresMountsFor=/var/log/journal
|
||||
ConditionVirtualization=microsoft
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/journalctl --flush
|
||||
Type=oneshot
|
||||
RemainAfterExit=yes
|
||||
TimeoutSec=90s
|
||||
@@ -0,0 +1,25 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
[Unit]
|
||||
Description=Flush Journal to Persistent Storage
|
||||
Documentation=man:systemd-journald.service(8) man:journald.conf(5)
|
||||
DefaultDependencies=no
|
||||
Requires=systemd-journald.service
|
||||
After=systemd-journald.service
|
||||
After=systemd-remount-fs.service
|
||||
Before=systemd-user-sessions.service systemd-tmpfiles-setup.service
|
||||
RequiresMountsFor=/var/log/journal
|
||||
ConditionVirtualization=!microsoft
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/journalctl --flush
|
||||
Type=oneshot
|
||||
RemainAfterExit=yes
|
||||
TimeoutSec=90s
|
||||
@@ -0,0 +1,22 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
[Unit]
|
||||
Description=Journal Audit Socket
|
||||
Documentation=man:systemd-journald.service(8) man:journald.conf(5)
|
||||
DefaultDependencies=no
|
||||
Before=sockets.target
|
||||
ConditionSecurity=audit
|
||||
ConditionCapability=CAP_AUDIT_READ
|
||||
|
||||
[Socket]
|
||||
Service=systemd-journald.service
|
||||
ReceiveBuffer=128M
|
||||
ListenNetlink=audit 1
|
||||
PassCredentials=yes
|
||||
@@ -0,0 +1,34 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
[Unit]
|
||||
Description=Journal Socket (/dev/log)
|
||||
Documentation=man:systemd-journald.service(8) man:journald.conf(5)
|
||||
DefaultDependencies=no
|
||||
Before=sockets.target
|
||||
|
||||
# Mount and swap units need this. If this socket unit is removed by an
|
||||
# isolate request the mount and swap units would be removed too,
|
||||
# hence let's exclude this from isolate requests.
|
||||
IgnoreOnIsolate=yes
|
||||
|
||||
[Socket]
|
||||
Service=systemd-journald.service
|
||||
ListenDatagram=/run/systemd/journal/dev-log
|
||||
Symlinks=/dev/log
|
||||
SocketMode=0666
|
||||
PassCredentials=yes
|
||||
PassSecurity=yes
|
||||
|
||||
# Increase both the send and receive buffer, so that things don't
|
||||
# block early. Note that journald internally uses the this socket both
|
||||
# for receiving syslog messages, and for forwarding them to any other
|
||||
# syslog, hence we bump both values.
|
||||
ReceiveBuffer=8M
|
||||
SendBuffer=8M
|
||||
@@ -0,0 +1,42 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
[Unit]
|
||||
Description=Journal Service
|
||||
Documentation=man:systemd-journald.service(8) man:journald.conf(5)
|
||||
DefaultDependencies=no
|
||||
Requires=systemd-journald.socket
|
||||
After=systemd-journald.socket systemd-journald-dev-log.socket systemd-journald-audit.socket syslog.socket
|
||||
Before=sysinit.target
|
||||
|
||||
[Service]
|
||||
Type=notify
|
||||
Sockets=systemd-journald.socket systemd-journald-dev-log.socket systemd-journald-audit.socket
|
||||
ExecStart=/usr/lib/systemd/systemd-journald
|
||||
Restart=always
|
||||
RestartSec=0
|
||||
StandardOutput=null
|
||||
WatchdogSec=3min
|
||||
FileDescriptorStoreMax=4224
|
||||
CapabilityBoundingSet=CAP_SYS_ADMIN CAP_DAC_OVERRIDE CAP_SYS_PTRACE CAP_SYSLOG CAP_AUDIT_CONTROL CAP_AUDIT_READ CAP_CHOWN CAP_DAC_READ_SEARCH CAP_FOWNER CAP_SETUID CAP_SETGID CAP_MAC_OVERRIDE
|
||||
MemoryDenyWriteExecute=yes
|
||||
RestrictRealtime=yes
|
||||
RestrictNamespaces=yes
|
||||
RestrictAddressFamilies=AF_UNIX AF_NETLINK
|
||||
SystemCallFilter=@system-service
|
||||
SystemCallErrorNumber=EPERM
|
||||
SystemCallArchitectures=native
|
||||
LockPersonality=yes
|
||||
IPAddressDeny=any
|
||||
|
||||
# Increase the default a bit in order to allow many simultaneous
|
||||
# services being run since we keep one fd open per service. Also, when
|
||||
# flushing journal files to disk, we might need a lot of fds when many
|
||||
# journal files are combined.
|
||||
LimitNOFILE=16384
|
||||
@@ -0,0 +1,28 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
[Unit]
|
||||
Description=Journal Socket
|
||||
Documentation=man:systemd-journald.service(8) man:journald.conf(5)
|
||||
DefaultDependencies=no
|
||||
Before=sockets.target
|
||||
|
||||
# Mount and swap units need this. If this socket unit is removed by an
|
||||
# isolate request the mount and swap units would be removed too,
|
||||
# hence let's exclude this from isolate requests.
|
||||
IgnoreOnIsolate=yes
|
||||
|
||||
[Socket]
|
||||
ListenStream=/run/systemd/journal/stdout
|
||||
ListenDatagram=/run/systemd/journal/socket
|
||||
SocketMode=0666
|
||||
PassCredentials=yes
|
||||
PassSecurity=yes
|
||||
ReceiveBuffer=8M
|
||||
Service=systemd-journald.service
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,5 @@
|
||||
# This file is part of systemd.
|
||||
|
||||
# Dell iDRAC Virtual USB NIC
|
||||
usb:v413CpA102*
|
||||
ID_NET_NAME_FROM_DATABASE=idrac
|
||||
@@ -0,0 +1,597 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# Data imported from: http://pci-ids.ucw.cz/v2.2/pci.ids
|
||||
|
||||
pci:v*d*sv*sd*bc00*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Unclassified device
|
||||
|
||||
pci:v*d*sv*sd*bc00sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Non-VGA unclassified device
|
||||
|
||||
pci:v*d*sv*sd*bc00sc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=VGA compatible unclassified device
|
||||
|
||||
pci:v*d*sv*sd*bc01*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Mass storage controller
|
||||
|
||||
pci:v*d*sv*sd*bc01sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=SCSI storage controller
|
||||
|
||||
pci:v*d*sv*sd*bc01sc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=IDE interface
|
||||
|
||||
pci:v*d*sv*sd*bc01sc01i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=ISA Compatibility mode-only controller
|
||||
|
||||
pci:v*d*sv*sd*bc01sc01i05*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=PCI native mode-only controller
|
||||
|
||||
pci:v*d*sv*sd*bc01sc01i0A*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=ISA Compatibility mode controller, supports both channels switched to PCI native mode
|
||||
|
||||
pci:v*d*sv*sd*bc01sc01i0F*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=PCI native mode controller, supports both channels switched to ISA compatibility mode
|
||||
|
||||
pci:v*d*sv*sd*bc01sc01i80*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=ISA Compatibility mode-only controller, supports bus mastering
|
||||
|
||||
pci:v*d*sv*sd*bc01sc01i85*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=PCI native mode-only controller, supports bus mastering
|
||||
|
||||
pci:v*d*sv*sd*bc01sc01i8A*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=ISA Compatibility mode controller, supports both channels switched to PCI native mode, supports bus mastering
|
||||
|
||||
pci:v*d*sv*sd*bc01sc01i8F*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=PCI native mode controller, supports both channels switched to ISA compatibility mode, supports bus mastering
|
||||
|
||||
pci:v*d*sv*sd*bc01sc02*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Floppy disk controller
|
||||
|
||||
pci:v*d*sv*sd*bc01sc03*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=IPI bus controller
|
||||
|
||||
pci:v*d*sv*sd*bc01sc04*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=RAID bus controller
|
||||
|
||||
pci:v*d*sv*sd*bc01sc05*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=ATA controller
|
||||
|
||||
pci:v*d*sv*sd*bc01sc05i20*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=ADMA single stepping
|
||||
|
||||
pci:v*d*sv*sd*bc01sc05i30*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=ADMA continuous operation
|
||||
|
||||
pci:v*d*sv*sd*bc01sc06*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=SATA controller
|
||||
|
||||
pci:v*d*sv*sd*bc01sc06i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Vendor specific
|
||||
|
||||
pci:v*d*sv*sd*bc01sc06i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=AHCI 1.0
|
||||
|
||||
pci:v*d*sv*sd*bc01sc06i02*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Serial Storage Bus
|
||||
|
||||
pci:v*d*sv*sd*bc01sc07*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Serial Attached SCSI controller
|
||||
|
||||
pci:v*d*sv*sd*bc01sc07i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Serial Storage Bus
|
||||
|
||||
pci:v*d*sv*sd*bc01sc08*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Non-Volatile memory controller
|
||||
|
||||
pci:v*d*sv*sd*bc01sc08i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=NVMHCI
|
||||
|
||||
pci:v*d*sv*sd*bc01sc08i02*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=NVM Express
|
||||
|
||||
pci:v*d*sv*sd*bc01sc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Mass storage controller
|
||||
|
||||
pci:v*d*sv*sd*bc02*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Network controller
|
||||
|
||||
pci:v*d*sv*sd*bc02sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Ethernet controller
|
||||
|
||||
pci:v*d*sv*sd*bc02sc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Token ring network controller
|
||||
|
||||
pci:v*d*sv*sd*bc02sc02*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=FDDI network controller
|
||||
|
||||
pci:v*d*sv*sd*bc02sc03*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=ATM network controller
|
||||
|
||||
pci:v*d*sv*sd*bc02sc04*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=ISDN controller
|
||||
|
||||
pci:v*d*sv*sd*bc02sc05*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=WorldFip controller
|
||||
|
||||
pci:v*d*sv*sd*bc02sc06*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=PICMG controller
|
||||
|
||||
pci:v*d*sv*sd*bc02sc07*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Infiniband controller
|
||||
|
||||
pci:v*d*sv*sd*bc02sc08*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Fabric controller
|
||||
|
||||
pci:v*d*sv*sd*bc02sc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Network controller
|
||||
|
||||
pci:v*d*sv*sd*bc03*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Display controller
|
||||
|
||||
pci:v*d*sv*sd*bc03sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=VGA compatible controller
|
||||
|
||||
pci:v*d*sv*sd*bc03sc00i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=VGA controller
|
||||
|
||||
pci:v*d*sv*sd*bc03sc00i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=8514 controller
|
||||
|
||||
pci:v*d*sv*sd*bc03sc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=XGA compatible controller
|
||||
|
||||
pci:v*d*sv*sd*bc03sc02*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=3D controller
|
||||
|
||||
pci:v*d*sv*sd*bc03sc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Display controller
|
||||
|
||||
pci:v*d*sv*sd*bc04*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Multimedia controller
|
||||
|
||||
pci:v*d*sv*sd*bc04sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Multimedia video controller
|
||||
|
||||
pci:v*d*sv*sd*bc04sc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Multimedia audio controller
|
||||
|
||||
pci:v*d*sv*sd*bc04sc02*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Computer telephony device
|
||||
|
||||
pci:v*d*sv*sd*bc04sc03*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Audio device
|
||||
|
||||
pci:v*d*sv*sd*bc04sc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Multimedia controller
|
||||
|
||||
pci:v*d*sv*sd*bc05*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Memory controller
|
||||
|
||||
pci:v*d*sv*sd*bc05sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=RAM memory
|
||||
|
||||
pci:v*d*sv*sd*bc05sc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=FLASH memory
|
||||
|
||||
pci:v*d*sv*sd*bc05sc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Memory controller
|
||||
|
||||
pci:v*d*sv*sd*bc06*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Bridge
|
||||
|
||||
pci:v*d*sv*sd*bc06sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Host bridge
|
||||
|
||||
pci:v*d*sv*sd*bc06sc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=ISA bridge
|
||||
|
||||
pci:v*d*sv*sd*bc06sc02*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=EISA bridge
|
||||
|
||||
pci:v*d*sv*sd*bc06sc03*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=MicroChannel bridge
|
||||
|
||||
pci:v*d*sv*sd*bc06sc04*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=PCI bridge
|
||||
|
||||
pci:v*d*sv*sd*bc06sc04i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Normal decode
|
||||
|
||||
pci:v*d*sv*sd*bc06sc04i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Subtractive decode
|
||||
|
||||
pci:v*d*sv*sd*bc06sc05*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=PCMCIA bridge
|
||||
|
||||
pci:v*d*sv*sd*bc06sc06*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=NuBus bridge
|
||||
|
||||
pci:v*d*sv*sd*bc06sc07*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=CardBus bridge
|
||||
|
||||
pci:v*d*sv*sd*bc06sc08*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=RACEway bridge
|
||||
|
||||
pci:v*d*sv*sd*bc06sc08i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Transparent mode
|
||||
|
||||
pci:v*d*sv*sd*bc06sc08i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Endpoint mode
|
||||
|
||||
pci:v*d*sv*sd*bc06sc09*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Semi-transparent PCI-to-PCI bridge
|
||||
|
||||
pci:v*d*sv*sd*bc06sc09i40*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Primary bus towards host CPU
|
||||
|
||||
pci:v*d*sv*sd*bc06sc09i80*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Secondary bus towards host CPU
|
||||
|
||||
pci:v*d*sv*sd*bc06sc0A*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=InfiniBand to PCI host bridge
|
||||
|
||||
pci:v*d*sv*sd*bc06sc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Bridge
|
||||
|
||||
pci:v*d*sv*sd*bc07*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Communication controller
|
||||
|
||||
pci:v*d*sv*sd*bc07sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Serial controller
|
||||
|
||||
pci:v*d*sv*sd*bc07sc00i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=8250
|
||||
|
||||
pci:v*d*sv*sd*bc07sc00i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=16450
|
||||
|
||||
pci:v*d*sv*sd*bc07sc00i02*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=16550
|
||||
|
||||
pci:v*d*sv*sd*bc07sc00i03*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=16650
|
||||
|
||||
pci:v*d*sv*sd*bc07sc00i04*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=16750
|
||||
|
||||
pci:v*d*sv*sd*bc07sc00i05*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=16850
|
||||
|
||||
pci:v*d*sv*sd*bc07sc00i06*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=16950
|
||||
|
||||
pci:v*d*sv*sd*bc07sc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Parallel controller
|
||||
|
||||
pci:v*d*sv*sd*bc07sc01i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=SPP
|
||||
|
||||
pci:v*d*sv*sd*bc07sc01i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=BiDir
|
||||
|
||||
pci:v*d*sv*sd*bc07sc01i02*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=ECP
|
||||
|
||||
pci:v*d*sv*sd*bc07sc01i03*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=IEEE1284
|
||||
|
||||
pci:v*d*sv*sd*bc07sc01iFE*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=IEEE1284 Target
|
||||
|
||||
pci:v*d*sv*sd*bc07sc02*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Multiport serial controller
|
||||
|
||||
pci:v*d*sv*sd*bc07sc03*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Modem
|
||||
|
||||
pci:v*d*sv*sd*bc07sc03i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Generic
|
||||
|
||||
pci:v*d*sv*sd*bc07sc03i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Hayes/16450
|
||||
|
||||
pci:v*d*sv*sd*bc07sc03i02*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Hayes/16550
|
||||
|
||||
pci:v*d*sv*sd*bc07sc03i03*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Hayes/16650
|
||||
|
||||
pci:v*d*sv*sd*bc07sc03i04*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Hayes/16750
|
||||
|
||||
pci:v*d*sv*sd*bc07sc04*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=GPIB controller
|
||||
|
||||
pci:v*d*sv*sd*bc07sc05*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Smard Card controller
|
||||
|
||||
pci:v*d*sv*sd*bc07sc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Communication controller
|
||||
|
||||
pci:v*d*sv*sd*bc08*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Generic system peripheral
|
||||
|
||||
pci:v*d*sv*sd*bc08sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=PIC
|
||||
|
||||
pci:v*d*sv*sd*bc08sc00i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=8259
|
||||
|
||||
pci:v*d*sv*sd*bc08sc00i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=ISA PIC
|
||||
|
||||
pci:v*d*sv*sd*bc08sc00i02*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=EISA PIC
|
||||
|
||||
pci:v*d*sv*sd*bc08sc00i10*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=IO-APIC
|
||||
|
||||
pci:v*d*sv*sd*bc08sc00i20*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=IO(X)-APIC
|
||||
|
||||
pci:v*d*sv*sd*bc08sc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=DMA controller
|
||||
|
||||
pci:v*d*sv*sd*bc08sc01i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=8237
|
||||
|
||||
pci:v*d*sv*sd*bc08sc01i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=ISA DMA
|
||||
|
||||
pci:v*d*sv*sd*bc08sc01i02*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=EISA DMA
|
||||
|
||||
pci:v*d*sv*sd*bc08sc02*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Timer
|
||||
|
||||
pci:v*d*sv*sd*bc08sc02i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=8254
|
||||
|
||||
pci:v*d*sv*sd*bc08sc02i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=ISA Timer
|
||||
|
||||
pci:v*d*sv*sd*bc08sc02i02*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=EISA Timers
|
||||
|
||||
pci:v*d*sv*sd*bc08sc02i03*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=HPET
|
||||
|
||||
pci:v*d*sv*sd*bc08sc03*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=RTC
|
||||
|
||||
pci:v*d*sv*sd*bc08sc03i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Generic
|
||||
|
||||
pci:v*d*sv*sd*bc08sc03i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=ISA RTC
|
||||
|
||||
pci:v*d*sv*sd*bc08sc04*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=PCI Hot-plug controller
|
||||
|
||||
pci:v*d*sv*sd*bc08sc05*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=SD Host controller
|
||||
|
||||
pci:v*d*sv*sd*bc08sc06*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=IOMMU
|
||||
|
||||
pci:v*d*sv*sd*bc08sc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=System peripheral
|
||||
|
||||
pci:v*d*sv*sd*bc09*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Input device controller
|
||||
|
||||
pci:v*d*sv*sd*bc09sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Keyboard controller
|
||||
|
||||
pci:v*d*sv*sd*bc09sc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Digitizer Pen
|
||||
|
||||
pci:v*d*sv*sd*bc09sc02*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Mouse controller
|
||||
|
||||
pci:v*d*sv*sd*bc09sc03*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Scanner controller
|
||||
|
||||
pci:v*d*sv*sd*bc09sc04*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Gameport controller
|
||||
|
||||
pci:v*d*sv*sd*bc09sc04i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Generic
|
||||
|
||||
pci:v*d*sv*sd*bc09sc04i10*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Extended
|
||||
|
||||
pci:v*d*sv*sd*bc09sc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Input device controller
|
||||
|
||||
pci:v*d*sv*sd*bc0A*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Docking station
|
||||
|
||||
pci:v*d*sv*sd*bc0Asc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Generic Docking Station
|
||||
|
||||
pci:v*d*sv*sd*bc0Asc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Docking Station
|
||||
|
||||
pci:v*d*sv*sd*bc0B*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Processor
|
||||
|
||||
pci:v*d*sv*sd*bc0Bsc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=386
|
||||
|
||||
pci:v*d*sv*sd*bc0Bsc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=486
|
||||
|
||||
pci:v*d*sv*sd*bc0Bsc02*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Pentium
|
||||
|
||||
pci:v*d*sv*sd*bc0Bsc10*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Alpha
|
||||
|
||||
pci:v*d*sv*sd*bc0Bsc20*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Power PC
|
||||
|
||||
pci:v*d*sv*sd*bc0Bsc30*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=MIPS
|
||||
|
||||
pci:v*d*sv*sd*bc0Bsc40*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Co-processor
|
||||
|
||||
pci:v*d*sv*sd*bc0C*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Serial bus controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=FireWire (IEEE 1394)
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc00i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Generic
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc00i10*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=OHCI
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=ACCESS Bus
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc02*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=SSA
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc03*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=USB controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc03i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=UHCI
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc03i10*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=OHCI
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc03i20*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=EHCI
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc03i30*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=XHCI
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc03i80*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=Unspecified
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc03iFE*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=USB Device
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc04*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Fibre Channel
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc05*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=SMBus
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc06*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=InfiniBand
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc07*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=IPMI Interface
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc07i00*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=SMIC
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc07i01*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=KCS
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc07i02*
|
||||
ID_PCI_INTERFACE_FROM_DATABASE=BT (Block Transfer)
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc08*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=SERCOS interface
|
||||
|
||||
pci:v*d*sv*sd*bc0Csc09*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=CANBUS
|
||||
|
||||
pci:v*d*sv*sd*bc0D*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Wireless controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Dsc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=IRDA controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Dsc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Consumer IR controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Dsc10*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=RF controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Dsc11*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Bluetooth
|
||||
|
||||
pci:v*d*sv*sd*bc0Dsc12*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Broadband
|
||||
|
||||
pci:v*d*sv*sd*bc0Dsc20*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=802.1a controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Dsc21*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=802.1b controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Dsc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Wireless controller
|
||||
|
||||
pci:v*d*sv*sd*bc0E*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Intelligent controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Esc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=I2O
|
||||
|
||||
pci:v*d*sv*sd*bc0F*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Satellite communications controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Fsc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Satellite TV controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Fsc02*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Satellite audio communication controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Fsc03*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Satellite voice communication controller
|
||||
|
||||
pci:v*d*sv*sd*bc0Fsc04*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Satellite data communication controller
|
||||
|
||||
pci:v*d*sv*sd*bc10*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Encryption controller
|
||||
|
||||
pci:v*d*sv*sd*bc10sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Network and computing encryption device
|
||||
|
||||
pci:v*d*sv*sd*bc10sc10*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Entertainment encryption device
|
||||
|
||||
pci:v*d*sv*sd*bc10sc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Encryption controller
|
||||
|
||||
pci:v*d*sv*sd*bc11*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Signal processing controller
|
||||
|
||||
pci:v*d*sv*sd*bc11sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=DPIO module
|
||||
|
||||
pci:v*d*sv*sd*bc11sc01*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Performance counters
|
||||
|
||||
pci:v*d*sv*sd*bc11sc10*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Communication synchronizer
|
||||
|
||||
pci:v*d*sv*sd*bc11sc20*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Signal processing management
|
||||
|
||||
pci:v*d*sv*sd*bc11sc80*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Signal processing controller
|
||||
|
||||
pci:v*d*sv*sd*bc12*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Processing accelerators
|
||||
|
||||
pci:v*d*sv*sd*bc12sc00*
|
||||
ID_PCI_SUBCLASS_FROM_DATABASE=Processing accelerators
|
||||
|
||||
pci:v*d*sv*sd*bc13*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Non-Essential Instrumentation
|
||||
|
||||
pci:v*d*sv*sd*bc40*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Coprocessor
|
||||
|
||||
pci:v*d*sv*sd*bcFF*
|
||||
ID_PCI_CLASS_FROM_DATABASE=Unassigned class
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,33 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# Data imported from: hwdb/sdio.ids
|
||||
|
||||
sdio:c00v*d*
|
||||
ID_SDIO_CLASS_FROM_DATABASE=Not a SDIO standard interface
|
||||
|
||||
sdio:c01v*d*
|
||||
ID_SDIO_CLASS_FROM_DATABASE=UART standard interface
|
||||
|
||||
sdio:c02v*d*
|
||||
ID_SDIO_CLASS_FROM_DATABASE=Bluetooth Type-A standard interface
|
||||
|
||||
sdio:c03v*d*
|
||||
ID_SDIO_CLASS_FROM_DATABASE=Bluetooth Type-B standard interface
|
||||
|
||||
sdio:c04v*d*
|
||||
ID_SDIO_CLASS_FROM_DATABASE=GPS standard interface
|
||||
|
||||
sdio:c05v*d*
|
||||
ID_SDIO_CLASS_FROM_DATABASE=Camera standard interface
|
||||
|
||||
sdio:c06v*d*
|
||||
ID_SDIO_CLASS_FROM_DATABASE=PHS standard interface
|
||||
|
||||
sdio:c07v*d*
|
||||
ID_SDIO_CLASS_FROM_DATABASE=WLAN interface
|
||||
|
||||
sdio:c08v*d*
|
||||
ID_SDIO_CLASS_FROM_DATABASE=Embedded SDIO-ATA standard interface
|
||||
|
||||
sdio:c09v*d*
|
||||
ID_SDIO_CLASS_FROM_DATABASE=Bluetooth AMP standard interface
|
||||
@@ -0,0 +1,207 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# Data imported from: hwdb/sdio.ids
|
||||
|
||||
sdio:c*v0020*
|
||||
ID_VENDOR_FROM_DATABASE=ST-Ericsson
|
||||
|
||||
sdio:c*v0020d2280*
|
||||
ID_MODEL_FROM_DATABASE=CW1200
|
||||
|
||||
sdio:c*v0089*
|
||||
ID_VENDOR_FROM_DATABASE=Intel Corp.
|
||||
|
||||
sdio:c*v0092*
|
||||
ID_VENDOR_FROM_DATABASE=C-guys, Inc.
|
||||
|
||||
sdio:c*v0092d0001*
|
||||
ID_MODEL_FROM_DATABASE=SD-Link11b WiFi Card (TI ACX100)
|
||||
|
||||
sdio:c*v0092d0004*
|
||||
ID_MODEL_FROM_DATABASE=EW-CG1102GC
|
||||
|
||||
sdio:c*v0092d0005*
|
||||
ID_MODEL_FROM_DATABASE=SD FM Radio 2
|
||||
|
||||
sdio:c*v0092d5544*
|
||||
ID_MODEL_FROM_DATABASE=SD FM Radio
|
||||
|
||||
sdio:c*v0097*
|
||||
ID_VENDOR_FROM_DATABASE=Texas Instruments, Inc.
|
||||
|
||||
sdio:c*v0097d4076*
|
||||
ID_MODEL_FROM_DATABASE=WL1271
|
||||
|
||||
sdio:c*v0098*
|
||||
ID_VENDOR_FROM_DATABASE=Toshiba Corp.
|
||||
|
||||
sdio:c*v0098d0001*
|
||||
ID_MODEL_FROM_DATABASE=SD BT Card 1
|
||||
|
||||
sdio:c*v0098d0002*
|
||||
ID_MODEL_FROM_DATABASE=SD BT Card 2
|
||||
|
||||
sdio:c*v0098d0003*
|
||||
ID_MODEL_FROM_DATABASE=SD BT Card 3
|
||||
|
||||
sdio:c*v0104*
|
||||
ID_VENDOR_FROM_DATABASE=Socket Communications, Inc.
|
||||
|
||||
sdio:c*v0104d005E*
|
||||
ID_MODEL_FROM_DATABASE=SD Scanner
|
||||
|
||||
sdio:c*v0104d00C5*
|
||||
ID_MODEL_FROM_DATABASE=Bluetooth SDIO Card
|
||||
|
||||
sdio:c*v0271*
|
||||
ID_VENDOR_FROM_DATABASE=Atheros Communications, Inc.
|
||||
|
||||
sdio:c*v0271d0108*
|
||||
ID_MODEL_FROM_DATABASE=AR6001
|
||||
|
||||
sdio:c*v0271d0109*
|
||||
ID_MODEL_FROM_DATABASE=AR6001
|
||||
|
||||
sdio:c*v0271d010A*
|
||||
ID_MODEL_FROM_DATABASE=AR6001
|
||||
|
||||
sdio:c*v0271d010B*
|
||||
ID_MODEL_FROM_DATABASE=AR6001
|
||||
|
||||
sdio:c*v0296*
|
||||
ID_VENDOR_FROM_DATABASE=GCT Semiconductor, Inc.
|
||||
|
||||
sdio:c*v0296d5347*
|
||||
ID_MODEL_FROM_DATABASE=GDM72xx WiMAX
|
||||
|
||||
sdio:c*v02D0*
|
||||
ID_VENDOR_FROM_DATABASE=Broadcom Corp.
|
||||
|
||||
sdio:c*v02D0d044B*
|
||||
ID_MODEL_FROM_DATABASE=Nintendo Wii WLAN daughter card
|
||||
|
||||
sdio:c*v02D0d4324*
|
||||
ID_MODEL_FROM_DATABASE=BCM43241 WLAN card
|
||||
|
||||
sdio:c*v02D0d4329*
|
||||
ID_MODEL_FROM_DATABASE=BCM4329 WLAN card
|
||||
|
||||
sdio:c*v02D0d4330*
|
||||
ID_MODEL_FROM_DATABASE=BCM4330 WLAN card
|
||||
|
||||
sdio:c*v02D0d4334*
|
||||
ID_MODEL_FROM_DATABASE=BCM4334 WLAN card
|
||||
|
||||
sdio:c*v02D0d4335*
|
||||
ID_MODEL_FROM_DATABASE=BCM4335/BCM4339 WLAN card
|
||||
|
||||
sdio:c*v02D0d4354*
|
||||
ID_MODEL_FROM_DATABASE=BCM4354 WLAN card
|
||||
|
||||
sdio:c*v02D0dA887*
|
||||
ID_MODEL_FROM_DATABASE=BCM43143 WLAN card
|
||||
|
||||
sdio:c*v02D0dA94C*
|
||||
ID_MODEL_FROM_DATABASE=BCM43340 WLAN card
|
||||
|
||||
sdio:c*v02D0dA94D*
|
||||
ID_MODEL_FROM_DATABASE=BCM43341 WLAN card
|
||||
|
||||
sdio:c*v02D0dA962*
|
||||
ID_MODEL_FROM_DATABASE=BCM43362 WLAN card
|
||||
|
||||
sdio:c*v02DB*
|
||||
ID_VENDOR_FROM_DATABASE=SyChip Inc.
|
||||
|
||||
sdio:c*v02DBd0002*
|
||||
ID_MODEL_FROM_DATABASE=Pegasus WLAN SDIO Card (6060SD)
|
||||
|
||||
sdio:c*v02DF*
|
||||
ID_VENDOR_FROM_DATABASE=Marvell Technology Group Ltd.
|
||||
|
||||
sdio:c*v02DFd9103*
|
||||
ID_MODEL_FROM_DATABASE=Libertas
|
||||
|
||||
sdio:c*v02DFd9104*
|
||||
ID_MODEL_FROM_DATABASE=SD8688 WLAN
|
||||
|
||||
sdio:c*v02DFd9105*
|
||||
ID_MODEL_FROM_DATABASE=SD8688 BT
|
||||
|
||||
sdio:c*v02DFd9116*
|
||||
ID_MODEL_FROM_DATABASE=SD8786 WLAN
|
||||
|
||||
sdio:c*v02DFd9119*
|
||||
ID_MODEL_FROM_DATABASE=SD8787 WLAN
|
||||
|
||||
sdio:c*v02DFd911A*
|
||||
ID_MODEL_FROM_DATABASE=SD8787 BT
|
||||
|
||||
sdio:c*v02DFd911B*
|
||||
ID_MODEL_FROM_DATABASE=SD8787 BT AMP
|
||||
|
||||
sdio:c*v02DFd9129*
|
||||
ID_MODEL_FROM_DATABASE=SD8797 WLAN
|
||||
|
||||
sdio:c*v02DFd912A*
|
||||
ID_MODEL_FROM_DATABASE=SD8797 BT
|
||||
|
||||
sdio:c*v02DFd912D*
|
||||
ID_MODEL_FROM_DATABASE=SD8897 WLAN
|
||||
|
||||
sdio:c*v02DFd912E*
|
||||
ID_MODEL_FROM_DATABASE=SD8897 BT
|
||||
|
||||
sdio:c*v02FE*
|
||||
ID_VENDOR_FROM_DATABASE=Spectec Computer Co., Ltd
|
||||
|
||||
sdio:c*v02FEd2128*
|
||||
ID_MODEL_FROM_DATABASE=SDIO WLAN Card (SDW820)
|
||||
|
||||
sdio:c*v032A*
|
||||
ID_VENDOR_FROM_DATABASE=Cambridge Silicon Radio
|
||||
|
||||
sdio:c*v032Ad0001*
|
||||
ID_MODEL_FROM_DATABASE=UniFi 1
|
||||
|
||||
sdio:c*v032Ad0002*
|
||||
ID_MODEL_FROM_DATABASE=UniFi 2
|
||||
|
||||
sdio:c*v032Ad0007*
|
||||
ID_MODEL_FROM_DATABASE=UniFi 3
|
||||
|
||||
sdio:c*v032Ad0008*
|
||||
ID_MODEL_FROM_DATABASE=UniFi 4
|
||||
|
||||
sdio:c*v037A*
|
||||
ID_VENDOR_FROM_DATABASE=MediaTek Inc.
|
||||
|
||||
sdio:c*v037Ad5911*
|
||||
ID_MODEL_FROM_DATABASE=Spectec WLAN-11b/g
|
||||
|
||||
sdio:c*v039A*
|
||||
ID_VENDOR_FROM_DATABASE=Siano Mobile Silicon
|
||||
|
||||
sdio:c*v0501*
|
||||
ID_VENDOR_FROM_DATABASE=Globalsat Technology Co.
|
||||
|
||||
sdio:c*v0501dF501*
|
||||
ID_MODEL_FROM_DATABASE=SD-501 GPS Card
|
||||
|
||||
sdio:c*v104C*
|
||||
ID_VENDOR_FROM_DATABASE=Texas Instruments, Inc.
|
||||
|
||||
sdio:c*v104Cd9066*
|
||||
ID_MODEL_FROM_DATABASE=WL1251
|
||||
|
||||
sdio:c*v1180*
|
||||
ID_VENDOR_FROM_DATABASE=Ricoh Co., Ltd
|
||||
|
||||
sdio:c*v1180dE823*
|
||||
ID_MODEL_FROM_DATABASE=MMC card reader
|
||||
|
||||
sdio:c*v13D1*
|
||||
ID_VENDOR_FROM_DATABASE=AboCom Systems, Inc.
|
||||
|
||||
sdio:c*v13D1dAC02*
|
||||
ID_MODEL_FROM_DATABASE=SDW11G
|
||||
@@ -0,0 +1,342 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# Data imported from: http://www.linux-usb.org/usb.ids
|
||||
|
||||
usb:v*p*d*dc01*
|
||||
ID_USB_CLASS_FROM_DATABASE=Audio
|
||||
|
||||
usb:v*p*d*dc01dsc01*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Control Device
|
||||
|
||||
usb:v*p*d*dc01dsc02*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Streaming
|
||||
|
||||
usb:v*p*d*dc01dsc03*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=MIDI Streaming
|
||||
|
||||
usb:v*p*d*dc02*
|
||||
ID_USB_CLASS_FROM_DATABASE=Communications
|
||||
|
||||
usb:v*p*d*dc02dsc01*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Direct Line
|
||||
|
||||
usb:v*p*d*dc02dsc02*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Abstract (modem)
|
||||
|
||||
usb:v*p*d*dc02dsc02dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=AT-commands (v.25ter)
|
||||
|
||||
usb:v*p*d*dc02dsc02dp02*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=AT-commands (PCCA101)
|
||||
|
||||
usb:v*p*d*dc02dsc02dp03*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=AT-commands (PCCA101 + wakeup)
|
||||
|
||||
usb:v*p*d*dc02dsc02dp04*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=AT-commands (GSM)
|
||||
|
||||
usb:v*p*d*dc02dsc02dp05*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=AT-commands (3G)
|
||||
|
||||
usb:v*p*d*dc02dsc02dp06*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=AT-commands (CDMA)
|
||||
|
||||
usb:v*p*d*dc02dsc02dpFE*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Defined by command set descriptor
|
||||
|
||||
usb:v*p*d*dc02dsc02dpFF*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Vendor Specific (MSFT RNDIS?)
|
||||
|
||||
usb:v*p*d*dc02dsc03*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Telephone
|
||||
|
||||
usb:v*p*d*dc02dsc04*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Multi-Channel
|
||||
|
||||
usb:v*p*d*dc02dsc05*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=CAPI Control
|
||||
|
||||
usb:v*p*d*dc02dsc06*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Ethernet Networking
|
||||
|
||||
usb:v*p*d*dc02dsc07*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=ATM Networking
|
||||
|
||||
usb:v*p*d*dc02dsc08*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Wireless Handset Control
|
||||
|
||||
usb:v*p*d*dc02dsc09*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Device Management
|
||||
|
||||
usb:v*p*d*dc02dsc0A*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Mobile Direct Line
|
||||
|
||||
usb:v*p*d*dc02dsc0B*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=OBEX
|
||||
|
||||
usb:v*p*d*dc02dsc0C*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Ethernet Emulation
|
||||
|
||||
usb:v*p*d*dc02dsc0Cdp07*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Ethernet Emulation (EEM)
|
||||
|
||||
usb:v*p*d*dc03*
|
||||
ID_USB_CLASS_FROM_DATABASE=Human Interface Device
|
||||
|
||||
usb:v*p*d*dc03dsc00dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Keyboard
|
||||
|
||||
usb:v*p*d*dc03dsc00dp02*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Mouse
|
||||
|
||||
usb:v*p*d*dc03dsc01*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Boot Interface Subclass
|
||||
|
||||
usb:v*p*d*dc03dsc01dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Keyboard
|
||||
|
||||
usb:v*p*d*dc03dsc01dp02*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Mouse
|
||||
|
||||
usb:v*p*d*dc05*
|
||||
ID_USB_CLASS_FROM_DATABASE=Physical Interface Device
|
||||
|
||||
usb:v*p*d*dc06*
|
||||
ID_USB_CLASS_FROM_DATABASE=Imaging
|
||||
|
||||
usb:v*p*d*dc06dsc01*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Still Image Capture
|
||||
|
||||
usb:v*p*d*dc06dsc01dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Picture Transfer Protocol (PIMA 15470)
|
||||
|
||||
usb:v*p*d*dc07*
|
||||
ID_USB_CLASS_FROM_DATABASE=Printer
|
||||
|
||||
usb:v*p*d*dc07dsc01*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Printer
|
||||
|
||||
usb:v*p*d*dc07dsc01dp00*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Reserved/Undefined
|
||||
|
||||
usb:v*p*d*dc07dsc01dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Unidirectional
|
||||
|
||||
usb:v*p*d*dc07dsc01dp02*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Bidirectional
|
||||
|
||||
usb:v*p*d*dc07dsc01dp03*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=IEEE 1284.4 compatible bidirectional
|
||||
|
||||
usb:v*p*d*dc07dsc01dpFF*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Vendor Specific
|
||||
|
||||
usb:v*p*d*dc08*
|
||||
ID_USB_CLASS_FROM_DATABASE=Mass Storage
|
||||
|
||||
usb:v*p*d*dc08dsc01*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=RBC (typically Flash)
|
||||
|
||||
usb:v*p*d*dc08dsc01dp00*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Control/Bulk/Interrupt
|
||||
|
||||
usb:v*p*d*dc08dsc01dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Control/Bulk
|
||||
|
||||
usb:v*p*d*dc08dsc01dp50*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Bulk-Only
|
||||
|
||||
usb:v*p*d*dc08dsc02*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=SFF-8020i, MMC-2 (ATAPI)
|
||||
|
||||
usb:v*p*d*dc08dsc03*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=QIC-157
|
||||
|
||||
usb:v*p*d*dc08dsc04*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Floppy (UFI)
|
||||
|
||||
usb:v*p*d*dc08dsc04dp00*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Control/Bulk/Interrupt
|
||||
|
||||
usb:v*p*d*dc08dsc04dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Control/Bulk
|
||||
|
||||
usb:v*p*d*dc08dsc04dp50*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Bulk-Only
|
||||
|
||||
usb:v*p*d*dc08dsc05*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=SFF-8070i
|
||||
|
||||
usb:v*p*d*dc08dsc06*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=SCSI
|
||||
|
||||
usb:v*p*d*dc08dsc06dp00*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Control/Bulk/Interrupt
|
||||
|
||||
usb:v*p*d*dc08dsc06dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Control/Bulk
|
||||
|
||||
usb:v*p*d*dc08dsc06dp50*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Bulk-Only
|
||||
|
||||
usb:v*p*d*dc09*
|
||||
ID_USB_CLASS_FROM_DATABASE=Hub
|
||||
|
||||
usb:v*p*d*dc09dsc00dp00*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Full speed (or root) hub
|
||||
|
||||
usb:v*p*d*dc09dsc00dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Single TT
|
||||
|
||||
usb:v*p*d*dc09dsc00dp02*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=TT per port
|
||||
|
||||
usb:v*p*d*dc0A*
|
||||
ID_USB_CLASS_FROM_DATABASE=CDC Data
|
||||
|
||||
usb:v*p*d*dc0Adsc00dp30*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=I.430 ISDN BRI
|
||||
|
||||
usb:v*p*d*dc0Adsc00dp31*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=HDLC
|
||||
|
||||
usb:v*p*d*dc0Adsc00dp32*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Transparent
|
||||
|
||||
usb:v*p*d*dc0Adsc00dp50*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Q.921M
|
||||
|
||||
usb:v*p*d*dc0Adsc00dp51*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Q.921
|
||||
|
||||
usb:v*p*d*dc0Adsc00dp52*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Q.921TM
|
||||
|
||||
usb:v*p*d*dc0Adsc00dp90*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=V.42bis
|
||||
|
||||
usb:v*p*d*dc0Adsc00dp91*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Q.932 EuroISDN
|
||||
|
||||
usb:v*p*d*dc0Adsc00dp92*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=V.120 V.24 rate ISDN
|
||||
|
||||
usb:v*p*d*dc0Adsc00dp93*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=CAPI 2.0
|
||||
|
||||
usb:v*p*d*dc0Adsc00dpFD*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Host Based Driver
|
||||
|
||||
usb:v*p*d*dc0Adsc00dpFE*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=CDC PUF
|
||||
|
||||
usb:v*p*d*dc0Adsc00dpFF*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Vendor specific
|
||||
|
||||
usb:v*p*d*dc0B*
|
||||
ID_USB_CLASS_FROM_DATABASE=Chip/SmartCard
|
||||
|
||||
usb:v*p*d*dc0D*
|
||||
ID_USB_CLASS_FROM_DATABASE=Content Security
|
||||
|
||||
usb:v*p*d*dc0E*
|
||||
ID_USB_CLASS_FROM_DATABASE=Video
|
||||
|
||||
usb:v*p*d*dc0Edsc01*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Video Control
|
||||
|
||||
usb:v*p*d*dc0Edsc02*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Video Streaming
|
||||
|
||||
usb:v*p*d*dc0Edsc03*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Video Interface Collection
|
||||
|
||||
usb:v*p*d*dc58*
|
||||
ID_USB_CLASS_FROM_DATABASE=Xbox
|
||||
|
||||
usb:v*p*d*dc58dsc42*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Controller
|
||||
|
||||
usb:v*p*d*dcDC*
|
||||
ID_USB_CLASS_FROM_DATABASE=Diagnostic
|
||||
|
||||
usb:v*p*d*dcDCdsc01*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Reprogrammable Diagnostics
|
||||
|
||||
usb:v*p*d*dcDCdsc01dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=USB2 Compliance
|
||||
|
||||
usb:v*p*d*dcE0*
|
||||
ID_USB_CLASS_FROM_DATABASE=Wireless
|
||||
|
||||
usb:v*p*d*dcE0dsc01*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Radio Frequency
|
||||
|
||||
usb:v*p*d*dcE0dsc01dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Bluetooth
|
||||
|
||||
usb:v*p*d*dcE0dsc01dp02*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Ultra WideBand Radio Control
|
||||
|
||||
usb:v*p*d*dcE0dsc01dp03*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=RNDIS
|
||||
|
||||
usb:v*p*d*dcE0dsc02*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Wireless USB Wire Adapter
|
||||
|
||||
usb:v*p*d*dcE0dsc02dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Host Wire Adapter Control/Data Streaming
|
||||
|
||||
usb:v*p*d*dcE0dsc02dp02*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Device Wire Adapter Control/Data Streaming
|
||||
|
||||
usb:v*p*d*dcE0dsc02dp03*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Device Wire Adapter Isochronous Streaming
|
||||
|
||||
usb:v*p*d*dcEF*
|
||||
ID_USB_CLASS_FROM_DATABASE=Miscellaneous Device
|
||||
|
||||
usb:v*p*d*dcEFdsc01dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Microsoft ActiveSync
|
||||
|
||||
usb:v*p*d*dcEFdsc01dp02*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Palm Sync
|
||||
|
||||
usb:v*p*d*dcEFdsc02dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Interface Association
|
||||
|
||||
usb:v*p*d*dcEFdsc02dp02*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Wire Adapter Multifunction Peripheral
|
||||
|
||||
usb:v*p*d*dcEFdsc03dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Cable Based Association
|
||||
|
||||
usb:v*p*d*dcEFdsc05*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=USB3 Vision
|
||||
|
||||
usb:v*p*d*dcFE*
|
||||
ID_USB_CLASS_FROM_DATABASE=Application Specific Interface
|
||||
|
||||
usb:v*p*d*dcFEdsc01*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Device Firmware Update
|
||||
|
||||
usb:v*p*d*dcFEdsc02*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=IRDA Bridge
|
||||
|
||||
usb:v*p*d*dcFEdsc03*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Test and Measurement
|
||||
|
||||
usb:v*p*d*dcFEdsc03dp01*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=TMC
|
||||
|
||||
usb:v*p*d*dcFEdsc03dp02*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=USB488
|
||||
|
||||
usb:v*p*d*dcFF*
|
||||
ID_USB_CLASS_FROM_DATABASE=Vendor Specific Class
|
||||
|
||||
usb:v*p*d*dcFFdscFF*
|
||||
ID_USB_SUBCLASS_FROM_DATABASE=Vendor Specific Subclass
|
||||
|
||||
usb:v*p*d*dcFFdscFFdpFF*
|
||||
ID_USB_PROTOCOL_FROM_DATABASE=Vendor Specific Protocol
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,57 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# Data extracted from Linux hyperv.h
|
||||
|
||||
vmbus:02780ada77e3ac4a8e770558eb1073f8
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Video
|
||||
|
||||
vmbus:1657e6f8b33c064a9a601889c5cccab5
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Remote Desktop Control
|
||||
|
||||
vmbus:1df6c444444400449d52802e27ede19f
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V PCI Controller
|
||||
|
||||
vmbus:292efa3523ea364296ae3a6ebacba440
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Backup/Restore
|
||||
|
||||
vmbus:30e62795aed07b49adcee80ab0175caf
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Time Sync
|
||||
|
||||
vmbus:31600b0e13523449818b38d90ced39db
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Guest Shutdown
|
||||
|
||||
vmbus:32264132cb86a2449b5c50d1417354f5
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V IDE Controller
|
||||
|
||||
vmbus:394f16571591784eab55382f3bd5422d
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Heartbeat
|
||||
|
||||
vmbus:3daf2e8ca732094bab99bd1f1c86b501
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Guest RDMA
|
||||
|
||||
vmbus:635161f83edfc546913ff2d2f965ed0e
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Network Adapter
|
||||
|
||||
vmbus:6dad12f9172bea48bd65f927a61c7684
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Keyboard
|
||||
|
||||
vmbus:9eb6a8cf4a5bc04cb98b8ba1a1f3f95a
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Mouse
|
||||
|
||||
vmbus:d96361baa104294db60572e2ffb1dc7f
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V SCSI Controller
|
||||
|
||||
vmbus:dc7450528589e2468057a307dc18a502
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Dynamic Memory
|
||||
|
||||
vmbus:e34bd134e4dec8419ae76b174977c192
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V File Copy
|
||||
|
||||
vmbus:e7f4a0a9455a964db8278a841e8c03e6
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Data Exchange
|
||||
|
||||
vmbus:f4ac6a2715ac6c4298dd7521ad3f01fe
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Remote Desktop Virtualization
|
||||
|
||||
vmbus:f4ba7533159e304bb76567acb10d607b
|
||||
ID_MODEL_FROM_DATABASE=Microsoft Hyper-V Virtual Machine Activation
|
||||
@@ -0,0 +1,485 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# The lookup keys are composed in:
|
||||
# 60-evdev.rules
|
||||
#
|
||||
# Note: The format of the "evdev:" prefix match key is a
|
||||
# contract between the rules file and the hardware data, it might
|
||||
# change in later revisions to support more or better matches, it
|
||||
# is not necessarily expected to be a stable ABI.
|
||||
#
|
||||
# Match string formats:
|
||||
# evdev:<modalias>
|
||||
# evdev:name:<device name>:dmi:<dmi string>
|
||||
#
|
||||
# To add local entries, create a new file
|
||||
# /etc/udev/hwdb.d/61-evdev-local.hwdb
|
||||
# and add your rules there. To load the new rules execute (as root):
|
||||
# systemd-hwdb update
|
||||
# udevadm trigger /dev/input/eventXX
|
||||
# where /dev/input/eventXX is the device in question. If in
|
||||
# doubt, simply use /dev/input/event* to reload all input rules.
|
||||
#
|
||||
# If your changes are generally applicable, preferably send them as a pull
|
||||
# request to
|
||||
# https://github.com/systemd/systemd
|
||||
# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
# include your new rules, a description of the device, and the output of
|
||||
# udevadm info /dev/input/eventXX.
|
||||
#
|
||||
# Allowed properties are:
|
||||
# EVDEV_ABS_<axis>=<min>:<max>:<res>:<fuzz>:<flat>
|
||||
#
|
||||
# where <axis> is the hexadecimal EV_ABS code as listed in linux/input.h
|
||||
# and min, max, res, fuzz, flat are the decimal values to the respective
|
||||
# fields of the struct input_absinfo as listed in linux/input.h.
|
||||
# If a field is missing the field will be left as-is. Not all fields need to
|
||||
# be present. e.g. ::45 sets the resolution to 45 units/mm.
|
||||
|
||||
#
|
||||
# Sort by brand, model
|
||||
|
||||
#########################################
|
||||
# Apple
|
||||
#########################################
|
||||
|
||||
# Macbook2,1 (late 2006), single-button touchpad
|
||||
evdev:input:b0003v05ACp021B*
|
||||
# Macbook4,1
|
||||
evdev:input:b0003v05ACp0229*
|
||||
evdev:input:b0003v05ACp022A*
|
||||
EVDEV_ABS_00=256:1471:12
|
||||
EVDEV_ABS_01=256:831:12
|
||||
|
||||
# Macbook5,1 (unibody), aka wellspring3
|
||||
evdev:input:b0003v05ACp0236*
|
||||
evdev:input:b0003v05ACp0237*
|
||||
evdev:input:b0003v05ACp0238*
|
||||
EVDEV_ABS_00=::92
|
||||
EVDEV_ABS_01=::90
|
||||
EVDEV_ABS_35=::92
|
||||
EVDEV_ABS_36=::90
|
||||
|
||||
# Macbook8 (unibody, March 2011)
|
||||
evdev:input:b0003v05ACp0245*
|
||||
evdev:input:b0003v05ACp0246*
|
||||
evdev:input:b0003v05ACp0247*
|
||||
EVDEV_ABS_00=::92
|
||||
EVDEV_ABS_01=::91
|
||||
EVDEV_ABS_35=::92
|
||||
EVDEV_ABS_36=::91
|
||||
|
||||
# Macbook8,2 (unibody)
|
||||
evdev:input:b0003v05ACp0252*
|
||||
evdev:input:b0003v05ACp0253*
|
||||
evdev:input:b0003v05ACp0254*
|
||||
EVDEV_ABS_00=::94
|
||||
EVDEV_ABS_01=::92
|
||||
EVDEV_ABS_35=::94
|
||||
EVDEV_ABS_36=::92
|
||||
|
||||
# MacbookPro10,1 (unibody, June 2012)
|
||||
evdev:input:b0003v05ACp0262*
|
||||
evdev:input:b0003v05ACp0263*
|
||||
evdev:input:b0003v05ACp0264*
|
||||
# MacbookPro10,2 (unibody, October 2012)
|
||||
evdev:input:b0003v05ACp0259*
|
||||
evdev:input:b0003v05ACp025A*
|
||||
evdev:input:b0003v05ACp025B*
|
||||
EVDEV_ABS_00=::94
|
||||
EVDEV_ABS_01=::92
|
||||
EVDEV_ABS_35=::94
|
||||
EVDEV_ABS_36=::92
|
||||
|
||||
#########################################
|
||||
# ASUS
|
||||
#########################################
|
||||
|
||||
# Asus F3Sg
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnASUSTeKComputerInc.:pnF3Sg:*
|
||||
EVDEV_ABS_00=0:6143:136
|
||||
EVDEV_ABS_01=1103:5856:61
|
||||
|
||||
# Asus VivoBook E402SA
|
||||
evdev:name:Elan Touchpad:dmi:*svnASUSTeKCOMPUTERINC.:pnE402SA*
|
||||
EVDEV_ABS_00=::29
|
||||
EVDEV_ABS_01=::29
|
||||
EVDEV_ABS_35=::29
|
||||
EVDEV_ABS_36=::29
|
||||
|
||||
# Asus K52JT
|
||||
evdev:name:ETPS/2 Elantech Touchpad:dmi:bvn*:bvr*:bd*:svnASUSTeKComputerInc.:pnK52JT:*
|
||||
EVDEV_ABS_00=::18
|
||||
EVDEV_ABS_01=::16
|
||||
EVDEV_ABS_35=::18
|
||||
EVDEV_ABS_36=::16
|
||||
|
||||
# Asus X550CC, S550CB and N550JV
|
||||
evdev:name:ETPS/2 Elantech Touchpad:dmi:*:svnASUSTeKCOMPUTERINC.:pnX550CC:*
|
||||
evdev:name:ETPS/2 Elantech Touchpad:dmi:*:svnASUSTeKCOMPUTERINC.:pnS550CB:*
|
||||
evdev:name:ETPS/2 Elantech Touchpad:dmi:*:svnASUSTeKCOMPUTERINC.:pnN550JV:*
|
||||
EVDEV_ABS_00=::31
|
||||
EVDEV_ABS_01=::30
|
||||
EVDEV_ABS_35=::31
|
||||
EVDEV_ABS_36=::30
|
||||
|
||||
# Asus UX301L
|
||||
evdev:name:Elan Touchpad:dmi:*:svnASUSTeKCOMPUTERINC.:pnUX301LAA:*
|
||||
EVDEV_ABS_00=::30
|
||||
EVDEV_ABS_01=::29
|
||||
EVDEV_ABS_35=::30
|
||||
EVDEV_ABS_36=::29
|
||||
|
||||
# Asus UX305
|
||||
evdev:name:Elan Touchpad:dmi:*:svnASUSTeKCOMPUTERINC.:pnUX305UA:*
|
||||
EVDEV_ABS_00=0:3097:32
|
||||
EVDEV_ABS_01=0:2119:33
|
||||
EVDEV_ABS_35=0:3097:32
|
||||
EVDEV_ABS_36=0:2119:33
|
||||
|
||||
#########################################
|
||||
# Dell
|
||||
#########################################
|
||||
|
||||
# Dell Vostro 1510
|
||||
evdev:name:AlpsPS/2 ALPS GlidePoint*:dmi:bvn*:bvr*:bd*:svnDellInc.:pnVostro1510*
|
||||
EVDEV_ABS_00=::14
|
||||
EVDEV_ABS_01=::18
|
||||
|
||||
# Dell Inspiron 3537 - PS/2
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnDellInc.:pnInspiron3537*
|
||||
EVDEV_ABS_00=1268:5675:41
|
||||
EVDEV_ABS_01=1101:4792:61
|
||||
EVDEV_ABS_35=1268:5675:41
|
||||
EVDEV_ABS_36=1101:4792:61
|
||||
|
||||
# Dell Inspiron 3537 - RMI4
|
||||
evdev:name:Synaptics TM2382-001:dmi:*svnDellInc.:pnInspiron3537*
|
||||
EVDEV_ABS_00=::24
|
||||
EVDEV_ABS_01=::34
|
||||
EVDEV_ABS_35=::24
|
||||
EVDEV_ABS_36=::34
|
||||
|
||||
# Dell Inspiron N5040
|
||||
evdev:name:AlpsPS/2 ALPS DualPoint TouchPad:dmi:bvn*:bvr*:bd*:svnDellInc.:pnInspironN5040*
|
||||
EVDEV_ABS_00=25:2000:22
|
||||
EVDEV_ABS_01=0:1351:28
|
||||
EVDEV_ABS_35=25:2000:22
|
||||
EVDEV_ABS_36=0:1351:28
|
||||
|
||||
# Dell Inspiron MM061
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*bvn*:bvr*:bd*:svnDellInc.:pnMM061:*
|
||||
EVDEV_ABS_00=1008:5793:66
|
||||
EVDEV_ABS_01=687:5176:107
|
||||
|
||||
# Dell Latitude E6220
|
||||
evdev:name:AlpsPS/2 ALPS DualPoint TouchPad:dmi:bvn*:bvr*:bd*:svnDellInc.:pnLatitudeE6220*
|
||||
EVDEV_ABS_00=76:1815:22
|
||||
EVDEV_ABS_01=131:1330:30
|
||||
EVDEV_ABS_35=76:1815:22
|
||||
EVDEV_ABS_36=131:1330:30
|
||||
|
||||
# Dell Latitude E6320
|
||||
evdev:name:AlpsPS/2 ALPS DualPoint TouchPad:dmi:bvn*:bvr*:bd*:svnDellInc.:pnLatitudeE6320*
|
||||
EVDEV_ABS_00=79:1841:22
|
||||
EVDEV_ABS_01=140:1325:29
|
||||
EVDEV_ABS_35=79:1841:22
|
||||
EVDEV_ABS_36=140:1325:29
|
||||
|
||||
# Dell Latitude E7470
|
||||
evdev:name:AlpsPS/2 ALPS DualPoint TouchPad:dmi:bvn*:bvr*:bd*:svnDellInc.:pnLatitudeE7470*
|
||||
EVDEV_ABS_00=29:2930:30
|
||||
EVDEV_ABS_01=26:1533:29
|
||||
EVDEV_ABS_35=29:2930:30
|
||||
EVDEV_ABS_36=26:1533:29
|
||||
|
||||
# Dell Precision 5510
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:bvn*:bvr*:bd*:svnDellInc.:pnPrecision5510*
|
||||
EVDEV_ABS_00=::42
|
||||
EVDEV_ABS_01=::43
|
||||
EVDEV_ABS_35=::42
|
||||
EVDEV_ABS_36=::43
|
||||
|
||||
# Dell Precision M4700
|
||||
evdev:name:AlpsPS/2 ALPS DualPoint TouchPad:dmi:*svnDellInc.:pnPrecisionM4700*
|
||||
EVDEV_ABS_00=0:1960:24
|
||||
EVDEV_ABS_01=113:1436:30
|
||||
EVDEV_ABS_35=0:1960:24
|
||||
EVDEV_ABS_36=113:1436:30
|
||||
|
||||
# Dell XPS15 9550
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:bvn*:bvr*:bd*:svnDellInc.:pnXPS159550*
|
||||
EVDEV_ABS_00=::41
|
||||
EVDEV_ABS_01=::43
|
||||
EVDEV_ABS_35=::41
|
||||
EVDEV_ABS_36=::43
|
||||
|
||||
# Dell XPS M1530
|
||||
evdev:name:AlpsPS/2 ALPS GlidePoint:dmi:bvn*:bvr*:bd*:svnDellInc.:pnXPSM1530*
|
||||
EVDEV_ABS_00=85:947:15
|
||||
EVDEV_ABS_01=154:726:18
|
||||
|
||||
#####
|
||||
# Sun
|
||||
#####
|
||||
|
||||
# Fujitsu Component - USB Touch Panel
|
||||
evdev:input:b0003v0430p0530*
|
||||
EVDEV_ABS_00=0:4096:16
|
||||
EVDEV_ABS_01=0:4096:16
|
||||
|
||||
#########################################
|
||||
# Google
|
||||
#########################################
|
||||
|
||||
# Chromebook Pixel (2015) - Samus
|
||||
evdev:name:Atmel maXTouch Touch*:dmi:bvn*:bvr*:bd*:svnGOOGLE:pnSamus*
|
||||
EVDEV_ABS_00=::10
|
||||
EVDEV_ABS_01=::10
|
||||
EVDEV_ABS_35=::10
|
||||
EVDEV_ABS_36=::10
|
||||
|
||||
#########################################
|
||||
# HP
|
||||
#########################################
|
||||
|
||||
# HP Pavilion dm4
|
||||
evdev:name:SynPS/2 Synaptics TouchPad*:dmi:*svnHewlett-Packard:pnHPPaviliondm4*
|
||||
EVDEV_ABS_00=1360:5563:47
|
||||
EVDEV_ABS_01=1269:4618:61
|
||||
EVDEV_ABS_35=1360:5563:47
|
||||
EVDEV_ABS_36=1269:4618:61
|
||||
|
||||
# HP Pavilion dv7
|
||||
evdev:name:SynPS/2 Synaptics TouchPad*:dmi:*svnHewlett-Packard:pnHPPaviliondv7*
|
||||
EVDEV_ABS_00=1068:5805:44
|
||||
EVDEV_ABS_01=1197:4890:57
|
||||
EVDEV_ABS_35=1068:5805:44
|
||||
EVDEV_ABS_36=1197:4890:57
|
||||
|
||||
# HP Pavilion 15
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnHP:pnHPLaptop15-bs0xx:*
|
||||
EVDEV_ABS_00=1272:5689:38
|
||||
EVDEV_ABS_01=1029:4916:78
|
||||
EVDEV_ABS_35=1272:5689:38
|
||||
EVDEV_ABS_36=1029:4916:78
|
||||
|
||||
# HP Spectre
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:i*svnHP:pnHPSpectreNotebook*
|
||||
EVDEV_ABS_00=1205:5691:47
|
||||
EVDEV_ABS_01=1083:4808:65
|
||||
EVDEV_ABS_35=1205:5691:47
|
||||
EVDEV_ABS_36=1083:4808:65
|
||||
|
||||
#########################################
|
||||
# Lenovo
|
||||
#########################################
|
||||
|
||||
# Lenovo B590
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO*:pvrLenovoB590*
|
||||
EVDEV_ABS_00=1243:5759:48
|
||||
EVDEV_ABS_01=1130:4832:65
|
||||
EVDEV_ABS_35=1243:5759:48
|
||||
EVDEV_ABS_36=1130:4832:65
|
||||
|
||||
# Lenovo E530
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:pn*ThinkPadEdgeE530*
|
||||
EVDEV_ABS_00=1241:5703:49
|
||||
EVDEV_ABS_01=1105:4820:68
|
||||
EVDEV_ABS_35=1241:5703:49
|
||||
EVDEV_ABS_36=1105:4820:68
|
||||
|
||||
# Lenovo L430
|
||||
evdev:name:ETPS/2 Elantech Touchpad:dmi:*svnLENOVO*:pvrThinkPadL430*
|
||||
EVDEV_ABS_00=19:2197:29
|
||||
EVDEV_ABS_01=12:1151:25
|
||||
EVDEV_ABS_35=19:2197:29
|
||||
EVDEV_ABS_36=12:1151:25
|
||||
|
||||
# Lenovo P50
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO*:pn*ThinkPad*P50*
|
||||
EVDEV_ABS_00=::44
|
||||
EVDEV_ABS_01=::67
|
||||
EVDEV_ABS_35=::44
|
||||
EVDEV_ABS_36=::67
|
||||
|
||||
# Lenovo *40 series
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO*:pvrThinkPad??40:*
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO*:pvrThinkPad??40?:*
|
||||
EVDEV_ABS_00=::41
|
||||
EVDEV_ABS_01=::37
|
||||
EVDEV_ABS_35=::41
|
||||
EVDEV_ABS_36=::37
|
||||
|
||||
# Lenovo ThinkPad T430
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO*:pvrThinkPadT430*
|
||||
EVDEV_ABS_00=1250:5631:58
|
||||
EVDEV_ABS_01=1309:4826:78
|
||||
EVDEV_ABS_35=1250:5631:58
|
||||
EVDEV_ABS_36=1309:4826:78
|
||||
|
||||
# Lenovo Thinkpad Carbon X1 4th gen. and X1 Yoga 1st gen.
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO*:pvrThinkPadX1Carbon4th*
|
||||
EVDEV_ABS_00=1262:5679:44
|
||||
EVDEV_ABS_01=1101:4824:65
|
||||
EVDEV_ABS_35=1262:5679:44
|
||||
EVDEV_ABS_36=1101:4824:65
|
||||
|
||||
# Lenovo Thinkpad Carbon X1 5th gen.
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO*:pvrThinkPadX1Carbon5th*
|
||||
EVDEV_ABS_00=::44
|
||||
EVDEV_ABS_01=::65
|
||||
EVDEV_ABS_35=::44
|
||||
EVDEV_ABS_36=::65
|
||||
|
||||
# Lenovo Thinkpad Carbon X1 5th gen. (rmi4)
|
||||
evdev:name:Synaptics TM3289-002:dmi:*svnLENOVO*:pvrThinkPadX1Carbon5th*
|
||||
EVDEV_ABS_00=::19
|
||||
EVDEV_ABS_01=::19
|
||||
EVDEV_ABS_35=::19
|
||||
EVDEV_ABS_36=::19
|
||||
|
||||
# Lenovo T460
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO*:pn*ThinkPad*T460*
|
||||
EVDEV_ABS_00=1266:5677:44
|
||||
EVDEV_ABS_01=1093:4832:65
|
||||
EVDEV_ABS_35=1266:5677:44
|
||||
EVDEV_ABS_36=1093:4832:65
|
||||
|
||||
# Lenovo T510
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO*:pn*ThinkPad*T510*
|
||||
EVDEV_ABS_00=778:6239:72
|
||||
EVDEV_ABS_01=841:5330:100
|
||||
EVDEV_ABS_35=778:6239:72
|
||||
EVDEV_ABS_36=841:5330:100
|
||||
|
||||
# Lenovo V360
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*pvrLenovoV360*
|
||||
EVDEV_ABS_00=1243:5927:60
|
||||
EVDEV_ABS_01=902:5330:108
|
||||
|
||||
# Lenovo W530
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*pvrThinkPadW530*
|
||||
EVDEV_ABS_00=1250:5631:59
|
||||
EVDEV_ABS_01=1205:4834:81
|
||||
EVDEV_ABS_35=1250:5631:59
|
||||
EVDEV_ABS_36=1205:4834:81
|
||||
|
||||
# Lenovo X220 series
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*pvrThinkPadX220*
|
||||
EVDEV_ABS_00=1316:5627:58
|
||||
EVDEV_ABS_01=1355:4826:81
|
||||
EVDEV_ABS_35=1316:5627:58
|
||||
EVDEV_ABS_36=1355:4826:81
|
||||
|
||||
# Lenovo X230 series
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO*:pn*ThinkPad*X230*
|
||||
EVDEV_ABS_01=::100
|
||||
EVDEV_ABS_36=::100
|
||||
|
||||
# Lenovo Y700-14ISK
|
||||
evdev:name:AlpsPS/2 ALPS GlidePoint:dmi:*svnLENOVO:*pvrLenovoideapadY700-14ISK*
|
||||
EVDEV_ABS_00=::27
|
||||
EVDEV_ABS_01=::29
|
||||
EVDEV_ABS_35=::27
|
||||
EVDEV_ABS_36=::29
|
||||
|
||||
# Lenovo Ideapad 500S-13ISK
|
||||
evdev:name:AlpsPS/2 ALPS GlidePoint:dmi:*svnLENOVO:*pvrLenovoideapad500S-13ISK*
|
||||
EVDEV_ABS_00=125:3955:37
|
||||
EVDEV_ABS_01=104:1959:27
|
||||
EVDEV_ABS_35=125:3954:37
|
||||
EVDEV_ABS_36=104:1959:27
|
||||
|
||||
# Lenovo Yoga 500-14ISK
|
||||
evdev:name:AlpsPS/2 ALPS GlidePoint:dmi:*svnLENOVO:*pvrLenovoYoga500-14ISK*
|
||||
EVDEV_ABS_00=124:3955:36
|
||||
EVDEV_ABS_01=103:1959:26
|
||||
EVDEV_ABS_35=124:3955:36
|
||||
EVDEV_ABS_36=103:1959:26
|
||||
|
||||
# Lenovo Flex 3 15-inch
|
||||
evdev:name:AlpsPS/2 ALPS GlidePoint*:dmi:bvn*:bvr*:bd*:svnLENOVO*:pvrFlex3-15*
|
||||
EVDEV_ABS_00=::38
|
||||
EVDEV_ABS_01=::28
|
||||
EVDEV_ABS_35=::38
|
||||
EVDEV_ABS_36=::28
|
||||
|
||||
# Lenovo ThinkPad Edge 13 (02173BG)
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO*:pn*02173BG*:*pvrThinkPadEdge*
|
||||
EVDEV_ABS_00=916:6077:55
|
||||
EVDEV_ABS_01=653:5395:116
|
||||
EVDEV_ABS_35=916:6077:55
|
||||
EVDEV_ABS_36=653:5395:116
|
||||
|
||||
#########################################
|
||||
# Razer
|
||||
#########################################
|
||||
|
||||
# Razer Blade Stealth
|
||||
evdev:name:1A586753:00 06CB:8323 Touchpad:dmi:*svnRazer:pnBladeStealth:*
|
||||
EVDEV_ABS_00=::12:8
|
||||
EVDEV_ABS_01=::11:8
|
||||
EVDEV_ABS_35=::12:8
|
||||
EVDEV_ABS_36=::11:8
|
||||
|
||||
# Razer Blade Stealth (2016)
|
||||
evdev:name:Synaptics TM2438-005:dmi:*svnRazer:pnBladeStealth*
|
||||
EVDEV_ABS_00=0:4064:29
|
||||
EVDEV_ABS_01=0:2405:37
|
||||
EVDEV_ABS_35=0:4064:29
|
||||
EVDEV_ABS_36=0:2405:37
|
||||
|
||||
#########################################
|
||||
# Samsung
|
||||
#########################################
|
||||
|
||||
# Samsung 305V4
|
||||
evdev:name:ETPS/2 Elantech Touchpad:dmi:*svnSAMSUNGELECTRONICSCO.,LTD.:pn305V4A/305V5A*
|
||||
EVDEV_ABS_00=0:2480:28
|
||||
EVDEV_ABS_01=0:1116:24
|
||||
EVDEV_ABS_35=0:2480:28
|
||||
EVDEV_ABS_36=0:1116:24
|
||||
|
||||
# Samsung 880Z5E
|
||||
evdev:name:ETPS/2 Elantech Touchpad:dmi:*svnSAMSUNGELECTRONICSCO.,LTD.:pn870Z5E/880Z5E/680Z5E*
|
||||
EVDEV_ABS_00=::30
|
||||
EVDEV_ABS_01=::29
|
||||
EVDEV_ABS_35=::30
|
||||
EVDEV_ABS_36=::29
|
||||
|
||||
#########################################
|
||||
# System76
|
||||
#########################################
|
||||
|
||||
# GalagoPro 2 (galp2)
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnSystem76:pnGalagoPro:pvrgalp2:*
|
||||
EVDEV_ABS_00=1238:5747:50
|
||||
EVDEV_ABS_01=901:4900:83
|
||||
EVDEV_ABS_35=1238:5747:50
|
||||
EVDEV_ABS_36=901:4900:83
|
||||
|
||||
#########################################
|
||||
# Toshiba
|
||||
#########################################
|
||||
|
||||
# Toshiba Tecra M11
|
||||
evdev:name:AlpsPS/2 ALPS DualPoint TouchPad:dmi:*svnTOSHIBA:pnTECRAM11*
|
||||
EVDEV_ABS_00=90:962:11
|
||||
EVDEV_ABS_01=51:681:14
|
||||
|
||||
# Toshiba Satellite R830
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnTOSHIBA:pnSATELLITER830*
|
||||
EVDEV_ABS_00=1238:5785:53
|
||||
EVDEV_ABS_01=1045:4826:76
|
||||
EVDEV_ABS_35=1238:5785:53
|
||||
EVDEV_ABS_36=1045:4826:76
|
||||
|
||||
#########################################
|
||||
# Waltop
|
||||
#########################################
|
||||
|
||||
# WALTOP International Corp. Slim Tablet
|
||||
evdev:input:b0003v172Fp0031*
|
||||
EVDEV_ABS_00=0:10000:400
|
||||
EVDEV_ABS_01=0:6250:400
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,344 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# The lookup keys are composed in:
|
||||
# 60-sensor.rules
|
||||
#
|
||||
# Note: The format of the "sensor:" prefix match key is a
|
||||
# contract between the rules file and the hardware data, it might
|
||||
# change in later revisions to support more or better matches, it
|
||||
# is not necessarily expected to be a stable ABI.
|
||||
#
|
||||
# Match string formats:
|
||||
# sensor:modalias:<parent device modalias>:dmi:<dmi string>
|
||||
#
|
||||
# To add local entries, create a new file
|
||||
# /etc/udev/hwdb.d/61-sensor-local.hwdb
|
||||
# and add your rules there. To load the new rules execute (as root):
|
||||
# systemd-hwdb update
|
||||
# udevadm trigger -v -p DEVNAME=/dev/iio:deviceXXX
|
||||
# where /dev/iio:deviceXXX is the device in question.
|
||||
#
|
||||
# If your changes are generally applicable, preferably send them as a pull
|
||||
# request to
|
||||
# https://github.com/systemd/systemd
|
||||
# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
# include your new rules, a description of the device, and the output of
|
||||
# udevadm info --export-db
|
||||
#
|
||||
# For hwdb format and systemd behavior:
|
||||
# https://www.freedesktop.org/software/systemd/man/hwdb.html
|
||||
#
|
||||
# Allowed properties are:
|
||||
# ACCEL_MOUNT_MATRIX=<matrix>
|
||||
#
|
||||
# where <matrix> is a mount-matrix in the format specified in the IIO
|
||||
# subsystem[1]. The default, when unset, is equivalent to:
|
||||
# ACCEL_MOUNT_MATRIX=1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
# eg. the identity matrix.
|
||||
#
|
||||
# [1]: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=dfc57732ad38f93ae6232a3b4e64fd077383a0f1
|
||||
#
|
||||
# Note for devices where the display (LCD panel) is mounted non upright
|
||||
# in the device's casing, e.g. mounted upside-down or 90 degree rotated,
|
||||
# the ACCEL_MOUNT_MATRIX should be such that the x and y axis matches the
|
||||
# x and y axis of the display, not those of the casing, so that desktop
|
||||
# environments using the accelerometer data for rotation will e.g.
|
||||
# automatically flip their output for an upside-down display when the device
|
||||
# is held upright.
|
||||
#
|
||||
# Sort by brand, model
|
||||
|
||||
#########################################
|
||||
# Acer
|
||||
#########################################
|
||||
sensor:modalias:acpi:INVN6500*:dmi:*svn*Acer*:*pn*AspireSW5-012*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
sensor:modalias:acpi:BMA250E*:dmi:*:svnAcer:pnIconiaW1-810:*
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Archos
|
||||
#########################################
|
||||
sensor:modalias:acpi:SMO8500*:dmi:*:svnARCHOS:pnARCHOS80Cesium:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# AsusTek
|
||||
#########################################
|
||||
sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnT100CHI*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
|
||||
sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnT100TA*
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pnT200TA*
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
sensor:modalias:acpi:INVN6500*:dmi:*svn*ASUSTeK*:*pn*TP300LA*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
sensor:modalias:acpi:INVN6500*:dmi:*svn*ASUSTeK*:*pn*TP300LD*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP300LJ*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP500LB*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP300LD*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Axxo
|
||||
#########################################
|
||||
sensor:modalias:acpi:SMO8500*:dmi:*:svnStandard:pnWCBT1011:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Chuwi
|
||||
#########################################
|
||||
|
||||
# Chuwi Vi8 (CWI506)
|
||||
sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrCHUWI.D86JLBNR*:svnInsyde:pni86:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
# Chuwi Vi8 Plus (CWI519)
|
||||
sensor:modalias:acpi:BOSC0200*:dmi:*:svnHampoo:pnD2D3_Vi8A1:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
# Chuwi Hi8 Pro
|
||||
sensor:modalias:acpi:BOSC0200*:dmi:*:svnHampoo:pnX1D3_C806N:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
# Chuwi Hi10 Pro
|
||||
sensor:modalias:acpi:BOSC0200*:dmi:*:svn*CHUWIINNOVATIONANDTECHNOLOGY*:pnHi10protablet:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
# Chuwi Hi12
|
||||
sensor:modalias:acpi:BOSC0200*:dmi:*:svnHampoo:pnP02BD6_HI-122LP:*
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
# Chuwi Hi13
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:svnChuwi*:pnHi13
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
# Chuwi HiBook
|
||||
# Chuwi HiBook does not have its product name filled, so we
|
||||
# match the entire dmi-alias, assuming that the use of a BOSC0200 +
|
||||
# bios-version + bios-date combo is unique
|
||||
sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd05/07/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnHampoo:rnCherryTrailCR:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring:
|
||||
sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd05/28/2016:svnDefaultstring:pnDefaultstring:pvrDefaultstring:rvnHampoo:rnCherryTrailCR:rvrDefaultstring:cvnDefaultstring:ct3:cvrDefaultstring:
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Cube
|
||||
#########################################
|
||||
|
||||
# Cube iWork8 Air
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*:svncube:pni1-TF:*
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
# Cube i7 Stylus
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*:svnCube:pni7Stylus:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
|
||||
# Cube i7 Book (i16)
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*:svnCube:pni16:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
|
||||
# Cube i7 Stylus I8L Model
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*:svnCube:pni8-L:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Cytrix (Mytrix)
|
||||
#########################################
|
||||
sensor:modalias:acpi:*KIOX000A*:dmi:*svn*CytrixTechnology:*pn*Complex11t*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Endless
|
||||
#########################################
|
||||
sensor:modalias:acpi:ACCE0001*:dmi:*svnEndless*:*pnELT-NL3*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 0, 0, -1; -1, 0, 0
|
||||
|
||||
#########################################
|
||||
# Eve Technology
|
||||
#########################################
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*:svnEVE*:pnEveV:*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# GP-electronic
|
||||
#########################################
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:bvnINSYDECorp.:bvrBYT70A.YNCHENG.WIN.007:*:svnInsyde:pnT701:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# HP
|
||||
#########################################
|
||||
sensor:modalias:platform:lis3lv02d:dmi:*svn*Hewlett-Packard*:*pn*HPEliteBook8540w*
|
||||
sensor:modalias:platform:lis3lv02d:dmi:*svn*Hewlett-Packard*:*pn*HPEliteBook8560w*
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, 0, -1; 0, 1, 0
|
||||
|
||||
sensor:modalias:acpi:SMO8500*:dmi:*:svnHewlett-Packard:pnHPStream7Tablet:*
|
||||
sensor:modalias:acpi:SMO8500*:dmi:*:svnHewlett-Packard:pnHPStream8Tablet:*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# I.T.Works
|
||||
#########################################
|
||||
|
||||
# The I.T.Works TW891 2-in-1's DMI has the product-name field set, but not
|
||||
# the sys-vendor field. This makes the DMI data a bit generic, so we match
|
||||
# the whole dmi modalias, except for the BIOS version/date
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:*:svnTobefilledbyO.E.M.:pnTW891:pvrTobefilledbyO.E.M.:rvnTobefilledbyO.E.M.:rnTW891:rvr1.0:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
# I.T.Works TW701 7" windows tablet, same hw as Trekstor ST70416-6
|
||||
sensor:modalias:acpi:BMA250*:dmi:*:bvritWORKS.G.WI71C.JGBMRB*:*:svnInsyde:pni71c:*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# iOTA 360
|
||||
#########################################
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*svn*iOTA*:*pn*IOTA2210*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Jumper
|
||||
#########################################
|
||||
|
||||
# EZpad mini 3
|
||||
sensor:modalias:acpi:BOSC0200*:dmi:bvnINSYDECorp.:bvrjumperx.T87.KFBNEE*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
# EZpad 6 Pro
|
||||
sensor:modalias:acpi:BOSC0200*:dmi:*:svnJumper:pnEZpad:*:rvr.A006:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Kazam
|
||||
#########################################
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:bvnINSYDECorp.:bvrVISION.I22K*:svnKAZAM:pnVISION:*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Lamina
|
||||
#########################################
|
||||
sensor:modalias:acpi:SMO8500*:dmi:*svnLamina*:*pnT701BR.SE*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*svnLAMINA:pnT-1016BNORD*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Lenovo
|
||||
#########################################
|
||||
sensor:modalias:acpi:NCPE0388*:dmi:*:rnLenovoYOGA510-14IKB:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
sensor:modalias:acpi:BOSC0200:BOSC0200:dmi:*ThinkPadYoga11e3rdGen*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
# Miix3-1030
|
||||
sensor:modalias:acpi:BMA250E*:dmi:bvnLENOVO:*:pvrLenovoMIIX3-1030:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
# IdeaPad Miix 310 note this only is for BIOS version (bvr) 1HCN4?WW, which has
|
||||
# a portrait LCD panel, versions with bvr 1HCN3?WW have a landscape panel
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:bvnLENOVO:bvr1HCN4?WW:*:svnLENOVO:pn80SG:*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
# IdeaPad Miix 320, different batches use a different sensor
|
||||
sensor:modalias:acpi:*BOSC0200*:dmi:*:svnLENOVO*:pn80XF:*
|
||||
sensor:modalias:acpi:SMO8840*:dmi:*:svnLENOVO:pn80XF:pvrLenovoMIIX320*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
# IdeaPad Miix 510
|
||||
sensor:modalias:acpi:*BOSC0200*:dmi:*:svnLENOVO*:pn80XE:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# LINX
|
||||
#########################################
|
||||
|
||||
# Linx 1010B
|
||||
sensor:modalias:acpi:BOSC0200*:dmi:*:svnLINX*:pnLINX1010B:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, -1
|
||||
|
||||
#########################################
|
||||
# MSI
|
||||
#########################################
|
||||
sensor:modalias:acpi:SMO8500*:dmi:*:svnMicro-StarInternationalCo.,Ltd.:pnS100:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Nuvision (TMax)
|
||||
#########################################
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*:svnTMAX:pnTM800W560L:*
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Onda
|
||||
#########################################
|
||||
sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrONDA.D89*:svnInsyde:pnONDATablet:*
|
||||
sensor:modalias:acpi:BMA250E*:dmi:bvnINSYDECorp.:bvrONDA.W89*:svnInsyde:pnONDATablet:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Peaq
|
||||
#########################################
|
||||
sensor:modalias:acpi:SMO8500*:dmi:*:svnPEAQ:pnPEAQPMMC1010MD99187:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Pipo
|
||||
#########################################
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*:svnPIPO:pnW2S:*
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
# Pipo W4
|
||||
sensor:modalias:acpi:SMO8500*:dmi:*:bvrV8L_WIN32_CHIPHD_*_DX:*:rvnAMICorporation:rnAptioCRB:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Ployer
|
||||
#########################################
|
||||
sensor:modalias:acpi:BMA250E*:dmi:*:svnShenzhenPLOYER*:pnMOMO7W:*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Point of View
|
||||
#########################################
|
||||
|
||||
# The Point of View TAB-P800W does not have its product name filled, so we
|
||||
# match the entire dmi-alias, assuming that the use of a BMA250E +
|
||||
# bios-version + bios-date combo is unique
|
||||
sensor:modalias:acpi:BMA250E*:dmi:bvnAmericanMegatrendsInc.:bvr3BAIR1013:bd08/22/2014:svnTobefilledbyO.E.M.:pnTobefilledbyO.E.M.:pvrTobefilledbyO.E.M.:rvnAMICorporation:rnAptioCRB:rvrTobefilledbyO.E.M.:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:
|
||||
sensor:modalias:acpi:BMA250E*:dmi:bvnAmericanMegatrendsInc.:bvr3BAIR1014:bd10/24/2014:svnTobefilledbyO.E.M.:pnTobefilledbyO.E.M.:pvrTobefilledbyO.E.M.:rvnAMICorporation:rnAptioCRB:rvrTobefilledbyO.E.M.:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Teclast
|
||||
#########################################
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*:svnTECLAST:pnX80Pro:*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*:svnTECLAST:pnX98PlusII:*
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Trekstor
|
||||
#########################################
|
||||
sensor:modalias:acpi:BMA250*:dmi:*:bvrTREK.G.WI71C.JGBMRBA*:*:svnInsyde:pnST70416-6:*
|
||||
sensor:modalias:acpi:BMA250*:dmi:*:bvrTREK.G.WI71C.JGBMRBA*:*:svnTrekStor:pnSurfTabwintron7.0ST70416-6:*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
#########################################
|
||||
# Yours
|
||||
#########################################
|
||||
sensor:modalias:acpi:BMA250E*:dmi:*:svnYOURS:pnY8W81:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,50 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# Database for joystick device information that cannot be queried directly.
|
||||
#
|
||||
# The lookup keys are composed in:
|
||||
# 70-joystick.rules
|
||||
#
|
||||
# Note: The format of the "joystick:" prefix match key is a
|
||||
# contract between the rules file and the hardware data, it might
|
||||
# change in later revisions to support more or better matches, it
|
||||
# is not necessarily expected to be a stable ABI.
|
||||
#
|
||||
# Match string format:
|
||||
# joystick:<bustype>:v<vid>p<pid>:name:<name>:
|
||||
#
|
||||
# vid/pid as 4-digit hex lowercase vendor/product
|
||||
#
|
||||
# To add local entries, create a new file
|
||||
# /etc/udev/hwdb.d/71-joystick-local.hwdb
|
||||
# and add your rules there. To load the new rules execute (as root):
|
||||
# systemd-hwdb update
|
||||
# udevadm trigger /dev/input/eventXX
|
||||
# where /dev/input/eventXX is the joystick in question. If in
|
||||
# doubt, simply use /dev/input/event* to reload all input rules.
|
||||
#
|
||||
# If your changes are generally applicable, preferably send them as a pull
|
||||
# request to
|
||||
# https://github.com/systemd/systemd
|
||||
# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
# include your new rules, a description of the device, and the output of
|
||||
# udevadm info /dev/input/eventXX.
|
||||
#
|
||||
# Permitted keys:
|
||||
# Specify if a joystick is a built-in one or external:
|
||||
# ID_INPUT_JOYSTICK_INTEGRATION=internal|external
|
||||
#
|
||||
# If the property is missing, user-space can assume:
|
||||
# ID_INPUT_JOYSTICK_INTEGRATION=external
|
||||
|
||||
joystick:bluetooth:*
|
||||
ID_INPUT_JOYSTICK_INTEGRATION=external
|
||||
|
||||
###########################################################
|
||||
# GPD
|
||||
###########################################################
|
||||
|
||||
# GPD Win, Classic and XBox 360 compat modes
|
||||
joystick:usb:v11c5p5507*
|
||||
joystick:usb:v045ep028e*
|
||||
ID_INPUT_JOYSTICK_INTEGRATION=internal
|
||||
@@ -0,0 +1,656 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# Database for the DPI setting of mice, trackballs, other pointer devices that
|
||||
# cannot be queried directly.
|
||||
#
|
||||
# The lookup keys are composed in:
|
||||
# 70-mouse.rules
|
||||
#
|
||||
# Note: The format of the "mouse:" prefix match key is a
|
||||
# contract between the rules file and the hardware data, it might
|
||||
# change in later revisions to support more or better matches, it
|
||||
# is not necessarily expected to be a stable ABI.
|
||||
#
|
||||
# Match string format:
|
||||
# mouse:<subsystem>:v<vid>p<pid>:name:<name>:
|
||||
#
|
||||
# Supported subsystems: usb, bluetooth
|
||||
# vid/pid as 4-digit hex lowercase vendor/product
|
||||
#
|
||||
# if vid/pid is unavailable, use
|
||||
# mouse:*:name:<name>:
|
||||
# if name is unavailable, use
|
||||
# mouse:<subsystem>:v<vid>p<pid>:*
|
||||
#
|
||||
# For example, the following 5 matches all match the same mouse:
|
||||
# mouse:usb:v17efp6019:name:Lenovo Optical USB Mouse:
|
||||
# mouse:usb:*:name:Lenovo Optical USB Mouse:
|
||||
# mouse:usb:v17efp6019:*
|
||||
# mouse:*:name:Lenovo Optical USB Mouse:
|
||||
#
|
||||
# To add local entries, create a new file
|
||||
# /etc/udev/hwdb.d/71-mouse-local.hwdb
|
||||
# and add your rules there. To load the new rules execute (as root):
|
||||
# systemd-hwdb update
|
||||
# udevadm trigger /dev/input/eventXX
|
||||
# where /dev/input/eventXX is the mouse in question. If in
|
||||
# doubt, simply use /dev/input/event* to reload all input rules.
|
||||
#
|
||||
# If your changes are generally applicable, preferably send them as a pull
|
||||
# request to
|
||||
# https://github.com/systemd/systemd
|
||||
# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
# include your new rules, a description of the device, and the output of
|
||||
# udevadm info /dev/input/eventXX.
|
||||
#
|
||||
# Allowed properties are:
|
||||
# ID_INPUT_TRACKBALL
|
||||
# MOUSE_DPI
|
||||
# MOUSE_WHEEL_CLICK_ANGLE
|
||||
# MOUSE_WHEEL_CLICK_ANGLE_HORIZONTAL
|
||||
# MOUSE_WHEEL_CLICK_COUNT
|
||||
# MOUSE_WHEEL_CLICK_COUNT_HORIZONTAL
|
||||
# MOUSE_WHEEL_TILT_HORIZONTAL
|
||||
# MOUSE_WHEEL_TILT_VERTICAL
|
||||
#
|
||||
#########################################
|
||||
# ID_INPUT_TRACKBALL #
|
||||
#########################################
|
||||
#
|
||||
# Specified *in additition* to ID_INPUT_MOUSE if the device is a trackball.
|
||||
# Removing ID_INPUT_MOUSE will break backwards compatibility.
|
||||
#
|
||||
#########################################
|
||||
# MOUSE_DPI #
|
||||
#########################################
|
||||
#
|
||||
# DPI settings are specified as
|
||||
# MOUSE_DPI=<dpi>[@<frequency>]
|
||||
#
|
||||
# Where <dpi> is the resolution in dots per inch, and <frequency> the
|
||||
# sampling frequency in Hz (optional). If a device supports dynamic
|
||||
# frequency scaling, the maximum frequency should be used. For devices
|
||||
# supporting multiple fixed frequencies, see below.
|
||||
#
|
||||
# The value of MOUSE_DPI is:
|
||||
# - a single integer for single-resolution mice, e.g.
|
||||
# MOUSE_DPI=800
|
||||
# or, if the frequency is known:
|
||||
# MOUSE_DPI=800@120
|
||||
# - a space-separated list of resolutions for multi-resolution mice.
|
||||
# The default resolution must be prefixed by an asterisk, the resolutions
|
||||
# in the database must be as shipped by the manufacturer. e.g.
|
||||
# MOUSE_DPI=400 *800 2000
|
||||
#
|
||||
# The order of resolutions is as configured by the HW manufacturer or in
|
||||
# ascending order, whichever appropriate.
|
||||
#
|
||||
# The frequency must be given to either none or all resolutions. If the
|
||||
# device supports multiple fixed frequencies, the order of items is
|
||||
# MOUSE_DPI=r1@f1 r2@f1 r3@f1 r1@f2 r2@f2 r3@f2
|
||||
#
|
||||
# If the default manufacturer-set resolution is unclear, a resolution of
|
||||
# 800 or 1000 should be set as default, if available. If neither is
|
||||
# available, choose the "middle" resolution value of those available.
|
||||
#
|
||||
# The list may contain a single item which must be marked with an
|
||||
# asterisk.
|
||||
#
|
||||
# Local changes to the a non-default resolution of the mouse (e.g. through
|
||||
# third-party software) must not be entered into this file, use a local
|
||||
# hwdb instead.
|
||||
#
|
||||
#########################################
|
||||
# MOUSE_WHEEL_CLICK_ANGLE #
|
||||
#########################################
|
||||
#
|
||||
# The angle in degrees per mouse wheel 'click', specified as
|
||||
# MOUSE_WHEEL_CLICK_ANGLE=<degrees>
|
||||
#
|
||||
# Most mice have a 15 degree click stop (24 clicks per full rotation).
|
||||
# For backwards-compatibility, the click angle must be an integer.
|
||||
# Where a device has non-integer click angles, the MOUSE_WHEEL_CLICK_COUNT
|
||||
# property should also be specified.
|
||||
#
|
||||
#########################################
|
||||
# MOUSE_WHEEL_CLICK_ANGLE_HORIZONTAL #
|
||||
#########################################
|
||||
#
|
||||
# Identical to MOUSE_WHEEL_CLICK_ANGLE but for the horizontal scroll wheel.
|
||||
# This property may only be specified if the angle for the horizontal
|
||||
# scroll wheel differs from the vertical wheel. If so, *both* click angles
|
||||
# must be specified.
|
||||
#
|
||||
#########################################
|
||||
# MOUSE_WHEEL_CLICK_COUNT #
|
||||
# MOUSE_WHEEL_CLICK_COUNT_HORIZONTAL #
|
||||
#########################################
|
||||
#
|
||||
# The number of clicks the wheel sends per 360 degree rotation. This
|
||||
# property should only be used where the click angle is not an integer.
|
||||
# For backwards compatibility it must be specified in addition to
|
||||
# MOUSE_WHEEL_CLICK_ANGLE.
|
||||
# Clients should prefer MOUSE_WHEEL_CLICK_COUNT where available, it is more
|
||||
# precise than MOUSE_WHEEL_CLICK_ANGLE.
|
||||
#
|
||||
# MOUSE_WHEEL_CLICK_COUNT_HORIZONTAL works the same way but also follows the
|
||||
# rules of MOUSE_WHEEL_CLICK_ANGLE_HORIZONTAL.
|
||||
|
||||
#########################################
|
||||
# MOUSE_WHEEL_TILT_HORIZONTAL #
|
||||
# MOUSE_WHEEL_TILT_VERTICAL #
|
||||
#########################################
|
||||
#
|
||||
# Indicates that the respective axis is not a mouse wheel rotation but a
|
||||
# tilt along that axis. Wheel tilt is most commonly used for horizontal
|
||||
# scroll wheel emulation on mice with only a single vertical wheel.
|
||||
#
|
||||
# The vertical and horizontal Axes are independently marked as tilt axes,
|
||||
# for example it is permitted to have a MOUSE_WHEEL_CLICK_COUNT or
|
||||
# MOUSE_WHEEL_CLICK_ANGLE for the vertical axis and mark the horizontal axis
|
||||
# marked as as MOUSE_WHEEL_TILT_HORIZONTAL.
|
||||
#
|
||||
# It is a bug to have either CLICK_COUNT or CLICK_ANGLE set on the same axis
|
||||
# as WHEEL_TILT. Applications should give priority to WHEEL_TILT and ignore
|
||||
# other settings.
|
||||
#
|
||||
# This is a flag only, permitted values: 0 or 1
|
||||
|
||||
#
|
||||
# Sort by brand, type (usb, bluetooth), DPI, frequency.
|
||||
# For mice with switchable resolution, sort by the starred entry.
|
||||
|
||||
##########################################
|
||||
# Generic
|
||||
##########################################
|
||||
mouse:*:name:*Trackball*:
|
||||
mouse:*:name:*trackball*:
|
||||
mouse:*:name:*TrackBall*:
|
||||
ID_INPUT_TRACKBALL=1
|
||||
|
||||
##########################################
|
||||
# Apple
|
||||
##########################################
|
||||
|
||||
# Apple MagicMouse
|
||||
# Note: this device changes name once connected to a mac, the name ends up
|
||||
# as $username`s mouse
|
||||
mouse:bluetooth:v05acp030d:name:*:
|
||||
MOUSE_DPI=1300@1000
|
||||
|
||||
##########################################
|
||||
# Chicony
|
||||
##########################################
|
||||
|
||||
# Chicony 2.4G Multimedia Wireless Kit MG-0919
|
||||
mouse:usb:v04f2p0963:name:Chicony 2.4G Multimedia Wireless Kit:
|
||||
MOUSE_DPI=1000@142
|
||||
|
||||
##########################################
|
||||
# Dell
|
||||
##########################################
|
||||
|
||||
# Dell MUAR DEL7
|
||||
mouse:usb:v413cp3012:name:Dell Dell USB Optical Mouse:
|
||||
MOUSE_DPI=400@166
|
||||
|
||||
# Dell USB Laser Mouse
|
||||
mouse:usb:v046dpc063:name:DELL DELL USB Laser Mouse:
|
||||
MOUSE_DPI=1000@125
|
||||
|
||||
# Dell MS116t
|
||||
mouse:usb:v413cp301a:name:PixArt Dell MS116 USB Optical Mouse:
|
||||
MOUSE_DPI=1000@125
|
||||
|
||||
##########################################
|
||||
# Dynex
|
||||
#########################################
|
||||
|
||||
# Dynex Wired Optical Mouse (DX-WMSE2)
|
||||
mouse:usb:v0461p4d46:name:USB Optical Mouse:
|
||||
MOUSE_DPI=1000@125
|
||||
|
||||
##########################################
|
||||
# Fujitsu Siemens
|
||||
##########################################
|
||||
|
||||
mouse:usb:v0461p4d16:name:USB Optical Mouse:
|
||||
MOUSE_DPI=500@125
|
||||
|
||||
##########################################
|
||||
# Future Technology Devices International
|
||||
##########################################
|
||||
|
||||
# SNES Mouse plugged into a Retrode 2
|
||||
mouse:usb:v0403p97c1:name:Retrode SNES Mouse:
|
||||
MOUSE_DPI=235@126
|
||||
|
||||
##########################################
|
||||
# Generic
|
||||
##########################################
|
||||
|
||||
# FM-901 Wireless Mouse
|
||||
mouse:usb:v1ea7p000b:name:2.4G RF Mouse:
|
||||
MOUSE_DPI=*800@125 1600@125
|
||||
|
||||
# WK-727
|
||||
mouse:usb:v04d9p0499:name:*
|
||||
MOUSE_DPI=800@125
|
||||
|
||||
##########################################
|
||||
# HandShoe Mouse
|
||||
##########################################
|
||||
|
||||
# HandShoe Mouse
|
||||
mouse:usb:v192fp0916:name:USB Optical Mouse:
|
||||
MOUSE_DPI=1000@128
|
||||
|
||||
##########################################
|
||||
# HoverStop
|
||||
##########################################
|
||||
|
||||
# Hoverstop active ergonomic mouse
|
||||
mouse:usb:v088dp1234:name:HoverStop NL Hoverstop active ergonomic mouse:
|
||||
MOUSE_DPI=400@129
|
||||
|
||||
##########################################
|
||||
# HP
|
||||
##########################################
|
||||
|
||||
# HP USB 1000dpi Laser Mouse
|
||||
mouse:usb:v0458p0133:name:Mouse Laser Mouse:
|
||||
MOUSE_DPI=1000@125
|
||||
MOUSE_WHEEL_CLICK_ANGLE=15
|
||||
|
||||
# HP X1000
|
||||
# Dell MS111-T
|
||||
mouse:usb:v093ap2510:name:PixArt USB Optical Mouse:
|
||||
mouse:usb:v093ap2510:name:PIXART USB OPTICAL MOUSE:
|
||||
MOUSE_DPI=1000@125
|
||||
|
||||
# HP X1200 Optical Mouse
|
||||
mouse:usb:v03f0p0641:name:PixArt HP X1200 USB Optical Mouse:
|
||||
MOUSE_DPI=1100@125
|
||||
|
||||
##########################################
|
||||
# IBM
|
||||
##########################################
|
||||
|
||||
# IBM USB Travel Mouse (MO32BO)
|
||||
mouse:usb:v04b3p3107:name:*
|
||||
MOUSE_DPI=800@125
|
||||
|
||||
##########################################
|
||||
# Lenovo
|
||||
##########################################
|
||||
|
||||
# Lenovo Optical USB Mouse
|
||||
mouse:usb:v17efp6019:name:Lenovo Optical USB Mouse:
|
||||
MOUSE_DPI=1000@125
|
||||
|
||||
# Lenovo M-U0025-O
|
||||
mouse:usb:v17efp6019:name:Logitech Lenovo USB Optical Mouse:
|
||||
MOUSE_DPI=1000@166
|
||||
|
||||
# ThinkPad USB Laser Mouse
|
||||
mouse:usb:v17efp6044:name:ThinkPad USB Laser Mouse:
|
||||
MOUSE_DPI=1200@125
|
||||
|
||||
# Lenovo Precision USB Mouse
|
||||
mouse:usb:v17efp6050:name:Lenovo Precision USB Mouse:
|
||||
MOUSE_DPI=1200@127
|
||||
|
||||
# Lenovo MOBGUL
|
||||
mouse:usb:v17efp601d:name:Primax Lenovo Laser Mouse:
|
||||
# Lenovo MOBGULA
|
||||
mouse:usb:v17efp6045:name:Lenovo USB Laser Mouse:
|
||||
MOUSE_DPI=1600@125
|
||||
|
||||
|
||||
##########################################
|
||||
# Logitech
|
||||
##########################################
|
||||
|
||||
# Note: devices using the Logitech Unifying receiver will need two entries,
|
||||
# one for pre 3.19 with the wireless PID in the name, one for 3.19 with the
|
||||
# model name. The usb vid/pid is the same for all those devices.
|
||||
# Until 3.19 is available, this list just has the Wireless PID entry.
|
||||
|
||||
# Logitech Anywhere MX
|
||||
mouse:usb:v046dpc52b:name:Logitech Unifying Device. Wireless PID:1017:
|
||||
mouse:usb:v046dp1017:name:Logitech Anywhere MX:
|
||||
MOUSE_WHEEL_CLICK_ANGLE=20
|
||||
|
||||
# Logitech M-BJ58 Optical Mouse
|
||||
mouse:usb:v046dpc00e:name:Logitech USB-PS/2 Optical Mouse:
|
||||
# Logitech Mini Optical Mouse
|
||||
mouse:usb:v046dpc016:name:Logitech Optical USB Mouse:
|
||||
# Logitech MX310 Optical Mouse
|
||||
mouse:usb:v046dpc01b:name:Logitech USB-PS/2 Optical Mouse:
|
||||
# Logitech USB-PS/2 M-BT58
|
||||
mouse:usb:v046dpc03e:name:Logitech USB-PS/2 Optical Mouse:
|
||||
# Logitech TrackMan Marble Wheel USB
|
||||
mouse:usb:v046dpc401:name:Logitech USB-PS/2 Trackball:
|
||||
MOUSE_DPI=400@125
|
||||
|
||||
# Logitech Cordless MouseMan Optical M-RM63
|
||||
mouse:usb:v046dpc501:name:Logitech USB Receiver:
|
||||
MOUSE_DPI=800@63
|
||||
|
||||
# Lenovo USB mouse model MO28UOL
|
||||
mouse:usb:v04b3p310c:name:USB Optical Mouse:
|
||||
MOUSE_DPI=400@142
|
||||
|
||||
# Logitech M570 trackball
|
||||
mouse:usb:v046dp1028:name:Logitech M570:
|
||||
MOUSE_DPI=540@167
|
||||
ID_INPUT_TRACKBALL=1
|
||||
|
||||
# Logitech USB-PS/2 M-BZ96C
|
||||
mouse:usb:v046dpc045:name:Logitech USB-PS/2 Optical Mouse:
|
||||
MOUSE_DPI=600@125
|
||||
|
||||
# Logitech Wireless Mouse M325
|
||||
mouse:usb:v046dp400a:name:Logitech M325:
|
||||
mouse:usb:v046dpc52b:name:Logitech Unifying Device. Wireless PID:400a:
|
||||
MOUSE_DPI=600@166
|
||||
MOUSE_WHEEL_CLICK_ANGLE=20
|
||||
|
||||
# Logitech MX400 Performance Laser Mouse
|
||||
mouse:usb:v046dpc043:name:Logitech USB-PS/2 Optical Mouse:
|
||||
# Logitech MX1000 Laser Cordless Mouse
|
||||
mouse:usb:v046dpc50e:name:Logitech USB RECEIVER:
|
||||
# Logitech Cordless Click! Plus
|
||||
mouse:usb:v046dpc50e:name:Logitech USB Receiver:
|
||||
# Logitech, Inc. RX 300 Optical Mouse
|
||||
mouse:usb:v046dpc040:name:Logitech USB-PS/2 Optical Mouse:
|
||||
MOUSE_DPI=800@125
|
||||
|
||||
# Logitech MX 518
|
||||
mouse:usb:v046dpc01e:name:Logitech USB-PS/2 Optical Mouse:
|
||||
MOUSE_DPI=400@125 *800@125 1600@125
|
||||
|
||||
# Logitech, Inc. RX 250 Optical Mouse
|
||||
mouse:usb:v046dpc050:name:Logitech USB-PS/2 Optical Mouse:
|
||||
MOUSE_DPI=1000@142
|
||||
|
||||
# Logitech Wireless Mouse M185
|
||||
mouse:usb:v046dp4008:name:Logitech M185:
|
||||
mouse:usb:v046dpc52b:name:Logitech Unifying Device. Wireless PID:4008:
|
||||
# Logitech Wireless Mouse M510
|
||||
mouse:usb:v046dp1025:name:Logitech M510:
|
||||
# Logitech M705 (marathon mouse)
|
||||
mouse:usb:v046dp101b:name:Logitech M705:
|
||||
mouse:usb:v046dpc52b:name:Logitech Unifying Device. Wireless PID:101b:
|
||||
MOUSE_DPI=1000@125
|
||||
|
||||
# Logitech MX Revolution
|
||||
mouse:usb:v046dpc51a:name:Logitech USB Receiver:
|
||||
MOUSE_DPI=800@200
|
||||
|
||||
# Logitech G5 Laser Mouse
|
||||
mouse:usb:v046dpc049:name:Logitech USB Gaming Mouse:
|
||||
# Logitech G500s Laser Gaming Mouse
|
||||
mouse:usb:v046dpc24e:name:Logitech G500s Laser Gaming Mouse:
|
||||
MOUSE_DPI=400@500 *800@500 2000@500
|
||||
|
||||
# Logitech G9
|
||||
mouse:usb:v046dpc048:name:Logitech G9 Laser Mouse:
|
||||
MOUSE_DPI=400@1000 800@1000 *1600@1000
|
||||
|
||||
# Logitech G9x [Call of Duty MW3 Edition]
|
||||
mouse:usb:v046dpc249:name:Logitech G9x Laser Mouse:
|
||||
MOUSE_DPI=400@1000 800@1000 *1600@1000 3200@1000
|
||||
|
||||
# Logitech G400 (Wired)
|
||||
mouse:usb:v046dpc245:name:Logitech Gaming Mouse G400:
|
||||
MOUSE_DPI=400@1000 *800@1000 1800@1000 3600@1000
|
||||
|
||||
# Logitech G400s (Wired)
|
||||
mouse:usb:v046dpc24c:name:Logitech G400s Optical Gaming Mouse:
|
||||
MOUSE_DPI=400@1000 *800@1000 2000@1000 4000@1000
|
||||
|
||||
# Logitech G402 Hyperion Fury
|
||||
mouse:usb:v046dpc07e:name:Logitech Gaming Mouse G402:
|
||||
MOUSE_DPI=400@1000 *800@1000 1600@1000 3200@1000
|
||||
|
||||
# Logitech G502 Proteus Spectrum
|
||||
mouse:usb:v046dpc332:name:Logitech Gaming Mouse G502:
|
||||
MOUSE_DPI=1200@1000 *2400@1000 3200@1000 6400@1000
|
||||
|
||||
# Logitech B605 Wireless Mouse (also M505)
|
||||
mouse:usb:v046dp101d:name:Logitech B605:
|
||||
mouse:usb:v046dp101d:name:Logitech M505:
|
||||
mouse:usb:v046dpc52b:name:Logitech Unifying Device. Wireless PID:101d:
|
||||
MOUSE_DPI=900@166
|
||||
|
||||
# Logitech Cordless Desktop Wave Mouse
|
||||
mouse:usb:v046dpc517:name:Logitech USB Receiver:
|
||||
MOUSE_DPI=950@125
|
||||
|
||||
# Logitech RX1000 Laser Mouse
|
||||
mouse:usb:v046dpc046:name:Logitech USB Optical Mouse:
|
||||
# Logitech M100 Optical Mouse
|
||||
mouse:usb:v046dpc05a:name:Logitech USB Optical Mouse:
|
||||
# Logitech USB Laser Mouse M-U0011-O rebranded as "terra Laser"
|
||||
mouse:usb:v046dpc065:name:Logitech USB Laser Mouse:
|
||||
# Logitech USB Laser Mouse M-U0007 [M500]
|
||||
mouse:usb:v046dpc069:name:Logitech USB Laser Mouse:
|
||||
# Logitech V500 Cordless Notebook Mouse
|
||||
mouse:usb:v046dpc510:name:Logitech USB Receiver:
|
||||
# Logitech M560 Wireless Mouse
|
||||
mouse:usb:v046dp402d:name:Logitech M560:
|
||||
mouse:usb:v046dpc52b:name:Logitech Unifying Device. Wireless PID:402d:
|
||||
MOUSE_DPI=1000@125
|
||||
|
||||
# Logitech M305 Wireless Optical Mouse
|
||||
mouse:usb:v046dpc52f:name:Logitech USB Receiver:
|
||||
MOUSE_DPI=1000@170
|
||||
|
||||
# Logitech Performance MX
|
||||
mouse:usb:v046dp101a:name:Logitech Performance MX:
|
||||
MOUSE_DPI=1000@166
|
||||
|
||||
# Logitech MX Master
|
||||
# Horiz wheel has 14 stops, angle is rounded up
|
||||
mouse:usb:v046dp4041:name:Logitech MX Master:
|
||||
MOUSE_DPI=1000@166
|
||||
MOUSE_WHEEL_CLICK_ANGLE=15
|
||||
MOUSE_WHEEL_CLICK_ANGLE_HORIZONTAL=26
|
||||
MOUSE_WHEEL_CLICK_COUNT=24
|
||||
MOUSE_WHEEL_CLICK_COUNT_HORIZONTAL=14
|
||||
|
||||
# Logitech MX Master 2s
|
||||
# Horiz wheel has 14 stops, angle is rounded up
|
||||
mouse:usb:v046dp4069:name:Logitech MX Master 2s:
|
||||
MOUSE_DPI=1000@125
|
||||
MOUSE_WHEEL_CLICK_ANGLE=15
|
||||
MOUSE_WHEEL_CLICK_ANGLE_HORIZONTAL=26
|
||||
MOUSE_WHEEL_CLICK_COUNT=24
|
||||
MOUSE_WHEEL_CLICK_COUNT_HORIZONTAL=14
|
||||
|
||||
# Logitech MK260 Wireless Combo Receiver aka M-R0011
|
||||
mouse:usb:v046dpc52e:name:Logitech USB Receiver:
|
||||
MOUSE_DPI=1000@200
|
||||
|
||||
# Logitech G100s Optical Gaming Mouse
|
||||
mouse:usb:v046dpc247:name:Logitech G100s Optical Gaming Mouse:
|
||||
MOUSE_DPI=*1000@500 1750@500 2500@500
|
||||
|
||||
# Logitech G700 Laser Mouse (Wired)
|
||||
mouse:usb:v046dpc06b:name:Logitech G700 Laser Mouse:
|
||||
# Logitech G700 Laser Mouse (Wireless)
|
||||
mouse:usb:v046dpc531:name:Logitech USB Receiver:
|
||||
MOUSE_DPI=*1000@500 3800@500 500@1000 1500@1000 2000@1000
|
||||
|
||||
# Logitech Wireless Mouse M310
|
||||
mouse:usb:v046dp1024:name:Logitech M310:
|
||||
MOUSE_DPI=1100@168
|
||||
|
||||
# Logitech USB Laser Mouse M-UAS144 [LS1 Laser Mouse]
|
||||
mouse:usb:v046dpc062:name:Logitech USB Laser Mouse:
|
||||
MOUSE_DPI=1200@125
|
||||
|
||||
# Logitech T620 (or, the soap)
|
||||
mouse:usb:v046dp4027:name:Logitech T620:
|
||||
mouse:usb:v046dpc52b:name:Logitech Unifying Device. Wireless PID:4027:
|
||||
MOUSE_DPI=1200@250
|
||||
|
||||
# Logitech ZoneTouch Mouse T400
|
||||
mouse:usb:v046dp4026:name:Logitech T400:
|
||||
mouse:usb:v046dpc52b:name:Logitech Unifying Device. Wireless PID:4026:
|
||||
MOUSE_DPI=1300@166
|
||||
|
||||
# Logitech G500 Mouse
|
||||
mouse:usb:v046dpc068:name:Logitech G500:
|
||||
MOUSE_DPI=*1600@500 2600@500 3600@500
|
||||
|
||||
# Logitech TrackMan Wheel (USB)
|
||||
mouse:usb:v046dpc404:name:Logitech Trackball:
|
||||
MOUSE_DPI=300@125
|
||||
|
||||
# Logitech MX1000 Laser Cordless Mouse
|
||||
mouse:bluetooth:v046dpb003:name:Logitech MX1000 mouse:
|
||||
MOUSE_DPI=800@80
|
||||
|
||||
# Logitech Ultrathin Touch Mouse
|
||||
mouse:bluetooth:v046dpb00d:name:Ultrathin Touch Mouse:
|
||||
MOUSE_DPI=1000@1000
|
||||
|
||||
# ImPS/2 Logitech Wheel Mouse
|
||||
mouse:ps2:*:name:ImPS/2 Logitech Wheel Mouse:
|
||||
MOUSE_DPI=400@100
|
||||
|
||||
# ImExPS/2 Logitech Wheel Mouse
|
||||
mouse:ps2:*:name:ImExPS/2 Logitech Wheel Mouse:
|
||||
MOUSE_DPI=400@250
|
||||
|
||||
##########################################
|
||||
# Microsoft
|
||||
##########################################
|
||||
|
||||
mouse:usb:v045ep0040:name:Microsoft Microsoft 3-Button Mouse with IntelliEye(TM):
|
||||
MOUSE_DPI=400@125
|
||||
|
||||
# Note: unsure that these work, it's likely that all devices on these
|
||||
# receivers show up with the same vid/pid/name
|
||||
|
||||
# Microsoft Wireless Mouse 5000
|
||||
mouse:usb:v045ep0745:name:Microsoft Microsoft® 2.4GHz Transceiver v6.0:
|
||||
MOUSE_DPI=800@142
|
||||
|
||||
# Microsoft Comfort Mouse 4500
|
||||
mouse:usb:v045ep076c:name:Microsoft Microsoft® Comfort Mouse 4500:
|
||||
MOUSE_DPI=1000@125
|
||||
|
||||
# Microsoft Wireless Mobile Mouse 4000
|
||||
mouse:usb:v045ep0745:name:Microsoft Microsoft® Nano Transceiver v2.0:
|
||||
# Microsoft Sculpt Ergonomic Mouse
|
||||
mouse:usb:v045ep07a5:name:Microsoft Microsoft® 2.4GHz Transceiver v9.0:
|
||||
MOUSE_DPI=1000@142
|
||||
|
||||
# Microsoft Arc Touch Mouse USB
|
||||
mouse:usb:v045ep07b1:name:Microsoft Microsoft® Nano Transceiver v1.0:
|
||||
MOUSE_DPI=1400@142
|
||||
|
||||
# Microsoft Wireless Laser Mouse 8000
|
||||
mouse:bluetooth:v045ep0702:name:Microsoft Wireless Laser Mouse 8000:
|
||||
MOUSE_DPI=1000@1000
|
||||
|
||||
# Microsoft Sculpt Comfort Mouse
|
||||
mouse:bluetooth:v045ep07a2:name:Microsoft Sculpt Comfort Mouse:
|
||||
MOUSE_DPI=1000@2000
|
||||
|
||||
# Microsoft Arc Touch Mouse SE:
|
||||
mouse:bluetooth:v045ep07f3:name:Arc Touch Mouse SE:
|
||||
MOUSE_DPI=1000@2000
|
||||
|
||||
# Microsoft Surface Mouse
|
||||
mouse:bluetooth:v0000p0000:name:Surface Mouse:
|
||||
MOUSE_DPI=2000@2000
|
||||
|
||||
##########################################
|
||||
# Mionix
|
||||
##########################################
|
||||
|
||||
#Mionix Avior 7000
|
||||
mouse:usb:v22d4p1308:name:Laview Technology Mionix Avior 7000:
|
||||
MOUSE_DPI=400@1000 *1600@1000 7000@1000
|
||||
MOUSE_WHEEL_CLICK_ANGLE=15
|
||||
|
||||
##########################################
|
||||
# MODECOM
|
||||
##########################################
|
||||
|
||||
# MODECOM MC-WM4 Wireless Optical Mouse
|
||||
mouse:usb:v0e8fp00a7:name:DaKai 2.4G RX:
|
||||
MOUSE_DPI=*800@126 1600@126
|
||||
|
||||
##########################################
|
||||
# Oklick
|
||||
##########################################
|
||||
|
||||
# Oklick 406S Bluetooth Laser Mouse
|
||||
mouse:bluetooth:v056ep0061:name:Laser BTmouse:
|
||||
MOUSE_DPI=*800@333 1600@333
|
||||
|
||||
##########################################
|
||||
# P-Active
|
||||
##########################################
|
||||
|
||||
# P-Active Wireless Mouse PA-27K2
|
||||
mouse:usb:v0425p0101:name:G-Tech CHINA USB Wireless Mouse & KeyBoard V1.01 :
|
||||
MOUSE_DPI=800@125
|
||||
|
||||
##########################################
|
||||
# Razer
|
||||
##########################################
|
||||
|
||||
# Razer Abyssus
|
||||
mouse:usb:v1532p0042:name:Razer Razer Abyssus:
|
||||
MOUSE_DPI=3500@1000
|
||||
|
||||
# Razer DeathAdder Black Edition
|
||||
mouse:usb:v1532p0029:name:Razer Razer DeathAdder:
|
||||
MOUSE_DPI=3500@1000
|
||||
|
||||
##########################################
|
||||
# Roccat
|
||||
##########################################
|
||||
|
||||
# Roccat Lua (ROC-11-310)
|
||||
mouse:usb:v1e7dp2c2e:name:ROCCAT ROCCAT Lua:
|
||||
MOUSE_DPI=250@125 500@125 1000@125 1250@125 1500@125 1750@125 2000@125 250@250 500@250 1000@250 1250@250 1500@250 1750@250 2000@250 250@500 500@500 1000@500 1250@500 1500@500 1750@500 2000@500 250@1000 500@1000 *1000@1000 1250@1000 1500@1000 1750@1000 2000@1000
|
||||
MOUSE_WHEEL_CLICK_ANGLE=15
|
||||
|
||||
##########################################
|
||||
# Sharkoon
|
||||
##########################################
|
||||
|
||||
# Sharkoon Shark Force Gaming Mouse
|
||||
mouse:usb:v093ap2521:name:USB OPTICAL MOUSE:
|
||||
MOUSE_DPI=*1000@125 1600@125 600@125
|
||||
|
||||
##########################################
|
||||
# SteelSeries
|
||||
##########################################
|
||||
|
||||
# SteelSeries Sensei Raw
|
||||
mouse:usb:v1038p1369:name:SteelSeries Sensei Raw Gaming Mouse:
|
||||
MOUSE_DPI=1000@1022
|
||||
|
||||
##########################################
|
||||
# Trust
|
||||
##########################################
|
||||
|
||||
# Trust illuminated mouse gxt 152
|
||||
mouse:usb:v145fp01ac:name:HID-compliant Mouse Trust Gaming Mouse:
|
||||
MOUSE_DPI=*800@528 1200@537 1600@536 2400@521
|
||||
|
||||
##########################################
|
||||
# Zelotes
|
||||
##########################################
|
||||
|
||||
# Zelotes 5500 DPI 7 Button USB Wired Gaming Mouse
|
||||
mouse:usb:v1d57pad17:*
|
||||
MOUSE_DPI=1000@500 1600@500 2400@500 3200@500 5500@500 *1000@1000 1600@1000 2400@1000 3200@1000 5500@1000
|
||||
@@ -0,0 +1,144 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# Pointingstick const-accel configuration, to make different brand / model
|
||||
# laptop pointingsticks have the same speed / feel, and per model adjustment
|
||||
# of the IBM TrackPoint driver's sensitivity setting
|
||||
#
|
||||
# The lookup keys are composed in:
|
||||
# 60-evdev.rules
|
||||
#
|
||||
# Note: The format of the "evdev:" prefix match key is a contract between the
|
||||
# rules file and the hardware data, it might change in later revisions to
|
||||
# support more or better matches, it is not necessarily a stable ABI.
|
||||
#
|
||||
# Supported hardware matches are:
|
||||
# - Generic input devices match:
|
||||
# evdev:input:bZZZZvYYYYpXXXXeWWWW-VVVV
|
||||
# This matches on the kernel modalias of the input-device, mainly:
|
||||
# ZZZZ is the bus-id (see /usr/include/linux/input.h BUS_*), YYYY, XXXX and
|
||||
# WWW are the 4-digit hex uppercase vendor, product and version ID and VVVV
|
||||
# is an arbitrary length input-modalias describing the device capabilities.
|
||||
# The vendor, product and version ID for a device node "eventX" is listed
|
||||
# in /sys/class/input/eventX/device/id.
|
||||
#
|
||||
# - Input driver device name and DMI data match:
|
||||
# evdev:name:<input device name>:dmi:bvn*:bvr*:bd*:svn<vendor>:pn*
|
||||
# <input device name> is the name device specified by the driver,
|
||||
# <vendor> is the firmware-provided string from the kernel DMI modalias,
|
||||
# see /sys/class/dmi/id/modalias
|
||||
#
|
||||
# To add local entries, create a new file
|
||||
# /etc/udev/hwdb.d/71-pointingstick-local.hwdb
|
||||
# and add your rules there. To load the new rules execute (as root):
|
||||
# systemd-hwdb update
|
||||
# udevadm trigger /dev/input/eventXX
|
||||
# where /dev/input/eventXX is the pointingstick in question. If in
|
||||
# doubt, simply use /dev/input/event* to reload all input rules.
|
||||
#
|
||||
# If your changes are generally applicable, preferably send them as a pull
|
||||
# request to
|
||||
# https://github.com/systemd/systemd
|
||||
# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
# include your new rules, a description of the device, and the output of
|
||||
# udevadm info /dev/input/eventXX.
|
||||
#
|
||||
# Allowed properties are:
|
||||
# POINTINGSTICK_CONST_ACCEL
|
||||
# POINTINGSTICK_SENSITIVITY
|
||||
#
|
||||
# Entries should be sorted with growing _SENSITIVITY and _CONST_ACCEL.
|
||||
#
|
||||
#########################################
|
||||
# POINTINGSTICK_CONST_ACCEL #
|
||||
#########################################
|
||||
#
|
||||
# Trackpoint const accel settings are specified as
|
||||
# POINTINGSTICK_CONST_ACCEL=<accel>
|
||||
#
|
||||
# Where <accel> is a floating point number, using a '.' seperator, specifying
|
||||
# by how much to multiply deltas generated by the pointingstick to get
|
||||
# normalized deltas.
|
||||
#
|
||||
#########################################
|
||||
# POINTINGSTICK_SENSITIVITY #
|
||||
#########################################
|
||||
#
|
||||
# TPPS/2 IBM TrackPoint driver sensitivity sysfs setting
|
||||
# POINTINGSTICK_SENSITIVITY=<sensitivity>
|
||||
#
|
||||
# Where <sensitivity> is a number between 0 and 255, note this property
|
||||
# only applies to TPPS/2 IBM TrackPoint devices, see
|
||||
# drivers/input/mouse/trackpoint.c in the Linux kernel sources.
|
||||
#
|
||||
|
||||
#
|
||||
# Sort by brand, model
|
||||
|
||||
#########################################
|
||||
# Dell
|
||||
#########################################
|
||||
|
||||
# Latitude D620
|
||||
evdev:name:*DualPoint Stick:dmi:bvn*:bvr*:bd*:svnDellInc.:pnLatitudeD620*:pvr*
|
||||
POINTINGSTICK_CONST_ACCEL=0.5
|
||||
|
||||
# Latitude E5570
|
||||
evdev:name:*DualPoint Stick:dmi:bvn*:bvr*:bd*:svnDellInc.:pnLatitudeE5570*:pvr*
|
||||
POINTINGSTICK_CONST_ACCEL=0.1
|
||||
|
||||
# Latitude E6320
|
||||
evdev:name:*DualPoint Stick:dmi:bvn*:bvr*:bd*:svnDellInc.:pnLatitudeE6320*:pvr*
|
||||
POINTINGSTICK_CONST_ACCEL=2.0
|
||||
|
||||
# Latitude E6400
|
||||
evdev:name:*DualPoint Stick:dmi:bvn*:bvr*:bd*:svnDellInc.:pnLatitudeE6400*:pvr*
|
||||
POINTINGSTICK_CONST_ACCEL=1.5
|
||||
|
||||
# Latitude E7470
|
||||
evdev:name:*DualPoint Stick:dmi:bvn*:bvr*:bd*:svnDellInc.:pnLatitudeE7470*:pvr*
|
||||
POINTINGSTICK_CONST_ACCEL=0.6
|
||||
|
||||
#########################################
|
||||
# Lenovo
|
||||
#########################################
|
||||
|
||||
# Lenovo Thinkpad X220
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX220:*
|
||||
# Lenovo Thinkpad X230
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX230:*
|
||||
# Lenovo Thinkpad X230 tablet
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX230Tablet:*
|
||||
# Lenovo ThinkPad *30 series
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPad??30:*
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPad??30?:*
|
||||
# Lenovo Thinkpad *40 series
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPad??40:*
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPad??40?:*
|
||||
# Lenovo Thinkpad *50 series
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPad??50:*
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPad??50?:*
|
||||
# Lenovo Thinkpad *60 series
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPad??60:*
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPad??60?:*
|
||||
# Lenovo Thinkpad X1 Carbon 3rd gen
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX1Carbon3rd:*
|
||||
# Lenovo Thinkpad X1 Carbon 4th gen
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX1Carbon4th:*
|
||||
# Lenovo Thinkpad X1 Tablet
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX1Tablet:*
|
||||
POINTINGSTICK_SENSITIVITY=200
|
||||
POINTINGSTICK_CONST_ACCEL=1.0
|
||||
|
||||
# Lenovo Thinkpad X200/X201/X200s/X201s
|
||||
# Note these come with 2 revisions of keyboard, with the trackpoints having a
|
||||
# different sensitivity in the different revisions. 1.25 is a bit slow for the
|
||||
# least sensitive revision, but it is better to be a bit slow than too fast.
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX20?:*
|
||||
evdev:name:TPPS/2 IBM TrackPoint:dmi:bvn*:bvr*:bd*:svnLENOVO:pn*:pvrThinkPadX20??:*
|
||||
POINTINGSTICK_SENSITIVITY=200
|
||||
POINTINGSTICK_CONST_ACCEL=1.25
|
||||
|
||||
# Lenovo UltraNav SK-8845 (USB keyboard)
|
||||
evdev:input:b0003v06CBp0009*
|
||||
POINTINGSTICK_CONST_ACCEL=2.5
|
||||
POINTINGSTICK_SENSITIVITY=200
|
||||
@@ -0,0 +1,50 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# Database for touchpad device information that cannot be queried directly.
|
||||
#
|
||||
# The lookup keys are composed in:
|
||||
# 70-touchpad.rules
|
||||
#
|
||||
# Note: The format of the "touchpad:" prefix match key is a
|
||||
# contract between the rules file and the hardware data, it might
|
||||
# change in later revisions to support more or better matches, it
|
||||
# is not necessarily expected to be a stable ABI.
|
||||
#
|
||||
# Match string format:
|
||||
# touchpad:<subsystem>:v<vid>p<pid>:name:<name>:
|
||||
#
|
||||
# vid/pid as 4-digit hex lowercase vendor/product
|
||||
#
|
||||
# To add local entries, create a new file
|
||||
# /etc/udev/hwdb.d/71-touchpad-local.hwdb
|
||||
# and add your rules there. To load the new rules execute (as root):
|
||||
# systemd-hwdb update
|
||||
# udevadm trigger /dev/input/eventXX
|
||||
# where /dev/input/eventXX is the touchpad in question. If in
|
||||
# doubt, simply use /dev/input/event* to reload all input rules.
|
||||
#
|
||||
# If your changes are generally applicable, preferably send them as a pull
|
||||
# request to
|
||||
# https://github.com/systemd/systemd
|
||||
# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
# include your new rules, a description of the device, and the output of
|
||||
# udevadm info /dev/input/eventXX.
|
||||
#
|
||||
# Permitted keys:
|
||||
# Specify if a touchpad is a built-in one or external:
|
||||
# ID_INPUT_TOUCHPAD_INTEGRATION=internal|external
|
||||
|
||||
touchpad:i8042:*
|
||||
touchpad:rmi:*
|
||||
touchpad:usb:*
|
||||
ID_INPUT_TOUCHPAD_INTEGRATION=internal
|
||||
|
||||
touchpad:bluetooth:*
|
||||
ID_INPUT_TOUCHPAD_INTEGRATION=external
|
||||
|
||||
###########################################################
|
||||
# Wacom
|
||||
###########################################################
|
||||
touchpad:usb:v056a*
|
||||
ID_INPUT_TOUCHPAD_INTEGRATION=external
|
||||
|
||||
@@ -0,0 +1,395 @@
|
||||
# Do not edit this file, it will be overwritten on update
|
||||
#
|
||||
# This file contains hwdb matches for libinput model-specific quirks.
|
||||
# The contents of this file are a contract between libinput, udev rules and
|
||||
# the hwdb.
|
||||
# IT IS NOT A STABLE API AND SUBJECT TO CHANGE AT ANY TIME
|
||||
|
||||
# The lookup keys are composed in:
|
||||
# 90-libinput-model-quirks.rules
|
||||
#
|
||||
# Match string formats:
|
||||
# libinput:mouse:<modalias>
|
||||
# libinput:touchpad:<modalias>
|
||||
# libinput:name:<name>:dmi:<dmi string>
|
||||
# libinput:name:<name>:dt:<device-tree string>
|
||||
#
|
||||
# Sort by brand, model
|
||||
|
||||
##########################################
|
||||
# Chassis types 9 (Laptop) and 10
|
||||
# (Notebook) are expected to have working
|
||||
# lid switches
|
||||
##########################################
|
||||
libinput:name:*Lid Switch*:dmi:*:ct10:*
|
||||
libinput:name:*Lid Switch*:dmi:*:ct9:*
|
||||
LIBINPUT_ATTR_LID_SWITCH_RELIABILITY=reliable
|
||||
|
||||
##########################################
|
||||
# Serial keyboards are internal
|
||||
##########################################
|
||||
libinput:keyboard:input:b0011v*
|
||||
LIBINPUT_ATTR_KEYBOARD_INTEGRATION=internal
|
||||
|
||||
##########################################
|
||||
# Aiptek
|
||||
##########################################
|
||||
libinput:tablet:input:b0003v08CAp*
|
||||
LIBINPUT_MODEL_TABLET_NO_TILT=1
|
||||
|
||||
##########################################
|
||||
# ALPS
|
||||
##########################################
|
||||
libinput:name:*AlpsPS/2 ALPS DualPoint TouchPad:dmi:*
|
||||
libinput:name:*AlpsPS/2 ALPS GlidePoint:dmi:*
|
||||
LIBINPUT_MODEL_ALPS_TOUCHPAD=1
|
||||
|
||||
# ALPS firmware versions:
|
||||
# V1 = 0x100
|
||||
# V2 = 0x200
|
||||
# V3 = 0x300
|
||||
# V3_RUSHMORE = 0x310
|
||||
# V4 = 0x400
|
||||
# V5 = 0x500
|
||||
# V6 = 0x600
|
||||
# V7 = 0x700 /* t3btl t4s */
|
||||
# V8 = 0x800 /* SS4btl SS4s */
|
||||
# V9 = 0x900 /* ss3btl */
|
||||
libinput:touchpad:input:b0011v0002p0008e0800*
|
||||
LIBINPUT_ATTR_SIZE_HINT=100x55
|
||||
|
||||
libinput:pointingstick:input:b0011v0002p0008e0800*
|
||||
LIBINPUT_ATTR_TRACKPOINT_RANGE=160
|
||||
|
||||
##########################################
|
||||
# Apple
|
||||
##########################################
|
||||
libinput:touchpad:input:b0003v05ACp*
|
||||
libinput:touchpad:input:b0005v05ACp*
|
||||
LIBINPUT_MODEL_APPLE_TOUCHPAD=1
|
||||
LIBINPUT_ATTR_SIZE_HINT=104x75
|
||||
LIBINPUT_ATTR_TOUCH_SIZE_RANGE=150:130
|
||||
LIBINPUT_ATTR_PALM_SIZE_THRESHOLD=800
|
||||
|
||||
libinput:name:*Apple Inc. Apple Internal Keyboard*:dmi:*
|
||||
LIBINPUT_ATTR_KEYBOARD_INTEGRATION=internal
|
||||
|
||||
libinput:mouse:input:b0005v05ACp030D*
|
||||
LIBINPUT_MODEL_APPLE_MAGICMOUSE=1
|
||||
|
||||
# Apple Magic Trackpad v1 (2010, clickpad)
|
||||
libinput:touchpad:input:b0005v05ACp030E*
|
||||
LIBINPUT_ATTR_SIZE_HINT=130x110
|
||||
LIBINPUT_ATTR_TOUCH_SIZE_RANGE=20:10
|
||||
LIBINPUT_ATTR_PALM_SIZE_THRESHOLD=900
|
||||
|
||||
libinput:touchpad:input:b0003v05ACp021A*
|
||||
LIBINPUT_MODEL_APPLE_TOUCHPAD_ONEBUTTON=1
|
||||
|
||||
# MacBookPro5,5 (Mid 2009)
|
||||
libinput:touchpad:input:b0003v05ACp0237*
|
||||
LIBINPUT_ATTR_PALM_SIZE_THRESHOLD=1000
|
||||
|
||||
##########################################
|
||||
# Asus
|
||||
##########################################
|
||||
libinput:name:*ETPS/2 Elantech Touchpad*:dmi:*svnASUSTeKCOMPUTERINC.:pnX555LAB:*
|
||||
LIBINPUT_MODEL_TOUCHPAD_VISIBLE_MARKER=1
|
||||
|
||||
##########################################
|
||||
# Chicony
|
||||
##########################################
|
||||
# Acer Hawaii Keyboard, uses Chicony VID
|
||||
libinput:touchpad:input:b0003v04F2p1558*
|
||||
LIBINPUT_ATTR_TPKBCOMBO_LAYOUT=below
|
||||
|
||||
##########################################
|
||||
# Cyborg
|
||||
##########################################
|
||||
# Saitek Cyborg R.A.T.5 Mouse
|
||||
libinput:mouse:input:b0003v06A3p0CD5*
|
||||
LIBINPUT_MODEL_CYBORG_RAT=1
|
||||
|
||||
##########################################
|
||||
# Dell
|
||||
##########################################
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnDellInc.:*
|
||||
libinput:name:* Touchpad:dmi:*svnDellInc.:*
|
||||
LIBINPUT_MODEL_TOUCHPAD_VISIBLE_MARKER=1
|
||||
|
||||
libinput:name:*AlpsPS/2 ALPS GlidePoint:dmi:*svnDellInc.:pnLatitudeE6220:*
|
||||
LIBINPUT_ATTR_PRESSURE_RANGE=100:90
|
||||
|
||||
libinput:name:*CyPS/2 Cypress Trackpad:dmi:*svnDell*:*XPSL322X*
|
||||
LIBINPUT_ATTR_PRESSURE_RANGE=30:20
|
||||
LIBINPUT_ATTR_PALM_PRESSURE_THRESHOLD=254
|
||||
|
||||
libinput:name:*Synaptics s3203:dmi:*svnDellInc.:*pnXPS139333*
|
||||
LIBINPUT_ATTR_PRESSURE_RANGE=15:10
|
||||
LIBINPUT_ATTR_PALM_PRESSURE_THRESHOLD=150
|
||||
|
||||
##########################################
|
||||
# Elantech
|
||||
##########################################
|
||||
libinput:name:*ETPS/2 Elantech Touchpad*:dmi:*
|
||||
LIBINPUT_ATTR_RESOLUTION_HINT=31x31
|
||||
LIBINPUT_ATTR_PRESSURE_RANGE=10:8
|
||||
|
||||
libinput:name:*ETPS/2 Elantech Touchpad*:dmi:*svnASUSTeKComputerInc.:pnUX21E:*
|
||||
LIBINPUT_ATTR_PRESSURE_RANGE=24:10
|
||||
|
||||
libinput:name:*Elan Touchpad*:dt:*
|
||||
LIBINPUT_ATTR_PRESSURE_RANGE=10:8
|
||||
|
||||
libinput:name:*Elan Touchpad*:dt:*Chromebook R13 CB5-312T*
|
||||
libinput:name:*Elan Touchpad*:dt:*CB5-312T*
|
||||
libinput:name:*Elan Touchpad*:dt:*Elm*
|
||||
LIBINPUT_ATTR_PRESSURE_RANGE=6:4
|
||||
|
||||
##########################################
|
||||
# Google
|
||||
##########################################
|
||||
|
||||
# The various chromebooks, info from modinfo chromeos_laptop, touchpad names
|
||||
# extrapolated from the chromiumos touchad-tests repo
|
||||
# https://chromium.googlesource.com/chromiumos/platform/touchpad-tests
|
||||
libinput:name:Cypress APA Trackpad ?cyapa?:dmi:*pnFalco:pvr*
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*pn*Mario*
|
||||
libinput:name:Cypress APA Trackpad ?cyapa?:dmi:*pn*Butterfly*
|
||||
libinput:name:Cypress APA Trackpad ?cyapa?:dmi:*pn*Peppy*
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*pn*ZGB*
|
||||
libinput:name:Cypress APA Trackpad ?cyapa?:dmi:*pn*Parrot*
|
||||
libinput:name:Cypress APA Trackpad ?cyapa?:dmi:*bvn*coreboot*:pn*Leon*
|
||||
libinput:name:Cypress APA Trackpad ?cyapa?:dmi:*bvn*coreboot*:pn*Falco*
|
||||
libinput:name:Cypress APA Trackpad ?cyapa?:dmi:*bvn*coreboot*:pn*Wolf*
|
||||
libinput:name:Cypress APA Trackpad ?cyapa?:dmi:*svn*GOOGLE*:pn*Link*
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*pn*Alex*
|
||||
libinput:name:Cypress APA Trackpad ?cyapa?:dmi:*svn*SAMSUNG*:pn*Lumpy*
|
||||
libinput:name:Atmel maXTouch Touchpad:dmi:*svn*GOOGLE*:pn*Samus*
|
||||
LIBINPUT_MODEL_CHROMEBOOK=1
|
||||
|
||||
libinput:name:Cypress APA Trackpad ?cyapa?:dmi:*
|
||||
LIBINPUT_ATTR_PRESSURE_RANGE=10:8
|
||||
|
||||
##########################################
|
||||
# HP
|
||||
##########################################
|
||||
|
||||
# HP Chromebook 14
|
||||
libinput:name:*Cypress APA Trackpad *cyapa*:dmi:*svnHewlett-Packard*:pnFalco*
|
||||
LIBINPUT_ATTR_PRESSURE_RANGE=12:8
|
||||
|
||||
# HP Compaq6910p
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnHewlett-Packard:*pnHPCompaq6910p*
|
||||
LIBINPUT_MODEL_HP6910_TOUCHPAD=1
|
||||
|
||||
# HP Compaq 8510w
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnHewlett-Packard:*pnHPCompaq8510w*
|
||||
LIBINPUT_MODEL_HP8510_TOUCHPAD=1
|
||||
|
||||
# HP Pavillion dm4
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnHewlett-Packard:*pnHPPaviliondm4NotebookPC*
|
||||
LIBINPUT_MODEL_HP_PAVILION_DM4_TOUCHPAD=1
|
||||
|
||||
# HP Stream 11
|
||||
libinput:name:SYN1EDE:00 06CB:7442:dmi:*svnHewlett-Packard:pnHPStreamNotebookPC11*
|
||||
LIBINPUT_MODEL_HP_STREAM11_TOUCHPAD=1
|
||||
|
||||
# HP Zbook Studio G3
|
||||
libinput:name:AlpsPS/2 ALPS GlidePoint:dmi:*svnHP:pnHPZBookStudioG3:*
|
||||
LIBINPUT_MODEL_HP_ZBOOK_STUDIO_G3=1
|
||||
|
||||
##########################################
|
||||
# HUION
|
||||
##########################################
|
||||
#
|
||||
# HUION PenTablet device. Some of these devices send a BTN_TOOL_PEN event
|
||||
# with value 1 on the first event received by the device but never send the
|
||||
# matching BTN_TOOL_PEN value 0 event. The device appears as if it was
|
||||
# permanently in proximity.
|
||||
#
|
||||
# HUION re-uses USB IDs for its devices, not every HUION tablet is
|
||||
# affected by this bug, libinput will auto-disable this feature
|
||||
libinput:tablet:input:b0003v256Cp*
|
||||
LIBINPUT_MODEL_TABLET_NO_PROXIMITY_OUT=1
|
||||
|
||||
##########################################
|
||||
# IBM
|
||||
##########################################
|
||||
#
|
||||
# IBM/Lenovo Scrollpoint mouse. Instead of a scroll wheel these mice
|
||||
# feature trackpoint-like sticks which generate a huge amount of scroll
|
||||
# events that need to be handled differently than scroll wheel events
|
||||
libinput:mouse:b0003v04B3p3100*
|
||||
libinput:mouse:b0003v04B3p3103*
|
||||
libinput:mouse:b0003v04B3p3105*
|
||||
libinput:mouse:b0003v04B3p3108*
|
||||
libinput:mouse:b0003v04B3p3109*
|
||||
libinput:mouse:b0003v17EFp6049*
|
||||
LIBINPUT_MODEL_LENOVO_SCROLLPOINT=1
|
||||
|
||||
# Lenovo Thinkpad X41 Tablet has lid buttons to be used in tablet mode
|
||||
# (#103749)
|
||||
libinput:name:AT Translated Set 2 keyboard:dmi:*svnIBM:*pvrThinkPadX41Tablet:*
|
||||
LIBINPUT_MODEL_TABLET_MODE_NO_SUSPEND=1
|
||||
|
||||
##########################################
|
||||
# LENOVO
|
||||
##########################################
|
||||
|
||||
# X220 after a bios update updating the touchpad firmware version to 8.1
|
||||
# See https://bugzilla.redhat.com/show_bug.cgi?id=1264453 for details
|
||||
# If the touchpad is unresponsive and dmesg includes this line
|
||||
# psmouse serio1: synaptics: Touchpad model: 1, fw: 8.1 [...]
|
||||
# then copy the two lines below into a new file
|
||||
# /etc/udev/hwdb.d/90-libinput-x220-touchpad-fw81.hwdb, then run
|
||||
# sudo udevadm hwdb --update and reboot.
|
||||
#
|
||||
# Copy the two lines below:
|
||||
#libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*:pvrThinkPadX220*
|
||||
# LIBINPUT_MODEL_LENOVO_X220_TOUCHPAD_FW81=1
|
||||
|
||||
# X230 (Tablet)
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*:pvrThinkPadX230*
|
||||
LIBINPUT_MODEL_LENOVO_X230=1
|
||||
|
||||
# T440p on PS/2
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*:pvrThinkPadT440p*
|
||||
# T440p on RMI4
|
||||
libinput:name:Synaptics tm2964-001:dmi:*svnLENOVO:*:pvrThinkPadT440p*
|
||||
LIBINPUT_MODEL_LENOVO_T450_TOUCHPAD=1
|
||||
|
||||
# T440s trackpoint
|
||||
libinput:name:TPPS/2 IBM TrackPoint:dmi:*svnLENOVO:*:pvrThinkPadT440s*
|
||||
LIBINPUT_ATTR_TRACKPOINT_RANGE=30
|
||||
|
||||
# T450s trackpoint
|
||||
libinput:name:TPPS/2 IBM TrackPoint:dmi:*svnLENOVO:*:pvrThinkPadT450s*
|
||||
LIBINPUT_ATTR_TRACKPOINT_RANGE=50
|
||||
|
||||
# Lenovo T450/T460 and all other Lenovos of the *50 and *60 generation,
|
||||
# including the X1 Carbon 3rd gen
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*:pvrThinkPadP50*:
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*:pvrThinkPad??50*:
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*:pvrThinkPad??60*:
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*:pvrThinkPadX1Carbon3rd:*
|
||||
LIBINPUT_MODEL_LENOVO_T450_TOUCHPAD=1
|
||||
LIBINPUT_ATTR_PALM_PRESSURE_THRESHOLD=150
|
||||
|
||||
# Lenovo ThinkPad series
|
||||
libinput:name:*Synaptics*:dmi:*svnLENOVO:*:pvrThinkPad*:*
|
||||
LIBINPUT_ATTR_THUMB_PRESSURE_THRESHOLD=100
|
||||
|
||||
# Lenovo ThinkPad Compact USB Keyboard with TrackPoint
|
||||
libinput:keyboard:input:b0003v17EFp6047*
|
||||
LIBINPUT_ATTR_KEYBOARD_INTEGRATION=external
|
||||
|
||||
# Lenovo X270
|
||||
libinput:name:*TPPS/2 IBM TrackPoint*:dmi:svnLENOVO:*:pvrThinkPadX270:*
|
||||
LIBINPUT_ATTR_TRACKPOINT_RANGE=40
|
||||
|
||||
# Lenovo X280
|
||||
libinput:name:*ALPS TrackPoint*:dmi:svnLENOVO:*:pvrThinkPadX280:*
|
||||
LIBINPUT_ATTR_TRACKPOINT_RANGE=70
|
||||
|
||||
# Lenovo Thinkpad Yoga (not the consumer versions) disables the keyboard
|
||||
# mechanically. We must not disable the keyboard because some keys are
|
||||
# still accessible on the screen and volume rocker.
|
||||
# Initially #103749 and extended by #106799 comment 7
|
||||
libinput:name:AT Translated Set 2 keyboard:dmi:*svnLENOVO:*pvrThinkPad*Yoga*:*
|
||||
LIBINPUT_MODEL_TABLET_MODE_NO_SUSPEND=1
|
||||
|
||||
# Lenovo Carbon X1 6th gen (RMI4 only, PS/2 is broken on this device)
|
||||
libinput:name:Synaptics TM3288-011:dmi:*svnLenovo:*pvrThinkPadX1Carbon6th:*
|
||||
LIBINPUT_MODEL_LENOVO_CARBON_X1_6TH=1
|
||||
|
||||
##########################################
|
||||
# Logitech
|
||||
##########################################
|
||||
libinput:name:*Logitech M570*:dmi:*
|
||||
LIBINPUT_MODEL_TRACKBALL=1
|
||||
|
||||
# Logitech Marble Mouse trackball
|
||||
libinput:mouse:input:b0003v046DpC408*
|
||||
LIBINPUT_MODEL_LOGITECH_MARBLE_MOUSE=1
|
||||
|
||||
# Logitech K400
|
||||
libinput:mouse:input:b0003v046Dp4024*
|
||||
# Logitech K400r
|
||||
libinput:mouse:input:b0003v046Dp404B*
|
||||
# Logitech K830
|
||||
libinput:mouse:input:b0003v046Dp404C*
|
||||
# Logitech K400Plus
|
||||
libinput:mouse:input:b0003v046Dp404D*
|
||||
LIBINPUT_MODEL_BOUNCING_KEYS=1
|
||||
|
||||
# Logitech Wireless Touchpad
|
||||
libinput:touchpad:input:b0003v046Dp4011*
|
||||
LIBINPUT_ATTR_PALM_PRESSURE_THRESHOLD=400
|
||||
|
||||
##########################################
|
||||
# Microsoft
|
||||
##########################################
|
||||
# Surface3 needs us to write the open lid switch event
|
||||
libinput:name:*Lid Switch*:dmi:*svnMicrosoftCorporation:pnSurface3:*
|
||||
LIBINPUT_ATTR_LID_SWITCH_RELIABILITY=write_open
|
||||
|
||||
# Surface 3 Type Cover keyboard
|
||||
libinput:name:*Microsoft Surface Type Cover Keyboard*:dmi:*svnMicrosoftCorporation:pnSurface3:*
|
||||
LIBINPUT_ATTR_KEYBOARD_INTEGRATION=internal
|
||||
|
||||
# Microsoft Microsoft® Nano Transceiver v2.0"
|
||||
libinput:mouse:input:b0003v045Ep0800*
|
||||
LIBINPUT_MODEL_BOUNCING_KEYS=1
|
||||
|
||||
##########################################
|
||||
# Razer
|
||||
##########################################
|
||||
libinput:keyboard:input:b0003v1532p0220*
|
||||
LIBINPUT_ATTR_KEYBOARD_INTEGRATION=internal
|
||||
|
||||
libinput:name:*Lid Switch*:dmi:*svnRazer:pnBlade*
|
||||
LIBINPUT_ATTR_LID_SWITCH_RELIABILITY=write_open
|
||||
|
||||
##########################################
|
||||
# Synaptics
|
||||
##########################################
|
||||
libinput:touchpad:input:b0011v0002p0007*
|
||||
LIBINPUT_MODEL_SYNAPTICS_SERIAL_TOUCHPAD=1
|
||||
|
||||
##########################################
|
||||
# System76
|
||||
##########################################
|
||||
|
||||
# Bonobo Professional
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnSystem76*pvrbonp5*
|
||||
LIBINPUT_MODEL_SYSTEM76_BONOBO=1
|
||||
|
||||
# Clevo
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*pnW740SU*rnW740SU*
|
||||
LIBINPUT_MODEL_CLEVO_W740SU=1
|
||||
|
||||
# Galago Ultra Pro
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnSystem76*pvrgalu1*
|
||||
LIBINPUT_MODEL_SYSTEM76_GALAGO=1
|
||||
|
||||
# Kudu Professional
|
||||
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnSystem76*pvrkudp1*
|
||||
LIBINPUT_MODEL_SYSTEM76_KUDU=1
|
||||
|
||||
##########################################
|
||||
# Wacom
|
||||
##########################################
|
||||
libinput:touchpad:input:b0003v056Ap*
|
||||
LIBINPUT_MODEL_WACOM_TOUCHPAD=1
|
||||
|
||||
# Wacom Intuos Pro PTH-660
|
||||
libinput:touchpad:input:b0003v056Ap0357*
|
||||
LIBINPUT_ATTR_PALM_SIZE_THRESHOLD=5
|
||||
|
||||
##########################################
|
||||
# Anything that has trackball in the name
|
||||
##########################################
|
||||
libinput:name:*Trackball*:dmi:*
|
||||
LIBINPUT_MODEL_TRACKBALL=1
|
||||
|
||||
@@ -0,0 +1,106 @@
|
||||
ACTION!="add|change", GOTO="mpath_end"
|
||||
ENV{DM_UDEV_RULES_VSN}!="?*", GOTO="mpath_end"
|
||||
ENV{DM_UUID}!="mpath-?*", GOTO="mpath_end"
|
||||
|
||||
IMPORT{db}="DM_DISABLE_OTHER_RULES_FLAG_OLD"
|
||||
IMPORT{db}="MPATH_DEVICE_READY"
|
||||
|
||||
# If this uevent didn't come from dm, don't try to update the
|
||||
# device state
|
||||
ENV{DM_COOKIE}!="?*", ENV{DM_ACTION}!="PATH_*", IMPORT{db}="DM_UDEV_DISABLE_OTHER_RULES_FLAG", IMPORT{db}="DM_NOSCAN", GOTO="scan_import"
|
||||
|
||||
ENV{.MPATH_DEVICE_READY_OLD}="$env{MPATH_DEVICE_READY}"
|
||||
|
||||
# multipath sets DM_SUBSYSTEM_UDEV_FLAG2 when it reloads a
|
||||
# table with no active devices. If this happens, mark the
|
||||
# device not ready
|
||||
ENV{DM_SUBSYSTEM_UDEV_FLAG2}=="1", ENV{MPATH_DEVICE_READY}="0",\
|
||||
GOTO="mpath_action"
|
||||
|
||||
# If the last path has failed mark the device not ready
|
||||
# Note that DM_NR_VALID_PATHS is only set for PATH_FAILED|PATH_REINSTATED
|
||||
# events.
|
||||
# This may not be reliable, as events aren't necessarily received in order.
|
||||
ENV{DM_NR_VALID_PATHS}=="0", ENV{MPATH_DEVICE_READY}="0", GOTO="mpath_action"
|
||||
|
||||
ENV{MPATH_SBIN_PATH}="/sbin"
|
||||
TEST!="$env{MPATH_SBIN_PATH}/multipath", ENV{MPATH_SBIN_PATH}="/usr/sbin"
|
||||
|
||||
# Check the map state directly with multipath -U.
|
||||
# This doesn't attempt I/O on the device.
|
||||
PROGRAM=="$env{MPATH_SBIN_PATH}/multipath -U %k", GOTO="paths_ok"
|
||||
ENV{MPATH_DEVICE_READY}="0", GOTO="mpath_action"
|
||||
LABEL="paths_ok"
|
||||
|
||||
# Don't mark a device ready on a PATH_FAILED event. even if
|
||||
# DM_NR_VALID_PATHS is greater than 0. Just keep the existing
|
||||
# value
|
||||
ENV{DM_ACTION}=="PATH_FAILED", GOTO="mpath_action"
|
||||
|
||||
# This event is either a PATH_REINSTATED or a table reload where
|
||||
# there are active paths. Mark the device ready
|
||||
ENV{MPATH_DEVICE_READY}="1"
|
||||
|
||||
LABEL="mpath_action"
|
||||
# DM_SUBSYSTEM_UDEV_FLAG0 is the "RELOAD" flag for multipath subsystem.
|
||||
# Drop the DM_ACTIVATION flag here as mpath reloads tables if any of its
|
||||
# paths are lost/recovered. For any stack above the mpath device, this is not
|
||||
# something that should be reacted upon since it would be useless extra work.
|
||||
# It's exactly mpath's job to provide *seamless* device access to any of the
|
||||
# paths that are available underneath.
|
||||
ENV{DM_SUBSYSTEM_UDEV_FLAG0}=="1", \
|
||||
ENV{DM_ACTIVATION}="0", ENV{MPATH_UNCHANGED}="1"
|
||||
|
||||
# For path failed or reinstated events, unset DM_ACTIVATION.
|
||||
# This is similar to the DM_SUBSYSTEM_UDEV_FLAG0 case above.
|
||||
ENV{DM_ACTION}=="PATH_FAILED|PATH_REINSTATED", \
|
||||
ENV{DM_ACTIVATION}="0", ENV{MPATH_UNCHANGED}="1"
|
||||
|
||||
# Do not initiate scanning if no path is available,
|
||||
# otherwise there would be a hang or IO error on access.
|
||||
# We'd like to avoid this, especially within udev processing.
|
||||
ENV{MPATH_DEVICE_READY}=="0", ENV{DM_NOSCAN}="1"
|
||||
|
||||
# Also skip all foreign rules if no path is available.
|
||||
# Remember the original value of DM_DISABLE_OTHER_RULES_FLAG
|
||||
# and restore it back once we have at least one path available.
|
||||
ENV{MPATH_DEVICE_READY}=="0", ENV{.MPATH_DEVICE_READY_OLD}=="1",\
|
||||
ENV{DM_DISABLE_OTHER_RULES_FLAG_OLD}=="",\
|
||||
ENV{DM_DISABLE_OTHER_RULES_FLAG_OLD}="$env{DM_UDEV_DISABLE_OTHER_RULES_FLAG}"
|
||||
ENV{MPATH_DEVICE_READY}=="0", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="1"
|
||||
ENV{MPATH_DEVICE_READY}!="0", ENV{.MPATH_DEVICE_READY_OLD}=="0",\
|
||||
ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="$env{DM_DISABLE_OTHER_RULES_FLAG_OLD}",\
|
||||
ENV{DM_DISABLE_OTHER_RULES_FLAG_OLD}="",\
|
||||
ENV{DM_ACTIVATION}="1"
|
||||
|
||||
# The code to check multipath state ends here. We need to set
|
||||
# properties and symlinks regardless whether the map is usable or
|
||||
# not. If symlinks get lost, systemd may auto-unmount file systems.
|
||||
|
||||
LABEL="scan_import"
|
||||
ENV{DM_NOSCAN}!="1", GOTO="import_end"
|
||||
IMPORT{db}="ID_FS_TYPE"
|
||||
IMPORT{db}="ID_FS_USAGE"
|
||||
IMPORT{db}="ID_FS_UUID"
|
||||
IMPORT{db}="ID_FS_UUID_ENC"
|
||||
IMPORT{db}="ID_FS_LABEL"
|
||||
IMPORT{db}="ID_FS_LABEL_ENC"
|
||||
IMPORT{db}="ID_FS_VERSION"
|
||||
|
||||
LABEL="import_end"
|
||||
|
||||
# Multipath maps should take precedence over their members.
|
||||
ENV{DM_UDEV_LOW_PRIORITY_FLAG}!="1", OPTIONS+="link_priority=50"
|
||||
|
||||
# Set some additional symlinks that typically exist for mpath
|
||||
# path members, too, and should be overridden.
|
||||
|
||||
# kpartx_id is very robust, it works for suspended maps and maps
|
||||
# with 0 dependencies. It sets DM_TYPE, DM_PART, DM_WWN
|
||||
TEST=="/usr/lib/udev/kpartx_id", \
|
||||
IMPORT{program}=="kpartx_id %M %m $env{DM_UUID}"
|
||||
|
||||
ENV{DM_TYPE}=="?*", SYMLINK+="disk/by-id/$env{DM_TYPE}-$env{DM_NAME}"
|
||||
ENV{DM_WWN}=="?*", SYMLINK+="disk/by-id/wwn-$env{DM_WWN}"
|
||||
|
||||
LABEL="mpath_end"
|
||||
@@ -0,0 +1,39 @@
|
||||
# Rules for partitions created by kpartx
|
||||
|
||||
KERNEL!="dm-*", GOTO="dm_parts_end"
|
||||
ACTION!="add|change", GOTO="dm_parts_end"
|
||||
ENV{DM_UUID}!="part[0-9]*", GOTO="dm_parts_end"
|
||||
|
||||
# We must take care that symlinks don't get lost,
|
||||
# even if blkid fails in 13-dm-disk.rules later.
|
||||
#
|
||||
# Fixme: we have currently no way to avoid calling blkid on
|
||||
# partitions of broken mpath maps such as DM_NOSCAN.
|
||||
# But when partition devices appear, kpartx has likely read
|
||||
# the partition table shortly before, so odds are not bad
|
||||
# that blkid will also succeed.
|
||||
|
||||
IMPORT{db}="ID_FS_USAGE"
|
||||
IMPORT{db}="ID_FS_UUID_ENC"
|
||||
IMPORT{db}="ID_FS_LABEL_ENC"
|
||||
IMPORT{db}="ID_PART_ENTRY_NAME"
|
||||
IMPORT{db}="ID_PART_ENTRY_UUID"
|
||||
IMPORT{db}="ID_PART_ENTRY_SCHEME"
|
||||
|
||||
# Maps should take precedence over their members.
|
||||
ENV{DM_UDEV_LOW_PRIORITY_FLAG}!="1", OPTIONS+="link_priority=50"
|
||||
|
||||
# Set some additional symlinks that typically exist for mpath
|
||||
# path members, too, and should be overridden.
|
||||
#
|
||||
# kpartx_id is very robust, it works for suspended maps and maps
|
||||
# with 0 dependencies. It sets DM_TYPE, DM_PART, DM_WWN
|
||||
IMPORT{program}=="kpartx_id %M %m $env{DM_UUID}"
|
||||
|
||||
# DM_TYPE only has a reasonable value for partitions on multipath.
|
||||
ENV{DM_UUID}=="*-mpath-*", ENV{DM_TYPE}=="?*" \
|
||||
SYMLINK+="disk/by-id/$env{DM_TYPE}-$env{DM_NAME}"
|
||||
ENV{DM_WWN}=="?*", ENV{DM_PART}=="?*", \
|
||||
SYMLINK+="disk/by-id/wwn-$env{DM_WWN}-part$env{DM_PART}"
|
||||
|
||||
LABEL="dm_parts_end"
|
||||
@@ -0,0 +1,86 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
# run a command on remove events
|
||||
ACTION=="remove", ENV{REMOVE_CMD}!="", RUN+="$env{REMOVE_CMD}"
|
||||
ACTION=="remove", GOTO="default_end"
|
||||
|
||||
SUBSYSTEM=="virtio-ports", KERNEL=="vport*", ATTR{name}=="?*", SYMLINK+="virtio-ports/$attr{name}"
|
||||
|
||||
# select "system RTC" or just use the first one
|
||||
SUBSYSTEM=="rtc", ATTR{hctosys}=="1", SYMLINK+="rtc"
|
||||
SUBSYSTEM=="rtc", KERNEL=="rtc0", SYMLINK+="rtc", OPTIONS+="link_priority=-100"
|
||||
|
||||
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", IMPORT{builtin}="usb_id", IMPORT{builtin}="hwdb --subsystem=usb"
|
||||
ENV{MODALIAS}!="", IMPORT{builtin}="hwdb --subsystem=$env{SUBSYSTEM}"
|
||||
|
||||
ACTION!="add", GOTO="default_end"
|
||||
|
||||
SUBSYSTEM=="tty", KERNEL=="ptmx", GROUP="tty", MODE="0666"
|
||||
SUBSYSTEM=="tty", KERNEL=="tty", GROUP="tty", MODE="0666"
|
||||
SUBSYSTEM=="tty", KERNEL=="tty[0-9]*", GROUP="tty", MODE="0620"
|
||||
SUBSYSTEM=="tty", KERNEL=="sclp_line[0-9]*", GROUP="tty", MODE="0620"
|
||||
SUBSYSTEM=="tty", KERNEL=="ttysclp[0-9]*", GROUP="tty", MODE="0620"
|
||||
SUBSYSTEM=="tty", KERNEL=="3270/tty[0-9]*", GROUP="tty", MODE="0620"
|
||||
SUBSYSTEM=="vc", KERNEL=="vcs*|vcsa*", GROUP="tty"
|
||||
KERNEL=="tty[A-Z]*[0-9]|ttymxc[0-9]*|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout"
|
||||
|
||||
SUBSYSTEM=="mem", KERNEL=="mem|kmem|port", GROUP="kmem", MODE="0640"
|
||||
|
||||
SUBSYSTEM=="input", GROUP="input"
|
||||
SUBSYSTEM=="input", KERNEL=="js[0-9]*", MODE="0664"
|
||||
|
||||
SUBSYSTEM=="video4linux", GROUP="video"
|
||||
SUBSYSTEM=="graphics", GROUP="video"
|
||||
SUBSYSTEM=="drm", KERNEL!="renderD*", GROUP="video"
|
||||
SUBSYSTEM=="dvb", GROUP="video"
|
||||
SUBSYSTEM=="media", GROUP="video"
|
||||
SUBSYSTEM=="cec", GROUP="video"
|
||||
|
||||
SUBSYSTEM=="drm", KERNEL=="renderD*", GROUP="render", MODE="0666"
|
||||
SUBSYSTEM=="kfd", GROUP="render", MODE="0666"
|
||||
|
||||
SUBSYSTEM=="sound", GROUP="audio", \
|
||||
OPTIONS+="static_node=snd/seq", OPTIONS+="static_node=snd/timer"
|
||||
|
||||
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0664"
|
||||
|
||||
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x00010*", GROUP="video"
|
||||
SUBSYSTEM=="firewire", ATTR{units}=="*0x00b09d:0x00010*", GROUP="video"
|
||||
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x010001*", GROUP="video"
|
||||
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x014001*", GROUP="video"
|
||||
|
||||
KERNEL=="parport[0-9]*", GROUP="lp"
|
||||
SUBSYSTEM=="printer", KERNEL=="lp*", GROUP="lp"
|
||||
SUBSYSTEM=="ppdev", GROUP="lp"
|
||||
KERNEL=="lp[0-9]*", GROUP="lp"
|
||||
KERNEL=="irlpt[0-9]*", GROUP="lp"
|
||||
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="*:0701??:*", GROUP="lp"
|
||||
|
||||
SUBSYSTEM=="block", GROUP="disk"
|
||||
SUBSYSTEM=="block", KERNEL=="sr[0-9]*", GROUP="cdrom"
|
||||
SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", GROUP="cdrom"
|
||||
KERNEL=="sch[0-9]*", GROUP="cdrom"
|
||||
KERNEL=="pktcdvd[0-9]*", GROUP="cdrom"
|
||||
KERNEL=="pktcdvd", GROUP="cdrom"
|
||||
|
||||
SUBSYSTEM=="scsi_generic|scsi_tape", SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="tape"
|
||||
SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="0", GROUP="disk"
|
||||
KERNEL=="qft[0-9]*|nqft[0-9]*|zqft[0-9]*|nzqft[0-9]*|rawqft[0-9]*|nrawqft[0-9]*", GROUP="disk"
|
||||
KERNEL=="loop-control", GROUP="disk", OPTIONS+="static_node=loop-control"
|
||||
KERNEL=="btrfs-control", GROUP="disk"
|
||||
KERNEL=="rawctl", GROUP="disk"
|
||||
SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", GROUP="disk"
|
||||
SUBSYSTEM=="aoe", GROUP="disk", MODE="0220"
|
||||
SUBSYSTEM=="aoe", KERNEL=="err", MODE="0440"
|
||||
|
||||
KERNEL=="rfkill", MODE="0664"
|
||||
KERNEL=="tun", MODE="0666", OPTIONS+="static_node=net/tun"
|
||||
|
||||
KERNEL=="fuse", MODE="0666", OPTIONS+="static_node=fuse"
|
||||
|
||||
# The static_node is required on s390x and ppc (they are using MODULE_ALIAS)
|
||||
KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"
|
||||
|
||||
SUBSYSTEM=="ptp", ATTR{clock_name}=="KVM virtual PTP", SYMLINK += "ptp_kvm"
|
||||
|
||||
LABEL="default_end"
|
||||
@@ -0,0 +1,27 @@
|
||||
# Set DM_MULTIPATH_DEVICE_PATH if the device should be handled by multipath
|
||||
SUBSYSTEM!="block", GOTO="end_mpath"
|
||||
ACTION!="add|change", GOTO="end_mpath"
|
||||
KERNEL!="sd*|dasd*", GOTO="end_mpath"
|
||||
|
||||
IMPORT{cmdline}="nompath"
|
||||
ENV{nompath}=="?*", GOTO="end_mpath"
|
||||
IMPORT{cmdline}="multipath"
|
||||
ENV{multipath}=="off", GOTO="end_mpath"
|
||||
|
||||
ENV{DEVTYPE}!="partition", GOTO="test_dev"
|
||||
IMPORT{parent}="DM_MULTIPATH_DEVICE_PATH"
|
||||
ENV{DM_MULTIPATH_DEVICE_PATH}=="1", ENV{ID_FS_TYPE}="none", \
|
||||
ENV{SYSTEMD_READY}="0"
|
||||
GOTO="end_mpath"
|
||||
|
||||
LABEL="test_dev"
|
||||
|
||||
ENV{MPATH_SBIN_PATH}="/sbin"
|
||||
TEST!="$env{MPATH_SBIN_PATH}/multipath", ENV{MPATH_SBIN_PATH}="/usr/sbin"
|
||||
|
||||
ENV{DM_MULTIPATH_DEVICE_PATH}!="1", \
|
||||
PROGRAM=="$env{MPATH_SBIN_PATH}/multipath -u %k", \
|
||||
ENV{DM_MULTIPATH_DEVICE_PATH}="1", ENV{ID_FS_TYPE}="mpath_member", \
|
||||
ENV{SYSTEMD_READY}="0"
|
||||
|
||||
LABEL="end_mpath"
|
||||
@@ -0,0 +1,29 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION=="remove", GOTO="cdrom_end"
|
||||
SUBSYSTEM!="block", GOTO="cdrom_end"
|
||||
KERNEL!="sr[0-9]*|vdisk*|xvd*", GOTO="cdrom_end"
|
||||
ENV{DEVTYPE}!="disk", GOTO="cdrom_end"
|
||||
|
||||
# unconditionally tag device as CDROM
|
||||
KERNEL=="sr[0-9]*", ENV{ID_CDROM}="1"
|
||||
|
||||
# stop automatically any mount units bound to the device if the media eject
|
||||
# button is pressed.
|
||||
ENV{ID_CDROM}=="1", ENV{SYSTEMD_MOUNT_DEVICE_BOUND}="1"
|
||||
|
||||
# media eject button pressed
|
||||
ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdrom_id --eject-media $devnode", GOTO="cdrom_end"
|
||||
|
||||
# import device and media properties and lock tray to
|
||||
# enable the receiving of media eject button events
|
||||
IMPORT{program}="cdrom_id --lock-media $devnode"
|
||||
|
||||
# ejecting a CD does not remove the device node, so mark the systemd device
|
||||
# unit as inactive while there is no medium; this automatically cleans up of
|
||||
# stale mounts after ejecting
|
||||
ENV{DISK_MEDIA_CHANGE}=="?*", ENV{ID_CDROM_MEDIA}!="?*", ENV{SYSTEMD_READY}="0"
|
||||
|
||||
KERNEL=="sr0", SYMLINK+="cdrom", OPTIONS+="link_priority=-100"
|
||||
|
||||
LABEL="cdrom_end"
|
||||
@@ -0,0 +1,8 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="remove", SUBSYSTEM=="drm", SUBSYSTEMS=="pci|usb|platform", IMPORT{builtin}="path_id"
|
||||
|
||||
# by-path
|
||||
ENV{ID_PATH}=="?*", KERNEL=="card*", SYMLINK+="dri/by-path/$env{ID_PATH}-card"
|
||||
ENV{ID_PATH}=="?*", KERNEL=="controlD*", SYMLINK+="dri/by-path/$env{ID_PATH}-control"
|
||||
ENV{ID_PATH}=="?*", KERNEL=="renderD*", SYMLINK+="dri/by-path/$env{ID_PATH}-render"
|
||||
@@ -0,0 +1,8 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION=="remove", GOTO="id_input_end"
|
||||
|
||||
SUBSYSTEM=="input", ENV{ID_INPUT}=="", IMPORT{builtin}="input_id"
|
||||
SUBSYSTEM=="input", IMPORT{builtin}="hwdb --subsystem=input --lookup-prefix=id-input:modalias:"
|
||||
|
||||
LABEL="id_input_end"
|
||||
@@ -0,0 +1,14 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION=="remove", GOTO="persistent_alsa_end"
|
||||
SUBSYSTEM!="sound", GOTO="persistent_alsa_end"
|
||||
KERNEL!="controlC[0-9]*", GOTO="persistent_alsa_end"
|
||||
|
||||
SUBSYSTEMS=="usb", ENV{ID_MODEL}=="", IMPORT{builtin}="usb_id"
|
||||
ENV{ID_SERIAL}=="?*", ENV{ID_USB_INTERFACE_NUM}=="?*", SYMLINK+="snd/by-id/$env{ID_BUS}-$env{ID_SERIAL}-$env{ID_USB_INTERFACE_NUM}"
|
||||
ENV{ID_SERIAL}=="?*", ENV{ID_USB_INTERFACE_NUM}=="", SYMLINK+="snd/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
|
||||
|
||||
IMPORT{builtin}="path_id"
|
||||
ENV{ID_PATH}=="?*", SYMLINK+="snd/by-path/$env{ID_PATH}"
|
||||
|
||||
LABEL="persistent_alsa_end"
|
||||
@@ -0,0 +1,26 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
# persistent storage links: /dev/tape/{by-id,by-path}
|
||||
|
||||
ACTION=="remove", GOTO="persistent_storage_tape_end"
|
||||
ENV{UDEV_DISABLE_PERSISTENT_STORAGE_RULES_FLAG}=="1", GOTO="persistent_storage_tape_end"
|
||||
|
||||
# type 8 devices are "Medium Changers"
|
||||
SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="8", IMPORT{program}="scsi_id --sg-version=3 --export --whitelisted -d $devnode", \
|
||||
SYMLINK+="tape/by-id/scsi-$env{ID_SERIAL}"
|
||||
|
||||
SUBSYSTEM!="scsi_tape", GOTO="persistent_storage_tape_end"
|
||||
|
||||
KERNEL=="st*[0-9]|nst*[0-9]", ATTRS{ieee1394_id}=="?*", ENV{ID_SERIAL}="$attr{ieee1394_id}", ENV{ID_BUS}="ieee1394"
|
||||
KERNEL=="st*[0-9]|nst*[0-9]", ENV{ID_SERIAL}!="?*", SUBSYSTEMS=="usb", IMPORT{builtin}="usb_id"
|
||||
KERNEL=="st*[0-9]|nst*[0-9]", ENV{ID_SERIAL}!="?*", SUBSYSTEMS=="scsi", KERNELS=="[0-9]*:*[0-9]", ENV{.BSG_DEV}="$root/bsg/$id"
|
||||
KERNEL=="st*[0-9]|nst*[0-9]", ENV{ID_SERIAL}!="?*", IMPORT{program}="scsi_id --whitelisted --export --device=$env{.BSG_DEV}", ENV{ID_BUS}="scsi"
|
||||
KERNEL=="st*[0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="tape/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
|
||||
KERNEL=="nst*[0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="tape/by-id/$env{ID_BUS}-$env{ID_SERIAL}-nst"
|
||||
|
||||
# by-path (parent device path)
|
||||
KERNEL=="st*[0-9]|nst*[0-9]", IMPORT{builtin}="path_id"
|
||||
KERNEL=="st*[0-9]", ENV{ID_PATH}=="?*", SYMLINK+="tape/by-path/$env{ID_PATH}"
|
||||
KERNEL=="nst*[0-9]", ENV{ID_PATH}=="?*", SYMLINK+="tape/by-path/$env{ID_PATH}-nst"
|
||||
|
||||
LABEL="persistent_storage_tape_end"
|
||||
@@ -21,10 +21,14 @@ KERNEL=="nvme*[0-9]n*[0-9]p*[0-9]", ENV{DEVTYPE}=="partition", ATTRS{wwid}=="?*"
|
||||
|
||||
KERNEL=="nvme*[0-9]n*[0-9]", ENV{DEVTYPE}=="disk", ATTRS{serial}=="?*", ENV{ID_SERIAL_SHORT}="$attr{serial}"
|
||||
KERNEL=="nvme*[0-9]n*[0-9]", ENV{DEVTYPE}=="disk", ATTRS{wwid}=="?*", ENV{ID_WWN}="$attr{wwid}"
|
||||
KERNEL=="nvme*[0-9]n*[0-9]", ENV{DEVTYPE}=="disk", ATTRS{model}=="?*", ENV{ID_SERIAL_SHORT}=="?*", ENV{ID_SERIAL}="$attr{model}_$env{ID_SERIAL_SHORT}", SYMLINK+="disk/by-id/nvme-$env{ID_SERIAL}"
|
||||
KERNEL=="nvme*[0-9]n*[0-9]", ENV{DEVTYPE}=="disk", ATTRS{model}=="?*", ENV{ID_MODEL}="$attr{model}"
|
||||
KERNEL=="nvme*[0-9]n*[0-9]", ENV{DEVTYPE}=="disk", ENV{ID_MODEL}=="?*", ENV{ID_SERIAL_SHORT}=="?*", \
|
||||
ENV{ID_SERIAL}="$env{ID_MODEL}_$env{ID_SERIAL_SHORT}", SYMLINK+="disk/by-id/nvme-$env{ID_SERIAL}"
|
||||
|
||||
KERNEL=="nvme*[0-9]n*[0-9]p*[0-9]", ENV{DEVTYPE}=="partition", ATTRS{serial}=="?*", ENV{ID_SERIAL_SHORT}="$attr{serial}"
|
||||
KERNEL=="nvme*[0-9]n*[0-9]p*[0-9]", ENV{DEVTYPE}=="partition", ATTRS{model}=="?*", ENV{ID_SERIAL_SHORT}=="?*", ENV{ID_SERIAL}="$attr{model}_$env{ID_SERIAL_SHORT}", SYMLINK+="disk/by-id/nvme-$env{ID_SERIAL}-part%n"
|
||||
KERNEL=="nvme*[0-9]n*[0-9]p*[0-9]", ENV{DEVTYPE}=="partition", ATTRS{model}=="?*", ENV{ID_MODEL}="$attr{model}"
|
||||
KERNEL=="nvme*[0-9]n*[0-9]p*[0-9]", ENV{DEVTYPE}=="partition", ENV{ID_MODEL}=="?*", ENV{ID_SERIAL_SHORT}=="?*", \
|
||||
ENV{ID_SERIAL}="$env{ID_MODEL}_$env{ID_SERIAL_SHORT}", SYMLINK+="disk/by-id/nvme-$env{ID_SERIAL}-part%n"
|
||||
|
||||
# virtio-blk
|
||||
KERNEL=="vd*[!0-9]", ATTRS{serial}=="?*", ENV{ID_SERIAL}="$attr{serial}", SYMLINK+="disk/by-id/virtio-$env{ID_SERIAL}"
|
||||
@@ -57,6 +61,9 @@ KERNEL=="mmcblk[0-9]", SUBSYSTEMS=="mmc", ATTRS{name}=="?*", ATTRS{serial}=="?*"
|
||||
ENV{ID_NAME}="$attr{name}", ENV{ID_SERIAL}="$attr{serial}", SYMLINK+="disk/by-id/mmc-$env{ID_NAME}_$env{ID_SERIAL}"
|
||||
KERNEL=="mmcblk[0-9]p[0-9]*", ENV{ID_NAME}=="?*", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/mmc-$env{ID_NAME}_$env{ID_SERIAL}-part%n"
|
||||
|
||||
# UBI-MTD
|
||||
SUBSYSTEM=="ubi", KERNEL=="ubi*_*", ATTRS{mtd_num}=="*", SYMLINK+="ubi_mtd%s{mtd_num}_%s{name}"
|
||||
|
||||
# Memstick
|
||||
KERNEL=="msblk[0-9]|mspblk[0-9]", SUBSYSTEMS=="memstick", ATTRS{name}=="?*", ATTRS{serial}=="?*", \
|
||||
ENV{ID_NAME}="$attr{name}", ENV{ID_SERIAL}="$attr{serial}", SYMLINK+="disk/by-id/memstick-$env{ID_NAME}_$env{ID_SERIAL}"
|
||||
@@ -84,7 +91,7 @@ KERNEL!="sr*", IMPORT{builtin}="blkid"
|
||||
|
||||
# by-label/by-uuid links (filesystem metadata)
|
||||
ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
|
||||
ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
|
||||
ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
|
||||
|
||||
# by-id (World Wide Name)
|
||||
ENV{DEVTYPE}=="disk", ENV{ID_WWN_WITH_EXTENSION}=="?*", SYMLINK+="disk/by-id/wwn-$env{ID_WWN_WITH_EXTENSION}"
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION=="remove", GOTO="persistent_v4l_end"
|
||||
SUBSYSTEM!="video4linux", GOTO="persistent_v4l_end"
|
||||
ENV{MAJOR}=="", GOTO="persistent_v4l_end"
|
||||
|
||||
IMPORT{program}="v4l_id $devnode"
|
||||
|
||||
SUBSYSTEMS=="usb", IMPORT{builtin}="usb_id"
|
||||
KERNEL=="video*", ENV{ID_SERIAL}=="?*", SYMLINK+="v4l/by-id/$env{ID_BUS}-$env{ID_SERIAL}-video-index$attr{index}"
|
||||
|
||||
# check for valid "index" number
|
||||
TEST!="index", GOTO="persistent_v4l_end"
|
||||
ATTR{index}!="?*", GOTO="persistent_v4l_end"
|
||||
|
||||
IMPORT{builtin}="path_id"
|
||||
ENV{ID_PATH}=="?*", KERNEL=="video*|vbi*", SYMLINK+="v4l/by-path/$env{ID_PATH}-video-index$attr{index}"
|
||||
ENV{ID_PATH}=="?*", KERNEL=="audio*", SYMLINK+="v4l/by-path/$env{ID_PATH}-audio-index$attr{index}"
|
||||
|
||||
LABEL="persistent_v4l_end"
|
||||
@@ -0,0 +1,18 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION=="remove", GOTO="sensor_end"
|
||||
|
||||
# device matching the sensor's name and the machine's DMI data for IIO devices
|
||||
SUBSYSTEM=="iio", KERNEL=="iio*", SUBSYSTEMS=="usb|i2c", \
|
||||
IMPORT{builtin}="hwdb 'sensor:modalias:$attr{modalias}:$attr{[dmi/id]modalias}'", \
|
||||
GOTO="sensor_end"
|
||||
|
||||
SUBSYSTEM=="input", ENV{ID_INPUT_ACCELEROMETER}=="1", SUBSYSTEMS=="acpi", \
|
||||
IMPORT{builtin}="hwdb 'sensor:modalias:acpi:$attr{hid}:$attr{[dmi/id]modalias}'", \
|
||||
GOTO="sensor_end"
|
||||
|
||||
SUBSYSTEM=="input", ENV{ID_INPUT_ACCELEROMETER}=="1", SUBSYSTEMS=="platform", \
|
||||
IMPORT{builtin}="hwdb 'sensor:modalias:platform:$id:$attr{[dmi/id]modalias}'", \
|
||||
GOTO="sensor_end"
|
||||
|
||||
LABEL="sensor_end"
|
||||
@@ -0,0 +1,26 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION=="remove", GOTO="serial_end"
|
||||
SUBSYSTEM!="tty", GOTO="serial_end"
|
||||
|
||||
SUBSYSTEMS=="pci", ENV{ID_BUS}="pci", ENV{ID_VENDOR_ID}="$attr{vendor}", ENV{ID_MODEL_ID}="$attr{device}"
|
||||
SUBSYSTEMS=="pci", IMPORT{builtin}="hwdb --subsystem=pci"
|
||||
SUBSYSTEMS=="usb", IMPORT{builtin}="usb_id", IMPORT{builtin}="hwdb --subsystem=usb"
|
||||
|
||||
# /dev/serial/by-path/, /dev/serial/by-id/ for USB devices
|
||||
KERNEL!="ttyUSB[0-9]*|ttyACM[0-9]*", GOTO="serial_end"
|
||||
|
||||
SUBSYSTEMS=="usb-serial", ENV{.ID_PORT}="$attr{port_number}"
|
||||
|
||||
IMPORT{builtin}="path_id"
|
||||
ENV{ID_PATH}=="?*", ENV{.ID_PORT}=="", SYMLINK+="serial/by-path/$env{ID_PATH}"
|
||||
ENV{ID_PATH}=="?*", ENV{.ID_PORT}=="?*", SYMLINK+="serial/by-path/$env{ID_PATH}-port$env{.ID_PORT}"
|
||||
|
||||
IMPORT{builtin}="usb_id"
|
||||
ENV{ID_SERIAL}=="", GOTO="serial_end"
|
||||
SUBSYSTEMS=="usb", ENV{ID_USB_INTERFACE_NUM}="$attr{bInterfaceNumber}"
|
||||
ENV{ID_USB_INTERFACE_NUM}=="", GOTO="serial_end"
|
||||
ENV{.ID_PORT}=="", SYMLINK+="serial/by-id/$env{ID_BUS}-$env{ID_SERIAL}-if$env{ID_USB_INTERFACE_NUM}"
|
||||
ENV{.ID_PORT}=="?*", SYMLINK+="serial/by-id/$env{ID_BUS}-$env{ID_SERIAL}-if$env{ID_USB_INTERFACE_NUM}-port$env{.ID_PORT}"
|
||||
|
||||
LABEL="serial_end"
|
||||
@@ -0,0 +1 @@
|
||||
SUBSYSTEM=="infiniband_mad", KERNEL=="*umad*", PROGRAM=="/bin/systemctl show srp_daemon -p ActiveState", RESULT=="ActiveState=active", ENV{SYSTEMD_WANTS}+="srp_daemon_port@$attr{ibdev}:$attr{port}.service"
|
||||
@@ -0,0 +1,3 @@
|
||||
# Thunderbolt udev rules for ACL (device auto approval)
|
||||
SUBSYSTEM=="thunderbolt" ENV{DEVTYPE}=="thunderbolt_device" ACTION=="add" ATTR{authorized}=="0" RUN+="/usr/lib/udev/tbtacl add $devpath"
|
||||
SUBSYSTEM=="thunderbolt" ENV{DEVTYPE}=="thunderbolt_device" ACTION=="change" ATTR{authorized}!="0" RUN+="/usr/lib/udev/tbtacl change $devpath"
|
||||
@@ -0,0 +1,2 @@
|
||||
# Thunderbolt udev rules for XDomain connections
|
||||
SUBSYSTEM=="thunderbolt" ENV{DEVTYPE}=="thunderbolt_xdomain" ACTION=="add" RUN+="/usr/lib/udev/tbtxdomain add $devpath"
|
||||
@@ -0,0 +1,8 @@
|
||||
# Get access to /dev/rfkill for users
|
||||
# See https://bugzilla.redhat.com/show_bug.cgi?id=514798
|
||||
#
|
||||
# Simplified by Kay Sievers
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=733326
|
||||
# See also https://bugzilla.gnome.org/show_bug.cgi?id=711373
|
||||
|
||||
KERNEL=="rfkill", SUBSYSTEM=="misc", TAG+="uaccess"
|
||||
@@ -0,0 +1,41 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
SUBSYSTEM!="block", GOTO="md_end"
|
||||
|
||||
# handle md arrays
|
||||
ACTION!="add|change", GOTO="md_end"
|
||||
KERNEL!="md*", GOTO="md_end"
|
||||
|
||||
# partitions have no md/{array_state,metadata_version}, but should not
|
||||
# for that reason be ignored.
|
||||
ENV{DEVTYPE}=="partition", GOTO="md_ignore_state"
|
||||
|
||||
# container devices have a metadata version of e.g. 'external:ddf' and
|
||||
# never leave state 'inactive'
|
||||
ATTR{md/metadata_version}=="external:[A-Za-z]*", ATTR{md/array_state}=="inactive", GOTO="md_ignore_state"
|
||||
TEST!="md/array_state", ENV{SYSTEMD_READY}="0", GOTO="md_end"
|
||||
ATTR{md/array_state}=="|clear|inactive", ENV{SYSTEMD_READY}="0", GOTO="md_end"
|
||||
LABEL="md_ignore_state"
|
||||
|
||||
IMPORT{program}="/sbin/mdadm --detail --export $devnode"
|
||||
ENV{DEVTYPE}=="disk", ENV{MD_NAME}=="?*", SYMLINK+="disk/by-id/md-name-$env{MD_NAME}", OPTIONS+="string_escape=replace"
|
||||
ENV{DEVTYPE}=="disk", ENV{MD_UUID}=="?*", SYMLINK+="disk/by-id/md-uuid-$env{MD_UUID}"
|
||||
ENV{DEVTYPE}=="disk", ENV{MD_DEVNAME}=="?*", SYMLINK+="md/$env{MD_DEVNAME}"
|
||||
ENV{DEVTYPE}=="partition", ENV{MD_NAME}=="?*", SYMLINK+="disk/by-id/md-name-$env{MD_NAME}-part%n", OPTIONS+="string_escape=replace"
|
||||
ENV{DEVTYPE}=="partition", ENV{MD_UUID}=="?*", SYMLINK+="disk/by-id/md-uuid-$env{MD_UUID}-part%n"
|
||||
ENV{DEVTYPE}=="partition", ENV{MD_DEVNAME}=="*[^0-9]", SYMLINK+="md/$env{MD_DEVNAME}%n"
|
||||
ENV{DEVTYPE}=="partition", ENV{MD_DEVNAME}=="*[0-9]", SYMLINK+="md/$env{MD_DEVNAME}p%n"
|
||||
|
||||
IMPORT{builtin}="blkid"
|
||||
OPTIONS+="link_priority=100"
|
||||
OPTIONS+="watch"
|
||||
ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
|
||||
ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
|
||||
|
||||
ENV{MD_LEVEL}=="raid[1-9]*", ENV{SYSTEMD_WANTS}+="mdmonitor.service"
|
||||
|
||||
# Tell systemd to run mdmon for our container, if we need it.
|
||||
ENV{MD_LEVEL}=="raid[1-9]*", ENV{MD_CONTAINER}=="?*", PROGRAM="/usr/bin/readlink $env{MD_CONTAINER}", ENV{MD_MON_THIS}="%c"
|
||||
ENV{MD_MON_THIS}=="?*", PROGRAM="/usr/bin/basename $env{MD_MON_THIS}", ENV{SYSTEMD_WANTS}+="mdmon@%c.service"
|
||||
|
||||
LABEL="md_end"
|
||||
@@ -0,0 +1,10 @@
|
||||
SUBSYSTEM!="block", GOTO="btrfs_end"
|
||||
KERNEL!="dm-[0-9]*", GOTO="btrfs_end"
|
||||
ACTION!="add|change", GOTO="btrfs_end"
|
||||
ENV{ID_FS_TYPE}!="btrfs", GOTO="btrfs_end"
|
||||
|
||||
# Once the device mapper symlink is created, tell btrfs about it
|
||||
# so we get the friendly name in /proc/mounts (and tools that read it)
|
||||
ENV{DM_NAME}=="?*", RUN{builtin}+="btrfs ready /dev/mapper/$env{DM_NAME}"
|
||||
|
||||
LABEL="btrfs_end"
|
||||
@@ -0,0 +1,17 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
SUBSYSTEM!="block", GOTO="btrfs_end"
|
||||
ACTION=="remove", GOTO="btrfs_end"
|
||||
ENV{ID_FS_TYPE}!="btrfs", GOTO="btrfs_end"
|
||||
ENV{SYSTEMD_READY}=="0", GOTO="btrfs_end"
|
||||
|
||||
# let the kernel know about this btrfs filesystem, and check if it is complete
|
||||
IMPORT{builtin}="btrfs ready $devnode"
|
||||
|
||||
# mark the device as not ready to be used by the system
|
||||
ENV{ID_BTRFS_READY}=="0", ENV{SYSTEMD_READY}="0"
|
||||
|
||||
# reconsider pending devices in case when multidevice volume awaits
|
||||
ENV{ID_BTRFS_READY}=="1", RUN+="/usr/bin/udevadm trigger -s block -p ID_BTRFS_READY=0"
|
||||
|
||||
LABEL="btrfs_end"
|
||||
@@ -0,0 +1,35 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
# Don't process any events if anaconda is running as anaconda brings up
|
||||
# raid devices manually
|
||||
ENV{ANACONDA}=="?*", GOTO="md_inc_end"
|
||||
# assemble md arrays
|
||||
|
||||
SUBSYSTEM!="block", GOTO="md_inc_end"
|
||||
|
||||
# handle potential components of arrays (the ones supported by md)
|
||||
ENV{ID_FS_TYPE}=="linux_raid_member", GOTO="md_inc"
|
||||
|
||||
# "noiswmd" on kernel command line stops mdadm from handling
|
||||
# "isw" (aka IMSM - Intel RAID).
|
||||
# "nodmraid" on kernel command line stops mdadm from handling
|
||||
# "isw" or "ddf".
|
||||
IMPORT{cmdline}="noiswmd"
|
||||
IMPORT{cmdline}="nodmraid"
|
||||
|
||||
ENV{nodmraid}=="?*", GOTO="md_inc_end"
|
||||
ENV{ID_FS_TYPE}=="ddf_raid_member", GOTO="md_inc"
|
||||
ENV{noiswmd}=="?*", GOTO="md_inc_end"
|
||||
ENV{ID_FS_TYPE}=="isw_raid_member", GOTO="md_inc"
|
||||
GOTO="md_inc_end"
|
||||
|
||||
LABEL="md_inc"
|
||||
|
||||
# remember you can limit what gets auto/incrementally assembled by
|
||||
# mdadm.conf(5)'s 'AUTO' and selectively whitelist using 'ARRAY'
|
||||
ACTION=="add|change", IMPORT{program}="/sbin/mdadm --incremental --export $devnode --offroot ${DEVLINKS}"
|
||||
ACTION=="add|change", ENV{MD_STARTED}=="*unsafe*", ENV{MD_FOREIGN}=="no", ENV{SYSTEMD_WANTS}+="mdadm-last-resort@$env{MD_DEVICE}.timer"
|
||||
ACTION=="remove", ENV{ID_PATH}=="?*", RUN+="/sbin/mdadm -If $name --path $env{ID_PATH}"
|
||||
ACTION=="remove", ENV{ID_PATH}!="?*", RUN+="/sbin/mdadm -If $name"
|
||||
|
||||
LABEL="md_inc_end"
|
||||
@@ -0,0 +1,37 @@
|
||||
#
|
||||
# persistent links for device-mapper devices
|
||||
# only hardware-backed device-mapper devices (ie multipath, dmraid,
|
||||
# and kpartx) have meaningful persistent device names
|
||||
#
|
||||
|
||||
KERNEL!="dm-*", GOTO="kpartx_end"
|
||||
ACTION!="add|change", GOTO="kpartx_end"
|
||||
ENV{DM_UUID}!="?*", GOTO="kpartx_end"
|
||||
|
||||
# Create dm tables for partitions on multipath devices.
|
||||
ENV{DM_UUID}!="mpath-?*", GOTO="mpath_kpartx_end"
|
||||
|
||||
# DM_SUBSYSTEM_UDEV_FLAG1 is the "skip_kpartx" flag.
|
||||
# For events not generated by libdevmapper, we need to fetch it from db.
|
||||
ENV{DM_UDEV_PRIMARY_SOURCE_FLAG}!="1", IMPORT{db}="DM_SUBSYSTEM_UDEV_FLAG1"
|
||||
ENV{DM_SUBSYSTEM_UDEV_FLAG1}=="1", GOTO="mpath_kpartx_end"
|
||||
|
||||
# 11-dm-mpath.rules sets MPATH_UNCHANGED for events that can be ignored.
|
||||
ENV{MPATH_UNCHANGED}=="1", GOTO="mpath_kpartx_end"
|
||||
|
||||
# Don't run kpartx now if we know it will fail or hang.
|
||||
ENV{DM_SUSPENDED}=="1", GOTO="mpath_kpartx_end"
|
||||
ENV{DM_NOSCAN}=="1", GOTO="mpath_kpartx_end"
|
||||
|
||||
# Run kpartx
|
||||
GOTO="run_kpartx"
|
||||
LABEL="mpath_kpartx_end"
|
||||
|
||||
## Code for other subsystems (non-multipath) could be placed here ##
|
||||
|
||||
GOTO="kpartx_end"
|
||||
|
||||
LABEL="run_kpartx"
|
||||
RUN+="/sbin/kpartx -un -p -part /dev/$name"
|
||||
|
||||
LABEL="kpartx_end"
|
||||
@@ -0,0 +1,32 @@
|
||||
# These rules can delete partitions devnodes for slave devices
|
||||
# for certain aggregate devices such as multipath.
|
||||
# This is desirable to avoid confusion and keep the number
|
||||
# of device nodes and symlinks within limits.
|
||||
#
|
||||
# This is done only once on the first "add" or "change" event for
|
||||
# any given device.
|
||||
#
|
||||
# To suppress this, use the kernel parameter "dont_del_part_nodes",
|
||||
# or create an udev rule file that sets ENV{DONT_DEL_PART_NODES}="1".
|
||||
|
||||
SUBSYSTEM!="block", GOTO="end_del_part_nodes"
|
||||
KERNEL!="sd*|dasd*|rbd*", GOTO="end_del_part_nodes"
|
||||
ACTION!="add|change", GOTO="end_del_part_nodes"
|
||||
|
||||
IMPORT{cmdline}="dont_del_part_nodes"
|
||||
ENV{dont_del_part_nodes}=="1", GOTO="end_del_part_nodes"
|
||||
ENV{DONT_DEL_PART_NODES}=="1", GOTO="end_del_part_nodes"
|
||||
|
||||
# dm-multipath
|
||||
ENV{DM_MULTIPATH_DEVICE_PATH}=="1", GOTO="del_part_nodes"
|
||||
|
||||
# Other aggregate device types can be added here.
|
||||
|
||||
GOTO="end_del_part_nodes"
|
||||
|
||||
LABEL="del_part_nodes"
|
||||
IMPORT{db}="DM_DEL_PART_NODES"
|
||||
ENV{DM_DEL_PART_NODES}!="1", ENV{DM_DEL_PART_NODES}="1", \
|
||||
RUN+="/usr/sbin/partx -d --nr 1-1024 $env{DEVNAME}"
|
||||
|
||||
LABEL="end_del_part_nodes"
|
||||
@@ -0,0 +1,104 @@
|
||||
########################################################################
|
||||
# Copyright (C) 2009-2015 Richard Hughes <richard@hughsie.com>
|
||||
#
|
||||
# Licensed under the GNU General Public License Version 2
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# Colorimeter devices used for profiling
|
||||
#
|
||||
# These are properties defining the behavior:
|
||||
# COLORD_SENSOR Can measure color
|
||||
# COLORD_SENSOR_KIND The kind of sensor
|
||||
# COLORD_SENSOR_CAPS The sensor capabilities
|
||||
#
|
||||
|
||||
# Skip all this to speed things up if it'a not a usb add.
|
||||
ACTION!="add", GOTO="gcm_rules_end"
|
||||
SUBSYSTEM!="usb", GOTO="gcm_rules_end"
|
||||
DRIVER!="usb", GOTO="gcm_rules_end"
|
||||
|
||||
# DTP20
|
||||
ATTRS{idVendor}=="0765", ATTRS{idProduct}=="d020", ENV{COLORD_SENSOR_KIND}="dtp20", ENV{COLORD_SENSOR_CAPS}="printer spot"
|
||||
|
||||
# DTP92Q (not tested)
|
||||
ATTRS{idVendor}=="0765", ATTRS{idProduct}=="d092", ENV{COLORD_SENSOR_KIND}="unknown", ENV{COLORD_SENSOR_CAPS}="crt"
|
||||
|
||||
# DTP94
|
||||
ATTRS{idVendor}=="0765", ATTRS{idProduct}=="d094", ENV{COLORD_SENSOR_KIND}="dtp94"
|
||||
|
||||
# MonacoOPTIX (Same as i1 Display 1)
|
||||
ATTRS{idVendor}=="0670", ATTRS{idProduct}=="0001", ENV{COLORD_SENSOR_KIND}="i1-display1", ENV{COLORD_SENSOR_CAPS}="lcd crt"
|
||||
|
||||
# i1Display
|
||||
ATTRS{idVendor}=="0971", ATTRS{idProduct}=="2003", ENV{COLORD_SENSOR_KIND}="i1-display2", ENV{COLORD_SENSOR_CAPS}="lcd crt"
|
||||
|
||||
# i1Monitor
|
||||
ATTRS{idVendor}=="0971", ATTRS{idProduct}=="2001", ENV{COLORD_SENSOR_KIND}="i1-monitor", ENV{COLORD_SENSOR_CAPS}="lcd crt"
|
||||
|
||||
# i1Pro
|
||||
ATTRS{idVendor}=="0971", ATTRS{idProduct}=="2000", ENV{COLORD_SENSOR_KIND}="i1-pro", ENV{COLORD_SENSOR_CAPS}="lcd crt projector printer ambient"
|
||||
|
||||
# i1Display3
|
||||
ATTRS{idVendor}=="0765", ATTRS{idProduct}=="5020", ENV{COLORD_SENSOR_KIND}="i1-display3", ENV{COLORD_SENSOR_CAPS}="lcd crt projector ambient"
|
||||
|
||||
# ColorMunki Smile
|
||||
ATTRS{idVendor}=="0765", ATTRS{idProduct}=="6003", ENV{COLORD_SENSOR_KIND}="color-munki-smile", ENV{COLORD_SENSOR_CAPS}="lcd-ccfl lcd-white-led"
|
||||
|
||||
# ColorMunki Photo
|
||||
ATTRS{idVendor}=="0971", ATTRS{idProduct}=="2007", ENV{COLORD_SENSOR_KIND}="color-munki-photo", ENV{COLORD_SENSOR_CAPS}="lcd crt projector printer spot ambient"
|
||||
|
||||
# Colorimtre HCFR
|
||||
ATTRS{idVendor}=="04db", ATTRS{idProduct}=="005b", ENV{COLORD_SENSOR_KIND}="colorimtre-hcfr", ENV{COLORD_SENSOR_CAPS}="projector"
|
||||
|
||||
# Spyder 1
|
||||
ATTRS{idVendor}=="085c", ATTRS{idProduct}=="0100", ENV{COLORD_SENSOR_KIND}="spyder", ENV{COLORD_SENSOR_CAPS}="lcd crt"
|
||||
|
||||
# Spyder 2
|
||||
ATTRS{idVendor}=="085c", ATTRS{idProduct}=="0200", ENV{COLORD_SENSOR_KIND}="spyder2", ENV{COLORD_SENSOR_CAPS}="lcd crt"
|
||||
|
||||
# Spyder 3
|
||||
ATTRS{idVendor}=="085c", ATTRS{idProduct}=="0300", ENV{COLORD_SENSOR_KIND}="spyder3", ENV{COLORD_SENSOR_CAPS}="lcd crt ambient"
|
||||
|
||||
# Spyder 4
|
||||
ATTRS{idVendor}=="085c", ATTRS{idProduct}=="0400", ENV{COLORD_SENSOR_KIND}="spyder4", ENV{COLORD_SENSOR_CAPS}="lcd crt ambient"
|
||||
|
||||
# Spyder 5
|
||||
ATTRS{idVendor}=="085c", ATTRS{idProduct}=="0500", ENV{COLORD_SENSOR_KIND}="spyder5", ENV{COLORD_SENSOR_CAPS}="lcd crt ambient"
|
||||
|
||||
# Huey
|
||||
ATTRS{idVendor}=="0971", ATTRS{idProduct}=="2005", ENV{COLORD_SENSOR_KIND}="huey"
|
||||
|
||||
# Huey, built into Thinkpad w700
|
||||
ATTRS{idVendor}=="0765", ATTRS{idProduct}=="5001", ENV{COLORD_SENSOR_KIND}="huey", ENV{COLORD_SENSOR_EMBEDDED}="1"
|
||||
ATTRS{idVendor}=="0765", ATTRS{idProduct}=="5010", ENV{COLORD_SENSOR_KIND}="huey", ENV{COLORD_SENSOR_EMBEDDED}="1"
|
||||
|
||||
# ColorHug (legacy)
|
||||
ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="f8da", ENV{COLORD_SENSOR_KIND}="colorhug"
|
||||
|
||||
# ColorHug
|
||||
ATTRS{idVendor}=="273f", ATTRS{idProduct}=="1000", ENV{COLORD_SENSOR_KIND}="colorhug", ENV{COLORD_IGNORE}="1"
|
||||
ATTRS{idVendor}=="273f", ATTRS{idProduct}=="1005", ENV{COLORD_SENSOR_KIND}="colorhug2", ENV{COLORD_IGNORE}="1"
|
||||
ATTRS{idVendor}=="273f", ATTRS{idProduct}=="1001", ENV{COLORD_SENSOR_KIND}="colorhug", ENV{COLORD_SENSOR_CAPS}="lcd"
|
||||
ATTRS{idVendor}=="273f", ATTRS{idProduct}=="1004", ENV{COLORD_SENSOR_KIND}="colorhug2", ENV{COLORD_SENSOR_CAPS}="lcd"
|
||||
|
||||
# ColorHug Plus
|
||||
ATTRS{idVendor}=="273f", ATTRS{idProduct}=="1002", ENV{COLORD_SENSOR_KIND}="colorhug-plus", ENV{COLORD_SENSOR_CAPS}="lcd"
|
||||
|
||||
# ColorHug ALS
|
||||
ATTRS{idVendor}=="273f", ATTRS{idProduct}=="1006", ENV{COLORD_SENSOR_KIND}="colorhug-als", ENV{COLORD_IGNORE}="1"
|
||||
ATTRS{idVendor}=="273f", ATTRS{idProduct}=="1007", ENV{COLORD_SENSOR_KIND}="colorhug-als", ENV{COLORD_IGNORE}="1"
|
||||
ATTRS{idVendor}=="273f", ATTRS{idProduct}=="1008", ENV{COLORD_SENSOR_KIND}="colorhug-als", ENV{COLORD_IGNORE}="1"
|
||||
|
||||
# color calibration device
|
||||
ENV{COLORD_SENSOR_KIND}=="*?", ENV{COLOR_MEASUREMENT_DEVICE}="1"
|
||||
ENV{COLORD_SENSOR_KIND}=="*?", ENV{ID_MODEL}=="", IMPORT{builtin}="usb_id"
|
||||
ENV{COLORD_SENSOR_KIND}=="*?", ENV{ID_MODEL_FROM_DATABASE}=="", IMPORT{builtin}="hwdb --subsystem=usb"
|
||||
|
||||
# Allow the daemon to access the color devices
|
||||
ENV{COLORD_SENSOR_KIND}=="*?", GROUP="root"
|
||||
|
||||
LABEL="gcm_rules_end"
|
||||
@@ -0,0 +1,136 @@
|
||||
# Copyright (C) 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This file is part of LVM2.
|
||||
|
||||
# Udev rules for LVM.
|
||||
#
|
||||
# Scan all block devices having a PV label for LVM metadata.
|
||||
# Store this information in LVMetaD (the LVM metadata daemon) and maintain LVM
|
||||
# metadata state for improved performance by avoiding further scans while
|
||||
# running subsequent LVM commands or while using lvm2app library.
|
||||
# Also, notify LVMetaD about any relevant block device removal.
|
||||
#
|
||||
# This rule is essential for having the information in LVMetaD up-to-date.
|
||||
# It also requires blkid to be called on block devices before so only devices
|
||||
# used as LVM PVs are processed (ID_FS_TYPE="LVM2_member" or "LVM1_member").
|
||||
|
||||
SUBSYSTEM!="block", GOTO="lvm_end"
|
||||
|
||||
|
||||
ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="1", GOTO="lvm_end"
|
||||
|
||||
# If the PV label got lost, inform lvmetad immediately.
|
||||
# Detect the lost PV label by comparing previous ID_FS_TYPE value with current one.
|
||||
ENV{.ID_FS_TYPE_NEW}="$env{ID_FS_TYPE}"
|
||||
IMPORT{db}="ID_FS_TYPE"
|
||||
ENV{ID_FS_TYPE}=="LVM2_member|LVM1_member", ENV{.ID_FS_TYPE_NEW}!="LVM2_member|LVM1_member", ENV{LVM_PV_GONE}="1"
|
||||
ENV{ID_FS_TYPE}="$env{.ID_FS_TYPE_NEW}"
|
||||
ENV{LVM_PV_GONE}=="1", GOTO="lvm_scan"
|
||||
|
||||
# Only process devices already marked as a PV - this requires blkid to be called before.
|
||||
ENV{ID_FS_TYPE}!="LVM2_member|LVM1_member", GOTO="lvm_end"
|
||||
ENV{DM_MULTIPATH_DEVICE_PATH}=="1", GOTO="lvm_end"
|
||||
|
||||
# Inform lvmetad about any PV that is gone.
|
||||
ACTION=="remove", GOTO="lvm_scan"
|
||||
|
||||
# Create /dev/disk/by-id/lvm-pv-uuid-<PV_UUID> symlink for each PV
|
||||
ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-id/lvm-pv-uuid-$env{ID_FS_UUID_ENC}"
|
||||
|
||||
# If the PV is a special device listed below, scan only if the device is
|
||||
# properly activated. These devices are not usable after an ADD event,
|
||||
# but they require an extra setup and they are ready after a CHANGE event.
|
||||
# Also support coldplugging with ADD event but only if the device is already
|
||||
# properly activated.
|
||||
# This logic should be eventually moved to rules where those particular
|
||||
# devices are processed primarily (MD and loop).
|
||||
|
||||
# DM device:
|
||||
KERNEL!="dm-[0-9]*", GOTO="next"
|
||||
ENV{DM_UDEV_PRIMARY_SOURCE_FLAG}=="1", ENV{DM_ACTIVATION}=="1", GOTO="lvm_scan"
|
||||
GOTO="lvm_end"
|
||||
|
||||
# MD device:
|
||||
LABEL="next"
|
||||
KERNEL!="md[0-9]*", GOTO="next"
|
||||
IMPORT{db}="LVM_MD_PV_ACTIVATED"
|
||||
ACTION=="add", ENV{LVM_MD_PV_ACTIVATED}=="1", GOTO="lvm_scan"
|
||||
ACTION=="change", ENV{LVM_MD_PV_ACTIVATED}!="1", TEST=="md/array_state", ENV{LVM_MD_PV_ACTIVATED}="1", GOTO="lvm_scan"
|
||||
ACTION=="add", KERNEL=="md[0-9]*p[0-9]*", GOTO="lvm_scan"
|
||||
ENV{LVM_MD_PV_ACTIVATED}!="1", ENV{SYSTEMD_READY}="0"
|
||||
GOTO="lvm_end"
|
||||
|
||||
# Loop device:
|
||||
LABEL="next"
|
||||
KERNEL!="loop[0-9]*", GOTO="next"
|
||||
ACTION=="add", ENV{LVM_LOOP_PV_ACTIVATED}=="1", GOTO="lvm_scan"
|
||||
ACTION=="change", ENV{LVM_LOOP_PV_ACTIVATED}!="1", TEST=="loop/backing_file", ENV{LVM_LOOP_PV_ACTIVATED}="1", GOTO="lvm_scan"
|
||||
ENV{LVM_LOOP_PV_ACTIVATED}!="1", ENV{SYSTEMD_READY}="0"
|
||||
GOTO="lvm_end"
|
||||
|
||||
# If the PV is not a special device listed above, scan only if necessary.
|
||||
# For "direct_pvscan" mode (see below), this means run rules only an ADD events.
|
||||
# For "systemd_background" mode, systemd takes care of this by activating
|
||||
# the lvm2-pvscan@.service only once.
|
||||
LABEL="next"
|
||||
ACTION!="add|change", GOTO="lvm_end"
|
||||
|
||||
LABEL="lvm_scan"
|
||||
|
||||
ENV{SYSTEMD_READY}="1"
|
||||
|
||||
# The method for invoking pvscan is selected at build time with the option
|
||||
# --(enable|disable)-udev-systemd-background-jobs to "configure".
|
||||
# On modern distributions with recent systemd, it's "systemd_background";
|
||||
# on others, "direct_pvscan".
|
||||
GOTO="systemd_background"
|
||||
|
||||
LABEL="systemd_background"
|
||||
|
||||
# The table below summarises the situations in which we reach the LABEL="lvm_scan"
|
||||
# in the "systemd_background" case.
|
||||
# Marked by X, X* means only if the special dev is properly set up.
|
||||
# The artificial ADD is supported for coldplugging. We avoid running the pvscan
|
||||
# on artificial CHANGE so there's no unexpected autoactivation when WATCH rule fires.
|
||||
# N.B. MD and loop never actually reaches lvm_scan on REMOVE as the PV label is gone
|
||||
# within a CHANGE event (these are caught by the "LVM_PV_GONE" rule at the beginning).
|
||||
#
|
||||
# In this case, we simply set up the dependency between the device and the pvscan
|
||||
# job using SYSTEMD_ALIAS (which sets up a simplified device identifier that
|
||||
# allows using "BindsTo" in the sytemd unit file) and SYSTEMD_WANTS (which tells
|
||||
# systemd to start the pvscan job once the device is ready).
|
||||
# We need to set these variables for both "add" and "change" events, otherwise
|
||||
# systemd may loose information about the device/unit dependencies.
|
||||
#
|
||||
# | real ADD | real CHANGE | artificial ADD | artificial CHANGE | REMOVE
|
||||
# =============================================================================
|
||||
# DM | | X | X* | | X
|
||||
# MD | | X | X* | |
|
||||
# loop | | X | X* | |
|
||||
# other | X | X | X | | X
|
||||
ACTION!="remove", ENV{LVM_PV_GONE}=="1", RUN+="/usr/bin/systemd-run /usr/bin/lvm pvscan --cache $major:$minor", GOTO="lvm_end"
|
||||
ENV{SYSTEMD_ALIAS}="/dev/block/$major:$minor"
|
||||
ENV{ID_MODEL}="LVM PV $env{ID_FS_UUID_ENC} on /dev/$name"
|
||||
ENV{SYSTEMD_WANTS}+="lvm2-pvscan@$major:$minor.service"
|
||||
GOTO="lvm_end"
|
||||
|
||||
LABEL="direct_pvscan"
|
||||
|
||||
# The table below summarises the situations in which we reach the LABEL="lvm_scan"
|
||||
# for the "direct_pvscan" case.
|
||||
# Marked by X, X* means only if the special dev is properly set up.
|
||||
# The artificial ADD is supported for coldplugging. We avoid running the pvscan
|
||||
# on artificial CHANGE so there's no unexpected autoactivation when WATCH rule fires.
|
||||
#
|
||||
# In this case, we need to make sure that pvscan is not invoked spuriously, therefore
|
||||
# we invoke it only for "add" events for "other" devices.
|
||||
#
|
||||
# | real ADD | real CHANGE | artificial ADD | artificial CHANGE | REMOVE
|
||||
# =============================================================================
|
||||
# DM | | X | X* | | X
|
||||
# MD | | X | X* | |
|
||||
# loop | | X | X* | |
|
||||
# other | X | | X | | X
|
||||
RUN+="/usr/bin/lvm pvscan --background --cache --activate ay --major $major --minor $minor", ENV{LVM_SCANNED}="1"
|
||||
|
||||
LABEL="lvm_end"
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,12 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION=="remove", GOTO="joystick_end"
|
||||
ENV{ID_INPUT_JOYSTICK}=="", GOTO="joystick_end"
|
||||
KERNEL!="event*", GOTO="joystick_end"
|
||||
|
||||
# joystick:<bustype>:v<vid>p<pid>:name:<name>:*
|
||||
KERNELS=="input*", ENV{ID_BUS}!="", \
|
||||
IMPORT{builtin}="hwdb 'joystick:$env{ID_BUS}:v$attr{id/vendor}p$attr{id/product}:name:$attr{name}:'", \
|
||||
GOTO="joystick_end"
|
||||
|
||||
LABEL="joystick_end"
|
||||
@@ -0,0 +1,18 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION=="remove", GOTO="mouse_end"
|
||||
KERNEL!="event*", GOTO="mouse_end"
|
||||
ENV{ID_INPUT_MOUSE}=="", GOTO="mouse_end"
|
||||
|
||||
# mouse:<subsystem>:v<vid>p<pid>:name:<name>:*
|
||||
KERNELS=="input*", ENV{ID_BUS}=="usb", \
|
||||
IMPORT{builtin}="hwdb 'mouse:$env{ID_BUS}:v$attr{id/vendor}p$attr{id/product}:name:$attr{name}:'", \
|
||||
GOTO="mouse_end"
|
||||
KERNELS=="input*", ENV{ID_BUS}=="bluetooth", \
|
||||
IMPORT{builtin}="hwdb 'mouse:$env{ID_BUS}:v$attr{id/vendor}p$attr{id/product}:name:$attr{name}:'", \
|
||||
GOTO="mouse_end"
|
||||
DRIVERS=="psmouse", SUBSYSTEMS=="serio", \
|
||||
IMPORT{builtin}="hwdb 'mouse:ps2::name:$attr{device/name}:'", \
|
||||
GOTO="mouse_end"
|
||||
|
||||
LABEL="mouse_end"
|
||||
@@ -0,0 +1,15 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
ACTION=="remove", GOTO="power_switch_end"
|
||||
|
||||
SUBSYSTEM=="input", KERNEL=="event*", ENV{ID_INPUT_SWITCH}=="1", TAG+="power-switch"
|
||||
SUBSYSTEM=="input", KERNEL=="event*", ENV{ID_INPUT_KEY}=="1", TAG+="power-switch"
|
||||
|
||||
LABEL="power_switch_end"
|
||||
@@ -0,0 +1,13 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION=="remove", GOTO="touchpad_end"
|
||||
ENV{ID_INPUT}=="", GOTO="touchpad_end"
|
||||
ENV{ID_INPUT_TOUCHPAD}=="", GOTO="touchpad_end"
|
||||
KERNEL!="event*", GOTO="touchpad_end"
|
||||
|
||||
# touchpad:<subsystem>:v<vid>p<pid>:name:<name>:*
|
||||
KERNELS=="input*", ENV{ID_BUS}!="", \
|
||||
IMPORT{builtin}="hwdb 'touchpad:$env{ID_BUS}:v$attr{id/vendor}p$attr{id/product}:name:$attr{name}:'", \
|
||||
GOTO="touchpad_end"
|
||||
|
||||
LABEL="touchpad_end"
|
||||
@@ -0,0 +1,80 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
ACTION=="remove", GOTO="uaccess_end"
|
||||
ENV{MAJOR}=="", GOTO="uaccess_end"
|
||||
|
||||
# PTP/MTP protocol devices, cameras, portable media players
|
||||
SUBSYSTEM=="usb", ENV{ID_USB_INTERFACES}=="*:060101:*", TAG+="uaccess"
|
||||
|
||||
# Digicams with proprietary protocol
|
||||
ENV{ID_GPHOTO2}=="?*", TAG+="uaccess"
|
||||
|
||||
# SCSI and USB scanners
|
||||
ENV{libsane_matched}=="yes", TAG+="uaccess"
|
||||
|
||||
# HPLIP devices (necessary for ink level check and HP tool maintenance)
|
||||
ENV{ID_HPLIP}=="1", TAG+="uaccess"
|
||||
|
||||
# optical drives
|
||||
SUBSYSTEM=="block", ENV{ID_CDROM}=="1", TAG+="uaccess"
|
||||
SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", TAG+="uaccess"
|
||||
|
||||
# Sound devices
|
||||
SUBSYSTEM=="sound", TAG+="uaccess", \
|
||||
OPTIONS+="static_node=snd/timer", OPTIONS+="static_node=snd/seq"
|
||||
|
||||
# ffado is an userspace driver for firewire sound cards
|
||||
SUBSYSTEM=="firewire", ENV{ID_FFADO}=="1", TAG+="uaccess"
|
||||
|
||||
# Webcams, frame grabber, TV cards
|
||||
SUBSYSTEM=="video4linux", TAG+="uaccess"
|
||||
SUBSYSTEM=="dvb", TAG+="uaccess"
|
||||
|
||||
# IIDC devices: industrial cameras and some webcams
|
||||
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x00010*", TAG+="uaccess"
|
||||
SUBSYSTEM=="firewire", ATTR{units}=="*0x00b09d:0x00010*", TAG+="uaccess"
|
||||
# AV/C devices: camcorders, set-top boxes, TV sets, audio devices, and more
|
||||
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x010001*", TAG+="uaccess"
|
||||
SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x014001*", TAG+="uaccess"
|
||||
|
||||
# DRI video devices
|
||||
SUBSYSTEM=="drm", KERNEL=="card*", TAG+="uaccess"
|
||||
|
||||
# smart-card readers
|
||||
ENV{ID_SMARTCARD_READER}=="?*", TAG+="uaccess"
|
||||
|
||||
# (USB) authentication devices
|
||||
ENV{ID_SECURITY_TOKEN}=="?*", TAG+="uaccess"
|
||||
|
||||
# PDA devices
|
||||
ENV{ID_PDA}=="?*", TAG+="uaccess"
|
||||
|
||||
# Programmable remote control
|
||||
ENV{ID_REMOTE_CONTROL}=="1", TAG+="uaccess"
|
||||
|
||||
# joysticks
|
||||
SUBSYSTEM=="input", ENV{ID_INPUT_JOYSTICK}=="?*", TAG+="uaccess"
|
||||
|
||||
# color measurement devices
|
||||
ENV{COLOR_MEASUREMENT_DEVICE}=="?*", TAG+="uaccess"
|
||||
|
||||
# DDC/CI device, usually high-end monitors such as the DreamColor
|
||||
ENV{DDC_DEVICE}=="?*", TAG+="uaccess"
|
||||
|
||||
# media player raw devices (for user-mode drivers, Android SDK, etc.)
|
||||
SUBSYSTEM=="usb", ENV{ID_MEDIA_PLAYER}=="?*", TAG+="uaccess"
|
||||
|
||||
# software-defined radio communication devices
|
||||
ENV{ID_SOFTWARE_RADIO}=="?*", TAG+="uaccess"
|
||||
|
||||
# 3D printers, CNC machines, laser cutters, 3D scanners, etc.
|
||||
ENV{ID_MAKER_TOOL}=="?*", TAG+="uaccess"
|
||||
|
||||
LABEL="uaccess_end"
|
||||
@@ -0,0 +1,56 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
ACTION=="remove", GOTO="seat_end"
|
||||
|
||||
TAG=="uaccess", SUBSYSTEM!="sound", TAG+="seat"
|
||||
SUBSYSTEM=="sound", KERNEL=="card*", TAG+="seat"
|
||||
SUBSYSTEM=="input", KERNEL=="input*", TAG+="seat"
|
||||
SUBSYSTEM=="graphics", KERNEL=="fb[0-9]*", TAG+="seat", TAG+="master-of-seat"
|
||||
SUBSYSTEM=="drm", KERNEL=="card[0-9]*", TAG+="seat", TAG+="master-of-seat"
|
||||
SUBSYSTEM=="usb", ATTR{bDeviceClass}=="09", TAG+="seat"
|
||||
|
||||
# 'Plugable' USB hub, sound, network, graphics adapter
|
||||
SUBSYSTEM=="usb", ATTR{idVendor}=="2230", ATTR{idProduct}=="000[13]", ENV{ID_AUTOSEAT}="1"
|
||||
|
||||
# qemu (version 2.4+) has a PCI-PCI bridge (-device pci-bridge-seat) to group
|
||||
# devices belonging to one seat. See:
|
||||
# http://git.qemu.org/?p=qemu.git;a=blob;f=docs/multiseat.txt
|
||||
SUBSYSTEM=="pci", ATTR{vendor}=="0x1b36", ATTR{device}=="0x000a", TAG+="seat", ENV{ID_AUTOSEAT}="1"
|
||||
|
||||
# Mimo 720, with integrated USB hub, displaylink graphics, and e2i
|
||||
# touchscreen. This device carries no proper VID/PID in the USB hub,
|
||||
# but it does carry good ID data in the graphics component, hence we
|
||||
# check it from the parent. There's a bit of a race here however,
|
||||
# given that the child devices might not exist yet at the time this
|
||||
# rule is executed. To work around this we'll trigger the parent from
|
||||
# the child if we notice that the parent wasn't recognized yet.
|
||||
|
||||
# Match parent
|
||||
SUBSYSTEM=="usb", ATTR{idVendor}=="058f", ATTR{idProduct}=="6254", \
|
||||
ATTR{%k.2/idVendor}=="17e9", ATTR{%k.2/idProduct}=="401a", ATTR{%k.2/product}=="mimo inc", \
|
||||
ENV{ID_AUTOSEAT}="1", ENV{ID_AVOID_LOOP}="1"
|
||||
|
||||
# Match child, look for parent's ID_AVOID_LOOP
|
||||
SUBSYSTEM=="usb", ATTR{idVendor}=="17e9", ATTR{idProduct}=="401a", ATTR{product}=="mimo inc", \
|
||||
ATTR{../idVendor}=="058f", ATTR{../idProduct}=="6254", \
|
||||
IMPORT{parent}="ID_AVOID_LOOP"
|
||||
|
||||
# Match child, retrigger parent
|
||||
SUBSYSTEM=="usb", ATTR{idVendor}=="17e9", ATTR{idProduct}=="401a", ATTR{product}=="mimo inc", \
|
||||
ATTR{../idVendor}=="058f", ATTR{../idProduct}=="6254", \
|
||||
ENV{ID_AVOID_LOOP}=="", \
|
||||
RUN+="/usr/bin/udevadm trigger --parent-match=%p/.."
|
||||
|
||||
TAG=="seat", ENV{ID_PATH}=="", IMPORT{builtin}="path_id"
|
||||
TAG=="seat", ENV{ID_FOR_SEAT}=="", ENV{ID_PATH_TAG}!="", ENV{ID_FOR_SEAT}="$env{SUBSYSTEM}-$env{ID_PATH_TAG}"
|
||||
|
||||
SUBSYSTEM=="input", ATTR{name}=="Wiebetech LLC Wiebetech", RUN+="/usr/bin/loginctl lock-sessions"
|
||||
|
||||
LABEL="seat_end"
|
||||
@@ -0,0 +1,19 @@
|
||||
# SPDX-License-Identifier: LGPL-2.1+
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
ACTION=="remove", GOTO="seat_late_end"
|
||||
|
||||
ENV{ID_SEAT}=="", ENV{ID_AUTOSEAT}=="1", ENV{ID_FOR_SEAT}!="", ENV{ID_SEAT}="seat-$env{ID_FOR_SEAT}"
|
||||
ENV{ID_SEAT}=="", IMPORT{parent}="ID_SEAT"
|
||||
|
||||
ENV{ID_SEAT}!="", TAG+="$env{ID_SEAT}"
|
||||
|
||||
TAG=="uaccess", ENV{MAJOR}!="", RUN{builtin}+="uaccess"
|
||||
|
||||
LABEL="seat_late_end"
|
||||
@@ -0,0 +1,14 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION=="remove", GOTO="net_end"
|
||||
SUBSYSTEM!="net", GOTO="net_end"
|
||||
|
||||
IMPORT{builtin}="net_id"
|
||||
|
||||
SUBSYSTEMS=="usb", IMPORT{builtin}="usb_id", IMPORT{builtin}="hwdb --subsystem=usb"
|
||||
SUBSYSTEMS=="usb", GOTO="net_end"
|
||||
|
||||
SUBSYSTEMS=="pci", ENV{ID_BUS}="pci", ENV{ID_VENDOR_ID}="$attr{vendor}", ENV{ID_MODEL_ID}="$attr{device}"
|
||||
SUBSYSTEMS=="pci", IMPORT{builtin}="hwdb --subsystem=pci"
|
||||
|
||||
LABEL="net_end"
|
||||
@@ -0,0 +1,7 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add", GOTO="mtd_probe_end"
|
||||
|
||||
KERNEL=="mtd*ro", IMPORT{program}="mtd_probe $devnode"
|
||||
|
||||
LABEL="mtd_probe_end"
|
||||
@@ -0,0 +1,45 @@
|
||||
# This is a version of net-description.rules for /sys/class/infiniband devices
|
||||
|
||||
ACTION=="remove", GOTO="rdma_description_end"
|
||||
SUBSYSTEM!="infiniband", GOTO="rdma_description_end"
|
||||
|
||||
# NOTE: DRIVERS searches up the sysfs path to find the driver that is bound to
|
||||
# the PCI/etc device that the RDMA device is linked to. This is not the kernel
|
||||
# driver that is supplying the RDMA device (eg as seen in ID_NET_DRIVER)
|
||||
|
||||
# FIXME: with kernel support we could actually detect the protocols the RDMA
|
||||
# driver itself supports, this is a work around for lack of that support.
|
||||
# In future we could do this with a udev IMPORT{program} helper program
|
||||
# that extracted the ID information from the RDMA netlink.
|
||||
|
||||
# Hardware that supports InfiniBand
|
||||
DRIVERS=="ib_mthca", ENV{ID_RDMA_INFINIBAND}="1"
|
||||
DRIVERS=="mlx4_core", ENV{ID_RDMA_INFINIBAND}="1"
|
||||
DRIVERS=="mlx5_core", ENV{ID_RDMA_INFINIBAND}="1"
|
||||
DRIVERS=="ib_qib", ENV{ID_RDMA_INFINIBAND}="1"
|
||||
|
||||
# Hardware that supports OPA
|
||||
DRIVERS=="hfi1", ENV{ID_RDMA_OPA}="1"
|
||||
|
||||
# Hardware that supports iWarp
|
||||
DRIVERS=="cxgb3", ENV{ID_RDMA_IWARP}="1"
|
||||
DRIVERS=="cxgb4", ENV{ID_RDMA_IWARP}="1"
|
||||
DRIVERS=="i40e", ENV{ID_RDMA_IWARP}="1"
|
||||
DRIVERS=="nes", ENV{ID_RDMA_IWARP}="1"
|
||||
|
||||
# Hardware that supports RoCE
|
||||
DRIVERS=="be2net", ENV{ID_RDMA_ROCE}="1"
|
||||
DRIVERS=="bnxt_en", ENV{ID_RDMA_ROCE}="1"
|
||||
DRIVERS=="hns", ENV{ID_RDMA_ROCE}="1"
|
||||
DRIVERS=="mlx4_core", ENV{ID_RDMA_ROCE}="1"
|
||||
DRIVERS=="mlx5_core", ENV{ID_RDMA_ROCE}="1"
|
||||
DRIVERS=="qede", ENV{ID_RDMA_ROCE}="1"
|
||||
DRIVERS=="vmw_pvrdma", ENV{ID_RDMA_ROCE}="1"
|
||||
DEVPATH=="*/infiniband/rxe*", ATTR{parent}=="*", ENV{ID_RDMA_ROCE}="1"
|
||||
|
||||
# Setup the usual ID information so that systemd will display a sane name for
|
||||
# the RDMA device units.
|
||||
SUBSYSTEMS=="pci", ENV{ID_BUS}="pci", ENV{ID_VENDOR_ID}="$attr{vendor}", ENV{ID_MODEL_ID}="$attr{device}"
|
||||
SUBSYSTEMS=="pci", IMPORT{builtin}="hwdb --subsystem=pci"
|
||||
|
||||
LABEL="rdma_description_end"
|
||||
@@ -0,0 +1,16 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_cinterion_port_types_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1e2d", GOTO="mm_cinterion_port_types"
|
||||
GOTO="mm_cinterion_port_types_end"
|
||||
|
||||
LABEL="mm_cinterion_port_types"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# PHS8
|
||||
ATTRS{idVendor}=="1e2d", ATTRS{idProduct}=="0053", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_CINTERION_PORT_TYPE_GPS}="1"
|
||||
|
||||
# PLS8
|
||||
ATTRS{idVendor}=="1e2d", ATTRS{idProduct}=="0061", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_CINTERION_PORT_TYPE_GPS}="1"
|
||||
|
||||
LABEL="mm_cinterion_port_types_end"
|
||||
@@ -0,0 +1,12 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_dell_port_types_end"
|
||||
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="413c", GOTO="mm_dell_vendorcheck"
|
||||
GOTO="mm_dell_port_types_end"
|
||||
|
||||
LABEL="mm_dell_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
GOTO="mm_dell_port_types_end"
|
||||
LABEL="mm_dell_port_types_end"
|
||||
@@ -0,0 +1,174 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_mbm_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0bdb", GOTO="mm_mbm_ericsson_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0fce", GOTO="mm_mbm_sony_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="413c", GOTO="mm_mbm_dell_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03f0", GOTO="mm_mbm_hp_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0930", GOTO="mm_mbm_toshiba_vendorcheck"
|
||||
GOTO="mm_mbm_end"
|
||||
|
||||
LABEL="mm_mbm_ericsson_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# Ericsson F3507g
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1900", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1900", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1902", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1902", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson F3607gw
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1904", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1904", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1905", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1905", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1906", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1906", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson F3307
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="190a", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1909", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson F3307 R2
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1914", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson C3607w
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1049", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson C3607w v2
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="190b", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson F5521gw
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="190d", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="190d", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1911", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1911", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson H5321gw
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1919", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson H5321w
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="191d", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson F5321gw
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1917", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson F5321w
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="191b", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson C5621gw
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="191f", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson C5621w
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1921", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson H5321gw
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1926", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1926", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1927", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1927", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson C3304w
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1928", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Ericsson C5621 TFF
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="1936", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Lenovo N5321gw
|
||||
ATTRS{idVendor}=="0bdb", ATTRS{idProduct}=="193e", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
GOTO="mm_mbm_end"
|
||||
|
||||
LABEL="mm_mbm_sony_vendorcheck"
|
||||
|
||||
# Sony-Ericsson MD300
|
||||
ATTRS{idVendor}=="0fce", ATTRS{idProduct}=="d0cf", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Sony-Ericsson MD400
|
||||
ATTRS{idVendor}=="0fce", ATTRS{idProduct}=="d0e1", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Sony-Ericsson MD400G
|
||||
ATTRS{idVendor}=="0fce", ATTRS{idProduct}=="d103", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
GOTO="mm_mbm_end"
|
||||
|
||||
LABEL="mm_mbm_dell_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# Dell 5560
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818e", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818e", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
|
||||
# Dell 5550
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818d", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Dell 5530 HSDPA
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8147", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8147", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Dell F3607gw
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8183", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8183", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8184", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="8184", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Dell F3307
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818b", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818b", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818c", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="413c", ATTRS{idProduct}=="818c", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
GOTO="mm_mbm_end"
|
||||
|
||||
LABEL="mm_mbm_hp_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# HP hs2330 Mobile Broadband Module
|
||||
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="271d", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# HP hs2320 Mobile Broadband Module
|
||||
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="261d", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# HP hs2340 Mobile Broadband Module
|
||||
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="3a1d", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# HP hs2350 Mobile Broadband Module
|
||||
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="3d1d", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="3d1d", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# HP lc2000 Mobile Broadband Module
|
||||
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="301d", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# HP lc2010 Mobile Broadband Module
|
||||
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="2f1d", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
GOTO="mm_mbm_end"
|
||||
|
||||
LABEL="mm_mbm_toshiba_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# Toshiba
|
||||
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="130b", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="130b", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Toshiba F3607gw
|
||||
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="130c", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="130c", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="1311", ENV{.MM_USBIFNUM}=="09", ENV{ID_MM_ERICSSON_MBM_GPS_PORT}="1"
|
||||
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="1311", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Toshiba F3307
|
||||
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="1315", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="1316", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="1317", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Toshiba F5521gw
|
||||
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="1313", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="1314", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
# Toshiba H5321gw
|
||||
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="1319", ENV{ID_MM_ERICSSON_MBM}="1"
|
||||
|
||||
GOTO="mm_mbm_end"
|
||||
|
||||
LABEL="mm_mbm_end"
|
||||
@@ -0,0 +1,13 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_haier_port_types_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="201e", GOTO="mm_haier_port_types"
|
||||
GOTO="mm_haier_port_types_end"
|
||||
|
||||
LABEL="mm_haier_port_types"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# Haier CE81B
|
||||
ATTRS{idVendor}=="201e", ATTRS{idProduct}=="10f8", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_HAIER_PORT_TYPE_MODEM}="1"
|
||||
|
||||
LABEL="mm_haier_port_types_end"
|
||||
@@ -0,0 +1,29 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
ACTION!="add|change|move|bind", GOTO="mm_huawei_port_types_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="12d1", GOTO="mm_huawei_port_types"
|
||||
GOTO="mm_huawei_port_types_end"
|
||||
|
||||
LABEL="mm_huawei_port_types"
|
||||
|
||||
# MU609 does not support getportmode (crashes modem with default firmware)
|
||||
ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="1573", ENV{ID_MM_HUAWEI_DISABLE_GETPORTMODE}="1"
|
||||
|
||||
# Mark the modem and at port flags for ModemManager
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceClass}=="ff", ATTRS{bInterfaceSubClass}=="01", ATTRS{bInterfaceProtocol}=="01", ENV{ID_MM_HUAWEI_MODEM_PORT}="1"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceClass}=="ff", ATTRS{bInterfaceSubClass}=="01", ATTRS{bInterfaceProtocol}=="02", ENV{ID_MM_HUAWEI_AT_PORT}="1"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceClass}=="ff", ATTRS{bInterfaceSubClass}=="02", ATTRS{bInterfaceProtocol}=="01", ENV{ID_MM_HUAWEI_MODEM_PORT}="1"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceClass}=="ff", ATTRS{bInterfaceSubClass}=="02", ATTRS{bInterfaceProtocol}=="02", ENV{ID_MM_HUAWEI_AT_PORT}="1"
|
||||
|
||||
# GPS NMEA port on MU609
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceClass}=="ff", ATTRS{bInterfaceSubClass}=="01", ATTRS{bInterfaceProtocol}=="05", ENV{ID_MM_HUAWEI_GPS_PORT}="1"
|
||||
# GPS NMEA port on MU909
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceClass}=="ff", ATTRS{bInterfaceSubClass}=="01", ATTRS{bInterfaceProtocol}=="14", ENV{ID_MM_HUAWEI_GPS_PORT}="1"
|
||||
|
||||
# Only the standard ECM or NCM port can support dial-up with AT NDISDUP through AT port
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceClass}=="02", ATTRS{bInterfaceSubClass}=="06",ATTRS{bInterfaceProtocol}=="00", ENV{ID_MM_HUAWEI_NDISDUP_SUPPORTED}="1"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceClass}=="02", ATTRS{bInterfaceSubClass}=="0d",ATTRS{bInterfaceProtocol}=="00", ENV{ID_MM_HUAWEI_NDISDUP_SUPPORTED}="1"
|
||||
|
||||
# Airtel branded E3372h-607, using huawei-cdc-ncm driver but with unresponsive cdc-wdm port
|
||||
ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="1506", ENV{ID_MM_HUAWEI_NDISDUP_SUPPORTED}="1"
|
||||
|
||||
LABEL="mm_huawei_port_types_end"
|
||||
@@ -0,0 +1,173 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
# Longcheer makes modules that other companies rebrand, like:
|
||||
#
|
||||
# Alcatel One Touch X020
|
||||
# Alcatel One Touch X030
|
||||
# MobiData MBD-200HU
|
||||
# ST Mobile Connect HSUPA USB Modem
|
||||
#
|
||||
# Most of these values were scraped from various Longcheer-based Windows
|
||||
# driver .inf files. cmmdm.inf lists the actual data (ie PPP) ports, while
|
||||
# cmser.inf lists the aux ports that may be either AT-capable or not but
|
||||
# cannot be used for PPP.
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_longcheer_port_types_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1c9e", GOTO="mm_longcheer_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1bbb", GOTO="mm_tamobile_vendorcheck"
|
||||
GOTO="mm_longcheer_port_types_end"
|
||||
|
||||
LABEL="mm_longcheer_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="3197", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="3197", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="3197", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6000", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6000", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6000", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6060", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6060", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6060", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
# Alcatel One Touch X020
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6061", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6061", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="6061", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7001", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7001", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7001", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7001", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7002", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7101", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7101", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7101", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7101", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ENV{.MM_USBIFNUM}=="06", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="7102", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8000", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8000", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8000", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8000", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8001", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8001", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8001", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8001", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8002", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8002", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8002", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="8002", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
# ChinaBird PL68
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9000", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9000", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9000", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9001", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9001", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9001", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9001", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9002", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9002", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9002", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9002", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9003", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9004", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9004", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9004", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9005", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9005", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9005", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9010", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9010", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9010", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9010", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9012", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9012", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9012", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9012", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9020", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9020", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9020", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9020", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9022", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9022", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9022", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9022", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
# Zoom products
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9602", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9602", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9602", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9602", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9603", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9603", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9603", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9603", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9604", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9604", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9604", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9604", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9605", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9606", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1c9e", ATTRS{idProduct}=="9607", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
GOTO="mm_longcheer_port_types_end"
|
||||
|
||||
LABEL="mm_tamobile_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# Alcatel One Touch X060s
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_LONGCHEER_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_LONGCHEER_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{ID_MM_LONGCHEER_TAGGED}="1"
|
||||
|
||||
GOTO="mm_longcheer_port_types_end"
|
||||
|
||||
LABEL="mm_longcheer_port_types_end"
|
||||
@@ -0,0 +1,53 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_mtk_port_types_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0e8d", GOTO="mm_mtk_port_types_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2001", GOTO="mm_dlink_port_types_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="07d1", GOTO="mm_dlink_port_types_vendorcheck"
|
||||
GOTO="mm_mtk_port_types_end"
|
||||
|
||||
# MediaTek devices ---------------------------
|
||||
|
||||
LABEL="mm_mtk_port_types_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a1", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_MTK_MODEM_PORT}="1"
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a1", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_MTK_AT_PORT}="1"
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a1", ENV{ID_MM_MTK_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a2", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_MTK_MODEM_PORT}="1"
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a2", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_MTK_AT_PORT}="1"
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a2", ENV{ID_MM_MTK_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a4", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_MTK_MODEM_PORT}="1"
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a4", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_MTK_AT_PORT}="1"
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a4", ENV{ID_MM_MTK_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a5", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_MTK_MODEM_PORT}="1"
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a5", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_MTK_AT_PORT}="1"
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a5", ENV{ID_MM_MTK_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a7", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_MTK_MODEM_PORT}="1"
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a7", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_MTK_AT_PORT}="1"
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="00a7", ENV{ID_MM_MTK_TAGGED}="1"
|
||||
|
||||
GOTO="mm_mtk_port_types_end"
|
||||
|
||||
# D-Link devices ---------------------------
|
||||
|
||||
LABEL="mm_dlink_port_types_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# D-Link DWM-156 A3
|
||||
ATTRS{idVendor}=="07d1", ATTRS{idProduct}=="7e11", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_MTK_MODEM_PORT}="1"
|
||||
ATTRS{idVendor}=="07d1", ATTRS{idProduct}=="7e11", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_MTK_AT_PORT}="1"
|
||||
ATTRS{idVendor}=="07d1", ATTRS{idProduct}=="7e11", ENV{ID_MM_MTK_TAGGED}="1"
|
||||
|
||||
# D-Link DWM-156 A5 (and later?)
|
||||
ATTRS{idVendor}=="2001", ATTRS{idProduct}=="7d00", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_MTK_MODEM_PORT}="1"
|
||||
ATTRS{idVendor}=="2001", ATTRS{idProduct}=="7d00", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_MTK_AT_PORT}="1"
|
||||
ATTRS{idVendor}=="2001", ATTRS{idProduct}=="7d00", ENV{ID_MM_MTK_TAGGED}="1"
|
||||
|
||||
GOTO="mm_mtk_port_types_end"
|
||||
|
||||
LABEL="mm_mtk_port_types_end"
|
||||
@@ -0,0 +1,38 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_nokia_port_types_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0421", GOTO="mm_nokia_port_types"
|
||||
GOTO="mm_nokia_port_types_end"
|
||||
|
||||
LABEL="mm_nokia_port_types"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# For Nokia Internet Sticks (CS-xx) the modem/PPP port appears to always be USB interface 1
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="060D", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0611", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="061A", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="061B", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="061F", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0619", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0620", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0623", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0624", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="0625", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="062A", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="062E", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
ATTRS{idVendor}=="0421", ATTRS{idProduct}=="062F", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_NOKIA_PORT_TYPE_MODEM}="1"
|
||||
|
||||
LABEL="mm_nokia_port_types_end"
|
||||
@@ -0,0 +1,9 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_pcmcia_device_blacklist_end"
|
||||
SUBSYSTEM!="pcmcia", GOTO="mm_pcmcia_device_blacklist_end"
|
||||
|
||||
# Gemplus Serial Port smartcard adapter
|
||||
ATTRS{prod_id1}=="Gemplus", ATTRS{prod_id2}=="SerialPort", ATTRS{prod_id3}=="GemPC Card", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
LABEL="mm_pcmcia_device_blacklist_end"
|
||||
@@ -0,0 +1,12 @@
|
||||
|
||||
# do not edit this file, it will be overwritten on update
|
||||
ACTION!="add|change|move|bind", GOTO="mm_sierra_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1199", GOTO="mm_sierra"
|
||||
GOTO="mm_sierra_end"
|
||||
|
||||
LABEL="mm_sierra"
|
||||
|
||||
# Netgear AC341U: enable connection status polling explicitly
|
||||
ATTRS{idVendor}=="1199", ATTRS{idProduct}=="9057", ENV{ID_MM_QMI_CONNECTION_STATUS_POLLING_ENABLE}="1"
|
||||
|
||||
LABEL="mm_sierra_end"
|
||||
@@ -0,0 +1,36 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
# Simtech makes modules that other companies rebrand, like:
|
||||
#
|
||||
# A-LINK 3GU
|
||||
# SCT UM300
|
||||
#
|
||||
# Most of these values were scraped from various SimTech-based Windows
|
||||
# driver .inf files. *mdm.inf lists the main command ports, while
|
||||
# *ser.inf lists the aux ports that may be used for PPP.
|
||||
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_simtech_port_types_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1e0e", GOTO="mm_simtech_port_types"
|
||||
GOTO="mm_simtech_port_types_end"
|
||||
|
||||
LABEL="mm_simtech_port_types"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# A-LINK 3GU
|
||||
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="cefe", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_SIMTECH_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="cefe", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="cefe", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="cefe", ENV{ID_MM_SIMTECH_TAGGED}="1"
|
||||
|
||||
# Prolink PH-300
|
||||
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9100", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_SIMTECH_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9100", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9100", ENV{ID_MM_SIMTECH_TAGGED}="1"
|
||||
|
||||
# SCT UM300
|
||||
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9200", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_SIMTECH_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9200", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_SIMTECH_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9200", ENV{ID_MM_SIMTECH_TAGGED}="1"
|
||||
|
||||
LABEL="mm_simtech_port_types_end"
|
||||
@@ -0,0 +1,36 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_telit_port_types_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1bc7", GOTO="mm_telit_port_types"
|
||||
GOTO="mm_telit_port_types_end"
|
||||
|
||||
LABEL="mm_telit_port_types"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# UC864-E, UC864-E-AUTO, UC864-K, UC864-WD, UC864-WDU
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1003", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1003", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
|
||||
|
||||
# UC864-G
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1004", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1004", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_TELIT_PORT_TYPE_NMEA}="1"
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1004", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
|
||||
|
||||
# CC864-DUAL
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1005", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1005", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_TELIT_PORT_TYPE_NMEA}="1"
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1005", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
|
||||
|
||||
# CC864-SINGLE, CC864-KPS
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1006", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1006", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
|
||||
|
||||
# DE910-DUAL
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_TELIT_PORT_TYPE_NMEA}="1"
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_TELIT_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
|
||||
|
||||
# CE910-DUAL
|
||||
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1011", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_TELIT_PORT_TYPE_MODEM}="1"
|
||||
|
||||
LABEL="mm_telit_port_types_end"
|
||||
@@ -0,0 +1,62 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
ACTION!="add|change|move|bind", GOTO="mm_ublox_port_types_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1546", GOTO="mm_ublox_port_types"
|
||||
GOTO="mm_ublox_port_types_end"
|
||||
|
||||
LABEL="mm_ublox_port_types"
|
||||
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# Toby-L4 port types
|
||||
# ttyACM0 (if #2): secondary (ignore)
|
||||
# ttyACM1 (if #4): debug port (ignore)
|
||||
# ttyACM2 (if #6): primary
|
||||
# Wait up to 20s for the +READY URC
|
||||
# ttyACM3 (if #8): AT port for FOTA (ignore)
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="06", ENV{ID_MM_UBLOX_PORT_READY_DELAY}="20"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="08", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
|
||||
# TOBY-L200
|
||||
# Wait up to 20s before probing AT ports
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1141", ENV{ID_MM_UBLOX_PORT_READY_DELAY}="20"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1143", ENV{ID_MM_UBLOX_PORT_READY_DELAY}="20"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1146", ENV{ID_MM_UBLOX_PORT_READY_DELAY}="20"
|
||||
|
||||
# TOBY-R2 port types
|
||||
# ttyACM0 (if #0): primary
|
||||
# ttyACM1 (if #2): secondary
|
||||
# ttyACM2 (if #4): tertiary
|
||||
# ttyACM3 (if #6): GNSS Tunneling (ignore)
|
||||
# ttyACM4 (if #8): SIM Access Profile (ignore)
|
||||
# ttyACM5 (if #10): Primary Log for diagnostics (ignore)
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1107", ENV{.MM_USBIFNUM}=="06", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1107", ENV{.MM_USBIFNUM}=="08", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1107", ENV{.MM_USBIFNUM}=="0a", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
|
||||
# LARA-R2 port types
|
||||
# ttyACM0 (if #0): primary
|
||||
# ttyACM1 (if #2): secondary
|
||||
# ttyACM2 (if #4): tertiary
|
||||
# ttyACM3 (if #6): GNSS Tunneling (ignore)
|
||||
# ttyACM4 (if #8): SIM Access Profile (ignore)
|
||||
# ttyACM5 (if #10): Primary Log for diagnostics (ignore)
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="110a", ENV{.MM_USBIFNUM}=="06", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="110a", ENV{.MM_USBIFNUM}=="08", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="110a", ENV{.MM_USBIFNUM}=="0a", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
|
||||
# LISA-U2 port types
|
||||
# ttyACM0 (if #0): primary
|
||||
# ttyACM1 (if #2): secondary
|
||||
# ttyACM2 (if #4): tertiary
|
||||
# ttyACM3 (if #6): GNSS Tunneling (ignore)
|
||||
# ttyACM4 (if #8): Primary Log for diagnostics (ignore)
|
||||
# ttyACM5 (if #10): Secondary Log for diagnostics (ignore)
|
||||
# ttyACM6 (if #12): SAP (SIM Access Profile) (ignore)
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1102", ENV{.MM_USBIFNUM}=="06", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1102", ENV{.MM_USBIFNUM}=="08", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1102", ENV{.MM_USBIFNUM}=="0a", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="1102", ENV{.MM_USBIFNUM}=="0c", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
|
||||
LABEL="mm_ublox_port_types_end"
|
||||
@@ -0,0 +1,208 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_usb_device_blacklist_end"
|
||||
SUBSYSTEM!="usb", GOTO="mm_usb_device_blacklist_end"
|
||||
|
||||
# APC UPS devices
|
||||
ATTRS{idVendor}=="051d", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Sweex 1000VA
|
||||
ATTRS{idVendor}=="0925", ATTRS{idProduct}=="1234", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Agiler UPS
|
||||
ATTRS{idVendor}=="05b8", ATTRS{idProduct}=="0000", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Krauler UP-M500VA
|
||||
ATTRS{idVendor}=="0001", ATTRS{idProduct}=="0000", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Ablerex 625L USB
|
||||
ATTRS{idVendor}=="ffff", ATTRS{idProduct}=="0000", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Belkin F6C1200-UNV
|
||||
ATTRS{idVendor}=="0665", ATTRS{idProduct}=="5161", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Various Liebert and Phoenixtec Power devices
|
||||
ATTRS{idVendor}=="06da", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Unitek Alpha 1200Sx
|
||||
ATTRS{idVendor}=="0f03", ATTRS{idProduct}=="0001", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Various Tripplite devices
|
||||
ATTRS{idVendor}=="09ae", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Various MGE Office Protection Systems devices
|
||||
ATTRS{idVendor}=="0463", ATTRS{idProduct}=="0001", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="0463", ATTRS{idProduct}=="ffff", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# CyberPower 900AVR/BC900D
|
||||
ATTRS{idVendor}=="0764", ATTRS{idProduct}=="0005", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
# CyberPower CP1200AVR/BC1200D
|
||||
ATTRS{idVendor}=="0764", ATTRS{idProduct}=="0501", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Various Belkin devices
|
||||
ATTRS{idVendor}=="050d", ATTRS{idProduct}=="0980", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="050d", ATTRS{idProduct}=="0900", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="050d", ATTRS{idProduct}=="0910", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="050d", ATTRS{idProduct}=="0912", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="050d", ATTRS{idProduct}=="0551", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="050d", ATTRS{idProduct}=="0751", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="050d", ATTRS{idProduct}=="0375", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="050d", ATTRS{idProduct}=="1100", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# HP R/T 2200 INTL (like SMART2200RMXL2U)
|
||||
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="1f0a", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Powerware devices
|
||||
ATTRS{idVendor}=="0592", ATTRS{idProduct}=="0002", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Palm Treo 700/900/etc
|
||||
# Shouldn't be probed themselves, but you can install programs like
|
||||
# "MobileStream USB Modem" which changes the USB PID of the device to something
|
||||
# that isn't blacklisted.
|
||||
ATTRS{idVendor}=="0830", ATTRS{idProduct}=="0061", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# GlobalScaleTechnologies SheevaPlug
|
||||
ATTRS{idVendor}=="9e88", ATTRS{idProduct}=="9e8f", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Atmel Corp at91sam SAMBA bootloader
|
||||
ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="6124", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# All devices from the Swiss Federal Institute of Technology
|
||||
ATTRS{idVendor}=="0617", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# West Mountain Radio devices
|
||||
ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="814a", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="814b", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="2405", ATTRS{idProduct}=="0003", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Arduinos
|
||||
ATTRS{idVendor}=="2341", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9207", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9208", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Adafruit Flora
|
||||
ATTRS{idVendor}=="239a", ATTRS{idProduct}=="0004", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="239a", ATTRS{idProduct}=="8004", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# All devices from Pololu Corporation
|
||||
# except some possible future products.
|
||||
ATTRS{idVendor}=="1ffb", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1ffb", ATTRS{idProduct}=="00ad", ENV{ID_MM_DEVICE_IGNORE}="0"
|
||||
ATTRS{idVendor}=="1ffb", ATTRS{idProduct}=="00ae", ENV{ID_MM_DEVICE_IGNORE}="0"
|
||||
|
||||
# Altair U-Boot device
|
||||
ATTRS{idVendor}=="0216", ATTRS{idProduct}=="0051", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Bluegiga BLE112B
|
||||
ATTRS{idVendor}=="2458", ATTRS{idProduct}=="0001", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# MediaTek GPS chip (HOLUX M-1200E, GlobalTop Gms-d1, etc)
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="3329", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# MediaTek MT65xx preloader
|
||||
ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="2000", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# PS-360 OEM (GPS sold with MS Street and Trips 2005)
|
||||
ATTRS{idVendor}=="067b", ATTRS{idProduct}=="aaa0", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# u-blox AG, u-blox 5 GPS chips
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="01a5", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="01a6", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="01a7", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Garmin GPS devices
|
||||
DRIVERS=="garmin_gps", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Garmin ANT+ stick
|
||||
ATTRS{idVendor}=="0fcf", ATTRS{idProduct}=="1009", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Cypress M8-based GPS devices, UPSes, and serial converters
|
||||
DRIVERS=="cypress_m8", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# All devices in the Openmoko vendor ID
|
||||
ATTRS{idVendor}=="1d50", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# All devices from 3D Robotics
|
||||
ATTRS{idVendor}=="26ac", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# empiriKit science lab controller device
|
||||
ATTRS{idVendor}=="0425", ATTRS{idProduct}=="0408", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Infineon Flashloader used by Intel XMM modem bootloader
|
||||
ATTRS{idVendor}=="8087", ATTRS{idProduct}=="0716", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="8087", ATTRS{idProduct}=="0801", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Intel coredump downloader device
|
||||
ATTRS{idVendor}=="1519", ATTRS{idProduct}=="f000", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# GW Instek AFG-2225 arbitrary function generator
|
||||
ATTRS{idVendor}=="2184", ATTRS{idProduct}=="001c", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# PalmOS devices - even though some are phones, they are so old they most
|
||||
# likely are not being used anymore
|
||||
DRIVERS=="visor", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Palmconnect
|
||||
ATTRS{idVendor}=="0830", ATTRS{idProduct}=="0080", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# IMC flashing device
|
||||
ATTRS{idVendor}=="058b", ATTRS{idProduct}=="0041", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# All devices from the Access Interfacing Solutions (Access Ltd)
|
||||
# Access IS do not produce modems and are unlikely to do so in future
|
||||
ATTRS{idVendor}=="0db5", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Palm M500
|
||||
ATTRS{idVendor}=="0830", ATTRS{idProduct}=="0001", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Palm M505
|
||||
ATTRS{idVendor}=="0830", ATTRS{idProduct}=="0002", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Palm M515
|
||||
ATTRS{idVendor}=="0830", ATTRS{idProduct}=="0003", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# All devices from POSNET POLSKA S.A.
|
||||
# POSNET POLSKA S.A. do not produce modems and are unlikely to do so in future
|
||||
ATTRS{idVendor}=="1424", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# proxmark3
|
||||
ATTRS{manufacturer}=="proxmark.org", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Sigma Sport Docking Station TOPLINE 2009
|
||||
ATTRS{idVendor}=="1d9d", ATTRS{idProduct}=="1010", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
# Sigma Sport Docking Station TOPLINE 2012
|
||||
ATTRS{idVendor}=="1d9d", ATTRS{idProduct}=="1011", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Telit LE866 flashing device
|
||||
ATTRS{idVendor}=="216f", ATTRS{idProduct}=="0051", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Analog Devices ADALM-PLUTO (PlutoSDR)
|
||||
ATTRS{idVendor}=="0456", ATTRS{idProduct}=="b673", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Renesas development and promotion boards
|
||||
ATTRS{idVendor}=="045B", ATTRS{idProduct}=="0212", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="0409", ATTRS{idProduct}=="0063", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Analog Devices EVAL-ADXL362Z-DB
|
||||
ATTRS{idVendor}=="064B", ATTRS{idProduct}=="7825", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# keyboard.io devices
|
||||
ATTRS{idVendor}=="1209", ATTRS{idProduct}=="2300", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
ATTRS{idVendor}=="1209", ATTRS{idProduct}=="2301", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Netchip Technology, Inc. Linux-USB Serial Gadget (CDC ACM mode)
|
||||
ATTRS{idVendor}=="0525", ATTRS{idProduct}=="a4a7", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Silicon Labs Telegesis ETRX USB Zigbee dongle
|
||||
ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="000f", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
# Devices using Microchip's VID
|
||||
# Dangerous Prototypes Bus Pirate v4
|
||||
ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="fb00", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
# Pycom Pysense
|
||||
ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="f012", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
# Pycom Pytrack
|
||||
ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="f013", ENV{ID_MM_DEVICE_IGNORE}="1"
|
||||
|
||||
LABEL="mm_usb_device_blacklist_end"
|
||||
@@ -0,0 +1,50 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_usb_serial_adapters_greylist_end"
|
||||
SUBSYSTEM!="usb", GOTO="mm_usb_serial_adapters_greylist_end"
|
||||
|
||||
# Belkin F5U183 Serial Adapter
|
||||
ATTRS{idVendor}=="050d", ATTRS{idProduct}=="0103", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
|
||||
# FTDI-based serial adapters
|
||||
# FTDI does USB to serial converter ICs; and it's very likely that they'll
|
||||
# never do modems themselves, so it should be safe to add a rule only based
|
||||
# on the vendor Id.
|
||||
ATTRS{idVendor}=="0403", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
|
||||
# Devices using Microchip's VID
|
||||
ATTRS{idVendor}=="04d8", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
|
||||
# ATEN Intl UC-232A (Prolific)
|
||||
ATTRS{idVendor}=="0557", ATTRS{idProduct}=="2008", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
|
||||
# Prolific USB to Serial adapter
|
||||
ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
|
||||
# Magic Control Technology Corp adapters
|
||||
ATTRS{idVendor}=="0711", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
|
||||
# Cygnal Integrated Products, Inc. CP210x
|
||||
ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea71", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
|
||||
# QinHeng Electronics HL-340
|
||||
ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
|
||||
# Atmel Corp. LUFA USB to Serial Adapter Project (Arduino)
|
||||
ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="204b", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
|
||||
# Netchip Technology, Inc. Linux-USB Serial Gadget (CDC ACM mode)
|
||||
ATTRS{idVendor}=="0525", ATTRS{idProduct}=="a4a7", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
|
||||
# Cypress Serial-USB devices
|
||||
ATTRS{idVendor}=="04B4", ATTRS{idProduct}=="0002", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
ATTRS{idVendor}=="04B4", ATTRS{idProduct}=="0003", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
ATTRS{idVendor}=="04B4", ATTRS{idProduct}=="0004", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
ATTRS{idVendor}=="04B4", ATTRS{idProduct}=="0005", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
ATTRS{idVendor}=="04B4", ATTRS{idProduct}=="0006", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
ATTRS{idVendor}=="04B4", ATTRS{idProduct}=="0007", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
ATTRS{idVendor}=="04B4", ATTRS{idProduct}=="0009", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
ATTRS{idVendor}=="04B4", ATTRS{idProduct}=="000A", ENV{ID_MM_DEVICE_MANUAL_SCAN_ONLY}="1"
|
||||
|
||||
LABEL="mm_usb_serial_adapters_greylist_end"
|
||||
@@ -0,0 +1,61 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
# Alcatel One Touch X220D
|
||||
# Alcatel One Touch X200
|
||||
#
|
||||
# These values were scraped from the X220D's Windows .inf files. jrdmdm.inf
|
||||
# lists the actual command and data (ie PPP) ports, while jrdser.inf lists the
|
||||
# aux ports that may be either AT-capable or not but cannot be used for PPP.
|
||||
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_x22x_port_types_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1bbb", GOTO="mm_x22x_generic_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0b3c", GOTO="mm_x22x_olivetti_vendorcheck"
|
||||
GOTO="mm_x22x_port_types_end"
|
||||
|
||||
# Generic JRD devices ---------------------------
|
||||
|
||||
LABEL="mm_x22x_generic_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# Alcatel X200
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0000", ENV{ID_MM_X22X_TAGGED}="1"
|
||||
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", ENV{ID_MM_X22X_TAGGED}="1"
|
||||
|
||||
# Archos G9
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_X22X_PORT_TYPE_NMEA}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_X22X_PORT_TYPE_VOICE}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="00B7", ENV{ID_MM_X22X_TAGGED}="1"
|
||||
|
||||
GOTO="mm_x22x_port_types_end"
|
||||
|
||||
# Olivetti devices ---------------------------
|
||||
|
||||
LABEL="mm_x22x_olivetti_vendorcheck"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
# Olicard 200
|
||||
ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_X22X_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{.MM_USBIFNUM}=="06", ENV{ID_MM_X22X_PORT_TYPE_AUX}="1"
|
||||
ATTRS{idVendor}=="0b3c", ATTRS{idProduct}=="c005", ENV{ID_MM_X22X_TAGGED}="1"
|
||||
|
||||
GOTO="mm_x22x_port_types_end"
|
||||
|
||||
LABEL="mm_x22x_port_types_end"
|
||||
@@ -0,0 +1,201 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_zte_port_types_end"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="19d2", GOTO="mm_zte_port_types"
|
||||
GOTO="mm_zte_port_types_end"
|
||||
|
||||
LABEL="mm_zte_port_types"
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}=="?*", ENV{.MM_USBIFNUM}="$attr{bInterfaceNumber}"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0001", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0001", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0002", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0002", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0003", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0003", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0004", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0004", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0005", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0005", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0006", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0006", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0007", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0007", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0008", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0008", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0009", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0009", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="000A", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="000A", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0012", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0012", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0015", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0015", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0016", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0016", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0017", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0018", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0018", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0019", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0019", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0021", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0021", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0024", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0024", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0025", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0025", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0030", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0030", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0031", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0031", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0033", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0033", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0037", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0037", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0039", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0039", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0042", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0042", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0043", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0043", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0048", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0048", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0049", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0049", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0052", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0052", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0054", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0054", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0055", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0055", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0057", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0057", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0058", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0058", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0061", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0061", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0063", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0063", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0064", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0064", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0066", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0066", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0078", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0078", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0082", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0082", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0091", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0091", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0104", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0104", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0106", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0106", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0108", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0108", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0113", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0113", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0117", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0117", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0118", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0118", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0121", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0121", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0122", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0122", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0123", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0123", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0124", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0124", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0125", ENV{.MM_USBIFNUM}=="05", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0125", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0126", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0126", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0128", ENV{.MM_USBIFNUM}=="04", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0128", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0156", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0156", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1007", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1007", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1008", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1008", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1010", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1254", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1254", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1515", ENV{.MM_USBIFNUM}=="00", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1515", ENV{.MM_USBIFNUM}=="02", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2002", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2002", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2003", ENV{.MM_USBIFNUM}=="03", ENV{ID_MM_ZTE_PORT_TYPE_MODEM}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2003", ENV{.MM_USBIFNUM}=="01", ENV{ID_MM_ZTE_PORT_TYPE_AUX}="1"
|
||||
|
||||
# Icera-based devices that use DHCP, not AT%IPDPADDR
|
||||
ATTRS{product}=="K3805-z", ENV{ID_MM_ZTE_ICERA_DHCP}="1"
|
||||
|
||||
# MF60 exposes QMI, but it is unusable, fallback to AT+PPP
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1402", SUBSYSTEM=="usb", KERNEL=="cdc-wdm*", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1402", SUBSYSTEM=="usbmisc", KERNEL=="cdc-wdm*", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="1402", SUBSYSTEM=="net", ENV{ID_MM_PORT_IGNORE}="1"
|
||||
|
||||
LABEL="mm_zte_port_types_end"
|
||||
@@ -0,0 +1,96 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
SUBSYSTEM!="sound", GOTO="sound_end"
|
||||
|
||||
ACTION=="add|change", KERNEL=="controlC*", ATTR{../uevent}="change"
|
||||
ACTION!="change", GOTO="sound_end"
|
||||
|
||||
# Ok, we probably need a little explanation here for what the two lines above
|
||||
# are good for.
|
||||
#
|
||||
# The story goes like this: when ALSA registers a new sound card it emits a
|
||||
# series of 'add' events to userspace, for the main card device and for all the
|
||||
# child device nodes that belong to it. udev relays those to applications,
|
||||
# however only maintains the order between father and child, but not between
|
||||
# the siblings. The control device node creation can be used as synchronization
|
||||
# point. All other devices that belong to a card are created in the kernel
|
||||
# before it. However unfortunately due to the fact that siblings are forwarded
|
||||
# out of order by udev this fact is lost to applications.
|
||||
#
|
||||
# OTOH before an application can open a device it needs to make sure that all
|
||||
# its device nodes are completely created and set up.
|
||||
#
|
||||
# As a workaround for this issue we have added the udev rule above which will
|
||||
# generate a 'change' event on the main card device from the 'add' event of the
|
||||
# card's control device. Due to the ordering semantics of udev this event will
|
||||
# only be relayed after all child devices have finished processing properly.
|
||||
# When an application needs to listen for appearing devices it can hence look
|
||||
# for 'change' events only, and ignore the actual 'add' events.
|
||||
#
|
||||
# When the application is initialized at the same time as a device is plugged
|
||||
# in it may need to figure out if the 'change' event has already been triggered
|
||||
# or not for a card. To find that out we store the flag environment variable
|
||||
# SOUND_INITIALIZED on the device which simply tells us if the card 'change'
|
||||
# event has already been processed.
|
||||
|
||||
KERNEL!="card*", GOTO="sound_end"
|
||||
|
||||
ENV{SOUND_INITIALIZED}="1"
|
||||
|
||||
IMPORT{builtin}="hwdb"
|
||||
SUBSYSTEMS=="usb", IMPORT{builtin}="usb_id"
|
||||
SUBSYSTEMS=="usb", GOTO="skip_pci"
|
||||
|
||||
SUBSYSTEMS=="firewire", ATTRS{guid}=="?*", \
|
||||
ENV{ID_BUS}="firewire", ENV{ID_SERIAL}="$attr{guid}", ENV{ID_SERIAL_SHORT}="$attr{guid}", \
|
||||
ENV{ID_VENDOR_ID}="$attr{vendor}", ENV{ID_MODEL_ID}="$attr{model}", \
|
||||
ENV{ID_VENDOR}="$attr{vendor_name}", ENV{ID_MODEL}="$attr{model_name}"
|
||||
SUBSYSTEMS=="firewire", GOTO="skip_pci"
|
||||
|
||||
SUBSYSTEMS=="pci", ENV{ID_BUS}="pci", ENV{ID_VENDOR_ID}="$attr{vendor}", ENV{ID_MODEL_ID}="$attr{device}"
|
||||
SUBSYSTEMS=="pci", GOTO="skip_pci"
|
||||
|
||||
# If we reach here, the device nor any of its parents are USB/PCI/firewire bus devices.
|
||||
# If we now find a parent that is a platform device, assume that we're working with
|
||||
# an internal sound card.
|
||||
SUBSYSTEMS=="platform", ENV{SOUND_FORM_FACTOR}="internal", GOTO="sound_end"
|
||||
|
||||
LABEL="skip_pci"
|
||||
|
||||
# Define ID_ID if ID_BUS and ID_SERIAL are set. This will work for both
|
||||
# USB and firewire.
|
||||
ENV{ID_SERIAL}=="?*", ENV{ID_USB_INTERFACE_NUM}=="?*", ENV{ID_ID}="$env{ID_BUS}-$env{ID_SERIAL}-$env{ID_USB_INTERFACE_NUM}"
|
||||
ENV{ID_SERIAL}=="?*", ENV{ID_USB_INTERFACE_NUM}=="", ENV{ID_ID}="$env{ID_BUS}-$env{ID_SERIAL}"
|
||||
|
||||
IMPORT{builtin}="path_id"
|
||||
|
||||
# The values used here for $SOUND_FORM_FACTOR and $SOUND_CLASS should be kept
|
||||
# in sync with those defined for PulseAudio's src/pulse/proplist.h
|
||||
# PA_PROP_DEVICE_FORM_FACTOR, PA_PROP_DEVICE_CLASS properties.
|
||||
|
||||
# If the first PCM device of this card has the pcm class 'modem', then the card is a modem
|
||||
ATTR{pcmC%nD0p/pcm_class}=="modem", ENV{SOUND_CLASS}="modem", GOTO="sound_end"
|
||||
|
||||
# Identify cards on the internal PCI bus as internal
|
||||
SUBSYSTEMS=="pci", DEVPATH=="*/0000:00:??.?/sound/*", ENV{SOUND_FORM_FACTOR}="internal", GOTO="sound_end"
|
||||
|
||||
# Devices that also support Image/Video interfaces are most likely webcams
|
||||
SUBSYSTEMS=="usb", ENV{ID_USB_INTERFACES}=="*:0e????:*", ENV{SOUND_FORM_FACTOR}="webcam", GOTO="sound_end"
|
||||
|
||||
# Matching on the model strings is a bit ugly, I admit
|
||||
ENV{ID_MODEL}=="*[Ss]peaker*", ENV{SOUND_FORM_FACTOR}="speaker", GOTO="sound_end"
|
||||
ENV{ID_MODEL_FROM_DATABASE}=="*[Ss]peaker*", ENV{SOUND_FORM_FACTOR}="speaker", GOTO="sound_end"
|
||||
|
||||
ENV{ID_MODEL}=="*[Hh]eadphone*", ENV{SOUND_FORM_FACTOR}="headphone", GOTO="sound_end"
|
||||
ENV{ID_MODEL_FROM_DATABASE}=="*[Hh]eadphone*", ENV{SOUND_FORM_FACTOR}="headphone", GOTO="sound_end"
|
||||
|
||||
ENV{ID_MODEL}=="*[Hh]eadset*", ENV{SOUND_FORM_FACTOR}="headset", GOTO="sound_end"
|
||||
ENV{ID_MODEL_FROM_DATABASE}=="*[Hh]eadset*", ENV{SOUND_FORM_FACTOR}="headset", GOTO="sound_end"
|
||||
|
||||
ENV{ID_MODEL}=="*[Hh]andset*", ENV{SOUND_FORM_FACTOR}="handset", GOTO="sound_end"
|
||||
ENV{ID_MODEL_FROM_DATABASE}=="*[Hh]andset*", ENV{SOUND_FORM_FACTOR}="handset", GOTO="sound_end"
|
||||
|
||||
ENV{ID_MODEL}=="*[Mm]icrophone*", ENV{SOUND_FORM_FACTOR}="microphone", GOTO="sound_end"
|
||||
ENV{ID_MODEL_FROM_DATABASE}=="*[Mm]icrophone*", ENV{SOUND_FORM_FACTOR}="microphone", GOTO="sound_end"
|
||||
|
||||
LABEL="sound_end"
|
||||
@@ -0,0 +1,13 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
ACTION!="add", GOTO="drivers_end"
|
||||
|
||||
ENV{MODALIAS}=="?*", RUN{builtin}+="kmod load $env{MODALIAS}"
|
||||
SUBSYSTEM=="tifm", ENV{TIFM_CARD_TYPE}=="SD", RUN{builtin}+="kmod load tifm_sd"
|
||||
SUBSYSTEM=="tifm", ENV{TIFM_CARD_TYPE}=="MS", RUN{builtin}+="kmod load tifm_ms"
|
||||
SUBSYSTEM=="memstick", RUN{builtin}+="kmod load ms_block mspro_block"
|
||||
SUBSYSTEM=="i2o", RUN{builtin}+="kmod load i2o_block"
|
||||
SUBSYSTEM=="module", KERNEL=="parport_pc", RUN{builtin}+="kmod load ppdev"
|
||||
KERNEL=="mtd*ro", ENV{MTD_FTL}=="smartmedia", RUN{builtin}+="kmod load sm_ftl"
|
||||
|
||||
LABEL="drivers_end"
|
||||
@@ -0,0 +1 @@
|
||||
KERNEL=="kvm", GROUP="kvm", MODE="0660"
|
||||
@@ -0,0 +1,9 @@
|
||||
ACTION!="add|change", GOTO="libinput_device_group_end"
|
||||
KERNEL!="event[0-9]*", GOTO="libinput_device_group_end"
|
||||
|
||||
ATTRS{phys}=="?*", \
|
||||
ENV{LIBINPUT_DEVICE_GROUP}=="", \
|
||||
PROGRAM="libinput-device-group %S%p", \
|
||||
ENV{LIBINPUT_DEVICE_GROUP}="%c"
|
||||
|
||||
LABEL="libinput_device_group_end"
|
||||
@@ -0,0 +1,21 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
# Tag any devices that MM might be interested in; if ModemManager is started
|
||||
# up right after udev, when MM explicitly requests devices on startup it may
|
||||
# get devices that haven't had all rules run yet. Thus, we tag devices we're
|
||||
# interested in and when handling devices during MM startup we ignore any
|
||||
# that don't have this tag. MM will still get the udev 'add' event for the
|
||||
# device a short while later and then process it as normal.
|
||||
|
||||
ACTION!="add|change|move|bind", GOTO="mm_candidate_end"
|
||||
|
||||
# Opening bound but disconnected Bluetooth RFCOMM ttys would initiate the
|
||||
# connection. Don't do that.
|
||||
KERNEL=="rfcomm*", DEVPATH=="*/virtual/*", GOTO="mm_candidate_end"
|
||||
|
||||
SUBSYSTEM=="tty", ENV{ID_MM_CANDIDATE}="1"
|
||||
SUBSYSTEM=="net", ENV{ID_MM_CANDIDATE}="1"
|
||||
KERNEL=="cdc-wdm*", SUBSYSTEM=="usb", ENV{ID_MM_CANDIDATE}="1"
|
||||
KERNEL=="cdc-wdm*", SUBSYSTEM=="usbmisc", ENV{ID_MM_CANDIDATE}="1"
|
||||
|
||||
LABEL="mm_candidate_end"
|
||||
@@ -0,0 +1,13 @@
|
||||
# do not edit this file, it will be overwritten on update
|
||||
|
||||
SUBSYSTEM!="net", GOTO="net_setup_link_end"
|
||||
|
||||
IMPORT{builtin}="path_id"
|
||||
|
||||
ACTION!="add", GOTO="net_setup_link_end"
|
||||
|
||||
IMPORT{builtin}="net_setup_link"
|
||||
|
||||
NAME=="", ENV{ID_NET_NAME}!="", NAME="$env{ID_NET_NAME}"
|
||||
|
||||
LABEL="net_setup_link_end"
|
||||
@@ -0,0 +1,175 @@
|
||||
# This file contains udev rules for udisks 2.x
|
||||
#
|
||||
# Do not edit this file, it will be overwritten on updates
|
||||
#
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
# Probing
|
||||
# ------------------------------------------------------------------------
|
||||
|
||||
# Skip probing if not a block device or if requested by other rules
|
||||
#
|
||||
SUBSYSTEM!="block", GOTO="udisks_probe_end"
|
||||
ENV{DM_MULTIPATH_DEVICE_PATH}=="?*", GOTO="udisks_probe_end"
|
||||
ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="?*", GOTO="udisks_probe_end"
|
||||
|
||||
# MD-RAID (aka Linux Software RAID) members
|
||||
#
|
||||
# TODO: file bug against mdadm(8) to have --export-prefix option that can be used with e.g. UDISKS_MD_MEMBER
|
||||
#
|
||||
SUBSYSTEM=="block", ENV{ID_FS_USAGE}=="raid", ENV{ID_FS_TYPE}=="linux_raid_member", ENV{UDISKS_MD_MEMBER_LEVEL}=="", IMPORT{program}="/bin/sh -c '/sbin/mdadm --examine --export $tempnode | /bin/sed s/^MD_/UDISKS_MD_MEMBER_/g'"
|
||||
|
||||
SUBSYSTEM=="block", KERNEL=="md*", ENV{DEVTYPE}!="partition", IMPORT{program}="/bin/sh -c '/sbin/mdadm --detail --export $tempnode | /bin/sed s/^MD_/UDISKS_MD_/g'"
|
||||
|
||||
LABEL="udisks_probe_end"
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
# Tag floppy drives since they need special care
|
||||
|
||||
# PC floppy drives
|
||||
#
|
||||
KERNEL=="fd*", ENV{ID_DRIVE_FLOPPY}="1"
|
||||
|
||||
# USB floppy drives
|
||||
#
|
||||
SUBSYSTEMS=="usb", ATTRS{bInterfaceClass}=="08", ATTRS{bInterfaceSubClass}=="04", ENV{ID_DRIVE_FLOPPY}="1"
|
||||
|
||||
# ATA Zip drives
|
||||
#
|
||||
ENV{ID_VENDOR}=="*IOMEGA*", ENV{ID_MODEL}=="*ZIP*", ENV{ID_DRIVE_FLOPPY_ZIP}="1"
|
||||
|
||||
# TODO: figure out if the drive supports SD and SDHC and what the current
|
||||
# kind of media is - right now we just assume SD
|
||||
KERNEL=="mmcblk[0-9]", SUBSYSTEMS=="mmc", ENV{DEVTYPE}=="disk", ENV{ID_DRIVE_FLASH_SD}="1", ENV{ID_DRIVE_MEDIA_FLASH_SD}="1"
|
||||
# ditto for memstick
|
||||
KERNEL=="msblk[0-9]|mspblk[0-9]", SUBSYSTEMS=="memstick", ENV{DEVTYPE}=="disk", ENV{ID_DRIVE_FLASH_MS}="1", ENV{ID_DRIVE_MEDIA_FLASH_MS}="1"
|
||||
|
||||
# TODO: maybe automatically convert udisks1 properties to udisks2 ones?
|
||||
# (e.g. UDISKS_PRESENTATION_HIDE -> UDISKS_IGNORE)
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
# ------------------------------------------------------------------------
|
||||
# ------------------------------------------------------------------------
|
||||
# Whitelist for tagging drives with the property media type.
|
||||
# TODO: figure out where to store this database
|
||||
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="050d", ATTRS{idProduct}=="0248", ENV{ID_INSTANCE}=="0:0", ENV{ID_DRIVE_FLASH_CF}="1"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="050d", ATTRS{idProduct}=="0248", ENV{ID_INSTANCE}=="0:1", ENV{ID_DRIVE_FLASH_MS}="1"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="050d", ATTRS{idProduct}=="0248", ENV{ID_INSTANCE}=="0:2", ENV{ID_DRIVE_FLASH_SM}="1"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="050d", ATTRS{idProduct}=="0248", ENV{ID_INSTANCE}=="0:3", ENV{ID_DRIVE_FLASH_SD}="1"
|
||||
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="05e3", ATTRS{idProduct}=="070e", ENV{ID_INSTANCE}=="0:0", ENV{ID_DRIVE_FLASH_CF}="1"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="05e3", ATTRS{idProduct}=="070e", ENV{ID_INSTANCE}=="0:1", ENV{ID_DRIVE_FLASH_SM}="1"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="05e3", ATTRS{idProduct}=="070e", ENV{ID_INSTANCE}=="0:2", ENV{ID_DRIVE_FLASH_SD}="1"
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="05e3", ATTRS{idProduct}=="070e", ENV{ID_INSTANCE}=="0:3", ENV{ID_DRIVE_FLASH_MS}="1"
|
||||
|
||||
# APPLE SD Card Reader (MacbookPro5,4)
|
||||
#
|
||||
SUBSYSTEMS=="usb", ATTRS{idVendor}=="05ac", ATTRS{idProduct}=="8403", ENV{ID_DRIVE_FLASH_SD}="1"
|
||||
|
||||
# Realtek card readers
|
||||
DRIVERS=="rts_pstor", ENV{ID_DRIVE_FLASH_SD}="1"
|
||||
DRIVERS=="rts5229", ENV{ID_DRIVE_FLASH_SD}="1"
|
||||
|
||||
# Lexar Dual Slot USB 3.0 Reader Professional
|
||||
SUBSYSTEMS=="usb", ENV{ID_VENDOR_ID}=="05dc",ENV{ID_MODEL_ID}=="b049", ENV{ID_INSTANCE}=="0:0", ENV{ID_DRIVE_FLASH_CF}="1"
|
||||
SUBSYSTEMS=="usb", ENV{ID_VENDOR_ID}=="05dc",ENV{ID_MODEL_ID}=="b049", ENV{ID_INSTANCE}=="0:1", ENV{ID_DRIVE_FLASH_SD}="1"
|
||||
|
||||
# Transcend USB 3.0 Multi-Card Reader (TS-RDF8K)
|
||||
SUBSYSTEMS=="usb", ENV{ID_VENDOR_ID}=="8564",ENV{ID_MODEL_ID}=="4000", ENV{ID_INSTANCE}=="0:0", ENV{ID_DRIVE_FLASH_CF}="1"
|
||||
SUBSYSTEMS=="usb", ENV{ID_VENDOR_ID}=="8564",ENV{ID_MODEL_ID}=="4000", ENV{ID_INSTANCE}=="0:1", ENV{ID_DRIVE_FLASH_SD}="1"
|
||||
SUBSYSTEMS=="usb", ENV{ID_VENDOR_ID}=="8564",ENV{ID_MODEL_ID}=="4000", ENV{ID_INSTANCE}=="0:2", ENV{ID_DRIVE_FLASH_MS}="1"
|
||||
|
||||
# Common theme
|
||||
#
|
||||
SUBSYSTEMS=="usb", ENV{ID_MODEL}=="*Reader*SD*", ENV{ID_DRIVE_FLASH_SD}="1"
|
||||
SUBSYSTEMS=="usb", ENV{ID_MODEL}=="*CF_Reader*", ENV{ID_DRIVE_FLASH_CF}="1"
|
||||
SUBSYSTEMS=="usb", ENV{ID_MODEL}=="*SM_Reader*", ENV{ID_DRIVE_FLASH_SM}="1"
|
||||
SUBSYSTEMS=="usb", ENV{ID_MODEL}=="*MS_Reader*", ENV{ID_DRIVE_FLASH_MS}="1"
|
||||
|
||||
# USB stick / thumb drives
|
||||
#
|
||||
SUBSYSTEMS=="usb", ENV{ID_VENDOR}=="*Kingston*", ENV{ID_MODEL}=="*DataTraveler*", ENV{ID_DRIVE_THUMB}="1"
|
||||
SUBSYSTEMS=="usb", ENV{ID_VENDOR}=="*SanDisk*", ENV{ID_MODEL}=="*Cruzer*", ENV{ID_CDROM}!="1", ENV{ID_DRIVE_THUMB}="1"
|
||||
SUBSYSTEMS=="usb", ENV{ID_VENDOR}=="HP", ENV{ID_MODEL}=="*v125w*", ENV{ID_DRIVE_THUMB}="1"
|
||||
SUBSYSTEMS=="usb", ENV{ID_VENDOR_ID}=="13fe", ENV{ID_MODEL}=="*Patriot*", ENV{ID_DRIVE_THUMB}="1"
|
||||
SUBSYSTEMS=="usb", ENV{ID_VENDOR}=="*JetFlash*", ENV{ID_MODEL}=="*Transcend*", ENV{ID_DRIVE_THUMB}="1"
|
||||
|
||||
# SD-Card reader in Chromebook Pixel
|
||||
SUBSYSTEMS=="usb", ENV{ID_VENDOR_ID}=="05e3", ENV{ID_MODEL_ID}=="0727", ENV{ID_DRIVE_FLASH_SD}="1"
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
# ------------------------------------------------------------------------
|
||||
# ------------------------------------------------------------------------
|
||||
# Devices which should not be display in the user interface
|
||||
#
|
||||
# (note that RAID/LVM members are not normally shown in an user
|
||||
# interface so setting UDISKS_IGNORE at first does not seem to achieve
|
||||
# anything. However it helps for RAID/LVM members that are encrypted
|
||||
# using LUKS. See bug #51439.)
|
||||
|
||||
# Apple Bootstrap partitions
|
||||
ENV{ID_PART_ENTRY_SCHEME}=="mac", ENV{ID_PART_ENTRY_TYPE}=="Apple_Bootstrap", ENV{UDISKS_IGNORE}="1"
|
||||
|
||||
# Apple Boot partitions
|
||||
ENV{ID_PART_ENTRY_SCHEME}=="gpt", ENV{ID_PART_ENTRY_TYPE}=="426f6f74-0000-11aa-aa11-00306543ecac", ENV{UDISKS_IGNORE}="1"
|
||||
|
||||
# special DOS partition types (EFI, hidden, etc.) and RAID/LVM
|
||||
# see http://www.win.tue.nl/~aeb/partitions/partition_types-1.html
|
||||
ENV{ID_PART_ENTRY_SCHEME}=="dos", \
|
||||
ENV{ID_PART_ENTRY_TYPE}=="0x0|0x11|0x12|0x14|0x16|0x17|0x1b|0x1c|0x1e|0x27|0x3d|0x84|0x8d|0x8e|0x90|0x91|0x92|0x93|0x97|0x98|0x9a|0x9b|0xbb|0xc2|0xc3|0xdd|0xef|0xfd", \
|
||||
ENV{UDISKS_IGNORE}="1"
|
||||
|
||||
# special GUID-identified partition types (EFI System Partition, BIOS Boot partition, RAID/LVM)
|
||||
# see http://en.wikipedia.org/wiki/GUID_Partition_Table#Partition_type_GUIDs
|
||||
ENV{ID_PART_ENTRY_SCHEME}=="gpt", \
|
||||
ENV{ID_PART_ENTRY_TYPE}=="c12a7328-f81f-11d2-ba4b-00a0c93ec93b|21686148-6449-6e6f-744e-656564454649|a19d880f-05fc-4d3b-a006-743f0f84911e|e6d6d379-f507-44c2-a23c-238f2a3df928|e3c9e316-0b5c-4db8-817d-f92df00215ae|de94bba4-06d1-4d40-a16a-bfd50179d6ac", \
|
||||
ENV{UDISKS_IGNORE}="1"
|
||||
|
||||
# ZFS member partitions
|
||||
ENV{ID_PART_ENTRY_SCHEME}=="gpt", \
|
||||
ENV{ID_FS_TYPE}=="zfs_member", ENV{ID_PART_ENTRY_TYPE}=="6a898cc3-1dd2-11b2-99a6-080020736631", \
|
||||
ENV{UDISKS_IGNORE}="1"
|
||||
|
||||
# MAC recovery/tool partitions/devices which are useless on Linux
|
||||
ENV{ID_PART_ENTRY_SCHEME}=="mac", \
|
||||
ENV{ID_CDROM}=="?*", ENV{ID_FS_TYPE}=="udf", ENV{ID_FS_LABEL}=="WD*SmartWare", \
|
||||
ENV{UDISKS_IGNORE}="1"
|
||||
ENV{ID_PART_TABLE_TYPE}=="mac", \
|
||||
ENV{ID_CDROM}=="?*", ENV{ID_FS_TYPE}=="udf", ENV{ID_FS_LABEL}=="WD*SmartWare", \
|
||||
ENV{UDISKS_IGNORE}="1"
|
||||
|
||||
# recovery partitions
|
||||
ENV{ID_FS_TYPE}=="ntfs|vfat", \
|
||||
ENV{ID_FS_LABEL}=="Recovery|RECOVERY|Lenovo_Recovery|HP_RECOVERY|Recovery_Partition|DellUtility|DellRestore|IBM_SERVICE|SERVICEV001|SERVICEV002|SYSTEM_RESERVED|System_Reserved|WINRE_DRV|DIAGS|IntelRST", \
|
||||
ENV{UDISKS_IGNORE}="1"
|
||||
|
||||
# read-only non-Linux software installer partitions
|
||||
ENV{ID_VENDOR}=="Sony", ENV{ID_MODEL}=="PRS*Launcher", ENV{UDISKS_IGNORE}="1"
|
||||
|
||||
# non-Linux software
|
||||
KERNEL=="sr*", ENV{ID_VENDOR}=="SanDisk", ENV{ID_MODEL}=="Cruzer", ENV{ID_FS_LABEL}=="U3_System", ENV{UDISKS_IGNORE}="1"
|
||||
|
||||
# Virtual Windows tools installation on Asus Zendisk (0b05:17b4)
|
||||
KERNEL=="sr*", ENV{ID_VENDOR}=="ASMT",ENV{ID_MODEL}=="VirtualCDROM", ENV{ID_FS_LABEL}=="ASUS_+Speed_ZENDISK*", ENV{UDISKS_IGNORE}="1"
|
||||
|
||||
# Virtual Windows tools installation CD on Nokia 7 Plus (2e04:c025)
|
||||
KERNEL=="sr*", ENV{ID_VENDOR}=="Linux", ENV{ID_MODEL}=="File-CD_Gadget*", ENV{ID_FS_LABEL}=="CDROM*", ATTRS{manufacturer}=="HMD Global", ENV{UDISKS_IGNORE}="1"
|
||||
|
||||
# Content created using isohybrid (typically used on CDs and USB
|
||||
# sticks for bootable media) is a bit special insofar that the
|
||||
# interesting content is on a DOS partition with type 0x00* ... which
|
||||
# is hidden above. So undo this.
|
||||
#
|
||||
# See http://mjg59.dreamwidth.org/11285.html for more details
|
||||
#
|
||||
# *) This is true only for 64bit images. For 32bit images the type is 0x17
|
||||
# (Hidden HPFS/NTFS/exFAT). This is most likely a bug but we still need to
|
||||
# stop ignoring these.
|
||||
ENV{ID_PART_TABLE_TYPE}=="dos", ENV{ID_PART_ENTRY_TYPE}=="0x0|0x17", ENV{ID_PART_ENTRY_NUMBER}=="1", ENV{ID_FS_TYPE}=="iso9660|udf", ENV{UDISKS_IGNORE}="0"
|
||||
|
||||
# Zram devices setup
|
||||
KERNEL=="zram[0-9]", ENV{SYSTEMD_WANTS}="zram-setup@zram%n.service", TAG+="systemd"
|
||||
|
||||
# Explicitly ignore ram block devices, they don't work with udev
|
||||
KERNEL=="ram*", ENV{UDISKS_IGNORE}="1"
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user