Lines Matching refs:dai
159 * @dai: pointer to DAI
165 static int fsl_esai_divisor_cal(struct snd_soc_dai *dai, bool tx, u32 ratio,
168 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
177 dev_err(dai->dev, "the ratio is out of range (2 ~ %d)\n",
181 dev_err(dai->dev, "the raio must be even if using upper divider\n");
229 dev_err(dai->dev, "failed to calculate proper divisors\n");
251 * @dai: pointer to DAI
259 static int fsl_esai_set_dai_sysclk(struct snd_soc_dai *dai, int clk_id,
262 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
271 dev_err(dai->dev, "%sput freq of HCK%c should not be 0Hz\n",
306 dev_err(dai->dev, "no assigned %s clock\n",
322 dev_err(dai->dev, "failed to derive required HCK%c rate\n",
334 dev_err(dai->dev, "failed to derive required HCK%c rate\n",
339 ret = fsl_esai_divisor_cal(dai, tx, ratio, false, 0);
358 * @dai: pointer to DAI
362 static int fsl_esai_set_bclk(struct snd_soc_dai *dai, bool tx, u32 freq)
364 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
382 dev_err(dai->dev, "failed to derive required SCK%c rate\n",
389 dev_err(dai->dev, "the ratio is out of range (1 ~ 16)\n");
393 ret = fsl_esai_divisor_cal(dai, tx, ratio, true,
404 static int fsl_esai_set_dai_tdm_slot(struct snd_soc_dai *dai, u32 tx_mask,
407 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
423 static int fsl_esai_set_dai_fmt(struct snd_soc_dai *dai, unsigned int fmt)
425 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
512 struct snd_soc_dai *dai)
514 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
516 if (!snd_soc_dai_active(dai)) {
537 struct snd_soc_dai *dai)
539 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
554 ret = fsl_esai_set_bclk(dai, esai_priv->synchronous || tx, bclk);
758 struct snd_soc_dai *dai)
760 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
788 static int fsl_esai_dai_probe(struct snd_soc_dai *dai)
790 struct fsl_esai *esai_priv = snd_soc_dai_get_drvdata(dai);
792 snd_soc_dai_init_dma_data(dai, &esai_priv->dma_params_tx,
1076 * Register platform component before registering cpu dai for there
1203 .name = "fsl-esai-dai",
1214 MODULE_ALIAS("platform:fsl-esai-dai");