Lines Matching refs:dai

164  * @dai: pointer to DAI
170 static int fsl_esai_divisor_cal(struct snd_soc_dai *dai, bool tx, u32 ratio,
173 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
182 dev_err(dai->dev, "the ratio is out of range (2 ~ %d)\n",
186 dev_err(dai->dev, "the raio must be even if using upper divider\n");
234 dev_err(dai->dev, "failed to calculate proper divisors\n");
256 * @dai: pointer to DAI
264 static int fsl_esai_set_dai_sysclk(struct snd_soc_dai *dai, int clk_id,
267 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
276 dev_err(dai->dev, "%sput freq of HCK%c should not be 0Hz\n",
311 dev_err(dai->dev, "no assigned %s clock\n",
327 dev_err(dai->dev, "failed to derive required HCK%c rate\n",
339 dev_err(dai->dev, "failed to derive required HCK%c rate\n",
344 ret = fsl_esai_divisor_cal(dai, tx, ratio, false, 0);
363 * @dai: pointer to DAI
367 static int fsl_esai_set_bclk(struct snd_soc_dai *dai, bool tx, u32 freq)
369 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
387 dev_err(dai->dev, "failed to derive required SCK%c rate\n",
394 dev_err(dai->dev, "the ratio is out of range (1 ~ 16)\n");
398 ret = fsl_esai_divisor_cal(dai, tx, ratio, true,
409 static int fsl_esai_set_dai_tdm_slot(struct snd_soc_dai *dai, u32 tx_mask,
412 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
428 static int fsl_esai_set_dai_fmt(struct snd_soc_dai *dai, unsigned int fmt)
430 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
517 struct snd_soc_dai *dai)
519 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
521 if (!snd_soc_dai_active(dai)) {
542 struct snd_soc_dai *dai)
544 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
559 ret = fsl_esai_set_bclk(dai, esai_priv->synchronous || tx, bclk);
763 struct snd_soc_dai *dai)
765 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
802 static int fsl_esai_dai_probe(struct snd_soc_dai *dai)
804 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
806 snd_soc_dai_init_dma_data(dai, &esai_priv->dma_params_tx,
1188 .name = "fsl-esai-dai",
1199 MODULE_ALIAS("platform:fsl-esai-dai");