/* * linux/sound/cs35l41.h -- Platform data for CS35L41 * * Copyright (c) 2016 Cirrus Logic Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #ifndef __CS35L41_H #define __CS35L41_H #include struct classh_cfg { bool classh_bst_override; bool classh_algo_enable; int classh_bst_max_limit; int classh_mem_depth; int classh_release_rate; int classh_headroom; int classh_wk_fet_delay; int classh_wk_fet_thld; }; struct cs35l41_irq_cfg { bool is_present; bool irq_pol_inv; bool irq_out_en; int irq_src_sel; }; struct cs35l41_platform_data { bool sclk_frc; bool lrclk_frc; bool right_channel; bool amp_gain_zc; bool dsp_ng_enable; bool inv_pcm; bool use_fsync_errata; int bst_ind; int bst_vctrl; int bst_ipk; int temp_warn_thld; int dsp_ng_pcm_thld; int dsp_ng_delay; int dout_hiz; unsigned int hw_ng_sel; unsigned int hw_ng_delay; unsigned int hw_ng_thld; unsigned int fixed_rate; unsigned int fixed_width; unsigned int fixed_wl; bool fixed_params; const char * dsp_part_name; const char * mfd_suffix; struct cs35l41_irq_cfg irq_config1; struct cs35l41_irq_cfg irq_config2; struct classh_cfg classh_config; }; int cs35l41_reinit(struct snd_soc_codec *codec); #endif /* __CS35L41_H */