From e3e12f52b214121840b44c91de5b3e5af5d3eb84 Mon Sep 17 00:00:00 2001 From: hc <hc@nodka.com> Date: Mon, 06 Nov 2023 03:04:41 +0000 Subject: [PATCH] rk3568 rt init --- kernel/drivers/gpu/drm/rockchip/rockchip_drm_fb.c | 27 ++++++++++++++++++++++----- 1 files changed, 22 insertions(+), 5 deletions(-) diff --git a/kernel/drivers/gpu/drm/rockchip/rockchip_drm_fb.c b/kernel/drivers/gpu/drm/rockchip/rockchip_drm_fb.c index c653900..5563d5e 100644 --- a/kernel/drivers/gpu/drm/rockchip/rockchip_drm_fb.c +++ b/kernel/drivers/gpu/drm/rockchip/rockchip_drm_fb.c @@ -114,8 +114,6 @@ { struct rockchip_drm_fb *rockchip_fb; struct rockchip_gem_object *rk_obj; - struct rockchip_drm_private *private = dev->dev_private; - struct drm_fb_helper *fb_helper = private->fbdev_helper; int ret = 0; int i; @@ -141,9 +139,6 @@ rk_obj = to_rockchip_obj(obj[i]); rockchip_fb->dma_addr[i] = rk_obj->dma_addr; rockchip_fb->kvaddr[i] = rk_obj->kvaddr; - private->fbdev_bo = &rk_obj->base; - if (fb_helper && fb_helper->fbdev && rk_obj->kvaddr) - fb_helper->fbdev->screen_base = rk_obj->kvaddr; } #ifndef MODULE } else if (logo) { @@ -366,6 +361,24 @@ } } +static void drm_atomic_helper_connector_commit(struct drm_device *dev, + struct drm_atomic_state *old_state) +{ + struct drm_connector *connector; + struct drm_connector_state *new_conn_state; + int i; + + for_each_new_connector_in_state(old_state, connector, new_conn_state, i) { + const struct drm_connector_helper_funcs *funcs; + + funcs = connector->helper_private; + if (!funcs->atomic_commit) + continue; + + funcs->atomic_commit(connector, new_conn_state); + } +} + static void rockchip_atomic_helper_commit_tail_rpm(struct drm_atomic_state *old_state) { @@ -381,6 +394,8 @@ DRM_PLANE_COMMIT_ACTIVE_ONLY); rockchip_drm_psr_inhibit_put_state(old_state); + + drm_atomic_helper_connector_commit(dev, old_state); drm_atomic_helper_commit_hw_done(old_state); @@ -445,6 +460,8 @@ rockchip_drm_psr_inhibit_put_state(state); + drm_atomic_helper_connector_commit(dev, state); + drm_atomic_helper_commit_hw_done(state); rockchip_drm_atomic_helper_wait_for_vblanks(dev, state); -- Gitblit v1.6.2