ssm2518 311 sound/soc/codecs/ssm2518.c static int ssm2518_lookup_mcs(struct ssm2518 *ssm2518, ssm2518 328 sound/soc/codecs/ssm2518.c if (sysclks[i] == ssm2518->sysclk) ssm2518 339 sound/soc/codecs/ssm2518.c struct ssm2518 *ssm2518 = snd_soc_component_get_drvdata(component); ssm2518 345 sound/soc/codecs/ssm2518.c mcs = ssm2518_lookup_mcs(ssm2518, rate); ssm2518 362 sound/soc/codecs/ssm2518.c if (ssm2518->right_j) { ssm2518 377 sound/soc/codecs/ssm2518.c ret = regmap_update_bits(ssm2518->regmap, SSM2518_REG_CLOCK, ssm2518 382 sound/soc/codecs/ssm2518.c ret = regmap_update_bits(ssm2518->regmap, SSM2518_REG_SAI_CTRL1, ssm2518 387 sound/soc/codecs/ssm2518.c return regmap_update_bits(ssm2518->regmap, SSM2518_REG_POWER1, ssm2518 393 sound/soc/codecs/ssm2518.c struct ssm2518 *ssm2518 = snd_soc_component_get_drvdata(dai->component); ssm2518 401 sound/soc/codecs/ssm2518.c return regmap_update_bits(ssm2518->regmap, SSM2518_REG_MUTE_CTRL, ssm2518 407 sound/soc/codecs/ssm2518.c struct ssm2518 *ssm2518 = snd_soc_component_get_drvdata(dai->component); ssm2518 438 sound/soc/codecs/ssm2518.c ssm2518->right_j = false; ssm2518 449 sound/soc/codecs/ssm2518.c ssm2518->right_j = true; ssm2518 469 sound/soc/codecs/ssm2518.c ret = regmap_write(ssm2518->regmap, SSM2518_REG_SAI_CTRL1, ctrl1); ssm2518 473 sound/soc/codecs/ssm2518.c return regmap_write(ssm2518->regmap, SSM2518_REG_SAI_CTRL2, ctrl2); ssm2518 476 sound/soc/codecs/ssm2518.c static int ssm2518_set_power(struct ssm2518 *ssm2518, bool enable) ssm2518 481 sound/soc/codecs/ssm2518.c ret = regmap_update_bits(ssm2518->regmap, SSM2518_REG_POWER1, ssm2518 483 sound/soc/codecs/ssm2518.c regcache_mark_dirty(ssm2518->regmap); ssm2518 486 sound/soc/codecs/ssm2518.c if (gpio_is_valid(ssm2518->enable_gpio)) ssm2518 487 sound/soc/codecs/ssm2518.c gpio_set_value(ssm2518->enable_gpio, enable); ssm2518 489 sound/soc/codecs/ssm2518.c regcache_cache_only(ssm2518->regmap, !enable); ssm2518 492 sound/soc/codecs/ssm2518.c ret = regmap_update_bits(ssm2518->regmap, SSM2518_REG_POWER1, ssm2518 494 sound/soc/codecs/ssm2518.c regcache_sync(ssm2518->regmap); ssm2518 503 sound/soc/codecs/ssm2518.c struct ssm2518 *ssm2518 = snd_soc_component_get_drvdata(component); ssm2518 513 sound/soc/codecs/ssm2518.c ret = ssm2518_set_power(ssm2518, true); ssm2518 516 sound/soc/codecs/ssm2518.c ret = ssm2518_set_power(ssm2518, false); ssm2518 526 sound/soc/codecs/ssm2518.c struct ssm2518 *ssm2518 = snd_soc_component_get_drvdata(dai->component); ssm2518 532 sound/soc/codecs/ssm2518.c return regmap_update_bits(ssm2518->regmap, ssm2518 593 sound/soc/codecs/ssm2518.c ret = regmap_write(ssm2518->regmap, SSM2518_REG_CHAN_MAP, ssm2518 599 sound/soc/codecs/ssm2518.c ret = regmap_update_bits(ssm2518->regmap, SSM2518_REG_SAI_CTRL1, ssm2518 604 sound/soc/codecs/ssm2518.c return regmap_update_bits(ssm2518->regmap, SSM2518_REG_SAI_CTRL2, ssm2518 611 sound/soc/codecs/ssm2518.c struct ssm2518 *ssm2518 = snd_soc_component_get_drvdata(dai->component); ssm2518 613 sound/soc/codecs/ssm2518.c if (ssm2518->constraints) ssm2518 615 sound/soc/codecs/ssm2518.c SNDRV_PCM_HW_PARAM_RATE, ssm2518->constraints); ssm2518 646 sound/soc/codecs/ssm2518.c struct ssm2518 *ssm2518 = snd_soc_component_get_drvdata(component); ssm2518 668 sound/soc/codecs/ssm2518.c ssm2518->constraints = NULL; ssm2518 676 sound/soc/codecs/ssm2518.c ssm2518->constraints = &ssm2518_constraints_2048000; ssm2518 687 sound/soc/codecs/ssm2518.c ssm2518->constraints = &ssm2518_constraints_2822000; ssm2518 695 sound/soc/codecs/ssm2518.c ssm2518->constraints = &ssm2518_constraints_3072000; ssm2518 700 sound/soc/codecs/ssm2518.c ssm2518->constraints = &ssm2518_constraints_12288000; ssm2518 706 sound/soc/codecs/ssm2518.c ssm2518->sysclk = freq; ssm2518 708 sound/soc/codecs/ssm2518.c return regmap_update_bits(ssm2518->regmap, SSM2518_REG_POWER1, ssm2518 741 sound/soc/codecs/ssm2518.c struct ssm2518 *ssm2518; ssm2518 744 sound/soc/codecs/ssm2518.c ssm2518 = devm_kzalloc(&i2c->dev, sizeof(*ssm2518), GFP_KERNEL); ssm2518 745 sound/soc/codecs/ssm2518.c if (ssm2518 == NULL) ssm2518 749 sound/soc/codecs/ssm2518.c ssm2518->enable_gpio = pdata->enable_gpio; ssm2518 751 sound/soc/codecs/ssm2518.c ssm2518->enable_gpio = of_get_gpio(i2c->dev.of_node, 0); ssm2518 752 sound/soc/codecs/ssm2518.c if (ssm2518->enable_gpio < 0 && ssm2518->enable_gpio != -ENOENT) ssm2518 753 sound/soc/codecs/ssm2518.c return ssm2518->enable_gpio; ssm2518 755 sound/soc/codecs/ssm2518.c ssm2518->enable_gpio = -1; ssm2518 758 sound/soc/codecs/ssm2518.c if (gpio_is_valid(ssm2518->enable_gpio)) { ssm2518 759 sound/soc/codecs/ssm2518.c ret = devm_gpio_request_one(&i2c->dev, ssm2518->enable_gpio, ssm2518 765 sound/soc/codecs/ssm2518.c i2c_set_clientdata(i2c, ssm2518); ssm2518 767 sound/soc/codecs/ssm2518.c ssm2518->regmap = devm_regmap_init_i2c(i2c, &ssm2518_regmap_config); ssm2518 768 sound/soc/codecs/ssm2518.c if (IS_ERR(ssm2518->regmap)) ssm2518 769 sound/soc/codecs/ssm2518.c return PTR_ERR(ssm2518->regmap); ssm2518 777 sound/soc/codecs/ssm2518.c regcache_cache_bypass(ssm2518->regmap, true); ssm2518 778 sound/soc/codecs/ssm2518.c ret = regmap_write(ssm2518->regmap, SSM2518_REG_POWER1, ssm2518 780 sound/soc/codecs/ssm2518.c regcache_cache_bypass(ssm2518->regmap, false); ssm2518 784 sound/soc/codecs/ssm2518.c ret = regmap_update_bits(ssm2518->regmap, SSM2518_REG_POWER2, ssm2518 789 sound/soc/codecs/ssm2518.c ret = ssm2518_set_power(ssm2518, false);