From: Josip Pavic <josip.pa...@amd.com>

[Why]
The ctx field of dc_transfer_func is not always populated and therefore
isn't reliable.

[How]
Remove dc context from dc_transfer_func

Signed-off-by: Josip Pavic <josip.pa...@amd.com>
Acked-by: Aurabindo Pillai <aurabindo.pil...@amd.com>
---
 drivers/gpu/drm/amd/display/dc/core/dc_stream.c        | 1 -
 drivers/gpu/drm/amd/display/dc/core/dc_surface.c       | 7 +------
 drivers/gpu/drm/amd/display/dc/dc.h                    | 2 --
 drivers/gpu/drm/amd/display/dc/dcn10/dcn10_cm_common.c | 4 ----
 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_cm_common.c | 4 ----
 5 files changed, 1 insertion(+), 17 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c 
b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
index 6fef9078f3d1..d48fd87d3b95 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
@@ -123,7 +123,6 @@ static bool dc_stream_construct(struct dc_stream_state 
*stream,
                return false;
        }
        stream->out_transfer_func->type = TF_TYPE_BYPASS;
-       stream->out_transfer_func->ctx = stream->ctx;
 
        stream->stream_id = stream->ctx->dc_stream_id_count;
        stream->ctx->dc_stream_id_count++;
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_surface.c 
b/drivers/gpu/drm/amd/display/dc/core/dc_surface.c
index ea1229a3e2b2..3d7d27435f15 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_surface.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_surface.c
@@ -48,22 +48,17 @@ static void dc_plane_construct(struct dc_context *ctx, 
struct dc_plane_state *pl
        plane_state->in_transfer_func = dc_create_transfer_func();
        if (plane_state->in_transfer_func != NULL) {
                plane_state->in_transfer_func->type = TF_TYPE_BYPASS;
-               plane_state->in_transfer_func->ctx = ctx;
        }
        plane_state->in_shaper_func = dc_create_transfer_func();
        if (plane_state->in_shaper_func != NULL) {
                plane_state->in_shaper_func->type = TF_TYPE_BYPASS;
-               plane_state->in_shaper_func->ctx = ctx;
        }
 
        plane_state->lut3d_func = dc_create_3dlut_func();
-       if (plane_state->lut3d_func != NULL) {
-               plane_state->lut3d_func->ctx = ctx;
-       }
+
        plane_state->blend_tf = dc_create_transfer_func();
        if (plane_state->blend_tf != NULL) {
                plane_state->blend_tf->type = TF_TYPE_BYPASS;
-               plane_state->blend_tf->ctx = ctx;
        }
 
 }
diff --git a/drivers/gpu/drm/amd/display/dc/dc.h 
b/drivers/gpu/drm/amd/display/dc/dc.h
index 9d7d5dd9e820..d9b22d6a985a 100644
--- a/drivers/gpu/drm/amd/display/dc/dc.h
+++ b/drivers/gpu/drm/amd/display/dc/dc.h
@@ -745,7 +745,6 @@ struct dc_transfer_func {
        enum dc_transfer_func_predefined tf;
        /* FP16 1.0 reference level in nits, default is 80 nits, only for PQ*/
        uint32_t sdr_ref_white_level;
-       struct dc_context *ctx;
        union {
                struct pwl_params pwl;
                struct dc_transfer_func_distributed_points tf_pts;
@@ -772,7 +771,6 @@ struct dc_3dlut {
        struct tetrahedral_params lut_3d;
        struct fixed31_32 hdr_multiplier;
        union dc_3dlut_state state;
-       struct dc_context *ctx;
 };
 /*
  * This structure is filled in by dc_surface_get_status and contains
diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_cm_common.c 
b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_cm_common.c
index 47a39eb9400b..7a00fe525dfb 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_cm_common.c
+++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_cm_common.c
@@ -325,8 +325,6 @@ bool cm_helper_translate_curve_to_hw_format(
        if (output_tf == NULL || lut_params == NULL || output_tf->type == 
TF_TYPE_BYPASS)
                return false;
 
-       PERF_TRACE_CTX(output_tf->ctx);
-
        corner_points = lut_params->corner_points;
        rgb_resulted = lut_params->rgb_resulted;
        hw_points = 0;
@@ -524,8 +522,6 @@ bool cm_helper_translate_curve_to_degamma_hw_format(
        if (output_tf == NULL || lut_params == NULL || output_tf->type == 
TF_TYPE_BYPASS)
                return false;
 
-       PERF_TRACE_CTX(output_tf->ctx);
-
        corner_points = lut_params->corner_points;
        rgb_resulted = lut_params->rgb_resulted;
        hw_points = 0;
diff --git a/drivers/gpu/drm/amd/display/dc/dcn30/dcn30_cm_common.c 
b/drivers/gpu/drm/amd/display/dc/dcn30/dcn30_cm_common.c
index a139a87a1a81..41a1d0e9b7e2 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn30/dcn30_cm_common.c
+++ b/drivers/gpu/drm/amd/display/dc/dcn30/dcn30_cm_common.c
@@ -122,8 +122,6 @@ bool cm3_helper_translate_curve_to_hw_format(
        if (output_tf == NULL || lut_params == NULL || output_tf->type == 
TF_TYPE_BYPASS)
                return false;
 
-       PERF_TRACE_CTX(output_tf->ctx);
-
        corner_points = lut_params->corner_points;
        rgb_resulted = lut_params->rgb_resulted;
        hw_points = 0;
@@ -314,8 +312,6 @@ bool cm3_helper_translate_curve_to_degamma_hw_format(
        if (output_tf == NULL || lut_params == NULL || output_tf->type == 
TF_TYPE_BYPASS)
                return false;
 
-       PERF_TRACE_CTX(output_tf->ctx);
-
        corner_points = lut_params->corner_points;
        rgb_resulted = lut_params->rgb_resulted;
        hw_points = 0;
-- 
2.25.1

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to