root/sound/pci/ice1712/revo.h
/* SPDX-License-Identifier: GPL-2.0-or-later */
#ifndef __SOUND_REVO_H
#define __SOUND_REVO_H

/*
 *   ALSA driver for ICEnsemble ICE1712 (Envy24)
 *
 *   Lowlevel functions for M-Audio Revolution 7.1
 *
 *      Copyright (c) 2003 Takashi Iwai <tiwai@suse.de>
 */      

#define REVO_DEVICE_DESC \
                "{MidiMan M Audio,Revolution 7.1},"\
                "{MidiMan M Audio,Revolution 5.1},"\
                "{MidiMan M Audio,Audiophile 192},"

#define VT1724_SUBDEVICE_REVOLUTION71   0x12143036
#define VT1724_SUBDEVICE_REVOLUTION51   0x12143136
#define VT1724_SUBDEVICE_AUDIOPHILE192  0x12143236

/* entry point */
extern struct snd_ice1712_card_info snd_vt1724_revo_cards[];


/*
 *  MidiMan M-Audio Revolution GPIO definitions
 */

#define VT1724_REVO_CCLK        0x02
#define VT1724_REVO_CDIN        0x04    /* not used */
#define VT1724_REVO_CDOUT       0x08
#define VT1724_REVO_CS0         0x10    /* AK5365 chipselect for (revo51) */
#define VT1724_REVO_CS1         0x20    /* front AKM4381 chipselect */
#define VT1724_REVO_CS2         0x40    /* surround AKM4355 CS (revo71) */
#define VT1724_REVO_I2C_DATA    0x40    /* I2C: PT 2258 SDA (on revo51) */
#define VT1724_REVO_I2C_CLOCK   0x80    /* I2C: PT 2258 SCL (on revo51) */
#define VT1724_REVO_CS3         0x80    /* AK4114 for AP192 */
#define VT1724_REVO_MUTE        (1<<22) /* 0 = all mute, 1 = normal operation */

#endif /* __SOUND_REVO_H */