Commit ffccfdba authored by Samson Tam's avatar Samson Tam Committed by Alex Deucher
Browse files

drm/amd/display: Add missing ODM 2:1 policy logic



Phantom pipes must use the same configuration used in main pipes. This
commit add this check.

Reviewed-by: default avatarRodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Acked-by: default avatarAlex Hung <alex.hung@amd.com>
Signed-off-by: default avatarSamson Tam <Samson.Tam@amd.com>
Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 493af96d
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -1269,7 +1269,6 @@ static void get_pixel_clock_parameters(
		pixel_clk_params->requested_pix_clk_100hz /= 4;
	else if (optc2_is_two_pixels_per_containter(&stream->timing) || opp_cnt == 2)
		pixel_clk_params->requested_pix_clk_100hz /= 2;

	else if (hws->funcs.is_dp_dig_pixel_rate_div_policy) {
		if (hws->funcs.is_dp_dig_pixel_rate_div_policy(pipe_ctx))
			pixel_clk_params->requested_pix_clk_100hz /= 2;
+6 −1
Original line number Diff line number Diff line
@@ -1084,8 +1084,13 @@ unsigned int dcn32_calculate_dccg_k1_k2_values(struct pipe_ctx *pipe_ctx, unsign
	struct dc_stream_state *stream = pipe_ctx->stream;
	unsigned int odm_combine_factor = 0;
	struct dc *dc = pipe_ctx->stream->ctx->dc;
	bool two_pix_per_container = optc2_is_two_pixels_per_containter(&stream->timing);
	bool two_pix_per_container = false;

	// For phantom pipes, use the same programming as the main pipes
	if (pipe_ctx->stream->mall_stream_config.type == SUBVP_PHANTOM) {
		stream = pipe_ctx->stream->mall_stream_config.paired_stream;
	}
	two_pix_per_container = optc2_is_two_pixels_per_containter(&stream->timing);
	odm_combine_factor = get_odm_config(pipe_ctx, NULL);

	if (is_dp_128b_132b_signal(pipe_ctx)) {