[alsa-devel] [PATCH 3/4] ALSA: hda - Fix runtime PM check

Takashi Iwai tiwai at suse.de
Thu May 23 10:09:37 CEST 2013


At Thu, 23 May 2013 07:53:00 +0000,
Wang, Xingchao wrote:
> 
> Hi Takashi,
> 
> > -----Original Message-----
> > From: Takashi Iwai [mailto:tiwai at suse.de]
> > Sent: Thursday, May 23, 2013 2:03 PM
> > To: Wang Xingchao
> > Cc: daniel at ffwll.ch; alsa-devel at alsa-project.org;
> > intel-gfx at lists.freedesktop.org; david.henningsson at canonical.com; Girdwood,
> > Liam R; Li, Jocelyn; Wang, Xingchao
> > Subject: Re: [PATCH 3/4] ALSA: hda - Fix runtime PM check
> > 
> > At Thu, 23 May 2013 01:04:15 +0800,
> > Wang Xingchao wrote:
> > >
> > > The device can support runtime PM no matter whether it support signal
> > > wakeup or not. For some chips like Haswell which doesnot support PME
> > > by default, this patch let haswell Display HD-A controller enter
> > > runtime suspend, and bring more power saving whith power-well feature
> > > enabled.
> > > Signed-off-by: Wang Xingchao <xingchao.wang at linux.intel.com>
> > 
> > This change has nothing to do with the power well fix, thus no reason to put in
> > the series.
> 
> But power-well feature depends on HD-A controller's power-save enabling, without this patch,
> Power-well would not be shutdown automatically, thus cause more
> power.

Then the fix order is wrong.  Fix this first, then the rest.


Takashi

> So I thought it should
> be part of the patchset. Anyway it's a more general fix not only for Haswell, so better to leave it alone.
> I will split it from the patchset in next version.
> 
> Thanks
> --xingchao
> > 
> > 
> > Takashi
> > 
> > > ---
> > >  sound/pci/hda/hda_intel.c | 4 ++--
> > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
> > > index 54c7c22..f20a88c 100644
> > > --- a/sound/pci/hda/hda_intel.c
> > > +++ b/sound/pci/hda/hda_intel.c
> > > @@ -3755,7 +3755,7 @@ static int azx_probe(struct pci_dev *pci,
> > >  			goto out_free_power;
> > >  	}
> > >
> > > -	if (pci_dev_run_wake(pci))
> > > +	if (chip->driver_caps & AZX_DCAPS_PM_RUNTIME)
> > >  		pm_runtime_put_noidle(&pci->dev);
> > >
> > >  	dev++;
> > > @@ -3834,7 +3834,7 @@ static void azx_remove(struct pci_dev *pci)
> > >  	struct snd_card *card = pci_get_drvdata(pci);
> > >  	struct azx *chip = card->private_data;
> > >
> > > -	if (pci_dev_run_wake(pci))
> > > +	if (chip->driver_caps & AZX_DCAPS_PM_RUNTIME)
> > >  		pm_runtime_get_noresume(&pci->dev);
> > >
> > >  	if (card)
> > > --
> > > 1.8.1.2
> > >
> 


More information about the Alsa-devel mailing list