drm/amd/display: Disable secondary link for certain monitors

[why]
If the specific monitor supports DSC, the secondary link should be
disabled, and the other way around, too: if either that monitor or
our ASIC doesn't support DSC, the secodary link should be enabled.

[how]
Add a monitor patch and disable secondary link if that monitor
is detected and if ASIC supports DSC, or otherwise enable secondary
link.

Signed-off-by: Nikola Cornij <nikola.cornij@amd.com>
Reviewed-by: Joshua Aberback <Joshua.Aberback@amd.com>
Acked-by: Harry Wentland <harry.wentland@amd.com>
Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Nikola Cornij 2019-12-09 18:54:26 -05:00 коммит произвёл Alex Deucher
Родитель 1075735ecc
Коммит 6d822156d0
3 изменённых файлов: 10 добавлений и 3 удалений

Просмотреть файл

@ -2066,6 +2066,13 @@ void dc_resource_state_construct(
dst_ctx->clk_mgr = dc->clk_mgr;
}
bool dc_resource_is_dsc_encoding_supported(const struct dc *dc)
{
return dc->res_pool->res_cap->num_dsc > 0;
}
/**
* dc_validate_global_state() - Determine if HW can support a given state
* Checks HW resource availability and bandwidth requirement.
@ -2897,6 +2904,3 @@ void get_audio_check(struct audio_info *aud_modes,
}
}

Просмотреть файл

@ -910,6 +910,8 @@ void dc_resource_state_copy_construct_current(
void dc_resource_state_destruct(struct dc_state *context);
bool dc_resource_is_dsc_encoding_supported(const struct dc *dc);
/*
* TODO update to make it about validation sets
* Set up streams and links associated to drive sinks

Просмотреть файл

@ -229,6 +229,7 @@ struct dc_panel_patch {
unsigned int extra_t12_ms;
unsigned int extra_delay_backlight_off;
unsigned int extra_t7_ms;
unsigned int manage_secondary_link;
};
struct dc_edid_caps {