Lines Matching refs:rdai
225 struct rsnd_dai *rdai; in rsnd_mod_interrupt() local
228 for_each_rsnd_dai(rdai, priv, i) { in rsnd_mod_interrupt()
229 struct rsnd_dai_stream *io = &rdai->playback; in rsnd_mod_interrupt()
234 io = &rdai->capture; in rsnd_mod_interrupt()
311 struct rsnd_dai *rdai = rsnd_io_to_rdai(io); in rsnd_runtime_channel_for_ssi_with_params() local
318 chan /= rsnd_rdai_ssi_lane_get(rdai); in rsnd_runtime_channel_for_ssi_with_params()
325 struct rsnd_dai *rdai = rsnd_io_to_rdai(io); in rsnd_runtime_is_multi_ssi() local
326 int lane = rsnd_rdai_ssi_lane_get(rdai); in rsnd_runtime_is_multi_ssi()
610 int rsnd_rdai_channels_ctrl(struct rsnd_dai *rdai, in rsnd_rdai_channels_ctrl() argument
614 rdai->max_channels = max_channels; in rsnd_rdai_channels_ctrl()
616 return rdai->max_channels; in rsnd_rdai_channels_ctrl()
619 int rsnd_rdai_ssi_lane_ctrl(struct rsnd_dai *rdai, in rsnd_rdai_ssi_lane_ctrl() argument
623 rdai->ssi_lane = ssi_lane; in rsnd_rdai_ssi_lane_ctrl()
625 return rdai->ssi_lane; in rsnd_rdai_ssi_lane_ctrl()
628 int rsnd_rdai_width_ctrl(struct rsnd_dai *rdai, int width) in rsnd_rdai_width_ctrl() argument
631 rdai->chan_width = width; in rsnd_rdai_width_ctrl()
633 return rdai->chan_width; in rsnd_rdai_width_ctrl()
641 return priv->rdai + id; in rsnd_rdai_get()
698 struct rsnd_dai_stream *rsnd_rdai_to_io(struct rsnd_dai *rdai, in rsnd_rdai_to_io() argument
702 return &rdai->playback; in rsnd_rdai_to_io()
704 return &rdai->capture; in rsnd_rdai_to_io()
711 struct rsnd_dai *rdai = rsnd_dai_to_rdai(dai); in rsnd_soc_dai_trigger() local
712 struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream); in rsnd_soc_dai_trigger()
755 struct rsnd_dai *rdai = rsnd_dai_to_rdai(dai); in rsnd_soc_dai_set_fmt() local
760 rdai->clk_master = 0; in rsnd_soc_dai_set_fmt()
763 rdai->clk_master = 1; /* cpu is master */ in rsnd_soc_dai_set_fmt()
770 rdai->bit_clk_inv = 0; in rsnd_soc_dai_set_fmt()
773 rdai->sys_delay = 0; in rsnd_soc_dai_set_fmt()
774 rdai->data_alignment = 0; in rsnd_soc_dai_set_fmt()
775 rdai->frm_clk_inv = 0; in rsnd_soc_dai_set_fmt()
779 rdai->sys_delay = 1; in rsnd_soc_dai_set_fmt()
780 rdai->data_alignment = 0; in rsnd_soc_dai_set_fmt()
781 rdai->frm_clk_inv = 1; in rsnd_soc_dai_set_fmt()
784 rdai->sys_delay = 1; in rsnd_soc_dai_set_fmt()
785 rdai->data_alignment = 1; in rsnd_soc_dai_set_fmt()
786 rdai->frm_clk_inv = 1; in rsnd_soc_dai_set_fmt()
789 rdai->sys_delay = 0; in rsnd_soc_dai_set_fmt()
790 rdai->data_alignment = 0; in rsnd_soc_dai_set_fmt()
791 rdai->frm_clk_inv = 1; in rsnd_soc_dai_set_fmt()
798 rdai->frm_clk_inv = !rdai->frm_clk_inv; in rsnd_soc_dai_set_fmt()
801 rdai->bit_clk_inv = !rdai->bit_clk_inv; in rsnd_soc_dai_set_fmt()
804 rdai->bit_clk_inv = !rdai->bit_clk_inv; in rsnd_soc_dai_set_fmt()
805 rdai->frm_clk_inv = !rdai->frm_clk_inv; in rsnd_soc_dai_set_fmt()
820 struct rsnd_dai *rdai = rsnd_dai_to_rdai(dai); in rsnd_soc_set_dai_tdm_slot() local
839 rsnd_rdai_channels_set(rdai, slots); in rsnd_soc_set_dai_tdm_slot()
840 rsnd_rdai_ssi_lane_set(rdai, 1); in rsnd_soc_set_dai_tdm_slot()
841 rsnd_rdai_width_set(rdai, slot_width); in rsnd_soc_set_dai_tdm_slot()
870 static int rsnd_soc_hw_rule(struct rsnd_dai *rdai, in rsnd_soc_hw_rule() argument
887 rate = rsnd_ssi_clk_query(rdai, in rsnd_soc_hw_rule()
894 rate = rsnd_ssi_clk_query(rdai, in rsnd_soc_hw_rule()
912 struct rsnd_dai *rdai = rsnd_io_to_rdai(io); in rsnd_soc_hw_rule_rate() local
923 return rsnd_soc_hw_rule(rdai, rsnd_soc_hw_rate_list, in rsnd_soc_hw_rule_rate()
935 struct rsnd_dai *rdai = rsnd_io_to_rdai(io); in rsnd_soc_hw_rule_channels() local
946 return rsnd_soc_hw_rule(rdai, rsnd_soc_hw_channels_list, in rsnd_soc_hw_rule_channels()
966 struct rsnd_dai *rdai = rsnd_dai_to_rdai(dai); in rsnd_soc_dai_startup() local
967 struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream); in rsnd_soc_dai_startup()
968 struct snd_pcm_hw_constraint_list *constraint = &rdai->constraint; in rsnd_soc_dai_startup()
970 unsigned int max_channels = rsnd_rdai_channels_get(rdai); in rsnd_soc_dai_startup()
1001 if (rsnd_rdai_is_clk_master(rdai)) { in rsnd_soc_dai_startup()
1006 is_play ? &rdai->playback : &rdai->capture, in rsnd_soc_dai_startup()
1010 is_play ? &rdai->playback : &rdai->capture, in rsnd_soc_dai_startup()
1020 struct rsnd_dai *rdai = rsnd_dai_to_rdai(dai); in rsnd_soc_dai_shutdown() local
1021 struct rsnd_priv *priv = rsnd_rdai_to_priv(rdai); in rsnd_soc_dai_shutdown()
1022 struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream); in rsnd_soc_dai_shutdown()
1036 struct rsnd_dai *rdai = rsnd_dai_to_rdai(dai); in rsnd_soc_dai_prepare() local
1037 struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream); in rsnd_soc_dai_prepare()
1155 void rsnd_parse_connect_common(struct rsnd_dai *rdai, char *name, in rsnd_parse_connect_common() argument
1161 struct rsnd_priv *priv = rsnd_rdai_to_priv(rdai); in rsnd_parse_connect_common()
1182 rsnd_dai_connect(mod, &rdai->playback, mod->type); in rsnd_parse_connect_common()
1184 rsnd_dai_connect(mod, &rdai->capture, mod->type); in rsnd_parse_connect_common()
1313 struct rsnd_dai *rdai = rsnd_dai_to_rdai(dai); in rsnd_pcm_new() local
1316 ret = rsnd_dai_call(pcm_new, &rdai->playback, rtd); in rsnd_pcm_new()
1320 ret = rsnd_dai_call(pcm_new, &rdai->capture, rtd); in rsnd_pcm_new()
1324 ret = rsnd_preallocate_pages(rtd, &rdai->playback, in rsnd_pcm_new()
1329 ret = rsnd_preallocate_pages(rtd, &rdai->capture, in rsnd_pcm_new()
1344 struct rsnd_dai *rdai; in __rsnd_dai_probe() local
1348 rdai = rsnd_rdai_get(priv, dai_i); in __rsnd_dai_probe()
1350 io_playback = &rdai->playback; in __rsnd_dai_probe()
1351 io_capture = &rdai->capture; in __rsnd_dai_probe()
1353 snprintf(rdai->name, RSND_DAI_NAME_SIZE, "rsnd-dai.%d", dai_i); in __rsnd_dai_probe()
1355 rdai->priv = priv; in __rsnd_dai_probe()
1356 drv->name = rdai->name; in __rsnd_dai_probe()
1376 io_playback->rdai = rdai; in __rsnd_dai_probe()
1377 io_capture->rdai = rdai; in __rsnd_dai_probe()
1378 rsnd_rdai_channels_set(rdai, 2); /* default 2ch */ in __rsnd_dai_probe()
1379 rsnd_rdai_ssi_lane_set(rdai, 1); /* default 1lane */ in __rsnd_dai_probe()
1380 rsnd_rdai_width_set(rdai, 32); /* default 32bit width */ in __rsnd_dai_probe()
1389 rsnd_parse_connect_ssi(rdai, playback, capture); in __rsnd_dai_probe()
1390 rsnd_parse_connect_ssiu(rdai, playback, capture); in __rsnd_dai_probe()
1391 rsnd_parse_connect_src(rdai, playback, capture); in __rsnd_dai_probe()
1392 rsnd_parse_connect_ctu(rdai, playback, capture); in __rsnd_dai_probe()
1393 rsnd_parse_connect_mix(rdai, playback, capture); in __rsnd_dai_probe()
1394 rsnd_parse_connect_dvc(rdai, playback, capture); in __rsnd_dai_probe()
1406 dev_dbg(dev, "%s (%s/%s)\n", rdai->name, in __rsnd_dai_probe()
1417 struct rsnd_dai *rdai; in rsnd_dai_probe() local
1432 rdai = devm_kcalloc(dev, nr, sizeof(*rdai), GFP_KERNEL); in rsnd_dai_probe()
1433 if (!rdrv || !rdai) in rsnd_dai_probe()
1438 priv->rdai = rdai; in rsnd_dai_probe()
1448 rdai = rsnd_rdai_get(priv, dai_i); in rsnd_dai_probe()
1450 rsnd_parse_connect_graph(priv, &rdai->playback, dai_np); in rsnd_dai_probe()
1451 rsnd_parse_connect_graph(priv, &rdai->capture, dai_np); in rsnd_dai_probe()
1459 rdai = rsnd_rdai_get(priv, dai_i); in rsnd_dai_probe()
1461 rsnd_parse_connect_simple(priv, &rdai->playback, dai_np); in rsnd_dai_probe()
1462 rsnd_parse_connect_simple(priv, &rdai->capture, dai_np); in rsnd_dai_probe()
1478 struct rsnd_dai *rdai = rsnd_dai_to_rdai(dai); in rsnd_hw_update() local
1479 struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream); in rsnd_hw_update()
1499 struct rsnd_dai *rdai = rsnd_dai_to_rdai(dai); in rsnd_hw_params() local
1500 struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream); in rsnd_hw_params()
1614 struct rsnd_dai *rdai = rsnd_dai_to_rdai(dai); in rsnd_pointer() local
1615 struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream); in rsnd_pointer()
1878 struct rsnd_dai *rdai; in rsnd_probe() local
1914 for_each_rsnd_dai(rdai, priv, i) { in rsnd_probe()
1915 ret = rsnd_rdai_continuance_probe(priv, &rdai->playback); in rsnd_probe()
1919 ret = rsnd_rdai_continuance_probe(priv, &rdai->capture); in rsnd_probe()
1942 for_each_rsnd_dai(rdai, priv, i) { in rsnd_probe()
1943 rsnd_dai_call(remove, &rdai->playback, priv); in rsnd_probe()
1944 rsnd_dai_call(remove, &rdai->capture, priv); in rsnd_probe()
1961 struct rsnd_dai *rdai; in rsnd_remove() local
1976 for_each_rsnd_dai(rdai, priv, i) { in rsnd_remove()
1979 ret = rsnd_dai_call(remove, &rdai->playback, priv); in rsnd_remove()
1983 ret = rsnd_dai_call(remove, &rdai->capture, priv); in rsnd_remove()