2 * linux/sound/cs35l35.h -- Platform data for CS35l35
4 * Copyright (c) 2016 Cirrus Logic Inc.
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
16 * Class H Algorithm Control Variables
17 * You can either have it done
18 * automatically or you can adjust
19 * these variables for tuning
21 * if you do not enable the internal algorithm
22 * you will get a set of mixer controls for
25 * Section 4.3 of the datasheet
27 bool classh_bst_override
;
28 bool classh_algo_enable
;
29 int classh_bst_max_limit
;
31 int classh_release_rate
;
33 int classh_wk_fet_disable
;
34 int classh_wk_fet_delay
;
35 int classh_wk_fet_thld
;
44 * highly configurable signal monitoring
45 * data positioning and different types of
48 * Section 4.8.2 - 4.8.4 of the datasheet
78 struct cs35l35_platform_data
{
80 /* Stereo (2 Device) */
82 /* serial port drive strength */
84 /* serial port drive in unused slots */
86 /* Boost Power Down with FET */
88 /* Boost Voltage : used if ClassH Algo Enabled */
90 /* Boost Converter Peak Current CTRL */
92 /* Amp Gain Zero Cross */
94 /* Audio Input Location */
96 /* Advisory Input Location */
98 /* Shared Boost for stereo */
100 /* Specifies this amp is using an external boost supply */
104 /* ClassH Algorithm */
105 struct classh_cfg classh_algo
;
107 struct monitor_cfg mon_cfg
;
110 #endif /* __CS35L35_H */