Commit f49cfa27 authored by hersen wu's avatar hersen wu Committed by Alex Deucher
Browse files

drm/amd/display: flicking observed while installing driver on Navi10 CF



[WHY] value of dchub_ref_clock is decided by dchubbub global timer
settings which is programmed by vbios command table disp_init.
for multi-GPU case, vbios is posted only for primary GPU. without
vbios posted for the secondary GPU, value of dchub_ref_clock is not
set properly. this value will affect dcn bandwidth calcuation and
cause underflow. user will see screen flicking during driver
installation for dual GPU case.

[HOW] dc init_hw always call vbios command table disp_init to
make sure dchubbub global timer is configured and enable.

Signed-off-by: default avatarhersen wu <hersenxs.wu@amd.com>
Reviewed-by: default avatarJun Lei <Jun.Lei@amd.com>
Acked-by: default avatarBhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 9a7bfcb6
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -172,6 +172,7 @@ struct resource_pool *dc_create_resource_pool(struct dc *dc,
	default:
		break;
	}

	if (res_pool != NULL) {
		if (dc->ctx->dc_bios->fw_info_valid) {
			res_pool->ref_clocks.xtalin_clock_inKhz =
+27 −27
Original line number Diff line number Diff line
@@ -1209,7 +1209,9 @@ static void dcn10_init_hw(struct dc *dc)
		return;
	}

	if (!dcb->funcs->is_accelerated_mode(dcb)) {
	if (!dcb->funcs->is_accelerated_mode(dcb))
		dc->hwss.disable_vga(dc->hwseq);

	dc->hwss.bios_golden_init(dc);
	if (dc->ctx->dc_bios->fw_info_valid) {
		res_pool->ref_clocks.xtalin_clock_inKhz =
@@ -1235,8 +1237,6 @@ static void dcn10_init_hw(struct dc *dc)
		}
	} else
		ASSERT_CRITICAL(false);
		dc->hwss.disable_vga(dc->hwseq);
	}

	for (i = 0; i < dc->link_count; i++) {
		/* Power up AND update implementation according to the