xref: /openbmc/linux/include/sound/sta350.h (revision 7c2fcccc)
12439ea1fSSven Brandau /*
22439ea1fSSven Brandau  * Platform data for ST STA350 ASoC codec driver.
32439ea1fSSven Brandau  *
42439ea1fSSven Brandau  * Copyright: 2014 Raumfeld GmbH
52439ea1fSSven Brandau  * Author: Sven Brandau <info@brandau.biz>
62439ea1fSSven Brandau  *
72439ea1fSSven Brandau  * This program is free software; you can redistribute  it and/or modify it
82439ea1fSSven Brandau  * under  the terms of  the GNU General  Public License as published by the
92439ea1fSSven Brandau  * Free Software Foundation;  either version 2 of the  License, or (at your
102439ea1fSSven Brandau  * option) any later version.
112439ea1fSSven Brandau  */
122439ea1fSSven Brandau #ifndef __LINUX_SND__STA350_H
132439ea1fSSven Brandau #define __LINUX_SND__STA350_H
142439ea1fSSven Brandau 
152439ea1fSSven Brandau #define STA350_OCFG_2CH		0
162439ea1fSSven Brandau #define STA350_OCFG_2_1CH	1
172439ea1fSSven Brandau #define STA350_OCFG_1CH		3
182439ea1fSSven Brandau 
192439ea1fSSven Brandau #define STA350_OM_CH1		0
202439ea1fSSven Brandau #define STA350_OM_CH2		1
212439ea1fSSven Brandau #define STA350_OM_CH3		2
222439ea1fSSven Brandau 
232439ea1fSSven Brandau #define STA350_THERMAL_ADJUSTMENT_ENABLE	1
242439ea1fSSven Brandau #define STA350_THERMAL_RECOVERY_ENABLE		2
252439ea1fSSven Brandau #define STA350_FAULT_DETECT_RECOVERY_BYPASS	1
262439ea1fSSven Brandau 
272439ea1fSSven Brandau #define STA350_FFX_PM_DROP_COMP			0
282439ea1fSSven Brandau #define STA350_FFX_PM_TAPERED_COMP		1
292439ea1fSSven Brandau #define STA350_FFX_PM_FULL_POWER		2
302439ea1fSSven Brandau #define STA350_FFX_PM_VARIABLE_DROP_COMP	3
312439ea1fSSven Brandau 
322439ea1fSSven Brandau 
332439ea1fSSven Brandau struct sta350_platform_data {
342439ea1fSSven Brandau 	u8 output_conf;
352439ea1fSSven Brandau 	u8 ch1_output_mapping;
362439ea1fSSven Brandau 	u8 ch2_output_mapping;
372439ea1fSSven Brandau 	u8 ch3_output_mapping;
382439ea1fSSven Brandau 	u8 ffx_power_output_mode;
392439ea1fSSven Brandau 	u8 drop_compensation_ns;
407c2fccccSDaniel Mack 	u8 powerdown_delay_divider;
412439ea1fSSven Brandau 	unsigned int thermal_warning_recovery:1;
422439ea1fSSven Brandau 	unsigned int thermal_warning_adjustment:1;
432439ea1fSSven Brandau 	unsigned int fault_detect_recovery:1;
442439ea1fSSven Brandau 	unsigned int oc_warning_adjustment:1;
452439ea1fSSven Brandau 	unsigned int max_power_use_mpcc:1;
462439ea1fSSven Brandau 	unsigned int max_power_correction:1;
472439ea1fSSven Brandau 	unsigned int am_reduction_mode:1;
482439ea1fSSven Brandau 	unsigned int odd_pwm_speed_mode:1;
492439ea1fSSven Brandau 	unsigned int distortion_compensation:1;
502439ea1fSSven Brandau 	unsigned int invalid_input_detect_mute:1;
517c2fccccSDaniel Mack 	unsigned int activate_mute_output:1;
527c2fccccSDaniel Mack 	unsigned int bridge_immediate_off:1;
537c2fccccSDaniel Mack 	unsigned int noise_shape_dc_cut:1;
547c2fccccSDaniel Mack 	unsigned int powerdown_master_vol:1;
552439ea1fSSven Brandau };
562439ea1fSSven Brandau 
572439ea1fSSven Brandau #endif /* __LINUX_SND__STA350_H */
58