summaryrefslogtreecommitdiff
path: root/firmware/export/tlv320.h
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/export/tlv320.h')
-rw-r--r--firmware/export/tlv320.h28
1 files changed, 23 insertions, 5 deletions
diff --git a/firmware/export/tlv320.h b/firmware/export/tlv320.h
index 66f4d5ca92..99359f72ce 100644
--- a/firmware/export/tlv320.h
+++ b/firmware/export/tlv320.h
@@ -25,15 +25,33 @@
25#define VOLUME_MIN -730 25#define VOLUME_MIN -730
26#define VOLUME_MAX 60 26#define VOLUME_MAX 60
27 27
28extern int tenthdb2master(int db); 28#define AUDIOHW_CAPS (LIN_GAIN_CAP | MIC_GAIN_CAP)
29
30AUDIOHW_SETTING(VOLUME, "dB", 0, 1, -74, 6, -20)
31#ifdef HAVE_RECORDING
32 /* (x - 23)/1.5 *10 */
33AUDIOHW_SETTING(LEFT_GAIN, "dB", 1, 1, 0, 31, 23, (val - 23) * 15)
34AUDIOHW_SETTING(RIGHT_GAIN, "dB", 1, 1, 0, 31, 23, (val - 23) * 15)
35/* 0 or 20 dB */
36AUDIOHW_SETTING(MIC_GAIN, "dB", 1, 1, 0, 1, 1, val * 200)
37#endif /* HAVE_RECORDING */
38
39static inline int _param_2_phys(int setting, int value)
40{
41 switch(setting)
42 {
43 default: return value;
44#ifdef HAVE_RECORDING
45 case SOUND_LEFT_GAIN:
46 case SOUND_RIGHT_GAIN: return (value - 23) * 15;
47 case SOUND_MIC_GAIN: return value * 200; /* 0 or 20 dB */
48#endif
49 }
50}
29 51
30/*** definitions ***/ 52/*** definitions ***/
31extern void audiohw_set_headphone_vol(int vol_l, int vol_r);
32
33#define HEADPHONE_MUTE 0x30 /* 0110000 = -73db */ 53#define HEADPHONE_MUTE 0x30 /* 0110000 = -73db */
34 54
35/* ToDo: samplerates */
36
37/* registers */ 55/* registers */
38/* REG_LLIV: Left line input channel volume control */ 56/* REG_LLIV: Left line input channel volume control */
39#define REG_LLIV 0x0 57#define REG_LLIV 0x0