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 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 35 /* codec platform data */ 36 struct max98095_pdata { 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 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; 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 */ 58 unsigned int jack_detect_pin5en:1; 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; 64 }; 65 66 #endif 67