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 15:06:39 +0000 (10:06 -0500)
commitc2ffe78b8b1354603a7d5afb719b2a6dfbb582da
tree08b953461a1ab0f2aac9946c2664ae59559edfbf
parent2343e9d2c5a94459b9de92649f1650e36eb79a10
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