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 */ 54