drm/amd/display: Prevent bandwidth overflow
authorChris Park <Chris.Park@amd.com>
Wed, 25 Nov 2020 01:11:25 +0000 (20:11 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 9 Dec 2020 04:04:33 +0000 (23:04 -0500)
commit80089dd8410f356d5104496d5ab71a66a4f4646b
treeec19adf67d6ce063758f2423aa5c328f7d5df270
parent3083a9845e1258ee8c2126d37f7b41897fad02e5
drm/amd/display: Prevent bandwidth overflow

[Why]
At very high pixel clock, bandwidth calculation exceeds 32 bit size
and overflow value. This causes the resulting selection of link rate
to be inaccurate.

[How]
Change order of operation and use fixed point to deal with integer
accuracy. Also address bug found when forcing link rate.

Signed-off-by: Chris Park <Chris.Park@amd.com>
Reviewed-by: Wenjing Liu <Wenjing.Liu@amd.com>
Acked-by: Eryk Brol <eryk.brol@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc_link.c