diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-05-12 15:55:42 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-05-12 15:55:42 -0400 |
commit | e5ad8b6d1ef82a83b1469fe66e40e06f07f46222 (patch) | |
tree | f89178e274809d9673570cda53f7aaf9c32fa272 | |
parent | ed1e33dded773ead96d047a34286e27feafd0505 (diff) | |
parent | 84add303ef950b8d85f54bc2248c2bc73467c329 (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.c | 8 | ||||
-rw-r--r-- | sound/pci/hda/patch_hdmi.c | 7 | ||||
-rw-r--r-- | sound/pci/hda/patch_realtek.c | 13 | ||||
-rw-r--r-- | sound/usb/quirks.c | 3 |
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 | ||
6431 | static const struct hda_fixup alc662_fixups[] = { | 6432 | static 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 | ||
6677 | static const struct snd_pci_quirk alc662_fixup_tbl[] = { | 6687 | static 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 | } |