0001
0002
0003
0004
0005
0006
0007
0008 #ifndef __CS35L35_H
0009 #define __CS35L35_H
0010
0011 struct classh_cfg {
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024 bool classh_bst_override;
0025 bool classh_algo_enable;
0026 int classh_bst_max_limit;
0027 int classh_mem_depth;
0028 int classh_release_rate;
0029 int classh_headroom;
0030 int classh_wk_fet_disable;
0031 int classh_wk_fet_delay;
0032 int classh_wk_fet_thld;
0033 int classh_vpch_auto;
0034 int classh_vpch_rate;
0035 int classh_vpch_man;
0036 };
0037
0038 struct monitor_cfg {
0039
0040
0041
0042
0043
0044
0045
0046
0047 bool is_present;
0048 bool imon_specs;
0049 bool vmon_specs;
0050 bool vpmon_specs;
0051 bool vbstmon_specs;
0052 bool vpbrstat_specs;
0053 bool zerofill_specs;
0054 u8 imon_dpth;
0055 u8 imon_loc;
0056 u8 imon_frm;
0057 u8 imon_scale;
0058 u8 vmon_dpth;
0059 u8 vmon_loc;
0060 u8 vmon_frm;
0061 u8 vpmon_dpth;
0062 u8 vpmon_loc;
0063 u8 vpmon_frm;
0064 u8 vbstmon_dpth;
0065 u8 vbstmon_loc;
0066 u8 vbstmon_frm;
0067 u8 vpbrstat_dpth;
0068 u8 vpbrstat_loc;
0069 u8 vpbrstat_frm;
0070 u8 zerofill_dpth;
0071 u8 zerofill_loc;
0072 u8 zerofill_frm;
0073 };
0074
0075 struct cs35l35_platform_data {
0076
0077
0078 bool stereo;
0079
0080 int sp_drv_str;
0081
0082 int sp_drv_unused;
0083
0084 bool bst_pdn_fet_on;
0085
0086 int bst_vctl;
0087
0088 int bst_ipk;
0089
0090 bool gain_zc;
0091
0092 int aud_channel;
0093
0094 int adv_channel;
0095
0096 bool shared_bst;
0097
0098 bool ext_bst;
0099
0100 int boost_ind;
0101
0102 struct classh_cfg classh_algo;
0103
0104 struct monitor_cfg mon_cfg;
0105 };
0106
0107 #endif