[Intel-gfx] [PATCH] drm/i915: Allow LVDS on pipe A on gen4+

ykzhao yakui.zhao at intel.com
Thu Apr 1 03:38:37 CEST 2010


On Wed, 2010-03-31 at 23:41 +0800, Adam Jackson wrote:
> The gen4 docs say it works, so why not.  Tested on Ironlake.

Yes. From the Gen4 the pipe A can be assigned to LVDS. 

Now we are trying to split the intel_output into
intel_encoder/intel_connector.
  http://lists.freedesktop.org/archives/intel-gfx/2010-March/006410.html

This patch still use the current structure(intel_output). 
Can this patch be refreshed on the above patch set or wait for some
time?

Thanks.
   Yakui

> 
> Signed-off-by: Adam Jackson <ajax at redhat.com>
> ---
>  drivers/gpu/drm/i915/intel_display.c |    4 +++-
>  drivers/gpu/drm/i915/intel_lvds.c    |    2 ++
>  2 files changed, 5 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 58fc7fa..e03f13c 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -3302,7 +3302,9 @@ static int intel_crtc_mode_set(struct drm_crtc *crtc,
>  			lvds_reg = PCH_LVDS;
>  
>  		lvds = I915_READ(lvds_reg);
> -		lvds |= LVDS_PORT_EN | LVDS_A0A2_CLKA_POWER_UP | LVDS_PIPEB_SELECT;
> +		lvds |= LVDS_PORT_EN | LVDS_A0A2_CLKA_POWER_UP;
> +		if (pipe == 1)
> +			lvds |= LVDS_PIPEB_SELECT;
>  		/* set the corresponsding LVDS_BORDER bit */
>  		lvds |= dev_priv->lvds_border_bits;
>  		/* Set the B0-B3 data pairs corresponding to whether we're going to
> diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
> index 2b3fa7a..0dabf72 100644
> --- a/drivers/gpu/drm/i915/intel_lvds.c
> +++ b/drivers/gpu/drm/i915/intel_lvds.c
> @@ -1014,6 +1014,8 @@ void intel_lvds_init(struct drm_device *dev)
>  
>  	intel_output->clone_mask = (1 << INTEL_LVDS_CLONE_BIT);
>  	intel_output->crtc_mask = (1 << 1);
> +	if (IS_I965G(dev))
> +		intel_output->crtc_mask |= (1 << 0);
>  	drm_encoder_helper_add(encoder, &intel_lvds_helper_funcs);
>  	drm_connector_helper_add(connector, &intel_lvds_connector_helper_funcs);
>  	connector->display_info.subpixel_order = SubPixelHorizontalRGB;




More information about the Intel-gfx mailing list