summaryrefslogtreecommitdiff
path: root/drivers/soundwire/stream.c
diff options
context:
space:
mode:
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>2022-01-26 09:17:01 +0800
committerVinod Koul <vkoul@kernel.org>2022-02-11 12:15:36 +0530
commit2811221a3f64511363b830702ec112ee5a78f85b (patch)
treed84f370801b19fbcad074486c5af80929f0b695e /drivers/soundwire/stream.c
parent6ccf3292e4ff1d2244677239eba27532bd7b71f9 (diff)
soundwire: stream: split port allocation and configuration loops
Split loops before moving the allocation and configuration to separate functions. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Reviewed-by: Rander Wang <rander.wang@intel.com> Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com> Link: https://lore.kernel.org/r/20220126011715.28204-6-yung-chuan.liao@linux.intel.com Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/soundwire/stream.c')
-rw-r--r--drivers/soundwire/stream.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/soundwire/stream.c b/drivers/soundwire/stream.c
index 49d3a8d2fa31..b97c59e71bdb 100644
--- a/drivers/soundwire/stream.c
+++ b/drivers/soundwire/stream.c
@@ -1232,10 +1232,14 @@ static int sdw_master_port_config(struct sdw_bus *bus,
p_rt = sdw_port_alloc(&m_rt->port_list);
if (!p_rt)
return -ENOMEM;
+ }
+ i = 0;
+ list_for_each_entry(p_rt, &m_rt->port_list, port_node) {
ret = sdw_port_config(p_rt, port_config, i);
if (ret < 0)
return ret;
+ i++;
}
return 0;
@@ -1254,7 +1258,10 @@ static int sdw_slave_port_config(struct sdw_slave *slave,
p_rt = sdw_port_alloc(&s_rt->port_list);
if (!p_rt)
return -ENOMEM;
+ }
+ i = 0;
+ list_for_each_entry(p_rt, &s_rt->port_list, port_node) {
/*
* TODO: Check valid port range as defined by DisCo/
* slave
@@ -1266,6 +1273,7 @@ static int sdw_slave_port_config(struct sdw_slave *slave,
ret = sdw_port_config(p_rt, port_config, i);
if (ret < 0)
return ret;
+ i++;
}
return 0;