Commit 84bb65bd authored by Daniel Vetter's avatar Daniel Vetter

drm/i915: rip out intel_crtc->dpms_mode

Afaict this has been used for two things:
- To prevent the crtc enable code from being run twice. We have now
  intel_crtc->active to track this in a more precise way.
- To ensure the code copes correctly with the unknown hw state after
  boot and resume. Thanks to the hw state readout and sanitize code we
  have now a better way to handle this.

The only thing it still does is complicate our modeset state space.

Having outlived its usefullness, let it just die.
Reviewed-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
Signed-Off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 0a91ca29
...@@ -3470,18 +3470,10 @@ void intel_crtc_update_dpms(struct drm_crtc *crtc) ...@@ -3470,18 +3470,10 @@ void intel_crtc_update_dpms(struct drm_crtc *crtc)
struct intel_encoder *intel_encoder; struct intel_encoder *intel_encoder;
int pipe = intel_crtc->pipe; int pipe = intel_crtc->pipe;
bool enabled, enable = false; bool enabled, enable = false;
int mode;
for_each_encoder_on_crtc(dev, crtc, intel_encoder) for_each_encoder_on_crtc(dev, crtc, intel_encoder)
enable |= intel_encoder->connectors_active; enable |= intel_encoder->connectors_active;
mode = enable ? DRM_MODE_DPMS_ON : DRM_MODE_DPMS_OFF;
if (intel_crtc->dpms_mode == mode)
return;
intel_crtc->dpms_mode = mode;
if (enable) if (enable)
dev_priv->display.crtc_enable(crtc); dev_priv->display.crtc_enable(crtc);
else else
...@@ -5037,11 +5029,6 @@ static int intel_crtc_mode_set(struct drm_crtc *crtc, ...@@ -5037,11 +5029,6 @@ static int intel_crtc_mode_set(struct drm_crtc *crtc,
x, y, old_fb); x, y, old_fb);
drm_vblank_post_modeset(dev, pipe); drm_vblank_post_modeset(dev, pipe);
if (ret)
intel_crtc->dpms_mode = DRM_MODE_DPMS_OFF;
else
intel_crtc->dpms_mode = DRM_MODE_DPMS_ON;
return ret; return ret;
} }
...@@ -7621,10 +7608,6 @@ static void intel_sanitize_crtc(struct intel_crtc *crtc) ...@@ -7621,10 +7608,6 @@ static void intel_sanitize_crtc(struct intel_crtc *crtc)
struct drm_i915_private *dev_priv = dev->dev_private; struct drm_i915_private *dev_priv = dev->dev_private;
u32 reg, val; u32 reg, val;
/* Clear the dpms state for compatibility with code still using that
* deprecated state variable. */
crtc->dpms_mode = -1;
/* Clear any frame start delays used for debugging left by the BIOS */ /* Clear any frame start delays used for debugging left by the BIOS */
reg = PIPECONF(crtc->pipe); reg = PIPECONF(crtc->pipe);
I915_WRITE(reg, I915_READ(reg) & ~PIPECONF_FRAME_START_DELAY_MASK); I915_WRITE(reg, I915_READ(reg) & ~PIPECONF_FRAME_START_DELAY_MASK);
......
...@@ -164,7 +164,6 @@ struct intel_crtc { ...@@ -164,7 +164,6 @@ struct intel_crtc {
enum pipe pipe; enum pipe pipe;
enum plane plane; enum plane plane;
u8 lut_r[256], lut_g[256], lut_b[256]; u8 lut_r[256], lut_g[256], lut_b[256];
int dpms_mode;
/* /*
* Whether the crtc and the connected output pipeline is active. Implies * Whether the crtc and the connected output pipeline is active. Implies
* that crtc->enabled is set, i.e. the current mode configuration has * that crtc->enabled is set, i.e. the current mode configuration has
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment