diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-11-16 15:50:53 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-11-16 15:50:53 -0500 |
commit | 73d75ba99e3bdd627275afd3fe48cc933723084b (patch) | |
tree | 8923aa413662c6eee1f36b473b211aab52474ec2 /sound/pci/hda/patch_hdmi.c | |
parent | 71f777ed50e9109c235c14604d5e23d2f8e7453c (diff) | |
parent | abfe69dd2e313d0c8226ca4a12329e3d829cfd7c (diff) |
Merge tag 'sound-fix-3.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
Pull sound fixes from Takashi Iwai:
"Two peaks in diffstat are for the audio EQ init of IDT codecs and the
EMU2004 usb mixer addition, both of which are pretty device-specific,
so safe to apply. The rest are a bunch of small fixes, most of them
are regression fixes"
* tag 'sound-fix-3.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (26 commits)
ALSA: hda - load EQ params into IDT codec on HP bNB13 systems
ASoC: cs42l52: Correct MIC CTL mask
ASoC: wm8962: Turn on regcache_cache_only before disabling regulator
ALSA: jack: Unregister input device at disconnection
ALSA: pcsp: Fix the order of input device unregistration
ASoC: fsl: imx-pcm-fiq: omit fiq counter to avoid harm in unbalanced situations
ASoC: blackfin: Fix missing break
ALSA: usb-audio: add front jack channel selector for EMU0204
ALSA: hda - Don't clear the power state at snd_hda_codec_reset()
ASoC: arizona: Fix typo in name of EQ coefficient controls
ALSA: hda - Control EAPD for Master volume on Lenovo N100
ALSA: hda - Don't turn off EAPD for headphone on Lenovo N100
ALSA: isa: not allocating enough space
ALSA: snd-aoa: two copy and paste bugs
ASoC: wm8997: Correct typo in ISRC mux routes
ALSA: hda - Check keep_eapd_on before inv_eapd
ALSA: hda - Fix Line Out automute on Realtek multifunction jacks
ALSA: msnd: Avoid duplicated driver name
ALSA: compress_core: don't return -EBADFD from poll if paused
ALSA: hda - hdmi: Fix wrong baseline length in ATI/AMD generated ELD
...
Diffstat (limited to 'sound/pci/hda/patch_hdmi.c')
-rw-r--r-- | sound/pci/hda/patch_hdmi.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c index e68792311bb2..08407bed093e 100644 --- a/sound/pci/hda/patch_hdmi.c +++ b/sound/pci/hda/patch_hdmi.c | |||
@@ -763,12 +763,12 @@ static struct channel_map_table map_tables[] = { | |||
763 | { SNDRV_CHMAP_RC, RC }, | 763 | { SNDRV_CHMAP_RC, RC }, |
764 | { SNDRV_CHMAP_FLC, FLC }, | 764 | { SNDRV_CHMAP_FLC, FLC }, |
765 | { SNDRV_CHMAP_FRC, FRC }, | 765 | { SNDRV_CHMAP_FRC, FRC }, |
766 | { SNDRV_CHMAP_FLH, FLH }, | 766 | { SNDRV_CHMAP_TFL, FLH }, |
767 | { SNDRV_CHMAP_FRH, FRH }, | 767 | { SNDRV_CHMAP_TFR, FRH }, |
768 | { SNDRV_CHMAP_FLW, FLW }, | 768 | { SNDRV_CHMAP_FLW, FLW }, |
769 | { SNDRV_CHMAP_FRW, FRW }, | 769 | { SNDRV_CHMAP_FRW, FRW }, |
770 | { SNDRV_CHMAP_TC, TC }, | 770 | { SNDRV_CHMAP_TC, TC }, |
771 | { SNDRV_CHMAP_FCH, FCH }, | 771 | { SNDRV_CHMAP_TFC, FCH }, |
772 | {} /* terminator */ | 772 | {} /* terminator */ |
773 | }; | 773 | }; |
774 | 774 | ||
@@ -1247,6 +1247,9 @@ static int hdmi_pin_hbr_setup(struct hda_codec *codec, hda_nid_t pin_nid, | |||
1247 | pinctl = snd_hda_codec_read(codec, pin_nid, 0, | 1247 | pinctl = snd_hda_codec_read(codec, pin_nid, 0, |
1248 | AC_VERB_GET_PIN_WIDGET_CONTROL, 0); | 1248 | AC_VERB_GET_PIN_WIDGET_CONTROL, 0); |
1249 | 1249 | ||
1250 | if (pinctl < 0) | ||
1251 | return hbr ? -EINVAL : 0; | ||
1252 | |||
1250 | new_pinctl = pinctl & ~AC_PINCTL_EPT; | 1253 | new_pinctl = pinctl & ~AC_PINCTL_EPT; |
1251 | if (hbr) | 1254 | if (hbr) |
1252 | new_pinctl |= AC_PINCTL_EPT_HBR; | 1255 | new_pinctl |= AC_PINCTL_EPT_HBR; |
@@ -3091,7 +3094,7 @@ static int atihdmi_pin_hbr_setup(struct hda_codec *codec, hda_nid_t pin_nid, | |||
3091 | int hbr_ctl, hbr_ctl_new; | 3094 | int hbr_ctl, hbr_ctl_new; |
3092 | 3095 | ||
3093 | hbr_ctl = snd_hda_codec_read(codec, pin_nid, 0, ATI_VERB_GET_HBR_CONTROL, 0); | 3096 | hbr_ctl = snd_hda_codec_read(codec, pin_nid, 0, ATI_VERB_GET_HBR_CONTROL, 0); |
3094 | if (hbr_ctl & ATI_HBR_CAPABLE) { | 3097 | if (hbr_ctl >= 0 && (hbr_ctl & ATI_HBR_CAPABLE)) { |
3095 | if (hbr) | 3098 | if (hbr) |
3096 | hbr_ctl_new = hbr_ctl | ATI_HBR_ENABLE; | 3099 | hbr_ctl_new = hbr_ctl | ATI_HBR_ENABLE; |
3097 | else | 3100 | else |