Commit c5130271 authored by Takashi Iwai's avatar Takashi Iwai Committed by Jaroslav Kysela

[ALSA] ice1724 - Add functionality for Audiotrak Prodigy 7.1 LT

This patch adds support for useable front audio channels,
user controllable headphone channel and optical output.
From: Anho Ki
Signed-off-by: default avatarMatt Taylor <mwtaylor@gmail.com>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent d5a31b8b
...@@ -1281,9 +1281,15 @@ static int aureon_set_headphone_amp(struct snd_ice1712 *ice, int enable) ...@@ -1281,9 +1281,15 @@ static int aureon_set_headphone_amp(struct snd_ice1712 *ice, int enable)
tmp2 = tmp = snd_ice1712_gpio_read(ice); tmp2 = tmp = snd_ice1712_gpio_read(ice);
if (enable) if (enable)
if (ice->eeprom.subvendor != VT1724_SUBDEVICE_PRODIGY71LT)
tmp |= AUREON_HP_SEL; tmp |= AUREON_HP_SEL;
else else
tmp |= PRODIGY_HP_SEL;
else
if (ice->eeprom.subvendor != VT1724_SUBDEVICE_PRODIGY71LT)
tmp &= ~ AUREON_HP_SEL; tmp &= ~ AUREON_HP_SEL;
else
tmp &= ~ PRODIGY_HP_SEL;
if (tmp != tmp2) { if (tmp != tmp2) {
snd_ice1712_gpio_write(ice, tmp); snd_ice1712_gpio_write(ice, tmp);
return 1; return 1;
...@@ -2079,16 +2085,16 @@ static unsigned char prodigy71_eeprom[] __devinitdata = { ...@@ -2079,16 +2085,16 @@ static unsigned char prodigy71_eeprom[] __devinitdata = {
}; };
static unsigned char prodigy71lt_eeprom[] __devinitdata = { static unsigned char prodigy71lt_eeprom[] __devinitdata = {
0x0b, /* SYSCINF: clock 512, spdif-in/ADC, 4DACs */ 0x4b, /* SYSCINF: clock 512, spdif-in/ADC, 4DACs */
0x80, /* ACLINK: I2S */ 0x80, /* ACLINK: I2S */
0xfc, /* I2S: vol, 96k, 24bit, 192k */ 0xfc, /* I2S: vol, 96k, 24bit, 192k */
0xc3, /* SPDUF: out-en, out-int */ 0xc3, /* SPDIF: out-en, out-int, spdif-in */
0x00, /* GPIO_DIR */ 0xff, /* GPIO_DIR */
0x07, /* GPIO_DIR1 */ 0xff, /* GPIO_DIR1 */
0x00, /* GPIO_DIR2 */ 0x5f, /* GPIO_DIR2 */
0xff, /* GPIO_MASK */ 0x00, /* GPIO_MASK */
0xf8, /* GPIO_MASK1 */ 0x00, /* GPIO_MASK1 */
0xff, /* GPIO_MASK2 */ 0x00, /* GPIO_MASK2 */
0x00, /* GPIO_STATE */ 0x00, /* GPIO_STATE */
0x00, /* GPIO_STATE1 */ 0x00, /* GPIO_STATE1 */
0x00, /* GPIO_STATE2 */ 0x00, /* GPIO_STATE2 */
......
...@@ -58,5 +58,6 @@ extern struct snd_ice1712_card_info snd_vt1724_aureon_cards[]; ...@@ -58,5 +58,6 @@ extern struct snd_ice1712_card_info snd_vt1724_aureon_cards[];
#define PRODIGY_WM_CS (1 << 8) #define PRODIGY_WM_CS (1 << 8)
#define PRODIGY_SPI_MOSI (1 << 10) #define PRODIGY_SPI_MOSI (1 << 10)
#define PRODIGY_SPI_CLK (1 << 9) #define PRODIGY_SPI_CLK (1 << 9)
#define PRODIGY_HP_SEL (1 << 5)
#endif /* __SOUND_AUREON_H */ #endif /* __SOUND_AUREON_H */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment