Lines Matching refs:iface

39 	struct axg_tdm_iface *iface = snd_soc_dai_get_drvdata(dai);
56 iface->slots = slots;
80 iface->slot_width = slot_width;
102 struct axg_tdm_iface *iface = snd_soc_dai_get_drvdata(dai);
106 if (!iface->mclk) {
109 ret = clk_set_rate(iface->mclk, freq);
111 iface->mclk_rate = freq;
120 struct axg_tdm_iface *iface = snd_soc_dai_get_drvdata(dai);
124 if (!iface->mclk) {
141 iface->fmt = fmt;
148 struct axg_tdm_iface *iface = snd_soc_dai_get_drvdata(dai);
162 iface->rate);
165 "can't set iface rate constraint\n");
177 struct axg_tdm_iface *iface = snd_soc_dai_get_drvdata(dai);
183 iface->rate = params_rate(params);
191 if (iface->slot_width < width) {
207 struct axg_tdm_iface *iface = snd_soc_dai_get_drvdata(dai);
211 ret = clk_set_rate(iface->lrclk, params_rate(params));
217 switch (iface->fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
240 ret = clk_set_duty_cycle(iface->lrclk, ratio_num, 2);
248 ret = clk_set_phase(iface->lrclk,
249 axg_tdm_lrclk_invert(iface->fmt) ? 180 : 0);
262 struct axg_tdm_iface *iface = snd_soc_dai_get_drvdata(dai);
266 srate = iface->slots * iface->slot_width * params_rate(params);
268 if (!iface->mclk_rate) {
270 clk_set_rate(iface->mclk, 4 * srate);
273 if (iface->mclk_rate % srate) {
276 srate, iface->mclk_rate);
281 ret = clk_set_rate(iface->sclk, srate);
288 ret = clk_set_phase(iface->sclk,
289 axg_tdm_sclk_invert(iface->fmt) ? 0 : 180);
302 struct axg_tdm_iface *iface = snd_soc_dai_get_drvdata(dai);
305 switch (iface->fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
309 if (iface->slots > 2) {
311 iface->slots);
329 if ((iface->fmt & SND_SOC_DAIFMT_MASTER_MASK) ==
376 struct axg_tdm_iface *iface = snd_soc_dai_get_drvdata(dai);
379 dai->capture_dma_data = axg_tdm_stream_alloc(iface);
385 dai->playback_dma_data = axg_tdm_stream_alloc(iface);
446 struct axg_tdm_iface *iface = snd_soc_component_get_drvdata(component);
454 ret = clk_prepare_enable(iface->mclk);
459 clk_disable_unprepare(iface->mclk);
487 { .compatible = "amlogic,axg-tdm-iface", },
496 struct axg_tdm_iface *iface;
499 iface = devm_kzalloc(dev, sizeof(*iface), GFP_KERNEL);
500 if (!iface)
502 platform_set_drvdata(pdev, iface);
519 iface->sclk = devm_clk_get(dev, "sclk");
520 if (IS_ERR(iface->sclk)) {
521 ret = PTR_ERR(iface->sclk);
528 iface->lrclk = devm_clk_get(dev, "lrclk");
529 if (IS_ERR(iface->lrclk)) {
530 ret = PTR_ERR(iface->lrclk);
542 iface->mclk = devm_clk_get(dev, "mclk");
543 if (IS_ERR(iface->mclk)) {
544 ret = PTR_ERR(iface->mclk);
546 iface->mclk = NULL;
562 .name = "axg-tdm-iface",