浏览代码

disp: msm: dp: use the correct checksum for EDID

As per new requirements from DP 1.4a CTS, DUT (device under test)
should update the TE (test equipment) with the correct checksum
of the EDID even though the EDID is corrupted. Update the TE
with the checksum stored in the connector to meet this new
requirement.

CRs-Fixed: 2490128
Change-Id: Ib5c7bf4430c45050da3c91968716e88bd830e3e4
Signed-off-by: Ajay Singh Parmar <[email protected]>
Ajay Singh Parmar 6 年之前
父节点
当前提交
eaed3221fa
共有 1 个文件被更改,包括 6 次插入1 次删除
  1. 6 1
      msm/dp/dp_panel.c

+ 6 - 1
msm/dp/dp_panel.c

@@ -2279,7 +2279,12 @@ static void dp_panel_handle_sink_request(struct dp_panel *dp_panel)
 	panel = container_of(dp_panel, struct dp_panel_private, dp_panel);
 
 	if (panel->link->sink_request & DP_TEST_LINK_EDID_READ) {
-		u8 checksum = sde_get_edid_checksum(dp_panel->edid_ctrl);
+		u8 checksum;
+
+		if (dp_panel->edid_ctrl->edid)
+			checksum = sde_get_edid_checksum(dp_panel->edid_ctrl);
+		else
+			checksum = dp_panel->connector->checksum;
 
 		panel->link->send_edid_checksum(panel->link, checksum);
 		panel->link->send_test_response(panel->link);