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