diff options
author | Amaury Pouly <amaury.pouly@gmail.com> | 2016-09-21 00:00:22 +0100 |
---|---|---|
committer | Amaury Pouly <amaury.pouly@gmail.com> | 2016-09-21 00:29:14 +0100 |
commit | 9dc4b00df1a997e8b9223c040c27392d1d2151e3 (patch) | |
tree | 4d158b9c16176f20536a51ee8cc07c855125734c /firmware | |
parent | 1f8ea9fe27313228e5df67ce6447830b5c30e5e3 (diff) |
imx233: fix recording gain
For some reason, there was a mismatch between the setting (decibel) and the
audiohw code (centicel). This resulted in a gain divided by 10. This may
explain why some people experienced low volume with the mic on the fuze+.
Change-Id: I138ac18dd93c36f43a7dfce735efc826405c598c
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/drivers/audio/imx233-codec.c | 7 | ||||
-rw-r--r-- | firmware/target/arm/imx233/audioout-imx233.c | 1 |
2 files changed, 4 insertions, 4 deletions
diff --git a/firmware/drivers/audio/imx233-codec.c b/firmware/drivers/audio/imx233-codec.c index b2dcaa3d23..357aa33bb5 100644 --- a/firmware/drivers/audio/imx233-codec.c +++ b/firmware/drivers/audio/imx233-codec.c @@ -49,6 +49,7 @@ void audiohw_close(void) /* volume in centibels */ void audiohw_set_volume(int vol_l, int vol_r) { + /* convert to half-dB */ imx233_audioout_set_hp_vol(vol_l / 5, vol_r / 5); } @@ -72,11 +73,11 @@ void audiohw_disable_recording(void) imx233_audioin_close(); } -/* volume in centibels */ +/* volume in decibels */ void audiohw_set_recvol(int left, int right, int type) { - left /= 5; - right /= 5; + left *= 2; /* convert to half-dB */ + right *= 2; if(type == AUDIO_GAIN_LINEIN) { imx233_audioin_set_vol(false, left, AUDIOIN_SELECT_LINE1); diff --git a/firmware/target/arm/imx233/audioout-imx233.c b/firmware/target/arm/imx233/audioout-imx233.c index 6ebeb8a469..6c2c579536 100644 --- a/firmware/target/arm/imx233/audioout-imx233.c +++ b/firmware/target/arm/imx233/audioout-imx233.c @@ -54,7 +54,6 @@ static int hp_unmute_cb(struct timeout *tmo) void imx233_audioout_preinit(void) { - /* Enable AUDIOOUT block */ imx233_reset_block(&HW_AUDIOOUT_CTRL); /* Enable digital filter clock */ |