summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNarender Ankam <nankam@codeaurora.org>2021-03-19 12:58:10 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2021-03-30 09:04:50 -0700
commit6001fc30e25bbb67ee6e60aa45cfaa545c024c4c (patch)
tree70c9d6ecbc90399a9b553dde665659da571ce741
parentb917daedaaa9ca3d36844369afb7121092cc50ad (diff)
msm: mdss: hdmi: finetune CEC_REFTIMER:REFTIMER
CEC Read and Write protocol and state machine uses 50us pulse to ensure the CEC signaling adheres to the relatively slow protocol. The reftimer to generate 50us is configured using CEC_REFTIMER:REFTIMER. Current value of REFTIMER is not properly configured to generate 50us pulse. Finetune CEC_REFTIMER:REFTIMER from current value to slightly higher value to generate 51us to ensure CEC Read and Write logic are working properly without any CEC line errors. Change-Id: I57e3f8e8197763b2a2c910b12705c232ad8eb1a8 Signed-off-by: Narender Ankam <nankam@codeaurora.org>
-rw-r--r--drivers/video/fbdev/msm/mdss_hdmi_cec.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/video/fbdev/msm/mdss_hdmi_cec.c b/drivers/video/fbdev/msm/mdss_hdmi_cec.c
index 12a9267f3749..5fe3f710c29e 100644
--- a/drivers/video/fbdev/msm/mdss_hdmi_cec.c
+++ b/drivers/video/fbdev/msm/mdss_hdmi_cec.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2017, 2020 The Linux Foundation. All rights reserved.
+/* Copyright (c) 2010-2017,2020-2021, 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
@@ -469,8 +469,12 @@ static int hdmi_cec_enable(void *input, bool enable)
}
if (enable) {
- /* 19.2Mhz * 0.00005 us = 950 = 0x3B6 */
- DSS_REG_W(io, HDMI_CEC_REFTIMER, (0x3B6 & 0xFFF) | BIT(16));
+ /*
+ * 19.2Mhz * 0.00005 us = 960 = 0x3C0
+ * CEC Rd/Wr logic is properly working with
+ * finetuned value of 0x3D4 = 51 us.
+ */
+ DSS_REG_W(io, HDMI_CEC_REFTIMER, (0x3D4 & 0xFFF) | BIT(16));
hdmi_hw_version = DSS_REG_R(io, HDMI_VERSION);
if (hdmi_hw_version >= CEC_SUPPORTED_HW_VERSION) {