Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Intel sof-hda-dsp breaks suspend after using Pro Audio UCM #4151

Closed
lollipopman opened this issue Jan 24, 2023 · 19 comments
Closed

Intel sof-hda-dsp breaks suspend after using Pro Audio UCM #4151

lollipopman opened this issue Jan 24, 2023 · 19 comments

Comments

@lollipopman
Copy link

lollipopman commented Jan 24, 2023

PipeWire added the Pro Audio profile for UCM devices. After that
patch was included with PipeWire 0.3.64, my laptop was no longer able to
suspend after the profile was loaded. The problem appears to be on the
kernel side. A bug was opened on PipeWire as well as the kernel's
bugzilla
. Here is the relevant output from dmesg:

Jan 20 14:10:25 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
Jan 20 14:10:25 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
Jan 20 14:10:25 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
Jan 20 14:10:25 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: init of i915 and HDMI codec failed
Jan 20 14:10:25 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode
Jan 20 14:10:29 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: codec #2 probe error, ret: -5
Jan 20 14:10:29 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 1
Jan 20 14:10:29 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
Jan 20 14:10:29 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: DMICs detected in NHLT tables: 2
Jan 20 14:10:29 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: firmware: direct-loading firmware intel/sof/sof-tgl-h.ri
Jan 20 14:10:29 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
Jan 20 14:10:29 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
Jan 20 14:10:29 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
Jan 20 14:10:30 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
Jan 20 14:10:30 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
Jan 20 14:10:30 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: firmware: direct-loading firmware intel/sof-tplg/sof-hda-generic-2ch.tplg
Jan 20 14:10:30 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: Topology: ABI 3:22:1 Kernel ABI 3:23:0
Jan 20 14:10:30 skittles kernel: skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: Parent card not yet available, widget card binding deferred
Jan 20 14:10:30 skittles kernel: snd_hda_codec_realtek ehdaudio0D0: autoconfig for ALC287: line_outs=1 (0x17/0x0/0x0/0x0/0x0) type:speaker
Jan 20 14:10:30 skittles kernel: snd_hda_codec_realtek ehdaudio0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
Jan 20 14:10:30 skittles kernel: snd_hda_codec_realtek ehdaudio0D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
Jan 20 14:10:30 skittles kernel: snd_hda_codec_realtek ehdaudio0D0:    mono: mono_out=0x0
Jan 20 14:10:30 skittles kernel: snd_hda_codec_realtek ehdaudio0D0:    inputs:
Jan 20 14:10:30 skittles kernel: snd_hda_codec_realtek ehdaudio0D0:      Mic=0x19
Jan 20 14:10:30 skittles kernel: input: sof-hda-dsp Mic as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card1/input22
Jan 20 14:10:30 skittles kernel: input: sof-hda-dsp Headphone as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card1/input23
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:32 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:32 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:32 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:32 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:32 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 20 14:10:49 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp2 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp2: ASoC: error at __soc_pcm_hw_params on iDisp2: -22
Jan 20 14:10:49 skittles kernel:  HDMI2: ASoC: error at dpcm_fe_dai_hw_params on HDMI2: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 14:10:49 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp3 Pin: -22
Jan 20 14:10:49 skittles kernel:  iDisp3: ASoC: error at __soc_pcm_hw_params on iDisp3: -22
Jan 20 14:10:49 skittles kernel:  HDMI3: ASoC: error at dpcm_fe_dai_hw_params on HDMI3: -22
Jan 20 13:32:15 skittles kernel: PM: suspend entry (s2idle)
Jan 20 13:32:15 skittles kernel: Filesystems sync: 0.015 seconds
Jan 20 13:32:17 skittles kernel: (NULL device *): firmware: direct-loading firmware iwlwifi-ty-a0-gf-a0.pnvm
Jan 20 13:32:17 skittles kernel: (NULL device *): firmware: direct-loading firmware regulatory.db
Jan 20 13:32:17 skittles kernel: (NULL device *): firmware: direct-loading firmware regulatory.db.p7s
Jan 20 13:32:17 skittles kernel: (NULL device *): firmware: direct-loading firmware intel/ibt-0041-0041.ddc
Jan 20 13:32:17 skittles kernel: (NULL device *): firmware: direct-loading firmware intel/sof-tplg/sof-hda-generic-2ch.tplg
Jan 20 13:32:17 skittles kernel: (NULL device *): firmware: direct-loading firmware intel/ibt-0041-0041.sfi
Jan 20 13:32:17 skittles kernel: (NULL device *): firmware: direct-loading firmware iwlwifi-ty-a0-gf-a0-72.ucode
Jan 20 13:32:19 skittles kernel: Freezing user space processes ... (elapsed 0.007 seconds) done.
Jan 20 13:32:19 skittles kernel: OOM killer disabled.
Jan 20 13:32:19 skittles kernel: Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
Jan 20 13:32:19 skittles kernel: printk: Suspending console(s) (use no_console_suspend to debug)
Jan 20 13:32:19 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: hda_dsp_set_hw_params_upon_resume: failure in hda_dsp_dais_suspend
Jan 20 13:32:19 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: error: setting hw_params flag during suspend -22
Jan 20 13:32:19 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: PM: pci_pm_suspend(): snd_sof_suspend+0x0/0x10 [snd_sof] returns -22
Jan 20 13:32:19 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: PM: dpm_run_callback(): pci_pm_suspend+0x0/0x170 returns -22
Jan 20 13:32:19 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: PM: failed to suspend async: error -22
Jan 20 13:32:19 skittles kernel: PM: Some devices failed to suspend, or early wake event detected
Jan 20 13:32:19 skittles kernel: nvme nvme0: Shutdown timeout set to 10 seconds
Jan 20 13:32:19 skittles kernel: nvme nvme0: 16/0/0 default/read/poll queues
Jan 20 13:32:19 skittles kernel: OOM killer enabled.
Jan 20 13:32:19 skittles kernel: Restarting tasks ... done.
Jan 20 13:32:19 skittles kernel: random: crng reseeded on system resumption
Jan 20 13:32:19 skittles kernel: PM: suspend exit

