diff options
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0699-drm-amd-display-Implement-plane-atomic_check.patch')
-rw-r--r-- | meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0699-drm-amd-display-Implement-plane-atomic_check.patch | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0699-drm-amd-display-Implement-plane-atomic_check.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0699-drm-amd-display-Implement-plane-atomic_check.patch new file mode 100644 index 00000000..e0198420 --- /dev/null +++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0699-drm-amd-display-Implement-plane-atomic_check.patch @@ -0,0 +1,49 @@ +From 66ea729d92dcdb5701649ad8dafbe449acb63b47 Mon Sep 17 00:00:00 2001 +From: Andrey Grodzovsky <Andrey.Grodzovsky@amd.com> +Date: Wed, 26 Jul 2017 15:52:28 -0400 +Subject: [PATCH 0699/4131] drm/amd/display: Implement plane atomic_check. + +Use per surface validation hook. + +Signed-off-by: Andrey Grodzovsky <Andrey.Grodzovsky@amd.com> +Reviewed-by: Tony Cheng <Tony.Cheng@amd.com> +Acked-by: Harry Wentland <Harry.Wentland@amd.com> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +--- + drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + +diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +index ad8dc2c..8f3038f 100644 +--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c ++++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +@@ -3291,9 +3291,26 @@ int dm_create_validation_set_for_connector(struct drm_connector *connector, + return MODE_OK; + } + ++int dm_plane_atomic_check(struct drm_plane *plane, ++ struct drm_plane_state *state) ++{ ++ struct amdgpu_device *adev = plane->dev->dev_private; ++ struct dc *dc = adev->dm.dc; ++ struct dm_plane_state *dm_plane_state = to_dm_plane_state(state); ++ ++ if (!dm_plane_state->surface) ++ return true; ++ ++ if (dc_validate_surface(dc, dm_plane_state->surface)) ++ return 0; ++ ++ return -EINVAL; ++} ++ + static const struct drm_plane_helper_funcs dm_plane_helper_funcs = { + .prepare_fb = dm_plane_helper_prepare_fb, + .cleanup_fb = dm_plane_helper_cleanup_fb, ++ .atomic_check = dm_plane_atomic_check, + }; + + /* +-- +2.7.4 + |