-
Notifications
You must be signed in to change notification settings - Fork 303
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
[BUG] ipc tx error on suspend/resume (error loading HDA0.OUT) #5168
Comments
@specious how often does this happen ? Fwiw, the changes https://lore.kernel.org/alsa-devel/20211125101520.291581-4-kai.vehmanen@linux.intel.com/T/ were a fix for a similar issue on CML hardware so it may be something is still not right (and this fix was stress tested on a lot of HW). |
@kv2019i fyi. |
It happens consistently on wake. I can boot and have audio, but after the first suspend/resume, it will require a reboot to get it back. I'd love to help diagnose what is occurring. I can boot into the 5.16-rc7 kernel and test it out. I just installed the How exactly do I run the logger? I'm not sure what the |
@specious here are some ideas to help find the root cause a) downgrade to SOF version 1.9.3 . I see that you are using 2:0:0-b678a so we need to rule out a firmware issue in the last release b) prevent dynamic pipelines for HDaudio. this can be done with the quirk options snd_sof sof_debug=0xF /* Flag definitions used in sof_core_debug (sof_debug module parameter) */
#define SOF_DBG_ENABLE_TRACE BIT(0)
#define SOF_DBG_RETAIN_CTX BIT(1) /* prevent DSP D3 on FW exception */
#define SOF_DBG_VERIFY_TPLG BIT(2) /* verify topology during load */
#define SOF_DBG_DYNAMIC_PIPELINES_OVERRIDE BIT(3) /* 0: use topology token
* 1: override topology
*/
#define SOF_DBG_DYNAMIC_PIPELINES_ENABLE BIT(4) /* 0: use static pipelines
* 1: use dynamic pipelines
*/
#define SOF_DBG_DISABLE_MULTICORE BIT(5) /* schedule all pipelines/widgets
* on primary core
*/
#define SOF_DBG_PRINT_ALL_DUMPS BIT(6) /* Print all ipc and dsp dumps */ |
I installed
In
What could I be doing wrong? And to be clear, audio works perfectly with the 5.15.13 kernel (same configuration), no matter how many times I suspend/resume (either by closing the lid or Arch official kernel is now at 5.16.arch1-1, and I confirmed that audio breaks on suspend/resume, and it also worked with the previous official kernel. |
@specious
These are then populated with the binaries and links. |
got the same issue! workaround to avoid reboot: sudo rmmod snd_sof_pci_intel_cnl
sudo modprobe snd_sof_pci_intel_cnl |
If the module is built into the kernel, is there also a way to reinitialize it? |
we don't support this case due to dependencies with the firmware loading from the filesystem. The SOF driver has to be module-based. Can you share your kernel config please? |
My kernel configuration: config-linux-5.16-20220118.txt Although all drivers are built in, everything works perfectly with the 5.15.13 kernel, and until a sleep/wake also on 5.16.0. I was simply wondering if there's any way to get the driver to reinitialize without doing an |
I have same problem on opensuse - https://bugzilla.suse.com/show_bug.cgi?id=1195027 |
Hi! I have exactly the same issue but with |
You can unbind and rebind via sysfs. It's a hard-way, equivalent with the device hot-unplug/plug the PCI device, so it might hit other bugs, though. |
@dumprop @carmilso do you guys see the same line in your dmesg ?
That shows the HDA0.OUT widget loading message. This may point to some IP programming flow in FW that is failing when we try and use that HDA stream. |
Yes, unless I can't see
(on boot, if it's make sense)
(after resume, so there are no anything related to mei_hdcp) |
Hi,
to get my audio to work after wakeup from suspend. This is my dmesg:
Environment I am running a Lenovo Yoga 7 slim with kernel |
A similar bug report on bugzilla.kernel.org https://bugzilla.kernel.org/show_bug.cgi?id=215535 It suggests that the first bad commit is 5fcdbb2d45df6afb654674379546996b0027aa3e |
@plbossart @ranj063 is there a kernel config or module option that can disable dynamic pipelines so we can root cause and workaround atm ? |
Hi, While trying to reproduce a different issue I think I did hit this issue: In short: 5.16.1-artix1-1 kernel
stopping aplay and starting it again will fail and I have this in the dmesg:
Checked that vanilla 5.16 and 5.16.1 also have the same issue, but 5.17-rc1 does not. With some bisecting
I ended up backporting the attached patches to 5.16.1 from 5.17-rc1 and the resume issue is resolved: @ranj063, @plbossart, @kv2019i I'll try to find a simpler way to fix it, but this is a good start. dmesg from the start of the first playback to resume: dmesg.txt |
this 96da174024b9c63bd5d3358668d0bc12677be877 (ASoC: SOF: handle paused streams during system suspend) commit added in 5.16.3 - https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.16.3 |
@galibozek, 5.16.3 appears to be working correctly, thanks for the heads up! |
Yes, now I don't notice such a problem |
Closing since resolved with kernel update. |
Occasionally audio stops working after waking from sleep. This has been addressed in kernel 5.16 but since we're still pointed at 5.15 we can use this as a temporary workaround. thesofproject/sof#5168
Sound is not restored on suspend/resume with the recent 5.16-rc7 kernel.
This is the kernel log on wake:
It works perfectly with the 5.15.13 kernel.
Perhaps it has something to do with the recent changes.
Impact
Annoyance (need to reboot to restore sound)
Environment
This is on a Thinkpad X1 Carbon gen 8 with Intel Comet Lake PCH-LP cAVS audio.
Log output
dmesg.txt
The text was updated successfully, but these errors were encountered: