Thomas Gleixner | d2912cb | 2019-06-04 10:11:33 +0200 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
Mark Brown | 942c435 | 2009-06-05 16:32:59 +0100 | [diff] [blame] | 2 | /* |
| 3 | * linux/sound/wm8993.h -- Platform data for WM8993 |
| 4 | * |
| 5 | * Copyright 2009 Wolfson Microelectronics. PLC. |
Mark Brown | 942c435 | 2009-06-05 16:32:59 +0100 | [diff] [blame] | 6 | */ |
| 7 | |
| 8 | #ifndef __LINUX_SND_WM8993_H |
| 9 | #define __LINUX_SND_WM8993_H |
| 10 | |
| 11 | /* Note that EQ1 only contains the enable/disable bit so will be |
| 12 | ignored but is included for simplicity. |
| 13 | */ |
| 14 | struct wm8993_retune_mobile_setting { |
| 15 | const char *name; |
| 16 | unsigned int rate; |
| 17 | u16 config[24]; |
| 18 | }; |
| 19 | |
| 20 | struct wm8993_platform_data { |
| 21 | struct wm8993_retune_mobile_setting *retune_configs; |
| 22 | int num_retune_configs; |
| 23 | |
| 24 | /* LINEOUT can be differential or single ended */ |
| 25 | unsigned int lineout1_diff:1; |
| 26 | unsigned int lineout2_diff:1; |
| 27 | |
| 28 | /* Common mode feedback */ |
| 29 | unsigned int lineout1fb:1; |
| 30 | unsigned int lineout2fb:1; |
| 31 | |
Mark Brown | 02e7947 | 2012-08-21 17:54:52 +0100 | [diff] [blame] | 32 | /* Delay to add for microphones to stabalise after power up */ |
| 33 | int micbias1_delay; |
| 34 | int micbias2_delay; |
| 35 | |
Mark Brown | 942c435 | 2009-06-05 16:32:59 +0100 | [diff] [blame] | 36 | /* Microphone biases: 0=0.9*AVDD1 1=0.65*AVVD1 */ |
| 37 | unsigned int micbias1_lvl:1; |
| 38 | unsigned int micbias2_lvl:1; |
| 39 | |
André Goddard Rosa | af901ca | 2009-11-14 13:09:05 -0200 | [diff] [blame] | 40 | /* Jack detect threshold levels, see datasheet for values */ |
Mark Brown | 942c435 | 2009-06-05 16:32:59 +0100 | [diff] [blame] | 41 | unsigned int jd_scthr:2; |
| 42 | unsigned int jd_thr:2; |
| 43 | }; |
| 44 | |
| 45 | #endif |