aboutsummaryrefslogtreecommitdiffstats
path: root/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0420-drm-amd-display-Move-output-transfer-function-to-str.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0420-drm-amd-display-Move-output-transfer-function-to-str.patch')
-rw-r--r--meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0420-drm-amd-display-Move-output-transfer-function-to-str.patch201
1 files changed, 0 insertions, 201 deletions
diff --git a/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0420-drm-amd-display-Move-output-transfer-function-to-str.patch b/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0420-drm-amd-display-Move-output-transfer-function-to-str.patch
deleted file mode 100644
index 58e45c5d..00000000
--- a/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/0420-drm-amd-display-Move-output-transfer-function-to-str.patch
+++ /dev/null
@@ -1,201 +0,0 @@
-From cc8fc45003e17e5471d2d76e30c52d3c73bb395c Mon Sep 17 00:00:00 2001
-From: Amy Zhang <Amy.Zhang@amd.com>
-Date: Tue, 9 May 2017 14:45:54 -0400
-Subject: [PATCH 0420/4131] drm/amd/display: Move output transfer function to
- stream updates
-
-Signed-off-by: Amy Zhang <Amy.Zhang@amd.com>
-Reviewed-by: Anthony Koo <Anthony.Koo@amd.com>
-Acked-by: Harry Wentland <Harry.Wentland@amd.com>
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
----
- drivers/gpu/drm/amd/display/dc/core/dc.c | 46 ++++++++++++++--------
- drivers/gpu/drm/amd/display/dc/dc.h | 14 +++----
- .../amd/display/dc/dce110/dce110_hw_sequencer.c | 1 -
- .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 4 +-
- drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h | 1 -
- 5 files changed, 37 insertions(+), 29 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c
-index 3c25543..1e6952bde 100644
---- a/drivers/gpu/drm/amd/display/dc/core/dc.c
-+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
-@@ -201,11 +201,10 @@ static bool stream_get_crtc_position(struct dc *dc,
- return ret;
- }
-
--static bool set_gamut_remap(struct dc *dc,
-- const struct dc_stream **stream, int num_streams)
-+static bool set_gamut_remap(struct dc *dc, const struct dc_stream *stream)
- {
- struct core_dc *core_dc = DC_TO_CORE(dc);
-- struct core_stream *core_stream = DC_STREAM_TO_CORE(stream[0]);
-+ struct core_stream *core_stream = DC_STREAM_TO_CORE(stream);
- int i = 0;
- bool ret = false;
- struct pipe_ctx *pipes;
-@@ -1182,7 +1181,6 @@ static enum surface_update_type det_surface_update(
- overall_type = type;
-
- if (u->in_transfer_func ||
-- u->out_transfer_func ||
- u->hdr_static_metadata) {
- if (overall_type < UPDATE_TYPE_MED)
- overall_type = UPDATE_TYPE_MED;
-@@ -1279,8 +1277,28 @@ void dc_update_surfaces_and_stream(struct dc *dc,
-
- /* update current stream with the new updates */
- if (stream_update) {
-- stream->public.src = stream_update->src;
-- stream->public.dst = stream_update->dst;
-+ if ((stream_update->src.height != 0) &&
-+ (stream_update->src.width != 0))
-+ stream->public.src = stream_update->src;
-+
-+ if ((stream_update->dst.height != 0) &&
-+ (stream_update->dst.width != 0))
-+ stream->public.dst = stream_update->dst;
-+
-+ if (stream_update->out_transfer_func &&
-+ stream_update->out_transfer_func !=
-+ dc_stream->out_transfer_func) {
-+ if (stream_update->out_transfer_func->type !=
-+ TF_TYPE_UNKNOWN) {
-+ if (dc_stream->out_transfer_func != NULL)
-+ dc_transfer_func_release
-+ (dc_stream->out_transfer_func);
-+ dc_transfer_func_retain(stream_update->
-+ out_transfer_func);
-+ stream->public.out_transfer_func =
-+ stream_update->out_transfer_func;
-+ }
-+ }
- }
-
- /* save update parameters into surface */
-@@ -1361,13 +1379,6 @@ void dc_update_surfaces_and_stream(struct dc *dc,
- srf_updates[i].in_transfer_func;
- }
-
-- if (srf_updates[i].out_transfer_func &&
-- srf_updates[i].out_transfer_func != dc_stream->out_transfer_func) {
-- if (dc_stream->out_transfer_func != NULL)
-- dc_transfer_func_release(dc_stream->out_transfer_func);
-- dc_transfer_func_retain(srf_updates[i].out_transfer_func);
-- stream->public.out_transfer_func = srf_updates[i].out_transfer_func;
-- }
- if (srf_updates[i].hdr_static_metadata)
- surface->public.hdr_static_ctx =
- *(srf_updates[i].hdr_static_metadata);
-@@ -1436,11 +1447,12 @@ void dc_update_surfaces_and_stream(struct dc *dc,
- pipe_ctx, pipe_ctx->surface);
-
- if (is_new_pipe_surface ||
-- srf_updates[i].out_transfer_func)
-+ (stream_update != NULL &&
-+ stream_update->out_transfer_func !=
-+ NULL)) {
- core_dc->hwss.set_output_transfer_func(
-- pipe_ctx,
-- pipe_ctx->surface,
-- pipe_ctx->stream);
-+ pipe_ctx, pipe_ctx->stream);
-+ }
-
- if (srf_updates[i].hdr_static_metadata) {
- resource_build_info_frame(pipe_ctx);
-diff --git a/drivers/gpu/drm/amd/display/dc/dc.h b/drivers/gpu/drm/amd/display/dc/dc.h
-index c7e503a..7dd145b 100644
---- a/drivers/gpu/drm/amd/display/dc/dc.h
-+++ b/drivers/gpu/drm/amd/display/dc/dc.h
-@@ -122,7 +122,7 @@ struct dc_stream_funcs {
- const struct rect *dst);
-
- bool (*set_gamut_remap)(struct dc *dc,
-- const struct dc_stream **stream, int num_streams);
-+ const struct dc_stream *stream);
-
- void (*set_static_screen_events)(struct dc *dc,
- const struct dc_stream **stream,
-@@ -265,7 +265,8 @@ struct dc_hdr_static_metadata {
- enum dc_transfer_func_type {
- TF_TYPE_PREDEFINED,
- TF_TYPE_DISTRIBUTED_POINTS,
-- TF_TYPE_BYPASS
-+ TF_TYPE_BYPASS,
-+ TF_TYPE_UNKNOWN
- };
-
- struct dc_transfer_func_distributed_points {
-@@ -349,11 +350,8 @@ struct dc_surface_update {
- */
- /* gamma TO BE REMOVED */
- struct dc_gamma *gamma;
-- struct dc_hdr_static_metadata *hdr_static_metadata;
- struct dc_transfer_func *in_transfer_func;
-- struct dc_transfer_func *out_transfer_func;
--
--
-+ struct dc_hdr_static_metadata *hdr_static_metadata;
- };
- /*
- * This structure is filled in by dc_surface_get_status and contains
-@@ -473,11 +471,9 @@ struct dc_stream {
- };
-
- struct dc_stream_update {
--
- struct rect src;
--
- struct rect dst;
--
-+ struct dc_transfer_func *out_transfer_func;
- };
-
-
-diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c
-index 150c8a4..8a66300 100644
---- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c
-+++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c
-@@ -631,7 +631,6 @@ static bool dce110_translate_regamma_to_hw_format(const struct dc_transfer_func
-
- static bool dce110_set_output_transfer_func(
- struct pipe_ctx *pipe_ctx,
-- const struct core_surface *surface, /* Surface - To be removed */
- const struct core_stream *stream)
- {
- struct output_pixel_processor *opp = pipe_ctx->opp;
-diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c
-index f5638ad..6cb3924 100644
---- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c
-+++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c
-@@ -1301,11 +1301,13 @@ static bool dcn10_translate_regamma_to_hw_format(const struct dc_transfer_func
-
- static bool dcn10_set_output_transfer_func(
- struct pipe_ctx *pipe_ctx,
-- const struct core_surface *surface,
- const struct core_stream *stream)
- {
- struct output_pixel_processor *opp = pipe_ctx->opp;
-
-+ if (opp == NULL)
-+ return false;
-+
- opp->regamma_params.hw_points_num = GAMMA_HW_POINTS_NUM;
-
- if (stream->public.out_transfer_func &&
-diff --git a/drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h b/drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h
-index afdb860..b53e120 100644
---- a/drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h
-+++ b/drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h
-@@ -80,7 +80,6 @@ struct hw_sequencer_funcs {
-
- bool (*set_output_transfer_func)(
- struct pipe_ctx *pipe_ctx,
-- const struct core_surface *surface,
- const struct core_stream *stream);
-
- void (*power_down)(struct core_dc *dc);
---
-2.7.4
-