Commit 2f0ddd89 authored by Thomas Zimmermann's avatar Thomas Zimmermann

drm/ast: Enable CRTC before planes

An active cursor plane requires a valid display mode. Change the
commit_tail callback, so that it sets up the CRTC's mode before
updating planes.
Signed-off-by: default avatarThomas Zimmermann <tzimmermann@suse.de>
Acked-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20200914072236.19398-5-tzimmermann@suse.de
parent f3901b5f
...@@ -1068,6 +1068,11 @@ static int ast_connector_init(struct drm_device *dev) ...@@ -1068,6 +1068,11 @@ static int ast_connector_init(struct drm_device *dev)
* Mode config * Mode config
*/ */
static const struct drm_mode_config_helper_funcs
ast_mode_config_helper_funcs = {
.atomic_commit_tail = drm_atomic_helper_commit_tail_rpm,
};
static const struct drm_mode_config_funcs ast_mode_config_funcs = { static const struct drm_mode_config_funcs ast_mode_config_funcs = {
.fb_create = drm_gem_fb_create, .fb_create = drm_gem_fb_create,
.mode_valid = drm_vram_helper_mode_valid, .mode_valid = drm_vram_helper_mode_valid,
...@@ -1107,6 +1112,8 @@ int ast_mode_config_init(struct ast_private *ast) ...@@ -1107,6 +1112,8 @@ int ast_mode_config_init(struct ast_private *ast)
dev->mode_config.max_height = 1200; dev->mode_config.max_height = 1200;
} }
dev->mode_config.helper_private = &ast_mode_config_helper_funcs;
memset(&ast->primary_plane, 0, sizeof(ast->primary_plane)); memset(&ast->primary_plane, 0, sizeof(ast->primary_plane));
ret = drm_universal_plane_init(dev, &ast->primary_plane, 0x01, ret = drm_universal_plane_init(dev, &ast->primary_plane, 0x01,
&ast_primary_plane_funcs, &ast_primary_plane_funcs,
......
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