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