Lines Matching refs:dai
528 struct wcd_slim_codec_dai_data dai[NUM_CODEC_DAIS];
1422 static int wcd934x_set_prim_interpolator_rate(struct snd_soc_dai *dai,
1425 struct snd_soc_component *comp = dai->component;
1431 list_for_each_entry(ch, &wcd->dai[dai->id].slim_ch_list, list) {
1479 static int wcd934x_set_mix_interpolator_rate(struct snd_soc_dai *dai,
1482 struct snd_soc_component *component = dai->component;
1487 list_for_each_entry(ch, &wcd->dai[dai->id].slim_ch_list, list) {
1506 dai->id);
1521 static int wcd934x_set_interpolator_rate(struct snd_soc_dai *dai,
1534 dev_err(dai->dev, "Unsupported sample rate: %d\n", sample_rate);
1538 ret = wcd934x_set_prim_interpolator_rate(dai, (u8)rate_val,
1542 ret = wcd934x_set_mix_interpolator_rate(dai, (u8)rate_val,
1550 static int wcd934x_set_decimator_rate(struct snd_soc_dai *dai,
1553 struct snd_soc_component *comp = dai->component;
1560 list_for_each_entry(ch, &wcd->dai[dai->id].slim_ch_list, list) {
1591 tx_port, dai->id);
1712 struct snd_soc_dai *dai)
1717 wcd = snd_soc_component_get_drvdata(dai->component);
1721 ret = wcd934x_set_interpolator_rate(dai, params_rate(params));
1729 wcd->dai[dai->id].sconfig.bps = params_width(params);
1768 ret = wcd934x_set_decimator_rate(dai, tx_fs_rate,
1776 wcd->dai[dai->id].sconfig.bps = params_width(params);
1790 wcd->dai[dai->id].sconfig.rate = params_rate(params);
1792 return wcd934x_slim_set_hw_params(wcd, &wcd->dai[dai->id], substream->stream);
1796 struct snd_soc_dai *dai)
1801 wcd = snd_soc_component_get_drvdata(dai->component);
1803 dai_data = &wcd->dai[dai->id];
1811 struct snd_soc_dai *dai)
1817 wcd = snd_soc_component_get_drvdata(dai->component);
1819 dai_data = &wcd->dai[dai->id];
1842 static int wcd934x_set_channel_map(struct snd_soc_dai *dai,
1849 wcd = snd_soc_component_get_drvdata(dai->component);
1878 static int wcd934x_get_channel_map(struct snd_soc_dai *dai,
1886 wcd = snd_soc_component_get_drvdata(dai->component);
1888 switch (dai->id) {
1899 list_for_each_entry(ch, &wcd->dai[dai->id].slim_ch_list, list)
1913 list_for_each_entry(ch, &wcd->dai[dai->id].slim_ch_list, list)
1919 dev_err(wcd->dev, "Invalid DAI ID %x\n", dai->id);
2284 INIT_LIST_HEAD(&wcd->dai[i].slim_ch_list);
2575 list_for_each_entry_safe(ch, c, &wcd->dai[aif_id].slim_ch_list, list) {
2593 &wcd->dai[aif_id].slim_ch_list);
3066 &wcd->dai[dai_id].slim_ch_list);
3074 list_for_each_entry_safe(ch, c, &wcd->dai[dai_id].slim_ch_list, list) {
3347 static void wcd934x_codec_enable_int_port(struct wcd_slim_codec_dai_data *dai,
3356 list_for_each_entry(ch, &dai->slim_ch_list, list) {
3377 struct wcd_slim_codec_dai_data *dai = &wcd->dai[w->shift];
3381 wcd934x_codec_enable_int_port(dai, comp);