mirror of
https://github.com/alsa-project/alsa-tools.git
synced 2025-10-31 22:25:34 -04:00
Tidy up DMX6fire eeprom checks
Multiple instances of DMX6FIRE eeprom checks in envy24control replaced with a variable. Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
This commit is contained in:
parent
26b56f36f5
commit
f9e1a7c1a1
1 changed files with 29 additions and 29 deletions
|
|
@ -27,6 +27,7 @@
|
||||||
#include <getopt.h>
|
#include <getopt.h>
|
||||||
|
|
||||||
int input_channels, output_channels, pcm_output_channels, spdif_channels, view_spdif_playback, card_number;
|
int input_channels, output_channels, pcm_output_channels, spdif_channels, view_spdif_playback, card_number;
|
||||||
|
int card_is_dmx6fire = FALSE;
|
||||||
char *profiles_file_name, *default_profile;
|
char *profiles_file_name, *default_profile;
|
||||||
|
|
||||||
ice1712_eeprom_t card_eeprom;
|
ice1712_eeprom_t card_eeprom;
|
||||||
|
|
@ -147,22 +148,18 @@ static void create_mixer_frame(GtkWidget *box, int stream)
|
||||||
sprintf(str, "PCM Out %i", stream);
|
sprintf(str, "PCM Out %i", stream);
|
||||||
} else if (stream <= (MAX_PCM_OUTPUT_CHANNELS + MAX_SPDIF_CHANNELS)) {
|
} else if (stream <= (MAX_PCM_OUTPUT_CHANNELS + MAX_SPDIF_CHANNELS)) {
|
||||||
sprintf(str, "S/PDIF Out %s", stream & 1 ? "L": "R");
|
sprintf(str, "S/PDIF Out %s", stream & 1 ? "L": "R");
|
||||||
} else if ((card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) && (stream == 11)) {
|
} else if (card_is_dmx6fire) {
|
||||||
sprintf(str, "CD In L");
|
switch (stream) {
|
||||||
} else if ((card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) && (stream == 12)) {
|
case 11: sprintf(str, "CD In L");break;
|
||||||
sprintf(str, "CD In R");
|
case 12: sprintf(str, "CD In R");break;
|
||||||
} else if ((card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) && (stream == 13)) {
|
case 13: sprintf(str, "Line In L");break;
|
||||||
sprintf(str, "Line In L");
|
case 14: sprintf(str, "Line In R");break;
|
||||||
} else if ((card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) && (stream == 14)) {
|
case 15: sprintf(str, "Phono/Mic L");break;
|
||||||
sprintf(str, "Line In R");
|
case 16: sprintf(str, "Phono/Mic R");break;
|
||||||
} else if ((card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) && (stream == 15)) {
|
case 19: sprintf(str, "Digital In L");break;
|
||||||
sprintf(str, "Phono/Mic L");
|
case 20: sprintf(str, "Digital In R");break;
|
||||||
} else if ((card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) && (stream == 16)) {
|
default : sprintf(str, "????");break;
|
||||||
sprintf(str, "Phono/Mic R");
|
}
|
||||||
} else if ((card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) && (stream == 19)) {
|
|
||||||
sprintf(str, "Digital In L");
|
|
||||||
} else if ((card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) && (stream == 20)) {
|
|
||||||
sprintf(str, "Digital In R");
|
|
||||||
} else if (stream <= (MAX_PCM_OUTPUT_CHANNELS + MAX_SPDIF_CHANNELS + MAX_INPUT_CHANNELS)) {
|
} else if (stream <= (MAX_PCM_OUTPUT_CHANNELS + MAX_SPDIF_CHANNELS + MAX_INPUT_CHANNELS)) {
|
||||||
sprintf(str, "H/W In %i", stream - (MAX_PCM_OUTPUT_CHANNELS + MAX_SPDIF_CHANNELS));
|
sprintf(str, "H/W In %i", stream - (MAX_PCM_OUTPUT_CHANNELS + MAX_SPDIF_CHANNELS));
|
||||||
} else if (stream <= (MAX_PCM_OUTPUT_CHANNELS + MAX_SPDIF_CHANNELS + MAX_INPUT_CHANNELS + MAX_SPDIF_CHANNELS)) {
|
} else if (stream <= (MAX_PCM_OUTPUT_CHANNELS + MAX_SPDIF_CHANNELS + MAX_INPUT_CHANNELS + MAX_SPDIF_CHANNELS)) {
|
||||||
|
|
@ -418,7 +415,7 @@ static void create_router_frame(GtkWidget *box, int stream, int pos)
|
||||||
"H/W In 8"
|
"H/W In 8"
|
||||||
};
|
};
|
||||||
|
|
||||||
if (card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE)
|
if (card_is_dmx6fire)
|
||||||
{
|
{
|
||||||
table[0] = "Digital In L";
|
table[0] = "Digital In L";
|
||||||
table[1] = "Digital In R";
|
table[1] = "Digital In R";
|
||||||
|
|
@ -433,13 +430,13 @@ static void create_router_frame(GtkWidget *box, int stream, int pos)
|
||||||
if (stream <= MAX_OUTPUT_CHANNELS) {
|
if (stream <= MAX_OUTPUT_CHANNELS) {
|
||||||
sprintf(str, "H/W Out %i (%s)", stream, stream & 1 ? "L" : "R");
|
sprintf(str, "H/W Out %i (%s)", stream, stream & 1 ? "L" : "R");
|
||||||
} else if (stream == (MAX_OUTPUT_CHANNELS + 1)) {
|
} else if (stream == (MAX_OUTPUT_CHANNELS + 1)) {
|
||||||
if (card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) {
|
if (card_is_dmx6fire) {
|
||||||
strcpy(str, "Digital Out (L)");
|
strcpy(str, "Digital Out (L)");
|
||||||
} else {
|
} else {
|
||||||
strcpy(str, "S/PDIF Out (L)");
|
strcpy(str, "S/PDIF Out (L)");
|
||||||
}
|
}
|
||||||
} else if (stream == (MAX_OUTPUT_CHANNELS + 2)) {
|
} else if (stream == (MAX_OUTPUT_CHANNELS + 2)) {
|
||||||
if (card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) {
|
if (card_is_dmx6fire) {
|
||||||
strcpy(str, "Digital Out (R)");
|
strcpy(str, "Digital Out (R)");
|
||||||
} else {
|
} else {
|
||||||
strcpy(str, "S/PDIF Out (R)");
|
strcpy(str, "S/PDIF Out (R)");
|
||||||
|
|
@ -1176,7 +1173,7 @@ static void create_spdif_input_select(GtkWidget *box)
|
||||||
GSList *group = NULL;
|
GSList *group = NULL;
|
||||||
int hide = 1;
|
int hide = 1;
|
||||||
|
|
||||||
if((card_eeprom.subvendor == ICE1712_SUBDEVICE_DELTADIO2496) || (card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE))
|
if((card_eeprom.subvendor == ICE1712_SUBDEVICE_DELTADIO2496) || (card_is_dmx6fire))
|
||||||
hide = 0;
|
hide = 0;
|
||||||
|
|
||||||
frame = gtk_frame_new("Digital Input");
|
frame = gtk_frame_new("Digital Input");
|
||||||
|
|
@ -1210,7 +1207,7 @@ static void create_spdif_input_select(GtkWidget *box)
|
||||||
radiobutton = gtk_radio_button_new_with_label(group, "Internal CD");
|
radiobutton = gtk_radio_button_new_with_label(group, "Internal CD");
|
||||||
hw_spdif_switch_off_radio = radiobutton;
|
hw_spdif_switch_off_radio = radiobutton;
|
||||||
group = gtk_radio_button_group(GTK_RADIO_BUTTON(radiobutton));
|
group = gtk_radio_button_group(GTK_RADIO_BUTTON(radiobutton));
|
||||||
if(card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE)
|
if(card_is_dmx6fire)
|
||||||
gtk_widget_show(radiobutton);
|
gtk_widget_show(radiobutton);
|
||||||
gtk_box_pack_start(GTK_BOX(vbox), radiobutton, FALSE, FALSE, 0);
|
gtk_box_pack_start(GTK_BOX(vbox), radiobutton, FALSE, FALSE, 0);
|
||||||
gtk_signal_connect(GTK_OBJECT(radiobutton), "toggled",
|
gtk_signal_connect(GTK_OBJECT(radiobutton), "toggled",
|
||||||
|
|
@ -1230,7 +1227,7 @@ static void create_phono_input(GtkWidget *box)
|
||||||
GSList *group = NULL;
|
GSList *group = NULL;
|
||||||
int hide = 1;
|
int hide = 1;
|
||||||
|
|
||||||
if( card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE)
|
if(card_is_dmx6fire)
|
||||||
hide = 0;
|
hide = 0;
|
||||||
|
|
||||||
frame = gtk_frame_new("Phono Input Switch");
|
frame = gtk_frame_new("Phono Input Switch");
|
||||||
|
|
@ -1273,7 +1270,7 @@ static void create_input_interface(GtkWidget *box)
|
||||||
GSList *group = NULL;
|
GSList *group = NULL;
|
||||||
int hide = 1;
|
int hide = 1;
|
||||||
|
|
||||||
if( card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE)
|
if (card_is_dmx6fire)
|
||||||
hide = 0;
|
hide = 0;
|
||||||
|
|
||||||
frame = gtk_frame_new("Line In Selector");
|
frame = gtk_frame_new("Line In Selector");
|
||||||
|
|
@ -1473,7 +1470,7 @@ static void create_analog_volume(GtkWidget *main, GtkWidget *notebook, int page)
|
||||||
gtk_container_set_border_width(GTK_CONTAINER(vbox), 6);
|
gtk_container_set_border_width(GTK_CONTAINER(vbox), 6);
|
||||||
|
|
||||||
/* Add friendly labels for DMX 6Fires */
|
/* Add friendly labels for DMX 6Fires */
|
||||||
if((card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) && (i < 6)){
|
if(card_is_dmx6fire && (i < 6)){
|
||||||
label = gtk_label_new(dmx6fire_outputs[i]);
|
label = gtk_label_new(dmx6fire_outputs[i]);
|
||||||
gtk_widget_show(label);
|
gtk_widget_show(label);
|
||||||
gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, TRUE, 6);
|
gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, TRUE, 6);
|
||||||
|
|
@ -1529,7 +1526,7 @@ static void create_analog_volume(GtkWidget *main, GtkWidget *notebook, int page)
|
||||||
gtk_container_set_border_width(GTK_CONTAINER(vbox), 6);
|
gtk_container_set_border_width(GTK_CONTAINER(vbox), 6);
|
||||||
|
|
||||||
/* Add friendly labels for DMX 6Fires */
|
/* Add friendly labels for DMX 6Fires */
|
||||||
if((card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) && (i < 6)){
|
if(card_is_dmx6fire && (i < 6)){
|
||||||
label = gtk_label_new(dmx6fire_inputs[i]);
|
label = gtk_label_new(dmx6fire_inputs[i]);
|
||||||
gtk_widget_show(label);
|
gtk_widget_show(label);
|
||||||
gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, TRUE, 6);
|
gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, TRUE, 6);
|
||||||
|
|
@ -1585,7 +1582,7 @@ static void create_analog_volume(GtkWidget *main, GtkWidget *notebook, int page)
|
||||||
gtk_container_set_border_width(GTK_CONTAINER(vbox), 6);
|
gtk_container_set_border_width(GTK_CONTAINER(vbox), 6);
|
||||||
|
|
||||||
/* Add friendly labels for DMX 6Fires */
|
/* Add friendly labels for DMX 6Fires */
|
||||||
if((card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) && (i < 6)){
|
if(card_is_dmx6fire && (i < 6)){
|
||||||
label = gtk_label_new(dmx6fire_inputs[i]);
|
label = gtk_label_new(dmx6fire_inputs[i]);
|
||||||
gtk_widget_show(label);
|
gtk_widget_show(label);
|
||||||
gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, TRUE, 6);
|
gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, TRUE, 6);
|
||||||
|
|
@ -2046,21 +2043,24 @@ int main(int argc, char **argv)
|
||||||
}
|
}
|
||||||
memcpy(&card_eeprom, snd_ctl_elem_value_get_bytes(val), 32);
|
memcpy(&card_eeprom, snd_ctl_elem_value_get_bytes(val), 32);
|
||||||
|
|
||||||
|
if(card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE)
|
||||||
|
card_is_dmx6fire = TRUE;
|
||||||
|
|
||||||
/* Set a better default for input_channels and output_channels */
|
/* Set a better default for input_channels and output_channels */
|
||||||
if(!input_channels_set) {
|
if(!input_channels_set) {
|
||||||
if(card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) {
|
if(card_is_dmx6fire) {
|
||||||
input_channels = 6;
|
input_channels = 6;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!output_channels_set) {
|
if(!output_channels_set) {
|
||||||
if(card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) {
|
if(card_is_dmx6fire) {
|
||||||
output_channels = 6;
|
output_channels = 6;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!pcm_output_channels_set) {
|
if(!pcm_output_channels_set) {
|
||||||
if(card_eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE) {
|
if(card_is_dmx6fire) {
|
||||||
pcm_output_channels = 6; /* PCMs 7&8 can be used -set using option -p8 */
|
pcm_output_channels = 6; /* PCMs 7&8 can be used -set using option -p8 */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue