| From b940485e1839d152aebff85c6db21ea4f36e26dc Mon Sep 17 00:00:00 2001 |
| From: Daniel Vetter <daniel.vetter@ffwll.ch> |
| Date: Wed, 5 Jun 2013 13:34:17 +0200 |
| Subject: drm/i915: extract readout_hw_state from setup_hw_state |
| |
| Simply grew too big. This also makes the fixup and restore logic in |
| setup_hw_state stand out a bit more clearly. |
| |
| Reviewed-by: Damien Lespiau <damien.lespiau@intel.com> |
| Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> |
| (cherry picked from commit 30e984df4c5633363b45108473b0561e7d89476d) |
| Signed-off-by: Darren Hart <dvhart@linux.intel.com> |
| --- |
| drivers/gpu/drm/i915/intel_display.c | 20 +++++++++++++++----- |
| 1 file changed, 15 insertions(+), 5 deletions(-) |
| |
| --- a/drivers/gpu/drm/i915/intel_display.c |
| +++ b/drivers/gpu/drm/i915/intel_display.c |
| @@ -9742,14 +9742,10 @@ void i915_redisable_vga(struct drm_devic |
| } |
| } |
| |
| -/* Scan out the current hw modeset state, sanitizes it and maps it into the drm |
| - * and i915 state tracking structures. */ |
| -void intel_modeset_setup_hw_state(struct drm_device *dev, |
| - bool force_restore) |
| +static void intel_modeset_readout_hw_state(struct drm_device *dev) |
| { |
| struct drm_i915_private *dev_priv = dev->dev_private; |
| enum pipe pipe; |
| - struct drm_plane *plane; |
| struct intel_crtc *crtc; |
| struct intel_encoder *encoder; |
| struct intel_connector *connector; |
| @@ -9825,6 +9821,20 @@ void intel_modeset_setup_hw_state(struct |
| drm_get_connector_name(&connector->base), |
| connector->base.encoder ? "enabled" : "disabled"); |
| } |
| +} |
| + |
| +/* Scan out the current hw modeset state, sanitizes it and maps it into the drm |
| + * and i915 state tracking structures. */ |
| +void intel_modeset_setup_hw_state(struct drm_device *dev, |
| + bool force_restore) |
| +{ |
| + struct drm_i915_private *dev_priv = dev->dev_private; |
| + enum pipe pipe; |
| + struct drm_plane *plane; |
| + struct intel_crtc *crtc; |
| + struct intel_encoder *encoder; |
| + |
| + intel_modeset_readout_hw_state(dev); |
| |
| /* HW state is read out, now we need to sanitize this mess. */ |
| list_for_each_entry(encoder, &dev->mode_config.encoder_list, |