1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 /* 3 * Platform data for MAX98095 4 * 5 * Copyright 2011 Maxim Integrated Products 6 */ 7 8 #ifndef __SOUND_MAX98095_PDATA_H__ 9 #define __SOUND_MAX98095_PDATA_H__ 10 11 /* Equalizer filter response configuration */ 12 struct max98095_eq_cfg { 13 const char *name; 14 unsigned int rate; 15 u16 band1[5]; 16 u16 band2[5]; 17 u16 band3[5]; 18 u16 band4[5]; 19 u16 band5[5]; 20 }; 21 22 /* Biquad filter response configuration */ 23 struct max98095_biquad_cfg { 24 const char *name; 25 unsigned int rate; 26 u16 band1[5]; 27 u16 band2[5]; 28 }; 29 30 /* codec platform data */ 31 struct max98095_pdata { 32 33 /* Equalizers for DAI1 and DAI2 */ 34 struct max98095_eq_cfg *eq_cfg; 35 unsigned int eq_cfgcnt; 36 37 /* Biquad filter for DAI1 and DAI2 */ 38 struct max98095_biquad_cfg *bq_cfg; 39 unsigned int bq_cfgcnt; 40 41 /* Analog/digital microphone configuration: 42 * 0 = analog microphone input (normal setting) 43 * 1 = digital microphone input 44 */ 45 unsigned int digmic_left_mode:1; 46 unsigned int digmic_right_mode:1; 47 48 /* Pin5 is the mechanical method of sensing jack insertion 49 * but it is something that might not be supported. 50 * 0 = PIN5 not supported 51 * 1 = PIN5 supported 52 */ 53 unsigned int jack_detect_pin5en:1; 54 55 /* Slew amount for jack detection. Calculated as 4 * (delay + 1). 56 * Default delay is 24 to get a time of 100ms. 57 */ 58 unsigned int jack_detect_delay; 59 }; 60 61 #endif 62