ASoC: SOF: Intel: hda: use hdac_ext fine-grained link management
authorKai Vehmanen <kai.vehmanen@linux.intel.com>
Fri, 5 Feb 2021 18:46:29 +0000 (20:46 +0200)
committerTakashi Iwai <tiwai@suse.de>
Mon, 8 Feb 2021 14:56:51 +0000 (15:56 +0100)
commit87fc20e4a0cbc01fdfc23aeba93f8ce2fc3dccda
tree176460b7a50aa3b8c1a82feb8b17e741e64f6049
parentf9e5fd1b666e9d34c94b91808bda02c2d4d00776
ASoC: SOF: Intel: hda: use hdac_ext fine-grained link management

Opt-in to use snd_hdac_ext_bus_link_power() to manage HDA link
power up/down events.

This allows to reduce power consumption in cases where some HDA codecs
are suspended, but other child devices (HDA or non-HDA codecs) remain
active and controller itself remains in active state.

By using snd_hdac_ext_bus_link_power(), the individual HDA links can be
powered off and if all HDA codecs are powered down, the command DMA can
also be shut down.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Acked-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20210205184630.1938761-3-kai.vehmanen@linux.intel.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/soc/sof/intel/hda-bus.c