Lines Matching refs:dai
30 static int lpass_cpu_daiops_set_sysclk(struct snd_soc_dai *dai, int clk_id, in lpass_cpu_daiops_set_sysclk() argument
33 struct lpass_data *drvdata = snd_soc_dai_get_drvdata(dai); in lpass_cpu_daiops_set_sysclk()
36 if (IS_ERR(drvdata->mi2s_osr_clk[dai->driver->id])) in lpass_cpu_daiops_set_sysclk()
39 ret = clk_set_rate(drvdata->mi2s_osr_clk[dai->driver->id], freq); in lpass_cpu_daiops_set_sysclk()
41 dev_err(dai->dev, "%s() error setting mi2s osrclk to %u: %d\n", in lpass_cpu_daiops_set_sysclk()
48 struct snd_soc_dai *dai) in lpass_cpu_daiops_startup() argument
50 struct lpass_data *drvdata = snd_soc_dai_get_drvdata(dai); in lpass_cpu_daiops_startup()
53 if (!IS_ERR(drvdata->mi2s_osr_clk[dai->driver->id])) { in lpass_cpu_daiops_startup()
55 drvdata->mi2s_osr_clk[dai->driver->id]); in lpass_cpu_daiops_startup()
57 dev_err(dai->dev, "%s() error in enabling mi2s osr clk: %d\n", in lpass_cpu_daiops_startup()
63 ret = clk_prepare_enable(drvdata->mi2s_bit_clk[dai->driver->id]); in lpass_cpu_daiops_startup()
65 dev_err(dai->dev, "%s() error in enabling mi2s bit clk: %d\n", in lpass_cpu_daiops_startup()
67 if (!IS_ERR(drvdata->mi2s_osr_clk[dai->driver->id])) in lpass_cpu_daiops_startup()
69 drvdata->mi2s_osr_clk[dai->driver->id]); in lpass_cpu_daiops_startup()
77 struct snd_soc_dai *dai) in lpass_cpu_daiops_shutdown() argument
79 struct lpass_data *drvdata = snd_soc_dai_get_drvdata(dai); in lpass_cpu_daiops_shutdown()
81 clk_disable_unprepare(drvdata->mi2s_bit_clk[dai->driver->id]); in lpass_cpu_daiops_shutdown()
83 if (!IS_ERR(drvdata->mi2s_osr_clk[dai->driver->id])) in lpass_cpu_daiops_shutdown()
84 clk_disable_unprepare(drvdata->mi2s_osr_clk[dai->driver->id]); in lpass_cpu_daiops_shutdown()
88 struct snd_pcm_hw_params *params, struct snd_soc_dai *dai) in lpass_cpu_daiops_hw_params() argument
90 struct lpass_data *drvdata = snd_soc_dai_get_drvdata(dai); in lpass_cpu_daiops_hw_params()
99 dev_err(dai->dev, "%s() invalid bit width given: %d\n", in lpass_cpu_daiops_hw_params()
118 dev_err(dai->dev, "%s() invalid bitwidth given: %d\n", in lpass_cpu_daiops_hw_params()
145 dev_err(dai->dev, "%s() invalid channels given: %u\n", in lpass_cpu_daiops_hw_params()
151 LPAIF_I2SCTL_REG(drvdata->variant, dai->driver->id), in lpass_cpu_daiops_hw_params()
154 dev_err(dai->dev, "%s() error writing to i2sctl reg: %d\n", in lpass_cpu_daiops_hw_params()
159 ret = clk_set_rate(drvdata->mi2s_bit_clk[dai->driver->id], in lpass_cpu_daiops_hw_params()
162 dev_err(dai->dev, "%s() error setting mi2s bitclk to %u: %d\n", in lpass_cpu_daiops_hw_params()
171 struct snd_soc_dai *dai) in lpass_cpu_daiops_hw_free() argument
173 struct lpass_data *drvdata = snd_soc_dai_get_drvdata(dai); in lpass_cpu_daiops_hw_free()
177 LPAIF_I2SCTL_REG(drvdata->variant, dai->driver->id), in lpass_cpu_daiops_hw_free()
180 dev_err(dai->dev, "%s() error writing to i2sctl reg: %d\n", in lpass_cpu_daiops_hw_free()
187 struct snd_soc_dai *dai) in lpass_cpu_daiops_prepare() argument
189 struct lpass_data *drvdata = snd_soc_dai_get_drvdata(dai); in lpass_cpu_daiops_prepare()
193 LPAIF_I2SCTL_REG(drvdata->variant, dai->driver->id), in lpass_cpu_daiops_prepare()
196 dev_err(dai->dev, "%s() error writing to i2sctl reg: %d\n", in lpass_cpu_daiops_prepare()
203 int cmd, struct snd_soc_dai *dai) in lpass_cpu_daiops_trigger() argument
205 struct lpass_data *drvdata = snd_soc_dai_get_drvdata(dai); in lpass_cpu_daiops_trigger()
214 dai->driver->id), in lpass_cpu_daiops_trigger()
218 dev_err(dai->dev, "%s() error writing to i2sctl reg: %d\n", in lpass_cpu_daiops_trigger()
226 dai->driver->id), in lpass_cpu_daiops_trigger()
230 dev_err(dai->dev, "%s() error writing to i2sctl reg: %d\n", in lpass_cpu_daiops_trigger()
249 int asoc_qcom_lpass_cpu_dai_probe(struct snd_soc_dai *dai) in asoc_qcom_lpass_cpu_dai_probe() argument
251 struct lpass_data *drvdata = snd_soc_dai_get_drvdata(dai); in asoc_qcom_lpass_cpu_dai_probe()
256 LPAIF_I2SCTL_REG(drvdata->variant, dai->driver->id), 0); in asoc_qcom_lpass_cpu_dai_probe()
258 dev_err(dai->dev, "%s() error writing to i2sctl reg: %d\n", in asoc_qcom_lpass_cpu_dai_probe()