diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2016-12-23 03:55:23 -0800 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-12-23 03:55:22 -0800 |
commit | 753d9edb8a91f10bffee82484be6feb505744564 (patch) | |
tree | be26719a7562702a45c41a95d4b9ea7c32157c6c /sound | |
parent | 845d4badfdf6127cda72395dff37067876e9b59b (diff) | |
parent | 40512fa4ebee46b726def91300aa73da07d8555c (diff) |
Merge "ASoC: wcd934x: Fix headset TX mode setting"
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/codecs/wcd934x/wcd934x.c | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/sound/soc/codecs/wcd934x/wcd934x.c b/sound/soc/codecs/wcd934x/wcd934x.c index f797babe41ed..9b45db43ffb2 100644 --- a/sound/soc/codecs/wcd934x/wcd934x.c +++ b/sound/soc/codecs/wcd934x/wcd934x.c @@ -5126,19 +5126,18 @@ static int tavil_amic_pwr_lvl_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) { struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol); - u16 amic_reg; + u16 amic_reg = 0; if (!strcmp(kcontrol->id.name, "AMIC_1_2 PWR MODE")) amic_reg = WCD934X_ANA_AMIC1; if (!strcmp(kcontrol->id.name, "AMIC_3_4 PWR MODE")) amic_reg = WCD934X_ANA_AMIC3; - else - goto ret; - ucontrol->value.integer.value[0] = - (snd_soc_read(codec, amic_reg) & WCD934X_AMIC_PWR_LVL_MASK) >> - WCD934X_AMIC_PWR_LVL_SHIFT; -ret: + if (amic_reg) + ucontrol->value.integer.value[0] = + (snd_soc_read(codec, amic_reg) & + WCD934X_AMIC_PWR_LVL_MASK) >> + WCD934X_AMIC_PWR_LVL_SHIFT; return 0; } @@ -5147,7 +5146,7 @@ static int tavil_amic_pwr_lvl_put(struct snd_kcontrol *kcontrol, { struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol); u32 mode_val; - u16 amic_reg; + u16 amic_reg = 0; mode_val = ucontrol->value.enumerated.item[0]; @@ -5157,12 +5156,10 @@ static int tavil_amic_pwr_lvl_put(struct snd_kcontrol *kcontrol, amic_reg = WCD934X_ANA_AMIC1; if (!strcmp(kcontrol->id.name, "AMIC_3_4 PWR MODE")) amic_reg = WCD934X_ANA_AMIC3; - else - goto ret; - snd_soc_update_bits(codec, amic_reg, WCD934X_AMIC_PWR_LVL_MASK, - mode_val << WCD934X_AMIC_PWR_LVL_SHIFT); -ret: + if (amic_reg) + snd_soc_update_bits(codec, amic_reg, WCD934X_AMIC_PWR_LVL_MASK, + mode_val << WCD934X_AMIC_PWR_LVL_SHIFT); return 0; } |