aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.19.8/2075-drm-amd-display-fix-gamma-logic-breaking-driver-unlo.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/2075-drm-amd-display-fix-gamma-logic-breaking-driver-unlo.patch')
-rw-r--r--common/recipes-kernel/linux/linux-yocto-4.19.8/2075-drm-amd-display-fix-gamma-logic-breaking-driver-unlo.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/2075-drm-amd-display-fix-gamma-logic-breaking-driver-unlo.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/2075-drm-amd-display-fix-gamma-logic-breaking-driver-unlo.patch
new file mode 100644
index 00000000..2b4d8495
--- /dev/null
+++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/2075-drm-amd-display-fix-gamma-logic-breaking-driver-unlo.patch
@@ -0,0 +1,41 @@
+From bf01c164aaae9cab2005222201aeb58cb123433c Mon Sep 17 00:00:00 2001
+From: Krunoslav Kovac <Krunoslav.Kovac@amd.com>
+Date: Mon, 27 May 2019 10:57:24 -0400
+Subject: [PATCH 2075/2940] drm/amd/display: fix gamma logic breaking driver
+ unload
+
+Using this logic breaks driver unload, this is a temporary fix
+a followup patch will properly fix this
+
+Signed-off-by: Krunoslav Kovac <Krunoslav.Kovac@amd.com>
+Reviewed-by: Aric Cyr <Aric.Cyr@amd.com>
+Acked-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
+---
+ drivers/gpu/drm/amd/display/modules/color/color_gamma.c | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/display/modules/color/color_gamma.c b/drivers/gpu/drm/amd/display/modules/color/color_gamma.c
+index 89a65e1d8317..8601d371776e 100644
+--- a/drivers/gpu/drm/amd/display/modules/color/color_gamma.c
++++ b/drivers/gpu/drm/amd/display/modules/color/color_gamma.c
+@@ -1569,15 +1569,13 @@ bool mod_color_calculate_regamma_params(struct dc_transfer_func *output_tf,
+ output_tf->tf == TRANSFER_FUNCTION_SRGB) {
+ if (ramp == NULL)
+ return true;
+- if ((ramp->is_identity && ramp->type != GAMMA_CS_TFM_1D) ||
+- (!mapUserRamp && ramp->type == GAMMA_RGB_256))
++ if (ramp->is_identity || (!mapUserRamp && ramp->type == GAMMA_RGB_256))
+ return true;
+ }
+
+ output_tf->type = TF_TYPE_DISTRIBUTED_POINTS;
+
+- if (ramp && ramp->type != GAMMA_CS_TFM_1D &&
+- (mapUserRamp || ramp->type != GAMMA_RGB_256)) {
++ if (ramp && (mapUserRamp || ramp->type != GAMMA_RGB_256)) {
+ rgb_user = kvcalloc(ramp->num_entries + _EXTRA_POINTS,
+ sizeof(*rgb_user),
+ GFP_KERNEL);
+--
+2.17.1
+