Merge branch 'x86-alternatives-for-linus' of git://git.kernel.org/pub/scm/linux/kerne...
[sfrench/cifs-2.6.git] / include / sound / tlv320aic32x4.h
1 /*
2  * tlv320aic32x4.h  --  TLV320AIC32X4 Soc Audio driver platform data
3  *
4  * Copyright 2011 Vista Silicon S.L.
5  *
6  * Author: Javier Martin <javier.martin@vista-silicon.com>
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as
10  * published by the Free Software Foundation.
11  */
12
13 #ifndef _AIC32X4_PDATA_H
14 #define _AIC32X4_PDATA_H
15
16 #define AIC32X4_PWR_MICBIAS_2075_LDOIN          0x00000001
17 #define AIC32X4_PWR_AVDD_DVDD_WEAK_DISABLE      0x00000002
18 #define AIC32X4_PWR_AIC32X4_LDO_ENABLE          0x00000004
19 #define AIC32X4_PWR_CMMODE_LDOIN_RANGE_18_36    0x00000008
20 #define AIC32X4_PWR_CMMODE_HP_LDOIN_POWERED     0x00000010
21
22 #define AIC32X4_MICPGA_ROUTE_LMIC_IN2R_10K      0x00000001
23 #define AIC32X4_MICPGA_ROUTE_RMIC_IN1L_10K      0x00000002
24
25 /* GPIO API */
26 #define AIC32X4_MFPX_DEFAULT_VALUE      0xff
27
28 #define AIC32X4_MFP1_DIN_DISABLED       0
29 #define AIC32X4_MFP1_DIN_ENABLED        0x2
30 #define AIC32X4_MFP1_GPIO_IN            0x4
31
32 #define AIC32X4_MFP2_GPIO_OUT_LOW       0x0
33 #define AIC32X4_MFP2_GPIO_OUT_HIGH      0x1
34
35 #define AIC32X4_MFP_GPIO_ENABLED        0x4
36
37 #define AIC32X4_MFP5_GPIO_DISABLED      0x0
38 #define AIC32X4_MFP5_GPIO_INPUT         0x8
39 #define AIC32X4_MFP5_GPIO_OUTPUT        0xc
40 #define AIC32X4_MFP5_GPIO_OUT_LOW       0x0
41 #define AIC32X4_MFP5_GPIO_OUT_HIGH      0x1
42
43 struct aic32x4_setup_data {
44         unsigned int gpio_func[5];
45 };
46
47 struct aic32x4_pdata {
48         struct aic32x4_setup_data *setup;
49         u32 power_cfg;
50         u32 micpga_routing;
51         bool swapdacs;
52         int rstn_gpio;
53 };
54
55 #endif