At Tue, 26 Nov 2013 13:32:11 +0000, Lin, Mengdong wrote:
-----Original Message----- From: alsa-devel-bounces@alsa-project.org [mailto:alsa-devel-bounces@alsa-project.org] On Behalf Of Takashi Iwai Sent: Tuesday, November 26, 2013 8:34 PM To: alsa-devel@alsa-project.org Subject: Re: [alsa-devel] [PATCH 5/5] ALSA: hda - Make device D3 during runtime suspend
At Tue, 26 Nov 2013 09:29:13 +0100, Takashi Iwai wrote:
We can make the device D3 for saving more power during the runtime suspend. Meanwhile, I observed that Haswell HDMI codecs gets corrupted ELD bytes when woken up from runtime suspend with D3. As a quick workaround, exclude these chips from D3.
Scratch this. After reading the PCI core code, I found this patch is just a nonsense.
Could you share more info here?
On Haswell, the HDMI audio controller (PCI device 3) and codec are in display power well, so the power saving is achieved by releasing and turning off the display power well.
But at least for legacy audio, we need the controller (PCI device 1b) to enter D3 at runtime so PCI driver will call ACPI and BIOS can know the legacy audio controller is in D3 and power down the on-board codec.
The D3 state should be achieved by the runtime suspend code of PCI driver itself, thus the driver doesn't have to do it. For details, look at pci_pm_runtime_suspend() and pci_finish_runtime_suspend().
Takashi