msm: mdss: hdmi: adjust HDMI DDC speed configuration

HDMI 2.0 compliance E-DDC test requires the DDC
signal timings to meet a minimum threshold to pass
the compliance test. Current DDC settings were not
matching the requirement.

Adjust the DDC settings to meet the threshold and
also make sure to leave the remaining bits of DDC
speed register untouched.

Change-Id: I9a33ba38baa8be94dee5447e79ad0a3a2a0bc8be
Signed-off-by: Narender Ankam <nankam@codeaurora.org>
This commit is contained in:
Narender Ankam 2019-07-31 13:42:25 +05:30
parent d6bf038c87
commit 01e259a185

View file

@ -1,4 +1,4 @@
/* Copyright (c) 2010-2017, The Linux Foundation. All rights reserved.
/* Copyright (c) 2010-2017, 2019, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@ -957,13 +957,17 @@ error:
void hdmi_ddc_config(struct hdmi_tx_ddc_ctrl *ddc_ctrl)
{
u32 ddc_speed;
if (!ddc_ctrl || !ddc_ctrl->io) {
pr_err("invalid input\n");
return;
}
/* Configure Pre-Scale multiplier & Threshold */
DSS_REG_W_ND(ddc_ctrl->io, HDMI_DDC_SPEED, (10 << 16) | (2 << 0));
ddc_speed = DSS_REG_R_ND(ddc_ctrl->io, HDMI_DDC_SPEED);
ddc_speed |= (12 << 16) | (2 << 0);
DSS_REG_W_ND(ddc_ctrl->io, HDMI_DDC_SPEED, ddc_speed);
/*
* Setting 31:24 bits : Time units to wait before timeout