diff options
Diffstat (limited to 'sound/pci')
-rw-r--r-- | sound/pci/ac97/ac97_bus.c | 23 | ||||
-rw-r--r-- | sound/pci/ac97/ac97_codec.c | 3 | ||||
-rw-r--r-- | sound/pci/ac97/ac97_patch.c | 6 | ||||
-rw-r--r-- | sound/pci/ali5451/ali5451.c | 6 | ||||
-rw-r--r-- | sound/pci/atiixp_modem.c | 16 | ||||
-rw-r--r-- | sound/pci/emu10k1/emu10k1_main.c | 5 | ||||
-rw-r--r-- | sound/pci/emu10k1/emumixer.c | 11 | ||||
-rw-r--r-- | sound/pci/hda/hda_generic.c | 6 | ||||
-rw-r--r-- | sound/pci/hda/hda_intel.c | 5 | ||||
-rw-r--r-- | sound/pci/hda/patch_realtek.c | 22 | ||||
-rw-r--r-- | sound/pci/korg1212/korg1212.c | 2 | ||||
-rw-r--r-- | sound/pci/via82xx.c | 2 |
12 files changed, 53 insertions, 54 deletions
diff --git a/sound/pci/ac97/ac97_bus.c b/sound/pci/ac97/ac97_bus.c index 227f8b9f67ce..becbc420ba41 100644 --- a/sound/pci/ac97/ac97_bus.c +++ b/sound/pci/ac97/ac97_bus.c | |||
@@ -17,25 +17,21 @@ | |||
17 | #include <linux/string.h> | 17 | #include <linux/string.h> |
18 | 18 | ||
19 | /* | 19 | /* |
20 | * Codec families have names seperated by commas, so we search for an | 20 | * Let drivers decide whether they want to support given codec from their |
21 | * individual codec name within the family string. | 21 | * probe method. Drivers have direct access to the ac97_t structure and may |
22 | * decide based on the id field amongst other things. | ||
22 | */ | 23 | */ |
23 | static int ac97_bus_match(struct device *dev, struct device_driver *drv) | 24 | static int ac97_bus_match(struct device *dev, struct device_driver *drv) |
24 | { | 25 | { |
25 | return (strstr(dev->bus_id, drv->name) != NULL); | 26 | return 1; |
26 | } | 27 | } |
27 | 28 | ||
28 | static int ac97_bus_suspend(struct device *dev, pm_message_t state) | 29 | static int ac97_bus_suspend(struct device *dev, pm_message_t state) |
29 | { | 30 | { |
30 | int ret = 0; | 31 | int ret = 0; |
31 | 32 | ||
32 | if (dev->driver && dev->driver->suspend) { | 33 | if (dev->driver && dev->driver->suspend) |
33 | ret = dev->driver->suspend(dev, state, SUSPEND_DISABLE); | 34 | ret = dev->driver->suspend(dev, state, SUSPEND_POWER_DOWN); |
34 | if (ret == 0) | ||
35 | ret = dev->driver->suspend(dev, state, SUSPEND_SAVE_STATE); | ||
36 | if (ret == 0) | ||
37 | ret = dev->driver->suspend(dev, state, SUSPEND_POWER_DOWN); | ||
38 | } | ||
39 | return ret; | 35 | return ret; |
40 | } | 36 | } |
41 | 37 | ||
@@ -43,13 +39,8 @@ static int ac97_bus_resume(struct device *dev) | |||
43 | { | 39 | { |
44 | int ret = 0; | 40 | int ret = 0; |
45 | 41 | ||
46 | if (dev->driver && dev->driver->resume) { | 42 | if (dev->driver && dev->driver->resume) |
47 | ret = dev->driver->resume(dev, RESUME_POWER_ON); | 43 | ret = dev->driver->resume(dev, RESUME_POWER_ON); |
48 | if (ret == 0) | ||
49 | ret = dev->driver->resume(dev, RESUME_RESTORE_STATE); | ||
50 | if (ret == 0) | ||
51 | ret = dev->driver->resume(dev, RESUME_ENABLE); | ||
52 | } | ||
53 | return ret; | 44 | return ret; |
54 | } | 45 | } |
55 | 46 | ||
diff --git a/sound/pci/ac97/ac97_codec.c b/sound/pci/ac97/ac97_codec.c index e64cb07a39c2..41fc290149ed 100644 --- a/sound/pci/ac97/ac97_codec.c +++ b/sound/pci/ac97/ac97_codec.c | |||
@@ -1557,7 +1557,7 @@ static int snd_ac97_modem_build(snd_card_t * card, ac97_t * ac97) | |||
1557 | 1557 | ||
1558 | /* build modem switches */ | 1558 | /* build modem switches */ |
1559 | for (idx = 0; idx < ARRAY_SIZE(snd_ac97_controls_modem_switches); idx++) | 1559 | for (idx = 0; idx < ARRAY_SIZE(snd_ac97_controls_modem_switches); idx++) |
1560 | if ((err = snd_ctl_add(card, snd_ac97_cnew(&snd_ac97_controls_modem_switches[idx], ac97))) < 0) | 1560 | if ((err = snd_ctl_add(card, snd_ctl_new1(&snd_ac97_controls_modem_switches[idx], ac97))) < 0) |
1561 | return err; | 1561 | return err; |
1562 | 1562 | ||
1563 | /* build chip specific controls */ | 1563 | /* build chip specific controls */ |
@@ -1828,7 +1828,6 @@ static int snd_ac97_dev_register(snd_device_t *device) | |||
1828 | 1828 | ||
1829 | ac97->dev.bus = &ac97_bus_type; | 1829 | ac97->dev.bus = &ac97_bus_type; |
1830 | ac97->dev.parent = ac97->bus->card->dev; | 1830 | ac97->dev.parent = ac97->bus->card->dev; |
1831 | ac97->dev.platform_data = ac97; | ||
1832 | ac97->dev.release = ac97_device_release; | 1831 | ac97->dev.release = ac97_device_release; |
1833 | snprintf(ac97->dev.bus_id, BUS_ID_SIZE, "card%d-%d", ac97->bus->card->number, ac97->num); | 1832 | snprintf(ac97->dev.bus_id, BUS_ID_SIZE, "card%d-%d", ac97->bus->card->number, ac97->num); |
1834 | if ((err = device_register(&ac97->dev)) < 0) { | 1833 | if ((err = device_register(&ac97->dev)) < 0) { |
diff --git a/sound/pci/ac97/ac97_patch.c b/sound/pci/ac97/ac97_patch.c index 045ddc743edc..0238cc65d32a 100644 --- a/sound/pci/ac97/ac97_patch.c +++ b/sound/pci/ac97/ac97_patch.c | |||
@@ -2752,7 +2752,11 @@ AC97_DOUBLE("Modem Speaker Volume", 0x5c, 14, 12, 3, 1) | |||
2752 | 2752 | ||
2753 | static int patch_si3036_specific(ac97_t * ac97) | 2753 | static int patch_si3036_specific(ac97_t * ac97) |
2754 | { | 2754 | { |
2755 | return patch_build_controls(ac97, snd_ac97_controls_si3036, ARRAY_SIZE(snd_ac97_controls_si3036)); | 2755 | int idx, err; |
2756 | for (idx = 0; idx < ARRAY_SIZE(snd_ac97_controls_si3036); idx++) | ||
2757 | if ((err = snd_ctl_add(ac97->bus->card, snd_ctl_new1(&snd_ac97_controls_si3036[idx], ac97))) < 0) | ||
2758 | return err; | ||
2759 | return 0; | ||
2756 | } | 2760 | } |
2757 | 2761 | ||
2758 | static struct snd_ac97_build_ops patch_si3036_ops = { | 2762 | static struct snd_ac97_build_ops patch_si3036_ops = { |
diff --git a/sound/pci/ali5451/ali5451.c b/sound/pci/ali5451/ali5451.c index d683f7736a63..f35b558c29b2 100644 --- a/sound/pci/ali5451/ali5451.c +++ b/sound/pci/ali5451/ali5451.c | |||
@@ -1993,8 +1993,10 @@ static int __devinit snd_ali_mixer(ali_t * codec) | |||
1993 | if ((err = snd_ac97_mixer(codec->ac97_bus, &ac97, &codec->ac97[i])) < 0) { | 1993 | if ((err = snd_ac97_mixer(codec->ac97_bus, &ac97, &codec->ac97[i])) < 0) { |
1994 | snd_printk("ali mixer %d creating error.\n", i); | 1994 | snd_printk("ali mixer %d creating error.\n", i); |
1995 | if(i == 0) | 1995 | if(i == 0) |
1996 | return err; | 1996 | return err; |
1997 | } | 1997 | codec->num_of_codecs = 1; |
1998 | break; | ||
1999 | } | ||
1998 | } | 2000 | } |
1999 | 2001 | ||
2000 | if (codec->spdif_support) { | 2002 | if (codec->spdif_support) { |
diff --git a/sound/pci/atiixp_modem.c b/sound/pci/atiixp_modem.c index 8a59598167f9..c1a239a4dac6 100644 --- a/sound/pci/atiixp_modem.c +++ b/sound/pci/atiixp_modem.c | |||
@@ -405,7 +405,7 @@ static int snd_atiixp_acquire_codec(atiixp_t *chip) | |||
405 | 405 | ||
406 | while (atiixp_read(chip, PHYS_OUT_ADDR) & ATI_REG_PHYS_OUT_ADDR_EN) { | 406 | while (atiixp_read(chip, PHYS_OUT_ADDR) & ATI_REG_PHYS_OUT_ADDR_EN) { |
407 | if (! timeout--) { | 407 | if (! timeout--) { |
408 | snd_printk(KERN_WARNING "atiixp: codec acquire timeout\n"); | 408 | snd_printk(KERN_WARNING "atiixp-modem: codec acquire timeout\n"); |
409 | return -EBUSY; | 409 | return -EBUSY; |
410 | } | 410 | } |
411 | udelay(1); | 411 | udelay(1); |
@@ -436,7 +436,7 @@ static unsigned short snd_atiixp_codec_read(atiixp_t *chip, unsigned short codec | |||
436 | } while (--timeout); | 436 | } while (--timeout); |
437 | /* time out may happen during reset */ | 437 | /* time out may happen during reset */ |
438 | if (reg < 0x7c) | 438 | if (reg < 0x7c) |
439 | snd_printk(KERN_WARNING "atiixp: codec read timeout (reg %x)\n", reg); | 439 | snd_printk(KERN_WARNING "atiixp-modem: codec read timeout (reg %x)\n", reg); |
440 | return 0xffff; | 440 | return 0xffff; |
441 | } | 441 | } |
442 | 442 | ||
@@ -498,7 +498,7 @@ static int snd_atiixp_aclink_reset(atiixp_t *chip) | |||
498 | do_delay(); | 498 | do_delay(); |
499 | atiixp_update(chip, CMD, ATI_REG_CMD_AC_RESET, ATI_REG_CMD_AC_RESET); | 499 | atiixp_update(chip, CMD, ATI_REG_CMD_AC_RESET, ATI_REG_CMD_AC_RESET); |
500 | if (--timeout) { | 500 | if (--timeout) { |
501 | snd_printk(KERN_ERR "atiixp: codec reset timeout\n"); | 501 | snd_printk(KERN_ERR "atiixp-modem: codec reset timeout\n"); |
502 | break; | 502 | break; |
503 | } | 503 | } |
504 | } | 504 | } |
@@ -552,7 +552,7 @@ static int snd_atiixp_codec_detect(atiixp_t *chip) | |||
552 | atiixp_write(chip, IER, 0); /* disable irqs */ | 552 | atiixp_write(chip, IER, 0); /* disable irqs */ |
553 | 553 | ||
554 | if ((chip->codec_not_ready_bits & ALL_CODEC_NOT_READY) == ALL_CODEC_NOT_READY) { | 554 | if ((chip->codec_not_ready_bits & ALL_CODEC_NOT_READY) == ALL_CODEC_NOT_READY) { |
555 | snd_printk(KERN_ERR "atiixp: no codec detected!\n"); | 555 | snd_printk(KERN_ERR "atiixp-modem: no codec detected!\n"); |
556 | return -ENXIO; | 556 | return -ENXIO; |
557 | } | 557 | } |
558 | return 0; | 558 | return 0; |
@@ -635,7 +635,7 @@ static void snd_atiixp_xrun_dma(atiixp_t *chip, atiixp_dma_t *dma) | |||
635 | { | 635 | { |
636 | if (! dma->substream || ! dma->running) | 636 | if (! dma->substream || ! dma->running) |
637 | return; | 637 | return; |
638 | snd_printdd("atiixp: XRUN detected (DMA %d)\n", dma->ops->type); | 638 | snd_printdd("atiixp-modem: XRUN detected (DMA %d)\n", dma->ops->type); |
639 | snd_pcm_stop(dma->substream, SNDRV_PCM_STATE_XRUN); | 639 | snd_pcm_stop(dma->substream, SNDRV_PCM_STATE_XRUN); |
640 | } | 640 | } |
641 | 641 | ||
@@ -1081,14 +1081,14 @@ static int __devinit snd_atiixp_mixer_new(atiixp_t *chip, int clock) | |||
1081 | ac97.scaps = AC97_SCAP_SKIP_AUDIO; | 1081 | ac97.scaps = AC97_SCAP_SKIP_AUDIO; |
1082 | if ((err = snd_ac97_mixer(pbus, &ac97, &chip->ac97[i])) < 0) { | 1082 | if ((err = snd_ac97_mixer(pbus, &ac97, &chip->ac97[i])) < 0) { |
1083 | chip->ac97[i] = NULL; /* to be sure */ | 1083 | chip->ac97[i] = NULL; /* to be sure */ |
1084 | snd_printdd("atiixp: codec %d not available for modem\n", i); | 1084 | snd_printdd("atiixp-modem: codec %d not available for modem\n", i); |
1085 | continue; | 1085 | continue; |
1086 | } | 1086 | } |
1087 | codec_count++; | 1087 | codec_count++; |
1088 | } | 1088 | } |
1089 | 1089 | ||
1090 | if (! codec_count) { | 1090 | if (! codec_count) { |
1091 | snd_printk(KERN_ERR "atiixp: no codec available\n"); | 1091 | snd_printk(KERN_ERR "atiixp-modem: no codec available\n"); |
1092 | return -ENODEV; | 1092 | return -ENODEV; |
1093 | } | 1093 | } |
1094 | 1094 | ||
@@ -1159,7 +1159,7 @@ static void __devinit snd_atiixp_proc_init(atiixp_t *chip) | |||
1159 | { | 1159 | { |
1160 | snd_info_entry_t *entry; | 1160 | snd_info_entry_t *entry; |
1161 | 1161 | ||
1162 | if (! snd_card_proc_new(chip->card, "atiixp", &entry)) | 1162 | if (! snd_card_proc_new(chip->card, "atiixp-modem", &entry)) |
1163 | snd_info_set_text_ops(entry, chip, 1024, snd_atiixp_proc_read); | 1163 | snd_info_set_text_ops(entry, chip, 1024, snd_atiixp_proc_read); |
1164 | } | 1164 | } |
1165 | 1165 | ||
diff --git a/sound/pci/emu10k1/emu10k1_main.c b/sound/pci/emu10k1/emu10k1_main.c index e87e8427f25f..e9cd8e054f25 100644 --- a/sound/pci/emu10k1/emu10k1_main.c +++ b/sound/pci/emu10k1/emu10k1_main.c | |||
@@ -756,9 +756,12 @@ static emu_chip_details_t emu_chip_details[] = { | |||
756 | .sblive51 = 1} , | 756 | .sblive51 = 1} , |
757 | /* Tested by alsa bugtrack user "hus" bug #1297 12th Aug 2005 */ | 757 | /* Tested by alsa bugtrack user "hus" bug #1297 12th Aug 2005 */ |
758 | {.vendor = 0x1102, .device = 0x0002, .subsystem = 0x80611102, | 758 | {.vendor = 0x1102, .device = 0x0002, .subsystem = 0x80611102, |
759 | .driver = "EMU10K1", .name = "SBLive! Platinum 5.1 [SB0060]", | 759 | .driver = "EMU10K1", .name = "SBLive 5.1 [SB0060]", |
760 | .id = "Live", | 760 | .id = "Live", |
761 | .emu10k1_chip = 1, | 761 | .emu10k1_chip = 1, |
762 | .ac97_chip = 2, /* ac97 is optional; both SBLive 5.1 and platinum | ||
763 | * share the same IDs! | ||
764 | */ | ||
762 | .sblive51 = 1} , | 765 | .sblive51 = 1} , |
763 | {.vendor = 0x1102, .device = 0x0002, .subsystem = 0x80511102, | 766 | {.vendor = 0x1102, .device = 0x0002, .subsystem = 0x80511102, |
764 | .driver = "EMU10K1", .name = "SBLive! Value [CT4850]", | 767 | .driver = "EMU10K1", .name = "SBLive! Value [CT4850]", |
diff --git a/sound/pci/emu10k1/emumixer.c b/sound/pci/emu10k1/emumixer.c index d71a72e84bcc..7cc831ccd0cb 100644 --- a/sound/pci/emu10k1/emumixer.c +++ b/sound/pci/emu10k1/emumixer.c | |||
@@ -810,8 +810,14 @@ int __devinit snd_emu10k1_mixer(emu10k1_t *emu, | |||
810 | ac97.private_data = emu; | 810 | ac97.private_data = emu; |
811 | ac97.private_free = snd_emu10k1_mixer_free_ac97; | 811 | ac97.private_free = snd_emu10k1_mixer_free_ac97; |
812 | ac97.scaps = AC97_SCAP_NO_SPDIF; | 812 | ac97.scaps = AC97_SCAP_NO_SPDIF; |
813 | if ((err = snd_ac97_mixer(pbus, &ac97, &emu->ac97)) < 0) | 813 | if ((err = snd_ac97_mixer(pbus, &ac97, &emu->ac97)) < 0) { |
814 | return err; | 814 | if (emu->card_capabilities->ac97_chip == 1) |
815 | return err; | ||
816 | snd_printd(KERN_INFO "emu10k1: AC97 is optional on this board\n"); | ||
817 | snd_printd(KERN_INFO" Proceeding without ac97 mixers...\n"); | ||
818 | snd_device_free(emu->card, pbus); | ||
819 | goto no_ac97; /* FIXME: get rid of ugly gotos.. */ | ||
820 | } | ||
815 | if (emu->audigy) { | 821 | if (emu->audigy) { |
816 | /* set master volume to 0 dB */ | 822 | /* set master volume to 0 dB */ |
817 | snd_ac97_write(emu->ac97, AC97_MASTER, 0x0000); | 823 | snd_ac97_write(emu->ac97, AC97_MASTER, 0x0000); |
@@ -836,6 +842,7 @@ int __devinit snd_emu10k1_mixer(emu10k1_t *emu, | |||
836 | for (; *c; c++) | 842 | for (; *c; c++) |
837 | remove_ctl(card, *c); | 843 | remove_ctl(card, *c); |
838 | } else { | 844 | } else { |
845 | no_ac97: | ||
839 | if (emu->card_capabilities->ecard) | 846 | if (emu->card_capabilities->ecard) |
840 | strcpy(emu->card->mixername, "EMU APS"); | 847 | strcpy(emu->card->mixername, "EMU APS"); |
841 | else if (emu->audigy) | 848 | else if (emu->audigy) |
diff --git a/sound/pci/hda/hda_generic.c b/sound/pci/hda/hda_generic.c index 5b829a1a4c60..d0eb9f2250aa 100644 --- a/sound/pci/hda/hda_generic.c +++ b/sound/pci/hda/hda_generic.c | |||
@@ -881,10 +881,8 @@ int snd_hda_parse_generic_codec(struct hda_codec *codec) | |||
881 | struct hda_gspec *spec; | 881 | struct hda_gspec *spec; |
882 | int err; | 882 | int err; |
883 | 883 | ||
884 | if(!codec->afg) { | 884 | if(!codec->afg) |
885 | snd_printdd("hda_generic: no generic modem yet\n"); | 885 | return 0; |
886 | return -ENODEV; | ||
887 | } | ||
888 | 886 | ||
889 | spec = kzalloc(sizeof(*spec), GFP_KERNEL); | 887 | spec = kzalloc(sizeof(*spec), GFP_KERNEL); |
890 | if (spec == NULL) { | 888 | if (spec == NULL) { |
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c index 9590ece2099d..6fe696e53ea6 100644 --- a/sound/pci/hda/hda_intel.c +++ b/sound/pci/hda/hda_intel.c | |||
@@ -1137,6 +1137,7 @@ static snd_pcm_uframes_t azx_pcm_pointer(snd_pcm_substream_t *substream) | |||
1137 | pos = azx_sd_readl(azx_dev, SD_LPIB); | 1137 | pos = azx_sd_readl(azx_dev, SD_LPIB); |
1138 | if (chip->position_fix == POS_FIX_FIFO) | 1138 | if (chip->position_fix == POS_FIX_FIFO) |
1139 | pos += azx_dev->fifo_size; | 1139 | pos += azx_dev->fifo_size; |
1140 | #if 0 /* disabled temprarily, auto-correction doesn't work well... */ | ||
1140 | else if (chip->position_fix == POS_FIX_AUTO && azx_dev->period_updating) { | 1141 | else if (chip->position_fix == POS_FIX_AUTO && azx_dev->period_updating) { |
1141 | /* check the validity of DMA position */ | 1142 | /* check the validity of DMA position */ |
1142 | unsigned int diff = 0; | 1143 | unsigned int diff = 0; |
@@ -1157,6 +1158,10 @@ static snd_pcm_uframes_t azx_pcm_pointer(snd_pcm_substream_t *substream) | |||
1157 | } | 1158 | } |
1158 | azx_dev->period_updating = 0; | 1159 | azx_dev->period_updating = 0; |
1159 | } | 1160 | } |
1161 | #else | ||
1162 | else if (chip->position_fix == POS_FIX_AUTO) | ||
1163 | pos += azx_dev->fifo_size; | ||
1164 | #endif | ||
1160 | } | 1165 | } |
1161 | if (pos >= azx_dev->bufsize) | 1166 | if (pos >= azx_dev->bufsize) |
1162 | pos = 0; | 1167 | pos = 0; |
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index 849b5b50c921..7327deb6df9f 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c | |||
@@ -1385,8 +1385,8 @@ static snd_kcontrol_new_t alc880_test_mixer[] = { | |||
1385 | HDA_CODEC_VOLUME("Side Playback Volume", 0x0f, 0x0, HDA_OUTPUT), | 1385 | HDA_CODEC_VOLUME("Side Playback Volume", 0x0f, 0x0, HDA_OUTPUT), |
1386 | ALC_BIND_MUTE("Front Playback Switch", 0x0c, 2, HDA_INPUT), | 1386 | ALC_BIND_MUTE("Front Playback Switch", 0x0c, 2, HDA_INPUT), |
1387 | ALC_BIND_MUTE("Surround Playback Switch", 0x0d, 2, HDA_INPUT), | 1387 | ALC_BIND_MUTE("Surround Playback Switch", 0x0d, 2, HDA_INPUT), |
1388 | ALC_BIND_MUTE("CLFE Playback Volume", 0x0e, 2, HDA_INPUT), | 1388 | ALC_BIND_MUTE("CLFE Playback Switch", 0x0e, 2, HDA_INPUT), |
1389 | ALC_BIND_MUTE("Side Playback Volume", 0x0f, 2, HDA_INPUT), | 1389 | ALC_BIND_MUTE("Side Playback Switch", 0x0f, 2, HDA_INPUT), |
1390 | PIN_CTL_TEST("Front Pin Mode", 0x14), | 1390 | PIN_CTL_TEST("Front Pin Mode", 0x14), |
1391 | PIN_CTL_TEST("Surround Pin Mode", 0x15), | 1391 | PIN_CTL_TEST("Surround Pin Mode", 0x15), |
1392 | PIN_CTL_TEST("CLFE Pin Mode", 0x16), | 1392 | PIN_CTL_TEST("CLFE Pin Mode", 0x16), |
@@ -1409,18 +1409,6 @@ static snd_kcontrol_new_t alc880_test_mixer[] = { | |||
1409 | HDA_CODEC_MUTE("In-4 Playback Switch", 0x0b, 0x3, HDA_INPUT), | 1409 | HDA_CODEC_MUTE("In-4 Playback Switch", 0x0b, 0x3, HDA_INPUT), |
1410 | HDA_CODEC_VOLUME("CD Playback Volume", 0x0b, 0x4, HDA_INPUT), | 1410 | HDA_CODEC_VOLUME("CD Playback Volume", 0x0b, 0x4, HDA_INPUT), |
1411 | HDA_CODEC_MUTE("CD Playback Switch", 0x0b, 0x4, HDA_INPUT), | 1411 | HDA_CODEC_MUTE("CD Playback Switch", 0x0b, 0x4, HDA_INPUT), |
1412 | HDA_CODEC_VOLUME("Capture Volume", 0x08, 0x0, HDA_INPUT), | ||
1413 | HDA_CODEC_MUTE("Capture Switch", 0x08, 0x0, HDA_INPUT), | ||
1414 | HDA_CODEC_VOLUME_IDX("Capture Volume", 1, 0x09, 0x0, HDA_INPUT), | ||
1415 | HDA_CODEC_MUTE_IDX("Capture Switch", 1, 0x09, 0x0, HDA_INPUT), | ||
1416 | { | ||
1417 | .iface = SNDRV_CTL_ELEM_IFACE_MIXER, | ||
1418 | .name = "Input Source", | ||
1419 | .count = 2, | ||
1420 | .info = alc_mux_enum_info, | ||
1421 | .get = alc_mux_enum_get, | ||
1422 | .put = alc_mux_enum_put, | ||
1423 | }, | ||
1424 | { | 1412 | { |
1425 | .iface = SNDRV_CTL_ELEM_IFACE_MIXER, | 1413 | .iface = SNDRV_CTL_ELEM_IFACE_MIXER, |
1426 | .name = "Channel Mode", | 1414 | .name = "Channel Mode", |
@@ -2243,7 +2231,7 @@ static snd_kcontrol_new_t alc260_base_mixer[] = { | |||
2243 | HDA_CODEC_VOLUME("Headphone Playback Volume", 0x09, 0x0, HDA_OUTPUT), | 2231 | HDA_CODEC_VOLUME("Headphone Playback Volume", 0x09, 0x0, HDA_OUTPUT), |
2244 | ALC_BIND_MUTE("Headphone Playback Switch", 0x09, 2, HDA_INPUT), | 2232 | ALC_BIND_MUTE("Headphone Playback Switch", 0x09, 2, HDA_INPUT), |
2245 | HDA_CODEC_VOLUME_MONO("Mono Playback Volume", 0x0a, 1, 0x0, HDA_OUTPUT), | 2233 | HDA_CODEC_VOLUME_MONO("Mono Playback Volume", 0x0a, 1, 0x0, HDA_OUTPUT), |
2246 | ALC_BIND_MUTE_MONO("Mono Playback Switch", 0x0a, 1, 2, HDA_OUTPUT), | 2234 | ALC_BIND_MUTE_MONO("Mono Playback Switch", 0x0a, 1, 2, HDA_INPUT), |
2247 | HDA_CODEC_VOLUME("Capture Volume", 0x04, 0x0, HDA_INPUT), | 2235 | HDA_CODEC_VOLUME("Capture Volume", 0x04, 0x0, HDA_INPUT), |
2248 | HDA_CODEC_MUTE("Capture Switch", 0x04, 0x0, HDA_INPUT), | 2236 | HDA_CODEC_MUTE("Capture Switch", 0x04, 0x0, HDA_INPUT), |
2249 | { | 2237 | { |
@@ -2270,7 +2258,7 @@ static snd_kcontrol_new_t alc260_hp_mixer[] = { | |||
2270 | HDA_CODEC_VOLUME("Headphone Playback Volume", 0x09, 0x0, HDA_OUTPUT), | 2258 | HDA_CODEC_VOLUME("Headphone Playback Volume", 0x09, 0x0, HDA_OUTPUT), |
2271 | ALC_BIND_MUTE("Headphone Playback Switch", 0x09, 2, HDA_INPUT), | 2259 | ALC_BIND_MUTE("Headphone Playback Switch", 0x09, 2, HDA_INPUT), |
2272 | HDA_CODEC_VOLUME_MONO("Mono Playback Volume", 0x0a, 1, 0x0, HDA_OUTPUT), | 2260 | HDA_CODEC_VOLUME_MONO("Mono Playback Volume", 0x0a, 1, 0x0, HDA_OUTPUT), |
2273 | ALC_BIND_MUTE_MONO("Mono Playback Switch", 0x0a, 1, 2, HDA_OUTPUT), | 2261 | ALC_BIND_MUTE_MONO("Mono Playback Switch", 0x0a, 1, 2, HDA_INPUT), |
2274 | HDA_CODEC_VOLUME("Capture Volume", 0x05, 0x0, HDA_INPUT), | 2262 | HDA_CODEC_VOLUME("Capture Volume", 0x05, 0x0, HDA_INPUT), |
2275 | HDA_CODEC_MUTE("Capture Switch", 0x05, 0x0, HDA_INPUT), | 2263 | HDA_CODEC_MUTE("Capture Switch", 0x05, 0x0, HDA_INPUT), |
2276 | { | 2264 | { |
@@ -2501,7 +2489,7 @@ static snd_kcontrol_new_t alc882_base_mixer[] = { | |||
2501 | HDA_CODEC_VOLUME_MONO("Center Playback Volume", 0x0e, 1, 0x0, HDA_OUTPUT), | 2489 | HDA_CODEC_VOLUME_MONO("Center Playback Volume", 0x0e, 1, 0x0, HDA_OUTPUT), |
2502 | HDA_CODEC_VOLUME_MONO("LFE Playback Volume", 0x0e, 2, 0x0, HDA_OUTPUT), | 2490 | HDA_CODEC_VOLUME_MONO("LFE Playback Volume", 0x0e, 2, 0x0, HDA_OUTPUT), |
2503 | ALC_BIND_MUTE_MONO("Center Playback Switch", 0x0e, 1, 2, HDA_INPUT), | 2491 | ALC_BIND_MUTE_MONO("Center Playback Switch", 0x0e, 1, 2, HDA_INPUT), |
2504 | ALC_BIND_MUTE_MONO("LFE Playback Switch", 0x0e, 2, 2, HDA_OUTPUT), | 2492 | ALC_BIND_MUTE_MONO("LFE Playback Switch", 0x0e, 2, 2, HDA_INPUT), |
2505 | HDA_CODEC_VOLUME("Side Playback Volume", 0x0f, 0x0, HDA_OUTPUT), | 2493 | HDA_CODEC_VOLUME("Side Playback Volume", 0x0f, 0x0, HDA_OUTPUT), |
2506 | ALC_BIND_MUTE("Side Playback Switch", 0x0f, 2, HDA_INPUT), | 2494 | ALC_BIND_MUTE("Side Playback Switch", 0x0f, 2, HDA_INPUT), |
2507 | HDA_CODEC_MUTE("Headphone Playback Switch", 0x1b, 0x0, HDA_OUTPUT), | 2495 | HDA_CODEC_MUTE("Headphone Playback Switch", 0x1b, 0x0, HDA_OUTPUT), |
diff --git a/sound/pci/korg1212/korg1212.c b/sound/pci/korg1212/korg1212.c index 09f9cbe116a3..5561fd4091e8 100644 --- a/sound/pci/korg1212/korg1212.c +++ b/sound/pci/korg1212/korg1212.c | |||
@@ -442,7 +442,7 @@ static char* stateName[] = { | |||
442 | "Setup for play", | 442 | "Setup for play", |
443 | "Playing", | 443 | "Playing", |
444 | "Monitor mode on", | 444 | "Monitor mode on", |
445 | "Calibrating" | 445 | "Calibrating", |
446 | "Invalid" | 446 | "Invalid" |
447 | }; | 447 | }; |
448 | 448 | ||
diff --git a/sound/pci/via82xx.c b/sound/pci/via82xx.c index 6db7de6b9719..3c0205b91e10 100644 --- a/sound/pci/via82xx.c +++ b/sound/pci/via82xx.c | |||
@@ -2147,11 +2147,13 @@ static int __devinit check_dxs_list(struct pci_dev *pci) | |||
2147 | { .subvendor = 0x1019, .subdevice = 0x0996, .action = VIA_DXS_48K }, | 2147 | { .subvendor = 0x1019, .subdevice = 0x0996, .action = VIA_DXS_48K }, |
2148 | { .subvendor = 0x1019, .subdevice = 0x0a81, .action = VIA_DXS_NO_VRA }, /* ECS K7VTA3 v8.0 */ | 2148 | { .subvendor = 0x1019, .subdevice = 0x0a81, .action = VIA_DXS_NO_VRA }, /* ECS K7VTA3 v8.0 */ |
2149 | { .subvendor = 0x1019, .subdevice = 0x0a85, .action = VIA_DXS_NO_VRA }, /* ECS L7VMM2 */ | 2149 | { .subvendor = 0x1019, .subdevice = 0x0a85, .action = VIA_DXS_NO_VRA }, /* ECS L7VMM2 */ |
2150 | { .subvendor = 0x1019, .subdevice = 0xa101, .action = VIA_DXS_SRC }, | ||
2150 | { .subvendor = 0x1025, .subdevice = 0x0033, .action = VIA_DXS_NO_VRA }, /* Acer Inspire 1353LM */ | 2151 | { .subvendor = 0x1025, .subdevice = 0x0033, .action = VIA_DXS_NO_VRA }, /* Acer Inspire 1353LM */ |
2151 | { .subvendor = 0x1025, .subdevice = 0x0046, .action = VIA_DXS_SRC }, /* Acer Aspire 1524 WLMi */ | 2152 | { .subvendor = 0x1025, .subdevice = 0x0046, .action = VIA_DXS_SRC }, /* Acer Aspire 1524 WLMi */ |
2152 | { .subvendor = 0x1043, .subdevice = 0x8095, .action = VIA_DXS_NO_VRA }, /* ASUS A7V8X (FIXME: possibly VIA_DXS_ENABLE?)*/ | 2153 | { .subvendor = 0x1043, .subdevice = 0x8095, .action = VIA_DXS_NO_VRA }, /* ASUS A7V8X (FIXME: possibly VIA_DXS_ENABLE?)*/ |
2153 | { .subvendor = 0x1043, .subdevice = 0x80a1, .action = VIA_DXS_NO_VRA }, /* ASUS A7V8-X */ | 2154 | { .subvendor = 0x1043, .subdevice = 0x80a1, .action = VIA_DXS_NO_VRA }, /* ASUS A7V8-X */ |
2154 | { .subvendor = 0x1043, .subdevice = 0x80b0, .action = VIA_DXS_NO_VRA }, /* ASUS A7V600 & K8V*/ | 2155 | { .subvendor = 0x1043, .subdevice = 0x80b0, .action = VIA_DXS_NO_VRA }, /* ASUS A7V600 & K8V*/ |
2156 | { .subvendor = 0x1043, .subdevice = 0x810d, .action = VIA_DXS_SRC }, /* ASUS */ | ||
2155 | { .subvendor = 0x1043, .subdevice = 0x812a, .action = VIA_DXS_SRC }, /* ASUS A8V Deluxe */ | 2157 | { .subvendor = 0x1043, .subdevice = 0x812a, .action = VIA_DXS_SRC }, /* ASUS A8V Deluxe */ |
2156 | { .subvendor = 0x1071, .subdevice = 0x8375, .action = VIA_DXS_NO_VRA }, /* Vobis/Yakumo/Mitac notebook */ | 2158 | { .subvendor = 0x1071, .subdevice = 0x8375, .action = VIA_DXS_NO_VRA }, /* Vobis/Yakumo/Mitac notebook */ |
2157 | { .subvendor = 0x1071, .subdevice = 0x8399, .action = VIA_DXS_NO_VRA }, /* Umax AB 595T (VIA K8N800A - VT8237) */ | 2159 | { .subvendor = 0x1071, .subdevice = 0x8399, .action = VIA_DXS_NO_VRA }, /* Umax AB 595T (VIA K8N800A - VT8237) */ |