diff options
author | Takashi Iwai <tiwai@suse.de> | 2016-03-04 02:41:41 -0500 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2016-03-04 02:41:41 -0500 |
commit | 6defb60ae4ffe92c29291ed49695daa255b8f559 (patch) | |
tree | 67506a05d171df966b8ca9efa261fa307025e91e /sound/pci/hda/patch_hdmi.c | |
parent | 03367bf7fd30165bda3b037b3078cfa231ba33b7 (diff) | |
parent | 790b415c98de62602810b0eedce26f0f9d6ddd78 (diff) |
Merge branch 'for-linus' into for-next
Resolved the conflicts with the latest HDA HDMI fixes.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_hdmi.c')
-rw-r--r-- | sound/pci/hda/patch_hdmi.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c index 490931d020ee..fe4141c43ddb 100644 --- a/sound/pci/hda/patch_hdmi.c +++ b/sound/pci/hda/patch_hdmi.c | |||
@@ -2936,13 +2936,6 @@ static int patch_generic_hdmi(struct hda_codec *codec) | |||
2936 | is_broxton(codec)) | 2936 | is_broxton(codec)) |
2937 | codec->core.link_power_control = 1; | 2937 | codec->core.link_power_control = 1; |
2938 | 2938 | ||
2939 | if (codec_has_acomp(codec)) { | ||
2940 | codec->depop_delay = 0; | ||
2941 | spec->i915_audio_ops.audio_ptr = codec; | ||
2942 | spec->i915_audio_ops.pin_eld_notify = intel_pin_eld_notify; | ||
2943 | snd_hdac_i915_register_notifier(&spec->i915_audio_ops); | ||
2944 | } | ||
2945 | |||
2946 | if (hdmi_parse_codec(codec) < 0) { | 2939 | if (hdmi_parse_codec(codec) < 0) { |
2947 | if (spec->i915_bound) | 2940 | if (spec->i915_bound) |
2948 | snd_hdac_i915_exit(&codec->bus->core); | 2941 | snd_hdac_i915_exit(&codec->bus->core); |
@@ -2964,6 +2957,18 @@ static int patch_generic_hdmi(struct hda_codec *codec) | |||
2964 | 2957 | ||
2965 | init_channel_allocations(); | 2958 | init_channel_allocations(); |
2966 | 2959 | ||
2960 | if (codec_has_acomp(codec)) { | ||
2961 | codec->depop_delay = 0; | ||
2962 | spec->i915_audio_ops.audio_ptr = codec; | ||
2963 | /* intel_audio_codec_enable() or intel_audio_codec_disable() | ||
2964 | * will call pin_eld_notify with using audio_ptr pointer | ||
2965 | * We need make sure audio_ptr is really setup | ||
2966 | */ | ||
2967 | wmb(); | ||
2968 | spec->i915_audio_ops.pin_eld_notify = intel_pin_eld_notify; | ||
2969 | snd_hdac_i915_register_notifier(&spec->i915_audio_ops); | ||
2970 | } | ||
2971 | |||
2967 | WARN_ON(spec->dyn_pcm_assign && !codec_has_acomp(codec)); | 2972 | WARN_ON(spec->dyn_pcm_assign && !codec_has_acomp(codec)); |
2968 | return 0; | 2973 | return 0; |
2969 | } | 2974 | } |