Skip to content

Commit

Permalink
Merge remote-tracking branch 'asoc/fix/dapm' into asoc-linus
Browse files Browse the repository at this point in the history
  • Loading branch information
Mark Brown committed Aug 15, 2014
2 parents 543c675 + 6912831 commit 0a81cbe
Showing 1 changed file with 7 additions and 5 deletions.
12 changes: 7 additions & 5 deletions sound/soc/soc-dapm.c
Original file line number Diff line number Diff line change
Expand Up @@ -2860,12 +2860,14 @@ int snd_soc_dapm_get_enum_double(struct snd_kcontrol *kcontrol,
struct snd_soc_dapm_context *dapm = snd_soc_dapm_kcontrol_dapm(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
unsigned int reg_val, val;
int ret = 0;

if (e->reg != SND_SOC_NOPM)
ret = soc_dapm_read(dapm, e->reg, &reg_val);
else
if (e->reg != SND_SOC_NOPM) {
int ret = soc_dapm_read(dapm, e->reg, &reg_val);
if (ret)
return ret;
} else {
reg_val = dapm_kcontrol_get_value(kcontrol);
}

val = (reg_val >> e->shift_l) & e->mask;
ucontrol->value.enumerated.item[0] = snd_soc_enum_val_to_item(e, val);
Expand All @@ -2875,7 +2877,7 @@ int snd_soc_dapm_get_enum_double(struct snd_kcontrol *kcontrol,
ucontrol->value.enumerated.item[1] = val;
}

return ret;
return 0;
}
EXPORT_SYMBOL_GPL(snd_soc_dapm_get_enum_double);

Expand Down

0 comments on commit 0a81cbe

Please sign in to comment.