xref: /openbmc/linux/sound/soc/codecs/wm8776.h (revision 924914ee)
1924914eeSMark Brown /*
2924914eeSMark Brown  * wm8776.h  --  WM8776 ASoC driver
3924914eeSMark Brown  *
4924914eeSMark Brown  * Copyright 2009 Wolfson Microelectronics plc
5924914eeSMark Brown  *
6924914eeSMark Brown  * Author: Mark Brown <broonie@opensource.wolfsonmicro.com>
7924914eeSMark Brown  *
8924914eeSMark Brown  * This program is free software; you can redistribute it and/or modify
9924914eeSMark Brown  * it under the terms of the GNU General Public License version 2 as
10924914eeSMark Brown  * published by the Free Software Foundation.
11924914eeSMark Brown  */
12924914eeSMark Brown 
13924914eeSMark Brown #ifndef _WM8776_H
14924914eeSMark Brown #define _WM8776_H
15924914eeSMark Brown 
16924914eeSMark Brown /* Registers */
17924914eeSMark Brown 
18924914eeSMark Brown #define WM8776_HPLVOL    0x00
19924914eeSMark Brown #define WM8776_HPRVOL    0x01
20924914eeSMark Brown #define WM8776_HPMASTER  0x02
21924914eeSMark Brown #define WM8776_DACLVOL   0x03
22924914eeSMark Brown #define WM8776_DACRVOL   0x04
23924914eeSMark Brown #define WM8776_DACMASTER 0x05
24924914eeSMark Brown #define WM8776_PHASESWAP 0x06
25924914eeSMark Brown #define WM8776_DACCTRL1  0x07
26924914eeSMark Brown #define WM8776_DACMUTE   0x08
27924914eeSMark Brown #define WM8776_DACCTRL2  0x09
28924914eeSMark Brown #define WM8776_DACIFCTRL 0x0a
29924914eeSMark Brown #define WM8776_ADCIFCTRL 0x0b
30924914eeSMark Brown #define WM8776_MSTRCTRL  0x0c
31924914eeSMark Brown #define WM8776_PWRDOWN   0x0d
32924914eeSMark Brown #define WM8776_ADCLVOL   0x0e
33924914eeSMark Brown #define WM8776_ADCRVOL   0x0f
34924914eeSMark Brown #define WM8776_ALCCTRL1  0x10
35924914eeSMark Brown #define WM8776_ALCCTRL2  0x11
36924914eeSMark Brown #define WM8776_ALCCTRL3  0x12
37924914eeSMark Brown #define WM8776_NOISEGATE 0x13
38924914eeSMark Brown #define WM8776_LIMITER   0x14
39924914eeSMark Brown #define WM8776_ADCMUX    0x15
40924914eeSMark Brown #define WM8776_OUTMUX    0x16
41924914eeSMark Brown #define WM8776_RESET     0x17
42924914eeSMark Brown 
43924914eeSMark Brown #define WM8776_CACHEREGNUM 0x17
44924914eeSMark Brown 
45924914eeSMark Brown #define WM8776_DAI_DAC 0
46924914eeSMark Brown #define WM8776_DAI_ADC 1
47924914eeSMark Brown 
48924914eeSMark Brown extern struct snd_soc_dai wm8776_dai[];
49924914eeSMark Brown extern struct snd_soc_codec_device soc_codec_dev_wm8776;
50924914eeSMark Brown 
51924914eeSMark Brown #endif
52