drm/amd/display: Change disable backlight ramp change threshold from 0 to maximum...
authorYongqiang Sun <yongqiang.sun@amd.com>
Tue, 27 Mar 2018 14:05:10 +0000 (10:05 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 11 Apr 2018 18:08:08 +0000 (13:08 -0500)
Instead of user set brightness with range of percentage,
HLK test set brightness level with range of normal, this will result in
HLK test case set brightness from 0 to 255, DC set brightness with ramp is 0,
and disabled ramp change which will fail the HLK test.
Fix:
In case of unblank stream and turn on edp, change brightness level in
stream to 0xFFFFFFFF(actural maximum level is 0xFF), use that value as
a flag to recogonize this the case of resume from S3.

Signed-off-by: Yongqiang Sun <yongqiang.sun@amd.com>
Reviewed-by: Eric Yang <eric.yang2@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_link.c
drivers/gpu/drm/amd/display/dc/dce110/dce110_hw_sequencer.c
drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h

index d9efdd926145269b816bc355cb2e6178fb3da124..0cd286f8eaa0200f9259ad84c6ac5194a4a48950 100644 (file)
@@ -1982,7 +1982,7 @@ bool dc_link_set_backlight_level(const struct dc_link *link, uint32_t level,
                return false;
 
        if (stream) {
-               if (stream->bl_pwm_level == 0)
+               if (stream->bl_pwm_level == EDP_BACKLIGHT_RAMP_DISABLE_LEVEL)
                        frame_ramp = 0;
 
                ((struct dc_stream_state *)stream)->bl_pwm_level = level;
index db2d15dfb831beeda465cda80dd510df87f685a6..78bf4fae9e0dd3db93c3f70d9ff98372df21ce3a 100644 (file)
@@ -1036,7 +1036,7 @@ void dce110_unblank_stream(struct pipe_ctx *pipe_ctx,
 
        if (link->local_sink && link->local_sink->sink_signal == SIGNAL_TYPE_EDP) {
                link->dc->hwss.edp_backlight_control(link, true);
-               stream->bl_pwm_level = 0;
+               stream->bl_pwm_level = EDP_BACKLIGHT_RAMP_DISABLE_LEVEL;
        }
 }
 void dce110_blank_stream(struct pipe_ctx *pipe_ctx)
index e764cbad881b757f16c35a41e4218dad5a52bc7c..f54d478ffc5cc0888cd9e864fc49f826aaca7b4d 100644 (file)
@@ -32,6 +32,8 @@
 #include "inc/hw/link_encoder.h"
 #include "core_status.h"
 
+#define EDP_BACKLIGHT_RAMP_DISABLE_LEVEL 0xFFFFFFFF
+
 enum pipe_gating_control {
        PIPE_GATING_CONTROL_DISABLE = 0,
        PIPE_GATING_CONTROL_ENABLE,