Lines Matching +full:charge +full:- +full:pump
1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * max9850.c -- codec driver for max9850
53 0x18, 0x1f, TLV_DB_SCALE_ITEM(-7450, 400, 0),
54 0x20, 0x33, TLV_DB_SCALE_ITEM(-4150, 200, 0),
55 0x34, 0x37, TLV_DB_SCALE_ITEM(-150, 100, 0),
70 SND_SOC_DAPM_SUPPLY("Charge Pump 1", MAX9850_ENABLE, 4, 0, NULL, 0),
71 SND_SOC_DAPM_SUPPLY("Charge Pump 2", MAX9850_ENABLE, 5, 0, NULL, 0),
105 {"Output Mixer", NULL, "Charge Pump 1"},
106 {"Output Mixer", NULL, "Charge Pump 2"},
115 struct snd_soc_component *component = dai->component; in max9850_hw_params()
120 if (!max9850->sysclk) in max9850_hw_params()
121 return -EINVAL; in max9850_hw_params()
128 do_div(lrclk_div, max9850->sysclk); in max9850_hw_params()
144 return -EINVAL; in max9850_hw_params()
154 struct snd_soc_component *component = codec_dai->component; in max9850_set_dai_sysclk()
157 /* calculate mclk -> iclk divider */ in max9850_set_dai_sysclk()
165 return -EINVAL; in max9850_set_dai_sysclk()
167 max9850->sysclk = freq; in max9850_set_dai_sysclk()
173 struct snd_soc_component *component = codec_dai->component; in max9850_set_dai_fmt()
184 return -EINVAL; in max9850_set_dai_fmt()
198 return -EINVAL; in max9850_set_dai_fmt()
215 return -EINVAL; in max9850_set_dai_fmt()
237 ret = regcache_sync(max9850->regmap); in max9850_set_bias_level()
239 dev_err(component->dev, in max9850_set_bias_level()
263 .name = "max9850-hifi",
276 /* enable zero-detect */ in max9850_probe()
278 /* enable slew-rate control */ in max9850_probe()
280 /* set slew-rate 125ms */ in max9850_probe()
306 max9850 = devm_kzalloc(&i2c->dev, sizeof(struct max9850_priv), in max9850_i2c_probe()
309 return -ENOMEM; in max9850_i2c_probe()
311 max9850->regmap = devm_regmap_init_i2c(i2c, &max9850_regmap); in max9850_i2c_probe()
312 if (IS_ERR(max9850->regmap)) in max9850_i2c_probe()
313 return PTR_ERR(max9850->regmap); in max9850_i2c_probe()
317 ret = devm_snd_soc_register_component(&i2c->dev, in max9850_i2c_probe()