| Peter Hsiang | 82a5a93 | 2011-04-04 19:35:30 -0700 | [diff] [blame] | 1 | /* | 
 | 2 |  * Platform data for MAX98095 | 
 | 3 |  * | 
 | 4 |  * Copyright 2011 Maxim Integrated Products | 
 | 5 |  * | 
 | 6 |  *  This program is free software; you can redistribute  it and/or modify it | 
 | 7 |  *  under  the terms of  the GNU General  Public License as published by the | 
 | 8 |  *  Free Software Foundation;  either version 2 of the  License, or (at your | 
 | 9 |  *  option) any later version. | 
 | 10 |  * | 
 | 11 |  */ | 
 | 12 |  | 
 | 13 | #ifndef __SOUND_MAX98095_PDATA_H__ | 
 | 14 | #define __SOUND_MAX98095_PDATA_H__ | 
 | 15 |  | 
| Peter Hsiang | dad31ec | 2011-04-19 18:20:40 -0700 | [diff] [blame] | 16 | /* Equalizer filter response configuration */ | 
 | 17 | struct max98095_eq_cfg { | 
 | 18 | 	const char *name; | 
 | 19 | 	unsigned int rate; | 
 | 20 | 	u16 band1[5]; | 
 | 21 | 	u16 band2[5]; | 
 | 22 | 	u16 band3[5]; | 
 | 23 | 	u16 band4[5]; | 
 | 24 | 	u16 band5[5]; | 
 | 25 | }; | 
 | 26 |  | 
 | 27 | /* Biquad filter response configuration */ | 
 | 28 | struct max98095_biquad_cfg { | 
 | 29 | 	const char *name; | 
 | 30 | 	unsigned int rate; | 
 | 31 | 	u16 band1[5]; | 
 | 32 | 	u16 band2[5]; | 
 | 33 | }; | 
 | 34 |  | 
| Peter Hsiang | 82a5a93 | 2011-04-04 19:35:30 -0700 | [diff] [blame] | 35 | /* codec platform data */ | 
 | 36 | struct max98095_pdata { | 
| Peter Hsiang | dad31ec | 2011-04-19 18:20:40 -0700 | [diff] [blame] | 37 |  | 
 | 38 | 	/* Equalizers for DAI1 and DAI2 */ | 
 | 39 | 	struct max98095_eq_cfg *eq_cfg; | 
 | 40 | 	unsigned int eq_cfgcnt; | 
 | 41 |  | 
 | 42 | 	/* Biquad filter for DAI1 and DAI2 */ | 
 | 43 | 	struct max98095_biquad_cfg *bq_cfg; | 
 | 44 | 	unsigned int bq_cfgcnt; | 
 | 45 |  | 
| Peter Hsiang | 82a5a93 | 2011-04-04 19:35:30 -0700 | [diff] [blame] | 46 | 	/* Analog/digital microphone configuration: | 
 | 47 | 	 * 0 = analog microphone input (normal setting) | 
 | 48 | 	 * 1 = digital microphone input | 
 | 49 | 	 */ | 
 | 50 | 	unsigned int digmic_left_mode:1; | 
 | 51 | 	unsigned int digmic_right_mode:1; | 
| Rhyland Klein | 9dd90c5 | 2012-03-15 15:07:47 -0700 | [diff] [blame] | 52 |  | 
 | 53 | 	/* Pin5 is the mechanical method of sensing jack insertion | 
 | 54 | 	 * but it is something that might not be supported. | 
 | 55 | 	 * 0 = PIN5 not supported | 
 | 56 | 	 * 1 = PIN5 supported | 
 | 57 | 	 */ | 
| Mark Brown | a91b778 | 2012-05-13 23:29:35 +0100 | [diff] [blame] | 58 | 	unsigned int jack_detect_pin5en:1; | 
| Rhyland Klein | 9dd90c5 | 2012-03-15 15:07:47 -0700 | [diff] [blame] | 59 |  | 
 | 60 | 	/* Slew amount for jack detection. Calculated as 4 * (delay + 1). | 
 | 61 | 	 * Default delay is 24 to get a time of 100ms. | 
 | 62 | 	 */ | 
 | 63 | 	unsigned int jack_detect_delay; | 
| Peter Hsiang | 82a5a93 | 2011-04-04 19:35:30 -0700 | [diff] [blame] | 64 | }; | 
 | 65 |  | 
 | 66 | #endif |