summaryrefslogtreecommitdiff
path: root/firmware/export/wm8975.h
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/export/wm8975.h')
-rw-r--r--firmware/export/wm8975.h20
1 files changed, 13 insertions, 7 deletions
diff --git a/firmware/export/wm8975.h b/firmware/export/wm8975.h
index c9d0bd1bbe..f4e0d203a1 100644
--- a/firmware/export/wm8975.h
+++ b/firmware/export/wm8975.h
@@ -26,13 +26,19 @@
#define VOLUME_MIN -730
#define VOLUME_MAX 60
-#define AUDIOHW_CAPS (BASS_CAP | TREBLE_CAP)
-
-extern int tenthdb2master(int db);
-
-extern void audiohw_set_master_vol(int vol_l, int vol_r);
-extern void audiohw_set_lineout_vol(int vol_l, int vol_r);
-extern void audiohw_enable_lineout(bool enable);
+#define AUDIOHW_CAPS (BASS_CAP | TREBLE_CAP | LINEOUT_CAP | \
+ LIN_GAIN_CAP | MIC_GAIN_CAP)
+
+AUDIOHW_SETTING(VOLUME, "dB", 0, 1, -74, 6, -25)
+AUDIOHW_SETTING(BASS, "dB", 0, 1, -6, 9, 0)
+AUDIOHW_SETTING(TREBLE, "dB", 0, 1, -6, 9, 0)
+#ifdef HAVE_RECORDING
+AUDIOHW_SETTING(LEFT_GAIN, "dB", 1, 1, 0, 63, 23, ((val - 23) * 15) / 2)
+AUDIOHW_SETTING(RIGHT_GAIN, "dB", 1, 1, 0, 63, 23, ((val - 23) * 15) / 2))
+AUDIOHW_SETTING(MIC_GAIN, "dB", 1, 1, 0, 63, 0, ((val - 23) * 15) / 2 + 200)
+#endif /* HAVE_RECORDING */
+
+void audiohw_enable_lineout(bool enable);
/* Register addresses and bits */