xref: /openbmc/linux/include/sound/adau1373.h (revision ddd7a26094c93a950f4b2e6b4d5865c93976372e)
1*ddd7a260SLars-Peter Clausen /*
2*ddd7a260SLars-Peter Clausen  * Analog Devices ADAU1373 Audio Codec drive
3*ddd7a260SLars-Peter Clausen  *
4*ddd7a260SLars-Peter Clausen  * Copyright 2011 Analog Devices Inc.
5*ddd7a260SLars-Peter Clausen  * Author: Lars-Peter Clausen <lars@metafoo.de>
6*ddd7a260SLars-Peter Clausen  *
7*ddd7a260SLars-Peter Clausen  * Licensed under the GPL-2 or later.
8*ddd7a260SLars-Peter Clausen  */
9*ddd7a260SLars-Peter Clausen 
10*ddd7a260SLars-Peter Clausen #ifndef __SOUND_ADAU1373_H__
11*ddd7a260SLars-Peter Clausen #define __SOUND_ADAU1373_H__
12*ddd7a260SLars-Peter Clausen 
13*ddd7a260SLars-Peter Clausen enum adau1373_micbias_voltage {
14*ddd7a260SLars-Peter Clausen 	ADAU1373_MICBIAS_2_9V = 0,
15*ddd7a260SLars-Peter Clausen 	ADAU1373_MICBIAS_2_2V = 1,
16*ddd7a260SLars-Peter Clausen 	ADAU1373_MICBIAS_2_6V = 2,
17*ddd7a260SLars-Peter Clausen 	ADAU1373_MICBIAS_1_8V = 3,
18*ddd7a260SLars-Peter Clausen };
19*ddd7a260SLars-Peter Clausen 
20*ddd7a260SLars-Peter Clausen #define ADAU1373_DRC_SIZE 13
21*ddd7a260SLars-Peter Clausen 
22*ddd7a260SLars-Peter Clausen struct adau1373_platform_data {
23*ddd7a260SLars-Peter Clausen 	bool input_differential[4];
24*ddd7a260SLars-Peter Clausen 	bool lineout_differential;
25*ddd7a260SLars-Peter Clausen 	bool lineout_ground_sense;
26*ddd7a260SLars-Peter Clausen 
27*ddd7a260SLars-Peter Clausen 	unsigned int num_drc;
28*ddd7a260SLars-Peter Clausen 	uint8_t drc_setting[3][ADAU1373_DRC_SIZE];
29*ddd7a260SLars-Peter Clausen 
30*ddd7a260SLars-Peter Clausen 	enum adau1373_micbias_voltage micbias1;
31*ddd7a260SLars-Peter Clausen 	enum adau1373_micbias_voltage micbias2;
32*ddd7a260SLars-Peter Clausen };
33*ddd7a260SLars-Peter Clausen 
34*ddd7a260SLars-Peter Clausen #endif
35