drm/amd/display: make variable latency into a regkey option
authorDmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>
Wed, 21 Jun 2017 13:35:35 +0000 (09:35 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 26 Sep 2017 22:08:10 +0000 (18:08 -0400)
Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>
Reviewed-by: Charlene Liu <Charlene.Liu@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/calcs/dcn_calcs.c
drivers/gpu/drm/amd/display/dc/dc.h

index 9cb08365e2b680824db93ee4aafe4b90897cc32e..3ec702fecfd12a74daac47a672e85bfaf933049f 100644 (file)
@@ -906,11 +906,16 @@ bool dcn_validate_bandwidth(
        scaler_settings_calculation(v);
        mode_support_and_system_configuration(v);
 
-       if (v->voltage_level == 0) {
+       if (v->voltage_level == 0 &&
+                       (dc->public.debug.sr_exit_time_dpm0_ns
+                               || dc->public.debug.sr_enter_plus_exit_time_dpm0_ns)) {
                struct core_dc *dc_core = DC_TO_CORE(&dc->public);
 
-               v->sr_enter_plus_exit_time = 9.466f;
-               v->sr_exit_time = 7.849f;
+               if (dc->public.debug.sr_enter_plus_exit_time_dpm0_ns)
+                       v->sr_enter_plus_exit_time =
+                               dc->public.debug.sr_enter_plus_exit_time_dpm0_ns / 1000.0f;
+               if (dc->public.debug.sr_exit_time_dpm0_ns)
+                       v->sr_exit_time =  dc->public.debug.sr_exit_time_dpm0_ns / 1000.0f;
                dc_core->dml.soc.sr_enter_plus_exit_time_us = v->sr_enter_plus_exit_time;
                dc_core->dml.soc.sr_exit_time_us = v->sr_exit_time;
                mode_support_and_system_configuration(v);
index 62493c4a47d1516b78d783bf6b68eef0ce804d55..cb70b6d8be10b1cef1ad6001f7393796607f5cc7 100644 (file)
@@ -171,6 +171,8 @@ struct dc_debug {
        bool disable_pplib_wm_range;
        bool use_dml_wm;
        bool disable_pipe_split;
+       int sr_exit_time_dpm0_ns;
+       int sr_enter_plus_exit_time_dpm0_ns;
        int sr_exit_time_ns;
        int sr_enter_plus_exit_time_ns;
        int urgent_latency_ns;