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