drm/i915: move power domain init earlier during system resume
authorImre Deak <imre.deak@intel.com>
Tue, 1 Apr 2014 16:55:22 +0000 (19:55 +0300)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Fri, 4 Apr 2014 07:30:10 +0000 (09:30 +0200)
commit76c4b250080fff6e4befaa3619942422fd0ea380
treea6f7a01f06504a98e3a0691f0eac1afb4a533a76
parentbc104d1f10eb6001f1b1003a5a92066a1b03f080
drm/i915: move power domain init earlier during system resume

During resume the intel hda audio driver depends on the i915 driver
reinitializing the audio power domain. Since the order of calling the
i915 resume handler wrt. that of the audio driver is not guaranteed,
move the power domain reinitialization step to the resume_early
handler. This is guaranteed to run before the resume handler of any
other driver.

The power domain initialization in turn requires us to enable the i915
pci device first, so move that part earlier too.

Accordingly disabling of the i915 pci device should happen after the
audio suspend handler ran. So move the disabling later from the i915
resume handler to the resume_late handler.

v2:
- move intel_uncore_sanitize/early_sanitize earlier too, so they don't
  get reordered wrt. intel_power_domains_init_hw()

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76152
Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Takashi Iwai <tiwai@suse.de>
Cc: stable@vger.kernel.org
[danvet: Add cc: stable and loud comments that this is just a hack.]
[danvet: Fix "Should it be static?" sparse warning reported by Wu
Fengguang's kbuilder.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_drv.c