Start shaper tranfer function setup in bypass mode, i.e. tf->type ==
TF_TYPE_BYPASS and let the helper checks set it to a different mode
according to userspace request.

Signed-off-by: Melissa Wen <[email protected]>
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c 
b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c
index 84ff136183ee..2f51009b2978 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c
@@ -1611,10 +1611,11 @@ __set_dm_plane_colorop_shaper(struct drm_plane_state 
*plane_state,
        struct dc_transfer_func *tf = &dc_plane_state->in_shaper_func;
        const struct drm_color_lut32 *shaper_lut;
        struct drm_device *dev = colorop->dev;
-       bool enabled = false;
        u32 shaper_size;
        int i = 0, ret = 0;
 
+       tf->type = TF_TYPE_BYPASS;
+
        /* 1D Curve - SHAPER TF */
        old_colorop = colorop;
        for_each_new_colorop_in_state(state, colorop, new_colorop_state, i) {
@@ -1633,7 +1634,6 @@ __set_dm_plane_colorop_shaper(struct drm_plane_state 
*plane_state,
                ret = __set_output_tf(tf, 0, 0, false);
                if (ret)
                        return ret;
-               enabled = true;
        }
 
        /* 1D LUT - SHAPER LUT */
@@ -1665,13 +1665,9 @@ __set_dm_plane_colorop_shaper(struct drm_plane_state 
*plane_state,
                        ret = __set_output_tf_32(tf, shaper_lut, shaper_size, 
false);
                        if (ret)
                                return ret;
-                       enabled = true;
                }
        }
 
-       if (!enabled)
-               tf->type = TF_TYPE_BYPASS;
-
        return 0;
 }
 
-- 
2.53.0

Reply via email to