drm/msm/dp: set pixel_encoding and colorimetry info

Configure MISC0 register to indicate correct Pixel_Encoding
and Colorimetry information as per output color formats.

Change-Id: I9b9719187ad899250e69ad1b219117fc1f037ab8
Signed-off-by: Ramendra Kumar <ramendra@codeaurora.org>
Signed-off-by: Narender Ankam <nankam@codeaurora.org>
diff --git a/drivers/gpu/drm/msm/dp/dp_ctrl.c b/drivers/gpu/drm/msm/dp/dp_ctrl.c
index 43548a0..365fefc 100644
--- a/drivers/gpu/drm/msm/dp/dp_ctrl.c
+++ b/drivers/gpu/drm/msm/dp/dp_ctrl.c
@@ -189,13 +189,18 @@
 static void dp_ctrl_misc_ctrl(struct dp_ctrl_private *ctrl)
 {
 	u32 out_format = ctrl->panel->pinfo.out_format;
+	u32 yres = ctrl->panel->pinfo.v_active;
 	u32 cc, tb;
 
 	tb = ctrl->link->get_test_bits_depth(ctrl->link,
 		ctrl->panel->pinfo.bpp);
 	cc = ctrl->link->get_colorimetry_config(ctrl->link);
-	if (out_format == MSM_MODE_FLAG_COLOR_FORMAT_YCBCR422)
-		cc |= (0x01 << 1); /* Set YUV422 */
+	if (out_format == MSM_MODE_FLAG_COLOR_FORMAT_YCBCR422) {
+		cc |= (0x01 << 1); /* Set 4:2:2 Pixel Encoding */
+		cc |= BIT(3); /* Set YCbCr Colorimetry */
+		if (yres >= 720)
+			cc |= BIT(4); /* Set BT709 */
+	}
 
 	ctrl->catalog->config_misc(ctrl->catalog, cc, tb);
 }