snd_hda_intel/sst-acpi sound breakage on suspend/resume since 5.6-rc1

Dominik Brodowski
2020-03-18T06:30:32Z

Hi!

While 5.5.x works fine, mainline as of ac309e7744be (v5.6-rc6+) causes me
some sound-related trouble: after boot, the sound works fine -- but once I
suspend and resume my broadwell-based XPS13, I need to switch to headphone
and back to speaker to hear something. But what I hear isn't music but
garbled output.

A few dmesg snippets from v5.6-rc6-9-gac309e7744be which might be of
interest. I've highlighted the lines differing from v.5.5.x which might be
of special interest:

...
snd_hda_intel 0000:00:03.0: enabling device (0000 -> 0002)
usbcore: registered new interface driver snd-usb-audio
snd_hda_intel 0000:00:03.0: bound 0000:00:02.0 (ops i915_audio_component_bind_ops)
input: HDA Intel HDMI HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:03.0/sound/card0/input13
input: HDA Intel HDMI HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:03.0/sound/card0/input14
input: HDA Intel HDMI HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:03.0/sound/card0/input15
input: HDA Intel HDMI HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:03.0/sound/card0/input16
input: HDA Intel HDMI HDMI/DP,pcm=10 as /devices/pci0000:00/0000:00:03.0/sound/card0/input17
Console: switching to colour frame buffer device 240x67
!!! sst-acpi INT3438:00: WARN: Device release is not defined so it is not safe to unbind this driver while in use
i915 0000:00:02.0: fb0: i915drmfb frame buffer device
sst-acpi INT3438:00: DesignWare DMA Controller, 8 channels
psmouse serio1: synaptics: Unable to query device: -5
haswell-pcm-audio haswell-pcm-audio: Direct firmware load for intel/IntcPP01.bin failed with error -2
haswell-pcm-audio haswell-pcm-audio: fw image intel/IntcPP01.bin not available(-2)
haswell-pcm-audio haswell-pcm-audio: FW loaded, mailbox readback FW info: type 01, - version: 00.00, build 77, source commit id: 876ac6906f31a43b6772b23c7c983ce9dcb18a19
rt286 i2c-INT343A:00: ASoC: sink widget DMIC1 overwritten
rt286 i2c-INT343A:00: ASoC: source widget DMIC1 overwritten
broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> System Pin mapping ok
broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Offload0 Pin mapping ok
broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Offload1 Pin mapping ok
broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Loopback Pin mapping ok
broadwell-audio broadwell-audio: rt286-aif1 <-> snd-soc-dummy-dai mapping ok
input: broadwell-rt286 Headset as /devices/pci0000:00/INT3438:00/broadwell-audio/sound/card1/input18
...
ALSA device list:
#0: HDA Intel HDMI at 0xf7218000 irq 48
#1: DellInc.-XPS139343--0TM99H
...
!!! haswell-pcm-audio haswell-pcm-audio: warning: stream is NULL, no stream to reset, ignore it.
!!! haswell-pcm-audio haswell-pcm-audio: warning: stream is NULL, no stream to free, ignore it.

(these last two messages already are printed a couple of time after boot, and then
again during a suspend/resume cycle. On v.5.5.y, there are similar messages
"no context buffer need to restore!"). Everything is built-in, no modules
are loaded.

Unfortunately, I cannot bisect this issue easily -- i915 was broken for
quite some time on this system[*], prohibiting boot...

Thanks for taking a look at this issue!

Dominik

[*] https://gitlab.freedesktop.org/drm/intel/issues/1151