diff options
-rw-r--r-- | sound/pci/ice1712/phase.c | 12 | ||||
-rw-r--r-- | sound/pci/ice1712/phase.h | 4 |
2 files changed, 15 insertions, 1 deletions
diff --git a/sound/pci/ice1712/phase.c b/sound/pci/ice1712/phase.c index 5a158b73dcaa..f5acdeef4438 100644 --- a/sound/pci/ice1712/phase.c +++ b/sound/pci/ice1712/phase.c | |||
@@ -120,6 +120,7 @@ static int __devinit phase22_init(struct snd_ice1712 *ice) | |||
120 | // Configure DAC/ADC description for generic part of ice1724 | 120 | // Configure DAC/ADC description for generic part of ice1724 |
121 | switch (ice->eeprom.subvendor) { | 121 | switch (ice->eeprom.subvendor) { |
122 | case VT1724_SUBDEVICE_PHASE22: | 122 | case VT1724_SUBDEVICE_PHASE22: |
123 | case VT1724_SUBDEVICE_TS22: | ||
123 | ice->num_total_dacs = 2; | 124 | ice->num_total_dacs = 2; |
124 | ice->num_total_adcs = 2; | 125 | ice->num_total_adcs = 2; |
125 | ice->vt1720 = 1; // Envy24HT-S have 16 bit wide GPIO | 126 | ice->vt1720 = 1; // Envy24HT-S have 16 bit wide GPIO |
@@ -136,6 +137,7 @@ static int __devinit phase22_init(struct snd_ice1712 *ice) | |||
136 | ice->akm_codecs = 1; | 137 | ice->akm_codecs = 1; |
137 | switch (ice->eeprom.subvendor) { | 138 | switch (ice->eeprom.subvendor) { |
138 | case VT1724_SUBDEVICE_PHASE22: | 139 | case VT1724_SUBDEVICE_PHASE22: |
140 | case VT1724_SUBDEVICE_TS22: | ||
139 | if ((err = snd_ice1712_akm4xxx_init(ak, &akm_phase22, &akm_phase22_priv, ice)) < 0) | 141 | if ((err = snd_ice1712_akm4xxx_init(ak, &akm_phase22, &akm_phase22_priv, ice)) < 0) |
140 | return err; | 142 | return err; |
141 | break; | 143 | break; |
@@ -150,6 +152,7 @@ static int __devinit phase22_add_controls(struct snd_ice1712 *ice) | |||
150 | 152 | ||
151 | switch (ice->eeprom.subvendor) { | 153 | switch (ice->eeprom.subvendor) { |
152 | case VT1724_SUBDEVICE_PHASE22: | 154 | case VT1724_SUBDEVICE_PHASE22: |
155 | case VT1724_SUBDEVICE_TS22: | ||
153 | err = snd_ice1712_akm4xxx_build_controls(ice); | 156 | err = snd_ice1712_akm4xxx_build_controls(ice); |
154 | if (err < 0) | 157 | if (err < 0) |
155 | return err; | 158 | return err; |
@@ -904,5 +907,14 @@ struct snd_ice1712_card_info snd_vt1724_phase_cards[] __devinitdata = { | |||
904 | .eeprom_size = sizeof(phase28_eeprom), | 907 | .eeprom_size = sizeof(phase28_eeprom), |
905 | .eeprom_data = phase28_eeprom, | 908 | .eeprom_data = phase28_eeprom, |
906 | }, | 909 | }, |
910 | { | ||
911 | .subvendor = VT1724_SUBDEVICE_TS22, | ||
912 | .name = "Terrasoniq TS22 PCI", | ||
913 | .model = "TS22", | ||
914 | .chip_init = phase22_init, | ||
915 | .build_controls = phase22_add_controls, | ||
916 | .eeprom_size = sizeof(phase22_eeprom), | ||
917 | .eeprom_data = phase22_eeprom, | ||
918 | }, | ||
907 | { } /* terminator */ | 919 | { } /* terminator */ |
908 | }; | 920 | }; |
diff --git a/sound/pci/ice1712/phase.h b/sound/pci/ice1712/phase.h index 13e841b55488..5f0c4dbf30d5 100644 --- a/sound/pci/ice1712/phase.h +++ b/sound/pci/ice1712/phase.h | |||
@@ -25,10 +25,12 @@ | |||
25 | */ | 25 | */ |
26 | 26 | ||
27 | #define PHASE_DEVICE_DESC "{Terratec,Phase 22},"\ | 27 | #define PHASE_DEVICE_DESC "{Terratec,Phase 22},"\ |
28 | "{Terratec,Phase 28}," | 28 | "{Terratec,Phase 28},"\ |
29 | "{Terrasoniq,TS22}," | ||
29 | 30 | ||
30 | #define VT1724_SUBDEVICE_PHASE22 0x3b155011 | 31 | #define VT1724_SUBDEVICE_PHASE22 0x3b155011 |
31 | #define VT1724_SUBDEVICE_PHASE28 0x3b154911 | 32 | #define VT1724_SUBDEVICE_PHASE28 0x3b154911 |
33 | #define VT1724_SUBDEVICE_TS22 0x3b157b11 | ||
32 | 34 | ||
33 | /* entry point */ | 35 | /* entry point */ |
34 | extern struct snd_ice1712_card_info snd_vt1724_phase_cards[]; | 36 | extern struct snd_ice1712_card_info snd_vt1724_phase_cards[]; |