pcm3168a 274 sound/soc/codecs/pcm3168a.c static int pcm3168a_reset(struct pcm3168a_priv *pcm3168a) pcm3168a 278 sound/soc/codecs/pcm3168a.c ret = regmap_write(pcm3168a->regmap, PCM3168A_RST_SMODE, 0); pcm3168a 283 sound/soc/codecs/pcm3168a.c msleep(DIV_ROUND_UP(3846 * 1000, pcm3168a->sysclk)); pcm3168a 285 sound/soc/codecs/pcm3168a.c return regmap_write(pcm3168a->regmap, PCM3168A_RST_SMODE, pcm3168a 292 sound/soc/codecs/pcm3168a.c struct pcm3168a_priv *pcm3168a = snd_soc_component_get_drvdata(component); pcm3168a 294 sound/soc/codecs/pcm3168a.c regmap_write(pcm3168a->regmap, PCM3168A_DAC_MUTE, mute ? 0xff : 0); pcm3168a 302 sound/soc/codecs/pcm3168a.c struct pcm3168a_priv *pcm3168a = snd_soc_component_get_drvdata(dai->component); pcm3168a 308 sound/soc/codecs/pcm3168a.c ret = clk_set_rate(pcm3168a->scki, freq); pcm3168a 312 sound/soc/codecs/pcm3168a.c pcm3168a->sysclk = freq; pcm3168a 320 sound/soc/codecs/pcm3168a.c struct pcm3168a_priv *pcm3168a = snd_soc_component_get_drvdata(component); pcm3168a 374 sound/soc/codecs/pcm3168a.c pcm3168a->io_params[dai->id].master_mode = master_mode; pcm3168a 375 sound/soc/codecs/pcm3168a.c pcm3168a->io_params[dai->id].fmt = fmt; pcm3168a 377 sound/soc/codecs/pcm3168a.c regmap_update_bits(pcm3168a->regmap, reg, mask, fmt << shift); pcm3168a 387 sound/soc/codecs/pcm3168a.c struct pcm3168a_priv *pcm3168a = snd_soc_component_get_drvdata(component); pcm3168a 388 sound/soc/codecs/pcm3168a.c struct pcm3168a_io_params *io_params = &pcm3168a->io_params[dai->id]; pcm3168a 420 sound/soc/codecs/pcm3168a.c struct pcm3168a_priv *pcm3168a = snd_soc_component_get_drvdata(component); pcm3168a 421 sound/soc/codecs/pcm3168a.c struct pcm3168a_io_params *io_params = &pcm3168a->io_params[dai->id]; pcm3168a 430 sound/soc/codecs/pcm3168a.c ratio = pcm3168a->sysclk / rate; pcm3168a 518 sound/soc/codecs/pcm3168a.c regmap_update_bits(pcm3168a->regmap, reg, mask, val); pcm3168a 528 sound/soc/codecs/pcm3168a.c regmap_update_bits(pcm3168a->regmap, reg, mask, fmt << shift); pcm3168a 537 sound/soc/codecs/pcm3168a.c struct pcm3168a_priv *pcm3168a = snd_soc_component_get_drvdata(component); pcm3168a 557 sound/soc/codecs/pcm3168a.c switch (pcm3168a->io_params[dai->id].fmt) { pcm3168a 579 sound/soc/codecs/pcm3168a.c if (pcm3168a->io_params[dai->id].tdm_slots == 2) pcm3168a 719 sound/soc/codecs/pcm3168a.c struct pcm3168a_priv *pcm3168a; pcm3168a 722 sound/soc/codecs/pcm3168a.c pcm3168a = devm_kzalloc(dev, sizeof(*pcm3168a), GFP_KERNEL); pcm3168a 723 sound/soc/codecs/pcm3168a.c if (pcm3168a == NULL) pcm3168a 726 sound/soc/codecs/pcm3168a.c dev_set_drvdata(dev, pcm3168a); pcm3168a 728 sound/soc/codecs/pcm3168a.c pcm3168a->scki = devm_clk_get(dev, "scki"); pcm3168a 729 sound/soc/codecs/pcm3168a.c if (IS_ERR(pcm3168a->scki)) { pcm3168a 730 sound/soc/codecs/pcm3168a.c ret = PTR_ERR(pcm3168a->scki); pcm3168a 736 sound/soc/codecs/pcm3168a.c ret = clk_prepare_enable(pcm3168a->scki); pcm3168a 742 sound/soc/codecs/pcm3168a.c pcm3168a->sysclk = clk_get_rate(pcm3168a->scki); pcm3168a 744 sound/soc/codecs/pcm3168a.c for (i = 0; i < ARRAY_SIZE(pcm3168a->supplies); i++) pcm3168a 745 sound/soc/codecs/pcm3168a.c pcm3168a->supplies[i].supply = pcm3168a_supply_names[i]; pcm3168a 748 sound/soc/codecs/pcm3168a.c ARRAY_SIZE(pcm3168a->supplies), pcm3168a->supplies); pcm3168a 755 sound/soc/codecs/pcm3168a.c ret = regulator_bulk_enable(ARRAY_SIZE(pcm3168a->supplies), pcm3168a 756 sound/soc/codecs/pcm3168a.c pcm3168a->supplies); pcm3168a 762 sound/soc/codecs/pcm3168a.c pcm3168a->regmap = regmap; pcm3168a 763 sound/soc/codecs/pcm3168a.c if (IS_ERR(pcm3168a->regmap)) { pcm3168a 764 sound/soc/codecs/pcm3168a.c ret = PTR_ERR(pcm3168a->regmap); pcm3168a 769 sound/soc/codecs/pcm3168a.c ret = pcm3168a_reset(pcm3168a); pcm3168a 789 sound/soc/codecs/pcm3168a.c regulator_bulk_disable(ARRAY_SIZE(pcm3168a->supplies), pcm3168a 790 sound/soc/codecs/pcm3168a.c pcm3168a->supplies); pcm3168a 792 sound/soc/codecs/pcm3168a.c clk_disable_unprepare(pcm3168a->scki); pcm3168a 800 sound/soc/codecs/pcm3168a.c struct pcm3168a_priv *pcm3168a = dev_get_drvdata(dev); pcm3168a 802 sound/soc/codecs/pcm3168a.c regulator_bulk_disable(ARRAY_SIZE(pcm3168a->supplies), pcm3168a 803 sound/soc/codecs/pcm3168a.c pcm3168a->supplies); pcm3168a 804 sound/soc/codecs/pcm3168a.c clk_disable_unprepare(pcm3168a->scki); pcm3168a 819 sound/soc/codecs/pcm3168a.c struct pcm3168a_priv *pcm3168a = dev_get_drvdata(dev); pcm3168a 822 sound/soc/codecs/pcm3168a.c ret = clk_prepare_enable(pcm3168a->scki); pcm3168a 828 sound/soc/codecs/pcm3168a.c ret = regulator_bulk_enable(ARRAY_SIZE(pcm3168a->supplies), pcm3168a 829 sound/soc/codecs/pcm3168a.c pcm3168a->supplies); pcm3168a 835 sound/soc/codecs/pcm3168a.c ret = pcm3168a_reset(pcm3168a); pcm3168a 841 sound/soc/codecs/pcm3168a.c regcache_cache_only(pcm3168a->regmap, false); pcm3168a 843 sound/soc/codecs/pcm3168a.c regcache_mark_dirty(pcm3168a->regmap); pcm3168a 845 sound/soc/codecs/pcm3168a.c ret = regcache_sync(pcm3168a->regmap); pcm3168a 854 sound/soc/codecs/pcm3168a.c regulator_bulk_disable(ARRAY_SIZE(pcm3168a->supplies), pcm3168a 855 sound/soc/codecs/pcm3168a.c pcm3168a->supplies); pcm3168a 857 sound/soc/codecs/pcm3168a.c clk_disable_unprepare(pcm3168a->scki); pcm3168a 864 sound/soc/codecs/pcm3168a.c struct pcm3168a_priv *pcm3168a = dev_get_drvdata(dev); pcm3168a 866 sound/soc/codecs/pcm3168a.c regcache_cache_only(pcm3168a->regmap, true);