Merge branch 'for-2.6.28' of git://linux-nfs.org/~bfields/linux
[linux-2.6] / sound / soc / codecs / wm8971.h
1 /*
2  * wm8971.h  --  audio driver for WM8971
3  *
4  * Copyright 2005 Lab126, Inc.
5  *
6  * Author: Kenneth Kiraly <kiraly@lab126.com>
7  *
8  * This program is free software; you can redistribute  it and/or modify it
9  * under  the terms of  the GNU General  Public License as published by the
10  * Free Software Foundation;  either version 2 of the  License, or (at your
11  * option) any later version.
12  *
13  */
14
15 #ifndef _WM8971_H
16 #define _WM8971_H
17
18 #define WM8971_LINVOL   0x00
19 #define WM8971_RINVOL   0x01
20 #define WM8971_LOUT1V   0x02
21 #define WM8971_ROUT1V   0x03
22 #define WM8971_ADCDAC   0x05
23 #define WM8971_IFACE    0x07
24 #define WM8971_SRATE    0x08
25 #define WM8971_LDAC             0x0a
26 #define WM8971_RDAC             0x0b
27 #define WM8971_BASS             0x0c
28 #define WM8971_TREBLE   0x0d
29 #define WM8971_RESET    0x0f
30 #define WM8971_ALC1             0x11
31 #define WM8971_ALC2             0x12
32 #define WM8971_ALC3             0x13
33 #define WM8971_NGATE    0x14
34 #define WM8971_LADC             0x15
35 #define WM8971_RADC             0x16
36 #define WM8971_ADCTL1   0x17
37 #define WM8971_ADCTL2   0x18
38 #define WM8971_PWR1             0x19
39 #define WM8971_PWR2             0x1a
40 #define WM8971_ADCTL3   0x1b
41 #define WM8971_ADCIN    0x1f
42 #define WM8971_LADCIN   0x20
43 #define WM8971_RADCIN   0x21
44 #define WM8971_LOUTM1   0x22
45 #define WM8971_LOUTM2   0x23
46 #define WM8971_ROUTM1   0x24
47 #define WM8971_ROUTM2   0x25
48 #define WM8971_MOUTM1   0x26
49 #define WM8971_MOUTM2   0x27
50 #define WM8971_LOUT2V   0x28
51 #define WM8971_ROUT2V   0x29
52 #define WM8971_MOUTV    0x2A
53
54 #define WM8971_SYSCLK   0
55
56 struct wm8971_setup_data {
57         int i2c_bus;
58         unsigned short i2c_address;
59 };
60
61 extern struct snd_soc_dai wm8971_dai;
62 extern struct snd_soc_codec_device soc_codec_dev_wm8971;
63
64 #endif