linux_dsm_epyc7002/sound/soc/sof/intel
Ranjani Sridharan bdf4ad3fd0
ASoC: SOF: Intel: hda: assign link DMA channel at run-time
The recommended HDA HW programming sequence for setting
the DMA format requires that the link DMA and host DMA
channels be coupled before setting the format. This
change means that host DMA or link DMA channels be
reserved even if only one is used.

Statically assigned link DMA channels would mean that
all the corresponding host DMA channels will need to be
reserved, leaving only a few channels available at run-time.
So, the suggestion here is to switch to dynamically assigning
both host DMA channels and link DMA channels are run-time.

The host DMA channel is assigned when the pcm
is opened as before. While choosing the link DMA channel,
if the host DMA channel corresponding to the link DMA channel
is already taken, the proposed method checks to make
sure that the BE is connected to the FE that has been assigned
this host DMA channel. Once the link DMA channel is assigned,
an IPC is sent to the DSP to set the link DMA channel.

The link DMA channel is freed during hw_free() and also in the
SUSPEND trigger callback. It will be re-assigned when hw_params
are set upon resume.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2019-06-17 13:37:16 +01:00
..
apl.c ASoC: SOF: Intel: APL: add ipc dump function 2019-05-03 15:02:43 +09:00
bdw.c ASoC: SOF: fix DSP oops definitions in FW ABI 2019-06-03 17:56:38 +01:00
byt.c Merge branch 'asoc-5.2' into asoc-5.3 2019-06-03 18:38:15 +01:00
cnl.c ASoC: SOF: intel: extend IPC dump information 2019-06-13 19:53:57 +01:00
hda-bus.c ASoC: SOF: Intel: hda: set bus->idx as 0 2019-05-03 14:58:35 +09:00
hda-codec.c ASoC: SOF: Intel: Add support for HDAudio codecs 2019-04-28 02:51:27 +09:00
hda-ctrl.c ASoC: SOF: Intel: hda: fix the hda init chip 2019-05-28 15:49:09 +01:00
hda-dai.c ASoC: SOF: Intel: hda: assign link DMA channel at run-time 2019-06-17 13:37:16 +01:00
hda-dsp.c ASoC: SOF: intel: hda: add hw_params_upon_resume flag for hda stream 2019-05-03 15:01:45 +09:00
hda-ipc.c ASoC: SOF: Intel: ipc: don't check for HIPCCTL register value 2019-06-03 17:49:17 +01:00
hda-loader.c ASoC: SOF: Intel: hda: set I2S slave before enabling DSP 2019-05-03 14:58:11 +09:00
hda-pcm.c ASoC: SOF: Intel: hda-pcm: remove useless dependency on hdac_ext 2019-05-03 14:58:48 +09:00
hda-stream.c ASoC: SOF: Intel: hda: save handle to sdev in sof_intel_hda_stream 2019-06-17 13:36:11 +01:00
hda-trace.c ASoC: SOF: Intel: Add Intel specific HDA trace operations 2019-04-28 02:51:23 +09:00
hda.c ASoC: SOF: intel: extend IPC dump information 2019-06-13 19:53:57 +01:00
hda.h ASoC: SOF: Intel: hda: add new macro hstream_to_sof_hda_stream() 2019-06-17 13:36:32 +01:00
intel-ipc.c ASoC: SOF: Intel: Add legacy IPC support 2019-04-28 02:50:40 +09:00
Kconfig Linux 5.2-rc1 2019-05-20 11:53:50 +01:00
Makefile ASoC: SOF: Add Build support for SOF core and Intel drivers 2019-04-28 02:51:46 +09:00
shim.h ASoC: SOF: Intel: hda: add SSP info to the chip info struct 2019-05-03 14:57:39 +09:00