diff mbox series

[v2] drm/i915/icl: Fix setting 10 bit deep color mode

Message ID 20190507181856.16091-1-aditya.swarup@intel.com (mailing list archive)
State New, archived
Headers show
Series [v2] drm/i915/icl: Fix setting 10 bit deep color mode | expand

Commit Message

Aditya Swarup May 7, 2019, 6:18 p.m. UTC
There is a bug in hdmi_deep_color_possible() - we compare pipe_bpp
<= 8*3 which returns true every time for hdmi_deep_color_possible 12 bit
deep color mode test in intel_hdmi_compute_config().(Even when the
requested color mode is 10 bit through max bpc property)

Comparing pipe_bpp with bpc * 3 takes care of this condition where
requested max bpc is 10 bit, so hdmi_deep_color_possible with 12 bit
returns false when requested max bpc is 10.(Ville)

v2:Add suggested by Ville Syrjälä

Suggested-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Aditya Swarup <aditya.swarup@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Manasi Navare <manasi.d.navare@intel.com>
Cc: Clinton Taylor <Clinton.A.Taylor@intel.com>
---
 drivers/gpu/drm/i915/intel_hdmi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Ville Syrjälä May 7, 2019, 6:53 p.m. UTC | #1
On Tue, May 07, 2019 at 11:18:56AM -0700, Aditya Swarup wrote:
> There is a bug in hdmi_deep_color_possible() - we compare pipe_bpp
> <= 8*3 which returns true every time for hdmi_deep_color_possible 12 bit
> deep color mode test in intel_hdmi_compute_config().(Even when the
> requested color mode is 10 bit through max bpc property)
> 
> Comparing pipe_bpp with bpc * 3 takes care of this condition where
> requested max bpc is 10 bit, so hdmi_deep_color_possible with 12 bit
> returns false when requested max bpc is 10.(Ville)
> 
> v2:Add suggested by Ville Syrjälä
> 
> Suggested-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Signed-off-by: Aditya Swarup <aditya.swarup@intel.com>
> Cc: Jani Nikula <jani.nikula@intel.com>
> Cc: Manasi Navare <manasi.d.navare@intel.com>
> Cc: Clinton Taylor <Clinton.A.Taylor@intel.com>

Thanks. Codewise this is identical to the previous version
which was already tested succesfully -> pushed.

> ---
>  drivers/gpu/drm/i915/intel_hdmi.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
> index 991eb362ef4f..74f2dcb8b1ad 100644
> --- a/drivers/gpu/drm/i915/intel_hdmi.c
> +++ b/drivers/gpu/drm/i915/intel_hdmi.c
> @@ -2159,7 +2159,7 @@ static bool hdmi_deep_color_possible(const struct intel_crtc_state *crtc_state,
>  	if (bpc == 10 && INTEL_GEN(dev_priv) < 11)
>  		return false;
>  
> -	if (crtc_state->pipe_bpp <= 8*3)
> +	if (crtc_state->pipe_bpp < bpc * 3)
>  		return false;
>  
>  	if (!crtc_state->has_hdmi_sink)
> -- 
> 2.17.1
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
index 991eb362ef4f..74f2dcb8b1ad 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
@@ -2159,7 +2159,7 @@  static bool hdmi_deep_color_possible(const struct intel_crtc_state *crtc_state,
 	if (bpc == 10 && INTEL_GEN(dev_priv) < 11)
 		return false;
 
-	if (crtc_state->pipe_bpp <= 8*3)
+	if (crtc_state->pipe_bpp < bpc * 3)
 		return false;
 
 	if (!crtc_state->has_hdmi_sink)