summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/settings.h4
-rw-r--r--firmware/drivers/audio/wm8985.c4
-rw-r--r--firmware/export/wm8985.h6
-rw-r--r--firmware/target/mips/ingenic_jz47xx/codec-jz4740.c6
4 files changed, 18 insertions, 2 deletions
diff --git a/apps/settings.h b/apps/settings.h
index c8e8d642a2..8c58fed900 100644
--- a/apps/settings.h
+++ b/apps/settings.h
@@ -336,8 +336,10 @@ struct user_settings
336 bool superbass; /* true/false */ 336 bool superbass; /* true/false */
337#endif 337#endif
338 338
339#if defined(HAVE_WM8758) || defined(HAVE_WM8978) 339#ifdef AUDIOHW_HAVE_BASS_CUTOFF
340 int bass_cutoff; 340 int bass_cutoff;
341#endif
342#ifdef AUDIOHW_HAVE_TREBLE_CUTOFF
341 int treble_cutoff; 343 int treble_cutoff;
342#endif 344#endif
343 345
diff --git a/firmware/drivers/audio/wm8985.c b/firmware/drivers/audio/wm8985.c
index 18fd7c590b..da08b44402 100644
--- a/firmware/drivers/audio/wm8985.c
+++ b/firmware/drivers/audio/wm8985.c
@@ -99,8 +99,12 @@ const struct sound_settings_info audiohw_settings[] = {
99 [SOUND_RIGHT_GAIN] = {"dB", 1, 1,-128, 96, 0}, 99 [SOUND_RIGHT_GAIN] = {"dB", 1, 1,-128, 96, 0},
100 [SOUND_MIC_GAIN] = {"dB", 1, 1,-128, 108, 16}, 100 [SOUND_MIC_GAIN] = {"dB", 1, 1,-128, 108, 16},
101#endif 101#endif
102#ifdef AUDIOHW_HAVE_BASS_CUTOFF
102 [SOUND_BASS_CUTOFF] = {"", 0, 1, 1, 4, 1}, 103 [SOUND_BASS_CUTOFF] = {"", 0, 1, 1, 4, 1},
104#endif
105#ifdef AUDIOHW_HAVE_TREBLE_CUTOFF
103 [SOUND_TREBLE_CUTOFF] = {"", 0, 1, 1, 4, 1}, 106 [SOUND_TREBLE_CUTOFF] = {"", 0, 1, 1, 4, 1},
107#endif
104}; 108};
105 109
106/* shadow registers */ 110/* shadow registers */
diff --git a/firmware/export/wm8985.h b/firmware/export/wm8985.h
index 5d036a672f..c6b8e3825f 100644
--- a/firmware/export/wm8985.h
+++ b/firmware/export/wm8985.h
@@ -26,7 +26,13 @@
26#define VOLUME_MIN -570 26#define VOLUME_MIN -570
27#define VOLUME_MAX 60 27#define VOLUME_MAX 60
28 28
29#ifdef COWON_D2
30/* FIXME: somehow something was out of sync in the .lang, settings and caps. Keep the
31 * cutoffs disabled until someone with the device works it out. */
32#define AUDIOHW_CAPS (BASS_CAP | TREBLE_CAP)
33#else
29#define AUDIOHW_CAPS (BASS_CAP | TREBLE_CAP | BASS_CUTOFF_CAP | TREBLE_CUTOFF_CAP) 34#define AUDIOHW_CAPS (BASS_CAP | TREBLE_CAP | BASS_CUTOFF_CAP | TREBLE_CUTOFF_CAP)
35#endif
30 36
31extern int tenthdb2master(int db); 37extern int tenthdb2master(int db);
32 38
diff --git a/firmware/target/mips/ingenic_jz47xx/codec-jz4740.c b/firmware/target/mips/ingenic_jz47xx/codec-jz4740.c
index ce6d889885..ab9efc91b0 100644
--- a/firmware/target/mips/ingenic_jz47xx/codec-jz4740.c
+++ b/firmware/target/mips/ingenic_jz47xx/codec-jz4740.c
@@ -21,7 +21,7 @@
21 21
22#include "config.h" 22#include "config.h"
23#include "audio.h" 23#include "audio.h"
24#include "audiohw.h" 24#include "sound.h"
25#include "jz4740.h" 25#include "jz4740.h"
26#include "system.h" 26#include "system.h"
27 27
@@ -33,8 +33,12 @@ const struct sound_settings_info audiohw_settings[] = {
33 [SOUND_VOLUME] = {"dB", 0, 1, 0, 6, 0}, 33 [SOUND_VOLUME] = {"dB", 0, 1, 0, 6, 0},
34#endif 34#endif
35 /* HAVE_SW_TONE_CONTROLS */ 35 /* HAVE_SW_TONE_CONTROLS */
36#ifdef AUDIOHW_HAVE_BASS
36 [SOUND_BASS] = {"dB", 0, 1, -24, 24, 0}, 37 [SOUND_BASS] = {"dB", 0, 1, -24, 24, 0},
38#endif
39#ifdef AUDIOHW_HAVE_TREBLE
37 [SOUND_TREBLE] = {"dB", 0, 1, -24, 24, 0}, 40 [SOUND_TREBLE] = {"dB", 0, 1, -24, 24, 0},
41#endif
38 [SOUND_BALANCE] = {"%", 0, 1,-100, 100, 0}, 42 [SOUND_BALANCE] = {"%", 0, 1,-100, 100, 0},
39 [SOUND_CHANNELS] = {"", 0, 1, 0, 5, 0}, 43 [SOUND_CHANNELS] = {"", 0, 1, 0, 5, 0},
40 [SOUND_STEREO_WIDTH] = {"%", 0, 5, 0, 250, 100}, 44 [SOUND_STEREO_WIDTH] = {"%", 0, 5, 0, 250, 100},