xref: /linux/sound/soc/codecs/wm8750.h (revision abadfc928a27e1cf27c834e8e29e6b1f64ca2d55)
1*abadfc92SRichard Purdie /*
2*abadfc92SRichard Purdie  * Copyright 2005 Openedhand Ltd.
3*abadfc92SRichard Purdie  *
4*abadfc92SRichard Purdie  * Author: Richard Purdie <richard@openedhand.com>
5*abadfc92SRichard Purdie  *
6*abadfc92SRichard Purdie  * Based on WM8753.h
7*abadfc92SRichard Purdie  *
8*abadfc92SRichard Purdie  * This program is free software; you can redistribute it and/or modify
9*abadfc92SRichard Purdie  * it under the terms of the GNU General Public License version 2 as
10*abadfc92SRichard Purdie  * published by the Free Software Foundation.
11*abadfc92SRichard Purdie  *
12*abadfc92SRichard Purdie  */
13*abadfc92SRichard Purdie 
14*abadfc92SRichard Purdie #ifndef _WM8750_H
15*abadfc92SRichard Purdie #define _WM8750_H
16*abadfc92SRichard Purdie 
17*abadfc92SRichard Purdie /* WM8750 register space */
18*abadfc92SRichard Purdie 
19*abadfc92SRichard Purdie #define WM8750_LINVOL    0x00
20*abadfc92SRichard Purdie #define WM8750_RINVOL    0x01
21*abadfc92SRichard Purdie #define WM8750_LOUT1V    0x02
22*abadfc92SRichard Purdie #define WM8750_ROUT1V    0x03
23*abadfc92SRichard Purdie #define WM8750_ADCDAC    0x05
24*abadfc92SRichard Purdie #define WM8750_IFACE     0x07
25*abadfc92SRichard Purdie #define WM8750_SRATE     0x08
26*abadfc92SRichard Purdie #define WM8750_LDAC      0x0a
27*abadfc92SRichard Purdie #define WM8750_RDAC      0x0b
28*abadfc92SRichard Purdie #define WM8750_BASS      0x0c
29*abadfc92SRichard Purdie #define WM8750_TREBLE    0x0d
30*abadfc92SRichard Purdie #define WM8750_RESET     0x0f
31*abadfc92SRichard Purdie #define WM8750_3D        0x10
32*abadfc92SRichard Purdie #define WM8750_ALC1      0x11
33*abadfc92SRichard Purdie #define WM8750_ALC2      0x12
34*abadfc92SRichard Purdie #define WM8750_ALC3      0x13
35*abadfc92SRichard Purdie #define WM8750_NGATE     0x14
36*abadfc92SRichard Purdie #define WM8750_LADC      0x15
37*abadfc92SRichard Purdie #define WM8750_RADC      0x16
38*abadfc92SRichard Purdie #define WM8750_ADCTL1    0x17
39*abadfc92SRichard Purdie #define WM8750_ADCTL2    0x18
40*abadfc92SRichard Purdie #define WM8750_PWR1      0x19
41*abadfc92SRichard Purdie #define WM8750_PWR2      0x1a
42*abadfc92SRichard Purdie #define WM8750_ADCTL3    0x1b
43*abadfc92SRichard Purdie #define WM8750_ADCIN     0x1f
44*abadfc92SRichard Purdie #define WM8750_LADCIN    0x20
45*abadfc92SRichard Purdie #define WM8750_RADCIN    0x21
46*abadfc92SRichard Purdie #define WM8750_LOUTM1    0x22
47*abadfc92SRichard Purdie #define WM8750_LOUTM2    0x23
48*abadfc92SRichard Purdie #define WM8750_ROUTM1    0x24
49*abadfc92SRichard Purdie #define WM8750_ROUTM2    0x25
50*abadfc92SRichard Purdie #define WM8750_MOUTM1    0x26
51*abadfc92SRichard Purdie #define WM8750_MOUTM2    0x27
52*abadfc92SRichard Purdie #define WM8750_LOUT2V    0x28
53*abadfc92SRichard Purdie #define WM8750_ROUT2V    0x29
54*abadfc92SRichard Purdie #define WM8750_MOUTV     0x2a
55*abadfc92SRichard Purdie 
56*abadfc92SRichard Purdie #define WM8750_CACHE_REGNUM 0x2a
57*abadfc92SRichard Purdie 
58*abadfc92SRichard Purdie struct wm8750_setup_data {
59*abadfc92SRichard Purdie 	unsigned short i2c_address;
60*abadfc92SRichard Purdie 	unsigned int mclk;
61*abadfc92SRichard Purdie };
62*abadfc92SRichard Purdie 
63*abadfc92SRichard Purdie extern struct snd_soc_codec_dai wm8750_dai;
64*abadfc92SRichard Purdie extern struct snd_soc_codec_device soc_codec_dev_wm8750;
65*abadfc92SRichard Purdie 
66*abadfc92SRichard Purdie #endif
67