git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
vserver 1.9.5.x5
[linux-2.6.git]
/
sound
/
pci
/
ice1712
/
delta.c
diff --git
a/sound/pci/ice1712/delta.c
b/sound/pci/ice1712/delta.c
index
9eb245b
..
eb20f73
100644
(file)
--- a/
sound/pci/ice1712/delta.c
+++ b/
sound/pci/ice1712/delta.c
@@
-526,9
+526,13
@@
static int __devinit snd_ice1712_delta_init(ice1712_t *ice)
break;
case ICE1712_SUBDEVICE_DELTA1010:
case ICE1712_SUBDEVICE_DELTA1010LT:
break;
case ICE1712_SUBDEVICE_DELTA1010:
case ICE1712_SUBDEVICE_DELTA1010LT:
+ case ICE1712_SUBDEVICE_MEDIASTATION:
ice->num_total_dacs = 8;
ice->num_total_adcs = 8;
break;
ice->num_total_dacs = 8;
ice->num_total_adcs = 8;
break;
+ case ICE1712_SUBDEVICE_DELTADIO2496:
+ ice->num_total_dacs = 4; /* two AK4324 codecs */
+ break;
case ICE1712_SUBDEVICE_VX442:
ice->num_total_dacs = 4;
ice->num_total_adcs = 4;
case ICE1712_SUBDEVICE_VX442:
ice->num_total_dacs = 4;
ice->num_total_adcs = 4;
@@
-551,6
+555,7
@@
static int __devinit snd_ice1712_delta_init(ice1712_t *ice)
return err;
break;
case ICE1712_SUBDEVICE_DELTA1010:
return err;
break;
case ICE1712_SUBDEVICE_DELTA1010:
+ case ICE1712_SUBDEVICE_MEDIASTATION:
ice->gpio.set_pro_rate = delta_1010_set_rate_val;
break;
case ICE1712_SUBDEVICE_DELTADIO2496:
ice->gpio.set_pro_rate = delta_1010_set_rate_val;
break;
case ICE1712_SUBDEVICE_DELTADIO2496:
@@
-572,6
+577,7
@@
static int __devinit snd_ice1712_delta_init(ice1712_t *ice)
switch (ice->eeprom.subvendor) {
case ICE1712_SUBDEVICE_DELTA1010:
case ICE1712_SUBDEVICE_DELTADIO2496:
switch (ice->eeprom.subvendor) {
case ICE1712_SUBDEVICE_DELTA1010:
case ICE1712_SUBDEVICE_DELTADIO2496:
+ case ICE1712_SUBDEVICE_MEDIASTATION:
return 0;
}
return 0;
}
@@
-630,6
+636,7
@@
static int __devinit snd_ice1712_delta_add_controls(ice1712_t *ice)
/* 1010 and dio specific controls */
switch (ice->eeprom.subvendor) {
case ICE1712_SUBDEVICE_DELTA1010:
/* 1010 and dio specific controls */
switch (ice->eeprom.subvendor) {
case ICE1712_SUBDEVICE_DELTA1010:
+ case ICE1712_SUBDEVICE_MEDIASTATION:
err = snd_ctl_add(ice->card, snd_ctl_new1(&snd_ice1712_delta1010_wordclock_select, ice));
if (err < 0)
return err;
err = snd_ctl_add(ice->card, snd_ctl_new1(&snd_ice1712_delta1010_wordclock_select, ice));
if (err < 0)
return err;
@@
-654,6
+661,7
@@
static int __devinit snd_ice1712_delta_add_controls(ice1712_t *ice)
case ICE1712_SUBDEVICE_DELTA1010:
case ICE1712_SUBDEVICE_DELTADIO2496:
case ICE1712_SUBDEVICE_DELTA66:
case ICE1712_SUBDEVICE_DELTA1010:
case ICE1712_SUBDEVICE_DELTADIO2496:
case ICE1712_SUBDEVICE_DELTA66:
+ case ICE1712_SUBDEVICE_MEDIASTATION:
err = snd_ice1712_spdif_build_controls(ice);
if (err < 0)
return err;
err = snd_ice1712_spdif_build_controls(ice);
if (err < 0)
return err;
@@
-665,6
+673,7
@@
static int __devinit snd_ice1712_delta_add_controls(ice1712_t *ice)
case ICE1712_SUBDEVICE_DELTA1010:
case ICE1712_SUBDEVICE_DELTADIO2496:
case ICE1712_SUBDEVICE_DELTA66:
case ICE1712_SUBDEVICE_DELTA1010:
case ICE1712_SUBDEVICE_DELTADIO2496:
case ICE1712_SUBDEVICE_DELTA66:
+ case ICE1712_SUBDEVICE_MEDIASTATION:
err = snd_ctl_add(ice->card, snd_ctl_new1(&snd_ice1712_delta_spdif_in_status, ice));
if (err < 0)
return err;
err = snd_ctl_add(ice->card, snd_ctl_new1(&snd_ice1712_delta_spdif_in_status, ice));
if (err < 0)
return err;
@@
-751,5
+760,12
@@
struct snd_ice1712_card_info snd_ice1712_delta_cards[] __devinitdata = {
.build_controls = snd_ice1712_delta_add_controls,
.no_mpu401 = 1,
},
.build_controls = snd_ice1712_delta_add_controls,
.no_mpu401 = 1,
},
+ {
+ .subvendor = ICE1712_SUBDEVICE_MEDIASTATION,
+ .name = "Lionstracs Mediastation",
+ .model = "mediastation",
+ .chip_init = snd_ice1712_delta_init,
+ .build_controls = snd_ice1712_delta_add_controls,
+ },
{ } /* terminator */
};
{ } /* terminator */
};