Commit 1d905d35 authored by Pierre-Louis Bossart's avatar Pierre-Louis Bossart Committed by Vinod Koul

ASoC: SOF/soundwire: re-add substream in params_stream structure

An earlier simplification to only pass the direction is no longer
suitable, all the ACE2.x HDaudio DMA management relies on access to
the substream structure.

This patch is an iso-functionality change, the HDaudio DMA parts will
be provided separately.
Signed-off-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: default avatarRander Wang <rander.wang@intel.com>
Reviewed-by: default avatarRanjani Sridharan <ranjani.sridharan@linux.intel.com>
Signed-off-by: default avatarBard Liao <yung-chuan.liao@linux.intel.com>
Link: https://lore.kernel.org/r/20230515071042.2038-23-yung-chuan.liao@linux.intel.comSigned-off-by: default avatarVinod Koul <vkoul@kernel.org>
parent 32c3aa85
...@@ -643,7 +643,7 @@ intel_pdi_alh_configure(struct sdw_intel *sdw, struct sdw_cdns_pdi *pdi) ...@@ -643,7 +643,7 @@ intel_pdi_alh_configure(struct sdw_intel *sdw, struct sdw_cdns_pdi *pdi)
} }
static int intel_params_stream(struct sdw_intel *sdw, static int intel_params_stream(struct sdw_intel *sdw,
int stream, struct snd_pcm_substream *substream,
struct snd_soc_dai *dai, struct snd_soc_dai *dai,
struct snd_pcm_hw_params *hw_params, struct snd_pcm_hw_params *hw_params,
int link_id, int alh_stream_id) int link_id, int alh_stream_id)
...@@ -651,7 +651,7 @@ static int intel_params_stream(struct sdw_intel *sdw, ...@@ -651,7 +651,7 @@ static int intel_params_stream(struct sdw_intel *sdw,
struct sdw_intel_link_res *res = sdw->link_res; struct sdw_intel_link_res *res = sdw->link_res;
struct sdw_intel_stream_params_data params_data; struct sdw_intel_stream_params_data params_data;
params_data.stream = stream; /* direction */ params_data.substream = substream;
params_data.dai = dai; params_data.dai = dai;
params_data.hw_params = hw_params; params_data.hw_params = hw_params;
params_data.link_id = link_id; params_data.link_id = link_id;
...@@ -727,7 +727,7 @@ static int intel_hw_params(struct snd_pcm_substream *substream, ...@@ -727,7 +727,7 @@ static int intel_hw_params(struct snd_pcm_substream *substream,
dai_runtime->pdi = pdi; dai_runtime->pdi = pdi;
/* Inform DSP about PDI stream number */ /* Inform DSP about PDI stream number */
ret = intel_params_stream(sdw, substream->stream, dai, params, ret = intel_params_stream(sdw, substream, dai, params,
sdw->instance, sdw->instance,
pdi->intel_alh_id); pdi->intel_alh_id);
if (ret) if (ret)
...@@ -804,7 +804,7 @@ static int intel_prepare(struct snd_pcm_substream *substream, ...@@ -804,7 +804,7 @@ static int intel_prepare(struct snd_pcm_substream *substream,
sdw_cdns_config_stream(cdns, ch, dir, dai_runtime->pdi); sdw_cdns_config_stream(cdns, ch, dir, dai_runtime->pdi);
/* Inform DSP about PDI stream number */ /* Inform DSP about PDI stream number */
ret = intel_params_stream(sdw, substream->stream, dai, ret = intel_params_stream(sdw, substream, dai,
hw_params, hw_params,
sdw->instance, sdw->instance,
dai_runtime->pdi->intel_alh_id); dai_runtime->pdi->intel_alh_id);
......
...@@ -182,7 +182,7 @@ ...@@ -182,7 +182,7 @@
* firmware. * firmware.
*/ */
struct sdw_intel_stream_params_data { struct sdw_intel_stream_params_data {
int stream; struct snd_pcm_substream *substream;
struct snd_soc_dai *dai; struct snd_soc_dai *dai;
struct snd_pcm_hw_params *hw_params; struct snd_pcm_hw_params *hw_params;
int link_id; int link_id;
......
...@@ -94,7 +94,7 @@ static int sdw_params_stream(struct device *dev, ...@@ -94,7 +94,7 @@ static int sdw_params_stream(struct device *dev,
struct sdw_intel_stream_params_data *params_data) struct sdw_intel_stream_params_data *params_data)
{ {
struct snd_soc_dai *d = params_data->dai; struct snd_soc_dai *d = params_data->dai;
struct snd_soc_dapm_widget *w = snd_soc_dai_get_widget(d, params_data->stream); struct snd_soc_dapm_widget *w = snd_soc_dai_get_widget(d, params_data->substream->stream);
struct snd_sof_dai_config_data data = { 0 }; struct snd_sof_dai_config_data data = { 0 };
data.dai_index = (params_data->link_id << 8) | d->id; data.dai_index = (params_data->link_id << 8) | d->id;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment