1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * linux/sound/cs35l33.h -- Platform data for CS35l33 4 * 5 * Copyright (c) 2016 Cirrus Logic Inc. 6 */ 7 8 #ifndef __CS35L33_H 9 #define __CS35L33_H 10 11 struct cs35l33_hg { 12 bool enable_hg_algo; 13 unsigned int mem_depth; 14 unsigned int release_rate; 15 unsigned int hd_rm; 16 unsigned int ldo_thld; 17 unsigned int ldo_path_disable; 18 unsigned int ldo_entry_delay; 19 bool vp_hg_auto; 20 unsigned int vp_hg; 21 unsigned int vp_hg_rate; 22 unsigned int vp_hg_va; 23 }; 24 25 struct cs35l33_pdata { 26 /* Boost Controller Voltage Setting */ 27 unsigned int boost_ctl; 28 29 /* Boost Controller Peak Current */ 30 unsigned int boost_ipk; 31 32 /* Amplifier Drive Select */ 33 unsigned int amp_drv_sel; 34 35 /* soft volume ramp */ 36 unsigned int ramp_rate; 37 38 /* IMON adc scale */ 39 unsigned int imon_adc_scale; 40 41 /* H/G algo configuration */ 42 struct cs35l33_hg hg_config; 43 }; 44 45 #endif /* __CS35L33_H */ 46