[alsa-devel] [PATCH 5/5] ALSA: hda - Make device D3 during runtime suspend

Takashi Iwai tiwai at suse.de
Tue Nov 26 14:53:46 CET 2013


At Tue, 26 Nov 2013 13:32:11 +0000,
Lin, Mengdong wrote:
> 
> > -----Original Message-----
> > From: alsa-devel-bounces at alsa-project.org
> > [mailto:alsa-devel-bounces at alsa-project.org] On Behalf Of Takashi Iwai
> > Sent: Tuesday, November 26, 2013 8:34 PM
> > To: alsa-devel at 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


More information about the Alsa-devel mailing list