From: Takashi Iwai Date: Thu, 11 Jun 2015 04:52:31 +0000 (+0200) Subject: Merge branch 'for-linus' into for-next X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=4af88a9c1ba2d39263eef003ea598c657014e59e;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git Merge branch 'for-linus' into for-next This merges and resolves the non-trivial conflicts with the recent fix for hda-i915 binding fallback. Conflicts: sound/pci/hda/hda_intel.c Signed-off-by: Takashi Iwai --- 4af88a9c1ba2d39263eef003ea598c657014e59e diff --cc sound/pci/hda/hda_intel.c index 7933fb00da4f,8a0af6770e1d..3738363e8ee1 --- a/sound/pci/hda/hda_intel.c +++ b/sound/pci/hda/hda_intel.c @@@ -1973,30 -1850,22 +1973,31 @@@ static int azx_probe_continue(struct az int dev = chip->dev_index; int err; - /* Request power well for Haswell HDA controller and codec */ + hda->probe_continued = 1; + + /* Request display power well for the HDA controller or codec. For + * Haswell/Broadwell, both the display HDA controller and codec need + * this power. For other platforms, like Baytrail/Braswell, only the + * display codec needs the power and it can be released after probe. + */ if (chip->driver_caps & AZX_DCAPS_I915_POWERWELL) { -#ifdef CONFIG_SND_HDA_I915 - err = hda_i915_init(hda); + /* HSW/BDW controllers need this power */ + if (CONTROLLER_IN_GPU(pci)) + hda->need_i915_power = 1; + + err = snd_hdac_i915_init(bus); if (err < 0) - goto i915_power_fail; + goto skip_i915; - err = hda_display_power(hda, true); + + err = snd_hdac_display_power(bus, true); if (err < 0) { dev_err(chip->card->dev, "Cannot turn on display power on i915\n"); - goto out_free; + goto i915_power_fail; } -#endif } + skip_i915: err = azx_first_init(chip); if (err < 0) goto out_free;