diff --git a/msm/dp/dp_panel.c b/msm/dp/dp_panel.c index 862c6aa5c2..3f4fe47f58 100644 --- a/msm/dp/dp_panel.c +++ b/msm/dp/dp_panel.c @@ -268,13 +268,10 @@ static u8 get_misc_colorimetry_val(struct dp_panel_private *panel, case DRM_MODE_COLORIMETRY_DCI_P3_RGB_THEATER: colorimetry = 0x7; break; - case DRM_MODE_DP_COLORIMETRY_SRGB: - colorimetry = 0x4; - break; - case DRM_MODE_DP_COLORIMETRY_RGB_WIDE_GAMUT: + case DRM_MODE_COLORIMETRY_RGB_WIDE_FIXED: colorimetry = 0x3; break; - case DRM_MODE_DP_COLORIMETRY_SCRGB: + case DRM_MODE_COLORIMETRY_RGB_WIDE_FLOAT: colorimetry = 0xb; break; case DRM_MODE_COLORIMETRY_OPRGB: @@ -1211,7 +1208,7 @@ static void dp_panel_dsc_pclk_param_calc(struct dp_panel *dp_panel, u8 ratio, struct dp_display_mode *dp_mode) { - int comp_ratio, intf_width; + int comp_ratio = 100, intf_width; int slice_per_pkt, slice_per_intf; s64 temp1_fp, temp2_fp; s64 numerator_fp, denominator_fp; @@ -1219,8 +1216,8 @@ static void dp_panel_dsc_pclk_param_calc(struct dp_panel *dp_panel, u32 dsc_byte_count, temp1, temp2; intf_width = dp_mode->timing.h_active; - if (!dsc || !dsc->slice_width || !dsc->slice_per_pkt || - (intf_width < dsc->slice_width)) + if (!dsc || !dsc->config.slice_width || !dsc->slice_per_pkt || + (intf_width < dsc->config.slice_width)) return; slice_per_pkt = dsc->slice_per_pkt; diff --git a/msm/sde/sde_connector.c b/msm/sde/sde_connector.c index 92e63651ed..bd7c1e5ac0 100644 --- a/msm/sde/sde_connector.c +++ b/msm/sde/sde_connector.c @@ -2385,6 +2385,7 @@ static int _sde_connector_install_properties(struct drm_device *dev, { struct dsi_display *dsi_display; int rc; + struct drm_connector *connector; msm_property_install_blob(&c_conn->property_info, "capabilities", DRM_MODE_PROP_IMMUTABLE, CONNECTOR_PROP_SDE_INFO); @@ -2397,6 +2398,8 @@ static int _sde_connector_install_properties(struct drm_device *dev, return rc; } + connector = &c_conn->base; + msm_property_install_blob(&c_conn->property_info, "mode_properties", DRM_MODE_PROP_IMMUTABLE, CONNECTOR_PROP_MODE_INFO); @@ -2440,6 +2443,11 @@ static int _sde_connector_install_properties(struct drm_device *dev, &hdr, sizeof(hdr), CONNECTOR_PROP_EXT_HDR_INFO); + + /* create and attach colorspace property for DP */ + if (!drm_mode_create_dp_colorspace_property(connector)) + drm_object_attach_property(&connector->base, + connector->colorspace_property, 0); } msm_property_install_volatile_range(&c_conn->property_info,