/* SPDX-License-Identifier: GPL-2.0-or-later */ #ifndef __SOUND_DELTA_H #define __SOUND_DELTA_H /* * ALSA driver for ICEnsemble ICE1712 (Envy24) * * Lowlevel functions for M-Audio Delta 1010, 44, 66, Dio2496, Audiophile * Digigram VX442 * * Copyright (c) 2000 Jaroslav Kysela <[email protected]> */ #define DELTA_DEVICE_DESC … #define ICE1712_SUBDEVICE_DELTA1010 … #define ICE1712_SUBDEVICE_DELTA1010E … #define ICE1712_SUBDEVICE_DELTADIO2496 … #define ICE1712_SUBDEVICE_DELTA66 … #define ICE1712_SUBDEVICE_DELTA66E … #define ICE1712_SUBDEVICE_DELTA44 … #define ICE1712_SUBDEVICE_AUDIOPHILE … #define ICE1712_SUBDEVICE_DELTA410 … #define ICE1712_SUBDEVICE_DELTA1010LT … #define ICE1712_SUBDEVICE_VX442 … #define ICE1712_SUBDEVICE_MEDIASTATION … #define ICE1712_SUBDEVICE_EDIROLDA2496 … /* entry point */ extern struct snd_ice1712_card_info snd_ice1712_delta_cards[]; /* * MidiMan M-Audio Delta GPIO definitions */ /* MidiMan M-Audio Delta shared pins */ #define ICE1712_DELTA_DFS … /* (>48kHz must be 1) */ #define ICE1712_DELTA_SPDIF_IN_STAT … /* S/PDIF input status */ /* 0 = valid signal is present */ /* all except Delta44 */ /* look to CS8414 datasheet */ #define ICE1712_DELTA_SPDIF_OUT_STAT_CLOCK … /* S/PDIF output status clock */ /* (writing on rising edge - 0->1) */ /* all except Delta44 */ /* look to CS8404A datasheet */ #define ICE1712_DELTA_SPDIF_OUT_STAT_DATA … /* S/PDIF output status data */ /* all except Delta44 */ /* look to CS8404A datasheet */ /* MidiMan M-Audio DeltaDiO */ /* 0x01 = DFS */ /* 0x02 = SPDIF_IN_STAT */ /* 0x04 = SPDIF_OUT_STAT_CLOCK */ /* 0x08 = SPDIF_OUT_STAT_DATA */ #define ICE1712_DELTA_SPDIF_INPUT_SELECT … /* coaxial (0), optical (1) */ /* S/PDIF input select*/ /* MidiMan M-Audio Delta1010 */ /* 0x01 = DFS */ /* 0x02 = SPDIF_IN_STAT */ /* 0x04 = SPDIF_OUT_STAT_CLOCK */ /* 0x08 = SPDIF_OUT_STAT_DATA */ #define ICE1712_DELTA_WORD_CLOCK_SELECT … /* 1 - clock are taken from S/PDIF input */ /* 0 - clock are taken from Word Clock input */ /* affected SPMCLKIN pin of Envy24 */ #define ICE1712_DELTA_WORD_CLOCK_STATUS … /* 0 = valid word clock signal is present */ /* MidiMan M-Audio Delta66 */ /* 0x01 = DFS */ /* 0x02 = SPDIF_IN_STAT */ /* 0x04 = SPDIF_OUT_STAT_CLOCK */ /* 0x08 = SPDIF_OUT_STAT_DATA */ #define ICE1712_DELTA_CODEC_SERIAL_DATA … /* AKM4524 serial data */ #define ICE1712_DELTA_CODEC_SERIAL_CLOCK … /* AKM4524 serial clock */ /* (writing on rising edge - 0->1 */ #define ICE1712_DELTA_CODEC_CHIP_A … #define ICE1712_DELTA_CODEC_CHIP_B … /* 1 - select chip A or B */ /* MidiMan M-Audio Delta44 */ /* 0x01 = DFS */ /* 0x10 = CODEC_SERIAL_DATA */ /* 0x20 = CODEC_SERIAL_CLOCK */ /* 0x40 = CODEC_CHIP_A */ /* 0x80 = CODEC_CHIP_B */ /* MidiMan M-Audio Audiophile/Delta410 definitions */ /* thanks to Kristof Pelckmans <[email protected]> for Delta410 info */ /* 0x01 = DFS */ #define ICE1712_DELTA_AP_CCLK … /* (clocking on rising edge - 0->1) */ #define ICE1712_DELTA_AP_DIN … #define ICE1712_DELTA_AP_DOUT … #define ICE1712_DELTA_AP_CS_DIGITAL … /* low signal = select */ #define ICE1712_DELTA_AP_CS_CODEC … /* low signal = select */ /* MidiMan M-Audio Delta1010LT definitions */ /* thanks to Anders Johansson <[email protected]> */ /* 0x01 = DFS */ #define ICE1712_DELTA_1010LT_CCLK … #define ICE1712_DELTA_1010LT_DIN … #define ICE1712_DELTA_1010LT_DOUT … #define ICE1712_DELTA_1010LT_CS … #define ICE1712_DELTA_1010LT_CS_CHIP_A … #define ICE1712_DELTA_1010LT_CS_CHIP_B … #define ICE1712_DELTA_1010LT_CS_CHIP_C … #define ICE1712_DELTA_1010LT_CS_CHIP_D … #define ICE1712_DELTA_1010LT_CS_CS8427 … #define ICE1712_DELTA_1010LT_CS_NONE … #define ICE1712_DELTA_1010LT_WORDCLOCK … /* M-Audio Delta 66 rev. E definitions. * Newer revisions of Delta 66 have CS8427 over SPI for * S/PDIF transceiver instead of CS8404/CS8414. */ /* 0x01 = DFS */ #define ICE1712_DELTA_66E_CCLK … #define ICE1712_DELTA_66E_DIN … #define ICE1712_DELTA_66E_DOUT … #define ICE1712_DELTA_66E_CS_CS8427 … #define ICE1712_DELTA_66E_CS_CHIP_A … #define ICE1712_DELTA_66E_CS_CHIP_B … /* Digigram VX442 definitions */ #define ICE1712_VX442_CCLK … #define ICE1712_VX442_DIN … #define ICE1712_VX442_DOUT … #define ICE1712_VX442_CS_DIGITAL … #define ICE1712_VX442_CODEC_CHIP_A … #define ICE1712_VX442_CODEC_CHIP_B … #endif /* __SOUND_DELTA_H */