1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 #ifndef __SOUND_REVO_H
3 #define __SOUND_REVO_H
4 
5 /*
6  *   ALSA driver for ICEnsemble ICE1712 (Envy24)
7  *
8  *   Lowlevel functions for M-Audio Revolution 7.1
9  *
10  *	Copyright (c) 2003 Takashi Iwai <tiwai@suse.de>
11  */
12 
13 #define REVO_DEVICE_DESC \
14 		"{MidiMan M Audio,Revolution 7.1},"\
15 		"{MidiMan M Audio,Revolution 5.1},"\
16 		"{MidiMan M Audio,Audiophile 192},"
17 
18 #define VT1724_SUBDEVICE_REVOLUTION71	0x12143036
19 #define VT1724_SUBDEVICE_REVOLUTION51	0x12143136
20 #define VT1724_SUBDEVICE_AUDIOPHILE192	0x12143236
21 
22 /* entry point */
23 extern struct snd_ice1712_card_info snd_vt1724_revo_cards[];
24 
25 
26 /*
27  *  MidiMan M-Audio Revolution GPIO definitions
28  */
29 
30 #define VT1724_REVO_CCLK	0x02
31 #define VT1724_REVO_CDIN	0x04	/* not used */
32 #define VT1724_REVO_CDOUT	0x08
33 #define VT1724_REVO_CS0		0x10	/* AK5365 chipselect for (revo51) */
34 #define VT1724_REVO_CS1		0x20	/* front AKM4381 chipselect */
35 #define VT1724_REVO_CS2		0x40	/* surround AKM4355 CS (revo71) */
36 #define VT1724_REVO_I2C_DATA    0x40    /* I2C: PT 2258 SDA (on revo51) */
37 #define VT1724_REVO_I2C_CLOCK   0x80    /* I2C: PT 2258 SCL (on revo51) */
38 #define VT1724_REVO_CS3		0x80	/* AK4114 for AP192 */
39 #define VT1724_REVO_MUTE	(1<<22)	/* 0 = all mute, 1 = normal operation */
40 
41 #endif /* __SOUND_REVO_H */
42