[9/9] drm/i915: Double the port clock when using double clocked modes with 12bpc
diff mbox

Message ID 1430834787-10255-10-git-send-email-ville.syrjala@linux.intel.com
State New
Headers show

Commit Message

Ville Syrjala May 5, 2015, 2:06 p.m. UTC
From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Currently we're forgetting to double the port clock when using double
clocked modes with 12bpc on HDMI. We're only accounting for the 1.5x
factor due to the 12bpc. So further double the 1.5x port clock when we
have a double clocked mode.

Unfortunately I don't have any displays that support both 12bpc and
double clocked modes, so I was unable to test this.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/intel_hdmi.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Ville Syrjala May 21, 2015, 11:20 a.m. UTC | #1
On Tue, May 05, 2015 at 05:06:27PM +0300, ville.syrjala@linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> Currently we're forgetting to double the port clock when using double
> clocked modes with 12bpc on HDMI. We're only accounting for the 1.5x
> factor due to the 12bpc. So further double the 1.5x port clock when we
> have a double clocked mode.
> 
> Unfortunately I don't have any displays that support both 12bpc and
> double clocked modes, so I was unable to test this.

Actually I was able to test this by manually adding some CEA double
clocked modes. My TV happily accepted them even if it didn't list them
in the EDID.

> 
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
>  drivers/gpu/drm/i915/intel_hdmi.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
> index 1810242..f3eec38 100644
> --- a/drivers/gpu/drm/i915/intel_hdmi.c
> +++ b/drivers/gpu/drm/i915/intel_hdmi.c
> @@ -1248,6 +1248,7 @@ bool intel_hdmi_compute_config(struct intel_encoder *encoder,
>  
>  	if (adjusted_mode->flags & DRM_MODE_FLAG_DBLCLK) {
>  		pipe_config->pixel_multiplier = 2;
> +		clock_12bpc *= 2;
>  	}
>  
>  	if (intel_hdmi->color_range)
> -- 
> 2.0.5
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Chandra Konduru June 1, 2015, 11:23 p.m. UTC | #2
> -----Original Message-----

> From: Intel-gfx [mailto:intel-gfx-bounces@lists.freedesktop.org] On Behalf Of

> ville.syrjala@linux.intel.com

> Sent: Tuesday, May 05, 2015 7:06 AM

> To: intel-gfx@lists.freedesktop.org

> Subject: [Intel-gfx] [PATCH 9/9] drm/i915: Double the port clock when using

> double clocked modes with 12bpc

> 

> From: Ville Syrjälä <ville.syrjala@linux.intel.com>

> 

> Currently we're forgetting to double the port clock when using double

> clocked modes with 12bpc on HDMI. We're only accounting for the 1.5x

> factor due to the 12bpc. So further double the 1.5x port clock when we

> have a double clocked mode.

> 

> Unfortunately I don't have any displays that support both 12bpc and

> double clocked modes, so I was unable to test this.

> 

> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

> ---

>  drivers/gpu/drm/i915/intel_hdmi.c | 1 +

>  1 file changed, 1 insertion(+)

> 

> diff --git a/drivers/gpu/drm/i915/intel_hdmi.c

> b/drivers/gpu/drm/i915/intel_hdmi.c

> index 1810242..f3eec38 100644

> --- a/drivers/gpu/drm/i915/intel_hdmi.c

> +++ b/drivers/gpu/drm/i915/intel_hdmi.c

> @@ -1248,6 +1248,7 @@ bool intel_hdmi_compute_config(struct

> intel_encoder *encoder,

> 

>  	if (adjusted_mode->flags & DRM_MODE_FLAG_DBLCLK) {

>  		pipe_config->pixel_multiplier = 2;

> +		clock_12bpc *= 2;

>  	}

> 

>  	if (intel_hdmi->color_range)

> --


Reviewed-by: Chandra Konduru <Chandra.konduru@intel.com>


> 2.0.5

> 

> _______________________________________________

> Intel-gfx mailing list

> Intel-gfx@lists.freedesktop.org

> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Patch
diff mbox

diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
index 1810242..f3eec38 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
@@ -1248,6 +1248,7 @@  bool intel_hdmi_compute_config(struct intel_encoder *encoder,
 
 	if (adjusted_mode->flags & DRM_MODE_FLAG_DBLCLK) {
 		pipe_config->pixel_multiplier = 2;
+		clock_12bpc *= 2;
 	}
 
 	if (intel_hdmi->color_range)