]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - include/sound/wm8962.h
Merge branch 'for-3.17/drivers' of git://git.kernel.dk/linux-block
[mirror_ubuntu-bionic-kernel.git] / include / sound / wm8962.h
1 /*
2 * wm8962.h -- WM8962 Soc Audio driver platform data
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 _WM8962_PDATA_H
10 #define _WM8962_PDATA_H
11
12 #define WM8962_MAX_GPIO 6
13
14 /* Use to set GPIO default values to zero */
15 #define WM8962_GPIO_SET 0x10000
16
17 #define WM8962_GPIO_FN_CLKOUT 0
18 #define WM8962_GPIO_FN_LOGIC 1
19 #define WM8962_GPIO_FN_SDOUT 2
20 #define WM8962_GPIO_FN_IRQ 3
21 #define WM8962_GPIO_FN_THERMAL 4
22 #define WM8962_GPIO_FN_PLL2_LOCK 6
23 #define WM8962_GPIO_FN_PLL3_LOCK 7
24 #define WM8962_GPIO_FN_FLL_LOCK 9
25 #define WM8962_GPIO_FN_DRC_ACT 10
26 #define WM8962_GPIO_FN_WSEQ_DONE 11
27 #define WM8962_GPIO_FN_ALC_NG_ACT 12
28 #define WM8962_GPIO_FN_ALC_PEAK_LIMIT 13
29 #define WM8962_GPIO_FN_ALC_SATURATION 14
30 #define WM8962_GPIO_FN_ALC_LEVEL_THR 15
31 #define WM8962_GPIO_FN_ALC_LEVEL_LOCK 16
32 #define WM8962_GPIO_FN_FIFO_ERR 17
33 #define WM8962_GPIO_FN_OPCLK 18
34 #define WM8962_GPIO_FN_DMICCLK 19
35 #define WM8962_GPIO_FN_DMICDAT 20
36 #define WM8962_GPIO_FN_MICD 21
37 #define WM8962_GPIO_FN_MICSCD 22
38
39 struct wm8962_pdata {
40 struct clk *mclk;
41 int gpio_base;
42 u32 gpio_init[WM8962_MAX_GPIO];
43
44 /* Setup for microphone detection, raw value to be written to
45 * R48(0x30) - only microphone related bits will be updated.
46 * Detection may be enabled here for use with signals brought
47 * out on the GPIOs. */
48 u32 mic_cfg;
49
50 bool irq_active_low;
51
52 bool spk_mono; /* Speaker outputs tied together as mono */
53
54 /**
55 * This flag should be set if one or both IN4 inputs is wired
56 * in a DC measurement configuration.
57 */
58 bool in4_dc_measure;
59 };
60
61 #endif