Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm
[platform/kernel/linux-starfive.git] / include / sound / sta350.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * Platform data for ST STA350 ASoC codec driver.
4  *
5  * Copyright: 2014 Raumfeld GmbH
6  * Author: Sven Brandau <info@brandau.biz>
7  */
8 #ifndef __LINUX_SND__STA350_H
9 #define __LINUX_SND__STA350_H
10
11 #define STA350_OCFG_2CH         0
12 #define STA350_OCFG_2_1CH       1
13 #define STA350_OCFG_1CH         3
14
15 #define STA350_OM_CH1           0
16 #define STA350_OM_CH2           1
17 #define STA350_OM_CH3           2
18
19 #define STA350_THERMAL_ADJUSTMENT_ENABLE        1
20 #define STA350_THERMAL_RECOVERY_ENABLE          2
21 #define STA350_FAULT_DETECT_RECOVERY_BYPASS     1
22
23 #define STA350_FFX_PM_DROP_COMP                 0
24 #define STA350_FFX_PM_TAPERED_COMP              1
25 #define STA350_FFX_PM_FULL_POWER                2
26 #define STA350_FFX_PM_VARIABLE_DROP_COMP        3
27
28
29 struct sta350_platform_data {
30         u8 output_conf;
31         u8 ch1_output_mapping;
32         u8 ch2_output_mapping;
33         u8 ch3_output_mapping;
34         u8 ffx_power_output_mode;
35         u8 drop_compensation_ns;
36         u8 powerdown_delay_divider;
37         unsigned int thermal_warning_recovery:1;
38         unsigned int thermal_warning_adjustment:1;
39         unsigned int fault_detect_recovery:1;
40         unsigned int oc_warning_adjustment:1;
41         unsigned int max_power_use_mpcc:1;
42         unsigned int max_power_correction:1;
43         unsigned int am_reduction_mode:1;
44         unsigned int odd_pwm_speed_mode:1;
45         unsigned int distortion_compensation:1;
46         unsigned int invalid_input_detect_mute:1;
47         unsigned int activate_mute_output:1;
48         unsigned int bridge_immediate_off:1;
49         unsigned int noise_shape_dc_cut:1;
50         unsigned int powerdown_master_vol:1;
51 };
52
53 #endif /* __LINUX_SND__STA350_H */