alsa-info.sh info,
http://alsa-project.org/db/?f=6fecee24ef2e97b98474250468402a175e761a5e
(without the Pro Audio profile loaded)

Thanks for any help, Jesse

@plbossart
Copy link
Member

@lollipopman can you add this file
sof-dyndbg.conf.txt
as /etc/modprobe.d/sof-dyndbg.conf, reboot and attach the dmesg log (please don't copy/paste in the comments, it's painful to scroll down)

This looks like PipeWire doing all kinds of hw_params requests to discover what the supported formats are, and somehow this leads to a bad state during suspend.

@kv2019i @ranj063 FYI

@lollipopman
Copy link
Author

Thanks, @plbossart for taking a look, dmesg attached.
dmesg.txt

@plbossart
Copy link
Member

I suspect something related to the use of the NVidia HDMI stuff. In that case there's no real HDMI support on the Intel side, but somehow the links are still used?

Jan 24 13:08:02 skittles kernel: snd_soc_core:snd_soc_dapm_link_dai_widgets: skl_hda_dsp_generic skl_hda_dsp_generic: dai widget HDA4.OUT has no DAI

Jan 24 13:08:04 skittles kernel: snd_soc_core:dpcm_be_dai_hw_params:  iDisp1: ASoC: hw_params BE iDisp1
Jan 24 13:08:04 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 24 13:08:04 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22

@plbossart
Copy link
Member

#define EINVAL 22

@plbossart
Copy link
Member

My money is on an error in hda_link_dma_hw_params().

@lollipopman do you have the ability/skills to recompile your own kernel and add some logs in sound/soc/sof/intel/hda-dai.c ?

@lollipopman
Copy link
Author

