dc6529202cdd5e30b59cec6566736969bf676d47
[profile/ivi/kernel-x86-ivi.git] / include / linux / mfd / abx500 / ab8500-codec.h
1 /*
2  * Copyright (C) ST-Ericsson SA 2012
3  *
4  * Author: Ola Lilja <ola.o.lilja@stericsson.com>
5  *         for ST-Ericsson.
6  *
7  * License terms:
8  *
9  * This program is free software; you can redistribute it and/or modify it
10  * under the terms of the GNU General Public License version 2 as published
11  * by the Free Software Foundation.
12  */
13
14 #ifndef AB8500_CORE_CODEC_H
15 #define AB8500_CORE_CODEC_H
16
17 /* Mic-types */
18 enum amic_type {
19         AMIC_TYPE_SINGLE_ENDED,
20         AMIC_TYPE_DIFFERENTIAL
21 };
22
23 /* Mic-biases */
24 enum amic_micbias {
25         AMIC_MICBIAS_VAMIC1,
26         AMIC_MICBIAS_VAMIC2
27 };
28
29 /* Bias-voltage */
30 enum ear_cm_voltage {
31         EAR_CMV_0_95V,
32         EAR_CMV_1_10V,
33         EAR_CMV_1_27V,
34         EAR_CMV_1_58V
35 };
36
37 /* Analog microphone settings */
38 struct amic_settings {
39         enum amic_type mic1_type;
40         enum amic_type mic2_type;
41         enum amic_micbias mic1a_micbias;
42         enum amic_micbias mic1b_micbias;
43         enum amic_micbias mic2_micbias;
44 };
45
46 /* Platform data structure for the audio-parts of the AB8500 */
47 struct ab8500_codec_platform_data {
48         struct amic_settings amics;
49         enum ear_cm_voltage ear_cmv;
50 };
51
52 #endif