From: Jun Lei Date: Wed, 3 Jul 2019 20:52:38 +0000 (-0400) Subject: drm/amd/display: populate last calculated bb state with max clocks X-Git-Tag: v5.4-rc1~32^2~19^2~241 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6da16270ee026a0397a67f5e2b4661b6dfa45afb;p=platform%2Fkernel%2Flinux-rpi.git drm/amd/display: populate last calculated bb state with max clocks [why] update_bounding_box calculates intermediate bb states based on clock relationship however, the last state doesn't need to maintain a minimum relationship, but should actually contain maximum of every clock. otherwise maximum clocks are not usable [how] once the calculated bb is built, override the last state with max values Signed-off-by: Jun Lei Reviewed-by: Aric Cyr Acked-by: Leo Li Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c b/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c index 20295f6..346a9b9 100644 --- a/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c +++ b/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c @@ -2751,6 +2751,10 @@ static void update_bounding_box(struct dc *dc, struct _vcs_dpi_soc_bounding_box_ num_calculated_states++; } + calculated_states[num_calculated_states - 1].socclk_mhz = max_clocks->socClockInKhz / 1000; + calculated_states[num_calculated_states - 1].fabricclk_mhz = max_clocks->socClockInKhz / 1000; + calculated_states[num_calculated_states - 1].dcfclk_mhz = max_clocks->dcfClockInKhz / 1000; + memcpy(bb->clock_limits, calculated_states, sizeof(bb->clock_limits)); bb->num_states = num_calculated_states;