Commit 6d822156 authored by Nikola Cornij's avatar Nikola Cornij Committed by Alex Deucher
Browse files

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: default avatarNikola Cornij <nikola.cornij@amd.com>
Reviewed-by: default avatarJoshua Aberback <Joshua.Aberback@amd.com>
Acked-by: default avatarHarry Wentland <harry.wentland@amd.com>
Acked-by: default avatarRodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 1075735e
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -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,
	}
}


+2 −0
Original line number Diff line number Diff line
@@ -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
+1 −0
Original line number Diff line number Diff line
@@ -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 {