diff options
Diffstat (limited to 'sound/pci/oxygen/virtuoso.c')
-rw-r--r-- | sound/pci/oxygen/virtuoso.c | 31 |
1 files changed, 6 insertions, 25 deletions
diff --git a/sound/pci/oxygen/virtuoso.c b/sound/pci/oxygen/virtuoso.c index 6f5c2531abd0..37f53a8c5888 100644 --- a/sound/pci/oxygen/virtuoso.c +++ b/sound/pci/oxygen/virtuoso.c | |||
@@ -219,10 +219,7 @@ static void xonar_d2x_init(struct oxygen *chip) | |||
219 | static void xonar_dx_init(struct oxygen *chip) | 219 | static void xonar_dx_init(struct oxygen *chip) |
220 | { | 220 | { |
221 | struct xonar_data *data = chip->model_data; | 221 | struct xonar_data *data = chip->model_data; |
222 | unsigned int i; | ||
223 | 222 | ||
224 | for (i = 0; i < 8; ++i) | ||
225 | chip->dac_volume[i] = 127; | ||
226 | data->anti_pop_delay = 800; | 223 | data->anti_pop_delay = 800; |
227 | data->output_enable_bit = GPIO_DX_OUTPUT_ENABLE; | 224 | data->output_enable_bit = GPIO_DX_OUTPUT_ENABLE; |
228 | data->ext_power_reg = OXYGEN_GPI_DATA; | 225 | data->ext_power_reg = OXYGEN_GPI_DATA; |
@@ -414,26 +411,6 @@ static void xonar_gpio_changed(struct oxygen *chip) | |||
414 | } | 411 | } |
415 | } | 412 | } |
416 | 413 | ||
417 | static int pcm1796_volume_info(struct snd_kcontrol *ctl, | ||
418 | struct snd_ctl_elem_info *info) | ||
419 | { | ||
420 | info->type = SNDRV_CTL_ELEM_TYPE_INTEGER; | ||
421 | info->count = 8; | ||
422 | info->value.integer.min = 0x0f; | ||
423 | info->value.integer.max = 0xff; | ||
424 | return 0; | ||
425 | } | ||
426 | |||
427 | static int cs4362a_volume_info(struct snd_kcontrol *ctl, | ||
428 | struct snd_ctl_elem_info *info) | ||
429 | { | ||
430 | info->type = SNDRV_CTL_ELEM_TYPE_INTEGER; | ||
431 | info->count = 8; | ||
432 | info->value.integer.min = 0; | ||
433 | info->value.integer.max = 127; | ||
434 | return 0; | ||
435 | } | ||
436 | |||
437 | static int alt_switch_get(struct snd_kcontrol *ctl, | 414 | static int alt_switch_get(struct snd_kcontrol *ctl, |
438 | struct snd_ctl_elem_value *value) | 415 | struct snd_ctl_elem_value *value) |
439 | { | 416 | { |
@@ -526,7 +503,6 @@ static int xonar_d2_control_filter(struct snd_kcontrol_new *template) | |||
526 | { | 503 | { |
527 | if (!strcmp(template->name, "Master Playback Volume")) { | 504 | if (!strcmp(template->name, "Master Playback Volume")) { |
528 | template->access |= SNDRV_CTL_ELEM_ACCESS_TLV_READ; | 505 | template->access |= SNDRV_CTL_ELEM_ACCESS_TLV_READ; |
529 | template->info = pcm1796_volume_info; | ||
530 | template->tlv.p = pcm1796_db_scale; | 506 | template->tlv.p = pcm1796_db_scale; |
531 | } else if (!strncmp(template->name, "CD Capture ", 11)) { | 507 | } else if (!strncmp(template->name, "CD Capture ", 11)) { |
532 | /* CD in is actually connected to the video in pin */ | 508 | /* CD in is actually connected to the video in pin */ |
@@ -539,7 +515,6 @@ static int xonar_dx_control_filter(struct snd_kcontrol_new *template) | |||
539 | { | 515 | { |
540 | if (!strcmp(template->name, "Master Playback Volume")) { | 516 | if (!strcmp(template->name, "Master Playback Volume")) { |
541 | template->access |= SNDRV_CTL_ELEM_ACCESS_TLV_READ; | 517 | template->access |= SNDRV_CTL_ELEM_ACCESS_TLV_READ; |
542 | template->info = cs4362a_volume_info; | ||
543 | template->tlv.p = cs4362a_db_scale; | 518 | template->tlv.p = cs4362a_db_scale; |
544 | } else if (!strncmp(template->name, "CD Capture ", 11)) { | 519 | } else if (!strncmp(template->name, "CD Capture ", 11)) { |
545 | return 1; /* no CD input */ | 520 | return 1; /* no CD input */ |
@@ -577,6 +552,8 @@ static const struct oxygen_model xonar_models[] = { | |||
577 | CAPTURE_0_FROM_I2S_2 | | 552 | CAPTURE_0_FROM_I2S_2 | |
578 | CAPTURE_1_FROM_SPDIF, | 553 | CAPTURE_1_FROM_SPDIF, |
579 | .dac_channels = 8, | 554 | .dac_channels = 8, |
555 | .dac_volume_min = 0x0f, | ||
556 | .dac_volume_max = 0xff, | ||
580 | .misc_flags = OXYGEN_MISC_MIDI, | 557 | .misc_flags = OXYGEN_MISC_MIDI, |
581 | .function_flags = OXYGEN_FUNCTION_SPI | | 558 | .function_flags = OXYGEN_FUNCTION_SPI | |
582 | OXYGEN_FUNCTION_ENABLE_SPI_4_5, | 559 | OXYGEN_FUNCTION_ENABLE_SPI_4_5, |
@@ -603,6 +580,8 @@ static const struct oxygen_model xonar_models[] = { | |||
603 | CAPTURE_0_FROM_I2S_2 | | 580 | CAPTURE_0_FROM_I2S_2 | |
604 | CAPTURE_1_FROM_SPDIF, | 581 | CAPTURE_1_FROM_SPDIF, |
605 | .dac_channels = 8, | 582 | .dac_channels = 8, |
583 | .dac_volume_min = 0x0f, | ||
584 | .dac_volume_max = 0xff, | ||
606 | .misc_flags = OXYGEN_MISC_MIDI, | 585 | .misc_flags = OXYGEN_MISC_MIDI, |
607 | .function_flags = OXYGEN_FUNCTION_SPI | | 586 | .function_flags = OXYGEN_FUNCTION_SPI | |
608 | OXYGEN_FUNCTION_ENABLE_SPI_4_5, | 587 | OXYGEN_FUNCTION_ENABLE_SPI_4_5, |
@@ -629,6 +608,8 @@ static const struct oxygen_model xonar_models[] = { | |||
629 | PLAYBACK_1_TO_SPDIF | | 608 | PLAYBACK_1_TO_SPDIF | |
630 | CAPTURE_0_FROM_I2S_2, | 609 | CAPTURE_0_FROM_I2S_2, |
631 | .dac_channels = 8, | 610 | .dac_channels = 8, |
611 | .dac_volume_min = 0, | ||
612 | .dac_volume_max = 127, | ||
632 | .function_flags = OXYGEN_FUNCTION_2WIRE, | 613 | .function_flags = OXYGEN_FUNCTION_2WIRE, |
633 | .dac_i2s_format = OXYGEN_I2S_FORMAT_LJUST, | 614 | .dac_i2s_format = OXYGEN_I2S_FORMAT_LJUST, |
634 | .adc_i2s_format = OXYGEN_I2S_FORMAT_LJUST, | 615 | .adc_i2s_format = OXYGEN_I2S_FORMAT_LJUST, |