123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- /*
- * wm8994.h -- WM8994 Soc Audio driver
- *
- * 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 _WM8994_H
- #define _WM8994_H
- #include <sound/soc.h>
- /* Sources for AIF1/2 SYSCLK - use with set_dai_sysclk() */
- #define WM8994_SYSCLK_MCLK1 1
- #define WM8994_SYSCLK_MCLK2 2
- #define WM8994_SYSCLK_FLL1 3
- #define WM8994_SYSCLK_FLL2 4
- /* OPCLK is also configured with set_dai_sysclk, specify division*10 as rate. */
- #define WM8994_SYSCLK_OPCLK 5
- #define WM8994_FLL1 1
- #define WM8994_FLL2 2
- #define WM8994_FLL_SRC_MCLK1 1
- #define WM8994_FLL_SRC_MCLK2 2
- #define WM8994_FLL_SRC_LRCLK 3
- #define WM8994_FLL_SRC_BCLK 4
- typedef void (*wm8958_micdet_cb)(u16 status, void *data);
- int wm8994_mic_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack,
- int micbias, int det, int shrt);
- int wm8958_mic_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack,
- wm8958_micdet_cb cb, void *cb_data);
- #define WM8994_CACHE_SIZE 1570
- struct wm8994_access_mask {
- unsigned short readable; /* Mask of readable bits */
- unsigned short writable; /* Mask of writable bits */
- };
- extern const struct wm8994_access_mask wm8994_access_masks[WM8994_CACHE_SIZE];
- extern const u16 wm8994_reg_defaults[WM8994_CACHE_SIZE];
- #endif
|