2 * Platform data for ST STA350 ASoC codec driver.
4 * Copyright: 2014 Raumfeld GmbH
5 * Author: Sven Brandau <info@brandau.biz>
7 * This program is free software; you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License as published by the
9 * Free Software Foundation; either version 2 of the License, or (at your
10 * option) any later version.
12 #ifndef __LINUX_SND__STA350_H
13 #define __LINUX_SND__STA350_H
15 #define STA350_OCFG_2CH 0
16 #define STA350_OCFG_2_1CH 1
17 #define STA350_OCFG_1CH 3
19 #define STA350_OM_CH1 0
20 #define STA350_OM_CH2 1
21 #define STA350_OM_CH3 2
23 #define STA350_THERMAL_ADJUSTMENT_ENABLE 1
24 #define STA350_THERMAL_RECOVERY_ENABLE 2
25 #define STA350_FAULT_DETECT_RECOVERY_BYPASS 1
27 #define STA350_FFX_PM_DROP_COMP 0
28 #define STA350_FFX_PM_TAPERED_COMP 1
29 #define STA350_FFX_PM_FULL_POWER 2
30 #define STA350_FFX_PM_VARIABLE_DROP_COMP 3
33 struct sta350_platform_data {
35 u8 ch1_output_mapping;
36 u8 ch2_output_mapping;
37 u8 ch3_output_mapping;
38 u8 ffx_power_output_mode;
39 u8 drop_compensation_ns;
40 u8 powerdown_delay_divider;
41 unsigned int thermal_warning_recovery:1;
42 unsigned int thermal_warning_adjustment:1;
43 unsigned int fault_detect_recovery:1;
44 unsigned int oc_warning_adjustment:1;
45 unsigned int max_power_use_mpcc:1;
46 unsigned int max_power_correction:1;
47 unsigned int am_reduction_mode:1;
48 unsigned int odd_pwm_speed_mode:1;
49 unsigned int distortion_compensation:1;
50 unsigned int invalid_input_detect_mute:1;
51 unsigned int activate_mute_output:1;
52 unsigned int bridge_immediate_off:1;
53 unsigned int noise_shape_dc_cut:1;
54 unsigned int powerdown_master_vol:1;
57 #endif /* __LINUX_SND__STA350_H */