Patch "drm/amd/display: Default HDMI6G support to true. Log VBIOS table error." has been added to the 4.15-stable tree
This is a note to let you know that I've just added the patch titled
drm/amd/display: Default HDMI6G support to true. Log VBIOS table error.
to the 4.15-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
drm-amd-display-default-hdmi6g-support-to-true.-log-vbios-table-error.patch
and it can be found in the queue-4.15 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
caf0a9030d75509f3cacefe466d6d69d26e3dee6Mon Sep 17 00:00:00 2001
From: Harry Wentland <[email protected]>
Date: Tue, 20 Feb 2018 13:36:23 -0500
Subject: drm/amd/display: Default HDMI6G support to true. Log VBIOS table error.
From: Harry Wentland <[email protected]>
commit caf0a9030d75509f3cacefe466d6d69d26e3dee6 upstream.
There have been many reports of Ellesmere and Baffin systems not being able to drive HDMI 4k60 due to the fact that we check the HDMI_6GB_EN bit from VBIOS table. Windows seems to not have this issue.
On some systems we fail to the encoder cap info from VBIOS. In that case we should default to enabling HDMI6G support.
This was tested by dwagner on
https://bugs.freedesktop.org/show_bug.cgi?id=102820
--- drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-)
drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c +13 -3
@@ -683,6 +683,7 @@ void dce110_link_encoder_construct( {struct bp_encoder_cap_info bp_cap_info = {0 };const struct dc_vbios_funcs *bp_funcs = init_data->ctx->dc_bios->funcs; +enum bp_result result =BP_RESULT_OK ; enc110->base.funcs = &dce110_lnk_enc_funcs; enc110->base.ctx = init_data->ctx;
@@ -757,15 +758,24 @@ void dce110_link_encoder_construct( enc110->base.preferred_engine =ENGINE_ID_UNKNOWN ; } +/* default to one to mirror Windows behavior */ + enc110->base.features.flags.bits.HDMI_6GB_EN =1 ; + + result = bp_funcs->get_encoder_cap_info (enc110->base.ctx->dc_bios, + enc110->base.id, &bp_cap_info); +/* Override features with DCE-specific values */ -if (BP_RESULT_OK == bp_funcs->get_encoder_cap_info ( - enc110->base.ctx->dc_bios, enc110->base.id, - &bp_cap_info)) { +if (BP_RESULT_OK == result) { enc110->base.features.flags.bits.IS_HBR2_CAPABLE = bp_cap_info.DP_HBR2_EN; enc110->base.features.flags.bits.IS_HBR3_CAPABLE = bp_cap_info.DP_HBR3_EN; enc110->base.features.flags.bits.HDMI_6GB_EN = bp_cap_info.HDMI_6GB_EN; + }else { +dm_logger_write (enc110->base.ctx->logger,LOG_WARNING , +"%s: Failed to get encoder_cap_info from VBIOS with error code %d!\n" , + __func__, + result); } }
Patches currently in stable-queue which might be from [email protected] are
queue-4.15/drm-amd-display-default-hdmi6g-support-to-true.-log-vbios-table-error.patch queue-4.15/drm-amd-display-check-for-ipp-before-calling-cursor-operations.patch