Skip to content

Commit

Permalink
drm/amd/display: fix dcc swath size calculations on dcn1
Browse files Browse the repository at this point in the history
[Why]
Swath sizes are being calculated incorrectly. The horizontal swath size
should be the product of block height, viewport width, and bytes per
element, but the calculation uses viewport height instead of width. The
vertical swath size is similarly incorrectly calculated. The effect of
this is that we report the wrong DCC caps.

[How]
Use viewport width in the horizontal swath size calculation and viewport
height in the vertical swath size calculation.

Signed-off-by: Josip Pavic <Josip.Pavic@amd.com>
Reviewed-by: Aric Cyr <Aric.Cyr@amd.com>
Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
  • Loading branch information
Josip Pavic authored and Alex Deucher committed Mar 5, 2020
1 parent 5ac7fd2 commit a0275df
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubbub.c
Original file line number Diff line number Diff line change
Expand Up @@ -840,8 +840,8 @@ static void hubbub1_det_request_size(

hubbub1_get_blk256_size(&blk256_width, &blk256_height, bpe);

swath_bytes_horz_wc = height * blk256_height * bpe;
swath_bytes_vert_wc = width * blk256_width * bpe;
swath_bytes_horz_wc = width * blk256_height * bpe;
swath_bytes_vert_wc = height * blk256_width * bpe;

*req128_horz_wc = (2 * swath_bytes_horz_wc <= detile_buf_size) ?
false : /* full 256B request */
Expand Down

0 comments on commit a0275df

Please sign in to comment.