18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * linux/sound/cs35l36.h -- Platform data for CS35L36 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright 2018 Cirrus Logic, Inc. 68c2ecf20Sopenharmony_ci * 78c2ecf20Sopenharmony_ci * Author: James Schulman <james.schulman@cirrus.com> 88c2ecf20Sopenharmony_ci * 98c2ecf20Sopenharmony_ci */ 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci#ifndef __CS35L36_H 128c2ecf20Sopenharmony_ci#define __CS35L36_H 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_cistruct cs35l36_vpbr_cfg { 158c2ecf20Sopenharmony_ci bool is_present; 168c2ecf20Sopenharmony_ci bool vpbr_en; 178c2ecf20Sopenharmony_ci int vpbr_thld; 188c2ecf20Sopenharmony_ci int vpbr_atk_rate; 198c2ecf20Sopenharmony_ci int vpbr_atk_vol; 208c2ecf20Sopenharmony_ci int vpbr_max_attn; 218c2ecf20Sopenharmony_ci int vpbr_wait; 228c2ecf20Sopenharmony_ci int vpbr_rel_rate; 238c2ecf20Sopenharmony_ci int vpbr_mute_en; 248c2ecf20Sopenharmony_ci}; 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_cistruct cs35l36_platform_data { 278c2ecf20Sopenharmony_ci bool multi_amp_mode; 288c2ecf20Sopenharmony_ci bool dcm_mode; 298c2ecf20Sopenharmony_ci bool amp_pcm_inv; 308c2ecf20Sopenharmony_ci bool imon_pol_inv; 318c2ecf20Sopenharmony_ci bool vmon_pol_inv; 328c2ecf20Sopenharmony_ci int boost_ind; 338c2ecf20Sopenharmony_ci int bst_vctl; 348c2ecf20Sopenharmony_ci int bst_vctl_sel; 358c2ecf20Sopenharmony_ci int bst_ipk; 368c2ecf20Sopenharmony_ci bool extern_boost; 378c2ecf20Sopenharmony_ci int temp_warn_thld; 388c2ecf20Sopenharmony_ci int irq_drv_sel; 398c2ecf20Sopenharmony_ci int irq_gpio_sel; 408c2ecf20Sopenharmony_ci struct cs35l36_vpbr_cfg vpbr_config; 418c2ecf20Sopenharmony_ci}; 428c2ecf20Sopenharmony_ci 438c2ecf20Sopenharmony_ci#endif /* __CS35L36_H */ 44