1*1a59d1b8SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */ 21da177e4SLinus Torvalds #ifndef __SOUND_AUREON_H 31da177e4SLinus Torvalds #define __SOUND_AUREON_H 41da177e4SLinus Torvalds 51da177e4SLinus Torvalds /* 61da177e4SLinus Torvalds * ALSA driver for VIA VT1724 (Envy24HT) 71da177e4SLinus Torvalds * 81da177e4SLinus Torvalds * Lowlevel functions for Terratec Aureon cards 91da177e4SLinus Torvalds * 101da177e4SLinus Torvalds * Copyright (c) 2003 Takashi Iwai <tiwai@suse.de> 111da177e4SLinus Torvalds */ 121da177e4SLinus Torvalds 131da177e4SLinus Torvalds #define AUREON_DEVICE_DESC "{Terratec,Aureon 5.1 Sky},"\ 141da177e4SLinus Torvalds "{Terratec,Aureon 7.1 Space},"\ 151da177e4SLinus Torvalds "{Terratec,Aureon 7.1 Universe}," \ 1645fe722bSTakashi Iwai "{AudioTrak,Prodigy 7.1}," \ 17cdf88efaSToshimune Konno "{AudioTrak,Prodigy 7.1 LT},"\ 18cdf88efaSToshimune Konno "{AudioTrak,Prodigy 7.1 XT}," 191da177e4SLinus Torvalds 201da177e4SLinus Torvalds #define VT1724_SUBDEVICE_AUREON51_SKY 0x3b154711 /* Aureon 5.1 Sky */ 211da177e4SLinus Torvalds #define VT1724_SUBDEVICE_AUREON71_SPACE 0x3b154511 /* Aureon 7.1 Space */ 221da177e4SLinus Torvalds #define VT1724_SUBDEVICE_AUREON71_UNIVERSE 0x3b155311 /* Aureon 7.1 Universe */ 231da177e4SLinus Torvalds #define VT1724_SUBDEVICE_PRODIGY71 0x33495345 /* PRODIGY 7.1 */ 2445fe722bSTakashi Iwai #define VT1724_SUBDEVICE_PRODIGY71LT 0x32315441 /* PRODIGY 7.1 LT */ 25cdf88efaSToshimune Konno #define VT1724_SUBDEVICE_PRODIGY71XT 0x36315441 /* PRODIGY 7.1 XT*/ 261da177e4SLinus Torvalds 271b60f6b0STakashi Iwai extern struct snd_ice1712_card_info snd_vt1724_aureon_cards[]; 281da177e4SLinus Torvalds 291da177e4SLinus Torvalds /* GPIO bits */ 301da177e4SLinus Torvalds #define AUREON_CS8415_CS (1 << 22) 311da177e4SLinus Torvalds #define AUREON_SPI_MISO (1 << 21) 321da177e4SLinus Torvalds #define AUREON_WM_RESET (1 << 20) 331da177e4SLinus Torvalds #define AUREON_SPI_CLK (1 << 19) 341da177e4SLinus Torvalds #define AUREON_SPI_MOSI (1 << 18) 351da177e4SLinus Torvalds #define AUREON_WM_RW (1 << 17) 361da177e4SLinus Torvalds #define AUREON_AC97_RESET (1 << 16) 371da177e4SLinus Torvalds #define AUREON_DIGITAL_SEL1 (1 << 15) 381da177e4SLinus Torvalds #define AUREON_HP_SEL (1 << 14) 391da177e4SLinus Torvalds #define AUREON_WM_CS (1 << 12) 401da177e4SLinus Torvalds #define AUREON_AC97_COMMIT (1 << 11) 411da177e4SLinus Torvalds #define AUREON_AC97_ADDR (1 << 10) 421da177e4SLinus Torvalds #define AUREON_AC97_DATA_LOW (1 << 9) 431da177e4SLinus Torvalds #define AUREON_AC97_DATA_HIGH (1 << 8) 441da177e4SLinus Torvalds #define AUREON_AC97_DATA_MASK 0xFF 451da177e4SLinus Torvalds 4645fe722bSTakashi Iwai #define PRODIGY_WM_CS (1 << 8) 4745fe722bSTakashi Iwai #define PRODIGY_SPI_MOSI (1 << 10) 4845fe722bSTakashi Iwai #define PRODIGY_SPI_CLK (1 << 9) 49c5130271STakashi Iwai #define PRODIGY_HP_SEL (1 << 5) 5045fe722bSTakashi Iwai 511da177e4SLinus Torvalds #endif /* __SOUND_AUREON_H */ 52