From: Yogesh Mohan Marimuthu Date: Fri, 2 Aug 2019 05:22:49 +0000 (+0530) Subject: drm/amd/display: fix trigger not generated for freesync X-Git-Tag: v5.4-rc1~106^2~7^2~17 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1e7f100ce8c0640634b794604880d9204480c9f1;p=thirdparty%2Flinux.git drm/amd/display: fix trigger not generated for freesync [Why] In newer hardware MANUAL_FLOW_CONTROL is not a trigger bit. Due to this front porch is fixed and in these hardware freesync does not work. [How] Change the programming to generate a pulse so that the event will be triggered, front porch will be cut short and freesync will work. Signed-off-by: Yogesh Mohan Marimuthu Reviewed-by: Anthony Koo Acked-by: Bhawanpreet Lakha Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_optc.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_optc.c index e5e5be63032b8..e98e6bab48088 100644 --- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_optc.c +++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_optc.c @@ -825,6 +825,9 @@ void optc1_program_manual_trigger(struct timing_generator *optc) REG_SET(OTG_MANUAL_FLOW_CONTROL, 0, MANUAL_FLOW_CONTROL, 1); + + REG_SET(OTG_MANUAL_FLOW_CONTROL, 0, + MANUAL_FLOW_CONTROL, 0); }