90-pipewire-alsa.rules 12.1 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# do not edit this file, it will be overwritten on update

# This file is part of PipeWire adapted from PulseAudio.
#
# PulseAudio 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.
#
# PulseAudio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.

Wim Taymans's avatar
Wim Taymans committed
18
19
20
21
22
23
SUBSYSTEM!="sound", GOTO="pipewire_end"
ACTION!="change", GOTO="pipewire_end"
KERNEL!="card*", GOTO="pipewire_end"
SUBSYSTEMS=="usb", GOTO="pipewire_check_usb"
SUBSYSTEMS=="pci", GOTO="pipewire_check_pci"
SUBSYSTEMS=="firewire", GOTO="pipewire_firewire_quirk"
24

Wim Taymans's avatar
Wim Taymans committed
25
SUBSYSTEMS=="platform", DRIVERS=="thinkpad_acpi", ENV{ACP_IGNORE}="1"
26
27
28
29

# Force enable speaker and internal mic for some laptops
# This should only be necessary for kernels 3.3, 3.4 and 3.5 (as they are lacking the phantom jack kctls).
# Acer AOA150
Wim Taymans's avatar
Wim Taymans committed
30
ATTRS{subsystem_vendor}=="0x1025", ATTRS{subsystem_device}=="0x015b", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
31
# Acer Aspire 4810TZ
Wim Taymans's avatar
Wim Taymans committed
32
ATTRS{subsystem_vendor}=="0x1025", ATTRS{subsystem_device}=="0x022a", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
33
# Packard bell dot m/a
Wim Taymans's avatar
Wim Taymans committed
34
ATTRS{subsystem_vendor}=="0x1025", ATTRS{subsystem_device}=="0x028c", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
35
# Acer Aspire 1810TZ
Wim Taymans's avatar
Wim Taymans committed
36
ATTRS{subsystem_vendor}=="0x1025", ATTRS{subsystem_device}=="0x029b", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
37
# Acer AOD260 and AO532h
Wim Taymans's avatar
Wim Taymans committed
38
ATTRS{subsystem_vendor}=="0x1025", ATTRS{subsystem_device}=="0x0349", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
39
# Dell MXC051
Wim Taymans's avatar
Wim Taymans committed
40
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x01b5", ENV{ACP_PROFILE_SET}="force-speaker.conf"
41
# Dell Inspiron 6400 and E1505
Wim Taymans's avatar
Wim Taymans committed
42
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x01bd", ENV{ACP_PROFILE_SET}="force-speaker.conf"
43
# Dell Latitude D620
Wim Taymans's avatar
Wim Taymans committed
44
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x01c2", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
45
# Dell Latitude D820
Wim Taymans's avatar
Wim Taymans committed
46
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x01cc", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
47
# Dell Latitude D520
Wim Taymans's avatar
Wim Taymans committed
48
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x01d4", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
49
# Dell Latitude D420
Wim Taymans's avatar
Wim Taymans committed
50
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x01d6", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
51
# Dell Inspiron 1525
Wim Taymans's avatar
Wim Taymans committed
52
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x022f", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
53
# Dell Inspiron 1011
Wim Taymans's avatar
Wim Taymans committed
54
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x02f4", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
55
# Dell XPS 14 (L401X)
Wim Taymans's avatar
Wim Taymans committed
56
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x0468", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
57
# Dell XPS 15 (L501X)
Wim Taymans's avatar
Wim Taymans committed
58
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x046e", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
59
# Dell XPS 15 (L502X)
Wim Taymans's avatar
Wim Taymans committed
60
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x050e", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
61
# Dell Inspiron 3420
Wim Taymans's avatar
Wim Taymans committed
62
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x0553", ENV{ACP_PROFILE_SET}="force-speaker.conf"
63
# Dell Inspiron 3520
Wim Taymans's avatar
Wim Taymans committed
64
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x0555", ENV{ACP_PROFILE_SET}="force-speaker.conf"
65
# Dell Vostro 2420
Wim Taymans's avatar
Wim Taymans committed
66
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x0556", ENV{ACP_PROFILE_SET}="force-speaker.conf"
67
# Dell Vostro 2520
Wim Taymans's avatar
Wim Taymans committed
68
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x0558", ENV{ACP_PROFILE_SET}="force-speaker.conf"
69
# Dell Inspiron One 2020
Wim Taymans's avatar
Wim Taymans committed
70
ATTRS{subsystem_vendor}=="0x1028", ATTRS{subsystem_device}=="0x0579", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
71
# Asus 904HA (1000H)
Wim Taymans's avatar
Wim Taymans committed
72
ATTRS{subsystem_vendor}=="0x1043", ATTRS{subsystem_device}=="0x831a", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
73
# Asus T101MT
Wim Taymans's avatar
Wim Taymans committed
74
ATTRS{subsystem_vendor}=="0x1043", ATTRS{subsystem_device}=="0x83ce", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
75
# Sony Vaio VGN-SR21M
Wim Taymans's avatar
Wim Taymans committed
76
ATTRS{subsystem_vendor}=="0x104d", ATTRS{subsystem_device}=="0x9033", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
77
# Sony Vaio VPC-W115XG
Wim Taymans's avatar
Wim Taymans committed
78
ATTRS{subsystem_vendor}=="0x104d", ATTRS{subsystem_device}=="0x9064", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
79
# Fujitsu Lifebook S7110
Wim Taymans's avatar
Wim Taymans committed
80
ATTRS{subsystem_vendor}=="0x10cf", ATTRS{subsystem_device}=="0x1397", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
81
# Fujitsu Lifebook A530
Wim Taymans's avatar
Wim Taymans committed
82
ATTRS{subsystem_vendor}=="0x10cf", ATTRS{subsystem_device}=="0x1531", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
83
# Toshiba A200
Wim Taymans's avatar
Wim Taymans committed
84
ATTRS{subsystem_vendor}=="0x1179", ATTRS{subsystem_device}=="0xff00", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
85
# MSI X360
Wim Taymans's avatar
Wim Taymans committed
86
ATTRS{subsystem_vendor}=="0x1462", ATTRS{subsystem_device}=="0x1053", ENV{ACP_PROFILE_SET}="force-speaker-and-int-mic.conf"
87
# Lenovo 3000 Y410
Wim Taymans's avatar
Wim Taymans committed
88
ATTRS{subsystem_vendor}=="0x17aa", ATTRS{subsystem_device}=="0x384e", ENV{ACP_PROFILE_SET}="force-speaker.conf"
89

