xref: /openbmc/linux/sound/soc/codecs/wm8971.h (revision 8bae3e23)
18bae3e23SKenneth Kiraly /*
28bae3e23SKenneth Kiraly  * wm8971.h  --  audio driver for WM8971
38bae3e23SKenneth Kiraly  *
48bae3e23SKenneth Kiraly  * Copyright 2005 Lab126, Inc.
58bae3e23SKenneth Kiraly  *
68bae3e23SKenneth Kiraly  * Author: Kenneth Kiraly <kiraly@lab126.com>
78bae3e23SKenneth Kiraly  *
88bae3e23SKenneth Kiraly  * This program is free software; you can redistribute  it and/or modify it
98bae3e23SKenneth Kiraly  * under  the terms of  the GNU General  Public License as published by the
108bae3e23SKenneth Kiraly  * Free Software Foundation;  either version 2 of the  License, or (at your
118bae3e23SKenneth Kiraly  * option) any later version.
128bae3e23SKenneth Kiraly  *
138bae3e23SKenneth Kiraly  */
148bae3e23SKenneth Kiraly 
158bae3e23SKenneth Kiraly #ifndef _WM8971_H
168bae3e23SKenneth Kiraly #define _WM8971_H
178bae3e23SKenneth Kiraly 
188bae3e23SKenneth Kiraly #define WM8971_LINVOL	0x00
198bae3e23SKenneth Kiraly #define WM8971_RINVOL	0x01
208bae3e23SKenneth Kiraly #define WM8971_LOUT1V	0x02
218bae3e23SKenneth Kiraly #define WM8971_ROUT1V	0x03
228bae3e23SKenneth Kiraly #define WM8971_ADCDAC	0x05
238bae3e23SKenneth Kiraly #define WM8971_IFACE	0x07
248bae3e23SKenneth Kiraly #define WM8971_SRATE	0x08
258bae3e23SKenneth Kiraly #define WM8971_LDAC		0x0a
268bae3e23SKenneth Kiraly #define WM8971_RDAC		0x0b
278bae3e23SKenneth Kiraly #define WM8971_BASS		0x0c
288bae3e23SKenneth Kiraly #define WM8971_TREBLE	0x0d
298bae3e23SKenneth Kiraly #define WM8971_RESET	0x0f
308bae3e23SKenneth Kiraly #define WM8971_ALC1		0x11
318bae3e23SKenneth Kiraly #define	WM8971_ALC2		0x12
328bae3e23SKenneth Kiraly #define	WM8971_ALC3		0x13
338bae3e23SKenneth Kiraly #define WM8971_NGATE	0x14
348bae3e23SKenneth Kiraly #define WM8971_LADC		0x15
358bae3e23SKenneth Kiraly #define WM8971_RADC		0x16
368bae3e23SKenneth Kiraly #define	WM8971_ADCTL1	0x17
378bae3e23SKenneth Kiraly #define	WM8971_ADCTL2	0x18
388bae3e23SKenneth Kiraly #define WM8971_PWR1		0x19
398bae3e23SKenneth Kiraly #define WM8971_PWR2		0x1a
408bae3e23SKenneth Kiraly #define	WM8971_ADCTL3	0x1b
418bae3e23SKenneth Kiraly #define WM8971_ADCIN	0x1f
428bae3e23SKenneth Kiraly #define	WM8971_LADCIN	0x20
438bae3e23SKenneth Kiraly #define	WM8971_RADCIN	0x21
448bae3e23SKenneth Kiraly #define WM8971_LOUTM1	0x22
458bae3e23SKenneth Kiraly #define WM8971_LOUTM2	0x23
468bae3e23SKenneth Kiraly #define WM8971_ROUTM1	0x24
478bae3e23SKenneth Kiraly #define WM8971_ROUTM2	0x25
488bae3e23SKenneth Kiraly #define WM8971_MOUTM1	0x26
498bae3e23SKenneth Kiraly #define WM8971_MOUTM2	0x27
508bae3e23SKenneth Kiraly #define WM8971_LOUT2V	0x28
518bae3e23SKenneth Kiraly #define WM8971_ROUT2V	0x29
528bae3e23SKenneth Kiraly #define WM8971_MOUTV	0x2A
538bae3e23SKenneth Kiraly 
548bae3e23SKenneth Kiraly #define WM8971_SYSCLK	0
558bae3e23SKenneth Kiraly 
568bae3e23SKenneth Kiraly struct wm8971_setup_data {
578bae3e23SKenneth Kiraly 	int i2c_bus;
588bae3e23SKenneth Kiraly 	unsigned short i2c_address;
598bae3e23SKenneth Kiraly };
608bae3e23SKenneth Kiraly 
618bae3e23SKenneth Kiraly extern struct snd_soc_dai wm8971_dai;
628bae3e23SKenneth Kiraly extern struct snd_soc_codec_device soc_codec_dev_wm8971;
638bae3e23SKenneth Kiraly 
648bae3e23SKenneth Kiraly #endif
65