diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.14.71/0361-drm-amd-display-remove-unnecessary-allocation-for-re.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.14.71/0361-drm-amd-display-remove-unnecessary-allocation-for-re.patch | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.14.71/0361-drm-amd-display-remove-unnecessary-allocation-for-re.patch b/common/recipes-kernel/linux/linux-yocto-4.14.71/0361-drm-amd-display-remove-unnecessary-allocation-for-re.patch new file mode 100644 index 00000000..ea1c92fb --- /dev/null +++ b/common/recipes-kernel/linux/linux-yocto-4.14.71/0361-drm-amd-display-remove-unnecessary-allocation-for-re.patch @@ -0,0 +1,100 @@ +From 4bf9900c766159734c50478d50f5fd62f1937334 Mon Sep 17 00:00:00 2001 +From: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com> +Date: Tue, 18 Apr 2017 16:51:39 -0400 +Subject: [PATCH 0361/4131] drm/amd/display: remove unnecessary allocation for + regamma_params inside opp + +Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com> +Reviewed-by: Harry Wentland <Harry.Wentland@amd.com> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +--- + drivers/gpu/drm/amd/display/dc/dce/dce_opp.c | 10 +--------- + drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c | 6 +++--- + drivers/gpu/drm/amd/display/dc/dce110/dce110_opp_v.c | 4 ---- + drivers/gpu/drm/amd/display/dc/inc/hw/opp.h | 2 +- + 4 files changed, 5 insertions(+), 17 deletions(-) + +diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_opp.c b/drivers/gpu/drm/amd/display/dc/dce/dce_opp.c +index 121ccbb..f716a9e 100644 +--- a/drivers/gpu/drm/amd/display/dc/dce/dce_opp.c ++++ b/drivers/gpu/drm/amd/display/dc/dce/dce_opp.c +@@ -987,10 +987,6 @@ bool dce110_opp_construct(struct dce110_opp *opp110, + + opp110->base.inst = inst; + +- opp110->base.regamma_params = dm_alloc(sizeof(struct pwl_params)); +- if (opp110->base.regamma_params == NULL) +- return false; +- + opp110->regs = regs; + opp110->opp_shift = opp_shift; + opp110->opp_mask = opp_mask; +@@ -1000,12 +996,8 @@ bool dce110_opp_construct(struct dce110_opp *opp110, + + void dce110_opp_destroy(struct output_pixel_processor **opp) + { +- if (*opp) { +- if ((*opp)->regamma_params) +- dm_free((*opp)->regamma_params); +- (*opp)->regamma_params = NULL; ++ if (*opp) + dm_free(FROM_DCE11_OPP(*opp)); +- } + *opp = NULL; + } + +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 2fbf6dd..6b249f5 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 +@@ -637,7 +637,7 @@ static bool dce110_set_output_transfer_func( + struct output_pixel_processor *opp = pipe_ctx->opp; + + opp->funcs->opp_power_on_regamma_lut(opp, true); +- opp->regamma_params->hw_points_num = GAMMA_HW_POINTS_NUM; ++ opp->regamma_params.hw_points_num = GAMMA_HW_POINTS_NUM; + + if (stream->public.out_transfer_func && + stream->public.out_transfer_func->type == +@@ -646,8 +646,8 @@ static bool dce110_set_output_transfer_func( + TRANSFER_FUNCTION_SRGB) { + opp->funcs->opp_set_regamma_mode(opp, OPP_REGAMMA_SRGB); + } else if (dce110_translate_regamma_to_hw_format( +- stream->public.out_transfer_func, opp->regamma_params)) { +- opp->funcs->opp_program_regamma_pwl(opp, opp->regamma_params); ++ stream->public.out_transfer_func, &opp->regamma_params)) { ++ opp->funcs->opp_program_regamma_pwl(opp, &opp->regamma_params); + opp->funcs->opp_set_regamma_mode(opp, OPP_REGAMMA_USER); + } else { + opp->funcs->opp_set_regamma_mode(opp, OPP_REGAMMA_BYPASS); +diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_opp_v.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_opp_v.c +index 95b3d2e..6f8b414 100644 +--- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_opp_v.c ++++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_opp_v.c +@@ -56,10 +56,6 @@ bool dce110_opp_v_construct(struct dce110_opp *opp110, + + opp110->base.ctx = ctx; + +- opp110->base.regamma_params = dm_alloc(sizeof(struct pwl_params)); +- if (opp110->base.regamma_params == NULL) +- return false; +- + return true; + } + +diff --git a/drivers/gpu/drm/amd/display/dc/inc/hw/opp.h b/drivers/gpu/drm/amd/display/dc/inc/hw/opp.h +index 521bd21e..92c99c3 100644 +--- a/drivers/gpu/drm/amd/display/dc/inc/hw/opp.h ++++ b/drivers/gpu/drm/amd/display/dc/inc/hw/opp.h +@@ -203,7 +203,7 @@ enum opp_regamma { + struct output_pixel_processor { + struct dc_context *ctx; + uint32_t inst; +- struct pwl_params *regamma_params; ++ struct pwl_params regamma_params; + const struct opp_funcs *funcs; + }; + +-- +2.7.4 + |