diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/0752-drm-amdgpu-Drop-amdgpu_plane.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.19.8/0752-drm-amdgpu-Drop-amdgpu_plane.patch | 183 |
1 files changed, 183 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/0752-drm-amdgpu-Drop-amdgpu_plane.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/0752-drm-amdgpu-Drop-amdgpu_plane.patch new file mode 100644 index 00000000..fd288a5d --- /dev/null +++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/0752-drm-amdgpu-Drop-amdgpu_plane.patch @@ -0,0 +1,183 @@ +From 5cd6525c75833a49d5f1141659e56e1baaf232ac Mon Sep 17 00:00:00 2001 +From: Harry Wentland <harry.wentland@amd.com> +Date: Fri, 5 Oct 2018 11:58:34 -0400 +Subject: [PATCH 0752/2940] drm/amdgpu: Drop amdgpu_plane + +It's unnecessarily duplicating drm_plane_type. + +Signed-off-by: Harry Wentland <harry.wentland@amd.com> +Reviewed-by: Alex Deucher <alexander.deucher@amd.com> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +--- + drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h | 8 +--- + .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 38 +++++++++---------- + 2 files changed, 20 insertions(+), 26 deletions(-) + +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h +index f91a9bdcd63c..1627dd3413c7 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h +@@ -57,7 +57,6 @@ struct amdgpu_hpd; + #define to_amdgpu_connector(x) container_of(x, struct amdgpu_connector, base) + #define to_amdgpu_encoder(x) container_of(x, struct amdgpu_encoder, base) + #define to_amdgpu_framebuffer(x) container_of(x, struct amdgpu_framebuffer, base) +-#define to_amdgpu_plane(x) container_of(x, struct amdgpu_plane, base) + + #define to_dm_plane_state(x) container_of(x, struct dm_plane_state, base); + +@@ -325,7 +324,7 @@ struct amdgpu_mode_info { + struct card_info *atom_card_info; + bool mode_config_initialized; + struct amdgpu_crtc *crtcs[AMDGPU_MAX_CRTCS]; +- struct amdgpu_plane *planes[AMDGPU_MAX_PLANES]; ++ struct drm_plane *planes[AMDGPU_MAX_PLANES]; + struct amdgpu_afmt *afmt[AMDGPU_MAX_AFMT_BLOCKS]; + /* DVI-I properties */ + struct drm_property *coherent_mode_property; +@@ -438,11 +437,6 @@ struct amdgpu_crtc { + struct drm_pending_vblank_event *event; + }; + +-struct amdgpu_plane { +- struct drm_plane base; +- enum drm_plane_type plane_type; +-}; +- + struct amdgpu_encoder_atom_dig { + bool linkb; + /* atom dig */ +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 4f8dcde5dbe7..4372ea9e5aaf 100644 +--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c ++++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +@@ -99,7 +99,7 @@ static void + amdgpu_dm_update_connector_after_detect(struct amdgpu_dm_connector *aconnector); + + static int amdgpu_dm_plane_init(struct amdgpu_display_manager *dm, +- struct amdgpu_plane *aplane, ++ struct drm_plane *plane, + unsigned long possible_crtcs); + static int amdgpu_dm_crtc_init(struct amdgpu_display_manager *dm, + struct drm_plane *plane, +@@ -1640,18 +1640,18 @@ static int initialize_plane(struct amdgpu_display_manager *dm, + struct amdgpu_mode_info *mode_info, + int plane_id) + { +- struct amdgpu_plane *plane; ++ struct drm_plane *plane; + unsigned long possible_crtcs; + int ret = 0; + +- plane = kzalloc(sizeof(struct amdgpu_plane), GFP_KERNEL); ++ plane = kzalloc(sizeof(struct drm_plane), GFP_KERNEL); + mode_info->planes[plane_id] = plane; + + if (!plane) { + DRM_ERROR("KMS: Failed to allocate plane\n"); + return -ENOMEM; + } +- plane->base.type = mode_info->plane_type[plane_id]; ++ plane->type = mode_info->plane_type[plane_id]; + + /* + * HACK: IGT tests expect that each plane can only have +@@ -1742,7 +1742,7 @@ static int amdgpu_dm_initialize_drm_device(struct amdgpu_device *adev) + } + + for (i = 0; i < dm->dc->caps.max_streams; i++) +- if (amdgpu_dm_crtc_init(dm, &mode_info->planes[i]->base, i)) { ++ if (amdgpu_dm_crtc_init(dm, mode_info->planes[i], i)) { + DRM_ERROR("KMS: Failed to initialize crtc\n"); + goto fail; + } +@@ -3557,49 +3557,49 @@ static const u32 cursor_formats[] = { + }; + + static int amdgpu_dm_plane_init(struct amdgpu_display_manager *dm, +- struct amdgpu_plane *aplane, ++ struct drm_plane *plane, + unsigned long possible_crtcs) + { + int res = -EPERM; + +- switch (aplane->base.type) { ++ switch (plane->type) { + case DRM_PLANE_TYPE_PRIMARY: + res = drm_universal_plane_init( + dm->adev->ddev, +- &aplane->base, ++ plane, + possible_crtcs, + &dm_plane_funcs, + rgb_formats, + ARRAY_SIZE(rgb_formats), +- NULL, aplane->base.type, NULL); ++ NULL, plane->type, NULL); + break; + case DRM_PLANE_TYPE_OVERLAY: + res = drm_universal_plane_init( + dm->adev->ddev, +- &aplane->base, ++ plane, + possible_crtcs, + &dm_plane_funcs, + yuv_formats, + ARRAY_SIZE(yuv_formats), +- NULL, aplane->base.type, NULL); ++ NULL, plane->type, NULL); + break; + case DRM_PLANE_TYPE_CURSOR: + res = drm_universal_plane_init( + dm->adev->ddev, +- &aplane->base, ++ plane, + possible_crtcs, + &dm_plane_funcs, + cursor_formats, + ARRAY_SIZE(cursor_formats), +- NULL, aplane->base.type, NULL); ++ NULL, plane->type, NULL); + break; + } + +- drm_plane_helper_add(&aplane->base, &dm_plane_helper_funcs); ++ drm_plane_helper_add(plane, &dm_plane_helper_funcs); + + /* Create (reset) the plane state */ +- if (aplane->base.funcs->reset) +- aplane->base.funcs->reset(&aplane->base); ++ if (plane->funcs->reset) ++ plane->funcs->reset(plane); + + + return res; +@@ -3610,7 +3610,7 @@ static int amdgpu_dm_crtc_init(struct amdgpu_display_manager *dm, + uint32_t crtc_index) + { + struct amdgpu_crtc *acrtc = NULL; +- struct amdgpu_plane *cursor_plane; ++ struct drm_plane *cursor_plane; + + int res = -ENOMEM; + +@@ -3618,7 +3618,7 @@ static int amdgpu_dm_crtc_init(struct amdgpu_display_manager *dm, + if (!cursor_plane) + goto fail; + +- cursor_plane->base.type = DRM_PLANE_TYPE_CURSOR; ++ cursor_plane->type = DRM_PLANE_TYPE_CURSOR; + res = amdgpu_dm_plane_init(dm, cursor_plane, 0); + + acrtc = kzalloc(sizeof(struct amdgpu_crtc), GFP_KERNEL); +@@ -3629,7 +3629,7 @@ static int amdgpu_dm_crtc_init(struct amdgpu_display_manager *dm, + dm->ddev, + &acrtc->base, + plane, +- &cursor_plane->base, ++ cursor_plane, + &amdgpu_dm_crtc_funcs, NULL); + + if (res) +-- +2.17.1 + |