[alsa-devel] [PATCH v5 1/1] ALSA: hda - add runtime PM support
tiwai at suse.de
Thu Aug 23 14:24:34 CEST 2012
At Thu, 23 Aug 2012 12:00:53 +0200,
Takashi Iwai wrote:
> At Thu, 23 Aug 2012 17:32:30 +0800,
> mengdong.lin at intel.com wrote:
> > From: Mengdong Lin <mengdong.lin at intel.com>
> > Runtime PM can bring more power saving:
> > - When the controller is suspended, its parent device will also have a chance
> > to suspend.
> > - PCI subsystem can choose the lowest power state the controller can signal
> > wake up from. This state can be D3cold on platforms with ACPI PM support.
> > And runtime PM can provide a gerneral sysfs interface for a system policy
> > manager.
> > Runtime PM support is based on current HDA power saving implementation. The user
> > can enable runtime PM on platfroms that provide acceptable latency on transition
> > from D3 to D0.
> > Details:
> > - When both power saving and runtime PM are enabled:
> > -- If a codec supports 'stop-clock' in D3, it will request suspending the
> > controller after it enters D3 and request resuming the controller before
> > back to D0. Thus the controller will be suspended only when all codecs are
> > suspended and support stop-clock in D3.
> > -- User IO operations and HW wakeup signal can resume the controller back to
> > D0.
> > - If runtime PM is disabled, power saving just works as before.
> > - If power saving is disabled, the controller won't be suspended because the
> > power usage counter can never be 0.
> > More about 'stop-clock' feature:
> > If a codec can support targeted pass-through operations in D3 state when there
> > is no BCLK present on the link, it will set CLKSTOP flag in the supported power
> > states and report PS-ClkStopOk when entering D3 state. Please refer to HDA spec
> > section 22.214.171.124 Power state and 126.96.36.199 Supported Power State.
> > Signed-off-by: Mengdong Lin <mengdong.lin at intel.com>
> Thanks, the patch looks almost good, but it gives a build error when
> sound/pci/hda/hda_intel.c: In function ‘azx_interrupt’:
> sound/pci/hda/hda_intel.c:1292:26: error: ‘struct dev_pm_info’ has no member named ‘runtime_status’
> sound/pci/hda/hda_intel.c: At top level:
> sound/pci/hda/hda_intel.c:2522:12: warning: ‘azx_runtime_suspend’ defined but not used [-Wunused-function]
> sound/pci/hda/hda_intel.c:2535:12: warning: ‘azx_runtime_resume’ defined but not used [-Wunused-function]
Never mind, I fixed this by myself and applied the patch.
More information about the Alsa-devel