linux/sound/pci/ice1712/ews.h

/* SPDX-License-Identifier: GPL-2.0-or-later */
#ifndef __SOUND_EWS_H
#define __SOUND_EWS_H

/*
 *   ALSA driver for ICEnsemble ICE1712 (Envy24)
 *
 *   Lowlevel functions for Terratec EWS88MT/D, EWX24/96, DMX 6Fire
 *
 *	Copyright (c) 2000 Jaroslav Kysela <[email protected]>
 *                    2002 Takashi Iwai <[email protected]>
 */      

#define EWS_DEVICE_DESC

#define ICE1712_SUBDEVICE_EWX2496
#define ICE1712_SUBDEVICE_EWS88MT
#define ICE1712_SUBDEVICE_EWS88MT_NEW
#define ICE1712_SUBDEVICE_EWS88D
#define ICE1712_SUBDEVICE_DMX6FIRE
#define ICE1712_SUBDEVICE_PHASE88
#define ICE1712_SUBDEVICE_TS88

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


/* TerraTec EWX 24/96 configuration definitions */

#define ICE1712_EWX2496_AK4524_CS
#define ICE1712_EWX2496_AIN_SEL
#define ICE1712_EWX2496_AOUT_SEL
#define ICE1712_EWX2496_RW
#define ICE1712_EWX2496_SERIAL_DATA
#define ICE1712_EWX2496_SERIAL_CLOCK
#define ICE1712_EWX2496_TX2
#define ICE1712_EWX2496_RX2

/* TerraTec EWS 88MT/D configuration definitions */
/* RW, SDA snd SCLK are identical with EWX24/96 */
#define ICE1712_EWS88_CS8414_RATE
#define ICE1712_EWS88_RW
#define ICE1712_EWS88_SERIAL_DATA
#define ICE1712_EWS88_SERIAL_CLOCK
#define ICE1712_EWS88_TX2
#define ICE1712_EWS88_RX2

/* i2c address */
#define ICE1712_EWS88MT_CS8404_ADDR
#define ICE1712_EWS88MT_INPUT_ADDR
#define ICE1712_EWS88MT_OUTPUT_ADDR
#define ICE1712_EWS88MT_OUTPUT_SENSE
#define ICE1712_EWS88D_PCF_ADDR

/* TerraTec DMX 6Fire configuration definitions */
#define ICE1712_6FIRE_AK4524_CS_MASK
#define ICE1712_6FIRE_RW
#define ICE1712_6FIRE_SERIAL_DATA
#define ICE1712_6FIRE_SERIAL_CLOCK
#define ICE1712_6FIRE_TX2
#define ICE1712_6FIRE_RX2

#define ICE1712_6FIRE_PCF9554_ADDR
#define ICE1712_6FIRE_CS8427_ADDR

#endif /* __SOUND_EWS_H */