ALSA: ice1724 - Support for Terrasoniq/MUSONIK TS22 PCI card
Added support for Terrasoniq/MUSONIK TS22 PCI card. Signed-off-by: Misha Zhilin <misha@epiphan.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
committed by
Jaroslav Kysela
parent
f90c06a2b6
commit
740dc9c476
@@ -120,6 +120,7 @@ static int __devinit phase22_init(struct snd_ice1712 *ice)
|
|||||||
// Configure DAC/ADC description for generic part of ice1724
|
// Configure DAC/ADC description for generic part of ice1724
|
||||||
switch (ice->eeprom.subvendor) {
|
switch (ice->eeprom.subvendor) {
|
||||||
case VT1724_SUBDEVICE_PHASE22:
|
case VT1724_SUBDEVICE_PHASE22:
|
||||||
|
case VT1724_SUBDEVICE_TS22:
|
||||||
ice->num_total_dacs = 2;
|
ice->num_total_dacs = 2;
|
||||||
ice->num_total_adcs = 2;
|
ice->num_total_adcs = 2;
|
||||||
ice->vt1720 = 1; // Envy24HT-S have 16 bit wide GPIO
|
ice->vt1720 = 1; // Envy24HT-S have 16 bit wide GPIO
|
||||||
@@ -136,6 +137,7 @@ static int __devinit phase22_init(struct snd_ice1712 *ice)
|
|||||||
ice->akm_codecs = 1;
|
ice->akm_codecs = 1;
|
||||||
switch (ice->eeprom.subvendor) {
|
switch (ice->eeprom.subvendor) {
|
||||||
case VT1724_SUBDEVICE_PHASE22:
|
case VT1724_SUBDEVICE_PHASE22:
|
||||||
|
case VT1724_SUBDEVICE_TS22:
|
||||||
if ((err = snd_ice1712_akm4xxx_init(ak, &akm_phase22, &akm_phase22_priv, ice)) < 0)
|
if ((err = snd_ice1712_akm4xxx_init(ak, &akm_phase22, &akm_phase22_priv, ice)) < 0)
|
||||||
return err;
|
return err;
|
||||||
break;
|
break;
|
||||||
@@ -150,6 +152,7 @@ static int __devinit phase22_add_controls(struct snd_ice1712 *ice)
|
|||||||
|
|
||||||
switch (ice->eeprom.subvendor) {
|
switch (ice->eeprom.subvendor) {
|
||||||
case VT1724_SUBDEVICE_PHASE22:
|
case VT1724_SUBDEVICE_PHASE22:
|
||||||
|
case VT1724_SUBDEVICE_TS22:
|
||||||
err = snd_ice1712_akm4xxx_build_controls(ice);
|
err = snd_ice1712_akm4xxx_build_controls(ice);
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
return err;
|
return err;
|
||||||
@@ -904,5 +907,14 @@ struct snd_ice1712_card_info snd_vt1724_phase_cards[] __devinitdata = {
|
|||||||
.eeprom_size = sizeof(phase28_eeprom),
|
.eeprom_size = sizeof(phase28_eeprom),
|
||||||
.eeprom_data = phase28_eeprom,
|
.eeprom_data = phase28_eeprom,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
.subvendor = VT1724_SUBDEVICE_TS22,
|
||||||
|
.name = "Terrasoniq TS22 PCI",
|
||||||
|
.model = "TS22",
|
||||||
|
.chip_init = phase22_init,
|
||||||
|
.build_controls = phase22_add_controls,
|
||||||
|
.eeprom_size = sizeof(phase22_eeprom),
|
||||||
|
.eeprom_data = phase22_eeprom,
|
||||||
|
},
|
||||||
{ } /* terminator */
|
{ } /* terminator */
|
||||||
};
|
};
|
||||||
|
@@ -25,10 +25,12 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#define PHASE_DEVICE_DESC "{Terratec,Phase 22},"\
|
#define PHASE_DEVICE_DESC "{Terratec,Phase 22},"\
|
||||||
"{Terratec,Phase 28},"
|
"{Terratec,Phase 28},"\
|
||||||
|
"{Terrasoniq,TS22},"
|
||||||
|
|
||||||
#define VT1724_SUBDEVICE_PHASE22 0x3b155011
|
#define VT1724_SUBDEVICE_PHASE22 0x3b155011
|
||||||
#define VT1724_SUBDEVICE_PHASE28 0x3b154911
|
#define VT1724_SUBDEVICE_PHASE28 0x3b154911
|
||||||
|
#define VT1724_SUBDEVICE_TS22 0x3b157b11
|
||||||
|
|
||||||
/* entry point */
|
/* entry point */
|
||||||
extern struct snd_ice1712_card_info snd_vt1724_phase_cards[];
|
extern struct snd_ice1712_card_info snd_vt1724_phase_cards[];
|
||||||
|
Reference in New Issue
Block a user