udev: fix match expression to Focusrite Saffire Pro i/o series for ignorance

It seems that in sound context environment variable is not available for
match expression.

This commit utilizes walkthrough to refer to attributes in fw node. The
combination of vendor, model, units is enough to match the node since
the attributes of fw unit doesn't have vendor.

Fix: 37358e42c4 ("alsa: Suppress udev detection of sound card for some units on IEEE 1394 bus")
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/566>
This commit is contained in:
Takashi Sakamoto 2021-05-30 13:09:44 +09:00
parent e818899e51
commit 4d825dad42

View file

@ -174,13 +174,15 @@ GOTO="pulseaudio_end"
LABEL="pulseaudio_firewire_quirk" LABEL="pulseaudio_firewire_quirk"
# Focusrite Saffire Pro 10/26 i/o has a quirk to disappear from IEEE 1394 bus when losing connections. # Focusrite Saffire Pro 10 i/o and Pro 26 i/o have a quirk to disappear from
# https://bugzilla.kernel.org/show_bug.cgi?id=199365 # IEEE 1394 bus when breaking connections. This brings an issue for PulseAudio
ENV{ID_VENDOR_ID}=="0x00130e", ENV{ID_MODEL_ID}=="0x000003", ENV{PULSE_IGNORE}="1" # to continue the routine for ever that:
# Both of Saffire Pro 10 i/o and Liquid Saffire 56 have the same ID_MODEL_ID # - detecting sound card
# (0x000006), but Liquid Saffire 56 doesn't suffer from the problem, so we # - starting PCM substream
# can't use ID_MODEL_ID to identify the problematic card. ID_MODEL works # - stopping the PCM substream
# better here. # - the card disappears
ENV{ID_VENDOR_ID}=="0x00130e", ENV{ID_MODEL}=="Pro10IO" ENV{PULSE_IGNORE}="1" # - 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{PULSE_IGNORE}="1"
LABEL="pulseaudio_end" LABEL="pulseaudio_end"