summaryrefslogtreecommitdiff
path: root/firmware/export
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/as3514.h1
-rw-r--r--firmware/export/audiohw.h73
-rw-r--r--firmware/export/config.h5
-rw-r--r--firmware/export/mas35xx.h27
-rw-r--r--firmware/export/sound.h37
-rw-r--r--firmware/export/tlv320.h2
-rw-r--r--firmware/export/uda1380.h2
-rw-r--r--firmware/export/wm8731l.h2
-rw-r--r--firmware/export/wm8751.h2
-rw-r--r--firmware/export/wm8758.h2
-rw-r--r--firmware/export/wm8975.h2
11 files changed, 120 insertions, 35 deletions
diff --git a/firmware/export/as3514.h b/firmware/export/as3514.h
index 5f37fd7fcf..406857f491 100644
--- a/firmware/export/as3514.h
+++ b/firmware/export/as3514.h
@@ -21,6 +21,7 @@
21#define _AS3514_H 21#define _AS3514_H
22 22
23#include <stdbool.h> 23#include <stdbool.h>
24#include "audiohw.h"
24 25
25extern int tenthdb2master(int db); 26extern int tenthdb2master(int db);
26 27
diff --git a/firmware/export/audiohw.h b/firmware/export/audiohw.h
new file mode 100644
index 0000000000..38e68138c9
--- /dev/null
+++ b/firmware/export/audiohw.h
@@ -0,0 +1,73 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2007 by Christian Gmeiner
11 *
12 * All files in this archive are subject to the GNU General Public License.
13 * See the file COPYING in the source tree root for full license agreement.
14 *
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied.
17 *
18 ****************************************************************************/
19
20#ifndef _AUDIOHW_H_
21#define _AUDIOHW_H_
22
23#include "config.h"
24
25enum {
26 SOUND_VOLUME = 0,
27 SOUND_BASS,
28 SOUND_TREBLE,
29 SOUND_BALANCE,
30 SOUND_CHANNELS,
31 SOUND_STEREO_WIDTH,
32#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)
33 SOUND_LOUDNESS,
34 SOUND_AVC,
35 SOUND_MDB_STRENGTH,
36 SOUND_MDB_HARMONICS,
37 SOUND_MDB_CENTER,
38 SOUND_MDB_SHAPE,
39 SOUND_MDB_ENABLE,
40 SOUND_SUPERBASS,
41#endif
42#if CONFIG_CODEC == MAS3587F || defined(HAVE_UDA1380) || defined(HAVE_TLV320)\
43 || defined(HAVE_WM8975) || defined(HAVE_WM8758) || defined(HAVE_WM8731)
44 SOUND_LEFT_GAIN,
45 SOUND_RIGHT_GAIN,
46 SOUND_MIC_GAIN,
47#endif
48};
49
50enum Channel {
51 SOUND_CHAN_STEREO,
52 SOUND_CHAN_MONO,
53 SOUND_CHAN_CUSTOM,
54 SOUND_CHAN_MONO_LEFT,
55 SOUND_CHAN_MONO_RIGHT,
56 SOUND_CHAN_KARAOKE,
57 SOUND_CHAN_NUM_MODES,
58};
59
60struct sound_settings_info {
61 const char *unit;
62 int numdecimals;
63 int steps;
64 int minval;
65 int maxval;
66 int defaultval;
67};
68
69/* This struct is used by every driver to export its min/max/default values for
70 * its audio settings. Keep in mind that the order must be correct! */
71extern const struct sound_settings_info audiohw_settings[];
72
73#endif /* _AUDIOHW_H_ */
diff --git a/firmware/export/config.h b/firmware/export/config.h
index 0ad4fabbe1..dd4eaf4488 100644
--- a/firmware/export/config.h
+++ b/firmware/export/config.h
@@ -253,6 +253,11 @@
253#endif 253#endif
254#endif 254#endif
255 255
256/* Add one HAVE_ define for all mas35xx targets */
257#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3507D) || (CONFIG_CODEC == MAS3539F)
258#define HAVE_MAS35XX
259#endif
260
256#if CONFIG_CODEC == SWCODEC && !defined(BOOTLOADER) 261#if CONFIG_CODEC == SWCODEC && !defined(BOOTLOADER)
257#define HAVE_EXTENDED_MESSAGING_AND_NAME 262#define HAVE_EXTENDED_MESSAGING_AND_NAME
258#endif 263#endif
diff --git a/firmware/export/mas35xx.h b/firmware/export/mas35xx.h
new file mode 100644
index 0000000000..1239454a3f
--- /dev/null
+++ b/firmware/export/mas35xx.h
@@ -0,0 +1,27 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Implementation of MAS35xx audiohw api driver.
11 *
12 * Copyright (C) 2007 by Christian Gmeiner
13 *
14 * All files in this archive are subject to the GNU General Public License.
15 * See the file COPYING in the source tree root for full license agreement.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21
22#ifndef _MAS35XX_H
23#define _MAS35XX_H
24
25#include "audiohw.h"
26
27#endif /* _MAS35XX_H */
diff --git a/firmware/export/sound.h b/firmware/export/sound.h
index b060b97312..d405e99fbf 100644
--- a/firmware/export/sound.h
+++ b/firmware/export/sound.h
@@ -34,45 +34,12 @@
34#include "tlv320.h" 34#include "tlv320.h"
35#elif defined(HAVE_AS3514) 35#elif defined(HAVE_AS3514)
36#include "as3514.h" 36#include "as3514.h"
37#elif defined(HAVE_MAS35XX)
38#include "mas35xx.h"
37#endif 39#endif
38 40
39extern void audiohw_postinit(void); 41extern void audiohw_postinit(void);
40 42
41enum {
42 SOUND_VOLUME = 0,
43 SOUND_BASS,
44 SOUND_TREBLE,
45 SOUND_BALANCE,
46 SOUND_CHANNELS,
47 SOUND_STEREO_WIDTH,
48#if (CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F)
49 SOUND_LOUDNESS,
50 SOUND_AVC,
51 SOUND_MDB_STRENGTH,
52 SOUND_MDB_HARMONICS,
53 SOUND_MDB_CENTER,
54 SOUND_MDB_SHAPE,
55 SOUND_MDB_ENABLE,
56 SOUND_SUPERBASS,
57#endif
58#if CONFIG_CODEC == MAS3587F || defined(HAVE_UDA1380) || defined(HAVE_TLV320)\
59 || defined(HAVE_WM8975) || defined(HAVE_WM8758) || defined(HAVE_WM8731)
60 SOUND_LEFT_GAIN,
61 SOUND_RIGHT_GAIN,
62 SOUND_MIC_GAIN,
63#endif
64};
65
66enum {
67 SOUND_CHAN_STEREO = 0,
68 SOUND_CHAN_MONO,
69 SOUND_CHAN_CUSTOM,
70 SOUND_CHAN_MONO_LEFT,
71 SOUND_CHAN_MONO_RIGHT,
72 SOUND_CHAN_KARAOKE,
73 SOUND_CHAN_NUM_MODES
74};
75
76typedef void sound_set_type(int value); 43typedef void sound_set_type(int value);
77 44
78const char *sound_unit(int setting); 45const char *sound_unit(int setting);
diff --git a/firmware/export/tlv320.h b/firmware/export/tlv320.h
index ebb126ddf5..73cf297a3e 100644
--- a/firmware/export/tlv320.h
+++ b/firmware/export/tlv320.h
@@ -23,6 +23,8 @@
23#define VOLUME_MIN -730 23#define VOLUME_MIN -730
24#define VOLUME_MAX 60 24#define VOLUME_MAX 60
25 25
26#include "audiohw.h"
27
26extern int tenthdb2master(int db); 28extern int tenthdb2master(int db);
27 29
28/*** definitions ***/ 30/*** definitions ***/
diff --git a/firmware/export/uda1380.h b/firmware/export/uda1380.h
index c1fb6421ff..a92e2a3212 100644
--- a/firmware/export/uda1380.h
+++ b/firmware/export/uda1380.h
@@ -20,6 +20,8 @@
20#ifndef _UDA1380_H 20#ifndef _UDA1380_H
21#define _UDA1380_H 21#define _UDA1380_H
22 22
23#include "audiohw.h"
24
23/* volume/balance/treble/bass interdependency */ 25/* volume/balance/treble/bass interdependency */
24#define VOLUME_MIN -840 26#define VOLUME_MIN -840
25#define VOLUME_MAX 0 27#define VOLUME_MAX 0
diff --git a/firmware/export/wm8731l.h b/firmware/export/wm8731l.h
index 5ef6d694e5..76b2a9c960 100644
--- a/firmware/export/wm8731l.h
+++ b/firmware/export/wm8731l.h
@@ -24,6 +24,8 @@
24#define VOLUME_MIN -730 24#define VOLUME_MIN -730
25#define VOLUME_MAX 60 25#define VOLUME_MAX 60
26 26
27#include "audiohw.h"
28
27extern int tenthdb2master(int db); 29extern int tenthdb2master(int db);
28extern int tenthdb2mixer(int db); 30extern int tenthdb2mixer(int db);
29 31
diff --git a/firmware/export/wm8751.h b/firmware/export/wm8751.h
index efeaa3609d..85d206cae4 100644
--- a/firmware/export/wm8751.h
+++ b/firmware/export/wm8751.h
@@ -23,6 +23,8 @@
23#define VOLUME_MIN -730 23#define VOLUME_MIN -730
24#define VOLUME_MAX 60 24#define VOLUME_MAX 60
25 25
26#include "audiohw.h"
27
26extern int tenthdb2master(int db); 28extern int tenthdb2master(int db);
27extern int tenthdb2mixer(int db); 29extern int tenthdb2mixer(int db);
28 30
diff --git a/firmware/export/wm8758.h b/firmware/export/wm8758.h
index 5715f100da..7fa2181679 100644
--- a/firmware/export/wm8758.h
+++ b/firmware/export/wm8758.h
@@ -24,6 +24,8 @@
24#define VOLUME_MIN -570 24#define VOLUME_MIN -570
25#define VOLUME_MAX 60 25#define VOLUME_MAX 60
26 26
27#include "audiohw.h"
28
27extern int tenthdb2master(int db); 29extern int tenthdb2master(int db);
28extern int tenthdb2mixer(int db); 30extern int tenthdb2mixer(int db);
29 31
diff --git a/firmware/export/wm8975.h b/firmware/export/wm8975.h
index c00303a6a8..bbaa8d3554 100644
--- a/firmware/export/wm8975.h
+++ b/firmware/export/wm8975.h
@@ -24,6 +24,8 @@
24#define VOLUME_MIN -730 24#define VOLUME_MIN -730
25#define VOLUME_MAX 60 25#define VOLUME_MAX 60
26 26
27#include "audiohw.h"
28
27extern int tenthdb2master(int db); 29extern int tenthdb2master(int db);
28extern int tenthdb2mixer(int db); 30extern int tenthdb2mixer(int db);
29 31