]> git.ipfire.org Git - thirdparty/systemd.git/blob - rules.d/50-udev-default.rules.in
hwdb: add hardware database for unit of IEEE 1394
[thirdparty/systemd.git] / rules.d / 50-udev-default.rules.in
1 # do not edit this file, it will be overwritten on update
2
3 # run a command on remove events
4 ACTION=="remove", ENV{REMOVE_CMD}!="", RUN+="$env{REMOVE_CMD}"
5 ACTION=="remove", GOTO="default_end"
6
7 SUBSYSTEM=="virtio-ports", KERNEL=="vport*", ATTR{name}=="?*", SYMLINK+="virtio-ports/$attr{name}"
8
9 # select "system RTC" or just use the first one
10 SUBSYSTEM=="rtc", ATTR{hctosys}=="1", SYMLINK+="rtc"
11 SUBSYSTEM=="rtc", KERNEL=="rtc0", SYMLINK+="rtc", OPTIONS+="link_priority=-100"
12
13 SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", IMPORT{builtin}="usb_id", IMPORT{builtin}="hwdb --subsystem=usb"
14 ENV{MODALIAS}!="", IMPORT{builtin}="hwdb --subsystem=$env{SUBSYSTEM}"
15
16 ACTION!="add", GOTO="default_end"
17
18 SUBSYSTEM=="tty", KERNEL=="ptmx", GROUP="tty", MODE="0666"
19 SUBSYSTEM=="tty", KERNEL=="tty", GROUP="tty", MODE="0666"
20 SUBSYSTEM=="tty", KERNEL=="tty[0-9]*", GROUP="tty", MODE="0620"
21 SUBSYSTEM=="tty", KERNEL=="sclp_line[0-9]*", GROUP="tty", MODE="0620"
22 SUBSYSTEM=="tty", KERNEL=="ttysclp[0-9]*", GROUP="tty", MODE="0620"
23 SUBSYSTEM=="tty", KERNEL=="3270/tty[0-9]*", GROUP="tty", MODE="0620"
24 SUBSYSTEM=="vc", KERNEL=="vcs*|vcsa*", GROUP="tty"
25 KERNEL=="tty[A-Z]*[0-9]|ttymxc[0-9]*|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout"
26
27 SUBSYSTEM=="mem", KERNEL=="mem|kmem|port", GROUP="kmem", MODE="0640"
28
29 SUBSYSTEM=="input", GROUP="input"
30 SUBSYSTEM=="input", KERNEL=="js[0-9]*", MODE="0664"
31
32 SUBSYSTEM=="video4linux", GROUP="video"
33 SUBSYSTEM=="graphics", GROUP="video"
34 SUBSYSTEM=="drm", KERNEL!="renderD*", GROUP="video"
35 SUBSYSTEM=="dvb", GROUP="video"
36 SUBSYSTEM=="media", GROUP="video"
37 SUBSYSTEM=="cec", GROUP="video"
38
39 SUBSYSTEM=="drm", KERNEL=="renderD*", GROUP="render", MODE="@GROUP_RENDER_MODE@"
40 SUBSYSTEM=="kfd", GROUP="render", MODE="@GROUP_RENDER_MODE@"
41
42 SUBSYSTEM=="misc", KERNEL=="sgx_enclave", GROUP="sgx", MODE="0660"
43
44 # When using static_node= with non-default permissions, also update
45 # tmpfiles.d/static-nodes-permissions.conf.in to keep permissions synchronized.
46
47 SUBSYSTEM=="sound", GROUP="audio", \
48 OPTIONS+="static_node=snd/seq", OPTIONS+="static_node=snd/timer"
49
50 SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0664"
51
52 SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x00010*", GROUP="video"
53 SUBSYSTEM=="firewire", ATTR{units}=="*0x00b09d:0x00010*", GROUP="video"
54 SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x010001*", GROUP="video"
55 SUBSYSTEM=="firewire", ATTR{units}=="*0x00a02d:0x014001*", GROUP="video"
56
57 SUBSYSTEM=="firewire", TEST=="units", TEST=="model", \
58 IMPORT{builtin}="hwdb 'ieee1394:node:ven$attr{vendor}mo$attr{model}units$attr{units}'"
59
60 SUBSYSTEM=="firewire", TEST=="units", TEST!="model", \
61 IMPORT{builtin}="hwdb 'ieee1394:node:ven$attr{vendor}units$attr{units}'"
62
63 SUBSYSTEM=="firewire", TEST=="units", ENV{IEEE1394_UNIT_FUNCTION_MIDI}=="1", GROUP="audio"
64 SUBSYSTEM=="firewire", TEST=="units", ENV{IEEE1394_UNIT_FUNCTION_AUDIO}=="1", GROUP="audio"
65 SUBSYSTEM=="firewire", TEST=="units", ENV{IEEE1394_UNIT_FUNCTION_VIDEO}=="1", GROUP="video"
66
67 KERNEL=="parport[0-9]*", GROUP="lp"
68 SUBSYSTEM=="printer", KERNEL=="lp*", GROUP="lp"
69 SUBSYSTEM=="ppdev", GROUP="lp"
70 KERNEL=="lp[0-9]*", GROUP="lp"
71 KERNEL=="irlpt[0-9]*", GROUP="lp"
72 SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="*:0701??:*", GROUP="lp"
73
74 SUBSYSTEM=="block", GROUP="disk"
75 SUBSYSTEM=="block", KERNEL=="sr[0-9]*", GROUP="cdrom"
76 SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="4|5", GROUP="cdrom"
77 KERNEL=="sch[0-9]*", GROUP="cdrom"
78 KERNEL=="pktcdvd[0-9]*", GROUP="cdrom"
79 KERNEL=="pktcdvd", GROUP="cdrom"
80
81 SUBSYSTEM=="scsi_generic|scsi_tape", SUBSYSTEMS=="scsi", ATTRS{type}=="1|8", GROUP="tape"
82 SUBSYSTEM=="scsi_generic", SUBSYSTEMS=="scsi", ATTRS{type}=="0", GROUP="disk"
83 KERNEL=="qft[0-9]*|nqft[0-9]*|zqft[0-9]*|nzqft[0-9]*|rawqft[0-9]*|nrawqft[0-9]*", GROUP="disk"
84 KERNEL=="loop-control", GROUP="disk", OPTIONS+="static_node=loop-control"
85 KERNEL=="btrfs-control", GROUP="disk"
86 KERNEL=="rawctl", GROUP="disk"
87 SUBSYSTEM=="raw", KERNEL=="raw[0-9]*", GROUP="disk"
88 SUBSYSTEM=="aoe", GROUP="disk", MODE="0220"
89 SUBSYSTEM=="aoe", KERNEL=="err", MODE="0440"
90
91 KERNEL=="rfkill", MODE="0664"
92 KERNEL=="tun", MODE="0666", OPTIONS+="static_node=net/tun"
93
94 KERNEL=="fuse", MODE="0666", OPTIONS+="static_node=fuse"
95
96 # The static_node is required on s390x and ppc (they are using MODULE_ALIAS)
97 KERNEL=="kvm", GROUP="kvm", MODE="@DEV_KVM_MODE@", OPTIONS+="static_node=kvm"
98
99 KERNEL=="vsock", MODE="0666"
100 KERNEL=="vhost-vsock", GROUP="kvm", MODE="@DEV_KVM_MODE@", OPTIONS+="static_node=vhost-vsock"
101
102 KERNEL=="vhost-net", GROUP="kvm", MODE="@DEV_KVM_MODE@", OPTIONS+="static_node=vhost-net"
103
104 KERNEL=="udmabuf", GROUP="kvm"
105
106 SUBSYSTEM=="ptp", ATTR{clock_name}=="KVM virtual PTP", SYMLINK += "ptp_kvm"
107
108 SUBSYSTEM=="ptp", ATTR{clock_name}=="hyperv", SYMLINK += "ptp_hyperv"
109
110 SUBSYSTEM=="dmi", ENV{ID_SYSFS_ATTRIBUTE_MODEL}=="", ENV{ID_VENDOR}="$attr{sys_vendor}", ENV{ID_MODEL}="$attr{product_name}"
111 SUBSYSTEM=="dmi", ENV{ID_SYSFS_ATTRIBUTE_MODEL}=="product_version", ENV{ID_VENDOR}="$attr{sys_vendor}", ENV{ID_MODEL}="$attr{product_version}"
112
113 LABEL="default_end"