linux/sound/hda
Kai Vehmanen f9e5fd1b66 ALSA: hda: add link_power op to hdac_bus_ops
The extended HDA bus (hdac_ext) provides interfaces for more
fine-grained control of individual links than what plain HDA
provides for. Links can be powered off when they are not used and if
all links are released, controller can shut down the command DMA.

These interfaces are currently not used by common HDA codec drivers.
When a HDA codec is runtime suspended, it calls snd_hdac_codec_link_down(),
but there is no link to the HDA extended bus, and on controller side
the links are shut down only when all codecs are suspended.

This patch adds link_power() to hdac_bus ops. Controllers using the HDA
extended core, can use this to plug in snd_hdac_ext_bus_link_power() to
implement more fine-grained control of link power.

No change is needed for plain HDA controllers nor to existing HDA
codec drivers.

Co-developed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
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-2-kai.vehmanen@linux.intel.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2021-02-08 15:56:35 +01:00
..
ext ALSA: hda: add link_power op to hdac_bus_ops 2021-02-08 15:56:35 +01:00
array.c treewide: Add SPDX license identifier for missed files 2019-05-21 10:50:45 +02:00
hda_bus_type.c treewide: Add SPDX license identifier for more missed files 2019-05-21 10:50:45 +02:00
hdac_bus.c ALSA: hda: add link_power op to hdac_bus_ops 2021-02-08 15:56:35 +01:00
hdac_component.c ALSA: hda/i915 - fix list corruption with concurrent probes 2020-10-09 16:46:04 +02:00
hdac_controller.c ALSA: hda: add link_power op to hdac_bus_ops 2021-02-08 15:56:35 +01:00
hdac_device.c ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled 2020-09-02 19:26:39 +02:00
hdac_i915.c ALSA: hda/i915 - fix list corruption with concurrent probes 2020-10-09 16:46:04 +02:00
hdac_regmap.c ALSA: hda: Manage concurrent reg access more properly 2020-01-13 13:40:41 +01:00
hdac_stream.c ALSA: hda: Use DIV_ROUND_UP()/roundup() instead of open-coding it 2020-12-25 09:11:51 +01:00
hdac_sysfs.c ALSA: hda: Constify static attribute_group 2021-01-31 09:50:11 +01:00
hdmi_chmap.c ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs 2020-02-18 10:15:41 +01:00
intel-dsp-config.c ALSA: hda: intel-dsp-config: add PCI id for TGL-H 2021-01-25 10:37:37 +01:00
intel-nhlt.c ASoC: Updates for v5.8 2020-06-01 20:26:07 +02:00
Kconfig ALSA: hda: Allow setting preallocation again for x86 2020-04-13 22:22:28 +02:00
local.h ALSA: hda: Unexport some local helper functions 2020-05-16 08:29:49 +02:00
Makefile ALSA: hda: add Intel DSP configuration / probe code 2019-10-23 06:31:37 +02:00
trace.c
trace.h