@@ -105,8 +105,27 @@ rockchip_user_fb_create(struct drm_device *dev, struct drm_file *file_priv,
return ERR_PTR(ret);
}
+static void
+rockchip_atomic_helper_commit_tail_rpm(struct drm_atomic_state *old_state)
+{
+ struct drm_device *dev = old_state->dev;
+
+ drm_atomic_helper_commit_modeset_disables(dev, old_state);
+
+ drm_atomic_helper_commit_modeset_enables(dev, old_state);
+
+ drm_atomic_helper_commit_planes(dev, old_state,
+ DRM_PLANE_COMMIT_ACTIVE_ONLY);
+
+ drm_atomic_helper_commit_hw_done(old_state);
+
+ drm_atomic_helper_wait_for_vblanks(dev, old_state);
+
+ drm_atomic_helper_cleanup_planes(dev, old_state);
+}
+
static const struct drm_mode_config_helper_funcs rockchip_mode_config_helpers = {
- .atomic_commit_tail = drm_atomic_helper_commit_tail_rpm,
+ .atomic_commit_tail = rockchip_atomic_helper_commit_tail_rpm,
};
static const struct drm_mode_config_funcs rockchip_drm_mode_config_funcs = {
This reverts commit c87fb38df19da3362a0e20df1aad852100995ead, which conflicts with adding driver-specific behavior in atomic_commit_tail(). No functional changes expected on this commit, but just preparation for the upcoming gamma LUT support. Cc: Sean Paul <sean@poorly.run> Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com> --- Changes from v2: * New patch. --- drivers/gpu/drm/rockchip/rockchip_drm_fb.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-)