1/*
2 * Platform data for ST STA32x ASoC codec driver.
3 *
4 * Copyright: 2011 Raumfeld GmbH
5 * Author: Johannes Stezenbach <js@sig21.net>
6 *
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.
11 */
12#ifndef __LINUX_SND__STA32X_H
13#define __LINUX_SND__STA32X_H
14
15#define STA32X_OCFG_2CH		0
16#define STA32X_OCFG_2_1CH	1
17#define STA32X_OCFG_1CH		3
18
19#define STA32X_OM_CH1		0
20#define STA32X_OM_CH2		1
21#define STA32X_OM_CH3		2
22
23#define STA32X_THERMAL_ADJUSTMENT_ENABLE	1
24#define STA32X_THERMAL_RECOVERY_ENABLE		2
25
26struct sta32x_platform_data {
27	u8 output_conf;
28	u8 ch1_output_mapping;
29	u8 ch2_output_mapping;
30	u8 ch3_output_mapping;
31	int needs_esd_watchdog;
32	u8 drop_compensation_ns;
33	unsigned int thermal_warning_recovery:1;
34	unsigned int thermal_warning_adjustment:1;
35	unsigned int fault_detect_recovery:1;
36	unsigned int max_power_use_mpcc:1;
37	unsigned int max_power_correction:1;
38	unsigned int am_reduction_mode:1;
39	unsigned int odd_pwm_speed_mode:1;
40	unsigned int invalid_input_detect_mute:1;
41};
42
43#endif /* __LINUX_SND__STA32X_H */
44