From: Kai-Heng Feng <kai.heng.feng@canonical.com> To: tiwai@suse.com Cc: perex@perex.cz, hui.wang@canonical.com, kai.vehmanen@linux.intel.com, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, Kai-Heng Feng <kai.heng.feng@canonical.com> Subject: [PATCH v2 0/4] HDA controller and PM cleanups Date: Tue, 27 Oct 2020 13:39:57 +0800 [thread overview] Message-ID: <20201027054001.1800-1-kai.heng.feng@canonical.com> (raw) While working on the issue "ALSA: hda: fix jack detection with Realtek codecs when in D3", I've found using pm_runtime_force_{suspend,resume}() have surprising behavior, specifically, pm_runtime_need_not_resume() uses pm_runtime_need_not_resume() to avoid calling resume callback, so jackpoll was used to really power up the codec. We can use direct-complete to do the keep the codec suspended throughout the system PM flow, namely, keep the codec suspended all the way, unless the codec needs to be woken up after resume. For HDA controller, PCI core may enable direct-complete for it if conditions are met. So make runtime and system PM distinctive to always apply correct wake up setting. At least point, hopefully all runtime PM issues are solved, let's enable runtime PM by default again. Kai-Heng Feng (4): ALSA: hda: Refactor codec PM to use direct-complete optimization ALSA: hda: Stop mangling PCI IRQ ALSA: hda: Separate runtime and system suspend ALSA: hda: Reinstate runtime_allow() for all hda controllers sound/pci/hda/hda_codec.c | 45 +++++++++++++------- sound/pci/hda/hda_controller.h | 3 +- sound/pci/hda/hda_intel.c | 77 ++++++++++++++++------------------ 3 files changed, 67 insertions(+), 58 deletions(-) -- 2.17.1
WARNING: multiple messages have this Message-ID (diff)
From: Kai-Heng Feng <kai.heng.feng@canonical.com> To: tiwai@suse.com Cc: alsa-devel@alsa-project.org, kai.vehmanen@linux.intel.com, linux-kernel@vger.kernel.org, hui.wang@canonical.com, Kai-Heng Feng <kai.heng.feng@canonical.com> Subject: [PATCH v2 0/4] HDA controller and PM cleanups Date: Tue, 27 Oct 2020 13:39:57 +0800 [thread overview] Message-ID: <20201027054001.1800-1-kai.heng.feng@canonical.com> (raw) While working on the issue "ALSA: hda: fix jack detection with Realtek codecs when in D3", I've found using pm_runtime_force_{suspend,resume}() have surprising behavior, specifically, pm_runtime_need_not_resume() uses pm_runtime_need_not_resume() to avoid calling resume callback, so jackpoll was used to really power up the codec. We can use direct-complete to do the keep the codec suspended throughout the system PM flow, namely, keep the codec suspended all the way, unless the codec needs to be woken up after resume. For HDA controller, PCI core may enable direct-complete for it if conditions are met. So make runtime and system PM distinctive to always apply correct wake up setting. At least point, hopefully all runtime PM issues are solved, let's enable runtime PM by default again. Kai-Heng Feng (4): ALSA: hda: Refactor codec PM to use direct-complete optimization ALSA: hda: Stop mangling PCI IRQ ALSA: hda: Separate runtime and system suspend ALSA: hda: Reinstate runtime_allow() for all hda controllers sound/pci/hda/hda_codec.c | 45 +++++++++++++------- sound/pci/hda/hda_controller.h | 3 +- sound/pci/hda/hda_intel.c | 77 ++++++++++++++++------------------ 3 files changed, 67 insertions(+), 58 deletions(-) -- 2.17.1
next reply other threads:[~2020-10-27 5:40 UTC|newest] Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-10-27 5:39 Kai-Heng Feng [this message] 2020-10-27 5:39 ` [PATCH v2 0/4] HDA controller and PM cleanups Kai-Heng Feng 2020-10-27 5:39 ` [PATCH v2 1/4] ALSA: hda: Refactor codec PM to use direct-complete optimization Kai-Heng Feng 2020-10-27 5:39 ` Kai-Heng Feng 2020-10-27 5:39 ` [PATCH v2 2/4] ALSA: hda: Stop mangling PCI IRQ Kai-Heng Feng 2020-10-27 5:39 ` Kai-Heng Feng 2020-10-27 7:36 ` Takashi Iwai 2020-10-27 7:36 ` Takashi Iwai 2020-10-27 7:42 ` Kai-Heng Feng 2020-10-27 7:42 ` Kai-Heng Feng 2020-10-27 5:40 ` [PATCH v2 3/4] ALSA: hda: Separate runtime and system suspend Kai-Heng Feng 2020-10-27 5:40 ` Kai-Heng Feng 2020-10-27 7:46 ` Takashi Iwai 2020-10-27 7:46 ` Takashi Iwai 2020-10-27 8:12 ` Takashi Iwai 2020-10-27 8:12 ` Takashi Iwai 2020-10-27 8:15 ` Takashi Iwai 2020-10-27 8:15 ` Takashi Iwai 2020-10-27 8:24 ` Kai-Heng Feng 2020-10-27 8:24 ` Kai-Heng Feng 2020-10-27 11:38 ` Kai Vehmanen 2020-10-27 11:38 ` Kai Vehmanen 2020-10-27 12:04 ` Kai-Heng Feng 2020-10-27 12:04 ` Kai-Heng Feng 2020-10-27 5:40 ` [PATCH v2 4/4] ALSA: hda: Reinstate runtime_allow() for all hda controllers Kai-Heng Feng 2020-10-27 5:40 ` Kai-Heng Feng
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20201027054001.1800-1-kai.heng.feng@canonical.com \ --to=kai.heng.feng@canonical.com \ --cc=alsa-devel@alsa-project.org \ --cc=hui.wang@canonical.com \ --cc=kai.vehmanen@linux.intel.com \ --cc=linux-kernel@vger.kernel.org \ --cc=perex@perex.cz \ --cc=tiwai@suse.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.