aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2016-05-12 15:55:42 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2016-05-12 15:55:42 -0400
commite5ad8b6d1ef82a83b1469fe66e40e06f07f46222 (patch)
treef89178e274809d9673570cda53f7aaf9c32fa272
parented1e33dded773ead96d047a34286e27feafd0505 (diff)
parent84add303ef950b8d85f54bc2248c2bc73467c329 (diff)
Merge tag 'sound-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
Pull sound fixes from Takashi Iwai: "This is a pretty boring pull request as you wish: including a few small and trivial HD-audio and USB-audio quirks and a couple of small regression fixes in HD-audio" * tag 'sound-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: ALSA: usb-audio: Yet another Phoneix Audio device quirk ALSA: hda - Fix regression on ATI HDMI audio ALSA: hda - Fix subwoofer pin on ASUS N751 and N551 ALSA: hda - Fix broken reconfig ALSA: hda - Fix white noise on Asus UX501VW headset ALSA: usb-audio: Quirk for yet another Phoenix Audio devices (v2)
-rw-r--r--sound/pci/hda/hda_sysfs.c8
-rw-r--r--sound/pci/hda/patch_hdmi.c7
-rw-r--r--sound/pci/hda/patch_realtek.c13
-rw-r--r--sound/usb/quirks.c3
4 files changed, 19 insertions, 12 deletions
diff --git a/sound/pci/hda/hda_sysfs.c b/sound/pci/hda/hda_sysfs.c
index 64e0d1d81ca5..9739fce9e032 100644
--- a/sound/pci/hda/hda_sysfs.c
+++ b/sound/pci/hda/hda_sysfs.c
@@ -141,14 +141,6 @@ static int reconfig_codec(struct hda_codec *codec)
141 err = snd_hda_codec_configure(codec); 141 err = snd_hda_codec_configure(codec);
142 if (err < 0) 142 if (err < 0)
143 goto error; 143 goto error;
144 /* rebuild PCMs */
145 err = snd_hda_codec_build_pcms(codec);
146 if (err < 0)
147 goto error;
148 /* rebuild mixers */
149 err = snd_hda_codec_build_controls(codec);
150 if (err < 0)
151 goto error;
152 err = snd_card_register(codec->card); 144 err = snd_card_register(codec->card);
153 error: 145 error:
154 snd_hda_power_down(codec); 146 snd_hda_power_down(codec);
diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
index 1483f85999ec..a010d704e0e2 100644
--- a/sound/pci/hda/patch_hdmi.c
+++ b/sound/pci/hda/patch_hdmi.c
@@ -3401,6 +3401,9 @@ static int patch_atihdmi(struct hda_codec *codec)
3401 spec->ops.pin_hbr_setup = atihdmi_pin_hbr_setup; 3401 spec->ops.pin_hbr_setup = atihdmi_pin_hbr_setup;
3402 spec->ops.setup_stream = atihdmi_setup_stream; 3402 spec->ops.setup_stream = atihdmi_setup_stream;
3403 3403
3404 spec->chmap.ops.pin_get_slot_channel = atihdmi_pin_get_slot_channel;
3405 spec->chmap.ops.pin_set_slot_channel = atihdmi_pin_set_slot_channel;
3406
3404 if (!has_amd_full_remap_support(codec)) { 3407 if (!has_amd_full_remap_support(codec)) {
3405 /* override to ATI/AMD-specific versions with pairwise mapping */ 3408 /* override to ATI/AMD-specific versions with pairwise mapping */
3406 spec->chmap.ops.chmap_cea_alloc_validate_get_type = 3409 spec->chmap.ops.chmap_cea_alloc_validate_get_type =
@@ -3408,10 +3411,6 @@ static int patch_atihdmi(struct hda_codec *codec)
3408 spec->chmap.ops.cea_alloc_to_tlv_chmap = 3411 spec->chmap.ops.cea_alloc_to_tlv_chmap =
3409 atihdmi_paired_cea_alloc_to_tlv_chmap; 3412 atihdmi_paired_cea_alloc_to_tlv_chmap;
3410 spec->chmap.ops.chmap_validate = atihdmi_paired_chmap_validate; 3413 spec->chmap.ops.chmap_validate = atihdmi_paired_chmap_validate;
3411 spec->chmap.ops.pin_get_slot_channel =
3412 atihdmi_pin_get_slot_channel;
3413 spec->chmap.ops.pin_set_slot_channel =
3414 atihdmi_pin_set_slot_channel;
3415 } 3414 }
3416 3415
3417 /* ATI/AMD converters do not advertise all of their capabilities */ 3416 /* ATI/AMD converters do not advertise all of their capabilities */
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index ac4490a96863..4918ffa5ba68 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -6426,6 +6426,7 @@ enum {
6426 ALC668_FIXUP_DELL_DISABLE_AAMIX, 6426 ALC668_FIXUP_DELL_DISABLE_AAMIX,
6427 ALC668_FIXUP_DELL_XPS13, 6427 ALC668_FIXUP_DELL_XPS13,
6428 ALC662_FIXUP_ASUS_Nx50, 6428 ALC662_FIXUP_ASUS_Nx50,
6429 ALC668_FIXUP_ASUS_Nx51,
6429}; 6430};
6430 6431
6431static const struct hda_fixup alc662_fixups[] = { 6432static const struct hda_fixup alc662_fixups[] = {
@@ -6672,6 +6673,15 @@ static const struct hda_fixup alc662_fixups[] = {
6672 .chained = true, 6673 .chained = true,
6673 .chain_id = ALC662_FIXUP_BASS_1A 6674 .chain_id = ALC662_FIXUP_BASS_1A
6674 }, 6675 },
6676 [ALC668_FIXUP_ASUS_Nx51] = {
6677 .type = HDA_FIXUP_PINS,
6678 .v.pins = (const struct hda_pintbl[]) {
6679 {0x1a, 0x90170151}, /* bass speaker */
6680 {}
6681 },
6682 .chained = true,
6683 .chain_id = ALC662_FIXUP_BASS_CHMAP,
6684 },
6675}; 6685};
6676 6686
6677static const struct snd_pci_quirk alc662_fixup_tbl[] = { 6687static const struct snd_pci_quirk alc662_fixup_tbl[] = {
@@ -6694,11 +6704,14 @@ static const struct snd_pci_quirk alc662_fixup_tbl[] = {
6694 SND_PCI_QUIRK(0x1028, 0x0698, "Dell", ALC668_FIXUP_DELL_MIC_NO_PRESENCE), 6704 SND_PCI_QUIRK(0x1028, 0x0698, "Dell", ALC668_FIXUP_DELL_MIC_NO_PRESENCE),
6695 SND_PCI_QUIRK(0x1028, 0x069f, "Dell", ALC668_FIXUP_DELL_MIC_NO_PRESENCE), 6705 SND_PCI_QUIRK(0x1028, 0x069f, "Dell", ALC668_FIXUP_DELL_MIC_NO_PRESENCE),
6696 SND_PCI_QUIRK(0x103c, 0x1632, "HP RP5800", ALC662_FIXUP_HP_RP5800), 6706 SND_PCI_QUIRK(0x103c, 0x1632, "HP RP5800", ALC662_FIXUP_HP_RP5800),
6707 SND_PCI_QUIRK(0x1043, 0x1080, "Asus UX501VW", ALC668_FIXUP_HEADSET_MODE),
6697 SND_PCI_QUIRK(0x1043, 0x11cd, "Asus N550", ALC662_FIXUP_ASUS_Nx50), 6708 SND_PCI_QUIRK(0x1043, 0x11cd, "Asus N550", ALC662_FIXUP_ASUS_Nx50),
6698 SND_PCI_QUIRK(0x1043, 0x13df, "Asus N550JX", ALC662_FIXUP_BASS_1A), 6709 SND_PCI_QUIRK(0x1043, 0x13df, "Asus N550JX", ALC662_FIXUP_BASS_1A),
6699 SND_PCI_QUIRK(0x1043, 0x129d, "Asus N750", ALC662_FIXUP_ASUS_Nx50), 6710 SND_PCI_QUIRK(0x1043, 0x129d, "Asus N750", ALC662_FIXUP_ASUS_Nx50),
6700 SND_PCI_QUIRK(0x1043, 0x1477, "ASUS N56VZ", ALC662_FIXUP_BASS_MODE4_CHMAP), 6711 SND_PCI_QUIRK(0x1043, 0x1477, "ASUS N56VZ", ALC662_FIXUP_BASS_MODE4_CHMAP),
6701 SND_PCI_QUIRK(0x1043, 0x15a7, "ASUS UX51VZH", ALC662_FIXUP_BASS_16), 6712 SND_PCI_QUIRK(0x1043, 0x15a7, "ASUS UX51VZH", ALC662_FIXUP_BASS_16),
6713 SND_PCI_QUIRK(0x1043, 0x177d, "ASUS N551", ALC668_FIXUP_ASUS_Nx51),
6714 SND_PCI_QUIRK(0x1043, 0x17bd, "ASUS N751", ALC668_FIXUP_ASUS_Nx51),
6702 SND_PCI_QUIRK(0x1043, 0x1b73, "ASUS N55SF", ALC662_FIXUP_BASS_16), 6715 SND_PCI_QUIRK(0x1043, 0x1b73, "ASUS N55SF", ALC662_FIXUP_BASS_16),
6703 SND_PCI_QUIRK(0x1043, 0x1bf3, "ASUS N76VZ", ALC662_FIXUP_BASS_MODE4_CHMAP), 6716 SND_PCI_QUIRK(0x1043, 0x1bf3, "ASUS N76VZ", ALC662_FIXUP_BASS_MODE4_CHMAP),
6704 SND_PCI_QUIRK(0x1043, 0x8469, "ASUS mobo", ALC662_FIXUP_NO_JACK_DETECT), 6717 SND_PCI_QUIRK(0x1043, 0x8469, "ASUS mobo", ALC662_FIXUP_NO_JACK_DETECT),
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
index 0adfd9537cf7..6adde457b602 100644
--- a/sound/usb/quirks.c
+++ b/sound/usb/quirks.c
@@ -1137,8 +1137,11 @@ bool snd_usb_get_sample_rate_quirk(struct snd_usb_audio *chip)
1137 case USB_ID(0x047F, 0x0415): /* Plantronics BT-300 */ 1137 case USB_ID(0x047F, 0x0415): /* Plantronics BT-300 */
1138 case USB_ID(0x047F, 0xAA05): /* Plantronics DA45 */ 1138 case USB_ID(0x047F, 0xAA05): /* Plantronics DA45 */
1139 case USB_ID(0x04D8, 0xFEEA): /* Benchmark DAC1 Pre */ 1139 case USB_ID(0x04D8, 0xFEEA): /* Benchmark DAC1 Pre */
1140 case USB_ID(0x0556, 0x0014): /* Phoenix Audio TMX320VC */
1140 case USB_ID(0x074D, 0x3553): /* Outlaw RR2150 (Micronas UAC3553B) */ 1141 case USB_ID(0x074D, 0x3553): /* Outlaw RR2150 (Micronas UAC3553B) */
1142 case USB_ID(0x1de7, 0x0013): /* Phoenix Audio MT202exe */
1141 case USB_ID(0x1de7, 0x0014): /* Phoenix Audio TMX320 */ 1143 case USB_ID(0x1de7, 0x0014): /* Phoenix Audio TMX320 */
1144 case USB_ID(0x1de7, 0x0114): /* Phoenix Audio MT202pcs */
1142 case USB_ID(0x21B4, 0x0081): /* AudioQuest DragonFly */ 1145 case USB_ID(0x21B4, 0x0081): /* AudioQuest DragonFly */
1143 return true; 1146 return true;
1144 } 1147 }