mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 12:28:41 +08:00
ASoC: soc-ops: use snd_soc_card_get_kcontrol() at snd_soc_limit_volume()
snd_soc_limit_volume() is finding snd_kcontrol by using original coding, but we already have snd_soc_card_get_kcontrol(). Let's use existing function. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Link: https://lore.kernel.org/r/87y2y3afgd.wl-kuninori.morimoto.gx@renesas.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
d8145989ff
commit
0881ab6e74
@ -592,23 +592,16 @@ EXPORT_SYMBOL_GPL(snd_soc_get_volsw_range);
|
||||
int snd_soc_limit_volume(struct snd_soc_card *card,
|
||||
const char *name, int max)
|
||||
{
|
||||
struct snd_card *snd_card = card->snd_card;
|
||||
struct snd_kcontrol *kctl;
|
||||
struct soc_mixer_control *mc;
|
||||
int found = 0;
|
||||
int ret = -EINVAL;
|
||||
|
||||
/* Sanity check for name and max */
|
||||
if (unlikely(!name || max <= 0))
|
||||
return -EINVAL;
|
||||
|
||||
list_for_each_entry(kctl, &snd_card->controls, list) {
|
||||
if (!strncmp(kctl->id.name, name, sizeof(kctl->id.name))) {
|
||||
found = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (found) {
|
||||
kctl = snd_soc_card_get_kcontrol(card, name);
|
||||
if (kctl) {
|
||||
mc = (struct soc_mixer_control *)kctl->private_value;
|
||||
if (max <= mc->max) {
|
||||
mc->platform_max = max;
|
||||
|
Loading…
Reference in New Issue
Block a user