diff options
Diffstat (limited to 'sound/pci')
-rw-r--r-- | sound/pci/aw2/aw2-alsa.c | 4 | ||||
-rw-r--r-- | sound/pci/oxygen/oxygen_mixer.c | 12 |
2 files changed, 9 insertions, 7 deletions
diff --git a/sound/pci/aw2/aw2-alsa.c b/sound/pci/aw2/aw2-alsa.c index 56f87cd33c19..3f00ddf450f8 100644 --- a/sound/pci/aw2/aw2-alsa.c +++ b/sound/pci/aw2/aw2-alsa.c | |||
@@ -316,6 +316,8 @@ static int __devinit snd_aw2_create(struct snd_card *card, | |||
316 | return -ENOMEM; | 316 | return -ENOMEM; |
317 | } | 317 | } |
318 | 318 | ||
319 | /* (2) initialization of the chip hardware */ | ||
320 | snd_aw2_saa7146_setup(&chip->saa7146, chip->iobase_virt); | ||
319 | 321 | ||
320 | if (request_irq(pci->irq, snd_aw2_saa7146_interrupt, | 322 | if (request_irq(pci->irq, snd_aw2_saa7146_interrupt, |
321 | IRQF_SHARED, "Audiowerk2", chip)) { | 323 | IRQF_SHARED, "Audiowerk2", chip)) { |
@@ -329,8 +331,6 @@ static int __devinit snd_aw2_create(struct snd_card *card, | |||
329 | } | 331 | } |
330 | chip->irq = pci->irq; | 332 | chip->irq = pci->irq; |
331 | 333 | ||
332 | /* (2) initialization of the chip hardware */ | ||
333 | snd_aw2_saa7146_setup(&chip->saa7146, chip->iobase_virt); | ||
334 | err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops); | 334 | err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops); |
335 | if (err < 0) { | 335 | if (err < 0) { |
336 | free_irq(chip->irq, (void *)chip); | 336 | free_irq(chip->irq, (void *)chip); |
diff --git a/sound/pci/oxygen/oxygen_mixer.c b/sound/pci/oxygen/oxygen_mixer.c index cc0cddadd589..6facac5aed90 100644 --- a/sound/pci/oxygen/oxygen_mixer.c +++ b/sound/pci/oxygen/oxygen_mixer.c | |||
@@ -936,11 +936,13 @@ static int add_controls(struct oxygen *chip, | |||
936 | 936 | ||
937 | for (i = 0; i < count; ++i) { | 937 | for (i = 0; i < count; ++i) { |
938 | template = controls[i]; | 938 | template = controls[i]; |
939 | err = chip->model->control_filter(&template); | 939 | if (chip->model->control_filter) { |
940 | if (err < 0) | 940 | err = chip->model->control_filter(&template); |
941 | return err; | 941 | if (err < 0) |
942 | if (err == 1) | 942 | return err; |
943 | continue; | 943 | if (err == 1) |
944 | continue; | ||
945 | } | ||
944 | if (!strcmp(template.name, "Master Playback Volume") && | 946 | if (!strcmp(template.name, "Master Playback Volume") && |
945 | chip->model->dac_tlv) { | 947 | chip->model->dac_tlv) { |
946 | template.tlv.p = chip->model->dac_tlv; | 948 | template.tlv.p = chip->model->dac_tlv; |