drm/i915: Shuffle modeset reset handling around
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 16 Jan 2014 21:28:44 +0000 (22:28 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Fri, 24 Jan 2014 16:22:52 +0000 (17:22 +0100)
commit754970ee1a4b0a3ba0536ae1d22825a1cfb4c11b
treebe34c14b0f19afe53ae027b3107196a29196499b
parentb2f19d1a1d7b262cf5fbe6033776afcf6d1ab526
drm/i915: Shuffle modeset reset handling around

Currently we're doing the reset handling a bit late, and we're doing
it both in the driver load code and on resume. This makes it unusable
for e.g. resetting the panel power sequence state like Paulo wants to.

Instead of adding yet another single-use callback shuffle things
around:
- Output handling code is responsible to reset/init all state on its
  own at driver load time.
- We call the reset functions much earlier, before we start using any
  of the modeset code.

Compared to Paulo's new ->resume callback the only difference in
placement is that ->reset is still called without dev->struct_mutex
held. Which is imo a feature.

v2: Rebase on top of the now merge dinq.

Cc: Paulo Zanoni <przanoni@gmail.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_drv.c
drivers/gpu/drm/i915/intel_crt.c
drivers/gpu/drm/i915/intel_display.c