Skip to content

Commit

Permalink
ASoC: SOF: ipc4-topology: reserve alh node_id for dai module
Browse files Browse the repository at this point in the history
Fix dai module initialization failure since node_id is zero. Two pcm streams
share the same be dai module. When stream a is being closed and the other
stream b is open, the dai module is first unprepared by stream a and the
node_id is cleared. And then be hw_params function is called for stream b in
asoc framework and found be dai component is shared by stream a and b, so the
hw_params functon for be dai component is not called. The node_id is always
set by be dai component so it will be missed.

Each BE has its own unique intel_alh_id aka node_index based on the link number
and pdi number. So node_id will not change for a specific BE. This patch reserves
alh node_id for dai module in firmware based on this fact.

Signed-off-by: Rander Wang <[email protected]>
  • Loading branch information
RanderWang committed Jan 22, 2024
1 parent 0ba5acc commit 4fcff5a
Showing 1 changed file with 0 additions and 3 deletions.
3 changes: 0 additions & 3 deletions sound/soc/sof/ipc4-topology.c
Original file line number Diff line number Diff line change
Expand Up @@ -1283,9 +1283,6 @@ static void sof_ipc4_unprepare_copier_module(struct snd_sof_widget *swidget)
ALH_MULTI_GTW_BASE;
ida_free(&alh_group_ida, group_id);
}

/* clear the node ID */
copier_data->gtw_cfg.node_id &= ~SOF_IPC4_NODE_INDEX_MASK;
}
}

Expand Down

0 comments on commit 4fcff5a

Please sign in to comment.