[SRU] [G/OEM-5.6] [PATCH 0/4] Fix no headset sound after S3 on Intel HDA

Kai-Heng Feng kai.heng.feng at canonical.com
Tue Nov 17 16:54:25 UTC 2020


BugLink: https://bugs.launchpad.net/bugs/1904595

[Impact]
After system S3, hotplugging headset cannot produce any sound despite of
being auto-selected as audio output.

[Fix]
Avoid using pm_runtime_force_{suspend,resume} helpers to ensure codec
suspend/resume flow, and also ensure HDA driver and PCI set correct
wakeup settings.

[Test case]
Plug headset, unplug headset, switch audio ouput from speakers to HDMI
to let Intel HDA auto suspend. Suspend/resume the system, plug the
headset again, hear no sound.

With the patch series applied, the issue is gone.

[Where problems could occur]
If there is bad firmware/hardware that makes codec have system-wide
wakeup capability, direct-complete flow may trigger unwanted system
wakeup or even break system suspend. The series was tested on both AMD
and Intel platforms, with Realtek and Connexant codecs respectively.

Kai-Heng Feng (3):
  ALSA: hda: Refactor codec PM to use direct-complete optimization
  ALSA: hda: Separate runtime and system suspend
  ALSA: hda: Reinstate runtime_allow() for all hda controllers

Takashi Iwai (1):
  ALSA: hda: Workaround for spurious wakeups on some Intel platforms

 sound/pci/hda/hda_codec.c      | 45 +++++++++++++++++++-----------
 sound/pci/hda/hda_controller.h |  1 +
 sound/pci/hda/hda_intel.c      | 50 +++++++++++++++++++++++-----------
 3 files changed, 64 insertions(+), 32 deletions(-)

-- 
2.28.0




More information about the kernel-team mailing list