The recent commit added Jack controls to Dell Dock, but it added with iface = SNDRV_CTL_ELEM_IFACE_CARD. Unfortunately this doesn't match with the changes in user-space UCM profile, which expects iface = SNDRV_CTL_ELEM_IFACE_MIXER as default. This mismatch resulted in the non-working profile, and the Dell Dock is gone on pipewire / PulseAudio after the kernel update.
Fix the regression by adjusting the iface of the new ctl elements to *_MIXER.
Fixes: 4b8ea38fabab ("ALSA: usb-audio: Support jack detection on Dell dock") Cc: stable@vger.kernel.org Link: https://bugzilla.opensuse.org/show_bug.cgi?id=1204719 Signed-off-by: Takashi Iwai tiwai@suse.de --- sound/usb/mixer_quirks.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/usb/mixer_quirks.c b/sound/usb/mixer_quirks.c index ab0d459f4271..3039a17259ab 100644 --- a/sound/usb/mixer_quirks.c +++ b/sound/usb/mixer_quirks.c @@ -2042,7 +2042,7 @@ static int realtek_ctl_connector_get(struct snd_kcontrol *kcontrol, }
static const struct snd_kcontrol_new realtek_connector_ctl_ro = { - .iface = SNDRV_CTL_ELEM_IFACE_CARD, + .iface = SNDRV_CTL_ELEM_IFACE_MIXER, .name = "", /* will be filled later manually */ .access = SNDRV_CTL_ELEM_ACCESS_READ, .info = snd_ctl_boolean_mono_info,