Wim Taymans's avatar
Wim Taymans committed
90
GOTO="pipewire_end"
91

Wim Taymans's avatar
Wim Taymans committed
92
93
94
95
96
LABEL="pipewire_check_usb"
ATTRS{idVendor}=="17cc", ATTRS{idProduct}=="1978", ENV{ACP_PROFILE_SET}="native-instruments-audio8dj.conf"
ATTRS{idVendor}=="17cc", ATTRS{idProduct}=="0839", ENV{ACP_PROFILE_SET}="native-instruments-audio4dj.conf"
ATTRS{idVendor}=="17cc", ATTRS{idProduct}=="baff", ENV{ACP_PROFILE_SET}="native-instruments-traktorkontrol-s4.conf"
ATTRS{idVendor}=="17cc", ATTRS{idProduct}=="4711", ENV{ACP_PROFILE_SET}="native-instruments-korecontroller.conf"
97
98

# This ID 17cc:041c is verified for the older Audio 2 DJ model (pre-2014 ish).
Wim Taymans's avatar
Wim Taymans committed
99
100
ATTRS{idVendor}=="17cc", ATTRS{idProduct}=="041c", ENV{ACP_PROFILE_SET}="native-instruments-traktor-audio2.conf"
ATTRS{idVendor}=="17cc", ATTRS{idProduct}=="041d", ENV{ACP_PROFILE_SET}="native-instruments-traktor-audio2.conf"
101
102
103
104

# There appear to be two IDs in use for Traktor Audio 6 (or maybe 17cc:1011
# is just incorrect - 17cc:1010 has been verified to be correct at least
# for some hardware).
Wim Taymans's avatar
Wim Taymans committed
105
106
ATTRS{idVendor}=="17cc", ATTRS{idProduct}=="1010", ENV{ACP_PROFILE_SET}="native-instruments-traktor-audio6.conf"
ATTRS{idVendor}=="17cc", ATTRS{idProduct}=="1011", ENV{ACP_PROFILE_SET}="native-instruments-traktor-audio6.conf"
107

Wim Taymans's avatar
Wim Taymans committed
108

