Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9cd8bd8a authored by Mark Brown's avatar Mark Brown
Browse files

ASoC: Fix dB scales for WM8400



These scales should be regular, not linear.

Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
Cc: stable@kernel.org
parent 52e39d22
Loading
Loading
Loading
Loading
+9 −9
Original line number Original line Diff line number Diff line
@@ -106,21 +106,21 @@ static void wm8400_codec_reset(struct snd_soc_codec *codec)
	wm8400_reset_codec_reg_cache(wm8400->wm8400);
	wm8400_reset_codec_reg_cache(wm8400->wm8400);
}
}


static const DECLARE_TLV_DB_LINEAR(rec_mix_tlv, -1500, 600);
static const DECLARE_TLV_DB_SCALE(rec_mix_tlv, -1500, 600, 0);


static const DECLARE_TLV_DB_LINEAR(in_pga_tlv, -1650, 3000);
static const DECLARE_TLV_DB_SCALE(in_pga_tlv, -1650, 3000, 0);


static const DECLARE_TLV_DB_LINEAR(out_mix_tlv, -2100, 0);
static const DECLARE_TLV_DB_SCALE(out_mix_tlv, -2100, 0, 0);


static const DECLARE_TLV_DB_LINEAR(out_pga_tlv, -7300, 600);
static const DECLARE_TLV_DB_SCALE(out_pga_tlv, -7300, 600, 0);


static const DECLARE_TLV_DB_LINEAR(out_omix_tlv, -600, 0);
static const DECLARE_TLV_DB_SCALE(out_omix_tlv, -600, 0, 0);


static const DECLARE_TLV_DB_LINEAR(out_dac_tlv, -7163, 0);
static const DECLARE_TLV_DB_SCALE(out_dac_tlv, -7163, 0, 0);


static const DECLARE_TLV_DB_LINEAR(in_adc_tlv, -7163, 1763);
static const DECLARE_TLV_DB_SCALE(in_adc_tlv, -7163, 1763, 0);


static const DECLARE_TLV_DB_LINEAR(out_sidetone_tlv, -3600, 0);
static const DECLARE_TLV_DB_SCALE(out_sidetone_tlv, -3600, 0, 0);


static int wm8400_outpga_put_volsw_vu(struct snd_kcontrol *kcontrol,
static int wm8400_outpga_put_volsw_vu(struct snd_kcontrol *kcontrol,
        struct snd_ctl_elem_value *ucontrol)
        struct snd_ctl_elem_value *ucontrol)
@@ -439,7 +439,7 @@ static int outmixer_event (struct snd_soc_dapm_widget *w,
/* INMIX dB values */
/* INMIX dB values */
static const unsigned int in_mix_tlv[] = {
static const unsigned int in_mix_tlv[] = {
	TLV_DB_RANGE_HEAD(1),
	TLV_DB_RANGE_HEAD(1),
	0,7, TLV_DB_LINEAR_ITEM(-1200, 600),
	0,7, TLV_DB_SCALE_ITEM(-1200, 600, 0),
};
};


/* Left In PGA Connections */
/* Left In PGA Connections */