1/*
2 * Copyright
3 *
4 * Author:
5 *
6 * Based on WM8750.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 _WM8955_H
15#define _WM8955_H
16
17/* WM8955 register space */
18
19#define WM8955_LOUT1V    0x02
20#define WM8955_ROUT1V    0x03
21#define WM8955_DACCTL    0x05
22#define WM8955_IFACE     0x07
23#define WM8955_SRATE     0x08
24#define WM8955_LDAC      0x0a
25#define WM8955_RDAC      0x0b
26#define WM8955_BASS      0x0c
27#define WM8955_TREBLE    0x0d
28#define WM8955_RESET     0x0f
29#define WM8955_ADCTL1    0x17
30#define WM8955_ADCTL2    0x18
31#define WM8955_PWR1      0x19
32#define WM8955_PWR2      0x1a
33#define WM8955_ADCTL3    0x1b
34#define WM8955_LOUTM1    0x22
35#define WM8955_LOUTM2    0x23
36#define WM8955_ROUTM1    0x24
37#define WM8955_ROUTM2    0x25
38#define WM8955_MOUTM1    0x26
39#define WM8955_MOUTM2    0x27
40#define WM8955_LOUT2V    0x28
41#define WM8955_ROUT2V    0x29
42#define WM8955_MOUTV     0x2a
43#define WM8955_CLOCK     0x2b
44#define WM8955_PLLCTL1   0x2c
45#define WM8955_PLLCTL2   0x2d
46#define WM8955_PLLCTL3   0x2e
47#define WM8955_PLLCTL4   0x3b
48
49
50#define WM8955_CACHE_REGNUM 0x3b
51
52#define WM8955_SYSCLK	0
53
54struct wm8955_setup_data {
55	unsigned short i2c_address;
56};
57
58extern struct snd_soc_codec_dai wm8955_dai;
59extern struct snd_soc_codec_device soc_codec_dev_wm8955;
60
61#endif
62