ASoC: Don't use write sequencer to power up WM8903
[deliverable/linux.git] / sound / soc / codecs / wm8994.h
CommitLineData
9e6e96a1
MB
1/*
2 * wm8994.h -- WM8994 Soc Audio driver
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8
9#ifndef _WM8994_H
10#define _WM8994_H
11
12#include <sound/soc.h>
13
9e6e96a1
MB
14/* Sources for AIF1/2 SYSCLK - use with set_dai_sysclk() */
15#define WM8994_SYSCLK_MCLK1 1
16#define WM8994_SYSCLK_MCLK2 2
17#define WM8994_SYSCLK_FLL1 3
18#define WM8994_SYSCLK_FLL2 4
19
66b47fdb
MB
20/* OPCLK is also configured with set_dai_sysclk, specify division*10 as rate. */
21#define WM8994_SYSCLK_OPCLK 5
22
9e6e96a1
MB
23#define WM8994_FLL1 1
24#define WM8994_FLL2 2
25
136ff2a2
MB
26#define WM8994_FLL_SRC_MCLK1 1
27#define WM8994_FLL_SRC_MCLK2 2
28#define WM8994_FLL_SRC_LRCLK 3
29#define WM8994_FLL_SRC_BCLK 4
30
821edd2f
MB
31typedef void (*wm8958_micdet_cb)(u16 status, void *data);
32
88766984
MB
33int wm8994_mic_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack,
34 int micbias, int det, int shrt);
821edd2f
MB
35int wm8958_mic_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack,
36 wm8958_micdet_cb cb, void *cb_data);
88766984 37
7b306dae
MB
38#define WM8994_CACHE_SIZE 1570
39
40struct wm8994_access_mask {
41 unsigned short readable; /* Mask of readable bits */
42 unsigned short writable; /* Mask of writable bits */
43};
44
45extern const struct wm8994_access_mask wm8994_access_masks[WM8994_CACHE_SIZE];
ca9aef50 46extern const __devinitdata u16 wm8994_reg_defaults[WM8994_CACHE_SIZE];
7b306dae 47
9e6e96a1 48#endif
This page took 0.054105 seconds and 5 git commands to generate.