mirror of https://github.com/thesofproject/sof.git
copier-dai: Add copier_dai_prepare in copier dai source file
Add this function to integrate copier dai prepare code. Signed-off-by: Baofeng Tian <baofeng.tian@intel.com>
This commit is contained in:
parent
f3e9f73e96
commit
1dd1939f05
|
@ -477,7 +477,7 @@ static int copy_single_channel_c32(const struct audio_stream __sparse_cache *src
|
|||
static int copier_prepare(struct comp_dev *dev)
|
||||
{
|
||||
struct copier_data *cd = comp_get_drvdata(dev);
|
||||
int ret, i;
|
||||
int ret;
|
||||
|
||||
comp_dbg(dev, "copier_prepare()");
|
||||
|
||||
|
@ -503,25 +503,9 @@ static int copier_prepare(struct comp_dev *dev)
|
|||
}
|
||||
break;
|
||||
case SOF_COMP_DAI:
|
||||
if (cd->endpoint_num == 1) {
|
||||
ret = dai_zephyr_config_prepare(cd->dd[0], dev);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
ret = dai_zephyr_prepare(cd->dd[0], dev);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
} else {
|
||||
for (i = 0; i < cd->endpoint_num; i++) {
|
||||
ret = dai_zephyr_config_prepare(cd->dd[i], dev);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
ret = dai_zephyr_prepare(cd->dd[i], dev);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
ret = copier_dai_prepare(dev, cd);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
|
|
@ -286,3 +286,20 @@ void copier_dai_free(struct copier_data *cd)
|
|||
rfree(cd->dd[i]);
|
||||
}
|
||||
}
|
||||
|
||||
int copier_dai_prepare(struct comp_dev *dev, struct copier_data *cd)
|
||||
{
|
||||
int ret;
|
||||
|
||||
for (int i = 0; i < cd->endpoint_num; i++) {
|
||||
ret = dai_zephyr_config_prepare(cd->dd[i], dev);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
ret = dai_zephyr_prepare(cd->dd[i], dev);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -63,4 +63,6 @@ int copier_dai_create(struct comp_dev *parent_dev, struct copier_data *cd,
|
|||
struct pipeline *pipeline);
|
||||
|
||||
void copier_dai_free(struct copier_data *cd);
|
||||
|
||||
int copier_dai_prepare(struct comp_dev *dev, struct copier_data *cd);
|
||||
#endif /* __SOF_LIB_DAI_COPIER_H__ */
|
||||
|
|
Loading…
Reference in New Issue