Commit c5a4f901 authored by Wenjing Liu's avatar Wenjing Liu Committed by Alex Deucher

drm/amd/display: adjust visual confirm dpp height offset to be 1/240 of v addressable

[why]
For timing with large v addressable visual confirm is just too small. It is difficult
to tell visually which DPP we are using. On the other hand with timing with small
v addressable visual confirm is too large and covers the UI area.

[how]
We calculate visual confirm dpp height offset based on v addressable so it stays
relatively the same height i.e. 1/240 verticle portion of the screen.
Reviewed-by: default avatarJun Lei <jun.lei@amd.com>
Acked-by: default avatarTom Chung <chiahsuan.chung@amd.com>
Signed-off-by: default avatarWenjing Liu <wenjing.liu@amd.com>
Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 460ea898
...@@ -72,7 +72,12 @@ ...@@ -72,7 +72,12 @@
#define VISUAL_CONFIRM_BASE_DEFAULT 3 #define VISUAL_CONFIRM_BASE_DEFAULT 3
#define VISUAL_CONFIRM_BASE_MIN 1 #define VISUAL_CONFIRM_BASE_MIN 1
#define VISUAL_CONFIRM_BASE_MAX 10 #define VISUAL_CONFIRM_BASE_MAX 10
#define VISUAL_CONFIRM_DPP_OFFSET 3 /* we choose 240 because it is a common denominator of common v addressable
* such as 2160, 1440, 1200, 960. So we take 1/240 portion of v addressable as
* the visual confirm dpp offset height. So visual confirm height can stay
* relatively the same independent from timing used.
*/
#define VISUAL_CONFIRM_DPP_OFFSET_DENO 240
#define DC_LOGGER_INIT(logger) #define DC_LOGGER_INIT(logger)
...@@ -1002,7 +1007,8 @@ static void adjust_recout_for_visual_confirm(struct rect *recout, ...@@ -1002,7 +1007,8 @@ static void adjust_recout_for_visual_confirm(struct rect *recout,
if (dc->debug.visual_confirm == VISUAL_CONFIRM_DISABLE) if (dc->debug.visual_confirm == VISUAL_CONFIRM_DISABLE)
return; return;
dpp_offset = pipe_ctx->plane_res.dpp->inst * VISUAL_CONFIRM_DPP_OFFSET; dpp_offset = pipe_ctx->stream->timing.v_addressable / VISUAL_CONFIRM_DPP_OFFSET_DENO;
dpp_offset *= pipe_ctx->plane_res.dpp->inst;
if ((dc->debug.visual_confirm_rect_height >= VISUAL_CONFIRM_BASE_MIN) && if ((dc->debug.visual_confirm_rect_height >= VISUAL_CONFIRM_BASE_MIN) &&
dc->debug.visual_confirm_rect_height <= VISUAL_CONFIRM_BASE_MAX) dc->debug.visual_confirm_rect_height <= VISUAL_CONFIRM_BASE_MAX)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment