diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-06-05 16:32:59 +0100 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-07-08 17:20:20 +0100 |
commit | 942c435ba79fd263a922bb114d56eccab6250662 (patch) | |
tree | 33dbd312f92e67841620823838b30c27b51686a5 /include/sound/wm8993.h | |
parent | ff7d04b130d76ab3a7b79120070346ccf3a72b3f (diff) | |
download | linux-3.10-942c435ba79fd263a922bb114d56eccab6250662.tar.gz linux-3.10-942c435ba79fd263a922bb114d56eccab6250662.tar.bz2 linux-3.10-942c435ba79fd263a922bb114d56eccab6250662.zip |
ASoC: Add WM8993 CODEC driver
The WM8993 is a highly integrated ultra-low power hi-fi CODEC designed
for portable devices such as multimedia phones.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'include/sound/wm8993.h')
-rw-r--r-- | include/sound/wm8993.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/include/sound/wm8993.h b/include/sound/wm8993.h new file mode 100644 index 00000000000..9c661f2f8cd --- /dev/null +++ b/include/sound/wm8993.h @@ -0,0 +1,44 @@ +/* + * linux/sound/wm8993.h -- Platform data for WM8993 + * + * Copyright 2009 Wolfson Microelectronics. PLC. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#ifndef __LINUX_SND_WM8993_H +#define __LINUX_SND_WM8993_H + +/* Note that EQ1 only contains the enable/disable bit so will be + ignored but is included for simplicity. + */ +struct wm8993_retune_mobile_setting { + const char *name; + unsigned int rate; + u16 config[24]; +}; + +struct wm8993_platform_data { + struct wm8993_retune_mobile_setting *retune_configs; + int num_retune_configs; + + /* LINEOUT can be differential or single ended */ + unsigned int lineout1_diff:1; + unsigned int lineout2_diff:1; + + /* Common mode feedback */ + unsigned int lineout1fb:1; + unsigned int lineout2fb:1; + + /* Microphone biases: 0=0.9*AVDD1 1=0.65*AVVD1 */ + unsigned int micbias1_lvl:1; + unsigned int micbias2_lvl:1; + + /* Jack detect threashold levels, see datasheet for values */ + unsigned int jd_scthr:2; + unsigned int jd_thr:2; +}; + +#endif |