My money is on an error in hda_link_dma_hw_params().

@lollipopman do you have the ability/skills to recompile your own kernel and add some logs in sound/soc/sof/intel/hda-dai.c ?

would be happy to, if you could provide a patch

@kv2019i
Copy link
Collaborator

kv2019i commented Jan 25, 2023

@plbossart The Intel HDMI is definitely disabled and we should be using the dummy codec driver:

Jan 20 14:10:29 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: codec #2 probe error, ret: -5
Jan 20 14:10:29 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 1

My money would be on snd_hdac_ext_bus_get_hlink_by_name() failing in hda_dai_suspend() -> hda_link_dma_cleanup(). But what I don't get why there would be a stream held active (so that hda_dai_suspend() needs to clean it).

@plbossart
Copy link
Member

I wonder if PipeWire tries to use the HDMI streams that are exposed in the topology, without checking if they are connected to something. that may result in errors when trying to configure the BE hw_params (since there's nothing) and later on there's a remaining stream allocated that cannot be cleared.

I would bet there's an allocated stream that isn't realized if something happens in the BE hw_params, i.e. a leaked reference.

@plbossart
Copy link
Member

Consider this code walk:

static int hda_link_dma_hw_params(struct snd_pcm_substream *substream,
				  struct snd_pcm_hw_params *params, struct snd_soc_dai *cpu_dai)
{
	const struct hda_dai_widget_dma_ops *ops = hda_dai_get_ops(substream, cpu_dai);
	struct snd_soc_pcm_runtime *rtd = asoc_substream_to_rtd(substream);
	struct snd_soc_dai *codec_dai = asoc_rtd_to_codec(rtd, 0);
	struct hdac_ext_stream *hext_stream;
	struct hdac_stream *hstream;
	struct hdac_ext_link *hlink;
	struct snd_sof_dev *sdev;
	struct hdac_bus *bus;
	unsigned int format_val;
	unsigned int link_bps;
	int stream_tag;

	sdev = snd_soc_component_get_drvdata(cpu_dai->component);
	bus = sof_to_bus(sdev);

	hext_stream = ops->get_hext_stream(sdev, cpu_dai, substream);

	if (!hext_stream) {
		if (ops->assign_hext_stream)
			hext_stream = ops->assign_hext_stream(sdev, cpu_dai, substream);
	}

	if (!hext_stream)
		return -EBUSY;

so until here we've assigned an stream_tag, but

	hstream = &hext_stream->hstream;
	stream_tag = hstream->stream_tag;
	hlink = snd_hdac_ext_bus_get_hlink_by_name(bus, codec_dai->component->name);
	if (!hlink)
		return -EINVAL;

here this won't work because there's nothing connected.

In that case we've got an assigned stream which cannot also be dealt with during the suspend phase.

Maybe it's enough to revert the two parts. @lollipopman can you try this?

check_hlink.txt

iff --git a/sound/soc/sof/intel/hda-dai.c b/sound/soc/sof/intel/hda-dai.c
index f7d308234bb10..67745a95bbbb8 100644
--- a/sound/soc/sof/intel/hda-dai.c
+++ b/sound/soc/sof/intel/hda-dai.c
@@ -143,6 +143,10 @@ static int hda_link_dma_hw_params(struct snd_pcm_substream *substream,
        sdev = snd_soc_component_get_drvdata(cpu_dai->component);
        bus = sof_to_bus(sdev);
 
+       hlink = snd_hdac_ext_bus_get_hlink_by_name(bus, codec_dai->component->name);
+       if (!hlink)
+               return -EINVAL;
+
        hext_stream = ops->get_hext_stream(sdev, cpu_dai, substream);
 
        if (!hext_stream) {
@@ -155,9 +159,6 @@ static int hda_link_dma_hw_params(struct snd_pcm_substream *substream,
 
        hstream = &hext_stream->hstream;
        stream_tag = hstream->stream_tag;
-       hlink = snd_hdac_ext_bus_get_hlink_by_name(bus, codec_dai->component->name);
-       if (!hlink)
-               return -EINVAL;
 
        if (hext_stream->hstream.direction == SNDRV_PCM_STREAM_PLAYBACK)
                snd_hdac_ext_bus_link_set_stream_id(hlink, stream_tag);

plbossart added a commit to plbossart/sound that referenced this issue Jan 25, 2023
The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCM without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Link: thesofproject#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
plbossart added a commit to plbossart/sound that referenced this issue Jan 25, 2023
The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Link: thesofproject#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
@ranj063
Copy link
Collaborator

ranj063 commented Jan 25, 2023

My money would be on snd_hdac_ext_bus_get_hlink_by_name() failing in hda_dai_suspend() -> hda_link_dma_cleanup(). But what I don't get why there would be a stream held active (so that hda_dai_suspend() needs to clean it).

I agree with this. @lollipopman Are you seeing the errors only during suspend?

@ranj063
Copy link
Collaborator

ranj063 commented Jan 25, 2023

would bet there's an allocated stream that isn't realized if something happens in the BE hw_params, i.e. a leaked reference.

@plbossart this change would still end up with errors except it would be a different one right?

@plbossart
Copy link
Member

plbossart commented Jan 25, 2023

@ranj063 there would still be errors when trying all kinds of hw_params for that BE, but there should be no errors when suspending. That's what we are trying to fix first. No matter how stupid the sequences are before suspend, suspend shall always works.

@lollipopman
Copy link
Author

@plbossart I wasn't sure want version of the kernel that patch was against, but I patched 6.2.0-rc5 after moving the hunks around (correctly I believe) and my laptop is now able to suspend. Attached our the dmesg output and the patch I applied.

@plbossart
Copy link
Member

Thanks @lollipopman that's good.

I'd still want to figure out why we get those other errors on startup:

Jan 26 09:59:42 skittles kernel: snd_soc_core:dpcm_fe_dai_startup:  HDMI1: ASoC: open FE HDMI1
Jan 26 09:59:42 skittles kernel: snd_sof:sof_pcm_open: sof-audio-pci-intel-tgl 0000:00:1f.3: pcm: open stream 3 dir 0
Jan 26 09:59:42 skittles kernel: snd_sof:sof_pcm_open: sof-audio-pci-intel-tgl 0000:00:1f.3: period min 192 max 16384 bytes
Jan 26 09:59:42 skittles kernel: snd_sof:sof_pcm_open: sof-audio-pci-intel-tgl 0000:00:1f.3: period count 2 max 16
Jan 26 09:59:42 skittles kernel: snd_sof:sof_pcm_open: sof-audio-pci-intel-tgl 0000:00:1f.3: buffer max 65536 bytes
Jan 26 09:59:42 skittles kernel: snd_soc_core:dpcm_be_dai_hw_params:  iDisp1: ASoC: hw_params BE iDisp1
Jan 26 09:59:42 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 26 09:59:42 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 26 09:59:42 skittles kernel: snd_soc_core:dpcm_be_dai_hw_params:  HDMI1: ASoC: dpcm_be_dai_hw_params() failed at iDisp1 (-22)
Jan 26 09:59:42 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 26 09:59:42 skittles kernel: snd_soc_core:dpcm_fe_dai_hw_free:  HDMI1: ASoC: hw_free FE HDMI1
Jan 26 09:59:42 skittles kernel: snd_sof:sof_pcm_hw_free: sof-audio-pci-intel-tgl 0000:00:1f.3: pcm: free stream 3 dir 0
Jan 26 09:59:42 skittles kernel: snd_soc_core:dpcm_be_dai_hw_params:  iDisp1: ASoC: hw_params BE iDisp1
Jan 26 09:59:42 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 26 09:59:42 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22
Jan 26 09:59:42 skittles kernel: snd_soc_core:dpcm_be_dai_hw_params:  HDMI1: ASoC: dpcm_be_dai_hw_params() failed at iDisp1 (-22)
Jan 26 09:59:42 skittles kernel:  HDMI1: ASoC: error at dpcm_fe_dai_hw_params on HDMI1: -22
Jan 26 09:59:42 skittles kernel: snd_soc_core:dpcm_fe_dai_hw_free:  HDMI1: ASoC: hw_free FE HDMI1
Jan 26 09:59:42 skittles kernel: snd_sof:sof_pcm_hw_free: sof-audio-pci-intel-tgl 0000:00:1f.3: pcm: free stream 3 dir 0
Jan 26 09:59:42 skittles kernel: snd_soc_core:dpcm_be_dai_hw_params:  iDisp1: ASoC: hw_params BE iDisp1
Jan 26 09:59:42 skittles kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ASoC: error at snd_soc_dai_hw_params on iDisp1 Pin: -22
Jan 26 09:59:42 skittles kernel:  iDisp1: ASoC: error at __soc_pcm_hw_params on iDisp1: -22

what this shows is that the application tried to use the HDMI1 device, which is clearly not functional on this platform.

That tells me that UCM is not used at all in this profile?

@lollipopman
Copy link
Author

@plbossart happy to help, just let me know what else I can provide.

plbossart added a commit that referenced this issue Feb 9, 2023
The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Link: #4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
intel-lab-lkp pushed a commit to intel-lab-lkp/linux that referenced this issue Feb 16, 2023
The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Link: thesofproject#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
ujfalusi pushed a commit to ujfalusi/sof-linux that referenced this issue Feb 16, 2023
The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Link: thesofproject#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
intel-lab-lkp pushed a commit to intel-lab-lkp/linux that referenced this issue Feb 16, 2023
The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 17, 2023
The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 20, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 20, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 20, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 20, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 20, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 20, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 21, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Whissi pushed a commit to Whissi/linux-stable that referenced this issue Feb 22, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 22, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 22, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Whissi pushed a commit to Whissi/linux-stable that referenced this issue Feb 22, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 22, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 22, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Whissi pushed a commit to Whissi/linux-stable that referenced this issue Feb 22, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
github-actions bot pushed a commit to sirdarckcat/linux-1 that referenced this issue Feb 22, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
ammarfaizi2 pushed a commit to ammarfaizi2/linux-block that referenced this issue Feb 22, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
@ZWindL
Copy link

ZWindL commented Feb 22, 2023

The fix works for me on linux-zen 6.2.zen1-1.

@ujfalusi
Copy link
Collaborator

ujfalusi commented Feb 22, 2023

6.2 got the patch included luckily and it will show up in the next 6.1 and LTS kernels as well. @lollipopman can you verify when a new kernel is available for you?

@lollipopman
Copy link
Author

6.2 got the patch included luckily and it will show up in the next 6.1 and LTS kernels as well. @lollipopman can you verify when a new kernel is available for you?

@ujfalusi, great, will do!

jpuhlman pushed a commit to MontaVista-OpenSourceTechnology/linux-mvista that referenced this issue Feb 28, 2023
Source: Kernel.org
MR: 125008
Type: Integration
Disposition: Backport from git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable linux-5.10.y
ChangeID: 31167df7c21feb2a74d69a758a5226d83cbfe905
Description:

commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
jpuhlman pushed a commit to MontaVista-OpenSourceTechnology/linux-mvista that referenced this issue Feb 28, 2023
Source: Kernel.org
MR: 125008
Type: Integration
Disposition: Backport from git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable linux-5.10.y
ChangeID: 31167df7c21feb2a74d69a758a5226d83cbfe905
Description:

commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
jpuhlman pushed a commit to MontaVista-OpenSourceTechnology/linux-mvista that referenced this issue Feb 28, 2023
Source: Kernel.org
MR: 125008
Type: Integration
Disposition: Backport from git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable linux-5.10.y
ChangeID: 31167df7c21feb2a74d69a758a5226d83cbfe905
Description:

commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
jpuhlman pushed a commit to MontaVista-OpenSourceTechnology/linux-mvista that referenced this issue Mar 2, 2023
Source: Kernel.org
MR: 125058
Type: Integration
Disposition: Backport from git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable linux-5.4.y
ChangeID: 5660a6ffa7a4a5ace9c10274a208ec011592f6d6
Description:

commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
oraclelinuxkernel pushed a commit to oracle/linux-uek that referenced this issue Mar 3, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 180a1632b6c723d8683be98edbdf2434787eb1a8)
Signed-off-by: Jack Vogel <jack.vogel@oracle.com>
oraclelinuxkernel pushed a commit to oracle/linux-uek that referenced this issue Mar 10, 2023
commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 5660a6ffa7a4a5ace9c10274a208ec011592f6d6)
Signed-off-by: Sherry Yang <sherry.yang@oracle.com>
@lollipopman
Copy link
Author

@ujfalusi confirmed on Debian's 6.1.15-1 kernel, thanks again!

ChampionsGod pushed a commit to ChampionsGod/kernel_xiaomi_sm8350 that referenced this issue Apr 6, 2023
commit 1f810d2b6b2fbdc5279644d8b2c140b1f7c9d43d upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f3e9f5 ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Peter-JanGootzen pushed a commit to Peter-JanGootzen/linux that referenced this issue May 7, 2023
The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
delphix-devops-bot pushed a commit to delphix/linux-kernel-generic that referenced this issue May 26, 2023
BugLink: https://bugs.launchpad.net/bugs/2011625

commit 1f810d2b6b2fbdc5279644d8b2c140b1f7c9d43d upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f3e9f5 ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Luke Nowakowski-Krijger <luke.nowakowskikrijger@canonical.com>
Acked-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
Santhanabalan pushed a commit to Santhanabalan/kernel_xiaomi_sm8350 that referenced this issue Jul 21, 2023
commit 1f810d2b6b2fbdc5279644d8b2c140b1f7c9d43d upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f3e9f5 ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
wanghao75 pushed a commit to openeuler-mirror/kernel that referenced this issue Aug 25, 2023
stable inclusion
from stable-v5.10.169
commit 31167df7c21feb2a74d69a758a5226d83cbfe905
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I7V9QX

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=31167df7c21feb2a74d69a758a5226d83cbfe905

----------------------------------------------------

commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: zhaoxiaoqiang11 <zhaoxiaoqiang11@jd.com>
wanghao75 pushed a commit to openeuler-mirror/kernel that referenced this issue Oct 24, 2023
stable inclusion
from stable-v5.10.169
commit 31167df7c21feb2a74d69a758a5226d83cbfe905
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I7V9QX

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=31167df7c21feb2a74d69a758a5226d83cbfe905

----------------------------------------------------

commit 1f810d2 upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: zhaoxiaoqiang11 <zhaoxiaoqiang11@jd.com>
(cherry picked from commit ec949ab)
fozog pushed a commit to fozog/linux that referenced this issue Nov 30, 2023
The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
mbissaromoto pushed a commit to MotorolaMobilityLLC/kernel-msm that referenced this issue May 17, 2024
commit 1f810d2b6b2fbdc5279644d8b2c140b1f7c9d43d upstream.

The HDaudio stream allocation is done first, and in a second step the
LOSIDV parameter is programmed for the multi-link used by a codec.

This leads to a possible stream_tag leak, e.g. if a DisplayAudio link
is not used. This would happen when a non-Intel graphics card is used
and userspace unconditionally uses the Intel Display Audio PCMs without
checking if they are connected to a receiver with jack controls.

We should first check that there is a valid multi-link entry to
configure before allocating a stream_tag. This change aligns the
dma_assign and dma_cleanup phases.

Complements: b0cd60f3e9f5 ("ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers")
Link: thesofproject/linux#4151
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20230216162340.19480-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants