Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 779d4d8f authored by Juha-Pekka Heikkila's avatar Juha-Pekka Heikkila Committed by Ville Syrjälä
Browse files

drm/i915: Unify skylake plane disable

parent 9a8cc576
Loading
Loading
Loading
Loading
+2 −19
Original line number Original line Diff line number Diff line
@@ -3541,23 +3541,6 @@ u32 skl_plane_ctl(const struct intel_crtc_state *crtc_state,
	return plane_ctl;
	return plane_ctl;
}
}


static void skylake_disable_primary_plane(struct intel_plane *primary,
					  struct intel_crtc *crtc)
{
	struct drm_i915_private *dev_priv = to_i915(primary->base.dev);
	enum plane_id plane_id = primary->id;
	enum pipe pipe = primary->pipe;
	unsigned long irqflags;

	spin_lock_irqsave(&dev_priv->uncore.lock, irqflags);

	I915_WRITE_FW(PLANE_CTL(pipe, plane_id), 0);
	I915_WRITE_FW(PLANE_SURF(pipe, plane_id), 0);
	POSTING_READ_FW(PLANE_SURF(pipe, plane_id));

	spin_unlock_irqrestore(&dev_priv->uncore.lock, irqflags);
}

static int
static int
__intel_display_resume(struct drm_device *dev,
__intel_display_resume(struct drm_device *dev,
		       struct drm_atomic_state *state,
		       struct drm_atomic_state *state,
@@ -13214,7 +13197,7 @@ intel_primary_plane_create(struct drm_i915_private *dev_priv, enum pipe pipe)
		modifiers = skl_format_modifiers_ccs;
		modifiers = skl_format_modifiers_ccs;


		primary->update_plane = skl_update_plane;
		primary->update_plane = skl_update_plane;
		primary->disable_plane = skylake_disable_primary_plane;
		primary->disable_plane = skl_disable_plane;
	} else if (INTEL_GEN(dev_priv) >= 9) {
	} else if (INTEL_GEN(dev_priv) >= 9) {
		intel_primary_formats = skl_primary_formats;
		intel_primary_formats = skl_primary_formats;
		num_formats = ARRAY_SIZE(skl_primary_formats);
		num_formats = ARRAY_SIZE(skl_primary_formats);
@@ -13224,7 +13207,7 @@ intel_primary_plane_create(struct drm_i915_private *dev_priv, enum pipe pipe)
			modifiers = skl_format_modifiers_noccs;
			modifiers = skl_format_modifiers_noccs;


		primary->update_plane = skl_update_plane;
		primary->update_plane = skl_update_plane;
		primary->disable_plane = skylake_disable_primary_plane;
		primary->disable_plane = skl_disable_plane;
	} else if (INTEL_GEN(dev_priv) >= 4) {
	} else if (INTEL_GEN(dev_priv) >= 4) {
		intel_primary_formats = i965_primary_formats;
		intel_primary_formats = i965_primary_formats;
		num_formats = ARRAY_SIZE(i965_primary_formats);
		num_formats = ARRAY_SIZE(i965_primary_formats);
+1 −0
Original line number Original line Diff line number Diff line
@@ -1925,6 +1925,7 @@ void intel_pipe_update_end(struct intel_crtc_state *new_crtc_state);
void skl_update_plane(struct intel_plane *plane,
void skl_update_plane(struct intel_plane *plane,
		      const struct intel_crtc_state *crtc_state,
		      const struct intel_crtc_state *crtc_state,
		      const struct intel_plane_state *plane_state);
		      const struct intel_plane_state *plane_state);
void skl_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc);


/* intel_tv.c */
/* intel_tv.c */
void intel_tv_init(struct drm_i915_private *dev_priv);
void intel_tv_init(struct drm_i915_private *dev_priv);
+1 −1
Original line number Original line Diff line number Diff line
@@ -311,7 +311,7 @@ skl_update_plane(struct intel_plane *plane,
	spin_unlock_irqrestore(&dev_priv->uncore.lock, irqflags);
	spin_unlock_irqrestore(&dev_priv->uncore.lock, irqflags);
}
}


static void
void
skl_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc)
skl_disable_plane(struct intel_plane *plane, struct intel_crtc *crtc)
{
{
	struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
	struct drm_i915_private *dev_priv = to_i915(plane->base.dev);