[alsa-devel] [PATCH 01/11] drm/i915: Fix runtime PM for LPE audio
Takashi Iwai
tiwai at suse.de
Fri Apr 28 10:15:52 CEST 2017
On Thu, 27 Apr 2017 18:02:20 +0200,
ville.syrjala at linux.intel.com wrote:
>
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> Not calling pm_runtime_enable() means that runtime PM can't be
> enabled at all via sysfs. So we definitely need to call it
> from somewhere.
>
> Calling it from the driver seems like a bad idea because it
> would have to be paired with a pm_runtime_disable() at driver
> unload time, otherwise the core gets upset. Also if there's
> no LPE audio driver loaded then we couldn't runtime suspend
> i915 either.
>
> So it looks like a better plan is to call it from i915 when
> we register the platform device. That seems to match how
> pci generally does things. I cargo culted the
> pm_runtime_forbid() and pm_runtime_set_active() calls from
> pci as well.
>
> The exposed runtime PM API is massive an thorougly misleading, so
> I don't actually know if this is how you're supposed to use the API
> or not. But it seems to work. I can now runtime suspend i915 again
> with or without the LPE audio driver loaded, and reloading the
> LPE audio driver also seems to work.
>
> Note that powertop won't auto-tune runtime PM for platform devices,
> which is a little annoying. So I'm not sure that leaving runtime
> PM in "on" mode by default is the best choice here. But I've left
> it like that for now at least.
The reason I didn't proactively turn on the runtime PM was that it
often caused a few seconds of pause to the A/V receivers before
actually starting playing.
There is a planned feature to keep sending the silent stream even
after stopping the stream, but it's not implemented yet.
> Also remove the comment about there not being much benefit from
> LPE audio runtime PM. Not allowing runtime PM blocks i915 runtime
> PM, which will also block s0ix, and that could have a measurable
> impact on power consumption.
>
> Cc: Takashi Iwai <tiwai at suse.de>
> Cc: Pierre-Louis Bossart <pierre-louis.bossart at linux.intel.com>
> Fixes: 0b6b524f3915 ("ALSA: x86: Don't enable runtime PM as default")
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
Reviewed-by: Takashi Iwai <tiwai at suse.de>
IMO, this should be tagged with Cc to stable.
thanks,
Takashi
More information about the Alsa-devel
mailing list