diff options
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0816-Revert-drm-amd-display-Clen-unused-interface.patch')
-rw-r--r-- | meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0816-Revert-drm-amd-display-Clen-unused-interface.patch | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0816-Revert-drm-amd-display-Clen-unused-interface.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0816-Revert-drm-amd-display-Clen-unused-interface.patch new file mode 100644 index 00000000..94c7827e --- /dev/null +++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0816-Revert-drm-amd-display-Clen-unused-interface.patch @@ -0,0 +1,80 @@ +From 233f24686104800f610adc29d7807d56354ec61b Mon Sep 17 00:00:00 2001 +From: Xiaojie Yuan <Xiaojie.Yuan@amd.com> +Date: Fri, 26 May 2017 12:43:30 +0800 +Subject: [PATCH 0816/4131] Revert "drm/amd/display: Clen unused interface." + +This reverts commit 570c231ad57aa83e4528269c306a124869b779c5. + +kcl_dm is still a user of dc_flip_surface_addrs() + +Change-Id: I87c4b1e59f464b40206c46f531812c6849deb649 +Signed-off-by: Xiaojie Yuan <Xiaojie.Yuan@amd.com> +Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com> +--- + drivers/gpu/drm/amd/display/dc/core/dc.c | 26 ++++++++++++++++++++++++++ + drivers/gpu/drm/amd/display/dc/dc.h | 12 ++++++++++++ + 2 files changed, 38 insertions(+) + +diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c +index c2c379a..2a465b3 100644 +--- a/drivers/gpu/drm/amd/display/dc/core/dc.c ++++ b/drivers/gpu/drm/amd/display/dc/core/dc.c +@@ -1769,6 +1769,32 @@ const struct audio **dc_get_audios(struct dc *dc) + return (const struct audio **)core_dc->res_pool->audios; + } + ++void dc_flip_surface_addrs( ++ struct dc *dc, ++ const struct dc_surface *const surfaces[], ++ struct dc_flip_addrs flip_addrs[], ++ uint32_t count) ++{ ++ struct core_dc *core_dc = DC_TO_CORE(dc); ++ int i, j; ++ ++ for (i = 0; i < count; i++) { ++ struct core_surface *surface = DC_SURFACE_TO_CORE(surfaces[i]); ++ ++ surface->public.address = flip_addrs[i].address; ++ surface->public.flip_immediate = flip_addrs[i].flip_immediate; ++ ++ for (j = 0; j < core_dc->res_pool->pipe_count; j++) { ++ struct pipe_ctx *pipe_ctx = &core_dc->current_context->res_ctx.pipe_ctx[j]; ++ ++ if (pipe_ctx->surface != surface) ++ continue; ++ ++ core_dc->hwss.update_plane_addr(core_dc, pipe_ctx); ++ } ++ } ++} ++ + enum dc_irq_source dc_interrupt_to_irq_source( + struct dc *dc, + uint32_t src_id, +diff --git a/drivers/gpu/drm/amd/display/dc/dc.h b/drivers/gpu/drm/amd/display/dc/dc.h +index 4605179..52f132a 100644 +--- a/drivers/gpu/drm/amd/display/dc/dc.h ++++ b/drivers/gpu/drm/amd/display/dc/dc.h +@@ -411,6 +411,18 @@ struct dc_flip_addrs { + }; + + /* ++ * Optimized flip address update function. ++ * ++ * After this call: ++ * Surface addresses and flip attributes are programmed. ++ * Surface flip occur at next configured time (h_sync or v_sync flip) ++ */ ++void dc_flip_surface_addrs(struct dc *dc, ++ const struct dc_surface *const surfaces[], ++ struct dc_flip_addrs flip_addrs[], ++ uint32_t count); ++ ++/* + * Set up surface attributes and associate to a stream + * The surfaces parameter is an absolute set of all surface active for the stream. + * If no surfaces are provided, the stream will be blanked; no memory read. +-- +2.7.4 + |