From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Guneshwor Singh Date: Fri, 5 Aug 2016 16:35:34 +0530 Subject: [PATCH] ASoC: Intel: Aggregation fixes for masters other than 0 and 1 Change-Id: Ie26608b30f75c69d039ee17c5703ad1f79e88f00 Signed-off-by: Guneshwor Singh --- sound/soc/intel/skylake/skl-topology.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/sound/soc/intel/skylake/skl-topology.c b/sound/soc/intel/skylake/skl-topology.c index 95a2b6672dcb..6bd91744ee1a 100644 --- a/sound/soc/intel/skylake/skl-topology.c +++ b/sound/soc/intel/skylake/skl-topology.c @@ -1908,12 +1908,11 @@ struct skl_sdw_caps_cfg { * The port can have multiple settings so pick based on the PCM * parameters */ -#define SDW_MAX_MASTERS 4 static int skl_tplg_be_fill_pipe_params(struct snd_soc_dai *dai, struct skl_module_cfg *mconfig, struct skl_pipe_params *params) { - int i; + int i, j; struct nhlt_specific_cfg *cfg; struct skl_sdw_caps_cfg *sdw_cfg; struct skl *skl = get_skl_ctx(dai->dev); @@ -1935,12 +1934,14 @@ static int skl_tplg_be_fill_pipe_params(struct snd_soc_dai *dai, + (2 * (sizeof(u32)))); sdw_cfg->count = mconfig->sdw_agg.num_masters; + j = 0; for (i = 0; i < SDW_MAX_MASTERS; i++) { if (mconfig->sdw_agg.agg_data[i].ch_mask) { - sdw_cfg->data[i].ch_mask = + sdw_cfg->data[j].ch_mask = mconfig->sdw_agg.agg_data[i].ch_mask; - sdw_cfg->data[i].alh_stream_num = + sdw_cfg->data[j].alh_stream_num = mconfig->sdw_agg.agg_data[i].alh_stream_num; + j++; } } sdw_cfg->count = mconfig->sdw_agg.num_masters; -- https://clearlinux.org