alistair23-linux/sound/pci/hda
Takashi Iwai cc72da7d4d ALSA: hda - Use standard runtime PM for codec power-save control
Like the previous transition of suspend/resume, now move the
power-save code to the standard runtime PM.  As usual for runtime PM,
it's a bit tricky, but this simplified codes a lot in the end.

For keeping the usage compatibility, power_save module option still
controls the whole power-saving behavior on all codecs.  The value is
translated to pm_runtime_*_autosuspend() and pm_runtime_allow() /
pm_runtime_forbid() calls.

snd_hda_power_up() and snd_hda_power_down() are translated to
pm_runtime_get_sync() and pm_runtime_put_autosuspend(), respectively.
Since we can do call pm_runtime_get_sync() more reliably, the sync
version is used always and snd_hda_power_up_d3wait() is dropped.
Another slight difference is that snd_hda_power_up()/down() don't call
runtime_pm code during the suspend/resume transition phase.  Calling
them there isn't safe unlike our own code, resulted in unexpected
behavior (endless wakeups).

The hda_power_count tracepoint was removed, as it doesn't match well
with the new code.

Last but not least, we need to set ignore_children flag in the parent
dev.power field so that the runtime PM of the controller chip won't
get confused.  The notification is still done in the bus pm_notify
callback.  We'll get rid of this hack in the later patch.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2015-02-23 09:16:07 +01:00
..
ca0132_regs.h ALSA: hda: ca0132_regs.h: Fix typo in include guard 2014-08-22 11:24:11 +02:00
dell_wmi_helper.c ALSA: hda - add mic mute led hook for dell machines 2014-07-31 09:21:42 +02:00
hda_auto_parser.c ALSA: hda - Debug output which type of fixup was selected 2015-01-07 15:48:57 +01:00
hda_auto_parser.h ALSA: hda - Sort input pins depending on amp caps 2014-09-23 15:57:32 +02:00
hda_beep.c ALSA: hda - Decouple PCM and hwdep devices from codec object 2015-02-23 09:16:06 +01:00
hda_beep.h ALSA: hda - Fix registration of beep input device 2014-02-28 14:02:21 +01:00
hda_bind.c ALSA: hda - Move codec suspend/resume to codec driver 2015-02-23 09:16:07 +01:00
hda_codec.c ALSA: hda - Use standard runtime PM for codec power-save control 2015-02-23 09:16:07 +01:00
hda_codec.h ALSA: hda - Use standard runtime PM for codec power-save control 2015-02-23 09:16:07 +01:00
hda_controller.c ALSA: hda - Use standard runtime PM for codec power-save control 2015-02-23 09:16:07 +01:00
hda_controller.h ALSA: hda - Split azx_codec_create() to two phases 2015-02-19 21:41:40 +01:00
hda_eld.c ALSA: hda - Correct kerneldoc comments 2014-10-29 15:06:54 +01:00
hda_generic.c ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
hda_generic.h ALSA: hda - Make add_stereo_mix_input flag tristate 2014-12-15 13:46:08 +01:00
hda_hwdep.c ALSA: hda - Decouple PCM and hwdep devices from codec object 2015-02-23 09:16:06 +01:00
hda_i915.c ALSA: hda - Fold hda_priv.h into hda_controller.h 2015-02-19 21:41:25 +01:00
hda_intel.c ALSA: hda - Use standard runtime PM for codec power-save control 2015-02-23 09:16:07 +01:00
hda_intel.h ALSA: hda - Fold hda_priv.h into hda_controller.h 2015-02-19 21:41:25 +01:00
hda_intel_trace.h ALSA: hda - Add tracepoints to HD-audio controller driver 2012-10-30 10:39:59 +01:00
hda_jack.c ALSA: hda - More kerneldoc comments 2014-10-29 16:03:58 +01:00
hda_jack.h ALSA: hda - More kerneldoc comments 2014-10-29 16:03:58 +01:00
hda_local.h ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
hda_proc.c ALSA: hda - Add parameter for dumping processing coefficients 2014-01-29 16:39:13 +01:00
hda_sysfs.c ALSA: hda - Fix typos in snd_hda_get_int_hint() kerneldoc comments 2014-12-15 13:39:10 +01:00
hda_tegra.c ALSA: hda - Move codec suspend/resume to codec driver 2015-02-23 09:16:07 +01:00
hda_trace.h ALSA: hda - Use standard runtime PM for codec power-save control 2015-02-23 09:16:07 +01:00
Kconfig ALSA: hda - Select INPUT for Realtek HD-audio codec 2015-01-15 10:21:50 +01:00
Makefile ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
patch_analog.c ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
patch_ca0110.c ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
patch_ca0132.c ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
patch_cirrus.c ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
patch_cmedia.c ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
patch_conexant.c ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
patch_hdmi.c ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
patch_realtek.c ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
patch_si3054.c ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
patch_sigmatel.c ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
patch_via.c ALSA: hda - Bind codecs via standard bus 2015-02-23 09:16:06 +01:00
thinkpad_helper.c ALSA: hda - Replace with standard printk 2014-02-25 12:27:32 +01:00