Lines Matching refs:max9860

26 #include "max9860.h"
40 struct max9860_priv *max9860 = container_of(nb, struct max9860_priv,
43 regcache_mark_dirty(max9860->regmap);
44 regcache_cache_only(max9860->regmap, true);
256 struct max9860_priv *max9860 = snd_soc_component_get_drvdata(component);
271 switch (max9860->fmt & SND_SOC_DAIFMT_MASTER_MASK) {
290 switch (max9860->fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
319 switch (max9860->fmt & SND_SOC_DAIFMT_INV_MASK) {
323 switch (max9860->fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
331 switch (max9860->fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
347 ret = regmap_write(max9860->regmap, MAX9860_IFC1A, ifc1a);
353 ret = regmap_write(max9860->regmap, MAX9860_IFC1B, ifc1b);
367 switch (max9860->pclk_rate) {
399 max9860->pclk_rate);
410 sysclk |= max9860->psclk;
412 ret = regmap_write(max9860->regmap,
419 ret = regmap_write(max9860->regmap,
425 ret = regmap_write(max9860->regmap,
434 ret = regmap_update_bits(max9860->regmap, MAX9860_AUDIOCLKHIGH,
449 struct max9860_priv *max9860 = snd_soc_component_get_drvdata(component);
454 max9860->fmt = fmt;
468 .name = "max9860-hifi",
498 struct max9860_priv *max9860 = dev_get_drvdata(component->dev);
507 ret = regmap_update_bits(max9860->regmap, MAX9860_PWRMAN,
517 ret = regmap_update_bits(max9860->regmap, MAX9860_PWRMAN,
546 struct max9860_priv *max9860 = dev_get_drvdata(dev);
549 ret = regmap_update_bits(max9860->regmap, MAX9860_SYSCLK,
556 regulator_disable(max9860->dvddio);
563 struct max9860_priv *max9860 = dev_get_drvdata(dev);
566 ret = regulator_enable(max9860->dvddio);
572 regcache_cache_only(max9860->regmap, false);
573 ret = regcache_sync(max9860->regmap);
579 ret = regmap_update_bits(max9860->regmap, MAX9860_SYSCLK,
580 MAX9860_PSCLK, max9860->psclk);
597 struct max9860_priv *max9860;
604 max9860 = devm_kzalloc(dev, sizeof(struct max9860_priv), GFP_KERNEL);
605 if (!max9860)
608 max9860->dvddio = devm_regulator_get(dev, "DVDDIO");
609 if (IS_ERR(max9860->dvddio)) {
610 ret = PTR_ERR(max9860->dvddio);
616 max9860->dvddio_nb.notifier_call = max9860_dvddio_event;
618 ret = devm_regulator_register_notifier(max9860->dvddio,
619 &max9860->dvddio_nb);
623 ret = regulator_enable(max9860->dvddio);
629 max9860->regmap = devm_regmap_init_i2c(i2c, &max9860_regmap);
630 if (IS_ERR(max9860->regmap)) {
631 ret = PTR_ERR(max9860->regmap);
635 dev_set_drvdata(dev, max9860);
661 max9860->psclk = 3;
663 max9860->psclk = 2;
665 max9860->psclk = 1;
666 max9860->pclk_rate = mclk_rate >> (max9860->psclk - 1);
667 max9860->psclk <<= MAX9860_PSCLK_SHIFT;
668 dev_dbg(dev, "mclk %lu pclk %lu\n", mclk_rate, max9860->pclk_rate);
670 regcache_cache_bypass(max9860->regmap, true);
672 ret = regmap_write(max9860->regmap,
681 regcache_cache_bypass(max9860->regmap, false);
683 ret = regmap_read(max9860->regmap, MAX9860_INTRSTATUS, &intr);
705 regulator_disable(max9860->dvddio);
712 struct max9860_priv *max9860 = dev_get_drvdata(dev);
715 regulator_disable(max9860->dvddio);
720 { "max9860", },
726 { .compatible = "maxim,max9860", },
736 .name = "max9860",