Lines Matching refs:ssm4567
89 struct ssm4567 { struct
203 struct ssm4567 *ssm4567 = snd_soc_codec_get_drvdata(codec); in ssm4567_hw_params() local
220 return regmap_update_bits(ssm4567->regmap, SSM4567_REG_DAC_CTRL, in ssm4567_hw_params()
226 struct ssm4567 *ssm4567 = snd_soc_codec_get_drvdata(dai->codec); in ssm4567_mute() local
230 return regmap_update_bits(ssm4567->regmap, SSM4567_REG_DAC_CTRL, in ssm4567_mute()
237 struct ssm4567 *ssm4567 = snd_soc_dai_get_drvdata(dai); in ssm4567_set_tdm_slot() local
266 ret = regmap_update_bits(ssm4567->regmap, SSM4567_REG_SAI_CTRL_2, in ssm4567_set_tdm_slot()
272 return regmap_update_bits(ssm4567->regmap, SSM4567_REG_SAI_CTRL_1, in ssm4567_set_tdm_slot()
278 struct ssm4567 *ssm4567 = snd_soc_dai_get_drvdata(dai); in ssm4567_set_dai_fmt() local
332 return regmap_update_bits(ssm4567->regmap, SSM4567_REG_SAI_CTRL_1, in ssm4567_set_dai_fmt()
341 static int ssm4567_set_power(struct ssm4567 *ssm4567, bool enable) in ssm4567_set_power() argument
346 ret = regmap_update_bits(ssm4567->regmap, in ssm4567_set_power()
349 regcache_mark_dirty(ssm4567->regmap); in ssm4567_set_power()
352 regcache_cache_only(ssm4567->regmap, !enable); in ssm4567_set_power()
355 ret = regmap_write(ssm4567->regmap, SSM4567_REG_SOFT_RESET, in ssm4567_set_power()
360 ret = regmap_update_bits(ssm4567->regmap, in ssm4567_set_power()
363 regcache_sync(ssm4567->regmap); in ssm4567_set_power()
372 struct ssm4567 *ssm4567 = snd_soc_codec_get_drvdata(codec); in ssm4567_set_bias_level() local
382 ret = ssm4567_set_power(ssm4567, true); in ssm4567_set_bias_level()
385 ret = ssm4567_set_power(ssm4567, false); in ssm4567_set_bias_level()
449 struct ssm4567 *ssm4567; in ssm4567_i2c_probe() local
452 ssm4567 = devm_kzalloc(&i2c->dev, sizeof(*ssm4567), GFP_KERNEL); in ssm4567_i2c_probe()
453 if (ssm4567 == NULL) in ssm4567_i2c_probe()
456 i2c_set_clientdata(i2c, ssm4567); in ssm4567_i2c_probe()
458 ssm4567->regmap = devm_regmap_init_i2c(i2c, &ssm4567_regmap_config); in ssm4567_i2c_probe()
459 if (IS_ERR(ssm4567->regmap)) in ssm4567_i2c_probe()
460 return PTR_ERR(ssm4567->regmap); in ssm4567_i2c_probe()
462 ret = regmap_write(ssm4567->regmap, SSM4567_REG_SOFT_RESET, 0x00); in ssm4567_i2c_probe()
466 ret = ssm4567_set_power(ssm4567, false); in ssm4567_i2c_probe()