From 5baf168389ff51aaa7966a375347ccdde640215a Mon Sep 17 00:00:00 2001 From: Yongqiang Sun Date: Wed, 20 Apr 2016 09:48:08 -0400 Subject: [PATCH 1060/1110] drm/amd/dal: Add mininum display clock check, fixed 800x600 issue. Signed-off-by: Yongqiang Sun Acked-by: Harry Wentland Signed-off-by: Alex Deucher --- drivers/gpu/drm/amd/dal/dc/gpu/dce110/display_clock_dce110.c | 5 +++++ drivers/gpu/drm/amd/dal/dc/gpu/dce112/display_clock_dce112.c | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/drivers/gpu/drm/amd/dal/dc/gpu/dce110/display_clock_dce110.c b/drivers/gpu/drm/amd/dal/dc/gpu/dce110/display_clock_dce110.c index 3d0f8e1..e498098 100644 --- a/drivers/gpu/drm/amd/dal/dc/gpu/dce110/display_clock_dce110.c +++ b/drivers/gpu/drm/amd/dal/dc/gpu/dce110/display_clock_dce110.c @@ -786,6 +786,11 @@ static void set_clock( /* Prepare to program display clock*/ memset(&pxl_clk_params, 0, sizeof(pxl_clk_params)); + /* Make sure requested clock isn't lower than minimum threshold*/ + if (requested_clk_khz > 0) + requested_clk_khz = dm_max(requested_clk_khz, + base->min_display_clk_threshold_khz); + pxl_clk_params.target_pixel_clock = requested_clk_khz; pxl_clk_params.pll_id = base->id; diff --git a/drivers/gpu/drm/amd/dal/dc/gpu/dce112/display_clock_dce112.c b/drivers/gpu/drm/amd/dal/dc/gpu/dce112/display_clock_dce112.c index 08a70db..34d1e72 100644 --- a/drivers/gpu/drm/amd/dal/dc/gpu/dce112/display_clock_dce112.c +++ b/drivers/gpu/drm/amd/dal/dc/gpu/dce112/display_clock_dce112.c @@ -772,6 +772,11 @@ static void set_clock( /* Prepare to program display clock*/ memset(&dce_clk_params, 0, sizeof(dce_clk_params)); + /* Make sure requested clock isn't lower than minimum threshold*/ + if (requested_clk_khz > 0) + requested_clk_khz = dm_max(requested_clk_khz, + base->min_display_clk_threshold_khz); + dce_clk_params.target_clock_frequency = requested_clk_khz; dce_clk_params.pll_id = dc->disp_clk_base.id; dce_clk_params.clock_type = DCECLOCK_TYPE_DISPLAY_CLOCK; -- 2.7.4