[Intel-gfx] [PATCH 3/7] drm/i915: Don't register HDMI connectors for eDP ports on VLV/CHV

Jani Nikula jani.nikula at linux.intel.com
Fri Jan 9 07:02:40 PST 2015


On Fri, 09 Jan 2015, ville.syrjala at linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> If we determine that a specific port is eDP, don't register the HDMI
> connector/encoder for it. The reason being that we want to disable
> HPD interrupts for eDP ports when the display is off, but the presence
> of the extra HDMI connector would demand the HPD interrupt to remain
> enabled all the time.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
>  drivers/gpu/drm/i915/intel_display.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index d1a4de8..2b1f220 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -12390,14 +12390,16 @@ static void intel_setup_outputs(struct drm_device *dev)
>  		 * eDP ports. Consult the VBT as well as DP_DETECTED to
>  		 * detect eDP ports.
>  		 */
> -		if (I915_READ(VLV_DISPLAY_BASE + GEN4_HDMIB) & SDVO_DETECTED)
> +		if (I915_READ(VLV_DISPLAY_BASE + GEN4_HDMIB) & SDVO_DETECTED &&
> +		    !intel_dp_is_edp(dev, PORT_B))
>  			intel_hdmi_init(dev, VLV_DISPLAY_BASE + GEN4_HDMIB,
>  					PORT_B);
>  		if (I915_READ(VLV_DISPLAY_BASE + DP_B) & DP_DETECTED ||
>  		    intel_dp_is_edp(dev, PORT_B))
>  			intel_dp_init(dev, VLV_DISPLAY_BASE + DP_B, PORT_B);

I wonder if these would read better with

	if (intel_dp_is_edp(dev, PORT_B)) {
        	...
        } else {
		if (I915_READ(VLV_DISPLAY_BASE + GEN4_HDMIB) & SDVO_DETECTED)
			...
		if (I915_READ(VLV_DISPLAY_BASE + DP_B) & DP_DETECTED)
			...
	}

Dunno. Either way,

Reviewed-by: Jani Nikula <jani.nikula at intel.com>


>  
> -		if (I915_READ(VLV_DISPLAY_BASE + GEN4_HDMIC) & SDVO_DETECTED)
> +		if (I915_READ(VLV_DISPLAY_BASE + GEN4_HDMIC) & SDVO_DETECTED &&
> +		    !intel_dp_is_edp(dev, PORT_C))
>  			intel_hdmi_init(dev, VLV_DISPLAY_BASE + GEN4_HDMIC,
>  					PORT_C);
>  		if (I915_READ(VLV_DISPLAY_BASE + DP_C) & DP_DETECTED ||
> -- 
> 2.0.5
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Jani Nikula, Intel Open Source Technology Center


More information about the Intel-gfx mailing list