@@ -2705,8 +2705,6 @@ static bool plane_crtc_active(const struct drm_plane_state *state)
* crtcs need to be updated though.
*
* Note that this function does all plane updates across all CRTCs in one step.
- * If the hardware can't support this approach look at
- * drm_atomic_helper_commit_planes_on_crtc() instead.
*
* Plane parameters can be updated by applications while the associated CRTC is
* disabled. The DRM/KMS core will store the parameters in the plane state,
@@ -2833,76 +2831,6 @@ void drm_atomic_helper_commit_planes(struct drm_device *dev,
}
EXPORT_SYMBOL(drm_atomic_helper_commit_planes);
-/**
- * drm_atomic_helper_commit_planes_on_crtc - commit plane state for a CRTC
- * @old_crtc_state: atomic state object with the old CRTC state
- *
- * This function commits the new plane state using the plane and atomic helper
- * functions for planes on the specific CRTC. It assumes that the atomic state
- * has already been pushed into the relevant object state pointers, since this
- * step can no longer fail.
- *
- * This function is useful when plane updates should be done CRTC-by-CRTC
- * instead of one global step like drm_atomic_helper_commit_planes() does.
- *
- * This function can only be savely used when planes are not allowed to move
- * between different CRTCs because this function doesn't handle inter-CRTC
- * dependencies. Callers need to ensure that either no such dependencies exist,
- * resolve them through ordering of commit calls or through some other means.
- */
-void
-drm_atomic_helper_commit_planes_on_crtc(struct drm_crtc_state *old_crtc_state)
-{
- const struct drm_crtc_helper_funcs *crtc_funcs;
- struct drm_crtc *crtc = old_crtc_state->crtc;
- struct drm_atomic_state *old_state = old_crtc_state->state;
- struct drm_crtc_state *new_crtc_state =
- drm_atomic_get_new_crtc_state(old_state, crtc);
- struct drm_plane *plane;
- unsigned int plane_mask;
-
- plane_mask = old_crtc_state->plane_mask;
- plane_mask |= new_crtc_state->plane_mask;
-
- crtc_funcs = crtc->helper_private;
- if (crtc_funcs && crtc_funcs->atomic_begin)
- crtc_funcs->atomic_begin(crtc, old_state);
-
- drm_for_each_plane_mask(plane, crtc->dev, plane_mask) {
- struct drm_plane_state *old_plane_state =
- drm_atomic_get_old_plane_state(old_state, plane);
- struct drm_plane_state *new_plane_state =
- drm_atomic_get_new_plane_state(old_state, plane);
- const struct drm_plane_helper_funcs *plane_funcs;
- bool disabling;
-
- plane_funcs = plane->helper_private;
-
- if (!old_plane_state || !plane_funcs)
- continue;
-
- WARN_ON(new_plane_state->crtc &&
- new_plane_state->crtc != crtc);
-
- disabling = drm_atomic_plane_disabling(old_plane_state, new_plane_state);
-
- if (disabling && plane_funcs->atomic_disable) {
- plane_funcs->atomic_disable(plane, old_state);
- } else if (new_plane_state->crtc || disabling) {
- plane_funcs->atomic_update(plane, old_state);
-
- if (!disabling && plane_funcs->atomic_enable) {
- if (drm_atomic_plane_enabling(old_plane_state, new_plane_state))
- plane_funcs->atomic_enable(plane, old_state);
- }
- }
- }
-
- if (crtc_funcs && crtc_funcs->atomic_flush)
- crtc_funcs->atomic_flush(crtc, old_state);
-}
-EXPORT_SYMBOL(drm_atomic_helper_commit_planes_on_crtc);
-
/**
* drm_atomic_helper_disable_planes_on_crtc - helper to disable CRTC's planes
* @old_crtc_state: atomic state object with the old CRTC state
@@ -107,7 +107,6 @@ void drm_atomic_helper_commit_planes(struct drm_device *dev,
uint32_t flags);
void drm_atomic_helper_cleanup_planes(struct drm_device *dev,
struct drm_atomic_state *old_state);
-void drm_atomic_helper_commit_planes_on_crtc(struct drm_crtc_state *old_crtc_state);
void
drm_atomic_helper_disable_planes_on_crtc(struct drm_crtc_state *old_crtc_state,
bool atomic);