18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * linux/sound/cs35l33.h -- Platform data for CS35l33 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright (c) 2016 Cirrus Logic Inc. 68c2ecf20Sopenharmony_ci */ 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci#ifndef __CS35L33_H 98c2ecf20Sopenharmony_ci#define __CS35L33_H 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_cistruct cs35l33_hg { 128c2ecf20Sopenharmony_ci bool enable_hg_algo; 138c2ecf20Sopenharmony_ci unsigned int mem_depth; 148c2ecf20Sopenharmony_ci unsigned int release_rate; 158c2ecf20Sopenharmony_ci unsigned int hd_rm; 168c2ecf20Sopenharmony_ci unsigned int ldo_thld; 178c2ecf20Sopenharmony_ci unsigned int ldo_path_disable; 188c2ecf20Sopenharmony_ci unsigned int ldo_entry_delay; 198c2ecf20Sopenharmony_ci bool vp_hg_auto; 208c2ecf20Sopenharmony_ci unsigned int vp_hg; 218c2ecf20Sopenharmony_ci unsigned int vp_hg_rate; 228c2ecf20Sopenharmony_ci unsigned int vp_hg_va; 238c2ecf20Sopenharmony_ci}; 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_cistruct cs35l33_pdata { 268c2ecf20Sopenharmony_ci /* Boost Controller Voltage Setting */ 278c2ecf20Sopenharmony_ci unsigned int boost_ctl; 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci /* Boost Controller Peak Current */ 308c2ecf20Sopenharmony_ci unsigned int boost_ipk; 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci /* Amplifier Drive Select */ 338c2ecf20Sopenharmony_ci unsigned int amp_drv_sel; 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ci /* soft volume ramp */ 368c2ecf20Sopenharmony_ci unsigned int ramp_rate; 378c2ecf20Sopenharmony_ci 388c2ecf20Sopenharmony_ci /* IMON adc scale */ 398c2ecf20Sopenharmony_ci unsigned int imon_adc_scale; 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ci /* H/G algo configuration */ 428c2ecf20Sopenharmony_ci struct cs35l33_hg hg_config; 438c2ecf20Sopenharmony_ci}; 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci#endif /* __CS35L33_H */ 46