aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/ice1712/aureon.c
diff options
context:
space:
mode:
authorMaximilian Rehkopf <otakon@gmx.net>2008-08-29 08:11:10 -0400
committerJaroslav Kysela <perex@perex.cz>2008-09-04 04:25:01 -0400
commitc1805dddc9fbd65e831963f671bfb79384e8b3b8 (patch)
treee31585d87f3b805d9f032ddd8bda39418eb0e810 /sound/pci/ice1712/aureon.c
parent2b3b5485aa96d18b0025dfb2bc92c824dc81a780 (diff)
ALSA: ice1724: enable MIDI on Terratec Aureon 7.1 Universe
This enables MIDI on Terratec Aureon 7.1 Universe cards specifically. Apparently the other envy24ht-based Aureon cards do not have MIDI ports, hence I added a Universe specific eeprom array. The newer cards (Aureon 7.1 PCI / 5.1 PCI/Fun) have MIDI but use a CMI DSP so this driver does not concern them at all. Signed-off-by: Maximilian Rehkopf <otakon@gmx.net> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'sound/pci/ice1712/aureon.c')
-rw-r--r--sound/pci/ice1712/aureon.c22
1 files changed, 20 insertions, 2 deletions
diff --git a/sound/pci/ice1712/aureon.c b/sound/pci/ice1712/aureon.c
index 868ae291b960..a137fc12e349 100644
--- a/sound/pci/ice1712/aureon.c
+++ b/sound/pci/ice1712/aureon.c
@@ -2158,6 +2158,24 @@ static unsigned char aureon71_eeprom[] __devinitdata = {
2158}; 2158};
2159#define prodigy71_eeprom aureon71_eeprom 2159#define prodigy71_eeprom aureon71_eeprom
2160 2160
2161static unsigned char aureon71_universe_eeprom[] __devinitdata = {
2162 [ICE_EEP2_SYSCONF] = 0x2b, /* clock 512, mpu401, spdif-in/ADC,
2163 * 4DACs
2164 */
2165 [ICE_EEP2_ACLINK] = 0x80, /* I2S */
2166 [ICE_EEP2_I2S] = 0xfc, /* vol, 96k, 24bit, 192k */
2167 [ICE_EEP2_SPDIF] = 0xc3, /* out-en, out-int, spdif-in */
2168 [ICE_EEP2_GPIO_DIR] = 0xff,
2169 [ICE_EEP2_GPIO_DIR1] = 0xff,
2170 [ICE_EEP2_GPIO_DIR2] = 0x5f,
2171 [ICE_EEP2_GPIO_MASK] = 0x00,
2172 [ICE_EEP2_GPIO_MASK1] = 0x00,
2173 [ICE_EEP2_GPIO_MASK2] = 0x00,
2174 [ICE_EEP2_GPIO_STATE] = 0x00,
2175 [ICE_EEP2_GPIO_STATE1] = 0x00,
2176 [ICE_EEP2_GPIO_STATE2] = 0x00,
2177};
2178
2161static unsigned char prodigy71lt_eeprom[] __devinitdata = { 2179static unsigned char prodigy71lt_eeprom[] __devinitdata = {
2162 [ICE_EEP2_SYSCONF] = 0x4b, /* clock 384, spdif-in/ADC, 4DACs */ 2180 [ICE_EEP2_SYSCONF] = 0x4b, /* clock 384, spdif-in/ADC, 4DACs */
2163 [ICE_EEP2_ACLINK] = 0x80, /* I2S */ 2181 [ICE_EEP2_ACLINK] = 0x80, /* I2S */
@@ -2203,8 +2221,8 @@ struct snd_ice1712_card_info snd_vt1724_aureon_cards[] __devinitdata = {
2203 .model = "universe", 2221 .model = "universe",
2204 .chip_init = aureon_init, 2222 .chip_init = aureon_init,
2205 .build_controls = aureon_add_controls, 2223 .build_controls = aureon_add_controls,
2206 .eeprom_size = sizeof(aureon71_eeprom), 2224 .eeprom_size = sizeof(aureon71_universe_eeprom),
2207 .eeprom_data = aureon71_eeprom, 2225 .eeprom_data = aureon71_universe_eeprom,
2208 .driver = "Aureon71Univ", /* keep in 15 letters */ 2226 .driver = "Aureon71Univ", /* keep in 15 letters */
2209 }, 2227 },
2210 { 2228 {