109
ATTRS{idVendor}=="17cc", ATTRS{idProduct}=="1001", ENV{ACP_PROFILE_SET}="native-instruments-komplete-audio6.conf"
Wim Taymans's avatar
Wim Taymans committed
110
111
112
113
114
ATTRS{idVendor}=="17cc", ATTRS{idProduct}=="1021", ENV{ACP_PROFILE_SET}="native-instruments-traktor-audio10.conf"
ATTRS{idVendor}=="0763", ATTRS{idProduct}=="2012", ENV{ACP_PROFILE_SET}="maudio-fasttrack-pro.conf"
ATTRS{idVendor}=="045e", ATTRS{idProduct}=="02bb", ENV{ACP_PROFILE_SET}="kinect-audio.conf"
ATTRS{idVendor}=="041e", ATTRS{idProduct}=="322c", ENV{ACP_PROFILE_SET}="sb-omni-surround-5.1.conf"
ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="4014", ENV{ACP_PROFILE_SET}="dell-dock-tb16-usb-audio.conf"
Wim Taymans's avatar
Wim Taymans committed
115
ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="402e", ENV{ACP_PROFILE_SET}="dell-dock-tb16-usb-audio.conf"
116
#ATTRS{idVendor}=="08bb", ATTRS{idProduct}=="2902", ENV{ACP_PROFILE_SET}="texas-instruments-pcm2902.conf"
Wim Taymans's avatar
Wim Taymans committed
117
118
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="0269", ENV{ACP_PROFILE_SET}="hp-tbt-dock-120w-g2.conf"
ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="0567", ENV{ACP_PROFILE_SET}="hp-tbt-dock-audio-module.conf"
119
120
121

# ID 1038:12ad is for the 2018 refresh of the Arctis 7.
# ID 1038:1294 is for Arctis Pro Wireless (which works with the Arctis 7 configuration).
Wim Taymans's avatar
Wim Taymans committed
122
123
124
125
ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1260", ENV{ACP_PROFILE_SET}="usb-gaming-headset.conf"
ATTRS{idVendor}=="1038", ATTRS{idProduct}=="12ad", ENV{ACP_PROFILE_SET}="usb-gaming-headset.conf"
ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1294", ENV{ACP_PROFILE_SET}="usb-gaming-headset.conf"
ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1730", ENV{ACP_PROFILE_SET}="usb-gaming-headset.conf"
Wim Taymans's avatar
Wim Taymans committed
126
127
128
# ID 1038:1282 is for SteelSeries GameDAC
ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1282", ENV{ACP_PROFILE_SET}="usb-gaming-headset.conf"
# ID 1038:12c4 is for Arctis 9
129
ATTRS{idVendor}=="1038", ATTRS{idProduct}=="12c4", ENV{ACP_PROFILE_SET}="usb-gaming-headset.conf"
130
# Lucidsound LS31
Wim Taymans's avatar
Wim Taymans committed
131
ATTRS{idVendor}=="2f12", ATTRS{idProduct}=="0109", ENV{ACP_PROFILE_SET}="usb-gaming-headset.conf"
132
# ID 9886:002c is for the Astro A50 Gen4
Wim Taymans's avatar
Wim Taymans committed
133
ATTRS{idVendor}=="9886", ATTRS{idProduct}=="002c", ENV{ACP_PROFILE_SET}="usb-gaming-headset.conf"
Wim Taymans's avatar
Wim Taymans committed
134
# ID 1532:0520 is for the Razer Kraken Tournament Edition
Wim Taymans's avatar
Wim Taymans committed
135
ATTRS{idVendor}=="1532", ATTRS{idProduct}=="0520", ENV{ACP_PROFILE_SET}="usb-gaming-headset.conf"
Wim Taymans's avatar
Wim Taymans committed
136

137
138
139
140

# ID 1038:1250 is for the Arctis 5
# ID 1037:12aa is for the Arctis 5 2019
# ID 1038:1252 is for the Arctis Pro 2019 edition
Wim Taymans's avatar
Wim Taymans committed
141
142
143
ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1250", ENV{ACP_PROFILE_SET}="steelseries-arctis-common-usb-audio.conf"
ATTRS{idVendor}=="1038", ATTRS{idProduct}=="12aa", ENV{ACP_PROFILE_SET}="steelseries-arctis-common-usb-audio.conf"
ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1252", ENV{ACP_PROFILE_SET}="steelseries-arctis-common-usb-audio.conf"
144

Wim Taymans's avatar
Wim Taymans committed
145
ATTRS{idVendor}=="147a", ATTRS{idProduct}=="e055", ENV{ACP_PROFILE_SET}="cmedia-high-speed-true-hdaudio.conf"
146

147
148
149
150
151
152
153
154
155
156
# HyperX Cloud Orbit S has three modes. Each mode has a separate product ID.
# ID_SERIAL for this device is the device name + mode repeated three times.
# ID_SERIAL is used for the ID_ID property, and the ID_ID property is used in
# the card name in PulseAudio. The resulting card name is too long for the name
# length limit, so we set a more sensible ID_ID here (the same as the default
# ID_ID, but without repetition in the serial part).
ATTRS{idVendor}=="0951", ATTRS{idProduct}=="16ff", ENV{ID_ID}="usb-HyperX_Cloud_Orbit_S_2Ch-$env{ID_USB_INTERFACE_NUM}"
ATTRS{idVendor}=="0951", ATTRS{idProduct}=="1702", ENV{ID_ID}="usb-HyperX_Cloud_Orbit_S_Hi-Res_2Ch-$env{ID_USB_INTERFACE_NUM}"
ATTRS{idVendor}=="0951", ATTRS{idProduct}=="1703", ENV{ID_ID}="usb-HyperX_Cloud_Orbit_S_3D_8Ch-$env{ID_USB_INTERFACE_NUM}"

Wim Taymans's avatar
Wim Taymans committed
157
158
159
160
161
162
# OnePlus Type-C Bullets (ED117)
ATTRS{idVendor}=="2a70", ATTRS{idProduct}=="1881", ENV{ACP_PROFILE_SET}="simple-headphones-mic.conf"

# ID 1395:005e is for Sennheiser GSX 1000
# ID 1395:00a0 is for Sennheiser GSX 1000
# ID 1395:005f is for Sennheiser GSX 1200
163
# ID 1395:00a1 is for Sennheiser GSX 1200
Wim Taymans's avatar
Wim Taymans committed
164
165
166
ATTRS{idVendor}=="1395", ATTRS{idProduct}=="005e", ENV{ACP_PROFILE_SET}="sennheiser-gsx.conf"
ATTRS{idVendor}=="1395", ATTRS{idProduct}=="00a0", ENV{ACP_PROFILE_SET}="sennheiser-gsx.conf"
ATTRS{idVendor}=="1395", ATTRS{idProduct}=="005f", ENV{ACP_PROFILE_SET}="sennheiser-gsx.conf"
167
ATTRS{idVendor}=="1395", ATTRS{idProduct}=="00a1", ENV{ACP_PROFILE_SET}="sennheiser-gsx.conf"
Wim Taymans's avatar
Wim Taymans committed
168

Wim Taymans's avatar
Wim Taymans committed
169
170
171
172
173
174
175
# Sennheiser GSA 70 wireless USB dongle for GSP 670
ATTRS{idVendor}=="1395", ATTRS{idProduct}=="0089", ENV{ACP_PROFILE_SET}="usb-gaming-headset.conf"
# EPOS GSA 70 wireless USB dongle for GSP 670 (Sennheiser GSA 70 with updated firmware)
ATTRS{idVendor}=="1395", ATTRS{idProduct}=="0300", ENV{ACP_PROFILE_SET}="usb-gaming-headset.conf"
# Sennheiser GSP 670 USB headset
ATTRS{idVendor}=="1395", ATTRS{idProduct}=="008a", ENV{ACP_PROFILE_SET}="usb-gaming-headset.conf"

Wim Taymans's avatar
Wim Taymans committed
176
GOTO="pipewire_end"
177

Wim Taymans's avatar
Wim Taymans committed
178
LABEL="pipewire_check_pci"
Wim Taymans's avatar
Wim Taymans committed
179
180
181

# Creative SoundBlaster Audigy-based cards
# EMU10k2/CA0100/CA0102/CA10200
Wim Taymans's avatar
Wim Taymans committed
182
ATTRS{vendor}=="0x1102", ATTRS{device}=="0x0004", ENV{ACP_PROFILE_SET}="audigy.conf"
Wim Taymans's avatar
Wim Taymans committed
183
# CA0108/CA10300
Wim Taymans's avatar
Wim Taymans committed
184
ATTRS{vendor}=="0x1102", ATTRS{device}=="0x0008", ENV{ACP_PROFILE_SET}="audigy.conf"
Wim Taymans's avatar
Wim Taymans committed
185

Wim Taymans's avatar
Wim Taymans committed
186
GOTO="pipewire_end"
Wim Taymans's avatar
Wim Taymans committed
187

Wim Taymans's avatar
Wim Taymans committed
188
LABEL="pipewire_firewire_quirk"
189

Wim Taymans's avatar
Wim Taymans committed
190
191
192
193
194
195
196
197
198
199
# Focusrite Saffire Pro 10 i/o and Pro 26 i/o have a quirk to disappear from
# IEEE 1394 bus when breaking connections. This brings an issue for PulseAudio
# to continue the routine for ever that:
# - detecting sound card
# - starting PCM substream
# - stopping the PCM substream
# - the card disappears
# - the card appears
# In detail, see: https://bugzilla.kernel.org/show_bug.cgi?id=199365
ATTRS{vendor}=="0x00130e", ATTRS{model}=="0x00000[36]", ATTRS{units}=="0x00a02d:0x010001", ENV{ACP_IGNORE}="1"
200

Wim Taymans's avatar
Wim Taymans committed
201
LABEL="pipewire_end"