Update of /cvsroot/alsa/alsa-kernel/pci/ice1712
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15376
Modified Files:
amp.c aureon.c delta.c ews.c hoontech.c ice1712.c ice1712.h
prodigy.c revo.c
Log Message:
Dirk Kalis <[EMAIL PROTECTED]>
Added num_total_adcs.
Separated analog input / s/pdif input controls
Index: amp.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/amp.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- amp.c 28 Jan 2003 16:22:25 -0000 1.3
+++ amp.c 5 Mar 2004 09:08:38 -0000 1.4
@@ -38,6 +38,7 @@
/* only use basic functionality for now */
ice->num_total_dacs = 2; /* only PSDOUT0 is connected */
+ ice->num_total_adcs = 2;
return 0;
}
Index: aureon.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/aureon.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- aureon.c 24 Nov 2003 18:29:54 -0000 1.4
+++ aureon.c 5 Mar 2004 09:08:39 -0000 1.5
@@ -409,10 +409,13 @@
unsigned int tmp;
unsigned int i;
- if (ice->eeprom.subvendor == VT1724_SUBDEVICE_AUREON51_SKY)
+ if (ice->eeprom.subvendor == VT1724_SUBDEVICE_AUREON51_SKY) {
ice->num_total_dacs = 6;
- else
+ ice->num_total_adcs = 6;
+ } else {
ice->num_total_dacs = 8;
+ ice->num_total_adcs = 8;
+ }
/* to remeber the register values */
ice->akm = snd_kcalloc(sizeof(akm4xxx_t), GFP_KERNEL);
Index: delta.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/delta.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- delta.c 5 Feb 2004 13:34:50 -0000 1.14
+++ delta.c 5 Mar 2004 09:08:39 -0000 1.15
@@ -511,20 +511,25 @@
switch (ice->eeprom.subvendor) {
case ICE1712_SUBDEVICE_AUDIOPHILE:
ice->num_total_dacs = 2;
+ ice->num_total_adcs = 2;
break;
case ICE1712_SUBDEVICE_DELTA410:
ice->num_total_dacs = 8;
+ ice->num_total_adcs = 2;
break;
case ICE1712_SUBDEVICE_DELTA44:
case ICE1712_SUBDEVICE_DELTA66:
ice->num_total_dacs = ice->omni ? 8 : 4;
+ ice->num_total_adcs = ice->omni ? 8 : 4;
break;
case ICE1712_SUBDEVICE_DELTA1010:
case ICE1712_SUBDEVICE_DELTA1010LT:
ice->num_total_dacs = 8;
+ ice->num_total_adcs = 8;
break;
case ICE1712_SUBDEVICE_VX442:
ice->num_total_dacs = 4;
+ ice->num_total_adcs = 4;
break;
}
Index: ews.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/ews.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- ews.c 30 Jun 2003 14:21:12 -0000 1.15
+++ ews.c 5 Mar 2004 09:08:39 -0000 1.16
@@ -406,15 +406,18 @@
switch (ice->eeprom.subvendor) {
case ICE1712_SUBDEVICE_EWX2496:
ice->num_total_dacs = 2;
+ ice->num_total_adcs = 2;
break;
case ICE1712_SUBDEVICE_EWS88MT:
case ICE1712_SUBDEVICE_EWS88MT_NEW:
ice->num_total_dacs = 8;
+ ice->num_total_adcs = 8;
break;
case ICE1712_SUBDEVICE_EWS88D:
break; /* no analog */
case ICE1712_SUBDEVICE_DMX6FIRE:
ice->num_total_dacs = 6;
+ ice->num_total_adcs = 6;
break;
}
Index: hoontech.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/hoontech.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- hoontech.c 9 Dec 2002 11:35:23 -0000 1.2
+++ hoontech.c 5 Mar 2004 09:08:39 -0000 1.3
@@ -153,6 +153,7 @@
int box, chn;
ice->num_total_dacs = 8;
+ ice->num_total_adcs = 8;
ice->hoontech_boxbits[0] =
ice->hoontech_boxbits[1] =
Index: ice1712.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/ice1712.c,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -r1.42 -r1.43
--- ice1712.c 2 Mar 2004 15:32:37 -0000 1.42
+++ ice1712.c 5 Mar 2004 09:08:39 -0000 1.43
@@ -1384,7 +1384,7 @@
}
-static snd_kcontrol_new_t snd_ice1712_multi_ctrls[] __devinitdata = {
+static snd_kcontrol_new_t snd_ice1712_multi_playback_ctrls[] __devinitdata = {
{
.iface = SNDRV_CTL_ELEM_IFACE_MIXER,
.name = "Multi Playback Switch",
@@ -1403,24 +1403,44 @@
.private_value = 0,
.count = 10,
},
- {
- .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
- .name = "Multi Capture Switch",
- .info = snd_ice1712_pro_mixer_switch_info,
- .get = snd_ice1712_pro_mixer_switch_get,
- .put = snd_ice1712_pro_mixer_switch_put,
- .private_value = 10,
- .count = 10,
- },
- {
- .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
- .name = "Multi Capture Volume",
- .info = snd_ice1712_pro_mixer_volume_info,
- .get = snd_ice1712_pro_mixer_volume_get,
- .put = snd_ice1712_pro_mixer_volume_put,
- .private_value = 10,
- .count = 10,
- },
+};
+
+static snd_kcontrol_new_t snd_ice1712_multi_capture_analog_switch __devinitdata = {
+ .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
+ .name = "H/W Multi Capture Switch",
+ .info = snd_ice1712_pro_mixer_switch_info,
+ .get = snd_ice1712_pro_mixer_switch_get,
+ .put = snd_ice1712_pro_mixer_switch_put,
+ .private_value = 10,
+};
+
+static snd_kcontrol_new_t snd_ice1712_multi_capture_spdif_switch __devinitdata = {
+ .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
+ .name = "IEC958 Multi Capture Switch",
+ .info = snd_ice1712_pro_mixer_switch_info,
+ .get = snd_ice1712_pro_mixer_switch_get,
+ .put = snd_ice1712_pro_mixer_switch_put,
+ .private_value = 18,
+ .count = 2,
+};
+
+static snd_kcontrol_new_t snd_ice1712_multi_capture_analog_volume __devinitdata = {
+ .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
+ .name = "H/W Multi Capture Volume",
+ .info = snd_ice1712_pro_mixer_volume_info,
+ .get = snd_ice1712_pro_mixer_volume_get,
+ .put = snd_ice1712_pro_mixer_volume_put,
+ .private_value = 10,
+};
+
+static snd_kcontrol_new_t snd_ice1712_multi_capture_spdif_volume __devinitdata = {
+ .iface = SNDRV_CTL_ELEM_IFACE_MIXER,
+ .name = "IEC958 Multi Capture Volume",
+ .info = snd_ice1712_pro_mixer_volume_info,
+ .get = snd_ice1712_pro_mixer_volume_get,
+ .put = snd_ice1712_pro_mixer_volume_put,
+ .private_value = 18,
+ .count = 2,
};
static int __devinit snd_ice1712_build_pro_mixer(ice1712_t *ice)
@@ -1430,14 +1450,46 @@
int err;
/* multi-channel mixer */
- for (idx = 0; idx < ARRAY_SIZE(snd_ice1712_multi_ctrls); idx++) {
- err = snd_ctl_add(card, snd_ctl_new1(&snd_ice1712_multi_ctrls[idx],
ice));
+ for (idx = 0; idx < ARRAY_SIZE(snd_ice1712_multi_playback_ctrls); idx++) {
+ err = snd_ctl_add(card,
snd_ctl_new1(&snd_ice1712_multi_playback_ctrls[idx], ice));
if (err < 0)
return err;
}
+ if (ice->num_total_adcs > 0) {
+ snd_kcontrol_new_t tmp = snd_ice1712_multi_capture_analog_switch;
+ tmp.count = ice->num_total_adcs;
+ err = snd_ctl_add(card, snd_ctl_new1(&tmp, ice));
+ if (err < 0)
+ return err;
+ }
+
+ err = snd_ctl_add(card, snd_ctl_new1(&snd_ice1712_multi_capture_spdif_switch,
ice));
+ if (err < 0)
+ return err;
+
+ if (ice->num_total_adcs > 0) {
+ snd_kcontrol_new_t tmp = snd_ice1712_multi_capture_analog_volume;
+ tmp.count = ice->num_total_adcs;
+ err = snd_ctl_add(card, snd_ctl_new1(&tmp, ice));
+ if (err < 0)
+ return err;
+ }
+
+ err = snd_ctl_add(card, snd_ctl_new1(&snd_ice1712_multi_capture_spdif_volume,
ice));
+ if (err < 0)
+ return err;
+
/* initialize volumes */
- for (idx = 0; idx < 20; idx++) {
+ for (idx = 0; idx < 10; idx++) {
+ ice->pro_volumes[idx] = 0x80008000; /* mute */
+ snd_ice1712_update_volume(ice, idx);
+ }
+ for (idx = 10; idx < 10 + ice->num_total_adcs; idx++) {
+ ice->pro_volumes[idx] = 0x80008000; /* mute */
+ snd_ice1712_update_volume(ice, idx);
+ }
+ for (idx = 18; idx < 20; idx++) {
ice->pro_volumes[idx] = 0x80008000; /* mute */
snd_ice1712_update_volume(ice, idx);
}
Index: ice1712.h
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/ice1712.h,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- ice1712.h 10 Feb 2004 15:35:03 -0000 1.16
+++ ice1712.h 5 Mar 2004 09:08:39 -0000 1.17
@@ -330,6 +330,7 @@
unsigned int omni: 1; /* Delta Omni I/O */
unsigned int vt1724: 1;
unsigned int num_total_dacs; /* total DACs */
+ unsigned int num_total_adcs; /* total ADCs */
unsigned char hoontech_boxbits[4];
unsigned int hoontech_config;
unsigned short hoontech_boxconfig[4];
Index: prodigy.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/prodigy.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- prodigy.c 24 Nov 2003 18:29:56 -0000 1.3
+++ prodigy.c 5 Mar 2004 09:08:39 -0000 1.4
@@ -585,6 +585,7 @@
printk(KERN_INFO "ice1724: Apostolos Dimitromanolakis <[EMAIL
PROTECTED]>\n");
ice->num_total_dacs = 8;
+ ice->num_total_adcs = 8;
/* to remeber the register values */
ice->akm = snd_kcalloc(sizeof(akm4xxx_t), GFP_KERNEL);
Index: revo.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/revo.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- revo.c 11 Sep 2003 09:34:49 -0000 1.4
+++ revo.c 5 Mar 2004 09:08:39 -0000 1.5
@@ -128,6 +128,7 @@
switch (ice->eeprom.subvendor) {
case VT1724_SUBDEVICE_REVOLUTION71:
ice->num_total_dacs = 8;
+ ice->num_total_adcs = 4;
break;
default:
snd_BUG();
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
Alsa-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-cvslog