[Intel-gfx] [PATCH] drm/i915: VGA needs to be on pipe A on i830M

Daniel Vetter daniel at ffwll.ch
Mon Oct 22 15:07:59 CEST 2012


On Sun, Oct 21, 2012 at 11:26:29PM +0200, Daniel Vetter wrote:
> The bit doesn't stick, and the output is always cloned from pipe A,
> even when it's supposed to scan out from pipe B.
> 
> Shuts up annoying warnings from the modeset-rework, too.
> 
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=51265
> Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>

Note that this also fixes spurious VGA detection, since load-detect tried
to use pipe B (since pipe A was already occupied by the lvds output), but
in reality used pipe A and so wrongfully concluded that something is
connected to the VGA port.

Now we simply get an unknown state since we can't find any load detect
pipe. But if we manually move the LVDS to pipe B it works correctly.
-Daniel

> ---
>  drivers/gpu/drm/i915/intel_crt.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_crt.c b/drivers/gpu/drm/i915/intel_crt.c
> index c42b980..b3e20aa 100644
> --- a/drivers/gpu/drm/i915/intel_crt.c
> +++ b/drivers/gpu/drm/i915/intel_crt.c
> @@ -743,7 +743,7 @@ void intel_crt_init(struct drm_device *dev)
>  
>  	crt->base.type = INTEL_OUTPUT_ANALOG;
>  	crt->base.cloneable = true;
> -	if (IS_HASWELL(dev))
> +	if (IS_HASWELL(dev) || IS_I830(dev))
>  		crt->base.crtc_mask = (1 << 0);
>  	else
>  		crt->base.crtc_mask = (1 << 0) | (1 << 1) | (1 << 2);
> -- 
> 1.7.11.4
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch



More information about the Intel-gfx mailing list