linux/sound/pci/hda
Kai-Heng Feng f5dac54d9d ALSA: hda: Separate runtime and system suspend
Both pm_runtime_force_suspend() and pm_runtime_force_resume() have
some implicit checks, so it can make code flow more straightforward if
we separate runtime and system suspend callbacks.

High Definition Audio Specification, 4.5.9.3 Codec Wake From System S3
states that codec can wake the system up from S3 if WAKEEN is toggled.
Since HDA controller has different wakeup settings for runtime and
system susend, we also need to explicitly disable direct-complete which
can be enabled automatically by PCI core. In addition to that, avoid
waking up codec if runtime resume is for system suspend, to not break
direct-complete for codecs.

While at it, also remove AZX_DCAPS_SUSPEND_SPURIOUS_WAKEUP, as the
original bug commit a6630529ae ("ALSA: hda: Workaround for spurious
wakeups on some Intel platforms") solves doesn't happen with this
patch.

Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Link: https://lore.kernel.org/r/20201027130038.16463-3-kai.heng.feng@canonical.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2020-10-28 09:43:08 +01:00
..
ca0132_regs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 32 2019-05-24 17:27:10 +02:00
hda_auto_parser.c ALSA: hda: auto_parser: remove shadowed variable declaration 2020-09-03 09:27:00 +02:00
hda_auto_parser.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 46 2019-05-24 17:27:12 +02:00
hda_beep.c ALSA: Use fallthrough pseudo-keyword 2020-07-09 13:01:29 +02:00
hda_beep.h ALSA: hda - Use standard device registration for beep 2019-01-29 18:28:09 +01:00
hda_bind.c ALSA: hda - Fix pending unsol events at shutdown 2019-10-28 12:44:28 +01:00
hda_codec.c ALSA: hda: Refactor codec PM to use direct-complete optimization 2020-10-28 09:42:46 +01:00
hda_controller_trace.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hda_controller.c ALSA: hda: Enable sync-write operation as default for all controllers 2020-06-19 12:05:02 +02:00
hda_controller.h ALSA: hda: Separate runtime and system suspend 2020-10-28 09:43:08 +01:00
hda_eld.c ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs 2020-02-18 10:15:41 +01:00
hda_generic.c ALSA: pci: delete repeated words in comments 2020-08-06 09:30:02 +02:00
hda_generic.h ALSA: Replace the word "slave" in vmaster API 2020-07-20 10:10:47 +02:00
hda_hwdep.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 32 2019-05-24 17:27:10 +02:00
hda_intel_trace.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hda_intel.c ALSA: hda: Separate runtime and system suspend 2020-10-28 09:43:08 +01:00
hda_intel.h ALSA: hda: Release resources at error in delayed probe 2020-04-13 18:02:36 +02:00
hda_jack.c ALSA: hda - Fix the return value if cb func is already registered 2020-10-22 08:17:02 +02:00
hda_jack.h ALSA: hda: (cosmetic) align function parameters 2020-09-03 09:27:11 +02:00
hda_local.h ALSA: hda: (cosmetic) align function parameters 2020-09-03 09:27:11 +02:00
hda_proc.c ALSA: hda: More constifications 2020-01-05 16:14:32 +01:00
hda_sysfs.c ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs 2020-02-18 10:15:41 +01:00
hda_tegra.c ALSA: hda/tegra: Program WAKEEN register for Tegra 2020-08-25 09:32:42 +02:00
hp_x360_helper.c ALSA: hda/realtek - Fixup for HP x360 laptops with B&O speakers 2018-05-29 22:33:37 +02:00
Kconfig ALSA: hda/hdmi: Add Intel silent stream support 2020-07-07 12:42:35 +02:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
patch_analog.c ALSA: hda/analog - Minor optimization for SPDIF mux connections 2020-01-16 17:29:17 +01:00
patch_ca0110.c ALSA: hda: Unify get_response handling 2019-12-13 14:36:52 +01:00
patch_ca0132.c ALSA: hda/ca0132: make some const arrays static, makes object smaller 2020-10-17 09:58:59 +02:00
patch_cirrus.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 32 2019-05-24 17:27:10 +02:00
patch_cmedia.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 32 2019-05-24 17:27:10 +02:00
patch_conexant.c ALSA: Use fallthrough pseudo-keyword 2020-07-09 13:01:29 +02:00
patch_hdmi.c ALSA: hda/hdmi: fix incorrect locking in hdmi_pcm_close 2020-10-13 18:34:35 +02:00
patch_realtek.c ALSA: hda/realtek - Fixed HP headset Mic can't be detected 2020-10-28 09:04:28 +01:00
patch_si3054.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 32 2019-05-24 17:27:10 +02:00
patch_sigmatel.c ALSA: pci: delete repeated words in comments 2020-08-06 09:30:02 +02:00
patch_via.c ALSA: hda: Manage concurrent reg access more properly 2020-01-13 13:40:41 +01:00
thinkpad_helper.c ALSA: hda/realtek: Use the new vmaster mute LED helper 2020-06-18 13:23:49 +02:00