Lines Matching defs:codec

177 /* codec private data */
185 static int jz4770_codec_set_bias_level(struct snd_soc_component *codec,
188 struct jz_codec *jz_codec = snd_soc_component_get_drvdata(codec);
219 struct snd_soc_component *codec = dai->component;
220 struct snd_soc_dapm_context *dapm = snd_soc_component_get_dapm(codec);
223 * SYSCLK output from the codec to the AIC is required to keep the
236 struct snd_soc_component *codec = dai->component;
237 struct snd_soc_dapm_context *dapm = snd_soc_component_get_dapm(codec);
247 struct snd_soc_component *codec = dai->component;
255 snd_soc_component_force_bias_level(codec,
272 struct snd_soc_component *codec = dai->component;
273 struct jz_codec *jz_codec = snd_soc_component_get_drvdata(codec);
278 change = snd_soc_component_update_bits(codec, JZ4770_CODEC_REG_CR_DAC,
376 struct snd_soc_component *codec = snd_soc_dapm_to_component(w->dapm);
377 struct jz_codec *jz_codec = snd_soc_component_get_drvdata(codec);
600 static void jz4770_codec_codec_init_regs(struct snd_soc_component *codec)
602 struct jz_codec *jz_codec = snd_soc_component_get_drvdata(codec);
663 static int jz4770_codec_codec_probe(struct snd_soc_component *codec)
665 struct jz_codec *jz_codec = snd_soc_component_get_drvdata(codec);
669 jz4770_codec_codec_init_regs(codec);
674 static void jz4770_codec_codec_remove(struct snd_soc_component *codec)
676 struct jz_codec *jz_codec = snd_soc_component_get_drvdata(codec);
705 struct jz_codec *codec = snd_soc_component_get_drvdata(dai->component);
734 regmap_update_bits(codec->regmap, JZ4770_CODEC_REG_AICR_DAC,
737 regmap_update_bits(codec->regmap, JZ4770_CODEC_REG_FCR_DAC,
741 regmap_update_bits(codec->regmap, JZ4770_CODEC_REG_AICR_ADC,
744 regmap_update_bits(codec->regmap, JZ4770_CODEC_REG_FCR_ADC,
813 static int jz4770_codec_io_wait(struct jz_codec *codec)
817 return readl_poll_timeout(codec->base + ICDC_RGADW_OFFSET, reg,
825 struct jz_codec *codec = context;
830 ret = jz4770_codec_io_wait(codec);
834 tmp = readl(codec->base + ICDC_RGADW_OFFSET);
837 writel(tmp, codec->base + ICDC_RGADW_OFFSET);
841 *val = readl(codec->base + ICDC_RGDATA_OFFSET) &
850 struct jz_codec *codec = context;
853 ret = jz4770_codec_io_wait(codec);
858 codec->base + ICDC_RGADW_OFFSET);
860 ret = jz4770_codec_io_wait(codec);
895 struct jz_codec *codec;
898 codec = devm_kzalloc(dev, sizeof(*codec), GFP_KERNEL);
899 if (!codec)
902 codec->dev = dev;
904 codec->base = devm_platform_ioremap_resource(pdev, 0);
905 if (IS_ERR(codec->base))
906 return PTR_ERR(codec->base);
908 codec->regmap = devm_regmap_init(dev, NULL, codec,
910 if (IS_ERR(codec->regmap))
911 return PTR_ERR(codec->regmap);
913 codec->clk = devm_clk_get(dev, "aic");
914 if (IS_ERR(codec->clk))
915 return PTR_ERR(codec->clk);
917 platform_set_drvdata(pdev, codec);
922 dev_err(dev, "Failed to register codec: %d\n", ret);
930 { .compatible = "ingenic,jz4770-codec", },
938 .name = "jz4770-codec",
944 MODULE_DESCRIPTION("JZ4770 SoC internal codec driver");