summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2016-02-08 23:58:32 +0000
committerAmaury Pouly <amaury.pouly@gmail.com>2016-02-12 23:04:33 +0000
commit6f54a86360acd3d5b193a92637eadf6df7246bf3 (patch)
tree5fa3d3c2c8977191edca9b59f403263233584382
parent76190313071f5b316db33fe578ae94ec744b6a27 (diff)
downloadrockbox-6f54a86.tar.gz
rockbox-6f54a86.zip
as3514: fix bug in volume management on AS3543 targets which are not AS3525v2
Some old code made the assumption that CONFIG_CPU == AS3525v2 if and only if HAVE_AS3543, which is not true on targets like the Samsung YP-R0. This fixes several issues on such targets like a huge volume gap between -39dB and -40dB and a volume artificially capped at -72dB instead of -82dB. Change-Id: Ib1c883ac593c0c3ce5e2bf4eb408924ce5f5ad93
-rw-r--r--firmware/drivers/audio/as3514.c6
-rw-r--r--firmware/export/as3514.h6
2 files changed, 6 insertions, 6 deletions
diff --git a/firmware/drivers/audio/as3514.c b/firmware/drivers/audio/as3514.c
index 2d69395d37..167dd85abb 100644
--- a/firmware/drivers/audio/as3514.c
+++ b/firmware/drivers/audio/as3514.c
@@ -34,7 +34,7 @@
#include "i2s.h"
#include "ascodec.h"
-#if CONFIG_CPU == AS3525v2
+#ifdef HAVE_AS3543
/* Headphone volume goes from -81.0 ... +6dB */
#define VOLUME_MIN -820
#define VOLUME_MAX 60
@@ -48,7 +48,7 @@
* This drivers supports:
* as3514 , as used in the PP targets
* as3515 , as used in the as3525 targets
- * as3543 , as used in the as3525v2 targets
+ * as3543 , as used in the as3525v2 and other as3543 targets
*/
#if CONFIG_CPU == AS3525
@@ -278,7 +278,7 @@ void audiohw_set_volume(int vol_l, int vol_r)
/*AS3543 mixer can go a little louder then the as3514, although
* it might be possible to go louder on the as3514 as well */
-#if CONFIG_CPU == AS3525v2
+#ifdef HAVE_AS3543
#define MIXER_MAX_VOLUME 0x1b
#else /* lets leave the AS3514 alone until its better tested*/
#define MIXER_MAX_VOLUME 0x16
diff --git a/firmware/export/as3514.h b/firmware/export/as3514.h
index b5c9438786..783683e593 100644
--- a/firmware/export/as3514.h
+++ b/firmware/export/as3514.h
@@ -31,11 +31,11 @@
#define AUDIOHW_CAPS (LIN_GAIN_CAP | MIC_GAIN_CAP)
/*different volume ranges for different AMS chips*/
-#if CONFIG_CPU == AS3525v2
+#ifdef HAVE_AS3543
AUDIOHW_SETTING(VOLUME, "dB", 0, 1, -82, 6, -25)
-#else /* AS3525v1 */
+#else /* !HAVE_AS3543 */
AUDIOHW_SETTING(VOLUME, "dB", 0, 1, -74, 6, -25)
-#endif /* CONFIG_CPU == AS3525v2 */
+#endif /* HAVE_AS3543 */
#ifdef HAVE_RECORDING
AUDIOHW_SETTING(MIC_GAIN, "dB", 1, 1, 0, 39, 23, (val - 23) * 15)